Skip to content

Comments

chore: sync fee splitter system#548

Merged
0xDiscotech merged 149 commits intosc-feat/fee-splitter-systemfrom
chore/sync-fee-splitter-system
Sep 16, 2025
Merged

chore: sync fee splitter system#548
0xDiscotech merged 149 commits intosc-feat/fee-splitter-systemfrom
chore/sync-fee-splitter-system

Conversation

@0xDiscotech
Copy link

No description provided.

mslipper and others added 30 commits August 15, 2025 15:35
…timism#16726)

* op-devstack,op-service: sub-process support

Squashed op-devstack integration work:

op-devstack: sysgo L2 CL interface, op-node/kona-node options

op-devstack: fix safedb option

op-devstack: kona node configuration

op-devstack: try get kona running

op-devstack: generalize sysgo L2 EL, start on op-reth support

op-devstack/sysgo: op-reth work in progress

op-devstack/sysgo: initial op-reth support

op-devstack: kona setup fixes

op-devstack: kona node sub-process integration progress

nit(op-geth): rebase artifact

feat(devstack/kona): kona tests work

op-devstack: proxy RPCs of kona-node, op-node, op-reth

op-devstack: add missing op-node/op-reth start/stop checks

op-devstack/sysgo: document env vars, simplify reth env var usage to match kona env var usage

op-devstack/sysgo: fix tests

op-devstack: fix nil L2 EL option args

op-devstack: attempt to fix sub-process test in CI env

op-devstack: sub-proc improve diff

* op-devstack: fix CI
…7090)

* op-deployer: fix bootstrap implementations flags

* updated bootstrap devdoc
* feat: make the cwia arg layout human readable

* fix: bump semvers

* fix: add error to each interface

* chore: align comment for cwia layout

* fix: update semver lock

* fix: correct version bump for semver

* chore: bump semver lock

* fix: update versions for dg contracts in standard validator

* feat: update the semver

* chore: update semver

* fix: failing tests in OPCM
…eum-optimism#16030)

* Abstract the Merkle representation

* Implement asterisc's MPT

* migrate tests for mpt

* migrate tests for mpt

* copied benchmarks from asterisc

* fix failed merge

* Avoid pagelookup twice during setword invalidation

* use uints

* hashpool

* alloc pages upfront

* remove clutter

* fix

* gomallocregion

* more readable mapped regions

* fix state json codec test

* fix for singlethread too

* fix op-challenger test

* Remove MPT implementation

* address comments

* fix benchmark

* Use uint64 and also reuse hasher and buffers

* clean

* clean up some

* fix range

* Address reviewer feedback: clarify region bounds and add instruction cache fallback

* Revert "Address reviewer feedback: clarify region bounds and add instruction cache fallback"

This reverts commit 2a19b22.

* Clarify region bounds and add fallback to memory decode if PC exceeds instruction cache

* Update cannon/mipsevm/multithreaded/mips.go

Co-authored-by: Inphi <mlaw2501@gmail.com>

* fixed size of preheap cache for binaryTreeMemory

* slice out of bounds fixed in GetWord and AllocPage, pagetest syntax fix

* fix program heap initialization for binary tree

* moved cache decoded from instrumented state declaration to doMipsStep

* added default and set region map size to newMemory

* added 4096 byte memory region option to all testing cases using VMFactory

* clean up

* cache_decode to be initialize on first mipstep only for single step test compatibility

* added heap region sizing for unit/fuzz tests

* Revert " cache_decode to be initialize on first mipstep only for single step test compatibility"

This reverts commit 47a7166.

* cache allocation in instrumentedState initialization, catch for stale cache in doMipsStep

* remove unit test logic from domipstep and added helper for cache update in tests

* merge migration changes from develop

* some test step boundaries in instrumented_test needed to be slightly incremented, added decoded cache updateing to difftester_test.go

* small changes to step count and mismatch error vs string fault

* cannon: Use tiny i-cache by default

* uses a small i-cache by default to accomodate unit tests. This
  prevents tests from running out of memory in CI.
* fixes fuzz tests to preload the i-cache with the test instruction.

* op-e2e: Limit max parallelism for fp tests

