Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1286 commits
Select commit Hold shift + click to select a range
d704b85
ci: downsize check-kontrol-build to medium (#20422)
hdcesario-op May 1, 2026
e330030
feat(rust): add fast build without examples (#20456)
nonsense May 1, 2026
9fd03a0
ci: downsize go-binaries-for-sysgo to medium (#20423)
hdcesario-op May 1, 2026
e8c8b07
feat(op-dispute-mon): add game type breakdown metric (#20479)
jelias2 May 1, 2026
b29aeed
fix lightcl genesis sync status (#20385)
karlfloersch May 1, 2026
70fd006
Update interop explainer doc (#20488)
ZakAyesh May 1, 2026
b31aaa0
feat: make l2cm default path in devfeature bitmap (#20439)
0xOneTony May 1, 2026
792c86a
Simplify go feature flag tests (#20496)
maurelian May 1, 2026
7b76a76
op-supernode: add Prometheus metrics for interop SLI qualification (#…
jelias2 May 2, 2026
8183e36
test(op-acceptance): drive AfterChainHead test setup via TestSequence…
ajsutton May 3, 2026
6b11444
fix(supernode): VerifiedRequiredL1 takes MAX of per-chain L1s (#20484)
ajsutton May 3, 2026
98b1d5a
fix(op-challenger): route super-cannon-kona to KonaSuperExecutor in r…
ajsutton May 4, 2026
3e8fad6
op-node: only set FCU finalized after initial EL-sync (#20381)
sebastianst May 4, 2026
e711b91
fix(op-reth): commit RW txn before init_from_state_dump to avoid MDBX…
nonsense May 4, 2026
68746be
chore(rust): ignore RUSTSEC-2026-0118 and RUSTSEC-2026-0119 (#20514)
nonsense May 4, 2026
b016a23
fix(op-reth): wait for proofs ExEx store before validator eth_getProo…
nonsense May 4, 2026
7348213
fix(kona-proof): decode EIP-2935 storage slot value as U256 (#20518)
Inphi May 4, 2026
747cad2
Move interop activation to OPCM migrator (#20429)
stevennevins May 4, 2026
3caf508
docs: refresh op-deployer doc references (#20521)
smartcontracts May 4, 2026
d76ad93
refactor(proofs): use SkipIfKona helper instead of name-based CI filt…
sebastianst May 4, 2026
35f960d
op-challenger: route SuperPermissionedGameType through cannon-kona (#…
ajsutton May 4, 2026
351625c
test: re-sample both nodes in InSyncFn (#20405)
ajsutton May 4, 2026
0ebdbed
op-supernode: avoid engine rewind on L1 reorg (#20505)
karlfloersch May 5, 2026
5bc6fc6
feat(op-supernode): honour user-supplied p2p listen ports (#20448)
ajsutton May 5, 2026
65668d3
refactor(op-service/eth): remove BlockInfo Header() and HeaderRLP() e…
sebastianst May 5, 2026
639ae24
feat(devstack): support SDM acceptance tests (#20516)
nonsense May 5, 2026
9cccd52
test(kona): add proof executor post-exec coverage (#20432)
nonsense May 5, 2026
be903ce
fix(opcm/sysgo): disallow/remove super cannon game type (#20363)
wwared May 5, 2026
de4b78c
chore(contracts-bedrock): remove unused deploy.sh script (#20534)
maurelian May 5, 2026
da4ff61
fix(ci): remove "non-docs" path filtering (#20486)
geoknee May 5, 2026
88aabe3
op-supernode: pass observeRound L1 heads through to l1Inclusion (#20538)
ajsutton May 5, 2026
9692b3c
refactor: remove ProtocolVersions Solidity contract and OPCM remnants…
sebastianst May 5, 2026
d58ed19
chore(contracts-bedrock): remove stale U15 fork guards (#20330)
smartcontracts May 5, 2026
4bfa573
chore(contracts-bedrock): clean up docs and stale config (#20324)
smartcontracts May 5, 2026
83a64b6
ci(op-reth): use fast-build profile in PR docker bake (#20543)
falcorocks May 5, 2026
da994de
Update reorg.mdx (#20535)
ZakAyesh May 5, 2026
b093ee2
fix(op-challenger): create-game cli super root encoding (#20545)
Inphi May 5, 2026
f007013
fix(op-supernode): error on InvalidateBlock rewind preconditions (#20…
ajsutton May 5, 2026
818d50c
refactor(kona): make debug_executePayload witness collection the defa…
pauldowman May 5, 2026
07ab797
fix(kona-interop): guard executing chain against interop activation b…
digorithm May 5, 2026
a72c568
ci: standardize image builds on factory plan action (#20540)
falcorocks May 6, 2026
7fc1948
feat(op-devstack): add MinimalWithKona preset for native kona-host ru…
joshklop May 6, 2026
55158f6
fix(op-supernode): add env var for interop log backfill depth flag (#…
jelias2 May 6, 2026
12e2ea1
op-interop-filter: auto-resolve reorg failsafe (#20554)
karlfloersch May 6, 2026
d589159
fix op-supernode backfill startup ordering (#20568)
karlfloersch May 6, 2026
7002e5c
chore(kona-interop): remove dead InteropValidator trait and InteropVa…
digorithm May 6, 2026
e4d161a
chore(rust): add release recipe for subdir crate releases (#20320)
theochap May 6, 2026
e994034
docs(contracts-bedrock): note gas accounting quirk in test style guid…
maurelian May 6, 2026
21d026d
all: upgrade op-geth (#20564)
joshklop May 6, 2026
207242c
op-challenger: remove super-cannon (game type 4) support (#20555)
ajsutton May 6, 2026
255b1fa
perf(op-interop-filter): fetch blocks concurrently during ingestion (…
karlfloersch May 6, 2026
6630613
fix(op-acceptance-tests): make freezeChains return with safe == unsaf…
ajsutton May 6, 2026
ca20845
fix(op-devstack): add WithoutHonestProposer preset option for challen…
ajsutton May 6, 2026
e65cca7
fix(kona/protocol): iterate all payload txs in is_deposits_only (#20560)
cuiweixie May 7, 2026
2742f86
Update migration delayed WETH (#20571)
stevennevins May 7, 2026
8413ca7
docs: polish op-supernode readme (#20523)
smartcontracts May 7, 2026
eefdaa4
docs: fix stale non-docs references (#20520)
smartcontracts May 7, 2026
4ab8b04
feat(op-reth): add engine buffer layer (TrieBufferState + MemoryOverl…
dhyaniarun1993 May 7, 2026
50fdb5c
op-reth: add optional gas_limit_cap arg to execute_best_transactions …
bitwiseguy May 7, 2026
8a7cfd8
feat(kona-proof): cache L1 block-number lookups in OracleL1ChainProvi…
ajsutton May 7, 2026
d2963e5
feat(op-reth): add persistence service and prune_with_provider (#20414)
dhyaniarun1993 May 7, 2026
d727174
ci(build-images): drop oplabs runner overrides for bake matrix (#20594)
falcorocks May 8, 2026
4834c15
fix: filter prerelease OPCM release tags (#20617)
stevennevins May 11, 2026
3a99174
test(flashblocks): split TestFlashblocksTransfer into bounded phases …
sebastianst May 11, 2026
907ee28
chore: depend on sync-superchain for targets that need the bundle (#2…
ajsutton May 11, 2026
c154699
Stage verified DB rewind bounds (#20596)
ajsutton May 11, 2026
ec620c3
rust: bump rkyv to 0.8.16 for RUSTSEC-2026-0122 (#20653)
ajsutton May 11, 2026
b698b57
fix(op-supernode): skip gap check for already sealed timestamp (#20647)
karlfloersch May 11, 2026
6568819
op-supernode: wait on stale frontier L1 (#20648)
karlfloersch May 11, 2026
dc8099d
fix(op-acceptance-tests): stop wedging test sequencer on transient L1…
pauldowman May 11, 2026
a835218
test(contracts): stage past NUT bundles in L2 fork upgrades (#20565)
lumoswiz May 12, 2026
4148e29
fix(kona-executor): re-insert DestroyedChanged accounts into state tr…
pauldowman May 12, 2026
5167c50
fix(op-supernode): recover logsDB from offline L2 reorg on restart (#…
ajsutton May 12, 2026
c475430
op-supernode: under-claim i.currentL1 by one L1 block on Advance (#20…
ajsutton May 12, 2026
2c54a0e
fix(op-interop-filter): validate earliest block on resume (#20585)
ajsutton May 12, 2026
ef4c8a4
Refactor Osaka tests to also run Kona in some cases (#20533)
joshklop May 12, 2026
009d53d
fix(kona-interop): init-chain activation gate (#20579)
digorithm May 12, 2026
0aff989
docs(ai/acceptance-tests): note native kona prestate build option (#2…
ajsutton May 12, 2026
12f677f
Add supernode explainer (#20561)
ZakAyesh May 12, 2026
4558be0
feat(op-reth): add EngineState, Engine, EngineHandle, and all task (#…
dhyaniarun1993 May 12, 2026
698a886
ci(rust): temporarily disable kona-coverage (#20667)
sebastianst May 12, 2026
fc3fdb5
Update explainer docs to reference supernode (#20642)
ZakAyesh May 12, 2026
6cfcc80
ci(rust): remove dead kona-coverage job and orphan llvm-cov setup (#2…
sebastianst May 12, 2026
8fd9e98
fix(kona/protocol): reject invalid is_last byte in frame decode (#20590)
sebastianst May 12, 2026
0405f19
feat(op-reth): Wire up the Engine in Exex (#20450)
dhyaniarun1993 May 12, 2026
1c6321c
fix(op-proposer): fail over to caught-up supernode sync status (#20615)
Inphi May 12, 2026
cff24f1
op-interop-filter: log ingested blocks at info (#20675)
karlfloersch May 12, 2026
bc2f8ac
feat(op-chain-ops): add check-interop CLI tool (#20621)
jelias2 May 12, 2026
831ad8b
ci(docs): allowlist pnpm build scripts for mintlify-docs-build (#20673)
ZakAyesh May 12, 2026
6d43699
fix(op-devstack): wait for L1 head past game createdAt before prove (…
Inphi May 12, 2026
cfb2a26
test(op-supernode): cover optimistic super-root pairing with split-ba…
ajsutton May 12, 2026
1228db6
fix(kona-host): verify preimage bytes hash to the requested key (#20661)
digorithm May 12, 2026
14456a8
Revert "op-supernode: under-claim i.currentL1 by one L1 block on Adva…
ajsutton May 12, 2026
e8f8506
docs: historical proofs: recommend old snapshots (#20672)
sebastianst May 12, 2026
17f83fd
fix supernode p2p port collisions (#20681)
karlfloersch May 12, 2026
f6f4d3e
fix(op-supernode): stabilize superroot_atTimestamp Data field (#20658)
ajsutton May 13, 2026
afd62ca
fix(op-e2e/config): return fully independent DeployConfig per call (#…
ajsutton May 13, 2026
9361e12
fix(op-interop-filter): stop ingestion when fatal error state is set …
karlfloersch May 13, 2026
d85f27c
op-supernode: redefine superroot_atTimestamp CurrentL1 as block being…
ajsutton May 13, 2026
014340f
fix(kona/protocol): grow output buffer on NeedsMoreInput-with-full-bu…
sebastianst May 13, 2026
f288c4a
feat(op-node): add follow source error counter metric (#20656)
jelias2 May 13, 2026
cb68d7c
fix(op-reth/proofs): use fixed-size sharded key encoding for trie his…
dhyaniarun1993 May 13, 2026
173b2a8
refactor(op-reth/proofs): strict proof-window semantics + ProofWindow…
dhyaniarun1993 May 13, 2026
6138e57
chore(rust): log level in proofs exex (#20719)
theochap May 13, 2026
688f67d
chore(contracts): remove Karst-only NUTs and L2ContractsManager migra…
lumoswiz May 13, 2026
fa4aff6
fix(op-supernode): guard executing-message verifier against interop a…
wwared May 13, 2026
2fd3f1f
fix(kona/client): bump FPVM precompile oracle gas for Glamsterdam (EI…
pauldowman May 13, 2026
4488e15
supernode: quiet expected tip lookup misses (#20720)
karlfloersch May 13, 2026
5193074
op-interop-filter: support legacy check access list format (#20725)
karlfloersch May 14, 2026
5396d6c
fix(op-batcher): treat emptry currentL1 as a special case (#20694)
geoknee May 14, 2026
6525551
feat(rollup-boost): vendor rollup-boost in to the monorepo (#20669)
einar-oplabs May 14, 2026
ee62f54
chore(op-reth/proofs): consistent `trie::*` log targets across the cr…
dhyaniarun1993 May 14, 2026
38cb545
fix(op-node,op-batcher): fix maxSafeLag stall, resume, and channel ti…
KyrinCode May 14, 2026
236ce17
Save interop NUT bundle (#20722)
maurelian May 14, 2026
34fed95
fix(op-devstack): progress-aware initial sync check for ELSync verifi…
pauldowman May 14, 2026
e42c5b3
feat(op-node): add follow source success metric (#20763)
jelias2 May 14, 2026
0b70041
fix(kona/client): validate output-root version word in fetch_safe_hea…
wwared May 14, 2026
ff1951e
fix(interop): make the op-node resilient to L1 reorgs beyond the cros…
joshklop May 14, 2026
45f5d5b
test(op-interop-filter): integration suite for logsdb contract (#20730)
ajsutton May 14, 2026
59e6098
fix(kona-client/interop): align trace-extension boundary with op-prog…
wwared May 14, 2026
757e245
fix(op-node): cache super authority finalized head (#20772)
karlfloersch May 15, 2026
2fe8c71
op-supernode: default log backfill to seven days (#20577)
karlfloersch May 15, 2026
19756b8
fix(op-supernode): resume from verifiedDB on warm restart (alt to #20…
ajsutton May 15, 2026
77d6b70
op-supernode: tie backfill default to interop message expiry constant…
ajsutton May 15, 2026
ec27f47
feat(op-supernode,op-interop-filter): raft-wal-backed LogsDB (#20688)
ajsutton May 15, 2026
de0feaa
chore(op-conductor): remove op-supervisor support (#20781)
ajsutton May 15, 2026
98bccaa
chore(op-proposer): remove op-supervisor proposal source (#20779)
ajsutton May 15, 2026
5bebbd1
fix(op-devstack): retry eth_getProof while L2 EL persists state (#20782)
ajsutton May 15, 2026
a9eb5e8
perf(rust-e2e): consolidate rust build and tighten restart-suite timi…
ajsutton May 15, 2026
672ce7a
fix(op-acceptance-tests): stabilize TestFollowSource_HeadsDivergeThen…
wwared May 15, 2026
8428ec7
refactor(circleci): centralize workflow activation logic in setup con…
raffaele-oplabs May 15, 2026
141dacc
fix(sync-tester): clear WindowSyncPolicy cache on session reset (#20783)
ajsutton May 15, 2026
3e63110
chore(ci): disable fsync in acceptance tests via eatmydata (#20785)
ajsutton May 15, 2026
bfda878
fix(kona): fix stale reth path references in kona tests justfile (#19…
wwared May 15, 2026
fa6d880
fix(kona/protocol): add TxGases span decode error for gas varints (#1…
cuiweixie May 15, 2026
5873a97
docs: add op-supernode configuration guide (#20748)
ZakAyesh May 16, 2026
ea1187a
build(op-node): use shorter version string in info metric (#20831)
geoknee May 18, 2026
e03d82f
fix(txplan): Handle nonce-too-low errors in tx submission retry loop …
geoknee May 18, 2026
99b4245
all: Upgrade op-geth (#20711)
joshklop May 18, 2026
6bc21dc
chore(op-e2e): delete op-supervisor action tests (#20826)
ajsutton May 18, 2026
7e9393f
fix(op-supernode): log cold-start backfill progress (#20843)
karlfloersch May 18, 2026
4890814
chore(op-e2e): replace op-supervisor with op-supernode in super_test …
ajsutton May 18, 2026
4a28dbc
refactor(safedb): move L1AtSafeHead lookup into SafeDB (#20845)
ajsutton May 18, 2026
d78b2ad
fix(op-node): tolerate NotFound on Finalized lookup during ELSync (+ …
wwared May 18, 2026
0ffff7b
feat(op-supernode): rework interop activity startup (#20823)
ajsutton May 19, 2026
7882560
chore(devstack): remove NewMultiSupervisorInterop preset and dead cod…
ajsutton May 19, 2026
ffaa5f8
fix(op-acceptance-tests): wait for EL labels in SafeHeadProgression (…
ajsutton May 19, 2026
ad7e7c7
docs: add output→super-root upgrade tutorial (#20499)
ajsutton May 19, 2026
c19291a
ci: remove redundant mintlify-docs-build job (#20857)
sbvegan May 19, 2026
581fc1b
ci(docker): move deps for op-rbuilder and rollup-boost from CI to doc…
einar-oplabs May 19, 2026
084bcf6
ci: harden docs-only fast path and produce ci-gate skip status (#20859)
sbvegan May 19, 2026
6fb43d1
docs: Update op-reth-historical-proof-config.mdx (#20846)
geoknee May 19, 2026
fb92f48
chore(devstack): remove rust/kona/tests/supervisor and the sysgo op-s…
ajsutton May 19, 2026
3f266ce
ci(docker): update ci base image to support op-rbuilder and rollup-bo…
einar-oplabs May 19, 2026
900c30e
op-challenger: remove op-supervisor support for super games (#20850)
ajsutton May 19, 2026
d7592bd
fix: ZK Game Internal Review Remediations (#20548)
0xarktos May 19, 2026
c71c60e
fix(contracts-bedrock): only flip INTEROP runtime flag at genesis whe…
maurelian May 19, 2026
c499fe1
docs: add --proofs-history.storage-version=v2 to op-reth examples (#2…
geoknee May 19, 2026
41146ac
docs: clarify historical proofs are required for permissioned chains …
Wazabie May 19, 2026
4d9e32e
test(revm-ee-tests): add op-revm integration tests from upstream revm…
theochap May 19, 2026
3fb61eb
feat(op-reth/payload): expose per-call committed transactions (#20740)
bitwiseguy May 19, 2026
1acf0f2
chore(vendor): op-rbuilder and rollup-boost adjustments (#20737)
einar-oplabs May 19, 2026
3d7601f
docs: clarify permissioned vs permissionless lookback for op-reth his…
Wazabie May 19, 2026
854abcc
feat(interop): add interop_ RPC namespace, migrate op-reth (#20778)
ajsutton May 19, 2026
82c7ea9
fix(op-supernode): stabilize first SafeDB snapshot in interop cold-st…
ajsutton May 19, 2026
2ee818a
fix(op-node): split super authority finalized cache (#20872)
karlfloersch May 19, 2026
7d819cd
op-reth: bump reth dependency (includes paradigmxyz/reth#24159 FCU fi…
sebastianst May 19, 2026
5548e69
docs: runbook for merging two chains into a shared dispute game (#20510)
ajsutton May 19, 2026
496aee8
refactor(op-node): unify follow source metrics into single counter (#…
jelias2 May 19, 2026
4230b9f
test(op-acceptance-tests): port super_root_script test to acceptance …
ajsutton May 19, 2026
2eb4a2d
chore(op-e2e): delete unused L2Verifier.InteropSyncNode (#20890)
ajsutton May 20, 2026
3b7e856
test(acceptance): replace sleep polling (#20868)
Inphi May 20, 2026
a2204d1
refactor(depset): move leaf dependency-set into op-core/interop/depse…
ajsutton May 20, 2026
59cc820
test(acceptance): raise short context timeouts (#20864)
Inphi May 20, 2026
660e89b
op-service: add op-service interop filter client (#20905)
karlfloersch May 20, 2026
9251d39
test(loadtest): fix deferred cleanup order (#20865)
Inphi May 20, 2026
42aa13f
fix(kona/registry): embed superchain-registry depsets, add rehearsal …
Inphi May 20, 2026
854b02a
circleci: migrate fuzz-golang to medium.gen2 (W4 pilot) (#20899)
hdcesario-op May 20, 2026
5e88f56
feat(contracts-bedrock): scale ResourceConfig to fit smaller gasLimit…
maurelian May 20, 2026
cc07315
circleci: migrate optimism Tier A jobs to Gen2 (same-size, 41 docker …
hdcesario-op May 20, 2026
b49138f
fix(e2e/proofs): copy AllocParams in StateRefund to prevent concurren…
Inphi May 20, 2026
da53390
fix(op-supernode): ignore interop.log-backfill-depth when no activati…
ajsutton May 20, 2026
f9bcc80
refactor(interop): move interop message types into op-core/interop/me…
ajsutton May 20, 2026
06b41f7
Resize Fuzz-golang job to xlarge.gen2 (#20931)
hdcesario-op May 20, 2026
1614be5
refactor(interop): move SafetyLevel into op-service/eth/safety (#20889)
ajsutton May 21, 2026
c83fb36
chore(op-node): remove op-supervisor (interop indexing) support (#20891)
ajsutton May 21, 2026
67a2626
feat(op-node): load dependency set from superchain-registry (#20893)
ajsutton May 21, 2026
778908b
fix(op-devstack): stabilize pre-genesis super game L1 block race (#20…
maurelian May 21, 2026
bb6f6e8
fix(op-e2e): stabilise TestSequenceWindowExpired by pinning Bob's L2 …
ajsutton May 21, 2026
6f0b518
Add karst check script (#20619)
joshklop May 21, 2026
edfc05d
chore(deps): bump op-rbuilder and rollup-boost dependencies (#20739)
nonsense May 21, 2026
17851f0
docs: add interop prep notice for OP Sepolia and Unichain Sepolia (#2…
ZakAyesh May 21, 2026
3a2cf2d
circleci: complete optimism Gen2 migration (22 jobs across 3 files) (…
hdcesario-op May 21, 2026
c2812d3
feat(op-node): support post-exec span batches (#20515)
nonsense May 21, 2026
dcad758
feat: unified predeploys source of truth (#19847)
0xniha May 21, 2026
748ce97
docs: update kona prestate build instructions (#20951)
Inphi May 21, 2026
f88b34b
chore(supervisor): remove unused in-process supervisor RPC client (#2…
ajsutton May 21, 2026
b71b8ee
test(supernode): also wait on EL finalized before fresh-data-dir rest…
ajsutton May 21, 2026
29c1544
chore(ci): stabilize memory-all — bound concurrency, shard across 2 r…
ajsutton May 22, 2026
f75376d
fix(op-service/eth): stabilize blob fuzz targets (#20940)
ajsutton May 22, 2026
ef111f0
fix(devstack): tolerate "batcher is already running" in DSL Start() (…
ajsutton May 22, 2026
c70503c
refactor(interop): move shared interop error sentinels into op-core/i…
ajsutton May 22, 2026
f9e4d06
chore(ci): disable Go test coverage and Codecov uploads (#20972)
ajsutton May 22, 2026
d4ae3d4
op-service: Avoid allocating 8Gb of memory to test ssz encoding. (#20…
ajsutton May 22, 2026
e8f568b
refactor(interop): move log helpers into op-core/interop/messages (#2…
ajsutton May 22, 2026
5776651
chore: remove ai-contracts-test job and supporting system (#20954)
JosepBove May 22, 2026
68063f1
fix(contracts): increase NUT bundle gas limits for ConditionalDeploye…
JosepBove May 22, 2026
b34d1cb
test(op-acceptance-tests): speed up depreqres tests to make CI faster…
nonsense May 22, 2026
2a53d0a
docs(flakes): add flake-prevention catalogue + semgrep rules for op-a…
Inphi May 22, 2026
e1f128e
fix(op-reth): prevent engine sync-target spin after deep unwind (#20949)
dhyaniarun1993 May 22, 2026
384464f
fix(kona-node): carry L2 hash through finalization to prevent silent …
digorithm May 22, 2026
eeec13f
fix(ctb): increase cost of l2ProxyAdmin.upgradeExecution() (#20986)
maurelian May 22, 2026
2889c77
chore: remove non-Go op-supervisor build and docs references (#20994)
ajsutton May 23, 2026
5c42a30
feat(op-supernode): add top-level --dependency-set flag (#20976)
ajsutton May 23, 2026
cd95c5d
chore(interopgen): move depset package to op-chain-ops/interopgen/con…
ajsutton May 23, 2026
f0fa99b
chore(op-node): remove unused interop subcommand (#20992)
ajsutton May 23, 2026
e8c6081
chore(op-supervisor): delete everything except the packages still use…
ajsutton May 24, 2026
52b4625
ci(rust): publish kona prestates on kona-client/v* tag push (#20999)
pauldowman May 24, 2026
a0f7226
fix(op-supernode): retry engine controller init in Start loop (#20991)
jelias2 May 24, 2026
f367b19
docs(notices): add OP Mainnet date + contract to stake-based priority…
donoso-eth May 25, 2026
b62f47c
fix(op-program): preserve mise.toml for kona-client docker build (#21…
pauldowman May 25, 2026
30c76cf
chore: remove stale TODOs for closed issues (#21003)
ajsutton May 25, 2026
bfa6fab
fix(op-supernode/interop): propagate verifier read errors to super_au…
ajsutton May 25, 2026
d1f3335
fix(justfile): correct paths to vendored Rust workspaces in build-rus…
ajsutton May 26, 2026
e2a44d6
chore(docker): switch op-stack-go runtime base to chainguard/static (…
falcorocks May 26, 2026
403d37a
chore(docker): switch op-reth runtime base to chainguard/wolfi-base (…
falcorocks May 26, 2026
31c121a
_ (#20918)
einar-oplabs May 26, 2026
7f7360f
chore(docker): switch kona runtime base for smaller runtime (#20979)
falcorocks May 26, 2026
69747da
fix(op-reth): use `RoInconsistent` for `op_proofs` CLI subcommands (#…
dhyaniarun1993 May 26, 2026
92a612d
ci(kona/registry): assert snapshots match superchain-registry submodu…
Inphi May 26, 2026
4a5f0ee
fix(op-reth): clamp sync_target past best_block in advance_sync (#21012)
dhyaniarun1993 May 26, 2026
8c61afd
docs: fix duplicate 'in' typo in interop-prep notice (#20987)
ZakAyesh May 26, 2026
a94ba01
op-acceptance: test light CL sequencing with supernode (#20923)
Inphi May 26, 2026
00559a2
feat(op-chain-ops,op-acceptance-tests): port Karst bn256 pair input l…
joshklop May 26, 2026
4907eba
Wire EIP-7934 and EIP-7825-deposit checks into check-karst CheckAll (…
joshklop May 26, 2026
79edae7
docs(notices): add Upgrade 19 activation dates for Sepolia and Mainne…
donoso-eth May 26, 2026
de3ee19
fix: ci semver not running properly (#21029)
0xOneTony May 26, 2026
6f94346
fix(op-node): stall consolidate on NotFound during EL sync (#21004)
ajsutton May 26, 2026
e3a5c50
refactor(kona/service): move cancellation out of actors and other tes…
op-will May 26, 2026
a516c52
feat(op-supernode): WAL canonical payloads for rewind / invalidate op…
ajsutton May 26, 2026
1d8735f
fix(op-supernode): retry RewindEngine on DeadlineExceeded (#21023)
ajsutton May 26, 2026
a45ebd7
docs(notices): add op-challenger and op-dispute-mon versions for Upgr…
pauldowman May 26, 2026
3ed9345
fix(op-chain-ops): fix check-prestate after kona monorepo merge (#21036)
pauldowman May 26, 2026
287dbd9
Removed unused version.json file (#21046)
pauldowman May 26, 2026
1df97f7
docs: add reth dependency update guide (#21009)
sebastianst May 27, 2026
eaa5483
feat(op-interop-filter): add chain tip lag and ingestion lag metrics …
jelias2 May 27, 2026
e4d396f
docs(node-operators/tutorials): default to op-reth (#21052)
donoso-eth May 27, 2026
c3381be
fix(contracts-bedrock): make semver lock artifact selection determini…
lumoswiz May 27, 2026
cb9b7f4
feat(op-node): default syncmode.offset-el-safe to 12h (#21033)
pcw109550 May 27, 2026
7e6af13
fix: cherry-pick fixups — resolve build errors, restore Hemi-specific…
ClaytonNorthey92 Jun 29, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3,773 changes: 261 additions & 3,512 deletions .circleci/config.yml

Large diffs are not rendered by default.

1,360 changes: 787 additions & 573 deletions .circleci/continue/main.yml

Large diffs are not rendered by default.

722 changes: 300 additions & 422 deletions .circleci/continue/rust-ci.yml

Large diffs are not rendered by default.

195 changes: 50 additions & 145 deletions .circleci/continue/rust-e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,91 +4,26 @@ version: 2.1
# This file contains E2E tests that depend on both kona and op-reth.
# It is merged with main.yml and rust-ci.yml when rust/** changes are detected.
# Shared orbs, commands, and jobs come from main.yml and rust-ci.yml during merge.
orbs:
utils: ethereum-optimism/circleci-utils@1.0.27

parameters:
# Required parameters (also in main.yml, merged during continuation)
c-default_docker_image:
type: string
default: cimg/base:2026.03
c-rust_e2e_dispatch:
type: boolean
default: false
c-rust_base_image:
type: string
default: us-docker.pkg.dev/oplabs-tools-artifacts/images/ci-base-clang@sha256:852cb2dcd64eb5c039abf857a2217f341351eb7e4ef1a989ba9eefb86f158105
c-go-cache-version:
type: string
default: "v0.0"
c-rust_changes_detected:
type: boolean
default: false
c-non_docs_changes:
type: boolean
default: false
# Passthrough declarations for setup config parameters.
# CircleCI forwards all explicitly-passed pipeline parameters to continuation configs.
# Without these declarations, manually triggered pipelines fail with "Unexpected argument(s)".
# These are not referenced by any job — the c- prefixed versions above are used instead.
default_docker_image:
type: string
default: cimg/base:2026.03
base_image:
type: string
default: default
main_dispatch:
type: boolean
default: true
fault_proofs_dispatch:
type: boolean
default: false
reproducibility_dispatch:
type: boolean
default: false
kontrol_dispatch:
type: boolean
default: false
cannon_full_test_dispatch:
type: boolean
default: false
sdk_dispatch:
type: boolean
default: false
docker_publish_dispatch:
type: boolean
default: false
stale_check_dispatch:
type: boolean
default: false
contracts_coverage_dispatch:
type: boolean
default: false
heavy_fuzz_dispatch:
type: boolean
default: false
sync_test_op_node_dispatch:
type: boolean
default: false
ai_contracts_test_dispatch:
type: boolean
default: false
rust_ci_dispatch:
type: boolean
default: false
rust_e2e_dispatch:
# Workflow activation flags (set by the decision tree in config.yml)
c-run_rust_e2e_ci:
type: boolean
default: false
github-event-type:
type: string
default: "__not_set__"
github-event-action:
type: string
default: "__not_set__"
github-event-base64:
type: string
default: "__not_set__"
devnet-metrics-collect:
c-run_rust_e2e_gate_skip:
type: boolean
default: false
go-cache-version:
type: string
default: "v0.0"

# Commands used by rust-e2e jobs
commands:
Expand Down Expand Up @@ -143,19 +78,15 @@ jobs:
type: boolean
default: false
docker:
- image: <<pipeline.parameters.c-default_docker_image>>
resource_class: xlarge
- image: <<pipeline.parameters.c-rust_base_image>>
resource_class: xlarge.gen2
steps:
- utils/checkout-with-mise:
checkout-method: blobless
- attach_workspace:
at: .
- go-restore-cache:
namespace: kona-ci
- rust-build: &kona-rust-build-release
directory: rust
profile: release
binary: "kona-node"
- run:
name: Run common tests for node with sysgo orchestrator
no_output_timeout: 60m
Expand Down Expand Up @@ -189,17 +120,15 @@ jobs:
# Kona Node Restart Tests (from node_e2e_sysgo_tests.yaml)
rust-restart-sysgo-tests:
docker:
- image: <<pipeline.parameters.c-default_docker_image>>
resource_class: xlarge
- image: <<pipeline.parameters.c-rust_base_image>>
resource_class: xlarge.gen2
steps:
- utils/checkout-with-mise:
checkout-method: blobless
- attach_workspace:
at: .
- go-restore-cache:
namespace: kona-ci
- rust-build:
<<: *kona-rust-build-release
- run:
name: Run restart tests for node with sysgo orchestrator
no_output_timeout: 60m
Expand All @@ -219,19 +148,15 @@ jobs:
# op-reth E2E Sysgo Tests
op-reth-e2e-sysgo-tests:
docker:
- image: <<pipeline.parameters.c-default_docker_image>>
resource_class: xlarge
- image: <<pipeline.parameters.c-rust_base_image>>
resource_class: xlarge.gen2
steps:
- utils/checkout-with-mise:
checkout-method: blobless
- attach_workspace:
at: .
- go-restore-cache:
namespace: op-reth-e2e
- rust-build:
directory: rust
profile: release
binary: "op-reth"
- run:
name: Run op-reth E2E tests with sysgo orchestrator
working_directory: rust/op-reth/tests
Expand All @@ -254,8 +179,8 @@ jobs:
description: The kind of action test (single or interop)
type: string
docker:
- image: <<pipeline.parameters.c-default_docker_image>>
resource_class: xlarge
- image: <<pipeline.parameters.c-rust_base_image>>
resource_class: xlarge.gen2
parallelism: 4
steps:
- utils/checkout-with-mise:
Expand All @@ -264,9 +189,6 @@ jobs:
at: .
- go-restore-cache:
namespace: kona-ci
- rust-build:
<<: *kona-rust-build-release
binary: "kona-host"
- run:
name: Build kona and run action tests
working_directory: rust/kona
Expand All @@ -286,25 +208,22 @@ jobs:
required-rust-e2e:
docker:
- image: <<pipeline.parameters.c-default_docker_image>>
resource_class: small
parameters:
always-succeed:
description: Force always succeed (skip API gate)
type: boolean
default: false
steps:
- run: echo "Required Rust E2E checks passed"
- utils/ci-gate:
always-succeed: << parameters.always-succeed >>

# ============================================================================
# RUST E2E WORKFLOWS
# ============================================================================
workflows:
# Rust E2E CI — runs on rust path changes or manual dispatch
rust-e2e-ci:
when:
or:
- and:
- equal: ["webhook", << pipeline.trigger_source >>]
- << pipeline.parameters.c-rust_changes_detected >>
- << pipeline.parameters.c-non_docs_changes >>
- and:
- equal: [true, <<pipeline.parameters.c-rust_e2e_dispatch>>]
- equal: ["api", << pipeline.trigger_source >>]
when: << pipeline.parameters.c-run_rust_e2e_ci >>
jobs:
- contracts-bedrock-build:
build_args: --skip test
Expand All @@ -313,58 +232,46 @@ workflows:
- cannon-prestate: &rust-e2e-job-base
context:
- circleci-repo-readonly-authenticated-github-token
- rust-build-binary: &cannon-kona-host
name: cannon-kona-host
directory: rust
profile: release
binary: "kona-host"
context:
- circleci-repo-readonly-authenticated-github-token
- rust-build-binary: &kona-build-release
name: kona-build-release
directory: rust
profile: release
context:
- circleci-repo-readonly-authenticated-github-token
- rust-build-binary:
name: op-reth-build
# rust-workspace-release builds the whole rust workspace (no binary filter),
# so it produces kona-host, kona-node, op-reth, and the rest. Downstream
# e2e jobs attach the workspace and consume the binaries directly.
- rust-build-binary: &rust-workspace-release
name: rust-workspace-release
directory: rust
profile: release
binary: "op-reth"
persist_to_workspace: true
context:
- circleci-repo-readonly-authenticated-github-token
- rust-e2e-sysgo-tests:
name: rust-e2e-<<matrix.devnet_config>>
matrix:
parameters:
devnet_config: ["simple-kona", "simple-kona-geth", "simple-kona-sequencer"]
devnet_config:
["simple-kona", "simple-kona-geth", "simple-kona-sequencer"]
context:
- circleci-repo-readonly-authenticated-github-token
requires:
- contracts-bedrock-build
- cannon-prestate
- cannon-kona-host
- kona-build-release
- op-reth-build
- rust-workspace-release
- op-reth-e2e-sysgo-tests:
<<: *rust-e2e-job-base
requires:
- contracts-bedrock-build
- op-reth-build
- rust-workspace-release
- rust-restart-sysgo-tests:
name: rust-e2e-restart
<<: *rust-e2e-job-base
requires:
- contracts-bedrock-build
- cannon-prestate
- cannon-kona-host
- kona-build-release
- rust-workspace-release
# Proof tests - single kind only, interop excluded per original config
- kona-proof-action-tests:
name: kona-proof-action-single
kind: single
requires:
- kona-build-release
- rust-workspace-release
- contracts-bedrock-build
context:
- circleci-repo-readonly-authenticated-github-token
Expand All @@ -373,41 +280,39 @@ workflows:
# -----------------------------------------------------------------------
- required-rust-e2e:
requires:
- rust-e2e-simple-kona
- rust-e2e-simple-kona-geth
- rust-e2e-simple-kona-sequencer
- rust-e2e-restart
- kona-proof-action-single

# Required Rust E2E gate (skip) — runs when no rust changes and no dispatch
# Just runs action tests
- rust-e2e-simple-kona: terminal
- rust-e2e-simple-kona-geth: terminal
- rust-e2e-simple-kona-sequencer: terminal
- rust-e2e-restart: terminal
- kona-proof-action-single: terminal
context:
- circleci-api-token
rust-e2e-gate-skip:
when:
and:
- equal: ["webhook", << pipeline.trigger_source >>]
- not: << pipeline.parameters.c-rust_changes_detected >>
when: << pipeline.parameters.c-run_rust_e2e_gate_skip >>
jobs:
- contracts-bedrock-build:
build_args: --skip test
context:
- circleci-repo-readonly-authenticated-github-token
- rust-build-binary:
name: kona-build-release
name: rust-workspace-release
directory: rust
profile: release
persist_to_workspace: true
context:
- circleci-repo-readonly-authenticated-github-token
# Proof tests - single kind only, interop excluded per original config
- kona-proof-action-tests:
name: kona-proof-action-single
kind: single
requires:
- kona-build-release
- rust-workspace-release
- contracts-bedrock-build
context:
- circleci-repo-readonly-authenticated-github-token

- required-rust-e2e:
requires:
- kona-proof-action-single

- kona-proof-action-single: terminal
context:
- circleci-api-token
14 changes: 14 additions & 0 deletions .circleci/l2-rpcs.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"op-mainnet": "",
"zora": "https://rpc.zora.energy",
"ink": "https://rpc-gel.inkonchain.com",
"mode": "https://mainnet.mode.network",
"metal": "https://rpc.metall2.com",
"arena-z": "https://rpc.arena-z.gg",
"swell": "https://swell-mainnet.alt.technology",
"unichain": "https://mainnet.unichain.org",
"soneium": "https://rpc.soneium.org",
"world-chain": "https://worldchain-mainnet.g.alchemy.com/public",
"base": "https://mainnet.base.org",
"xlayer": "https://xlayerrpc.okx.com"
}
6 changes: 3 additions & 3 deletions .circleci/rust-nightly-bump.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ version: 2.1
jobs:
bump-nightly:
docker:
- image: cimg/base:2024.01
- image: cimg/base:2026.03
steps:
- checkout

Expand Down Expand Up @@ -45,7 +45,7 @@ jobs:
GH_TOKEN="$GITHUB_TOKEN_GOVERNANCE" gh pr create \
--title "ci: bump rust nightly pin to ${LATEST}" \
--body "Automated daily bump of the pinned nightly Rust toolchain from \`${CURRENT}\` to \`${LATEST}\`. CI on this PR will validate the new toolchain compiles cleanly." \
--base main \
--base develop \
--label "ci" || echo "PR may already exist for this branch."

workflows:
Expand All @@ -56,7 +56,7 @@ workflows:
filters:
branches:
only:
- main
- develop
jobs:
- bump-nightly:
context:
Expand Down
Loading
Loading