Skip to content

Feat/abi package#7

Merged
ericbsantana merged 2 commits into
mainfrom
feat/abi-package
May 9, 2026
Merged

Feat/abi package#7
ericbsantana merged 2 commits into
mainfrom
feat/abi-package

Conversation

@ericbsantana
Copy link
Copy Markdown
Owner

@ericbsantana ericbsantana commented May 9, 2026

Summary

  • New workspace package packages/abi/ published as @protokoll-eth/abi on npm
  • Three ABIs (monadVrfAdapterAbi, monadVrfVerifierAbi, iRandomnessAdapterAbi) generated by @wagmi/cli from forge artifacts
  • Versioned deployment addresses + chain metadata (activeDeployment, getDeployment, monadTestnet)
  • publish-abi.yml workflow publishes on v* tag pushes with npm provenance

What's in the package

Export What it is
monadVrfAdapterAbi Full ABI of MonadVRFAdapter (request/fulfill, views, events, errors).
monadVrfVerifierAbi ABI of MonadVRFVerifier.verifyProof.
iRandomnessAdapterAbi Consumer-side fulfillRandomness(bytes32, bytes32) interface.
monadTestnet Chain metadata: chainId, rpc, explorer, requestFee, requestFeeWei.
deployments Versioned deployment list. active: true marks the live one.
activeDeployment Shortcut for the entry with active: true. Currently v0.4.0.
getDeployment(version) Look up a specific historical deployment.

Why @wagmi/cli over hand-coded ABIs

src/abis.ts is generated from packages/protokoll/out/*.json, not hand-written. The publish workflow runs forge build then wagmi generate and git diff --exit-code on src/abis.ts so a contract change without a regenerated ABI fails CI rather than shipping stale types.

Setup required before first publish

  • Register the @protokoll-eth org/scope on npm (free)
  • Tag v0.4.0 to trigger the publish workflow

@ericbsantana ericbsantana self-assigned this May 9, 2026
@ericbsantana ericbsantana merged commit 7f34c35 into main May 9, 2026
3 checks passed
@ericbsantana ericbsantana deleted the feat/abi-package branch May 9, 2026 16:22
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