feat(contracts): refresh artifacts for soroban-core 0.4.0 (v0.11.0)#38
Merged
Conversation
Refresh bundled channel_auth_contract.wasm and privacy_channel.wasm from soroban-core's per-UTXO spend-state refactor (#34, v0.4.0). The change is a storage-internal refactor; contract ABI is unchanged except the removal of the now-unreachable error variant 2009 InvalidDrawerSlot (the drawer bitmap it guarded no longer exists). Drop the corresponding stale entry from the contract error map to keep it in lockstep with core. Bump 0.10.0 -> 0.11.0 (minor: error-variant removal is a spec change, and ^0.10.0 consumers require an explicit bump to pick it up).
The previous commit bundled WASMs from a local `stellar contract build`, which produces different binaries than the release pipeline (`cargo install --locked stellar-cli`). The non-canonical artifacts deployed differently on-chain and failed the testnet integration tests (admin two-step transfer; batchLoad UTXO count). Replace them with the published soroban-core v0.4.0 release artifacts — the same WASMs deployed on testnet/mainnet, as the README requires. channel_auth_contract.wasm sha256 9ead1f4f… (release v0.4.0) privacy_channel.wasm sha256 533d964f… (release v0.4.0) Full suite (deno task test): 19 passed (216 steps), 0 failed.
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
This was referenced Jul 8, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refreshes the bundled contract artifacts to soroban-core v0.4.0 (the per-UTXO spend-state refactor, soroban-core#34, now merged) and bumps the SDK to 0.11.0.
Changes
test/contracts/channel_auth_contract.wasm(sha2569ead1f4f…),test/contracts/privacy_channel.wasm(sha256533d964f…) — the official soroban-core v0.4.0 release artifacts (downloaded from the v0.4.0 release; the same WASMs deployed on testnet/mainnet, per the README — not a local build).src/error/contract-errors.ts— drop the now-stale2009 InvalidDrawerSlotentry.deno.json—0.10.0→0.11.0.ABI delta (verified)
Regenerated stellar TS bindings from both core
main(0.3.0) and v0.4.0 and diffed:privacy_channelbindings: byte-identical.channel_auth_contractbindings: only difference is removal of error variant2009 InvalidDrawerSlot(its drawer bitmap no longer exists). No method signatures or types changed. No consumer references 2009.Minor bump rationale: removing an error variant is a spec change (not a patch), and
^0.10.0consumers won't pick up the new artifacts without an explicit bump.Validation
deno fmt --check,deno lint— pass.deno task test(full suite incl. testnet integration, deploys these WASMs and runs the full UTXO deposit/withdraw/spend-state lifecycle + channel-auth admin two-step + batchLoad): 19 passed, 216 steps, 0 failed.Landing
soroban-core#34 is merged and v0.4.0 is released; the bundled WASMs are the published release artifacts. No branch/prerelease ref remains. Merging this publishes SDK 0.11.0 to JSR; the five consumer bump PRs re-pin to
^0.11.0and need theirdeno.lockregenerated once 0.11.0 is live.