The fp tests now require alot of memory to run. Particularly when cannon
is used. So limit parallelism to avoid OOM.

* increase parallelism

---------

Co-authored-by: Eric Tu <tu.eric@hotmail.com>
Co-authored-by: Inphi <mlaw2501@gmail.com>
…#17116)

Turns out we need to do this because `go-ffi` depends on the op-node. We only re-enable the `op-node` dependency for the core unit tests - not upgrade or coverage tests.
…imism#17114)

* Update faucet.go

* Update sync_tester.go

* Update l2_proposer.go

* Update backend_test.go
… CrossSafeUpdateEvent (ethereum-optimism#17101)

* refactor: remove CrossUpdateRequestEvent

* refactor: remove CrossUnsafeUpdateEvent and CrossSafeUpdateEvent

* build: compile time check that statusTracker implements the handlers

* doc: add todo comments

* refactor: remove no-op code

* refactor: unify into a single CrossUpdateHandler

* refactor: extract nil checks to helper method
* refactor: remove ForceResetEvent

* style: go lint

* fix: missing SetEngController call

* fixes

* fix panics

* set resetters in op-program

* lint

* ci: bump go-tests-short timeout

* fix DerivationReady

* emit ConfirmPipelineResetEvent during ForceReset

* fix: add reset notifier for indexing mode

* doc: add todo comment
…ptimism#17124)

* op-program: Rely on mise install cache for prestate build

* install only the go mise dep

* append to logs

* rewrite mise.toml to get around install conflicts
…-devstack (ethereum-optimism#17130)

Convert isthmus operator fee acceptance tests to use the new op-devstack
testing framework instead of the legacy devnet-sdk. Updates test interfaces
and types while preserving test functionality.

Main changes:
- Update imports from devnet-sdk/testing/systest to op-devstack/devtest
- Convert test interface types (systest.T → devtest.T)
- Simplify unit tests (removed implementations of unused functions)
- Mark unused utility functions with conversion notes
* op-sync-tester: eth namespace relay

* simplify

* More synctester example configs

* better error handling fore eth_chainId

* safety guard

* read only backend encapsulation

* fix lint

* rename

* refactor sync tester init

* mock rl backend and chainID test

* refactor

* GetBlockByHash tests

* GetBlockByNumber tests

* GetBlockReceipts tests

* consistency

* fix logic error
* update conductor scenario when builder failure

* check for rollup boost enabled

* modify comments

* fix test
…sm#17154)

* op-service/eth: fix validationError string pointer reference

* op-service/eth: fix exec payload creation from block

Execution payloads must only set the withdrawals root post-Isthmus.
The block's withdrawals root is set during assembly pre-Isthmus.

* go: update op-geth dependency
…ck (ethereum-optimism#17160)

Convert the TestInteropReadiness test from devnet-sdk to op-devstack framework.
Use MultiCaller batching for contract interactions and presets.NewSimpleInterop()
for test setup. Fix challenger preset compilation issue temporarily.
serpixel and others added 25 commits September 9, 2025 22:25
ethereum-optimism#17397)

* fix(op-acceptance-tests): wait for fund balance for persistent devnets

* fix(op-acceptance-tests): always wait for balance
…ype (ethereum-optimism#17294)

* op-conductor: p2p healthcheck fix and execution_p2p_healthcheck_api_type

Signed-off-by: Yashvardhan Kukreja <yashvardhan@oplabs.co>

* nit

Signed-off-by: Yashvardhan Kukreja <yashvardhan@oplabs.co>

---------

Signed-off-by: Yashvardhan Kukreja <yashvardhan@oplabs.co>
…thereum-optimism#17393)

* circleci: enable OPM op-node sync tests

* add base mainnet

* slack: notify on failure with mention in #notify-ci-failures

* use slack member id
* ci: Add a stand alone check for solc warnings

* Use non-dev build to prevent compiler warnings
…-optimism#17413)

Signed-off-by: Yashvardhan Kukreja <yashvardhan@oplabs.co>
Updates op-acceptor to v3.2.1, which adds an optional progress indicator
Temporarily increase the 'no_output' CircleCI timeout as there's an issue making the tests occasionally stall for a long time.
…e L1 (ethereum-optimism#17407)

* op-node: Skip L1 genesis hash check if block is not available from the L1

* op-node: Switch L1 genesis check to using MaybeAsNotFoundErr

Switch supervisor_client back to it's own isNotFound. MaybeAsNotFoundErr is specific to identifying blocks and headers that are not found, the supervisor client is looking for super root not found. That's an important distinction so we should use separate code.

* Fix lint

* Update test
…ity (ethereum-optimism#17415)

* refactor(test): improve L2CrossDomainMessenger test coverage and quality

- convert sendMessage test to fuzz test for broader parameter validation
- enhance constructor test with version and MESSAGE_VERSION assertions
- enhance initialize test with additional state validation
- add focused sendMessage test with full event verification
- all tests pass and maintain existing functionality

* fix: rename test function to follow naming convention

- Change testFuzz_sendMessage_validParams_succeeds to testFuzz_sendMessage_withValidTargetAndGasLimit_succeeds
- Addresses GitHub comment about generic 'validParams' reason
- Function name now follows [method]_[functionName]_[reason]_[status] pattern
- Updated comment to be more descriptive of test scenario

* fix: apply forge fmt to resolve contracts-bedrock-checks CI failure

- Fix import statement formatting (add spaces around braces)
- Fix function call formatting (add spaces around braces)
- Fix function parameter formatting for multi-line declarations
- Addresses contracts-bedrock-checks CI failure from previous commit

* fix: replace assert with assertGt for better test practices

- Replace assert(bytes(...).length > 0) with assertGt(bytes(...).length, 0)
- Use Forge's assertion functions instead of native Solidity asserts
- Addresses mds1's code review feedback

* feat: increase fuzz test gas limit bound from 5M to 30M

- Align with other cross-domain messaging tests in codebase
- CrossDomainMessenger.t.sol uses 30M, bridges use 10M, portal uses 50M
- 30M is only 0.70% of uint32.max and well within technical constraints
- Provides better fuzz coverage for realistic gas limit scenarios
- Addresses mds1's feedback about conservative 5M bound

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* feat: set up OPCM for U17

This PR removes U16 code from the OPCM and updates it to work for
U17. Various tests have been updated to support this, and the OPCM
has been improved so that it can be more easily utilized by
future maintainers.

* feat: get rid of old upgrade functions

* fix: semgrep errors

* fix: encodecall error

* fix: opcm check look at internal func

* fix: bump interop portal version

* fix: one more broken test

* fix: opcm graphite comment

* fix: go tests

* fix: superchain config test error

* fix: more test failures

* fix: more test failures

* fix: correct semgrep/event rules

* fix: pr review

* fix: compilation errors
* min-base-fee solidity diffs

* Update packages/contracts-bedrock/src/L1/SystemConfig.sol

Co-authored-by: Matt Solomon <matt@mattsolomon.dev>

* just pre-pr

* remove codegen bin

* update semver and remove some more diffs in systemconfig codegen

* revert bindings/systemconfig

* just pre-pr

---------

Co-authored-by: George Knee <georgeknee@googlemail.com>
Co-authored-by: Matt Solomon <matt@mattsolomon.dev>
* justfile: add latest-versions recipe

* fix command failure masking

* print both stable and latest versions
@0xDiscotech 0xDiscotech self-assigned this Sep 16, 2025
@0xDiscotech 0xDiscotech merged commit 652c4cc into sc-feat/fee-splitter-system Sep 16, 2025
1 check passed
@0xDiscotech 0xDiscotech deleted the chore/sync-fee-splitter-system branch September 16, 2025 16:52
0xiamflux pushed a commit that referenced this pull request Jan 27, 2026
…s/op-alloy#549)

Follow-up on #548 

## Motivation

`OpTransaction` trait can tell if its deposit, but that is not very
useful if I also need to extract it.

## Solution

Add `as_deposit` function into the trait for the extraction of
`TxDeposit`.

## PR Checklist

- [ ] Added Tests
- [ ] Added Documentation
- [ ] Breaking changes
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.