Skip to content

feat: publish compiler ABI metadata - #12

Open
phylax-ci wants to merge 4 commits into
mainfrom
centaur/publish-compiler-abi-1788031200
Open

feat: publish compiler ABI metadata#12
phylax-ci wants to merge 4 commits into
mainfrom
centaur/publish-compiler-abi-1788031200

Conversation

@phylax-ci

@phylax-ci phylax-ci commented Aug 29, 2026

Copy link
Copy Markdown

Summary

  • Publish the exact compiler-produced ABI, assertion contract name, and compiler version with DA fetch responses.
  • Persist ABI metadata in an additive, versioned sidecar so existing bincode records remain compatible.
  • Backfill legacy records lazily only after recompilation and deployed-bytecode prefix verification.
  • Use Alloy JsonAbi and semver primitives rather than maintaining local ABI or version parsers.
  • Remove 22 unused dependency declarations and 297 net lockfile lines surfaced by cargo shear.

Context

The dapp trace path currently reconstructs historical assertion ABIs from Solidity source. This makes assertion-da authoritative for compiler metadata so phylaxsystems/credible-layer-dapp#1406 can delete that parser and consume one producer-owned interface.

Compatibility and rollout

  • Response fields are additive and optional; the stored assertion record is unchanged.
  • Corrupt, oversized, or future-version sidecars fail closed and are never overwritten.
  • Existing records backfill on demand only when the selected compiler output matches the stored deployment bytecode.
  • Deploy this producer change before the dapp consumer change in phylaxsystems/credible-layer-dapp#1406.
  • Rollback is safe because older servers ignore the sidecar and older clients ignore the additive response fields.

Validation

  • cargo +stable check --workspace --locked
  • cargo +nightly fmt --all -- --check
  • cargo +nightly clippy --workspace --all-targets --profile dev --locked -- -D warnings -D clippy::pedantic
  • All 51 Rust tests passed in GitHub DIND CI, including compiler-image and request-path integration coverage.
  • GitHub CI runs cargo shear against every manifest.

Refs ENG-4806

Prompted by: Odysseus

Prompted from: https://app.slack.com/client/T06T9CEDK4G/C082UCREZKP/thread/C082UCREZKP-1787942650.256259

@linear-code

linear-code Bot commented Aug 29, 2026

Copy link
Copy Markdown

ENG-4806

@socket-security

socket-security Bot commented Aug 29, 2026

Copy link
Copy Markdown

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updatedmetrics@​0.24.1 ⏵ 0.24.610010093100100

View full report

@phylax-ci
phylax-ci force-pushed the centaur/publish-compiler-abi-1788031200 branch from fbb4fca to 0870471 Compare August 29, 2026 19:14
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.

1 participant