Skip to content

feat(ci): rehearse the monad fixture releases before they are cut - #51

Merged
QEDK merged 1 commit into
forks/monad_ninefrom
ci/check-fixture-release
Aug 25, 2026
Merged

QEDK merged 1 commit into
forks/monad_ninefrom
ci/check-fixture-release

Conversation

@pdobacz

@pdobacz pdobacz commented Aug 25, 2026

Copy link
Copy Markdown
Collaborator

Collect and fill each feature on PRs, from-upstream and eips/**.

Aiming to reduce churn with botched tests releases when working on upstream changes and per-feature (per-EIP) fixture releases. This is part of an effort to enable CL to implement EIPs in independent branches, with spec tests coverage.

Tested here and here:
https://github.com/monad-developers/execution-specs/actions/runs/32856601361
https://github.com/monad-developers/execution-specs/actions/runs/32844861205

Greptile Summary

The PR adds an automatic fixture-release rehearsal workflow that derives its collection and fill matrices from the existing release configuration while discarding rehearsal artifacts.

  • Adds branch-aware feature selection and matrix generation shared with release tooling.
  • Runs collection checks before full fixture fills on pull requests and release-related branches.
  • Adds an upload toggle to the fixture-building action and removes the unused mainnet release configuration.

Confidence Score: 5/5

The PR appears safe to merge; no concrete blocking or independently actionable non-blocking issue remains.

The generated matrices match the fixture action’s inputs, current configured features have applicable tests, unmatched EIP feature names safely fall back to all features, and artifact suppression covers both upload paths.

Important Files Changed

Filename Overview
.github/scripts/check_release_matrix.py Adds branch-aware feature selection and flattens the existing release matrix format for workflow consumption; no actionable defect was established.
.github/workflows/check_release.yaml Adds setup, collection, and full-fill rehearsal jobs using the shared release configuration and fixture-building action.
.github/actions/build-fixtures/action.yaml Adds an upload switch that suppresses both artifact-upload paths during rehearsals while preserving fixture generation.
.github/configs/feature.yaml Removes an orphaned mainnet feature from a fork whose release workflow is explicitly limited to Monad features.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    Trigger[PR, release-branch push, or manual dispatch] --> Setup[Select configured features]
    Setup --> Matrix[Build and flatten release matrices]
    Matrix --> Collect[Collect tests for each feature]
    Collect --> Decision{Full rehearsal?}
    Decision -->|No| Done[Report collection result]
    Decision -->|Yes| Fill[Run build-fixtures for each matrix entry]
    Fill --> Discard[Skip artifact upload]
    Discard --> Done
Loading

Reviews (1): Last reviewed commit: "feat(ci): rehearse the monad fixture rel..." | Re-trigger Greptile

Collect and fill each feature on PRs, `from-upstream` and `eips/**`.

Co-Authored-By: Claude <claude-opus-5>
@pdobacz
pdobacz requested review from QEDK and mijovic as code owners August 25, 2026 15:40

@QEDK QEDK left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM.

@QEDK
QEDK merged commit 0fe218e into forks/monad_nine Aug 25, 2026
10 checks passed
@QEDK
QEDK deleted the ci/check-fixture-release branch August 25, 2026 22:45
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