Add a contract artifact manifest generator - #277
Conversation
|
Thanks for merging this — really appreciate it. This was for the $55 bounty on the contract artifact manifest generator. How would you prefer to handle payment? Happy to share whatever details you need here. |
1 similar comment
|
Thanks for merging this — really appreciate it. This was for the $55 bounty on the contract artifact manifest generator. How would you prefer to handle payment? Happy to share whatever details you need here. |
|
Thanks for merging this — glad the manifest generator made it in. For the $55 bounty on this work, what's the best way to handle payment on your end? Happy to share whatever details you need from me here. |
|
Thanks for merging this — glad the manifest generator landed. For the $55 bounty on #123, how would you like to handle payout? Happy to share whatever payment details you need on your preferred rail. |
|
Thanks for merging this — really appreciate it getting in. This was for the $55 bounty on the artifact manifest generator; what’s the best way for you to send payment? Happy to share whatever details you need on my end. |
Summary
make artifactsnow writesdist/manifest.jsonalongside the copied Wasm files so a deployed contract can be traced back to a specific build. Each entry records sha256, workspace version, git commit, and build profile. CI validates the manifest before uploading thecontract-artifactsbundle, and release attachments include it too.Changes
scripts/generate-manifest.shinto theartifactsMakefile target after Wasm files are copied todist/scripts/verify-dist-manifest.shto check required fields, per-file hashes, workspace version, profile, and stable package sort ordertest-generate-manifest.sh, smoke/offline helpers) andmake verify/make test-manifestfor manifest acceptance without a full Rust buildprove-contract-artifacts-runtime.sh,assert-contract-artifacts-bundle.sh, andvalidate-artifacts-ci-wiring.shto mirror CI’s pre-upload checks and guard workflow wiringdist/manifest.jsonwithdist/*.wasmpackage.jsonwithnpm testpointing atscripts/verify.sh; document usage inREADME.mdandscripts/README.mdHow to verify
make verify— manifest acceptance tests (no Rust required)make artifacts && make prove-contract-artifacts-runtime— validatedist/manifest.jsonagainst built Wasmmake artifacts-smoke— end-to-end when the workspace compilescontract-artifactsincludingdist/manifest.jsonFixes #123