Skip to content

feat(wallet): add SigmaJS prover#217

Open
TerraTectra wants to merge 1 commit into
fleet-sdk:masterfrom
TerraTectra:feat/sigmajs-prover
Open

feat(wallet): add SigmaJS prover#217
TerraTectra wants to merge 1 commit into
fleet-sdk:masterfrom
TerraTectra:feat/sigmajs-prover

Conversation

@TerraTectra

Copy link
Copy Markdown

Summary

  • add a SigmaJS-backed ISigmaProver implementation to @fleet-sdk/wallet
  • reduce and sign transactions protected by arbitrary ErgoTree scripts
  • support Fleet and EIP-12 unsigned transaction objects, explicit token burning, network and base-cost options
  • sign and verify Sigma proposition message proofs through SigmaJS
  • add documentation, package dependency and release changeset

Validation

  • pnpm test:unit — 67 files, 1,142 tests passed
  • pnpm cov:check — 100% statements, functions and lines; new prover has 100% branch coverage
  • pnpm test:lint — passed
  • pnpm -r build — passed
  • pnpm --filter @fleet-sdk/wallet build — passed without warnings

Closes #110

@changeset-bot

changeset-bot Bot commented Jul 17, 2026

Copy link
Copy Markdown

🦋 Changeset detected

Latest commit: 4310ceb

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 2 packages
Name Type
@fleet-sdk/wallet Minor
@fleet-sdk/mock-chain Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@ArgosOff

Copy link
Copy Markdown

@arobsn @mhrn83 could you please review this submission for issue #110 and confirm the 50 ERG bounty status? The PR is currently mergeable. It adds the SigmaJS prover, transaction and message signing tests, documentation, and a changeset. I am available to address review feedback promptly here in writing.

@ArgosOff

ArgosOff commented Jul 20, 2026

Copy link
Copy Markdown

Local verification update: branch is 0 commits behind master and mergeable. Recursive workspace build passes, exit 0. Lint passes across 218 files and format/import checks pass across 220 files. New SigmaJS prover tests pass 10/10. Targeted V8 coverage for sigmaJsProver.ts is 100% statements, branches, functions, and lines. Full unit run reached 1141/1142; the only failure was the unchanged property test in proveDLogProtocol.spec.ts timing out at 5 seconds under full-suite load. Its immediate isolated rerun passed 8/8 in 3.82 seconds, including the timed-out test in 2.56 seconds. No file involved in that transient timeout is modified by this PR. Ready for review.

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.

[Wallet] add SigmaJS prover

2 participants