Skip to content

Add local transaction signing commands and bundle validation - #3

Merged
yapishu merged 1 commit into
mainfrom
reid/local-signing
Oct 20, 2026
Merged

yapishu merged 1 commit into
mainfrom
reid/local-signing

Conversation

@yapishu

@yapishu yapishu commented Oct 20, 2026

Copy link
Copy Markdown
Contributor

Adds nockchain inspect and nockchain sign to the npm package, plus inspectSigningBundle and signSigningBundle library functions. Users save a bundle from the remote MCP, review it locally, and sign with a hidden zprv prompt or an explicit local key file. Recovery phrases require an explicit derivation path. The command requires interactive approval, creates a new file with mode 0600, and does not broadcast.

Validation reconstructs the payment plan from complete inputs and checks canonical encoding, commitments, existing signatures, maturity, recipients, change and fees, including small remainders assigned to fees. Existing signature verification can allow missing signatures without weakening its default threshold check. Network and tip fields remain indexed context, not a chain proof.

Implements the signing contract in https://github.com/SWPSCO/nockchain-rpc-server/pull/139. Sets the package version to 0.3.0 and includes the executable in the npm archive; package publication is separate.

Validation:

  • Full suite: 31 tests pass; signing tests pass after the final schema-field checks.
  • TypeScript and formatting checks pass.
  • Five Rust-generated fixtures produce identical signed bytes and transaction IDs.
  • Installed tarball CLI passes inspection, refusal without approval, hidden-key signing, mode 0600 and overwrite-refusal checks.
  • CI checks the installed executable on Node 22 and 24.

@yapishu
yapishu marked this pull request as ready for review October 20, 2026 19:53
@yapishu
yapishu merged commit 4dc17c8 into main Oct 20, 2026
4 checks passed
@yapishu
yapishu deleted the reid/local-signing branch October 20, 2026 19:53
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