{
  "notes": "EPISODE 2 (2026-10-27). All 19 episode-1 results read; 4 batches settled, 0 failed. Items: 19 used, 11 left before this episode; this episode spends 2 (9 left). 4 episodes left after this.\n\nQUALITY CHECK. 17 of 19 results complete: every point has a value and a URL, NOT FOUND used honestly. Two gaps, one item each:\n(a) l2beat/lighter was read through a summarising tool: paraphrases only, Sequencer/Proposer Failure and State Validation strings not captured, guardian addresses conflict (zero vs EOA 2/3), stage history not checked at diff level. Batch 'lighter-verbatim' re-reads https://l2beat.com/layer2s/projects/lighter.md verbatim + lighter.ts commits.\n(b) Robinhood stage inconsistent: scope result says API stage 'Stage 0' and summary badge Stage 0; l2beat/robinhood says the project page reads 'not even a Stage 0 project', node-software requirement 'under review'. Batch 'robinhood-stage' quotes API, page, summary row, config side by side.\nCarry as-is: release/arbitrum reports Nitro v3.12.1 (2026-10-02) but release/robinhood, same repo OffchainLabs/nitro, read later that day and API-confirmed v3.12.2 published 2026-10-27T13:27:32Z (https://github.com/OffchainLabs/nitro/releases/tag/v3.12.2). Use v3.12.2 for BOTH Arbitrum One and Robinhood; note Arbitrum docs still recommend image v3.12.1-70fa99a.\n\nEPISODE 3 SHOULD: read the 2 new results; if lighter-verbatim is sound, set finish=true and write the deliverable (no more batches). If it failed, write it anyway from l2beat/lighter + docs/lighter with the paraphrase caveat. Do not re-run whole profiles.\n\nFACT SHEET (URLs in results; cite L2BEAT first, project docs second). Snapshot 2026-10-27 ~14:20 UTC, https://l2beat.com/api/scaling/summary; l2beat.com/scaling/* redirects to /layer2s/*.\nSELECTION: rollups >500M USD = Base 15,058M (Optimistic, Stage 1), Arbitrum One 9,832M (Optimistic, Stage 1), OP Mainnet 1,717M (Optimistic, Stage 1), Mantle 1,301M (ZK, Stage 0), Lighter 1,057M (ZK, Stage 0 Appchain). >500M but Other: Hyperliquid 6,570M (No proofs, No DA bridge, L3), Polygon PoS 3,832M (No proofs), Robinhood 2,294M ('Closed proofs': <5 external challengers). Below cutoff: World 401M (Other), Starknet 371M, Ink 365M, Linea 335M. Definitions quoted in scope result. Framework change inside window: 2026-04-30 Stage 1 minimum challenge period 7d->5d (https://forum.l2beat.com/t/the-stages-framework/291).\nBASE: Stage 1 (Stage 2 unmet: <30d exit, SC not bug-confined; met: proofs open). 'Fraud proofs (1R, ZK)' = Azul multi-proof (mainnet 2026-05-28): TEE proposer path permissioned (TEEProverRegistry allowlist), ZK challenge via SP1 permissionless; 5d single / 1d dual finality (Beryl 2026-06-25). Exit window None. Upgrader 2/2 = Coordinator Multisig 3/6 (Coinbase) + Security Council 8/11 = 9/12, no timelock; docs confirm. DA Onchain blobs/calldata. Single sequencer (Raft HA); Self sequence via OptimismPortal, 12h. Release base/base v1.5.1 2026-10-22T17:47:20Z (node + proof services). No stage change (17 commits checked).\nARBITRUM ONE: Stage 1 (same Stage 2 blockers; proofs permissionless). 'Fraud proofs (INT)' BoLD since 2025-02-12, 3,600 ETH bond, 6d8h+2d. Exit window 10d regular / None emergency. Upgrader DAO + Security Council 9/12 (emergency instant; regular 8d+6d8h+3d=17d8h); Constitution confirms. DA Onchain blobs/calldata. Centralized sequencer (Offchain Labs per FAQ, Foundation per other page); Self sequence: Delayed Inbox then forceInclusion ~24h (7200 blocks; L2BEAT says 1d). Release Nitro v3.12.2 2026-10-27. No stage change (15 commits).\nOP MAINNET: Stage 1 (same blockers; proofs open). 'Fraud proofs (INT)', permissionless, 0.08 ETH bond, 3d12h+3d12h; game type 0->8 (2026-06-30) ->9 SUPER_CANNON_KONA (2026-09-24), still permissionless; Karst 2026-07-08. Exit window None. Upgrader 2/2 = Foundation Upgrade Safe 5/7 + Security Council 10/13, no delay; docs confirm (a blog says 14d non-emergency, unverified). DA Onchain blobs. Centralized sequencer; Self sequence via OptimismPortal, 12h. Release op-node v1.19.11 + op-reth v2.6.1 2026-10-22; op-challenger v1.11.0 2026-10-26; kona-client v1.9.0 2026-10-23. No stage change (10+31+44 commits).\nMANTLE: Stage 0 (Stage 1 unmet: principle, censorable withdrawals, <7d exit; met: prover source, program hashes). 'Validity proofs (ST, SN)' OP Succinct/SP1 since 2025-09-16; proposer whitelisted (EOA 2, set by MantleSecurityMultisig), 12h execution delay; proof-less optimistic fallback switchable by MantleEngineeringMultisig 3/7; Proposer failure 'Cannot withdraw'. Exit window None. Upgrader MantleSecurityMultisig 6/14 no delay; no named council; docs give owner name, threshold NOT FOUND. DA Onchain blobs since Arsia (2026-04-16/22), EigenDA removed; reclassified rollup 2026-04-16, BEFORE window (stale docs still say EigenDA). Centralized sequencer; Self sequence via OptimismPortal, 12h (docs guide says 24h). Release mantle-v2 v1.6.3 2026-09-21T03:38:19Z; prover mantle-xyz/op-succinct mantle-v1.6.1 2026-09-16T12:28:26Z; mainnet docs still pin v1.5.4. No stage change (12+37 commits).\nLIGHTER: Stage 0 (Stage 1 unmet: censorable withdrawals, <7d exit, SC not set up, principle; met: trusted setup, prover source, verifier reproducible). Validity SNARK (Plonky2 in PLONK, Ignition setup), no execution delay; permissioned: validators EOA 1,4,5 set by Lighter Multisig 2 (3/5); code confirms. Exit window none: 21d UpgradeGatekeeper notice cuttable to 0 by Lighter Multisig 4/7, every upgrade fast-tracked; 91 upgrades. DA Onchain state diffs in blobs (blob-only in code). Centralized sequencer; forced via L1 priority queue, 14d expiry then anyone activates desert mode, exit by ZK proof. Release: node closed source NOT FOUND; lighter-prover no releases, last commit 2026-10-12; gnark-plonky2-verifier v0.1.0 2026-10-08. Stage history: none evidenced (confirm). L2 paused 2h 2026-10-17.\nROBINHOOD (separate, not ranked): Other; page says 'not even Stage 0' pending reconciliation. 'Fraud proofs (INT)' BoLD, 2 whitelisted validators (Offchain Labs, Alchemy), 6d8h+2d. Exit window None: Multisig 1 7/8 instant, Multisig 2 6/8 via 7d timelock; docs: 8-seat council 6/8 + 7d, 7/8 emergency. DA Onchain blobs. Centralized sequencer with compliance screening; Sequencer failure 'No mechanism' (forceInclusion exists but filterer can fail forced txs); Self propose after 28d. Release Nitro v3.12.2; docs pin v3.11.2. Mainnet 2026-07-01, config 2026-07-03; no stage change.\nRANKING (stage, then permissionless proving, forced inclusion, exit window, upgrade control, DA): 1 Arbitrum One (permissionless BoLD, 10d regular exit window, DAO + 9/12), 2 OP Mainnet (permissionless, exit None, 10/13 council), 3 Base (ZK challenge open but TEE proposer allowlisted, 8/11 council), 4 Lighter (Stage 0, permissioned validity, but 14d escape hatch lets users exit without operator), 5 Mantle (Stage 0, permissioned, 'Cannot withdraw', 6/14 instant upgrades, proof-less fallback). Robinhood outside: Other, 'No mechanism'. STAGE CHANGES IN WINDOW (2026-04-27..10-27): none for any of the six; nearest events Mantle reclassification 2026-04-16, Robinhood listing 2026-07-03, framework 7d->5d 2026-04-30.",
  "spawn": [
    {
      "name": "lighter-verbatim",
      "mode": "research",
      "brief": "Re-read Lighter's L2BEAT page VERBATIM; the earlier read used a summarising tool that paraphrased everything. Fetch the raw Markdown representation https://l2beat.com/layer2s/projects/lighter.md (plain text, no summariser) and cross-check with https://l2beat.com/layer2s/projects/lighter. Deliver markdown with EXACTLY these headings, every fact a direct quotation from the page followed by its URL with #anchor: '## Risk values' (the exact strings of the five risk-analysis cells: State validation, Data availability, Exit window, Sequencer failure, Proposer failure, each with the explanation paragraph under it, and the category/type and TVS shown); '## Stage' (the stage shown, the headline sentence, every checklist requirement quoted and marked met / unmet / under review, and any banner or warning); '## Permissions' (every multisig and EOA with address, threshold, powers and delay as written, including the UpgradeGatekeeper security council address, the 21d upgrade notice period and who can cut it, and the current pauseGuardian and emergencyGuardian addresses, saying whether they are set or zero); '## Forced inclusion and exit' (the Operator and Withdrawals sections: what users can force via L1, the expiration period, desert mode); '## Stage history since 2026-04-27' (the full Milestones list; then the GitHub commit history of packages/config/src/projects/lighter/lighter.ts from https://api.github.com/repos/l2beat/l2beat/commits?path=packages/config/src/projects/lighter/lighter.ts&since=2026-04-27T00:00:00Z&until=2026-10-27T23:59:59Z&per_page=100, naming every commit that changes the stage block or the risk view with commit URL and date, or stating that none does; and the date and commit that first added Lighter to the L2BEAT config); '## Not found' (each item not found, with the URLs tried). Nothing from memory. If a quotation is impossible, label the text as a paraphrase. A missing fact is written 'NOT FOUND', never guessed.",
      "items": [
        {
          "key": "lighter",
          "vars": {
            "name": "Lighter",
            "slug": "lighter"
          }
        }
      ],
      "output": {
        "format": "markdown",
        "maxBytes": 32000
      }
    },
    {
      "name": "robinhood-stage",
      "mode": "research",
      "brief": "Resolve how L2BEAT currently rates Robinhood Chain's stage, reading only L2BEAT and its GitHub repository. Earlier reads disagree: one saw stage 'Stage 0' in the API and summary table, another saw 'not even a Stage 0 project' on the project page. Sources, all to be read: (a) https://l2beat.com/api/scaling/summary, the entry whose slug is robinhood: quote the raw stage and category values; (b) https://l2beat.com/layer2s/projects/robinhood.md and https://l2beat.com/layer2s/projects/robinhood, Stage section: quote the headline sentence, any 'under review' warning, and each checklist item marked met / unmet / under review; (c) the Robinhood row at https://l2beat.com/layer2s/summary?tab=others: quote the stage badge text and the 'Why am I here?' cell; (d) https://github.com/l2beat/l2beat/blob/main/packages/config/src/projects/robinhood/robinhood.ts: quote the stage-related block and any under-review flags, and give the commit URL and date that added the file. Deliver markdown with EXACTLY these headings: '## API', '## Project page', '## Summary table', '## Config', '## Reconciliation' (one paragraph, from the quoted text only, stating whether L2BEAT shows Robinhood Chain as Stage 0, as not even Stage 0, or both, and where each appears, and what L2BEAT's own text says 'under review' means for the stage badge), '## Not found'. Every quotation is followed by its URL. Do not infer; where the sources disagree, report both.",
      "items": [
        {
          "key": "robinhood",
          "vars": {
            "name": "Robinhood Chain",
            "slug": "robinhood"
          }
        }
      ],
      "output": {
        "format": "markdown",
        "maxBytes": 16000
      }
    }
  ],
  "read": [
    "scope/l2beat-list",
    "l2beat/base",
    "l2beat/arbitrum",
    "l2beat/optimism",
    "l2beat/mantle",
    "l2beat/lighter",
    "l2beat/robinhood",
    "docs/base",
    "docs/arbitrum",
    "docs/optimism",
    "docs/mantle",
    "docs/lighter",
    "docs/robinhood",
    "release/base",
    "release/arbitrum",
    "release/optimism",
    "release/mantle",
    "release/lighter",
    "release/robinhood",
    "lighter-verbatim/lighter",
    "robinhood-stage/robinhood"
  ],
  "cancel": [],
  "wake": {
    "batches": [
      "lighter-verbatim",
      "robinhood-stage"
    ],
    "afterMinutes": 120
  },
  "finish": false
}
