1. 09 Aug, 2024 7 commits
  2. 08 Aug, 2024 6 commits
    • tre's avatar
      7343468a
    • protolambda's avatar
      devnet/e2e: run L1 Deneb and L2 Fjord by default (#11359) · 2f295d03
      protolambda authored
      * devnet/e2e: run L1 Deneb and L2 Fjord by default
      
      * op-e2e: fix TestPostUnsafePayload
      
      * op-e2e: Fix TestGasPriceOracleFeeUpdates
      
      * op-e2e/actions: fix some tests
      
      The L2EngineAPI test needs more fixing
      
      * tests: fixes to support Ecotone/Fjord in more tests
      
      * op-e2e: one more fix
      
      ---------
      Co-authored-by: default avatarSebastian Stammler <seb@oplabs.co>
      2f295d03
    • Adrian Sutton's avatar
      Revert "Fix devnet-up when op-program/bin is missing prestate-proof.json (#11383)" (#11393) · b047e1fd
      Adrian Sutton authored
      This reverts commit 2491a373.
      
      make cannon-prestate doesn't declare all transitive dependencies properly so can fail to build when there are changes.
      b047e1fd
    • Mark Tyneway's avatar
      contracts-bedrock: improve `CrossL2Inbox` devex (#11322) · 051db548
      Mark Tyneway authored
      * contracts-bedrock: improve `CrossL2Inbox` devex
      
      Improve the `CrossL2Inbox` devex by creating an alternative entrypoint.
      This design was not considered previously because there was a "top level
      call" restriction, aka the "only EOA" invariant. This was to allow for
      static analysis of transactions, keeping resource usage lower for
      validating transactions when building blocks or at the mempool layer.
      Since 3074/7702 render the enforcement of only eoa impossible,  we decided
      to op/acc and lean into the approach of allowing subcalls to trigger
      `ExecutingMessage` events.
      
      This new interface allows another contract to be the entrypoint,
      the idea is that the user sends the `Identifier` and the serialized
      log (message) to whatever contract that they want and then pass it to
      `CrossL2Inbox.validateMessage` which then emits the event that consensus
      validates. This allows the calling smart contract to be aware of the
      schema for the log and deserialize it however they see fit. Since the
      serialized logs are done with the following algorithm:
      
      ```go
      msg := make([]byte, 0)
      for _, topic := range log.Topics {
          msg = append(msg, topic.Bytes()...)
      }
      msg = append(msg, log.Data...)
      ```
      
      It is very easy to use `abi.decode` to decode a log, given that solidity
      was used to `emit` it. The topics are `bytes32` and then the data is
      abi encoded given the schema of the event itself. Unused parts like
      `topic[0]` (hash of the event name) can be dropped when decoding if
      they are not required.
      
      * ctb: fix typo
      
      * remove nonReentrant and add tests for validateMessage, rename ENTERED_SLOT preimage
      
      * add natspec for _checkIdentifier and update that of validateMessage
      
      * update version and semver-lock file
      
      * check all topics in crossl2inbox test, run pnpm snapshots
      
      * tests: fix
      
      ---------
      Co-authored-by: default avatarMichael Amadi <amadimichaeld@gmail.com>
      051db548
    • Adrian Sutton's avatar
      op-proposer, op-batcher: Wait for sync in Start rather than loop. (#11192) · cc67d34e
      Adrian Sutton authored
      Ensures that if it fails, the process exits with an error, rather than just exiting the runloop and continuing on in a zombie mode that doesn't do anything but doesn't exit.
      cc67d34e
    • Mark Tyneway's avatar
      contracts-bedrock: migrate to just (#11276) · 96b9e701
      Mark Tyneway authored
      * contracts-bedrock: migrate to just
      
      Move away from `pnpm` for contracts scripts
      and towards `just`. `just` was made for this,
      since we are moving away from JS it makes no
      sense to keep `pnpm` around which is native
      to the JS ecosystem.
      
      * ci: install just
      
      * ops: cleanup, docs
      
      * ci: install just
      
      * justfile: update
      
      * ci: fix install
      
      * snapshots: update
      
      * contracts-bedrock: remove pnpm/node, cleanup dockerfile
      
      * slither ci: no longer need for workaround (TM)
      
      * ts-linting: remove
      
      * kontrol: regenerate snapshots
      
      * safecall: update test
      
      * test: update
      Co-authored-by: default avatarMatt Solomon <matt@mattsolomon.dev>
      
      * docs: update
      Co-authored-by: default avatarMatt Solomon <matt@mattsolomon.dev>
      
      * readme: update
      Co-authored-by: default avatarMatt Solomon <matt@mattsolomon.dev>
      
      * docs: update
      Co-authored-by: default avatarMatt Solomon <matt@mattsolomon.dev>
      
      * docs: update
      Co-authored-by: default avatarMatt Solomon <matt@mattsolomon.dev>
      
      * docs: update
      Co-authored-by: default avatarMaurelian <john@oplabs.co>
      
      * versions: use latest
      
      * ci: fix
      
      * CONTRIBUTING: update
      
      * ci: fix
      
      * lint: fix
      
      ---------
      Co-authored-by: default avatarprotolambda <proto@protolambda.com>
      Co-authored-by: default avatarMatt Solomon <matt@mattsolomon.dev>
      Co-authored-by: default avatarMaurelian <john@oplabs.co>
      96b9e701
  3. 07 Aug, 2024 6 commits
  4. 06 Aug, 2024 8 commits
  5. 05 Aug, 2024 4 commits
  6. 03 Aug, 2024 8 commits
  7. 02 Aug, 2024 1 commit