chore: sync audit#745
Merged
0xDiscotech merged 40 commits intofeat/add-rev-sharing-reportfrom Dec 9, 2025
Merged
Conversation
* op-challenger: Extract generic game player Handles common checks before delegating to an actor to progress the game. * op-challenger: Remove remnants of fault.Player
…m#18471) Updates factory workflow reference to 753bcd4284a6d36eac6e31df2492015ab8650331 which renames push_provenance to attest and skips attestation step on fork PRs. Changes: - Update workflow SHA in protected.yaml and unprotected.yaml - Change push_provenance: false to attest: false in unprotected.yaml - Add attest: true in protected.yaml for clarity
…conductor to (ethereum-optimism#18324) use this.
* op-challenger: Support challenging optimistic ZK games * op-challenger: Remove check that the proposal was safe. * op-challenger: Add log message before challenging * op-dispute-mon: Remove unused interface
* op-challenger: Remove asterisc from op-challenger docker image. * op-challenger: Remove asterisc-kona from default list of supported game types
…sm#18464) * op-challenger: Resolve zk games without considering parent * op-challenger: Consider parent game status when resolving * op-challenger: Handle games with no parent. * op-challenger: Challenge games when possible, even if we could resolve them. Allows us to claim bonds for games where the parent is invalid. * op-challenger: Send zk game transactions in parallel.
…mism#18233) * op-node: fix l1 origin selector getting stuck if current origin was reorged out * clarify comments + test refactoring * gofmt
…thereum-optimism#18327) * op-batcher: propagate clock.Clock to gossip builder check. refactor MaxChannelDuration * remove comments * remove PrintChain * Merge pull request ethereum-optimism#18344 from ethereum-optimism/nonsense/fix-channel-close2 op-batcher: fix max channel duration tracking for large block backlogs (cont) * unit test for moreComing * extract SequenceBlock into DSL * add TestChannelBuilder_MaxChannelDurationZero * better comments * godoc for moreComing and pubInfo * rename moreComing * better comment * a few tweaks for ethereum-optimism#18327 (ethereum-optimism#18480) * tweaks * remove default values (false booleans) from struct literals * Rename publishingBacklog to ignoreMaxChannelDuration * typo * rename test --------- Co-authored-by: George Knee <georgeknee@googlemail.com>
* feat: deploy safersafes script * fix: use semvercomp * fix: fmt & semgrep * fix: pre-pr * fix: interface check * feat: interface cleanup
…ethereum-optimism#18484) - add structured_output schema to devin prompt instructing completion status - add check for structured_output in devin_client.py blocked status handler - add finished_no_changes status when analysis complete without changes - create slack-notifier component with prepare_notification.sh script - add prepare-slack-notification command to justfile - add slack notification for finished_no_changes status - replace inline slack logic in circleci config with just command
…ptimism#18467) * op-challenger: Reclaim bonds for optimistic zk games * op-challenger: Challenge proposals that are still unsafe. * op-challenger: Report proposal status in game info log
…mism#18487) Co-authored-by: AgusDuha <81362284+agusduha@users.noreply.github.com>
…8492) * op-service/sources: detect duplicate blob hashes * op-node: Add unit test and fix logic for checking if blob has already been matched. * op-node: Fix lint --------- Co-authored-by: Adrian Sutton <adrian@oplabs.co>
…thereum-optimism#18498) Updates docker-bake.yaml reference to include fix that prevents bash history expansion issues when build metadata contains special characters like '!'. Ref: ethereum-optimism/factory#8
…#18454) * feat: break out OPCMv2 utils into helper contracts Breaks out the OPCMv2 utils into a separate Utils contract that reduces the code size of OPCMv2 significantly. * fix: go ci issues * fix: more ci issues * fix: forge lint * fix: go verify artifacts * feat: add tests for OPCMUtils * fix: broken tests * fix: more test tweaks * fix: mark functions as external * feat: add tests for implementations and blueprints
… flaky test (ethereum-optimism#18360) * test(contracts): add comprehensive coverage for AddressAliasHelper functions - Add ApplyL1ToL2Alias_Test contract with fuzz test for applyL1ToL2Alias - Add UndoL1ToL2Alias_Test contract with fuzz test for undoL1ToL2Alias - Both tests verify correct offset arithmetic with unchecked overflow handling - Ensures all public functions have individual test coverage * fix(test): disable known features before fuzzing unset feature test Fixes flaky test testFuzz_isFeatureEnabled_unsetFeature_succeeds by disabling all known features (CUSTOM_GAS_TOKEN, ETH_LOCKBOX) before checking that arbitrary features are disabled. This prevents environment-dependent state from causing test failures in CI. * fix(test): use runtime guard instead of disabling ETH_LOCKBOX Improves the fix for testFuzz_isFeatureEnabled_unsetFeature_succeeds by: - Removing ETH_LOCKBOX disabling code (causes revert in upgrade envs) - Adding runtime guard to skip features that are currently enabled - Only normalizing CUSTOM_GAS_TOKEN to fix the original flake This approach avoids SystemConfig_InvalidFeatureState reverts when ETH_LOCKBOX is enabled with a configured lockbox address in mainnet upgrade test environments. * fix(test): remove early exit from isFeatureEnabled fuzz test Per maintainer feedback, removes the early exit that was skipping some fuzz cases. The test now always runs the assertion for all fuzz inputs. The CUSTOM_GAS_TOKEN normalization is kept to fix the original flake in the CUSTOM_GAS_TOKEN CI environment. --------- Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…eum-optimism#18488) * feat(op-deployer): use op-deployer build for publish-artifacts * fix(op-deployer): restore bucket name * fix(op-deployer): add COMMIT file * fix(op-deployer): verify cli test
…esis (ethereum-optimism#18490) * fix: remove todo and update fees depositor address on mainnet (#704) * chore: set genesis min withdrawal threshold from ten to two eth (#723) * fix: remove unused errors (#726)
* test: add tests for OPCMv2.deploy * test: add OPCMV2+interop portal CI run * fix: slight test tweak * fix: no vcs stamping * fix: bug in pulling artifacts
…g to legacy (ethereum-optimism#18453) Introduce a new rollup-boost healthcheck that parses JSON responses from the /healthz endpoint. The existing HTTP status code-based healthcheck is renamed to "legacy" and remains available for backward compatibility. The two healthcheck modes are mutually exclusive.
* jovian: remove feature toggles scope is now fixed * Updated op-geth to v1.101604.0-synctest.0.0.20251120150812-e50f80a16afc * lint * just update-op-geth f48f382 * Use Jovian in test error message * just update-op-geth ba6bdcfef42341fe2b5ce124c31ff2d6b264e9e4
…mism#18462) * feat: have OPCM upgrade allowances be upgrade specific Updates the OPCMv2 check for allowed extra instructions to be specific to releases. When release versions are bumped, the allowances become automatically invalid and would reveal anywhere in the codebase where the allowance is being used. * fix: semver lock * fix: emit instruction key in error * fix: better semantics * docs: proper OPCM versioning policy * fix: final version tweaks
…ism#18547) * feat: have SystemConfig store a ref to last used OPCM * fix: system config test flake
* fix: fuzz failure in system config test * fix: proper skip
…optimism#17924) * op-batcher: thread CLI lifecycle context cancel function to driver and wire up to fatal error condition for throttling loop * simplify wiring and abstract shutdownOnCriticalError method * introduce isCriticalThrottlingRPCError(err) helper * simplify impl * lint * pass handler for closeApp in test environments * add TestBatchSubmitter_CriticalError * slight improvement to test * extend TestBatchSubmitter_ThrottlingEndpoint to cover MethodNotFound case * Embed closeApp in DriverSetup and BatcherService Store closeApp in BatcherService and propagate it through DriverSetup so the driver can access it without a separate parameter. Update BatcherServiceFromCLIConfig/initFromCLIConfig signatures (closeApp moved earlier), remove closeApp arg from NewBatchSubmitter, and guard shutdownOnCriticalError against nil. Update call sites accordingly. * Propagate cancel cause to BatcherService Use context.WithCancelCause and pass its cancel function when creating the batcher so the service can be stopped with a cancel cause. Also expose closeApp in DriverSetup and simplify a test by importing slices and replacing manual loops with slices.Contains. Propagate cancel cause to BatcherService * Use context.WithCancelCause for batcher * Update op-batcher/batcher/driver.go Co-authored-by: almanax-ai[bot] <174396398+almanax-ai[bot]@users.noreply.github.com> * Use cancelable context and failure hook for batcher Replace context.WithCancelCause with context.WithCancel and add a closeAppFn that calls p.FailNow with the cause and cancels the batcher context. Pass closeAppFn into BatcherServiceFromCLIConfig and import fmt so tests fail immediately on critical batcher errors. Use cancelable context and failure hook for batcher Log the failure cause and cancel the batcher context on critical errors * Use cancellable context for batcher * Log shutdown error and warn if closeApp missing --------- Co-authored-by: almanax-ai[bot] <174396398+almanax-ai[bot]@users.noreply.github.com>
0xChin
approved these changes
Dec 9, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.