Commit 27731f5
feat: add op contracts (v6.0.0-rc.2) (#189)
* Increase MAX_GAS_LIMIT to a new value that's safe with MT Cannon (#15864)
* refactor(test): improve SystemConfig test structure and documentation (#15791)
- consolidate test initialization into a single SystemConfig_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- convert @dev to @notice tags where appropriate
- ensure comment lines stay within 100 character limit
* refactor(test): improve ETHLockbox test structure and documentation (#15780)
- consolidate test initialization into a single ETHLockbox_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- convert @dev to @notice tags where appropriate
- ensure comment lines stay within 100 character limit
- rename test_initialization_succeeds to test_initialize_succeeds
* feat: verify that all contracts in src directory have interfaces (#15302)
* feat: add src contract interface verification check
* test: add tests for src contract interface verification
* Update main.go
* Update main_test.go
* simplify code
* Update main.go
* fix: remove old foundry bug hack (#15983)
Removes an old hack that was needed because of a bug in foundry.
* op-fetcher: query for EthLockboxProxy address (#15976)
* feat: remove Specs.t.sol (#16012)
Removes Specs.t.sol in favor of an authentication review step as
part of the source code review step for each release that includes
changes to the smart contracts.
* fix: as many typos as possible (#16029)
* fix: as many typos as possible
* fix: even more typos
* refactor(test): improve OptimismPortal2 test structure and documentation (#15724)
* refactor(test): improve OptimismPortal2 test structure and documentation
- consolidate test initialization into a single OptimismPortal2_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- convert @dev to @notice tags where appropriate
- ensure comment lines stay within 100 character limit
* style(test): add line breaks to OptimismPortal2 tests for readability
* fix: updated constructor arg parsing in VerifyOPCM (#16034)
* fix: updated constructor arg parsing in VerifyOPCM
Updates VerifyOPCM to do custom constructor arg parsing because
the Etherscan endpoint for constructor args has changed.
* fix: typo in function name
* refactor(test): cleanup of L1 test structure and documentation (#15903)
* refactor(test): improve L1CrossDomainMessenger test structure and documentation
- consolidate test initialization into a single L1CrossDomainMessenger_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- convert @dev to @notice tags where appropriate
- ensure comment lines stay within 100 character limit
- remove duplicated ForgeArtifacts and StorageSlot imports
- add virtual modifier to setup function
* refactor(test): rename L1CrossDomainMessenger_Test to L1CrossDomainMessenger_Unclassified_Test
* refactor(test): improve L1StandardBridge test structure and documentation
- consolidate test initialization into a single L1StandardBridge_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into L1StandardBridge_Unclassified_Test
- rename setUp to _setupPauseBridge as a helper function for paused state tests
- refactor test function names to follow naming convention
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* refactor(test): improve ResourceMetering test structure and documentation
- consolidate test initialization into a single ResourceMetering_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- refactor test function names to follow naming convention
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* refactor(test): improve OPContractManager test structure and documentation
- consolidate test initialization into a single OPContractManager_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- refactor test function names to follow naming convention
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* fix(test): restore correct implementation of test_pause_callsSuperchainConfig_succeeds
* fix(test): cleanup L1CrossDomainMessenger and restore OPContractManager test
- Remove obsolete systemConfig assertion in L1CrossDomainMessenger test
- Restore test_verifyOpcmCorrectness_succeeds in OPContractManager test suite
* fix(test): fix failing upgrade tests in OPContractsManager and L1CrossDomainMessenger
- Remove skipIfNotOpFork conditions in OPContractsManager upgrade tests
- Add runUpgrade13UpgradeAndChecks calls in OPContractsManager upgrade tests
- Add systemConfig assertion in L1CrossDomainMessenger upgrade test
* refactor(test): improve StandardValidator test structure and documentation (#16068)
* refactor(test): improve StandardValidator test structure and documentation
- organize test functions by component being validated
- separate core validation tests and general override tests into their own contracts
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* Update packages/contracts-bedrock/test/L1/StandardValidator.t.sol
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
---------
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
* feat: Simplify op-deployer scripts: Switch from legacy to the new scripts for DeploySuperchain & DeployImplementations [17/N] (#15551)
* step 1: Delete old scripts & tests; Remove the "2" from the file names & contract names of the new scripts
* step 2: Update the downstream scripts
* step 3: Delete the old opcm script wrappers; Remove the "2" from the filenames & types of the new wrappers
* step 4.1: Create OPCM scripts struct in pipeline and ad it to Env struct. This step might not be necessary anymore
* step 4.2: Adjust the pipeline scripts to use the new scripts
* step 4.3: Adjust op-chain-ops
* step 4.4: Adjust bootstrap scripts. In this case there is only one deployment per CLI target so the Scripts struct needs to be created for every CLI target
* step 5: Skip the regression tests so that we can publish the new contract artifacts, after which the tests need to be updated and regression tests unskipped
* rebase: Remove unused imports
* fix: Misrebase
* fix: Misrebase
* fix: Misrebase
* fix test
---------
Co-authored-by: Matthew Slipper <me@matthewslipper.com>
* cannon: Support Go 1.24 (#15737)
* Add go 1.24 testdata
* Stop generating 32-bit test programs
* Add new state version and feature flag
* Update ProgramPath helper to accept a new GoTarget parameter
* Add program test that targets the getrandom syscall
* Update test references to hello.elf
* Update InstrumentedState tests to run across vms
* Use t.Fatal instead of panic when contract deployment fails
* Update state version constraints in MIPS64.sol
* Bump MIPS64.sol contract version
* Update random test to read data a few different ways
* Fix int parsing base - we're handling decimal values not hex values
* Reduce logging from mips test util
* Implement getrandom syscall and add tests
* Rework bit math
* Rework reproducible-prestate to build for current and next Go versions
* Add testdata for the new state version
* Fix MIPS64 compilation error
* Update publish-cannon-prestates to publish cannon-next version
* Update cannon-prestate-interop vm type
* Update common program tests to target correct go version
* Fix lint error
* Update noop, supported syscall tests
* Update valid versions in solidity tests
* Rename variable for clarity
* Use splitmix64 algorithm for random data generation
* Run semver-lock
* Update documentation comment
* Fix parameter name
* Tweak version comments
* Copy interop elf file
* Cut unused helper method
* Make splitmix an independent function
* Cut unused build-all target
* Add some print statements to debug timeout
* Cut debug log, tweak if statement
* Build interop and interopNext absolute prestates
* Fix reproducible-prestate whitespace
* e2e: Switch interop prestate variant based on allocType
* Run super_test across available vm types
* Re-run semver-lock to fix merge conflict
* Add go mod tidy changes
* Bump MIPS64 version
* Revert "Run super_test across available vm types"
This reverts commit f9898462f50e2a9fe2afe65c780061492dfa92ea.
* Update a few e2e super tests to run across all vms
* Add some debug printlns
* Revert "Add some debug printlns"
This reverts commit 0074cb0d53b77f56c6c9af5c71a221c3aa292a38.
* Extend slow test timeout
* Don't group getrandom with noop syscalls
* Rework op-program analysis to run inside of docker
This allows us to run the analysis using different versions of Go.
* Suppress detached head warnings
* Cut seemingly unnecessary dependencies
* Set up docker in circleci
* Address todo - get vm-compat task running correctly
* Run go-lint-fix
* refactor(test): cleanup of /universal tests structure and documentation (#15973)
* refactor(test): improve ReinitializableBase test documentation
- rename test contract to ReinitializableBase_InitVersion_Test
- add @title and @notice tags to test contract
* refactor(test): improve ExtendedPause test documentation
- add @title and @notice tags to test contract
- convert @dev tags to @notice in function comments
* refactor(test): improve SafeSend test documentation
- rename SafeSendTest to SafeSend_Constructor_Test
- add @title and @notice tags to test contract
* refactor(test): improve OptimismMintableERC20 test structure and documentation
- consolidate test initialization into a single OptimismMintableERC20_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function into OptimismMintableERC20_Unclassified_Test
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve StandardBridge test structure and documentation
- consolidate test initialization into a single StandardBridge_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve OptimismMintableERC20Factory test structure and documentation
- consolidate test initialization into a single OptimismMintableERC20Factory_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function into OptimismMintableERC20Factory_Unclassified_Test
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve Proxy test structure and documentation
- consolidate test initialization into a single Proxy_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function into Proxy_Unclassified_Test
- refactor test function names to follow naming convention
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve ProxyAdmin test structure and documentation
- consolidate test initialization into a single ProxyAdmin_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or that test multiple functions into ProxyAdmin_Unclassified_Test
- refactor test function names to follow naming convention
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): move _calculateTokenAddress helper function to TestInit contract in OptimismMintableERC20Factory
* refactor(test): improve CrossDomainMessenger test structure and documentation
- consolidate test initialization into a single CrossDomainMessenger_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* op-deployer: Update L2 genesis generation to check fork instead of useInterop flag (#16095)
* op-deployer: Update L2 genesis generation to check fork instead of useInterop flag
* op-deployer: Only add CrossL2Inbox to genesis when there are multiple chains in the dependency set.
* op-e2e: Actually support the interop fork in interop tests.
Interop fork is before Jovian.
* Remove unused import.
* Update tests to expect interop before jovian
* Adds mips checks to StandardValidator (#16170)
* Adds mipsVersion checks to StandardValidator
* Add IMIPS64 interface
* Add ISemver to StandardValidator
* fmt
* fixup IMIPS64
* Update semver lock
* fix natspec on semver
* fix interface again
A
* fix SV iface
* Add SV to allowed files
* fix SV iface
* fix SV iface
* refactor(test): cleanup of L2 test structure and documentation (#15901)
* refactor(test): improve OperatorFeeVault test documentation
- rename test contract to OperatorFeeVault_Constructor_Test
- add @title and @notice tags to test contract
- convert @dev tag to @notice
* refactor(test): improve L1FeeVault test documentation
- rename test contract to L1FeeVault_Constructor_Test
- add @title and @notice tags to test contract
- convert @dev tag to @notice
* refactor(test): improve BaseFeeVault test documentation
- rename test contract to BaseFeeVault_Constructor_Test
- add @title and @notice tags to test contract
- convert @dev tag to @notice
* refactor(test): improve OptimismSuperchainERC20Beacon test structure and documentation
- rename OptimismSuperchainERC20BeaconTest to OptimismSuperchainERC20Beacon_TestInit
- move implementation test into dedicated OptimismSuperchainERC20Beacon_Implementation_Test contract
- improve test contract documentation with more specific @title and @notice tags
* refactor(test): improve WETH test structure and documentation
- organize individual test functions into separate contracts
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
* refactor(test): improve OptimismMintableERC721Factory test structure and documentation
- consolidate test initialization into a single OptimismMintableERC721Factory_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- add function-level @notice comments describing expected behavior under test
- ensure comment lines stay within 100 character limit
* refactor(test): improve OptimismSuperchainERC20Factory test structure and documentation
- consolidate test initialization into a single OptimismSuperchainERC20Factory_TestInit contract
- organize individual test functions into separate contract inheriting from TestInit
- add @title and @notice tags to all test contracts
* docs(test): improve test documentation clarity
- ensure comment lines stay within 100 character limit in OptimismSuperchainERC20Beacon test
- Update WETH test functions descriptions to explicitly mention default values
* refactor(test): improve L2ToL1MessagePasser test structure and documentation
- organize individual test functions into separate contracts
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
* refactor(test): improve ExecutingMessageEmitted test structure and documentation
- consolidate test initialization into a single ExecutingMessageEmitted_TestInit contract
- rename ExecutingMessageEmittedTest to ExecutingMessageEmitted_Test
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve Predeploys test structure and documentation
- consolidate test initialization into a single Predeploys_TestInit contract
- rename PredeploysTest and PredeploysInteropTest to Predeploys_Test and Predeploys_Interop_Test
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve OptimismMintableERC721 test structure and documentation
- consolidate test initialization into a single OptimismMintableERC721_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function into OptimismMintableERC721_Unclassified_Test
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- add function-level @notice comments describing expected behavior under test
- ensure comment lines stay within 100 character limit
* refactor(test): improve SuperchainERC20 test structure and documentation
- consolidate test initialization into a single SuperchainERC20_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve SuperchainETHBridge test structure and documentation
- consolidate test initialization into a single SuperchainETHBridge_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve ETHLiquidity test structure and documentation
- consolidate test initialization into a single ETHLiquidity_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve SuperchainTokenBridge test structure and documentation
- consolidate test initialization into a single SuperchainTokenBridge_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve L1Block test structure and documentation
- consolidate test initialization into a single L1Block_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- add function-level @notice comments describing expected behavior under test
- ensure comment lines stay within 100 character limit
* refactor(test): improve CrossL2Inbox test structure and documentation
- consolidate test initialization into a single CrossL2Inbox_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- add @notice tag to test function comments
- ensure comment lines stay within 100 character limit
* refactor(test): improve L2StandardBridgeInterop test structure and documentation
- consolidate test initialization into a single L2StandardBridgeInterop_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve L2ERC721Bridge test structure and documentation
- consolidate test initialization into a single L2ERC721Bridge_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function into L2ERC721Bridge_Unclassified_Test
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* refactor(test): improve OptimismSuperchainERC20 test structure and documentation
- consolidate test initialization into a single OptimismSuperchainERC20_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function into OptimismSuperchainERC20_Unclassified_Test
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve L2CrossDomainMessenger test structure and documentation
- consolidate test initialization into a single L2CrossDomainMessenger_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function into L2CrossDomainMessenger_Unclassified_Test
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve L2ToL2CrossDomainMessenger test structure and documentation
- consolidate test initialization into a single L2ToL2CrossDomainMessenger_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): standardize test initialization contract documentation
- Update test initialization contract naming format to use _TestInit suffix
- Add backticks around contract names in documentation comments
- Fix duplicated notice tag in OptimismMintableERC721.t.sol
- Fix contract naming convention in ExecutingMessageEmitted.t.sol
* revert(test): remove refactor of files not belonging to L2 cleanup scope
- remove Predeploys.t.sol refactor
- remove ExecutingMessageEmmited.t.sol refactor
* refactor(test): improve CrossDomainOwnable test structure and documentation
- consolidate test initialization into a single CrossDomainOwnable_TestInit contract
- organize tests into logical groups based on functionality (AccessControl and PortalIntegration)
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* refactor(test): improve CrossDomainOwnable2 test structure and documentation
- consolidate test initialization into a single CrossDomainOwnable2_TestInit contract
- organize tests into logical groups (RevertConditions and SuccessConditions)
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* refactor(test): improve CrossDomainOwnable3 test structure and documentation
- consolidate test initialization into a single CrossDomainOwnable3_TestInit contract
- organize tests into logical groups (BasicFunctionality, TransferOwnership, and CrossDomainAccess)
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* refactor(test): improve L2StandardBridge test structure and documentation
- consolidate test initialization into a single L2StandardBridge_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function into L2StandardBridge_Unclassified_Test
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* refactor(test): improve SequencerFeeVault test structure and documentation
- consolidate test initialization into a single SequencerFeeVault_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* fix(test): adds assumeNotForgeAddress to prevent Forge addresses as targets in L2ToL2CrossDomainMessenger tests
* refactor(test): improve AssetReceiver test structure and documentation
- rena test Initializer contract to AssetReceiver_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- refactor test function names to follow naming convention
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* Revert "refactor(test): improve AssetReceiver test structure and documentation"
This reverts commit dd4a5a3473c8a7c006034521534728c23e9135f9.
* feat: add toRpcHexString function to dispute helper (#16192)
Adds another helper function to the DisputeMonitorHelper contract
so we can use it in Hexagate monitoring.
* fix: correct leading zero handling in helper (#16195)
* maint: simplify interface check script (#15986)
* maint: simplify interface check script
Some simplifications to the interface check script, script was
doing some extra work and we could cut down on the number of
skipped contracts.
* fix: old test
* Update contracts versioning guidance (#16203)
* refactor(test): cleanup /periphery test structure and documentation (#16149)
* refactor(test): improve CheckTrue test structure and documentation
- consolidate test initialization into CheckTrue_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into CheckTrue_Unclassified_Test
- refactor test function names to follow naming convention
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): improve Transactor test structure and documentation
- rename Initializer contract to Transactor_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to test contracts
* refactor(test): improve TransferOnion test structure and documentation
- consolidate test initialization into TransferOnion_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into TransferOnion_Unclassified_Test
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): improve AssetReceiver test structure and documentation
- rena test Initializer contract to AssetReceiver_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- refactor test function names to follow naming convention
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): improve AdminFaucetAuthModule test structure and documentation
- consolidate test initialization into AdminFaucetAuthModule_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- refactor test function names to follow naming convention
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): improve CheckSecrets test structure and documentation
- consolidate test initialization into CheckSecrets_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into CheckSecrets_Unclassified_Test
- reorder test functions to match the order of definitions in the base contract
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): improve CheckBalanceLow test structure and documentation
- consolidate test initialization into CheckBalanceLow_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into CheckBalanceLow_Unclassified_Test
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): improve DisputeMonitorHelper test structure and documentation
- reorder test functions to match the order of definitions in the base contract
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): improve Faucet test structure and documentation
- rename test initialization contract to Faucet_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- refactor test function names to follow naming convention
- reorder test functions to match the order of definitions in the base contract
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): improve Drippie test structure and documentation
- consolidate test initialization into Drippie_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- refactor test function names to follow naming convention
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* Update packages/contracts-bedrock/test/periphery/drippie/Drippie.t.sol
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
* Update packages/contracts-bedrock/test/periphery/AssetReceiver.t.sol
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
* refactor(test): add title and notice tag to withdrawERC721 contract in AssetReceiver test file
* fix(test): apply forge fmt to resolve formatting issues in periphery tests
---------
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
* refactor(test): improve EventLogger test structure and documentation (#16194)
* rename test initializer to EventLogger_TestInit contract
* organize individual test functions into separate contracts inheriting from TestInit
* add @title and @notice tags to test contracts
* refactor(test): improve AddressAliasHelper test documentation (#16201)
- group tests not directly tied to a base contract function or are testing multiple functions into AddressAliasHelper_Unclassified_Test
- add @title and @notice tags to test contract
* refactor(test): cleanup /safe test structure and documentation (#16164)
* refactor(test): improve SafeSigners test structure and documentation
- consolidate test initialization into SafeSigners_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- refactor test function names to follow naming convention
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* refactor(test): improve LivenessGuard test structure and documentation
- rename Getter test contract to Safe_Test contract
- group tests not directly tied to a base contract function or are testing multiple functions into LivenessGuard_Unclassified_Test
- refactor test function names to follow naming convention
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* refactor(test): improve DeputyPauseModule test structure and documentation
- group tests not directly tied to a base contract function or are testing multiple functions into DeputyPauseModule_Unclassified_Test
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): improve LivenessModule test structure and documentation
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into LivenessModule_Unclassified_Test
- merge LivenessModule_RemoveOwners_Test, LivenessModule_RemoveOwners_TestFail and LivenessModule_RemoveOwnersFuzz_Test contracts into a single contract
- merge LivenessModule_CanRemove_Test and LivenessModule_CanRemove_TestFail contracts into a single contract
- simplify fuzz test setup by removing unnecessary variable prefixes and override logic
- reorder test functions to match the order of definitions in the base contract
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* refactor(test): cleanup /governance test structure and documentation (#16177)
* refactor(test): improve GovernanceToken test structure and documentation
- consolidate test initialization into GovernanceToken_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into GovernanceToken_Unclassified_Test
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* refactor(test): improve MintManager test documentation
- rename Initializer contract to MintManager_TestInit contract
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* refactor(test): cleanup /legacy test structure and documentation (#16207)
* refactor(test): improve LegacyMessagePasser test structure and documentation
- rename test contract to LegacyMessagePasser_PassMessageToL1_Test
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
* refactor(test): improve L1BlockNumber test structure and documentation
- consolidate test initialization into L1BlockNumber_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- reorder test functions to match the order of definitions in the base contract
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
* refactor(test): improve LegacyMintableERC20 test structure and documentation
- consolidate test initialization into LegacyMintableERC20_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to test contracts
* refactor(test): improve ResolvedDelegateProxy test structure and documentation
- consolidate test initialization into ResolvedDelegateProxy_TestInit contract
- rename test contract to ResolvedDelegateProxy_Fallback_Test
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
* refactor(test): improve DeployerWhitelist test structure and documentation
- consolidate test initialization into DeployerWhitelist_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- reorder test functions to match the order of definitions in the base contract
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* refactor(test): improve L1ChugSplashProxy test structure and documentation
- consolidate test initialization into L1ChugSplashProxy_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into L1ChugSplashProxy_Unclassified_Test
- reorder test functions to match the order of definitions in the base contract
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): improve VerifyOPCM test documentation (#16210)
- add @title and @notice tags to test contracts
* refactor(test): cleanup /cannon test structure and documentation (#16211)
* refactor(test): improve MIPS64 test structure and documentation
- consolidate test initialization into MIPS64_TestInit contract
- group tests not directly tied to a base contract function or are testing multiple functions into MIPS64_Unclassified_Test
- add @title and @notice tags to test contracts
* refactor(test): improve MIPS64Memory test structure and documentation
- consolidate test initialization into MIPS64Memory_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- refactor test function names to follow naming convention
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* refactor(test): cleanup of /dispute test structure and documentation (#16088)
* refactor(test): improve DelayedWETH test structure and documentation
- consolidate test initialization into a single DelayedWETH_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* refactor(test): improve LibPosition test structure and documentation
- consolidate test initialization into a single LibPosition_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function into LibPosition_Unclassified_Test
- refactor test function names to follow naming convention
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve AnchorStateRegistry test structure and documentation
- rename AnchorStateRegistry_Init contract AnchorStateRegistry_TestInit
- reorder test contract based in the order of the base file
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* remove dangling functions (#15997)
* refactor(test): improve PreimageOracle test structure and documentation (#16323)
- consolidate test initialization into PreimageOracle_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into PreimageOracle_Unclassified_Test
- refactor test function names to follow naming convention
- reorder test functions to match the order of definitions in the base contract
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): improve EOA test structure and documentation (#16319)
- consolidate test initialization into EOA_TestInit contract
- rename test contract to EOA_isSenderEOA_Test to follow the naming convention
- add @title and @notice tags to test contract
* refactor(test): cleanup of misplaced test files (pending relocation) (#16324)
* refactor(test): improve L2Genesis test structure and documentation
- consolidate test initialization into L2Genesis_TestInit contract
- organize individual test function into separate contracts inheriting from TestInit
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): improve Predeploys test structure and documentation
- consolidate test initialization into Predeploys_TestInit contract
- organize individual test function into separate contract inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into Predeploys_Unclassified_Test and Predeploys_Unclassified_Test
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* refactor(test): improve Preinstalls test structure and documentation
- consolidate test initialization into Preinstalls_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into Preinstalls_Unclassified_Test
- refactor test function names to follow naming convention
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* refactor(test): improve WETH98 test structure and documentation
- consolidate test initialization into WETH98_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): improve DeployUtils test structure and documentation
- consolidate test initialization into DeployUtils_TestInit contract
- rename test contract to DeployUtils_AssertUniqueAddresses_Test to follow naming convention
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): continue cleanup of /dispute test suite (#16287)
* refactor(test): improve PermissionedDisputeGame test structure and documentation
- consolidate test initialization into PermissionedDisputeGame_TestInit contract
- rename init parameters name to avoid shadowing with the state variables
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into PermissionedDisputeGame_Unclassified_Test
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* refactor(test): improve SuperPermissionedDisputeGame test structure and documentation
- consolidate test initialization into SuperPermissionedDisputeGame_TestInit contract
- rename init parameters name to avoid shadowing with the state variables
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into SuperPermissionedDisputeGame_Unclassified_Test
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* refactor(test): improve SuperFaultDisputeGame test structure and documentation
- consolidate test initialization into SuperFaultDisputeGame_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- change TestInit import and constants name in invariant test file
- group tests not directly tied to a base contract function or are testing multiple functions into SuperFaultDisputeGame_Unclassified_Test
- refactor test function names to follow naming convention
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* refactor(test): improve LibGameId test documentation
- refactor contract and test function names to follow naming convention
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* refactor(test): improve LibClock test documentation
- refactor contract and test function names to follow naming convention
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* fix: correct test init structure
* refactor(test): improve FaultDisputeGame test structure and documentation
- consolidate test initialization into FaultDisputeGame_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- change TestInit import and constants name in invariant and AnchorStateRegistry test files
- group tests not directly tied to a base contract function or are testing multiple functions into FaultDisputeGame_Unclassified_Test
- refactor test function names to follow naming convention
- reorder test functions to match the order of definitions in the base contract
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
* fix: bump coverage to 2xlarge
* refactor(test): improve DisputeGameFactory test structure and documentation
- rename test initialization contract to DisputeGameFactory_TestInit contract
- change TestInit contract import in several files through the tests suite
- group tests not directly tied to a base contract function or are testing multiple functions into DisputeGameFactory_Unclassified_Test
- add @title and @notice tags to test contracts
- convert @dev tags to @notice where appropriate
- ensure comment stay within 100 character limit
---------
Co-authored-by: Kelvin Fichter <kelvinfichter@gmail.com>
* refactor(test): cleanup of /libraries test structure and documentation (#16103)
* refactor(test): improve Constants test structure and documentation
- rename test contract to Constants_Constants_Test to follow naming convention
- add @title and @notice tags to test contract
* refactor(test): improve StaticConfig test structure and documentation
- consolidate test initialization into a single StaticConfig_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- refactor test function names to follow naming convention
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* refactor(test): improve DeployUtils test structure and documentation
- consolidate test initialization into a single DeployUtils_TestInit contract
- organize individual test functions into separate contract inheriting from TestInit
- add @title and @notice tags to test contract
- ensure comment lines stay within 100 character limit
* refactor(test): improve GasPayingToken test structure and documentation
- consolidate test initialization into a single GasPayingToken_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function into GasPayingToken_Unclassified_Test
- refactor test function names to follow naming convention
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* refactor(test): improve Hashing test structure and documentation
- add @title and @notice tags to all test contracts
- reorder test functions to match the order of definitions in the base contract
* refactor(test): improve TransientContext test structure and documentation
- consolidate test initialization into a single TransientContext_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function into TransientContext_Unclassified_Test
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve SafeCall test structure and documentation
- consolidate test initialization into a single SafeCall_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- refactor test function names to follow naming convention
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* refactor(test): improve Blueprint test structure and documentation
- consolidate test initialization into a single Blueprint_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into Blueprint_Unclassified_Test
- refactor test function names to follow naming convention
- reorder test functions to match the order of definitions in the base contract
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve RLPWriter test documentation
- add @title and @notice tags to all test contracts
- add function-level @notice comments describing expected behavior under test
- ensure comment lines stay within 100 character limit
* refactor(test): improve RLPReader test documentation
- add @title and @notice tags to all test contracts
- add function-level @notice comments describing expected behavior under test
- ensure comment lines stay within 100 character limit
* refactor(test): improve Encoding test structure and documentation
- consolidate test initialization into a single Encoding_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- group tests not directly tied to a base contract function or are testing multiple functions into Encoding_Unclassified_Test
- add @title and @notice tags to all test contracts
- convert @dev tags to @notice where appropriate
- ensure comment lines stay within 100 character limit
* refactor(test): improve Bytes test structure and documentation
- consolidate test initialization into a single Bytes_TestInit contract
- organize individual test functions into separate contracts inheriting from TestInit
- add @title and @notice tags to all test contracts
- ensure comment lines stay within 100 character limit
* refactor(test): improve MerkleTrie test structure and documentation
- consolidate test initialization into MerkleTrie_TestInit contract
- change visibility of rehashOtherElements function from private to internal
- add @title and @notice tags to test contracts
- ensure comment stay within 100 character limit
* refactor(test): revert Constants test contract name to original
* fix: VerifyOPCM support tuple arguments (#16320)
* Allow arbitrary gas amounts in DeployOPChain (#16365)
* Allow arbitrary gas amounts in DeployOPChain
* Update packages/contracts-bedrock/scripts/deploy/DeployOPChain.s.sol
* chore(files): relocate misplaced test files to appropriate folders (#16357)
* chore(files): relocate misplaced test files to appropriate folders
- Move ExecutingMessageEmitted.t.sol → integration
- Move L2Genesis.t.sol → scripts
- Move Predeploy.t.sol, Preinstalls.t.sol → libraries
- Move WETH98.t.sol → universal
- Move DeployOwnership.t.sol → scripts
- Move Initializable.t.sol → integration
* chore(test): move Initializable.t.sol back to vendor/
* fix(semgrep): update WETH98 test file exclude path in rules
* cannon: Return EAGAIN error when writing to a EventFd file descriptor (#16341)
* cannon: Go impl now returns EAGAIN error when writing to a EventFd file descriptor
* cannon: Solidity impl now returns EAGAIN error when writing to a EventFd file descriptor
* cannon: Update tests.
* contracts: Update expected mipsVersion
* contracts: Update version of StandardValidator.sol
* cannon: Switch to using v1 as a flag.
* cannon: Fix error return method for unknown file descriptors.
* cannon: Fix registers used to return error values for sys calls (#16346)
* cannon: Use 100 for event fd instead of -1.
Plus other review feedback.
* cannon: Add eventfd2 syscall go program tests (#16370)
* cannon: Update expected file descriptor
---------
Co-authored-by: mbaxter <meredith@oplabs.co>
* cannon: Enforce the non-block flag for eventfd syscalls (#16384)
* Enforce non-block flag for eventfd syscalls
* Run semver-lock
* Update StandardValidator mipsVersion
* emit Released event in setRC function (#16395)
* emit Released event in setRC function
* emit the event with the _isRC boolean
* feat: refactor sent messages mapping (#16402)
* feat: refactor sent messages mapping
* fix: update L2ToL2CrossDomainMessenger mapping
* chore: update sentMessages interface
---------
Co-authored-by: AgusDuha <81362284+agusduha@users.noreply.github.com>
* feat(test-validation): extend validation script to enforce test structure conventions (#16543)
* chore(test-validation): add full test-artifact validation framework
* Introduces `scripts/checks/test-validation/` (migrated from `test-names/`)
* `main.go`, helpers, and unit tests
* **New rules**
* **Path rule** – test files must live under `test/**` and mirror a source file under `src/**`
* **Contract-vs-file rule** – contract name in the compilation target must match the test file basename (`Foo.t.sol` → `Foo_*`)
* **Naming-pattern rule** – allows only:
* `<Contract>_TestInit`
* `<Contract>_<Function>_Test` (function must exist in ABI)
* `<Contract>_Uncategorized_Test` / `_Unclassified_Test`
* `<Contract>_<Descriptor>_Harness` or `<Contract>_Harness`
* **Function-existence rule** – verifies constructor / receive / fallback / selector names where required
* Adds central **exclusion list** for legacy or vendor test paths so the validator can ship without failing CI
* Refactors code into small, documented helpers (`validateTestName`, `validateTestStructure`, `checkSrcPath`, etc.)
* Updates `justfile` with `just test-validation` target
* Provides extensive inline docs to ease future rule additions
* docs(test-validation): add detailed comments explaining exclusion reasons
- Add comprehensive documentation for each exclusion category
- Explain SRC validation exclusions for non-standard naming conventions
- Document contract name validation exclusions for mismatched names
- Clarify function name validation exclusions for lookup failures
- Describe test pattern validation exclusions for non-standard patterns
- Include inline comments for each excluded path with specific reasons
* cannon: Update getrandom syscall to clear memory reservations (#16529)
* Handle memory reservations
* Run semver-lock
* Add helper for memory reservation tests
* Tweak reservation cases - make sure we have 64-bit variants
* Move test logic out of helper file
* Fix memory tracking
* Cleanup - rename parameters
* Test memory reservation changes in sysrandom tests
* Rename helper
* Fix type syntax
* Update solidity to more closely match go formatting
* Update StandardValidator
* Run semver-lock
* Group TrackMemAccess call with GetWord
* feat: OPCM.migrate calldata generator script (#16532)
* feat: OPCM.migrate calldata generator script
* support dynamic opChainConfig lengths
* add example calldata json in deploy-config
* sanity check for zero values
* forge fmt
* remove example opcm generate config
* check l1 cross domain messenger assertion (#16470)
* remove checkL1CrossDomainMessenger assertion
* fix unused imports
* keep CHECK-L1XDM-10 and CHECK-L1XDM-70
* keep impl checks, add proxyAdmin check, remove unnecessary assertions in deployOPChain and deployImplementations
* fix add proxyAdmin check
* fix proxyAdmin check, add tests for it
* rm duplicate assertions
* rm duplicate assertions
* fix comment of checkProxyAdminCallFails function
* rm checkProxyAdminCallFails function from deploy script
* rm unused import
* fix(tests): align test contracts with new validation script rules (#16561)
* fix(tests): align test contracts with new validation script rules
- Renamed test contracts to match expected naming patterns (e.g., <Contract>_<Function>_Test)
- Updated function names to align with contract names and validation expectations
- Merged standalone test contracts into primary test contracts to reduce fragmentation
- Refined test setup logic by introducing shared helper functions
- Removed test files from exclusion list in validation script now that they conform
- Adjusted comments in the validation script to reflect current file status
* fix(test): fix SystemConfig test contract naming
- Rename SystemConfig_Uncategorized_Test to SystemConfig_SuperchainConfig_Test to follow proper naming conventions
* fix(test): update test files to pass validation script (#16590)
- Rename helper contracts in DelayedWETH.t.sol to follow naming conventions
- Rename FakeClone harness in DisputeGameFactory.t.sol to follow naming conventions
- Consolidate DelayedWETH_WithdrawFrom_Test into DelayedWETH_Withdraw_Test
- Differentiate merged test functions with descriptive prefixes
- Remove 3 entries from validation script exclusion list
* fix(test): update L1 folder tests to pass validation script (#16596)
- Rename TestERC721 → L1ERC721Bridge_TestERC721_Harness to follow standard pattern
- Rename L1ERC721Bridge_Pause_Test → L1ERC721Bridge_Paused_Test to match function name
- Rename L1ERC721Bridge_Test → L1ERC721Bridge_Uncategorized_Test for consistency
- Rename Encoding_Harness → L1CrossDomainMessenger_Encoding_Harness for standard naming
- Merge L1CrossDomainMessenger_ReinitReentryTest into L1CrossDomainMessenger_Uncategorized_Test
- Rename L1CrossDomainMessenger_Unclassified_Test → L1CrossDomainMessenger_Uncategorized_Test
- Remove L1ERC721Bridge.t.sol and L1CrossDomainMessenger.t.sol from validation exclusions
* fix: use abi.encodeCall for updatePrestate and addGameType + fix params (#16581)
* fix: use abi.encodeCall for updatePrestate and addGameType and fix parameters
* fix: unignore opcm from rule
* fix: bump semver to correct degree
* chore: update semver-lock
* fix(test): update L2 folder tests to pass validation script (#16607)
- Rename ValidateMessageRelayer → CrossL2Inbox_ValidateMessageRelayer_Harness to follow standard pattern
- Rename TestERC721 → L2ERC721Bridge_TestERC721_Harness for standard naming
- Rename TestMintableERC721 → L2ERC721Bridge_TestMintableERC721_Harness for standard naming
- Rename NonCompliantERC721 → L2ERC721Bridge_NonCompliantERC721_Harness for standard naming
- Rename L2ERC721Bridge_Test_Constructor → L2ERC721Bridge_Constructor_Test to match function name
- Rename L2ERC721Bridge_Unclassified_Test → L2ERC721Bridge_Uncategorized_Test for consistency
- Rename L2ToL2CrossDomainMessengerWithModifiableTransientStorage → L2ToL2CrossDomainMessenger_WithModifiableTransientStorage_Harness for standard naming
- Remove CrossL2Inbox.t.sol, L2ERC721Bridge.t.sol, and L2ToL2CrossDomainMessenger.t.sol from validation exclusions
* fix(test): update universal folder tests to pass validation script (#16610)
- Rename ExternalRelay → CrossDomainMessenger_ExternalRelay_Harness to follow standard pattern
- Rename SimpleStorage → Proxy_SimpleStorage_Harness for standard naming
- Rename Clasher → Proxy_Clasher_Harness for standard naming
- Update all references to renamed contracts in CrossDomainMessenger.t.sol, Proxy.t.sol, and ProxyAdmin.t.sol
- Remove CrossDomainMessenger.t.sol and Proxy.t.sol from validation exclusions
* integrate Standard Validator into OPCM (#16237)
* integrate Standard Validator into OPCM
* fixes
* fixes
* fixes
* impl fixes
* impl fixes
* rm fn overload, add validateWithOverride to opcm
* rm fn overload, add validateWithOverride to opcm
* file name change, test fixes etc
* fixes
* rm semver
* fixes
* fix ci failures
* fix semver lock
* fix semver lock
* try fix go tests
* try fix go tests
* try fix go tests
* try fix go tests
* try fix semver
* try fix semver
* try fix semver
* try fix semver
* update optimism-package commit
* try fix semver
* rename opcmvalidator to opcmstandardvalidator
* rename opcmvalidator to opcmstandardvalidator
* fix ci
* fix validator upgrade tests, comments
* fix validator upgrade tests, comments
* fix validator upgrade tests
* fix validator upgrade tests
* fix validator upgrade tests
* fix base and unichain upgrade tests
* fixes
* fixes
* fixes
* fixes
* add comments for opcm validate functions
* docs(style-guide): update test conventions & validation workflow (#16614)
* docs: enhance smart contract testing style guide
- add detailed naming rules with strict formatting requirements for test functions
- expand contract naming conventions with specific patterns for different test types
- include new sections on test file organization and naming exceptions
- update validation script reference from tsx to just command
- clarify organizing principles for better test structure
- add legacy notice for deprecated _TestFail suffix
* docs(style-guide): simplify test organization guidelines
- Remove "non-trivial state changing" qualifier from function testing guideline
- Eliminate redundant bullet point about grouping tests by per-function contracts
* fix(test): update legacy, periphery, safe, and L2 folder tests to pass validation script (#16613)
- Rename Owner → L1ChugSplashProxy_Owner_Harness to follow standard pattern
- Rename Implementation → L1ChugSplashProxy_Implementation_Harness for standard naming
- Rename SimpleImplementation → ResolvedDelegateProxy_SimpleImplementation_Harness for standard naming
- Rename TestDrippie → Drippie_Test_Harness for standard naming
- Rename WrappedGuard → LivenessGuard_WrappedGuard_Harness for standard naming
- Consolidate L2StandardBridgeInterop_Convert_LegacyToSuper_Test and L2StandardBridgeInterop_Convert_SuperToLegacy_Test into L2StandardBridgeInterop_Convert_Test
- Update test function names to include context (legacyToSuper/superToLegacy) for disambiguation
- Remove L1ChugSplashProxy.t.sol, ResolvedDelegateProxy.t.sol, Drippie.t.sol, LivenessGuard.t.sol, and L2StandardBridgeInterop.t.sol from validation exclusions
- Remove entire "PATHS EXCLUDED FROM TEST PATTERN VALIDATION" section as all issues resolved
- Remove redundant library exclusions already covered by broader folder exclusion
* refactor: remove duplicated struct (#16621)
* docs: Remove outdated TOC entry (#16635)
* fix edge case in unsed imports check script (#16693)
* fix edge case in unsed imports check script
* fix another edge case
* add tests
* refactor(test): improve SuperchainConfig test coverage and quality (#16675)
- Add missing public getter tests (guardian, pauseTimestamps, version)
- Convert hardcoded tests to fuzz tests for broader coverage
- Add time-based pause expiration boundary testing
- Enhance existing tests with proper parameter naming
- Add comprehensive edge case validation
* refactor(test-validation): remove unnecessary path exclusions (#16730)
• Remove test/kontrol/ - directory contains no *.t.sol files
• Remove test/setup/ directory exclusion and add specific test/setup/DeployVariations.t.sol file
• Remove test/L1/StandardValidator.t.sol - file renamed to OPContractsManagerStandardValidator.t.sol which is already excluded
• Directory exclusions were redundant since validation script only processes *.t.sol files
* more deploy checks cleanup for mips, preimage oracle, eth lockbox, asr, delayedweth (#16749)
* more deploy checks cleanup for mips, preimage oracle, eth lockbox, asr, delayedweth
* fixes
* remove unnecessary l1standardbridge assertions (#16715)
* remove unnecessary l1standardbridge assertions
* remove redundant declaration
* fixes
* fixes
* remove unnecessary dispute game factory assertions (#16717)
* remove unnecessary dispute game factory assertions
* remove unnecessary dispute game factory assertions
* fixes
* remove unnecessary/duplicate system config assertions (#16585)
* remove unnecessary/duplicate system config assertions
* try fix ci
* fix tests failing
* try fix go test failure
* finally fix go tests ... ?
* ci: increase contracts build machine size
* fix
* reduce verbosity and code repitition
---------
Co-authored-by: Maurelian <maurelian@protonmail.ch>
* remove unnecessary l1erc721bridge assertions (#16716)
* remove unnecessary l1erc721bridge assertions
* fixes
* fix unused import
* remove unnecessary optimism mintable erc20 factory assertions (#16719)
* remove unnecessary optimism mintable erc20 factory assertions
* fixes
* refactor(test): improve L1 bridges test coverage and quality with AI assistance [Prompt v0.7.0] (#16772)
* refactor(test): enhance L1StandardBridge test coverage with fuzz tests and edge cases
- Add fuzz tests for depositETHTo with random recipients and amounts
- Add fuzz tests for depositERC20 with various amounts and gas limits
- Add fuzz tests for access control with random unauthorized addresses
- Add edge case test for depositERC20To with zero amount
- Fix naming convention from Unclassified to Uncategorized
- Improve test documentation with concise parameter descriptions
* refactor(test): enh…1 parent f87cacb commit 27731f5
829 files changed
Lines changed: 164484 additions & 665 deletions
File tree
- .github/workflows
- book
- src
- contributing
- policies
- deploy-config-periphery
- deploy
- drippie
- deploy-config
- deployments
- interfaces
- L1
- L2
- cannon
- dispute
- v2
- zk
- governance
- legacy
- safe
- universal
- vendor
- asterisc
- scripts
- autogen
- generate-semver-lock
- generate-snapshots
- checks
- common
- interfaces
- opcm-upgrade-checks
- reinitializer
- spacers
- test-validation
- unused-imports
- utils
- valid-semver-check
- deploy
- getting-started
- go-ffi
- libraries
- ops
- periphery
- deploy
- drippie
- safe
- utils
- script
- deploy
- l1
- tests
- l2/tests
- universal
- snapshots
- abi
- state-diff
- storageLayout
- src
- L1
- L2
- cannon
- libraries
- dispute
- lib
- v2
- zk
- fee-vault-fixes
- governance
- integration
- legacy
- libraries
- errors
- rlp
- trie
- periphery
- drippie
- dripchecks
- faucet
- authmodules
- monitoring
- recovery
- safe
- smart-escrow
- universal
- utils
- vendor
- asterisc
- eas
- eip1271
- resolver
- test
- L1
- L2
- actors
- cannon
- dispute
- lib
- fee-vault-fixes/e2e
- governance
- integration
- invariants
- OptimismSuperchainERC20
- fuzz
- handlers
- helpers
- kontrol
- proofs
- utils
- scripts
- json
- legacy
- libraries
- rlp
- trie
- mocks
- opcm
- periphery
- drippie
- dripchecks
- faucet
- authmodules
- monitoring
- recovery
- safe-tools
- safe
- scripts
- setup
- slither
- smart-escrow
- universal
- utils
- vendor
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
2 | 1 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
28 | 28 | | |
29 | 29 | | |
30 | 30 | | |
31 | | - | |
32 | | - | |
33 | | - | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
34 | 36 | | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | | - | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
39 | 42 | | |
40 | 43 | | |
41 | | - | |
42 | | - | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
43 | 49 | | |
44 | 50 | | |
45 | | - | |
46 | | - | |
| 51 | + | |
47 | 52 | | |
48 | 53 | | |
49 | 54 | | |
50 | | - | |
51 | | - | |
| 55 | + | |
52 | 56 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
2 | | - | |
3 | | - | |
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
4 | 10 | | |
5 | | - | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
6 | 14 | | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
7 | 45 | | |
| 46 | + | |
| 47 | + | |
8 | 48 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
7 | | - | |
8 | | - | |
9 | | - | |
10 | | - | |
11 | | - | |
12 | | - | |
13 | | - | |
14 | | - | |
15 | | - | |
16 | | - | |
17 | | - | |
18 | | - | |
19 | | - | |
20 | | - | |
21 | | - | |
22 | | - | |
23 | | - | |
24 | | - | |
25 | | - | |
26 | | - | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | | - | |
62 | | - | |
63 | | - | |
64 | | - | |
65 | | - | |
66 | | - | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | | - | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
| |||
9 | 9 | | |
10 | 10 | | |
11 | 11 | | |
12 | | - | |
13 | | - | |
14 | | - | |
15 | | - | |
16 | | - | |
17 | | - | |
18 | | - | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
19 | 30 | | |
20 | 31 | | |
21 | 32 | | |
| |||
25 | 36 | | |
26 | 37 | | |
27 | 38 | | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | | - | |
39 | 39 | | |
40 | 40 | | |
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
46 | | - | |
| 46 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
0 commit comments