Skip to content

docs: document how to verify a deployed contract matches a local build - #204

Merged
Glittersup merged 2 commits into
TricklePay:mainfrom
DevSolex:docs/issue-144
Aug 31, 2026
Merged

docs: document how to verify a deployed contract matches a local build#204
Glittersup merged 2 commits into
TricklePay:mainfrom
DevSolex:docs/issue-144

Conversation

@DevSolex

Copy link
Copy Markdown
Contributor

Summary

Closes #144

Adds a Verifying a deployment section to the README that gives any integrator the complete steps to confirm a live contract was compiled from this source tree.

What was added

A new section between ## Deploying to testnet and ## Project structure covering three steps:

  1. Local buildcargo build --release --target wasm32v1-none with the pinned toolchain, then sha256sum the artifact.
  2. On-chain hash — two methods: stellar contract inspect --id <CONTRACT_ID> --network <NETWORK> (reads the wasm_hash field from the contract instance) or stellar contract fetch + sha256sum (downloads and hashes the bytecode directly).
  3. Compare — matching hashes confirm the deployment.

The section also documents the reproducibility caveat honestly: Linux hosts produce consistent hashes with the pinned toolchain; macOS and Windows hosts may see a different hash even with identical source due to platform-specific LLVM output.

Acceptance criteria met

  • README documents how to fetch a deployed contract and compare it with a local build
  • Commands are complete enough to follow without prior knowledge
  • Reproducibility caveat is stated honestly

Verification

cargo fmt --check          ✓
cargo clippy --all-targets -- -D warnings  ✓
cargo test                 ✓  (105 tests passed)

Add a 'Verifying a deployment' section to the README that walks through
the three steps needed to confirm a live contract was compiled from this
source tree:

1. Reproduce the WASM locally with the pinned toolchain and hash it.
2. Retrieve the on-chain wasm_hash via stellar contract inspect or
   stellar contract fetch.
3. Compare the two hashes.

The section also honestly notes the reproducibility caveat: Linux hosts
produce consistent hashes with the pinned toolchain; macOS and Windows
hosts may differ due to platform-specific LLVM output.

Resolves TricklePay#144
@drips-wave

drips-wave Bot commented Aug 30, 2026

Copy link
Copy Markdown

@DevSolex Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@Glittersup
Glittersup merged commit fc86c8e into TricklePay:main Aug 31, 2026
1 check 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.

Document how to verify a deployed contract matches a local build

2 participants