Skip to content

chore(contracts): record testnet deployment - #1020

Merged
determined-001 merged 2 commits into
mainfrom
chore/record-testnet-deployment
Aug 11, 2026
Merged

chore(contracts): record testnet deployment#1020
determined-001 merged 2 commits into
mainfrom
chore/record-testnet-deployment

Conversation

@determined-001

Copy link
Copy Markdown
Owner

Summary

  • Deploys registry and demo-emitter to Stellar testnet via contracts/deploy/deploy_testnet.sh and commits the resulting contract IDs and wasm hashes to deployed.testnet.json.
  • Flips verify-provenance in .github/workflows/contracts.yml from an automatic skip (placeholder detection) to a real hash-comparison check.
  • apps/web/lib/fireDemoEvent.ts already reads this file as a fallback when DEMO_EMITTER_CONTRACT_ID isn't set - no code change needed there, this file alone should unblock the /demo/contracts "Fire test event" button once DEMO_EMITTER_SECRET is also configured (see follow-up below).

registry: CCM4U5BGSLAGD2OYHAQUYLXVZNWI4EECJYPVJMOBSYI434FZ5Z2LGIWO
demo-emitter: CAP6TJP7WVVSAK5BKKAA32J6G7RPT6X6Q7US7SMBGZ3NZ73HSXFNFCRH

Follow-up (not in this PR, needs secrets only the repo/Vercel owner can set)

  • GitHub Actions secrets SOROBAN_CONTRACT_ID (registry id above) + SOROBAN_INVOKER_SECRET for integration.yml's nightly test.
  • Vercel env DEMO_EMITTER_CONTRACT_ID (demo-emitter id above) + DEMO_EMITTER_SECRET (a key scoped only to the harmless no-arg ping() call - deliberately separate from SOROBAN_INVOKER_SECRET).

Test plan

  • Both wasm hashes verified against on-chain state via stellar contract fetch before committing (see commit message)
  • CI verify-provenance job goes green (real check now, not a skip)

Deploys the registry and demo-emitter contracts to Stellar testnet via
deploy/deploy_testnet.sh and commits the resulting contract IDs and wasm
hashes. This is what flips CI's verify-provenance job from skip to a real
check, and what apps/web's fireDemoEvent.ts needs to stop returning
DemoEmitterNotConfiguredError on the /demo/contracts "Fire test event"
button.

registry:     CCM4U5BGSLAGD2OYHAQUYLXVZNWI4EECJYPVJMOBSYI434FZ5Z2LGIWO
demo-emitter: CAP6TJP7WVVSAK5BKKAA32J6G7RPT6X6Q7US7SMBGZ3NZ73HSXFNFCRH

Both wasm hashes verified against on-chain state via `stellar contract
fetch` before committing.
@vercel

vercel Bot commented Aug 11, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
orbital-dev Ready Ready Preview Aug 11, 2026 7:32pm

…uild

The first deployment (939be5ae.../e16bedfd...) redeployed here was built
locally without CARGO_HOME normalization: soroban-sdk's ledger.rs embeds
its own absolute source path via a panic-location capture, so the wasm
hash differed by build machine even with identical source and identical
rustc version. verify-provenance's independent rebuild in CI (CARGO_HOME=
/home/runner/.cargo) correctly caught the drift and failed.

Rebuilt with RUSTFLAGS="--remap-path-prefix=$CARGO_HOME=/home/runner/.cargo"
to match CI's embedded path exactly, confirmed the local build hash equals
CI's independently-rebuilt hash, and redeployed both contracts from that
exact wasm.

registry:     CDSCV5WBIK74OXFQLJMBMJHBWYBNEFGQGEG2YBKVKJSIWKP676AJF2QA
demo-emitter: CBWXJ3AJZ7Y57XZWZV75VZRRSCZ5DT5VLPKKSC6FYG4YI4ELO5AXBBVP
@determined-001
determined-001 merged commit ca0a51c into main Aug 11, 2026
27 checks passed
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