1. 12 Sep, 2024 24 commits
  2. 11 Sep, 2024 9 commits
  3. 10 Sep, 2024 7 commits
    • smartcontracts's avatar
      fix: OptimismPortal fuzz flakes (#11818) · f93f9f40
      smartcontracts authored
      OptimismPortal fuzz tests were flaking because the base fee would
      increase so much that there wouldn't be enough gas to burn for the
      user to be able to buy the gas that they want. Introduces an
      additional assumption that will prevent the elasticity multiplier
      and max change denominator from being such that the maximum
      change to the base fee won't cause us to run out of gas.
      f93f9f40
    • protolambda's avatar
    • Matt Solomon's avatar
      OPSM: Begin implementing OP Stack Manager code and it's deployment (#11623) · de31478b
      Matt Solomon authored
      * begin supporting specifying versions in OPSM
      
      * add deploy logic
      
      * deploy OPSM along with implementations
      
      * scaffold opsm interface between scripts
      
      * fixes
      
      * mvp of DeployOPChain
      
      * start working on an e2e opsm test, currently reverts
      
      * fix tests
      
      * test cleanup
      
      * rename opsmSingleton to opsm
      
      * chore: remove unused imports
      
      * refactor: switch from 'new' to blueprints, 50% code size reduction
      
      * fix semgrep
      
      * feat: add OPSM interop tests
      
      * test: add missing specs
      
      * add DisputeGameFactory deployment
      
      * chore: update snapshots
      
      * fix opsm interop support
      
      * chore: update snapshots
      
      * Update packages/contracts-bedrock/test/DeployOPChain.t.sol
      
      * fix: add L1StandardBridge setter and initialization
      
      * chore: small clarification of deploy flow
      
      * Update packages/contracts-bedrock/scripts/DeployImplementations.s.sol
      Co-authored-by: default avatarBlaine Malone <blainemalone01@gmail.com>
      
      * chore: add todos
      
      * fix: change bytes32 to string
      
      * rename addrs to opChainAddrs for clarity
      
      * test: fix assertion string numbering
      
      * chore: update semver lock:
      
      ---------
      Co-authored-by: default avatarBlaine Malone <blainemalone01@gmail.com>
      de31478b
    • Sam Stokes's avatar
      op-node: read DACommitmentType from scr in LoadOPStackRollupConfig (#11830) · 53fa7b9e
      Sam Stokes authored
      * op-node: read DACommitmentType from scr in LoadOPStackRollupConfig
      
      * op-node: check for altda nil pointers before dereferencing
      
      * op-node: leave altDA config nil if not existent in scr config
      53fa7b9e
    • Emiliano Bonassi's avatar
      fix(op-batcher): initAltDA before initChannelConfig (#11816) · 91e306b0
      Emiliano Bonassi authored
      * fix(op-batcher): initAltDA before initChannelConfig
      
      * chore(op-bastcher): fix comment
      91e306b0
    • Matthew Slipper's avatar
      Add broadcast API to Go forge scripts (#11826) · 219ebe00
      Matthew Slipper authored
      * Add broadcast API to Go forge scripts
      
      Adds a hooks-based API to collect transactions broadcasted via `vm.broadcast(*)` in the Go-based Forge scripts. Users pass an `OnBroadcast` hook to the host, which will be called with a `Broadcast` struct with the following fields whenever a transaction needs to be emitted:
      
      ```go
      type Broadcast struct {
      	From     common.Address
      	To       common.Address
      	Calldata []byte
      	Value    *big.Int
      }
      ```
      
      This API lets us layer on custom transaction management in the future which will be helpful for `op-deployer`.
      
      As part of this PR, I changed the internal `callStack` data structure to contain pointers to `CallFrame`s rather than passing by value. I discovered a bug where the pranked sender was not being cleared in subsequent calls due to an ineffectual assignment error. I took a look at the implementation and there are many places where assignments to call frames within the stack happen after converting the value to a reference, so converting the stack to store pointers in the first place both simplified the code and eliminated a class of errors in the future. I updated the public API methods to return copies of the internal structs to prevent accidental mutation.
      
      * Code review updates
      
      * moar review updates
      
      * fix bug with staticcall
      219ebe00
    • Adrian Sutton's avatar