contracts/deploy/README.md
Edut LLC 64a6f0154e
Some checks are pending
check / contracts (push) Waiting to run
privacy: sanitize deploy metadata and local references
2026-02-20 13:43:50 -08:00

1.5 KiB

Deployment Directory

Place versioned deployment manifests here:

  1. chain id
  2. contract addresses
  3. deployment tx hashes
  4. verifier links
  5. policy hash snapshot

Template:

  • membership-deploy.template.json
  • entitlement-deploy.template.json
  • lastlight-deploy.template.json
  • offers.template.json
  • runtime-addresses.base-sepolia.json (runtime-wired snapshot for cross-repo address parity)

Recommended process:

  1. Run one deploy command for the target contract:
    • membership: npm run deploy:sepolia / npm run deploy:mainnet
    • entitlement: npm run deploy:entitlement:sepolia / npm run deploy:entitlement:mainnet
    • Last Light: npm run deploy:lastlight:sepolia / npm run deploy:lastlight:mainnet
  2. Copy the matching template to a dated file (for example membership-base-sepolia-2026-02-18.json).
  3. Offer override files may include non-contract metadata (for example execution_profile) for downstream catalog parity; deploy script ignores unknown keys and only applies on-chain fields.
  4. Fill all deployment fields from script output and explorer links.
  5. If you need per-offer pricing, copy offers.template.json, edit values, and pass it via OFFERS_JSON=/path/to/file.json.

Address parity rule:

  1. Keep runtime-addresses.base-sepolia.json synchronized with <workspace-root>/web/docs/deployment/contract-addresses.base-sepolia.json.
  2. Any runtime address change must update both repos in the same change set.
  3. Run npm run check:addresses after edits to verify deploy artifact parity invariants.