Optimism is Ethereum, scaled.
This report summarizes scanner evidence for ethereum-optimism/optimism, a Go project with 6,485 GitHub stars. SynthScan examined 901,318 lines of code across 4584 source files, recording 1353 pattern matches distributed across 17 syntactic categories. The legacy adjusted pattern signal is 2.1 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 1235 finding(s).
Are imports declared and package/API names verified? 14 finding(s).
Are wrappers, guards, and repeated structures necessary? 196 finding(s).
Which changes need focused human review? 1353 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 1353 distinct pattern matches across 17 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | op-test-sequencer/sequencer/backend/work/iface.go | 121 | // Prebuilt inserts a pre-built block, skipping block-building. | COMMENT |
| LOW | op-test-sequencer/sequencer/backend/work/iface.go | 141 | COMMENT | |
| LOW | op-acceptance-tests/tests/glamsterdam_test.go | 201 | t.Require().Equal(sequencerUnsafe.ID(), verifierUnsafe.ID(), | COMMENT |
| LOW | …tance-tests/tests/safeheaddb_elsync/safeheaddb_test.go | 21 | cfg.VerifierSyncMode = sync.ELSync | COMMENT |
| LOW | …ce-tests/tests/superfaultproofs/activation_boundary.go | 1 | package superfaultproofs | COMMENT |
| LOW | …tance-tests/tests/superfaultproofs/superfaultproofs.go | 41 | Cfg *rollup.Config | COMMENT |
| LOW | …tance-tests/tests/superfaultproofs/superfaultproofs.go | 121 | g := c.Cfg.Genesis.L2Time | COMMENT |
| LOW | …tance-tests/tests/superfaultproofs/superfaultproofs.go | 521 | DisputedClaim: padding(consolidateStep), | COMMENT |
| LOW | …tance-tests/tests/superfaultproofs/superfaultproofs.go | 541 | // block. Tests 1 / 2 / 3 all assert valid TransitionState (rollover); test 4 | COMMENT |
| LOW | …tance-tests/tests/superfaultproofs/superfaultproofs.go | 921 | // l1HeadCurrent. The boundary block's batch lands on L1 only after | COMMENT |
| LOW | …cceptance-tests/tests/interop/seqwindow/expiry_test.go | 81 | COMMENT | |
| LOW | op-acceptance-tests/tests/interop/loadtest/doc.go | 1 | // Package loadtest contains interop load tests that run against sysgo networks | COMMENT |
| LOW | op-acceptance-tests/tests/interop/loadtest/doc.go | 21 | // Both schedulers decrease throughput if errors are encountered. They exit successfully upon | COMMENT |
| LOW | …ance-tests/tests/interop/filter/interop_filter_test.go | 101 | // | COMMENT |
| LOW | op-acceptance-tests/tests/sdm/init_test.go | 81 | excessiveRefundTarget string, | COMMENT |
| LOW | …eptance-tests/tests/sync/elsync/gap_elp2p/sync_test.go | 21 | // | COMMENT |
| LOW | …eptance-tests/tests/sync/elsync/gap_elp2p/sync_test.go | 41 | // Enabling ELP2P and eventual validation: | COMMENT |
| LOW | …eptance-tests/tests/sync/elsync/gap_elp2p/sync_test.go | 61 | // | COMMENT |
| LOW | …eptance-tests/tests/sync/elsync/gap_elp2p/sync_test.go | 81 | startNum := sys.L2ELB.BlockRefByLabel(eth.Unsafe).Number | COMMENT |
| LOW | …eptance-tests/tests/sync/elsync/gap_elp2p/sync_test.go | 161 | // Example logs from L2EL(geth) | COMMENT |
| LOW | …eptance-tests/tests/sync/elsync/gap_elp2p/sync_test.go | 181 | // FCU to target block which cannot be validated | COMMENT |
| LOW | …eptance-tests/tests/sync/elsync/gap_elp2p/sync_test.go | 241 | sys.L2ELB.ForkchoiceUpdate(sys.L2EL, targetNum, 0, 0, nil).IsSyncing() | COMMENT |
| LOW | …eptance-tests/tests/sync/elsync/gap_elp2p/sync_test.go | 301 | t.Cleanup(func() { | COMMENT |
| LOW | …eptance-tests/tests/sync/elsync/gap_elp2p/sync_test.go | 381 | sys.L2CLB.Start() | COMMENT |
| LOW | …eptance-tests/tests/sync/elsync/gap_clp2p/sync_test.go | 21 | // First make verifier reach unsafe tip | COMMENT |
| LOW | …eptance-tests/tests/sync/elsync/gap_clp2p/sync_test.go | 41 | // payload itself (e.g., malformed ExtraData). The CL relays this payload through | COMMENT |
| LOW | op-acceptance-tests/tests/sync/follow_l2/sync_test.go | 21 | // assertions.go:387: ERROR[03-31|11:33:11.255] | COMMENT |
| LOW | …tests/tests/supernode/interop/head_progression_test.go | 21 | // - SafeL2 <= LocalSafeL2 at all times (the exception to this might be during a node reset where the local safe has t | COMMENT |
| LOW | …/supernode/interop/reorg/invalid_message_reorg_test.go | 21 | COMMENT | |
| LOW | …/supernode/interop/reorg/invalid_message_reorg_test.go | 41 | sysgo.SkipOnOpGeth(t, "op-geth does not adopt the invalid-message replacement on the light path (#21119)") | COMMENT |
| LOW | op-sync-tester/synctester/backend/sync_tester.go | 341 | // forkchoiceUpdated processes a forkchoice state update from the consensus | COMMENT |
| LOW | op-sync-tester/synctester/backend/sync_tester.go | 521 | } | COMMENT |
| LOW | op-sync-tester/synctester/backend/sync_tester.go | 701 | // returning an InvalidParams error if any are missing or improperly shaped. | COMMENT |
| LOW | op-sync-tester/synctester/backend/elsync/el_sync.go | 21 | // | COMMENT |
| LOW | op-batcher/batcher/config.go | 81 | COMMENT | |
| LOW | op-batcher/batcher/channel_builder_test.go | 81 | // transaction as first transaction, using the specified chain ID. Both blocks are minimal | COMMENT |
| LOW | op-batcher/batcher/channel_config.go | 21 | // channel open. This allows control over how long a channel is kept open | COMMENT |
| LOW | op-batcher/batcher/channel_builder.go | 261 | } | COMMENT |
| LOW | op-batcher/batcher/channel_builder.go | 281 | // - ErrChannelTimeoutClose if the consensus channel timeout got too close, | COMMENT |
| LOW | op-batcher/batcher/channel_manager_test.go | 401 | // blocks->channels pipeline multiple times. Values are chosen such that a channel | COMMENT |
| LOW | melange/op-stack-rust.yaml | 1 | # Consolidated build for the Rust services of the optimism monorepo. kona, | COMMENT |
| LOW | melange/op-stack-go.yaml | 1 | # Consolidated build for every Go service of the optimism monorepo. One | COMMENT |
| LOW | op-service/httputil/timeout.go | 21 | // | COMMENT |
| LOW | op-service/txmgr/cli.go | 641 | RetryInterval time.Duration | COMMENT |
| LOW | op-service/txmgr/txmgr.go | 61 | COMMENT | |
| LOW | op-service/txmgr/txmgr.go | 81 | // is ErrAlreadyReserved, which indicates an incompatible transaction may be stuck in the | COMMENT |
| LOW | op-service/txmgr/txmgr.go | 281 | // TxData is the transaction calldata to be used in the constructed tx. | COMMENT |
| LOW | op-service/tri/tri.go | 1 | // Kleene’s three-valued logic (K3) enlarges classical logic with an “undefined” | COMMENT |
| LOW | op-service/github/release/provider.go | 41 | // an error if the version check fails (e.g., version mismatch or command execution error). | COMMENT |
| LOW | op-service/github/release/provider.go | 101 | // progressor reports download progress. Optional; may be nil. | COMMENT |
| LOW | op-service/testlog/testlog.go | 1 | // Copyright 2019 The go-ethereum Authors | COMMENT |
| LOW | op-service/cliflags/pathflag.go | 1 | // Package cliflags holds custom urfave/cli flag value types that are shared | COMMENT |
| LOW | op-service/sources/types.go | 21 | COMMENT | |
| LOW | op-service/sources/receipts_rpc.go | 141 | "provider_kind", f.provKind, "failed_method", m, "fallback", f.availableReceiptMethods&^m, "err", err) | COMMENT |
| LOW | op-service/sources/receipts_rpc.go | 241 | // Available in: standard, everywhere. | COMMENT |
| LOW | op-service/sources/receipts_rpc.go | 261 | // Method: debug_getRawReceipts | COMMENT |
| LOW | op-service/sources/receipts_rpc.go | 281 | // - QuickNode: undocumented. | COMMENT |
| LOW | op-service/sources/receipts_rpc.go | 301 | // Erigon has this available, but does not support block-hash argument to the method: | COMMENT |
| LOW | op-service/log/logger.go | 21 | // Logger emits structured log records to an slog.Handler. Record attributes are | COMMENT |
| LOW | op-service/log/logfilter/logfilter.go | 121 | func (f Selector) Mute() Statement { | COMMENT |
| 927 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …st/kona/crates/node/service/src/service/node/rollup.rs | 585 | // ─── cross-actor channels ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | …st/kona/crates/node/service/src/service/node/rollup.rs | 612 | // ─── actor construction ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | rust/kona/crates/node/engine/src/lib.rs | 14 | //! ┌─────────────┐ ┌──────────────┐ ┌─────────────┐ | COMMENT |
| MEDIUM⚡ | rust/kona/crates/node/engine/src/lib.rs | 17 | //! └─────────────┘ └──────────────┘ └─────────────┘ | COMMENT |
| MEDIUM⚡ | rust/kona/crates/node/engine/src/lib.rs | 20 | //! ┌─────────────┐ ┌──────────────┐ ┌─────────────┐ | COMMENT |
| MEDIUM⚡ | rust/kona/crates/node/engine/src/lib.rs | 23 | //! └─────────────┘ └──────────────┘ └─────────────┘ | COMMENT |
| MEDIUM | rust/op-reth/crates/trie/src/initialize.rs | 1501 | // ── RecordingStore spy ───────────────────────────────────────────── | COMMENT |
| MEDIUM | rust/op-reth/crates/trie/src/initialize.rs | 1614 | // ── Regression tests: address order must be preserved ────────────── | COMMENT |
| MEDIUM | rust/op-reth/crates/trie/src/initialize.rs | 1691 | // ── Source DB with a lagging hashed-state/trie frontier ───────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-sdk-components.ts | 15 | // ─── SDK path helpers ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-sdk-components.ts | 61 | // ─── Type resolution helpers ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-sdk-components.ts | 122 | // ─── Class / method traversal ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-sdk-components.ts | 189 | // ─── JSDoc helpers ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-sdk-components.ts | 294 | // ─── MDX generation ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-sdk-components.ts | 434 | // ─── Public processComponent ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-releases.ts | 10 | // ─── Types ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-releases.ts | 34 | // ─── Configuration ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-releases.ts | 40 | // ── optimism repo ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-releases.ts | 156 | // ── infra repo ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-releases.ts | 179 | // ─── GitHub API ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-releases.ts | 230 | // ─── MDX helpers ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-releases.ts | 384 | // ─── Per-component page ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-releases.ts | 451 | // ─── Index page ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/generate-releases.ts | 491 | // ─── Main ───────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/validate-nav.ts | 51 | // ─── N1: duplicate nav entries ──────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/validate-nav.ts | 76 | // ─── N2: nav entries without a file ─────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/validate-nav.ts | 84 | // ─── N3: orphans (pages on disk missing from nav) ───────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/validate-nav.ts | 114 | // ─── N4: allowlist hygiene ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/common.ts | 11 | // ─── Docs root resolution ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/common.ts | 47 | // ─── Path containment ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/common.ts | 64 | // ─── docs.json ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/common.ts | 140 | // ─── Filesystem walk ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/common.ts | 188 | // ─── Path helpers ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/common.ts | 205 | // ─── Reporting ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/validate-redirects.ts | 74 | // ─── R1: duplicate redirect sources ─────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/validate-redirects.ts | 88 | // ─── R2 + R3: dead targets and chained redirects ────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/validate-redirects.ts | 106 | // ─── R4: redirect sources shadowing live pages ──────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/validate-redirects.ts | 124 | // ─── R5: deleted/moved pages must gain a redirect in the same PR ────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/validate-redirects.ts | 173 | // ─── R6: internal links must resolve ────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/validate-reference.ts | 64 | // ─── Git tags ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/validate-reference.ts | 113 | // ─── Files ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/validate-reference.ts | 140 | // ─── R1: everything under reference/ is generated ───────────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/validate-reference.ts | 163 | // ─── R2: no stale or unparseable <Unreleased> callouts ──────────────────────── | COMMENT |
| MEDIUM | docs/public-docs/scripts/lint/validate-reference.ts | 222 | // ─── R3: manifest tags exist ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | ops/scripts/test-git-version.sh | 20 | # ── helpers ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | ops/scripts/test-git-version.sh | 103 | # ── main ─────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | ops/scripts/test-git-version.sh | 156 | # ── cleanup & summary ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | op-challenger/game/fault/contracts/oracle.go | 402 | // ┌─────────────┬────────────────────────────────────────────┐ | COMMENT |
| MEDIUM⚡ | op-challenger/game/fault/contracts/oracle.go | 404 | // ├─────────────┼────────────────────────────────────────────┤ | COMMENT |
| MEDIUM⚡ | op-challenger/game/fault/contracts/oracle.go | 411 | // └─────────────┴────────────────────────────────────────────┘ | COMMENT |
| MEDIUM | .circleci/config.yml | 84 | # -------------------------------------------------------------------------- | COMMENT |
| MEDIUM | .circleci/config.yml | 100 | # -------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | .circleci/scripts/compute-workflow-conditions.sh | 49 | # ========================================================= | COMMENT |
| MEDIUM⚡ | .circleci/scripts/compute-workflow-conditions.sh | 51 | # ========================================================= | COMMENT |
| MEDIUM⚡ | .circleci/scripts/compute-workflow-conditions.sh | 57 | # --------------------------------------------------------- | COMMENT |
| MEDIUM | .circleci/scripts/compute-workflow-conditions.sh | 88 | # --------------------------------------------------------- | COMMENT |
| MEDIUM | .circleci/scripts/compute-workflow-conditions.sh | 120 | # --------------------------------------------------------- | COMMENT |
| MEDIUM | .circleci/continue/rust-e2e.yml | 32 | # ============================================================================ | COMMENT |
| MEDIUM | .circleci/continue/rust-e2e.yml | 34 | # ============================================================================ | COMMENT |
| MEDIUM | .circleci/continue/rust-e2e.yml | 118 | # ============================================================================ | COMMENT |
| 39 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | op-alt-da/bindings/dataavailabilitychallenge.go | 553 | // Solidity: function variableResolutionCostPrecision() view returns(uint256) | COMMENT |
| LOW | op-alt-da/bindings/dataavailabilitychallenge.go | 570 | // Solidity: function variableResolutionCostPrecision() view returns(uint256) | COMMENT |
| LOW | op-alt-da/bindings/dataavailabilitychallenge.go | 577 | // Solidity: function variableResolutionCostPrecision() view returns(uint256) | COMMENT |
| LOW⚡ | op-alt-da/bindings/dataavailabilitychallenge.go | 741 | // Solidity: function setResolverRefundPercentage(uint256 _resolverRefundPercentage) returns() | COMMENT |
| LOW⚡ | op-alt-da/bindings/dataavailabilitychallenge.go | 748 | // Solidity: function setResolverRefundPercentage(uint256 _resolverRefundPercentage) returns() | COMMENT |
| LOW⚡ | op-alt-da/bindings/dataavailabilitychallenge.go | 755 | // Solidity: function setResolverRefundPercentage(uint256 _resolverRefundPercentage) returns() | COMMENT |
| LOW | rust/scripts/test_upstream_mirrors.py | 39 | def test_rejects_invalid_semver(self) -> None: | CODE |
| LOW | rust/scripts/test_upstream_mirrors.py | 48 | def test_validates_reth_tokens(self) -> None: | CODE |
| LOW | rust/scripts/test_upstream_mirrors.py | 76 | def test_lockfile_preserves_duplicate_versions(self) -> None: | CODE |
| LOW | rust/scripts/test_upstream_mirrors.py | 497 | def test_tree_tags_are_found_and_classify_without_errors(self) -> None: | CODE |
| LOW | rust/scripts/test_upstream_mirrors.py | 513 | def test_mirrors_recipe_maps_stale_anywhere_in_the_arguments(self) -> None: | CODE |
| LOW⚡ | rust/scripts/test_upstream_mirrors.py | 284 | def test_invalid_cratesio_version_is_malformed(self) -> None: | STRING |
| LOW⚡ | rust/scripts/test_upstream_mirrors.py | 288 | def test_duplicate_locked_versions_are_ambiguous(self) -> None: | STRING |
| LOW⚡ | rust/scripts/test_upstream_mirrors.py | 295 | def test_duplicate_locked_versions_resolve_to_the_workspace_range(self) -> None: | STRING |
| LOW⚡ | rust/scripts/test_upstream_mirrors.py | 401 | def test_reth_member_crate_with_a_pin_token_names_the_family(self) -> None: | STRING |
| LOW⚡ | rust/scripts/test_upstream_mirrors.py | 408 | def test_reth_named_cratesio_crates_keep_their_semver(self) -> None: | STRING |
| LOW⚡ | rust/scripts/test_upstream_mirrors.py | 412 | def test_check_output_names_bad_tag(self) -> None: | STRING |
| LOW⚡ | rust/scripts/test_upstream_mirrors.py | 461 | def test_check_fails_when_the_tree_has_no_tags(self) -> None: | STRING |
| LOW⚡ | rust/scripts/test_upstream_mirrors.py | 471 | def test_listing_no_tags_is_not_an_error(self) -> None: | STRING |
| LOW⚡ | rust/scripts/test_upstream_mirrors.py | 481 | def test_check_fails_closed_on_unknown_status(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 95 | def test_lockfile_ignores_non_cratesio_packages(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 111 | def test_reth_pin_requires_one_consistent_source(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 129 | def test_reth_manifest_tag_accepts_release_and_fork_tags(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 142 | def test_reth_manifest_tag_requires_release_or_fork_tag(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 154 | def test_reth_pin_compares_complete_revisions(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 165 | def test_reth_pin_rejects_missing_or_ambiguous_repo(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 180 | def test_find_tags_propagates_unreadable_file(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 189 | def test_find_tags_parses_single_line_and_wrapped_tags(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 225 | def test_find_tags_ignores_non_doc_mentions(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 234 | def test_find_tags_ignores_fenced_doc_examples(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 255 | def test_prose_wrapped_onto_the_tag_line_names_the_blank_doc_line(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 307 | def test_unselective_workspace_requirements_stay_ambiguous(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 325 | def test_reth_statuses_and_token_validation(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 336 | def test_reth_release_build_metadata_is_not_ahead(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 345 | def test_reth_fork_tag_statuses(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 365 | def test_port_statuses_for_cratesio_and_reth(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 382 | def test_port_ahead_of_the_pin_is_an_error(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 390 | def test_stale_only_excludes_frozen_and_errors(self) -> None: | STRING |
| LOW | rust/scripts/test_upstream_mirrors.py | 449 | def test_stale_check_includes_bad_diagnostics(self) -> None: | STRING |
| LOW | rust/scripts/upstream-mirrors.py | 340 | def narrow_to_workspace_range(versions: set[str], requirement: str | None) -> set[str]: | CODE |
| LOW | op-e2e/bindingspreview/optimismportal2.go | 315 | // Solidity: function disputeGameFinalityDelaySeconds() view returns(uint256) | COMMENT |
| LOW | op-e2e/bindingspreview/optimismportal2.go | 332 | // Solidity: function disputeGameFinalityDelaySeconds() view returns(uint256) | COMMENT |
| LOW | op-e2e/bindingspreview/optimismportal2.go | 339 | // Solidity: function disputeGameFinalityDelaySeconds() view returns(uint256) | COMMENT |
| LOW | op-e2e/bindingspreview/optimismportal2.go | 582 | // Solidity: function proofMaturityDelaySeconds() view returns(uint256) | COMMENT |
| LOW | op-e2e/bindingspreview/optimismportal2.go | 599 | // Solidity: function proofMaturityDelaySeconds() view returns(uint256) | COMMENT |
| LOW | op-e2e/bindingspreview/optimismportal2.go | 606 | // Solidity: function proofMaturityDelaySeconds() view returns(uint256) | COMMENT |
| LOW | op-e2e/bindingspreview/optimismportal2.go | 720 | // Solidity: function respectedGameTypeUpdatedAt() view returns(uint64) | COMMENT |
| LOW | op-e2e/bindingspreview/optimismportal2.go | 737 | // Solidity: function respectedGameTypeUpdatedAt() view returns(uint64) | COMMENT |
| LOW | op-e2e/bindingspreview/optimismportal2.go | 744 | // Solidity: function respectedGameTypeUpdatedAt() view returns(uint64) | COMMENT |
| LOW⚡ | op-e2e/bindingspreview/optimismportal2.go | 907 | // Solidity: function finalizeWithdrawalTransaction((uint256,address,address,uint256,uint256,bytes) _tx) returns() | COMMENT |
| LOW⚡ | op-e2e/bindingspreview/optimismportal2.go | 914 | // Solidity: function finalizeWithdrawalTransaction((uint256,address,address,uint256,uint256,bytes) _tx) returns() | COMMENT |
| LOW⚡ | op-e2e/bindingspreview/optimismportal2.go | 921 | // Solidity: function finalizeWithdrawalTransaction((uint256,address,address,uint256,uint256,bytes) _tx) returns() | COMMENT |
| LOW⚡ | op-e2e/bindingspreview/optimismportal2.go | 928 | // Solidity: function finalizeWithdrawalTransactionExternalProof((uint256,address,address,uint256,uint256,bytes) _tx, ad | COMMENT |
| LOW⚡ | op-e2e/bindingspreview/optimismportal2.go | 935 | // Solidity: function finalizeWithdrawalTransactionExternalProof((uint256,address,address,uint256,uint256,bytes) _tx, ad | COMMENT |
| LOW⚡ | op-e2e/bindingspreview/optimismportal2.go | 942 | // Solidity: function finalizeWithdrawalTransactionExternalProof((uint256,address,address,uint256,uint256,bytes) _tx, ad | COMMENT |
| LOW⚡ | op-e2e/bindingspreview/optimismportal2.go | 970 | // Solidity: function proveWithdrawalTransaction((uint256,address,address,uint256,uint256,bytes) _tx, uint256 _disputeGa | COMMENT |
| LOW⚡ | op-e2e/bindingspreview/optimismportal2.go | 977 | // Solidity: function proveWithdrawalTransaction((uint256,address,address,uint256,uint256,bytes) _tx, uint256 _disputeGa | COMMENT |
| LOW⚡ | op-e2e/bindingspreview/optimismportal2.go | 984 | // Solidity: function proveWithdrawalTransaction((uint256,address,address,uint256,uint256,bytes) _tx, uint256 _disputeGa | COMMENT |
| LOW | op-e2e/bindings/multicall3.go | 388 | // Solidity: function getCurrentBlockDifficulty() view returns(uint256 difficulty) | COMMENT |
| LOW | op-e2e/bindings/multicall3.go | 405 | // Solidity: function getCurrentBlockDifficulty() view returns(uint256 difficulty) | COMMENT |
| 32 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …ance-tests/tests/interop/filter/interop_filter_test.go | 125 | // Step 1: Send a valid interop tx — should succeed before failsafe | COMMENT |
| LOW⚡ | …ance-tests/tests/interop/filter/interop_filter_test.go | 133 | // Step 2: Enable failsafe — no wait needed; even if op-reth hasn't polled | COMMENT |
| LOW⚡ | …ance-tests/tests/interop/filter/interop_filter_test.go | 138 | // Step 3: Send another init message and try exec — should fail | COMMENT |
| LOW⚡ | …ance-tests/tests/interop/filter/interop_filter_test.go | 172 | // Step 4: Disable failsafe and wait one block for op-reth's poller to pick up the change | COMMENT |
| LOW⚡ | …ance-tests/tests/interop/filter/interop_filter_test.go | 176 | // Step 5: Verify interop txs recover after failsafe is disabled | COMMENT |
| LOW | op-service/txmgr/txmgr.go | 402 | // NOTE: This method SHOULD NOT publish the resulting transaction. | COMMENT |
| LOW⚡ | rust/kona/crates/node/disc/src/driver.rs | 198 | // Step 1: Start the discovery service. | COMMENT |
| LOW⚡ | rust/kona/crates/node/disc/src/driver.rs | 206 | // Step 2: Bootstrap the discovery table with bootnodes. | COMMENT |
| LOW⚡ | rust/kona/crates/node/disc/src/driver.rs | 213 | // Step 3: Forward ENRs in the bootstore to the enr receiver. | COMMENT |
| LOW | rust/kona/crates/node/disc/src/driver.rs | 242 | // Step 4: Run the core driver loop. | COMMENT |
| LOW⚡ | rust/kona/tests/proofs/batcher_change_test.go | 42 | // Step 1: Batcher A (default) submits a batch. | COMMENT |
| LOW⚡ | rust/kona/tests/proofs/batcher_change_test.go | 49 | // Step 2: Change batcher from A to B (Bob) on L1 and replace env.Batcher. | COMMENT |
| LOW⚡ | rust/kona/tests/proofs/batcher_change_test.go | 52 | // Step 3: Build L2 blocks adopting the batcher change, submit with batcher B. | COMMENT |
| LOW⚡ | rust/kona/tests/proofs/batcher_change_test.go | 58 | // Step 4: Run the fault proof program. This re-derives the chain from | COMMENT |
| LOW | rust/op-reth/crates/trie/src/db/store/cursor/mod.rs | 88 | // Step 1: Pick the minimum key across both cursors. | COMMENT |
| LOW⚡ | rust/op-reth/crates/trie/src/db/store/cursor/mod.rs | 102 | // Step 2: Advance whichever cursor(s) produced min_key. | COMMENT |
| LOW⚡ | rust/op-reth/crates/trie/src/db/store/cursor/mod.rs | 110 | // Step 3: Resolve the value at max_block_number. | COMMENT |
| LOW | .claude/agents/go-code-reviewer.md | 30 | ## Step 0: Lint before reading the diff | COMMENT |
| LOW | .claude/agents/go-code-reviewer.md | 49 | ## Step 1: Understand context | COMMENT |
| LOW | .claude/agents/go-code-reviewer.md | 56 | ## Step 2: Review for correctness | COMMENT |
| LOW | .claude/agents/go-code-reviewer.md | 76 | ## Step 3: Review for reuse and simplicity | COMMENT |
| LOW | .claude/agents/go-code-reviewer.md | 91 | ## Step 4: Review the tests | COMMENT |
| LOW | .claude/agents/rust-code-reviewer.md | 38 | ### Step 0: Always run the project's lint recipe first | COMMENT |
| LOW⚡ | .claude/agents/rust-code-reviewer.md | 53 | ### Step 1: Understand Context | COMMENT |
| LOW⚡ | .claude/agents/rust-code-reviewer.md | 58 | ### Step 2: Analyze Structure | COMMENT |
| LOW⚡ | .claude/agents/rust-code-reviewer.md | 64 | ### Step 3: Evaluate Reuse Opportunities | COMMENT |
| LOW⚡ | .claude/agents/rust-code-reviewer.md | 70 | ### Step 4: Suggest Improvements | COMMENT |
| LOW | .claude/skills/fix-todo/SKILL.md | 32 | ### Step 1: Find the latest scheduled TODO checker job | COMMENT |
| LOW | .claude/skills/fix-todo/SKILL.md | 42 | ### Step 2: Get the workflow and job details | COMMENT |
| LOW | .claude/skills/fix-todo/SKILL.md | 72 | ### Step 3: Fetch the job output to find closed issues | COMMENT |
| LOW | .claude/skills/fix-todo/SKILL.md | 86 | ### Step 4: Parse the closed issue information | COMMENT |
| LOW | .claude/skills/fix-todo/SKILL.md | 93 | ### Step 5: Find who closed the issue | COMMENT |
| LOW | .claude/skills/fix-todo/SKILL.md | 139 | ### Step 6: Read the actual TODO line from the file | COMMENT |
| LOW | .claude/skills/fix-todo/SKILL.md | 143 | ### Step 7: Reopen the issue with proper attribution | COMMENT |
| LOW | .claude/skills/fix-rust-fmt/SKILL.md | 21 | ### Step 1: Ensure mise tools are installed | COMMENT |
| LOW | .claude/skills/fix-rust-fmt/SKILL.md | 31 | ### Step 2: Run the formatter | COMMENT |
| LOW | docs/public-docs/REDIRECTS_GUIDE.md | 31 | ### Step 1: Open `docs.json` | COMMENT |
| LOW | docs/public-docs/REDIRECTS_GUIDE.md | 35 | ### Step 2: Find the `redirects` array | COMMENT |
| LOW | docs/public-docs/REDIRECTS_GUIDE.md | 52 | ### Step 3: Add your redirect | COMMENT |
| LOW | docs/public-docs/REDIRECTS_GUIDE.md | 67 | ### Step 4: Test locally | COMMENT |
| LOW | op-chain-ops/interopsmoke/smoke.go | 1036 | // Step 1: Chain A sends a message whose relayed call emits a log on Chain B. | COMMENT |
| LOW | op-chain-ops/interopsmoke/smoke.go | 1056 | // Step 2: Chain B relays it invalidly. The relay executes anyway and emits | COMMENT |
| LOW | op-chain-ops/interopsmoke/smoke.go | 1085 | // Step 3: Chain A executes the bounced message, which depends on the invalid | COMMENT |
| LOW | op-chain-ops/interopsmoke/smoke.go | 1145 | // Step 4: the invalid block goes, and the cascade must follow. | COMMENT |
| LOW⚡ | op-e2e/actions/supernode/rewind_test.go | 211 | // Step 1: Build L1 block #1 and mark it as safe | COMMENT |
| LOW⚡ | op-e2e/actions/supernode/rewind_test.go | 221 | // Step 2: Build L1 block #2, mark #2 as safe and #1 as finalized | COMMENT |
| LOW⚡ | op-e2e/actions/supernode/rewind_test.go | 232 | // Step 3: Submit batch containing current L2 blocks (will be in L1 block #3) | COMMENT |
| LOW⚡ | op-e2e/actions/supernode/rewind_test.go | 240 | // Step 4: Build more L2 blocks and submit another batch (L1 block #4) | COMMENT |
| LOW⚡ | op-e2e/actions/supernode/rewind_test.go | 247 | // Step 5: Add more L1 blocks #5, #6 | COMMENT |
| LOW⚡ | op-e2e/actions/supernode/rewind_test.go | 255 | // Step 6: Finalize the L1 block containing the first batch (#3) | COMMENT |
| LOW | …/deployer/integration_test/cli/bootstrap_forge_test.go | 135 | // Step 1: Bootstrap superchain with Forge | COMMENT |
| LOW | …/deployer/integration_test/cli/bootstrap_forge_test.go | 151 | // Step 2: Bootstrap implementations with Forge | COMMENT |
| LOW | ops/scripts/nut-provenance-verify/main.go | 54 | // Step 1: Verify bundle file exists and hash matches. | COMMENT |
| LOW | ops/scripts/nut-provenance-verify/main.go | 70 | // Step 2: Verify the bundle was correctly built from the recorded commit. | COMMENT |
| LOW⚡ | …/supernode/chain_container/engine_controller/rewind.go | 102 | // Step 1: Insert a synthetic block (modified extra data) which is built on the parent of | COMMENT |
| LOW⚡ | …/supernode/chain_container/engine_controller/rewind.go | 112 | // Step 2: compute rewind targets for safe and finalized heads, ensuring they do not move | COMMENT |
| LOW⚡ | …/supernode/chain_container/engine_controller/rewind.go | 119 | // Step 3: FCU to the synthetic block to trigger a reorg, removing the target block from | COMMENT |
| LOW⚡ | …/supernode/chain_container/engine_controller/rewind.go | 131 | // Step 4: re-insert the canonical target payload via engine_newPayload. The previous FCU | COMMENT |
| LOW⚡ | …/supernode/chain_container/engine_controller/rewind.go | 139 | // Step 5: FCU to the actual target block. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | rust/alloy-op-evm/src/lib.rs | 409 | if self.inner.0.ctx.tx.tx_type() != | CODE |
| CRITICAL | rust/alloy-op-evm/src/lib.rs | 414 | if self.inner.0.ctx.cfg.spec.is_enabled_in(OpSpecId::ISTHMUS) { | CODE |
| CRITICAL | rust/op-reth/crates/flashblocks/src/worker.rs | 704 | assert_eq!(first.pending_state.execution_outcome.result.receipts.len(), 2); | CODE |
| CRITICAL | rust/op-reth/crates/node/tests/it/derived_attributes.rs | 187 | let block = payload.execution_payload.payload_inner.payload_inner.payload_inner.clone(); | CODE |
| CRITICAL | op-e2e/interop/supersystem.go | 464 | return s.worldOutput.L1.Genesis.Config.ChainID.String() | CODE |
| CRITICAL | op-e2e/actions/helpers/user.go | 397 | tx, err := s.L1.env.Bindings.OptimismPortal.DepositTransaction(&s.L1.txOpts, toAddr, depositTransferValue, depositGas, | CODE |
| CRITICAL | op-e2e/actions/helpers/user.go | 404 | tx, err = s.L1.env.Bindings.OptimismPortal.DepositTransaction(&s.L1.txOpts, toAddr, depositTransferValue, depositGas, i | CODE |
| CRITICAL | op-e2e/actions/helpers/user.go | 503 | tx, err := s.L1.env.Bindings.OptimismPortal.ProveWithdrawalTransaction( | CODE |
| CRITICAL | op-e2e/actions/helpers/user.go | 535 | tx, err := s.L1.env.Bindings.OptimismPortal.FinalizeWithdrawalTransaction( | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | …ance-tests/tests/interop/filter/interop_filter_test.go | 125 | // Step 1: Send a valid interop tx — should succeed before failsafe | COMMENT |
| LOW⚡ | …ance-tests/tests/interop/filter/interop_filter_test.go | 133 | // Step 2: Enable failsafe — no wait needed; even if op-reth hasn't polled | COMMENT |
| LOW⚡ | …ance-tests/tests/interop/filter/interop_filter_test.go | 138 | // Step 3: Send another init message and try exec — should fail | COMMENT |
| LOW⚡ | …ance-tests/tests/interop/filter/interop_filter_test.go | 172 | // Step 4: Disable failsafe and wait one block for op-reth's poller to pick up the change | COMMENT |
| LOW⚡ | …ance-tests/tests/interop/filter/interop_filter_test.go | 176 | // Step 5: Verify interop txs recover after failsafe is disabled | COMMENT |
| LOW⚡ | rust/kona/crates/node/disc/src/driver.rs | 198 | // Step 1: Start the discovery service. | COMMENT |
| LOW⚡ | rust/kona/crates/node/disc/src/driver.rs | 206 | // Step 2: Bootstrap the discovery table with bootnodes. | COMMENT |
| LOW⚡ | rust/kona/crates/node/disc/src/driver.rs | 213 | // Step 3: Forward ENRs in the bootstore to the enr receiver. | COMMENT |
| LOW | rust/kona/crates/node/disc/src/driver.rs | 242 | // Step 4: Run the core driver loop. | COMMENT |
| LOW⚡ | rust/kona/tests/proofs/batcher_change_test.go | 42 | // Step 1: Batcher A (default) submits a batch. | COMMENT |
| LOW⚡ | rust/kona/tests/proofs/batcher_change_test.go | 49 | // Step 2: Change batcher from A to B (Bob) on L1 and replace env.Batcher. | COMMENT |
| LOW⚡ | rust/kona/tests/proofs/batcher_change_test.go | 52 | // Step 3: Build L2 blocks adopting the batcher change, submit with batcher B. | COMMENT |
| LOW⚡ | rust/kona/tests/proofs/batcher_change_test.go | 58 | // Step 4: Run the fault proof program. This re-derives the chain from | COMMENT |
| LOW | rust/op-reth/crates/trie/src/db/store/cursor/mod.rs | 88 | // Step 1: Pick the minimum key across both cursors. | COMMENT |
| LOW⚡ | rust/op-reth/crates/trie/src/db/store/cursor/mod.rs | 102 | // Step 2: Advance whichever cursor(s) produced min_key. | COMMENT |
| LOW⚡ | rust/op-reth/crates/trie/src/db/store/cursor/mod.rs | 110 | // Step 3: Resolve the value at max_block_number. | COMMENT |
| LOW | op-chain-ops/interopsmoke/smoke.go | 1036 | // Step 1: Chain A sends a message whose relayed call emits a log on Chain B. | COMMENT |
| LOW | op-chain-ops/interopsmoke/smoke.go | 1056 | // Step 2: Chain B relays it invalidly. The relay executes anyway and emits | COMMENT |
| LOW | op-chain-ops/interopsmoke/smoke.go | 1085 | // Step 3: Chain A executes the bounced message, which depends on the invalid | COMMENT |
| LOW | op-chain-ops/interopsmoke/smoke.go | 1145 | // Step 4: the invalid block goes, and the cascade must follow. | COMMENT |
| LOW⚡ | op-e2e/actions/supernode/rewind_test.go | 211 | // Step 1: Build L1 block #1 and mark it as safe | COMMENT |
| LOW⚡ | op-e2e/actions/supernode/rewind_test.go | 221 | // Step 2: Build L1 block #2, mark #2 as safe and #1 as finalized | COMMENT |
| LOW⚡ | op-e2e/actions/supernode/rewind_test.go | 232 | // Step 3: Submit batch containing current L2 blocks (will be in L1 block #3) | COMMENT |
| LOW⚡ | op-e2e/actions/supernode/rewind_test.go | 240 | // Step 4: Build more L2 blocks and submit another batch (L1 block #4) | COMMENT |
| LOW⚡ | op-e2e/actions/supernode/rewind_test.go | 247 | // Step 5: Add more L1 blocks #5, #6 | COMMENT |
| LOW⚡ | op-e2e/actions/supernode/rewind_test.go | 255 | // Step 6: Finalize the L1 block containing the first batch (#3) | COMMENT |
| LOW | …/deployer/integration_test/cli/bootstrap_forge_test.go | 135 | // Step 1: Bootstrap superchain with Forge | COMMENT |
| LOW | …/deployer/integration_test/cli/bootstrap_forge_test.go | 151 | // Step 2: Bootstrap implementations with Forge | COMMENT |
| LOW | op-deployer/pkg/deployer/pipeline/init.go | 107 | // If the state has been applied, we need to check if any immutable | COMMENT |
| LOW | ops/scripts/nut-provenance-verify/main.go | 54 | // Step 1: Verify bundle file exists and hash matches. | COMMENT |
| LOW | ops/scripts/nut-provenance-verify/main.go | 70 | // Step 2: Verify the bundle was correctly built from the recorded commit. | COMMENT |
| LOW⚡ | …/supernode/chain_container/engine_controller/rewind.go | 102 | // Step 1: Insert a synthetic block (modified extra data) which is built on the parent of | COMMENT |
| LOW⚡ | …/supernode/chain_container/engine_controller/rewind.go | 112 | // Step 2: compute rewind targets for safe and finalized heads, ensuring they do not move | COMMENT |
| LOW⚡ | …/supernode/chain_container/engine_controller/rewind.go | 119 | // Step 3: FCU to the synthetic block to trigger a reorg, removing the target block from | COMMENT |
| LOW⚡ | …/supernode/chain_container/engine_controller/rewind.go | 131 | // Step 4: re-insert the canonical target payload via engine_newPayload. The previous FCU | COMMENT |
| LOW⚡ | …/supernode/chain_container/engine_controller/rewind.go | 139 | // Step 5: FCU to the actual target block. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | op-service/locks/rwmap.go | 10 | // although it does not utilize Go generics. | COMMENT |
| MEDIUM | op-service/sources/batching/test/generic_stub.go | 95 | // So leverage json.Unmarshal to set the out value correctly. | COMMENT |
| MEDIUM | op-service/sources/batching/test/abi_stub.go | 75 | // So leverage json.Unmarshal to set the out value correctly. | COMMENT |
| MEDIUM | op-up/install.sh | 6 | # [foundrup]: https://foundry.paradigm.xyz | COMMENT |
| MEDIUM | op-chain-ops/foundry/sourcefs.go | 25 | // optionally, the source-map FS can utilize the build-data of a specific compiler-profile. | COMMENT |
| MEDIUM | op-chain-ops/script/script.go | 86 | // only known contracts may utilize cheatcodes and logging | COMMENT |
| MEDIUM | op-chain-ops/script/script.go | 322 | // AllowCheatcodes allows the given address to utilize the cheatcodes and logging precompiles | COMMENT |
| MEDIUM | op-chain-ops/genesis/config.go | 828 | // A production L2 deployment does not utilize this configuration, | COMMENT |
| MEDIUM | op-node/benchmarks/batchbuilding_test.go | 208 | // to leverage optimizations in the Batch Linked List | COMMENT |
| MEDIUM | op-node/benchmarks/batchbuilding_test.go | 276 | // to leverage optimizations in the Batch Linked List | COMMENT |
| MEDIUM | op-node/benchmarks/batchbuilding_test.go | 337 | // to leverage optimizations in the Batch Linked List | COMMENT |
| MEDIUM | op-node/node/node.go | 495 | // Ping the Beacon API on startup to be more robust against connection issues. | COMMENT |
| MEDIUM | op-challenger/game/scheduler/coordinator_test.go | 280 | // This makes the inflight game metric more robust. | COMMENT |
| MEDIUM | .circleci/scripts/test-decision-tree.sh | 24 | # --- Test harness --- | COMMENT |
| MEDIUM | op-devstack/dsl/operator_fee.go | 166 | // to make the test robust to any other traffic on the chain. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …cceptance-tests/scripts/generate-flaky-tests-report.sh | 83 | # Check if we got a valid response | COMMENT |
| LOW | …cceptance-tests/scripts/generate-flaky-tests-report.sh | 104 | # Check if the response contains flaky_tests | COMMENT |
| LOW | …cceptance-tests/scripts/generate-flaky-tests-report.sh | 178 | # Check if HTML file was generated and has content | COMMENT |
| LOW | justfiles/uptodate.sh | 2 | # Check if a target file is up to date relative to source files/directories. | COMMENT |
| LOW | …-docs/create-l2-rollup-example/scripts/setup-rollup.sh | 8 | # Check if running in Docker | COMMENT |
| LOW | …-docs/create-l2-rollup-example/scripts/setup-rollup.sh | 404 | # Check if we're on the correct kona-node tag | COMMENT |
| LOW | …eate-l2-rollup-example/scripts/download-op-deployer.sh | 127 | # Check if this release has op-deployer assets for our platform | COMMENT |
| LOW | …/contracts-bedrock/test/kontrol/scripts/run-kontrol.sh | 70 | # Check if kontrol_prove_report.xml exists in the container and copy it out if it does | COMMENT |
| LOW | …edrock/test/kontrol/scripts/make-summary-deployment.sh | 31 | # Set trap to call cleanup function on exit | COMMENT |
| LOW | …tracts-bedrock/test/kontrol/scripts/json/clean_json.py | 51 | # Check if a file path is provided as a command line argument | COMMENT |
| LOW⚡ | …edrock/test/kontrol/scripts/json/reverse_key_values.py | 37 | # Check if both input and output file paths are provided | COMMENT |
| LOW | …/contracts-bedrock/scripts/checks/check-semver-diff.sh | 169 | # Check if the contract file exists. | COMMENT |
| LOW | …/contracts-bedrock/scripts/checks/check-semver-diff.sh | 198 | # Check if the versions were extracted successfully. | COMMENT |
| LOW | …/contracts-bedrock/scripts/checks/check-semver-diff.sh | 209 | # Check if the version changed. | COMMENT |
| LOW | …tracts-bedrock/scripts/checks/check-junit-tests-ran.sh | 14 | # Set ALLOW_EMPTY_TEST_RUN to a reason to deliberately accept a run with zero tests. | COMMENT |
| LOW | …ntracts-bedrock/scripts/checks/check-file-unchanged.sh | 4 | # Check if both arguments are provided | COMMENT |
| LOW | …ntracts-bedrock/scripts/checks/check-file-unchanged.sh | 13 | # Check if the file exists | COMMENT |
| LOW | ops/scripts/todo-checker.sh | 85 | # Check if it's just a number or a number with a leading # | COMMENT |
| LOW | ops/scripts/todo-checker.sh | 117 | # Check if issue was found | COMMENT |
| LOW | ops/scripts/latest-versions.sh | 130 | # Print results in JSON format | COMMENT |
| LOW | .circleci/continue/main.yml | 434 | # Check if this is just "main" (baseline with no features) | COMMENT |
| LOW | .circleci/continue/main.yml | 443 | # Check if this feature is in the system features registry | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | op-core/superchain/bundle/sync-superchain.sh | 66 | # Create a simple mapping of chain id -> config name to make looking up chains by their ID easier. | COMMENT |
| MEDIUM | …-docs/create-l2-rollup-example/scripts/setup-rollup.sh | 85 | # Create a 40-character hex address (20 bytes) | COMMENT |
| MEDIUM | …/contracts-bedrock/test/kontrol/scripts/run-kontrol.sh | 96 | # Define the function to run on failure | COMMENT |
| MEDIUM | …/contracts-bedrock/scripts/checks/check-semver-diff.sh | 104 | # Create a temporary directory. | COMMENT |
| MEDIUM | …bedrock/scripts/checks/test-validation/exclusions.toml | 2 | # This file contains lists of paths and test names that should be excluded | COMMENT |
| MEDIUM | ops/prestate-reproducibility/build-prestates.sh | 40 | # Create a detached worktree - we'll checkout specific tags in the build functions | COMMENT |
| MEDIUM | .circleci/routing.yml | 3 | # This file is the single source of truth for WHAT workflows run; the policy | COMMENT |
| MEDIUM | .circleci/continue/rust-e2e.yml | 4 | # This file contains E2E tests that depend on both kona and op-reth. | COMMENT |
| MEDIUM | .circleci/continue/rust-ci.yml | 4 | # This file contains all Rust CI commands, parameterized jobs, crate-specific jobs, and workflows. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | cannon/cmd/run.go | 431 | // Enable debug/stats tracking as requested | COMMENT |
| HIGH | op-devstack/sysgo/subproc.go | 108 | // If the process is still running, request an interrupt as requested. We avoid | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | rust/kona/sp1/programs/super-range/src/main.rs | 1 | //! SP1 guest scaffold for unified super-root range and consolidation proofs. | COMMENT |
| MEDIUM | docs/public-docs/create-l2-rollup-example/README.md | 119 | ├── docker-compose.yml # Service orchestration | CODE |
| MEDIUM | docs/ai/devfeatures.md | 128 | - **#21662** tracks removing the SuperRootGamesMigration flag and its remaining scaffolding. | CODE |
| MEDIUM | op-faucet/cmd/testdata/empty.yaml | 1 | # intentionally empty, to test-run the service scaffolding without creating any faucet instances. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | …edrock/test/kontrol/scripts/json/reverse_key_values.py | 30 | print(f"Error: File not found: {input_file}") | CODE |
| MEDIUM⚡ | …edrock/test/kontrol/scripts/json/reverse_key_values.py | 33 | print(f"Error: Invalid JSON format in file: {input_file}") | CODE |
| LOW | ops/check-changed/main.py | 105 | except Exception: | CODE |
| LOW | ops/check-changed/main.py | 187 | except Exception: | CODE |
| LOW | op-challenger/scripts/check-game-block-hashes.sh | 50 | except Exception: print("RETRY"); sys.exit() | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | docs/public-docs/create-l2-rollup-example/README.md | 94 | # L1_RPC_URL="https://eth-sepolia.g.alchemy.com/v2/YOUR_API_KEY" | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | rust/scripts/test_upstream_mirrors.py | 142 | CODE | |
| LOW | rust/scripts/upstream-mirrors.py | 94 | CODE | |
| LOW | rust/scripts/upstream-mirrors.py | 187 | CODE | |
| LOW | rust/scripts/upstream-mirrors.py | 258 | CODE | |
| LOW | rust/scripts/upstream-mirrors.py | 298 | CODE | |
| LOW | rust/scripts/upstream-mirrors.py | 363 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | ops/scripts/compute-git-versions.sh | 8 | # Usage: | COMMENT |
| LOW | op-challenger/scripts/check-game-block-hashes.sh | 10 | # Usage: | COMMENT |
| LOW | .circleci/scripts/test-decision-tree.sh | 7 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | rust/scripts/test_upstream_mirrors.py | 4 | CODE | |
| LOW | rust/scripts/upstream-mirrors.py | 25 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | ops/scripts/test-git-version.sh | 53 | git -C "${repo}" config user.email "test@test.com" | CODE |
| LOW | ops/scripts/nut-provenance-verify/main_test.go | 21 | {"git", "config", "user.email", "test@test.com"}, | CODE |