forked from ethereum-optimism/optimism
-
Notifications
You must be signed in to change notification settings - Fork 1
Pull upstream optimism v1.16.1 #29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
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
…ecar version 1) by configuration (ethereum-optimism#17620) * update batcher * txmgr: log full tx hash to enable debugging * cell proofs OFF by default * thread configurable helper through to test code and add test TODOs * wire up flag * fix test * op-e2e/actions: add EnableCellProofs config * remove TODO * use regular not atomic bool * refactor MakeSidecar * optimize creation of proofs slice
…rix (ethereum-optimism#17635) * Integrate v2 dispute game feature flag into FeatureFlags setup util * Add v2 flag to circleci matrix * Add CANNON_KONA to test matrix
…ism#17639) Skips building contract tests in the acceptance job which reduces the amount of memory used and decreases the chance of the job being killed. Also makes it faster.
…x` (ethereum-optimism#17636) * op-e2e/actions: replicate geth txpool validation in L1Miner.IncludeTx * lint * remove unecessary check
…imism#17530) * op-node/rollup: remove ReceivedUnsafePayloadEvent event * op-node/rollup: add lock around AddUnsafePayload
…ptimism#17637) * op-deployer: prepare deploy scripts with forge invokers * op-deployer: align test script with runWithBytes convention * remove runWithBytes from DeployOPChain.s.sol
…rompt changes (ethereum-optimism#17616) * fix(ai-contracts-test): handle 504 timeout and prevent duplicate work - add 30s timeout and exponential backoff retry for Devin API server errors - exclude files processed in last 7 days from ranking to avoid duplicate work - add system version tracking to log entries - minor cleanup: sort imports, remove shebangs and add invariants/ to exclusion list - update runbook with latest changes * fix(prompt): correct test naming, categorization, and assertion patterns
ethereum-optimism#17644) * update opcm.upgrade* natspec to explain the delegateCaller assumptions * fix semver * change semver
* feat: add ProtocolVersions to restrictions * chore: snapshots
…ing (ethereum-optimism#17650) * refactor(test): standardize Unclassified to Uncategorized in test naming - update test contract names from *_Unclassified_Test to *_Uncategorized_Test - simplify checkTestMethodName function to only check for "Uncategorized" - remove unused featureEnabledName parameter in checkTestMethodName * Apply suggestion from @graphite-app[bot] Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com> * Apply suggestion from @JosepBove Co-authored-by: JosepBove <[email protected]> --------- Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com> Co-authored-by: JosepBove <[email protected]>
* add valid semver check script and tests * upgrade MERC20F in opcm.upgrade * cleanup * cleanup * change semver
* op-node/rollup: merge CLSync with EngineController * op-node/rollup: migrate CLSync tests to EngineController * op-node/rollup: use e.requestForkchoiceUpdate instead of emit * op-node: renames * op-node: lock unit test expectation * op-node: better comments
* op-node: EngineController: Proper locking * op-node: EngineController: proper tryUpdateEngine sync * stick to rwlock for simplicity * Remove goroutine limit since race solved * proper locking for ForceReset * fix rebase * fix locking
…mism#17672) - Update Platforms notification from user 'stefano' to role 'protocol devx pod' - Remove 'changwan' from Kurtosis notifications
…mism#17673) We no longer need a separate workfor for pre/post-merge to develop.
…optimism#17661) * updated op-geth to v1.101603.0-synctest.0.0.20250930110811-5eee1eab50e6 pairs with ethereum-optimism/op-geth#690 * Updated op-geth to v1.101603.1-rc.1
* Add unit tests for DevFeatures.sol, fix logic * Port changes and tests to go util * Bump contract versions * Run semver-lock * Align test names with existing conventions
* ci: Add nightly heavy fuzz testing job - Add contracts-bedrock-heavy-fuzz-nightly job using ciheavy profile - Configure for 20000 fuzz runs, 128 invariant runs, 512 depth - Schedule via build_daily (nightly at 2 AM UTC) - Add heavy_fuzz_dispatch parameter for manual testing - Set 90m timeout for comprehensive fuzzing * Update .circleci/config.yml Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com> * ci: Address PR feedback - remove unnecessary steps - Remove 'Lint forge test names' step from nightly job - Remove contracts-bedrock-build from workflow (job builds as needed) - Update dependency to initialize directly Addresses feedback from @mds1 and @aliersh * ci: Restore duplicate generate-flaky-report section Restores the duplicated generate-flaky-report job that was removed during merge conflict resolution in b379b03. The duplicate section was part of the develop branch changes and should not have been removed as it was outside the scope of this PR. --------- Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Co-authored-by: Ariel Diaz <[email protected]> Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
…17646) Flake-shake is a test stability validation system that runs tests multiple times to detect flakiness before they reach production gates. It serves as a quarantine area where new or potentially unstable tests must prove their reliability.
…imism#17662) * op-node: merge EngineResetDeriver with EngineController * op-node/rollup: move startPayload under EngineController
…ill (ethereum-optimism#17675) * op-acceptance-tests: Cache and canonicalize L2EL payloads after gap fill * Clarify args for retrying * better var name
…ern (ethereum-optimism#17657) * op-contracts: DeployOPChain.s.sol conform to input/output struct pattern * op-contracts: remove unused imports * op-contracts: fix build check findings * ChainAssertions.sol: add logs * L2ChainDeployment: revert field name, json tag change * DeployOPChain.s.sol: add input validations for dispute params
* Replace go-bip39 dependency * Bump go-ethereum-hdwallet dep
…um-optimism#17568) * op-node: add optional flag to load L1ChainConfig And wire up to BlockInfo.BlobBaseFee() getter, which now accepts the config. Flag need not be provided as long as the chain has a known l1 chain id (Mainnet, Sepolia). * use test l1 chain config in many tests * more wiring * WIP: get op-program to compile I don't expect this to work, yet * sysgo: wire up op-node constructor with L1ChainConfig * op-program host wiring * op-e2e/actions wiring * wire up boot info * op-program looks up chain config for l1 mainnet and l1 sepolia * wire up l1 chain config in op-e2e/system * fix tests by passing sepolia chan config from op-geth * add L1ChainConfig to e2esys.System struct * handle err * op-program/interop fixes * add l1ChainConfig to supersystem_l2.go * op-program: wire up l1chainconfigs to host flags and config * fix mockInteropBootstrapOracle * feat(l1): add custom l1 configs to kona proof * op-program/chaincfg: split loading of l1 and l2 chain configs * op-program/boot-interop: us a single l1 chain config * fix tests * lint * wiring in op-challenger * expose L1Genesis on SuperDisputeSystem * lint * fix test * fixes * add case to switch statement * fix op-challenger error handling * op-program: one chain config for interop, multiple otherwise * op-program/host: always return a single l1 chain config * fix chain Id comparisons also add error for nil blob schedule * op-node/service: add unit tests for NewL1ChainConfig * op-program/host: use a single L1ChainConfig * op-program can fallback to mainnet / sepolia L1s automatically * lint * add check * sysgo/l2_Cl_opnode: replicate op-node fallback to known l1 chain configs * single l1 genesis in challenger and vm executor * simplify * typo * more harmony around single l1 chain config * tweaks * remove whoopsie * wire up l1ChainConfig in test sequencer * deprecate calcBlobFeeDefault * reinstate method * lint * feat(devstack/kona): fix devstack commands for kona * Add TestCannonNetworkorL1GenesisPathRequired and TestAsteriscNetworkorL1GenesisPathRequired * move --l1-config-path into required args slice * use single l1ChainConfig in RunKonaNative * remove caldBlobFeeDefault * refactor tests with validConfigWithNoNetworks * NewL1ChainConfig warns when config is ignored * add assertion for --l1-config-path in TestKonaFillHostCommand * Implement validation for L1GenesisPath in OracleCommand and update tests to reflect changes * fail on multiple l1 networks * move lookup of l1 chain config out of core sysgo constructors and into system_synctester_ext.go * remove duplicate test * op-program/chaincfg: checkConfigFilenames permits 0 or 1 l1 genesis files Adds test for not supplying a custom l1 genesis config. * add test case for multiple l1 genesis files * op-program/boot-info: add test for missing l1 chain config * op-program/client/boot: panic if custom chain l1 config does not match rollup config l1 chain id * specify l1/l2 in err msg * typo * fix test * use single l1 chain config in interop_test.go * validate l1 chain id matches when loading config from file * reorder arguments for derive.L1InfoDeposit * reorder action helper verifier/sequencer constructor arguments * add comment * reordering * assert chain is consistency * reorder * change to path flag * dedupe and fix test * remove magic code from WithKonaNode sysgo helper * DRY out, centralize, dedupe and unit test L1ChainConfigByChainID * undo ff09017 * Update op-devstack/sysgo/l2_challenger.go Co-authored-by: mbaxter <[email protected]> * fix * mockInteropBootstrapOracle embeds a single l1ChainCfg and tests assert * challenger should not require l1 genesis path to be configured * make l1 genesis config optional for kona * allow for multiple l1 configs in custom chain fs * add l1 genesis flag to op-challenger * fix * fix lints and tests * fix op-program config tests * fix op-program cmd tests * remove failing tests that shouldnt exist * add comment * Add TestCalcBlobFeeAcrossForksWithFixedExcess * improve test it will now fail if any fork is rescheduled * fix test * fix system/proofs tests * Add warning to CalcBlobFeeCancun * lint --------- Co-authored-by: theochap <[email protected]> Co-authored-by: mbaxter <[email protected]> Co-authored-by: Josh Klopfenstein <[email protected]>
* opcm: Add CANNON_KONA support for opcm.upgrade * fix sepolia upgrade integration test * run cannon-kona upgrade in integration test * remove debugme * fix stdvalidator.test_init * fix outdated opcm bindings * update semver; snapshots * cleanup setNewGameImplV2 * fix semver; fix natspec * fix op-deployer Migrate input encoding * fix nits * fix semantic merge conflict * fix fmt * update semver * only expect cannon-kona reverts if feature flag set
…zation (ethereum-optimism#18028) * fix(test): add missing event expectation in burn test * refactor(test): remove redundant initiateWithdrawal tests and add nonce assertion * test(contracts): add coverage for version, receive, messageNonce, and burn edge case * refactor(test): reorganize test contracts to match source function order * fix(test): restore removed initiateWithdrawal tests with scenario-specific assertions * refactor(test): remove redundant zero-balance burn test per review * refactor(test): remove unnecessary contract code length assertion per review --------- Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…um-optimism#18087) * refactor(test): remove redundant contract name from constructor test Simplified test_constructor_operatorFeeVault_succeeds to test_constructor_succeeds to match naming convention used in other FeeVault tests (BaseFeeVault, etc.) * test(contracts): add version format validation for OperatorFeeVault Added OperatorFeeVault_Version_Test contract to validate that the version constant returns a valid semver string using SemverComp.parse() * refactor(test): reorganize test contracts to match source declaration order Moved Version_Test before Constructor_Test to match the order in which version (line 21) and constructor (line 25) are declared in OperatorFeeVault.sol --------- Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
…hereum-optimism#18024) * op-deployer: Support working with V2 fault dispute game contracts * Deploying implementations supports the fault dispute game configuration options previously used by deploy dispute game * DeployDisputeGame has been updated to work with v1 and v2 contracts * SetDisputeGameImpl works with and without game args * ReadImplementationAddresses loads the V2 dispute game addresses * op-deployer: Don't validate inputs set as game args when v2 is enabled. * op-deployer: Restore absolute prestate check for V1 contracts. * opcm: Read super dispute game implementation addresses. * opcm: Allow clock extension to be zero again * Store permissionedDisputeGame when V2 enabled * opcm: Restore the clockExtension > 0 check
fails against isthmus networks. Discovered when running against jovian betanet.
* opcm: Set cannon_kona init bond during upgrade * address review comments
* dispute-mon: Add metric to track node endpoint errors * dispute-mon: Add node endpoint error count metric * dispute-mon: Add metric for mixed availability of nodes * dispute-mon: Add metric to track mixed safety * dispute-mon: Add metric for disagreeing output roots * Increase log level for mixed availability * Use better check for RollupEndpointErrors * Fix test after merge * Remove useless logging * Remove unnecessary fields from Service struct * Remove unused function and lint fix
…sm#18109) The latest mise (installed by brew) errors if tools don't have a known install source even if they're disabled. While we control the version of mise used in CI, local development depends on an existing mise to bootstrap and there isn't a good way to ensure it is using a specific version.
* remove DeployProxy * fixes
…imism#18129) * fix: bump mips version from 7 to 8 * fix: don't require building binary to use justfile with correct op-deployer version * fix: remove mips version arg
* feat(ci): run upgrade tests with dev flags Updates CI to run upgrade tests with dev flags enabled. Only OP will run with dev flags enabled for now, this should be sufficient and will avoid dramatically increasing CI impact. * fix: correct cannon kona prestate in validator tests
…mism#18078) * Update opcm.migrate to set super-cannonKona * Validate cannonKona prestates during migrate * Update OCPM migrate tests * Cleanup: add helper to construct gameType expectations * Fix game validation test logic * Fix shadowed var warning * Rework op-deployer migrate CLI args for absolute prestate * Read cannonKona prestate in GenerateOPCMMigrateCalldata * Don't create SuperCannonKona game if prestate is zero * Update migration gameType helper * Clean up test logic, perform stricter checks on empty games * Add error messages * Clear game args when game impl removed * Add test with empty cannonKona prestate * Enforce non-empty cannon prestate * Bump contract version * Run just pre-pr * Cleanup and add another test * Fix test documentation * Add new prestate flags to the migrate CLI command * Update script comment with updated sample input * Add check for consistent permissionless weth contracts post-migrate * Bump opcm version again * Run semver-lock
…-optimism#18131) * all: update op-geth to pull in fusaka timestamps * update for scr changes * point go.mod at op-geth rc * address comment
2730b1e to
32f736b
Compare
ops/ai-eng/contracts-test-maintenance/components/devin-api/devin_client.py
Dismissed
Show dismissed
Hide dismissed
ops/ai-eng/contracts-test-maintenance/components/devin-api/devin_client.py
Dismissed
Show dismissed
Hide dismissed
ops/ai-eng/contracts-test-maintenance/components/devin-api/devin_client.py
Dismissed
Show dismissed
Hide dismissed
joshuasing
approved these changes
Dec 1, 2025
AL-CT
approved these changes
Dec 1, 2025
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.