feat(metering): Add state root timing to bundle metering #349
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Add timing measurement for state root calculation in bundle metering. This provides visibility into the I/O cost of computing state roots, which is critical for understanding the full execution costs of a given bundle.
Key changes:
MeterBundleOutputstruct to replace tuple return type with named fieldsstate_root_time_usfield to measure state root calculation time separatelytotal_time_usfield for overall metering time (includes tx execution + state root)hashed_post_stateandstate_root_with_updatesmeter_bundle_state_root_time_invarianttest to verify timing consistencyTest plan
cargo test -p base-reth-metering- all 20 tests passcargo +nightly fmt --all -- --check- passescargo +nightly clippy --all-targets --all-features -- -D warnings- passes