Skip to content

Fix Solana AuthEx bootstrap signatures (WIRE-441) - #181

Merged
heifner merged 2 commits into
masterfrom
fix/wire-441
Nov 10, 2026
Merged

heifner merged 2 commits into
masterfrom
fix/wire-441

Conversation

@huangminghuang

@huangminghuang huangminghuang commented Nov 9, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Submit the SDK's composed Ed25519 signature directly when creating a Solana AuthEx link.
  • Require the already published @wireio/sdk-core 1.0.110 minimum consistently across existing workspace dependencies.
  • Cover the signed create-link payload, embedded public key, authorization and signer refusal through the public tool entrypoint.

Why

wire-libraries-ts #143 — Align ED signing with current Wire transaction format changed SDK Ed25519 signing to return the complete 96-byte Wire signature: a 32-byte public key followed by the 64-byte detached signature. This behavior is available in the already published @wireio/sdk-core 1.0.110.

Solana AuthEx bootstrap continued to prepend the public key itself. It attempted to copy the SDK's 96-byte result into a 64-byte remainder, raising RangeError: offset is out of bounds before bootstrap could finish.

The SDK owns signature composition. Returning its result directly preserves the required 96-byte payload. SDK 1.0.109 returned only 64 bytes, so this change also raises the minimum to 1.0.110 consistently across workspace consumers.

Validation

  • Focused AuthExLinkTool, WireOperatorProvisioningTool and keyPairUtils suites: 64 tests passed.
  • The public create-link regression reproduces the original offset failure and passes with this fix; it independently verifies the signature against the SDK-prepared payload. Signer refusal prevents submission.
  • All workspace consumers compile with the new SDK minimum; changed TypeScript passes lint and formatting checks.
  • Actual npm artifacts confirm SDK 1.0.109 returns 64 bytes and 1.0.110 returns the verified 96-byte composed signature. The built tool also passed a direct payload and signature probe.
  • Independent correctness, architecture, compliance and style reviews passed.

@heifner
heifner merged commit 95f051a into master Nov 10, 2026
2 checks passed
heifner added a commit that referenced this pull request Nov 10, 2026
Brings in the Solana AuthEx bootstrap fix from #181, which every flow needs to get through bootstrap.
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.

2 participants