Skip to content

[bug] ci: E2E misses embed asset changes #2669

Description

@Unique-Divine

CI can skip EVM end-to-end tests when only embed artifact inputs change, even though those changes affect runtime behavior the suite exercises.

PR #2668 consolidated the standalone workflow file for EVM E2E into job e2e-evm inside workflow .github/workflows/test-core.yml. The consolidation simplified CI layout but narrowed path-based triggering.

The previous workflow used filter evm-changes from action dorny/paths-filter with repo-wide globs for **.ts, **.js, and **.json, alongside Go and proto paths under directories like evm/, app/, and x/. The consolidated job changes-nibiru-go gates on filter nibiru-go, which covers directory evm/**/*.go, directory evm/e2e/**, and other Go-centric paths, but does not include directory evm/embeds/ or the former JS/JSON/TS globs.

Directory evm/embeds/ holds Hardhat-compiled Solidity artifacts, generated ABI JSON, and the npm package @nibiruchain/solidity. Recipe just gen-embeds recompiles contracts and refreshes ABI output. Package evm/embeds is imported broadly across the EVM module—precompiles, keeper tests, RPC tests, and upgrade handlers all depend on embedded contract ABIs and bytecode. A PR that changes only Solidity sources, Yarn lockfiles, or generated ABI JSON under evm/embeds/ can pass CI without running job e2e-evm, leaving regressions in embed-driven EVM behavior undetected until a later Go change retriggers the job.

This issue tracks restoring CI coverage parity for embed-driven EVM changes: path filters should treat evm/embeds/** (and any other non-Go inputs the E2E suite relies on) as first-class triggers for job e2e-evm, without reintroducing overly broad repo-wide JS/JSON filters unless that breadth is still warranted.

Originally posted by @cursor[bot] in #2668 (comment)

Metadata

Metadata

Assignees

No one assigned

    Labels

    S-triageStatus: This issue is waiting on initial triage. More Info: https://tinyurl.com/25uty9w5

    Type

    No type

    Projects

    Status
    ⚡ Building 🧱

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions