Skip to content

Add IGRA exit unsigned transaction CLI#2

Open
reshmem wants to merge 8 commits into
roman/kaspa-igra-supportfrom
roman/igra-exit-unsigned-cli
Open

Add IGRA exit unsigned transaction CLI#2
reshmem wants to merge 8 commits into
roman/kaspa-igra-supportfrom
roman/igra-exit-unsigned-cli

Conversation

@reshmem
Copy link
Copy Markdown

@reshmem reshmem commented Apr 20, 2026

Summary

  • add cast igra build-exit to build kaspawallet-compatible unsigned IGRA exit PST hex plus JSON manifest
  • add cast igra verify-exit to verify unsigned/signed artifacts, payload nonce, txid prefix, outputs, locking script, and multisig completion
  • derive per-input multisig xpubs exactly as kaspawallet expects and canonicalize signer order by sorted master xpubs

Validation

  • cargo test -p foundry-common igra_exit
  • cargo check -p cast
  • built official kaspawallet from /Users/user/Source/igra/kaspad
  • created three temporary 2-of-3 multisig kaspawallet key files
  • built an unsigned IGRA exit PST with txid prefix 00 and verified it
  • signed with official kaspawallet: signer1 partial, signer2 partial, signer3 partial, signer1+2 fully signed, signer1+3 fully signed
  • parsed the fully signed PST with official kaspawallet parse

Note: global cargo fmt --check is currently blocked by pre-existing unrelated formatting diffs; rustfmt --edition 2024 --check crates/common/src/igra_exit.rs crates/cast/src/cmd/igra.rs passes.

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.

1 participant