Skip to content

Release/3.0.0#236

Merged
CassioMG merged 12 commits intomainfrom
release/3.0.0
Apr 15, 2026
Merged

Release/3.0.0#236
CassioMG merged 12 commits intomainfrom
release/3.0.0

Conversation

@CassioMG
Copy link
Copy Markdown
Contributor

@CassioMG CassioMG commented Apr 15, 2026

Summary

  • Upgrade @stellar/stellar-sdk from 14.5.0 to 15.0.1 across all 3 packages — Protocol 26 support
  • Upgrade @stellar/freighter-api from ^2.0.0 to ^6.0.1 in the key manager package
  • Fix longstanding bug in freighter handler that hardcoded Networks.PUBLIC for XDR deserialization regardless of actual network
  • Rewrite freighter handler for freighter-api v6 API changes (new signTransaction signature and response shape)
  • Add freighter handler test coverage (previously zero tests)
  • Add XDR integer boundary tests in the Soroban package for Protocol 26 strict validation
  • Fix paging ID test that was failing due to test anchor server now rejecting invalid IDs

Breaking Changes

All packages

  • @stellar/stellar-sdk upgraded from 14.5.0 to 15.0.1 (Protocol 26 XDR)
  • XDR integer construction now throws on overflow/underflow (upstream)
  • TransactionBase.networkPassphrase setter now throws to enforce immutability (upstream)

Key Manager (@stellar/typescript-wallet-sdk-km)

  • @stellar/freighter-api upgraded from ^2.0.0 to ^6.0.1
  • Freighter handler: custom.network param replaced with custom.networkPassphrase

Test plan

  • yarn build — all 3 packages compile successfully
  • yarn lint — zero warnings
  • yarn test:ci — 244 passed, 4 skipped, 0 failed
  • Freighter handler tests: 9 tests covering sign, errors, network passphrase resolution
  • Soroban XDR boundary tests: 10 tests covering i32/u32/i64/u64 min/max/overflow

🤖 Generated with Claude Code

Copilot AI review requested due to automatic review settings April 15, 2026 19:14
@socket-security
Copy link
Copy Markdown

socket-security bot commented Apr 15, 2026

Review the following changes in direct dependencies. Learn more about Socket for GitHub.

Diff Package Supply Chain
Security
Vulnerability Quality Maintenance License
Updated@​stellar/​freighter-api@​2.0.0 ⏵ 6.0.187 +310074 +296 +5100
Updated@​stellar/​stellar-sdk@​14.5.0 ⏵ 15.0.199 +1100100 +198 +2100

View full report

@CassioMG CassioMG requested a review from piyalbasu April 15, 2026 19:17
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Release v3.0.0 updating the monorepo packages for Stellar Protocol 26 support, including SDK dependency upgrades and Freighter integration updates.

Changes:

  • Bump @stellar/stellar-sdk to 15.0.1 across all packages and update related transitive deps in yarn.lock.
  • Upgrade @stellar/freighter-api to ^6.0.1 and rewrite the Freighter handler to use the v6 signTransaction API + correct network passphrase for XDR parsing.
  • Add new Freighter handler tests and add Soroban XDR integer boundary tests; adjust a SEP-24 paging-id integration test expectation.

Reviewed changes

Copilot reviewed 10 out of 11 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
yarn.lock Locks upgraded Stellar SDK, Freighter API, and transitive dependency versions.
@stellar/typescript-wallet-sdk/test/wallet.test.ts Updates SEP-24 pagingId test to reflect anchor server rejecting invalid IDs.
@stellar/typescript-wallet-sdk/package.json Bumps package to 3.0.0 and upgrades @stellar/stellar-sdk to 15.0.1.
@stellar/typescript-wallet-sdk/CHANGELOG.MD Adds 3.0.0 release notes and breaking-change notes.
@stellar/typescript-wallet-sdk-soroban/test/helpers.test.ts Adds XDR integer boundary/overflow-related tests for Protocol 26.
@stellar/typescript-wallet-sdk-soroban/package.json Bumps package to 3.0.0 and upgrades @stellar/stellar-sdk to 15.0.1.
@stellar/typescript-wallet-sdk-soroban/CHANGELOG.MD Adds 3.0.0 release notes including new boundary tests.
@stellar/typescript-wallet-sdk-km/test/freighter.test.ts Adds initial unit test coverage for the Freighter handler under freighter-api v6.
@stellar/typescript-wallet-sdk-km/src/Handlers/freighter.ts Reworks signing flow for freighter-api v6; fixes network passphrase used for XDR deserialization and improves error handling.
@stellar/typescript-wallet-sdk-km/package.json Bumps package to 3.0.0; upgrades @stellar/freighter-api and @stellar/stellar-sdk.
@stellar/typescript-wallet-sdk-km/CHANGELOG.MD Adds 3.0.0 release notes, including Freighter handler breaking change and fix.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread @stellar/typescript-wallet-sdk-soroban/test/helpers.test.ts Outdated
Comment thread @stellar/typescript-wallet-sdk-soroban/test/helpers.test.ts Outdated
Comment thread @stellar/typescript-wallet-sdk-km/src/Handlers/freighter.ts
Comment thread @stellar/typescript-wallet-sdk-km/src/Handlers/freighter.ts
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 10 out of 11 changed files in this pull request and generated 4 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread @stellar/typescript-wallet-sdk-km/src/Handlers/freighter.ts
Comment thread @stellar/typescript-wallet-sdk-km/src/Handlers/freighter.ts
Comment thread @stellar/typescript-wallet-sdk-km/CHANGELOG.MD
Comment thread @stellar/typescript-wallet-sdk-soroban/CHANGELOG.MD
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 10 out of 11 changed files in this pull request and generated no new comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread @stellar/typescript-wallet-sdk-km/package.json Outdated
Copy link
Copy Markdown
Contributor

@piyalbasu piyalbasu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR is lgtm and the Claude code review came back good. I just left 1 very nit comment

CassioMG and others added 12 commits April 15, 2026 16:09
…o 3.0.0

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…assphrase bug

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…etails

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Re-throw Error instances in freighter handler catch block instead of double-wrapping
- Add test for custom.address passthrough to freighter API
- Remove incorrect changelog claims about XDR integer overflow throwing
- Remove overflow/underflow tests that documented non-existent behavior

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Fix misleading error message in freighter handler ("ledger handler" -> "Freighter handler")
- Remove unnecessary JSON.stringify on publicKey string
- Use true i64/u64 boundary values in XDR tests via Int64.fromString/Uint64.fromString

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…n layers

i64/u64 throw at fromString(), i32/u32 throw at toXDR() serialization.
Update changelogs with accurate description.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…elogs

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@CassioMG
Copy link
Copy Markdown
Contributor Author

FYI, I had to re-create the commit history on this PR because the original commits were missing a verified signature but the PR stays exactly the same

@CassioMG CassioMG merged commit 41d1cba into main Apr 15, 2026
8 checks passed
@CassioMG CassioMG deleted the release/3.0.0 branch April 15, 2026 23:15
@CassioMG CassioMG self-assigned this Apr 16, 2026
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.

3 participants