Skip to content

binary(tests): consecutive deploys into a shared code zone - #3316

Open
awskii wants to merge 2 commits into
ethereum:projects/binary-triefrom
awskii:tests/binary-tree-consecutive-spilling-deploys
Open

binary(tests): consecutive deploys into a shared code zone#3316
awskii wants to merge 2 commits into
ethereum:projects/binary-triefrom
awskii:tests/binary-tree-consecutive-spilling-deploys

Conversation

@awskii

@awskii awskii commented Aug 5, 2026

Copy link
Copy Markdown

Every existing case that reaches the code zone puts one contract there. Code chunks are
content-addressed, so the whole chain shares one zone: the first deploy is the only one
that inserts into an empty one, and nothing pins that a later deploy leaves the stems
already present alone.

Changes

test_consecutive_deploys_share_the_code_zone: three contracts of 129, 137 and 256
chunks, deployed one per block, then all three called in a final block. The lengths
differ so their stems cannot coincide by accident, and each writes its own marker on
the last block, which fails if a later deploy disturbed the code of an earlier one.

Sized by chunk count rather than by CODE_OFFSET, so it fills unchanged before and
after #3310. Verified against both.

Every existing overflow-code case deploys into an empty code zone. Chunks
past the header are content-addressed and share one zone chain-wide, so
every deploy after the first inserts beside stems already there.
@codecov

codecov Bot commented Aug 5, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 93.00%. Comparing base (9b4db64) to head (3a9822a).

Additional details and impacted files
@@                  Coverage Diff                  @@
##           projects/binary-trie    #3316   +/-   ##
=====================================================
  Coverage                 93.00%   93.00%           
=====================================================
  Files                       628      628           
  Lines                     37395    37395           
  Branches                   3445     3445           
=====================================================
  Hits                      34779    34779           
  Misses                     1859     1859           
  Partials                    757      757           
Flag Coverage Δ
unittests 93.00% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@spencer-tb spencer-tb changed the title tests(binary_tree): consecutive deploys into a shared code zone binary(tests): consecutive deploys into a shared code zone Aug 5, 2026
@spencer-tb spencer-tb added C-feat Category: an improvement or new feature A-tests Area: Consensus tests. C-binary Category: binary tree labels Aug 5, 2026
@CPerezz
CPerezz self-requested a review August 5, 2026 15:02
@kevaundray

Copy link
Copy Markdown
Contributor

Do you mind also rebasing this ser? (merged in a PR that removes code from the account header)

EIP-8297 moved every code chunk into the code zone (ethereum#3310), removing
CODE_OFFSET. Sizing by chunk count instead leaves the test valid on
either side of that change.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-tests Area: Consensus tests. C-binary Category: binary tree C-feat Category: an improvement or new feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants