Skip to content

Update EF-test fixtures to official witness generation pipeline#25

Merged
figtracer merged 8 commits into
paradigmxyz:bal-devnet-3from
lazovicff:bal-devnet-amsterdam
May 13, 2026
Merged

Update EF-test fixtures to official witness generation pipeline#25
figtracer merged 8 commits into
paradigmxyz:bal-devnet-3from
lazovicff:bal-devnet-amsterdam

Conversation

@lazovicff
Copy link
Copy Markdown
Contributor

@lazovicff lazovicff commented May 5, 2026

This PR transitions the ef-tests suite to the official witness generation pipeline, replacing legacy static fixtures with the execution-specs repository and the uv run fill tool.

Key Changes:

  • Updated Fixture Pipeline: Integrated the official execution-specs tool to dynamically generate executionWitness fields for EEST, zkEVM, and BAL tests.
  • Removed Obsolete Tests: Deleted GeneralStateTests and associated code as they are no longer present in the official fixtures. Also removed runner crate, which relied on old fixtures.
  • Infrastructure Fixes: Added critical resource limits (ulimit, RUST_MIN_STACK, and RAYON_NUM_THREADS) and forced sequential execution to ensure stability and prevent crashes on macOS.

@lazovicff lazovicff mentioned this pull request May 5, 2026
@lazovicff lazovicff marked this pull request as ready for review May 5, 2026 20:39
@lazovicff
Copy link
Copy Markdown
Contributor Author

lazovicff commented May 6, 2026

@jsign @figtracer Can you help with reviewing this? Thanks

Copy link
Copy Markdown
Collaborator

@figtracer figtracer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

very nice, some nits

Comment thread scripts/run_ef_tests.sh Outdated
Comment thread scripts/setup_ef_tests.sh

# We copy the contents of the fixtures/blockchain_tests directory from the specs repo.
# The Rust test runner uses WalkDir, so preserving the directory structure is important.
cp -r "$EF_SPECS_DIR/fixtures/blockchain_tests/"* "$FIXTURES_DEST/"
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this copies fixtures/blockchain_tests/* directly into execution-spec-tests/ so generated fixtures land under execution-spec-tests/for_amsterdam/....

but testing/ef-tests/tests/tests.rs looks for execution-spec-tests/blockchain_tests/for_amsterdam

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, sorry I missed that. The tests passing should have been suspicious.
I left the copy logic as is, but fixed the tests.rs lookup

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@figtracer Sorry for delay, I was handling some personal commitments.

What should I do with failing tests? Debug them in this PR or leave it for another issue?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i would say that we can leave this for another PR and keep this one as a general ci/fixture improvement

@lazovicff lazovicff requested a review from figtracer May 12, 2026 19:51
@figtracer figtracer merged commit 36c032b into paradigmxyz:bal-devnet-3 May 13, 2026
4 checks passed
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.

2 participants