@bsv/wallet-toolbox 2.1.5 → 2.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/CHANGELOG.md +15 -4
  2. package/README.md +111 -28
  3. package/docs/client.md +34 -14
  4. package/docs/storage.md +24 -0
  5. package/docs/wallet.md +34 -14
  6. package/out/src/Wallet.js +3 -3
  7. package/out/src/Wallet.js.map +1 -1
  8. package/out/src/WalletPermissionsManager.d.ts.map +1 -1
  9. package/out/src/WalletPermissionsManager.js +23 -20
  10. package/out/src/WalletPermissionsManager.js.map +1 -1
  11. package/out/src/__tests/ShamirWalletManager.test.js +4 -4
  12. package/out/src/__tests/ShamirWalletManager.test.js.map +1 -1
  13. package/out/src/mockchain/MockMiner.d.ts.map +1 -1
  14. package/out/src/mockchain/MockMiner.js +2 -1
  15. package/out/src/mockchain/MockMiner.js.map +1 -1
  16. package/out/src/mockchain/MockServices.d.ts.map +1 -1
  17. package/out/src/mockchain/MockServices.js +2 -1
  18. package/out/src/mockchain/MockServices.js.map +1 -1
  19. package/out/src/sdk/PrivilegedKeyManager.d.ts.map +1 -1
  20. package/out/src/sdk/PrivilegedKeyManager.js +3 -1
  21. package/out/src/sdk/PrivilegedKeyManager.js.map +1 -1
  22. package/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts.map +1 -1
  23. package/out/src/services/chaintracker/chaintracks/ChaintracksService.js +1 -0
  24. package/out/src/services/chaintracker/chaintracks/ChaintracksService.js.map +1 -1
  25. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.man.test.js +1 -1
  26. package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.man.test.js.map +1 -1
  27. package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.js +1 -1
  28. package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.js.map +1 -1
  29. package/out/src/storage/StorageIdb.js +2 -2
  30. package/out/src/storage/StorageIdb.js.map +1 -1
  31. package/out/src/storage/WalletStorageManager.d.ts.map +1 -1
  32. package/out/src/storage/WalletStorageManager.js +1 -0
  33. package/out/src/storage/WalletStorageManager.js.map +1 -1
  34. package/out/src/storage/__test/getBeefForTransaction.test.js +49 -2
  35. package/out/src/storage/__test/getBeefForTransaction.test.js.map +1 -1
  36. package/out/src/storage/methods/__test/GenerateChange/generateChangeSdk.test.js +153 -1
  37. package/out/src/storage/methods/__test/GenerateChange/generateChangeSdk.test.js.map +1 -1
  38. package/out/src/storage/methods/createAction.js +4 -2
  39. package/out/src/storage/methods/createAction.js.map +1 -1
  40. package/out/src/storage/methods/generateChange.d.ts +25 -0
  41. package/out/src/storage/methods/generateChange.d.ts.map +1 -1
  42. package/out/src/storage/methods/generateChange.js +84 -14
  43. package/out/src/storage/methods/generateChange.js.map +1 -1
  44. package/out/src/storage/remoting/__test/StorageClient.man.test.js +0 -1
  45. package/out/src/storage/remoting/__test/StorageClient.man.test.js.map +1 -1
  46. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -4,6 +4,14 @@ This document captures the history of significant changes to the wallet-toolbox
4
4
  The git commit history contains the details but is unable to draw
5
5
  attention to changes that materially alter behavior or extend functionality.
6
6
 
7
+ ## wallet-toolbox 2.1.7
8
+
9
+ - Sonarqube recommended changes...
10
+
11
+ ## wallet-toolbox 2.1.6
12
+
13
+ - Improve change-making algorithm: cap change outputs per transaction to 8 (gradual UTXO pool build-up, smaller BEEFs). Enforce dynamic dust floor so no change output is worth less than 2× the fee to spend it.
14
+
7
15
  ## wallet-toolbox 2.1.5
8
16
 
9
17
  - Update deps, docs, lint
@@ -20,7 +28,7 @@ attention to changes that materially alter behavior or extend functionality.
20
28
  ## wallet-toolbox 2.1.2
21
29
 
22
30
  - Fix Chaintracks no longer hangs if bulk ingestor fails to reach chain tip.
23
-
31
+
24
32
  ## wallet-toolbox 2.1.1
25
33
 
26
34
  ### Add `teratest` and `mock` chain types
@@ -28,12 +36,14 @@ attention to changes that materially alter behavior or extend functionality.
28
36
  - Change `Chain` type from `'main' | 'test'` to `'main' | 'test' | 'teratest' | 'mock'`.
29
37
 
30
38
  **`teratest` chain:**
39
+
31
40
  - Add ARC URL `https://arc-teratest.taal.com` for the teratest network.
32
41
  - Chaintracks URL follows existing `${chain}net-chaintracks.babbage.systems` pattern.
33
42
  - WhatsOnChain URL follows existing `https://api.whatsonchain.com/v1/bsv/${network}` pattern.
34
43
  - Bitails is not available on teratest (only `main` and `test`).
35
44
 
36
45
  **`mock` chain — full self-contained mock blockchain:**
46
+
37
47
  - Add new `src/mockchain/` module with `MockServices`, `MockChainTracker`, `MockMiner`, `MockChainStorage`, and merkle tree utilities.
38
48
  - `MockServices` implements the `WalletServices` interface against a local SQLite database (3 tables: `mockchain_block_headers`, `mockchain_transactions`, `mockchain_utxos`).
39
49
  - Transactions are validated with full script execution via `@bsv/sdk` `Transaction.verify()`.
@@ -45,6 +55,7 @@ attention to changes that materially alter behavior or extend functionality.
45
55
  - `Services` class, `createDefaultWalletServicesOptions`, and external service providers (`WhatsOnChain`, `Bitails`) throw explicit errors if instantiated with `'mock'` chain.
46
56
 
47
57
  **Explicit chain handling across codebase:**
58
+
48
59
  - Convert chain-dependent ternaries to explicit switch statements in `toWalletNetwork`, `genesisHeader`, `Bitails` constructor, WoC WebSocket ingestors, and `ChaintracksStorageNoDb`.
49
60
  - Each chain value (`main`, `test`, `teratest`, `mock`) is handled explicitly rather than falling through a catch-all else branch.
50
61
 
@@ -52,7 +63,7 @@ attention to changes that materially alter behavior or extend functionality.
52
63
 
53
64
  Optimize createAction (fewer db transactions)
54
65
  Add postBeef services soft timeout failover
55
- PR 130 randomBytesHex in Setup
66
+ PR 130 randomBytesHex in Setup
56
67
 
57
68
  ## wallet-toolbox 2.0.23
58
69
 
@@ -358,7 +369,7 @@ Changes to improve computing balances (sum of satoshis) over various sets of wal
358
369
  ## wallet-toolbox 1.3.29
359
370
 
360
371
  - add verifyUnlockScripts to both createAction and signAction flows
361
-
372
+
362
373
  ## wallet-toolbox 1.3.28
363
374
 
364
375
  - adminStats now includes monitorStats and servicesStats of type ServicesCallHistory (wallet-toolbox/src/sdk/WalletServices.interfaces.ts)
@@ -389,7 +400,7 @@ New outputs created by `createAction` / `signAction` that are NOT assigned to a
389
400
  Implications:
390
401
 
391
402
  - Outputs transferred to a second party, either through internalizeAction or custom means, MUST NOT be assigned to a basket
392
- as this allows them to be spent without your wallet being notified that they are no longer spendable. This is a usage guideline, it is not enforced.
403
+ as this allows them to be spent without your wallet being notified that they are no longer spendable. This is a usage guideline, it is not enforced.
393
404
  - These outputs will NOT be returned by `listOutputs`, as it only returns spendable outputs.
394
405
  - These outputs WILL be returned by `listActions` with the includeOutputs option set to true.
395
406
  - Your wallet will mark any output you include as inputs in your own transactions as spent at the time of transaction creation.
package/README.md CHANGED
@@ -1,43 +1,126 @@
1
- # BSV WALLET TOOLBOX
1
+ # BSV Wallet Toolbox
2
+
3
+ [![Build Status](https://img.shields.io/github/actions/workflow/status/bsv-blockchain/wallet-toolbox/push.yaml?branch=master&label=build)](https://github.com/bsv-blockchain/wallet-toolbox/actions)
4
+ [![npm version](https://img.shields.io/npm/v/@bsv/wallet-toolbox)](https://www.npmjs.com/package/@bsv/wallet-toolbox)
5
+ [![npm downloads](https://img.shields.io/npm/dm/@bsv/wallet-toolbox)](https://www.npmjs.com/package/@bsv/wallet-toolbox)
6
+ [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=bsv-blockchain_wallet-toolbox&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=bsv-blockchain_wallet-toolbox)
7
+ [![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=bsv-blockchain_wallet-toolbox&metric=security_rating)](https://sonarcloud.io/summary/new_code?id=bsv-blockchain_wallet-toolbox)
8
+ [![Reliability Rating](https://sonarcloud.io/api/project_badges/measure?project=bsv-blockchain_wallet-toolbox&metric=reliability_rating)](https://sonarcloud.io/summary/new_code?id=bsv-blockchain_wallet-toolbox)
9
+ [![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=bsv-blockchain_wallet-toolbox&metric=sqale_rating)](https://sonarcloud.io/summary/new_code?id=bsv-blockchain_wallet-toolbox)
10
+ [![Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=bsv-blockchain_wallet-toolbox&metric=vulnerabilities)](https://sonarcloud.io/summary/new_code?id=bsv-blockchain_wallet-toolbox)
11
+ [![Bugs](https://sonarcloud.io/api/project_badges/measure?project=bsv-blockchain_wallet-toolbox&metric=bugs)](https://sonarcloud.io/summary/new_code?id=bsv-blockchain_wallet-toolbox)
12
+ [![CodeQL](https://github.com/bsv-blockchain/wallet-toolbox/actions/workflows/github-code-scanning/codeql/badge.svg)](https://github.com/bsv-blockchain/wallet-toolbox/actions/workflows/github-code-scanning/codeql)
13
+ [![Duplicated Lines (%)](https://sonarcloud.io/api/project_badges/measure?project=bsv-blockchain_wallet-toolbox&metric=duplicated_lines_density)](https://sonarcloud.io/summary/new_code?id=bsv-blockchain_wallet-toolbox)
14
+ [![License](https://img.shields.io/github/license/bsv-blockchain/wallet-toolbox)](./LICENSE.txt)
15
+
16
+ A [BRC-100](https://github.com/bitcoin-sv/BRCs/blob/master/wallet/0100.md) conforming wallet implementation for the BSV blockchain, built on the [BSV SDK](https://bsv-blockchain.github.io/ts-sdk). Provides persistent storage, protocol-based key derivation, transaction monitoring, chain tracking, and signing — everything needed to build wallet-powered applications on BSV.
17
+
18
+ ## Overview
19
+
20
+ The Wallet Toolbox is the reference implementation of the BRC-100 wallet interface. It connects the BSV SDK's cryptographic primitives to real storage backends, network services, and signing flows so that application developers don't have to wire these layers together themselves.
21
+
22
+ ### What's Inside
23
+
24
+ | Module | Description |
25
+ |--------|-------------|
26
+ | **Wallet** | Full BRC-100 wallet — action creation, signing, certificate management, identity discovery, output tracking |
27
+ | **Storage** | Pluggable persistence with three backends: **SQLite/MySQL** (via Knex), **IndexedDB** (browser/mobile), and **remote** (client/server over HTTP) |
28
+ | **Services** | Network layer — ARC transaction broadcasting, chain tracking (Chaintracks), merkle proof verification, UTXO lookups via WhatsOnChain |
29
+ | **Monitor** | Background daemon that watches pending transactions, rebroadcasts failures, handles chain reorganizations, and manages proof acquisition |
30
+ | **Signer** | `WalletSigner` bridges any BRC-100 wallet to the SDK's `Transaction` signing interface |
31
+ | **Key Management** | `PrivilegedKeyManager` for secure key storage with Shamir secret sharing and obfuscation; protocol-based key derivation per BRC-42/43 |
32
+ | **Permissions** | `WalletPermissionsManager` for fine-grained per-app, per-protocol permission control with grouped approval flows |
33
+ | **MockChain** | In-memory blockchain for testing — mock mining, UTXO tracking, and merkle proof generation without a network |
34
+ | **Entropy** | `EntropyCollector` gathers mouse/touch entropy for high-quality randomness in browser environments |
35
+
36
+ ### Packages
37
+
38
+ The toolbox publishes three npm packages from this repo:
39
+
40
+ - **[`@bsv/wallet-toolbox`](https://www.npmjs.com/package/@bsv/wallet-toolbox)** — Full package with all storage backends (SQLite, MySQL, IndexedDB, remote)
41
+ - **[`@bsv/wallet-toolbox-client`](https://www.npmjs.com/package/@bsv/wallet-toolbox-client)** — Browser build; excludes Node-only backends (Knex/SQLite/MySQL)
42
+ - **[`@bsv/wallet-toolbox-mobile`](https://www.npmjs.com/package/@bsv/wallet-toolbox-mobile)** — Mobile build; IndexedDB and remote storage only
43
+
44
+ ## Getting Started
45
+
46
+ ### Installation
47
+
48
+ ```bash
49
+ # Full (Node.js servers, CLIs)
50
+ npm install @bsv/wallet-toolbox
51
+
52
+ # Browser apps
53
+ npm install @bsv/wallet-toolbox-client
54
+
55
+ # React Native / mobile
56
+ npm install @bsv/wallet-toolbox-mobile
57
+ ```
58
+
59
+ ### Quick Example
60
+
61
+ ```typescript
62
+ import { SetupWallet } from '@bsv/wallet-toolbox'
63
+
64
+ // Create a wallet with SQLite storage and default mainnet services
65
+ const wallet = await SetupWallet({
66
+ env: 'main',
67
+ endpointUrl: 'https://your-storage-server.example.com'
68
+ })
69
+
70
+ // Create a transaction
71
+ const result = await wallet.createAction({
72
+ description: 'Send payment',
73
+ outputs: [{
74
+ lockingScript: '76a914...88ac',
75
+ satoshis: 1000,
76
+ outputDescription: 'payment'
77
+ }]
78
+ })
79
+ ```
2
80
 
3
- BSV BLOCKCHAIN | BRC100 Conforming Wallet, Wallet Storage and Wallet Signer Components
4
-
5
- ## Objective
6
-
7
- The BSV Wallet Toolbox builds on the [SDK](https://bsv-blockchain.github.io/ts-sdk).
8
-
9
- It aims to support building sophisticated applications and services on the BSV Blockchain technology stack.
81
+ ## Documentation
10
82
 
11
- By providing interlocking building blocks for persistent storage and protocol based key derivation, it serves as an essential toolbox for developers looking to build on the BSV Blockchain.
83
+ [Full API documentation](https://bsv-blockchain.github.io/wallet-toolbox) is available on GitHub Pages.
12
84
 
13
- ## Documentation
85
+ The codebase has detailed JSDoc annotations throughout — these will surface inline in editors like VS Code.
14
86
 
15
- [The Docs](https://bsv-blockchain.github.io/wallet-toolbox) are available here on Github pages.
87
+ ## Development
16
88
 
17
- The Toolbox is richly documented with code-level annotations. This should show up well within editors like VSCode.
89
+ ```bash
90
+ git clone https://github.com/bsv-blockchain/wallet-toolbox.git
91
+ cd wallet-toolbox
92
+ npm install
93
+ npm run build
94
+ npm test
95
+ ```
18
96
 
19
- ## Contribution Guidelines
97
+ Tests use Jest. Files named `*.man.test.ts` are manual/integration tests excluded from CI — they require network access or long runtimes and are run locally by developers.
20
98
 
21
- We're always looking for contributors to help us improve the SDK. Whether it's bug reports, feature requests, or pull requests - all contributions are welcome.
99
+ ## Contributing
22
100
 
23
- 1. **Fork & Clone**: Fork this repository and clone it to your local machine.
24
- 2. **Set Up**: Run `npm install` to install all dependencies.
25
- 3. **Make Changes**: Create a new branch and make your changes.
26
- 4. **Test**: Ensure all tests pass by running `npm test`.
27
- 5. **Commit**: Commit your changes and push to your fork.
28
- 6. **Pull Request**: Open a pull request from your fork to this repository.
29
- For more details, check the [contribution guidelines](./CONTRIBUTING.md).
101
+ We welcome bug reports, feature requests, and pull requests.
30
102
 
31
- ## Support & Contacts
103
+ 1. Fork and clone the repository
104
+ 2. `npm install`
105
+ 3. Create a feature branch
106
+ 4. Make your changes and ensure `npm test` passes
107
+ 5. Open a pull request
32
108
 
33
- Project Owners: Thomas Giacomo and Darren Kellenschwiler
109
+ See [CONTRIBUTING.md](./CONTRIBUTING.md) for full guidelines.
34
110
 
35
- Development Team Lead: Ty Everett
111
+ ## Contributors
36
112
 
37
- For questions, bug reports, or feature requests, please open an issue on GitHub or contact us directly.
113
+ | | Name | GitHub | Role |
114
+ |---|------|--------|------|
115
+ | | Tone Engel | [@tonesnotes](https://github.com/tonesnotes) | Lead developer, maintainer |
116
+ | | Darren Kellenschwiler | [@sirdeggen](https://github.com/sirdeggen) | Core contributor |
117
+ | | Brayden Langley | [@BraydenLangley](https://github.com/BraydenLangley) | Core contributor |
118
+ | | Ty Everett | [@ty-everett](https://github.com/ty-everett) | Core contributor, reviewer |
119
+ | | Jackie Lu | [@jackielu3](https://github.com/jackielu3) | Contributor |
120
+ | | David Case | [@shruggr](https://github.com/shruggr) | Contributor |
121
+ | | Stephen Thomson | [@Stephen-Thomson](https://github.com/Stephen-Thomson) | Contributor |
122
+ | | Chance Barimbao | [@ChanceBarimbao](https://github.com/ChanceBarimbao) | Contributor |
38
123
 
39
124
  ## License
40
125
 
41
- The license for the code in this repository is the Open BSV License. Refer to [LICENSE.txt](./LICENSE.txt) for the license text.
42
-
43
- Thank you for being a part of the BSV Blockchain Libraries Project. Let's build the future of BSV Blockchain together!
126
+ Released under the [Open BSV License](./LICENSE.txt).
package/docs/client.md CHANGED
@@ -2917,6 +2917,7 @@ export interface GenerateChangeSdkParams {
2917
2917
  changeFirstSatoshis: number;
2918
2918
  changeLockingScriptLength: number;
2919
2919
  changeUnlockingScriptLength: number;
2920
+ maxChangeOutputs?: number;
2920
2921
  randomVals?: number[];
2921
2922
  noLogging?: boolean;
2922
2923
  log?: string;
@@ -2963,6 +2964,19 @@ For P2PKH template, 107 bytes
2963
2964
  changeUnlockingScriptLength: number
2964
2965
  ```
2965
2966
 
2967
+ ###### Property maxChangeOutputs
2968
+
2969
+ Maximum number of change outputs to create in this transaction.
2970
+ Defaults to `maxChangeOutputsPerTransaction` (8).
2971
+
2972
+ Callers may override this to allow more outputs in special cases (e.g.
2973
+ consolidation transactions) or fewer outputs when a compact transaction
2974
+ is preferred.
2975
+
2976
+ ```ts
2977
+ maxChangeOutputs?: number
2978
+ ```
2979
+
2966
2980
  ###### Property targetNetCount
2967
2981
 
2968
2982
  Target for number of new change outputs added minus number of funding change outputs consumed.
@@ -19528,20 +19542,17 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
19528
19542
  ---
19529
19543
  #### Variables
19530
19544
 
19531
- | | |
19532
- | --- | --- |
19533
- | [DEFAULT_PROFILE_ID](#variable-default_profile_id) | [outputColumnsWithoutLockingScript](#variable-outputcolumnswithoutlockingscript) |
19534
- | [DEFAULT_SETTINGS](#variable-default_settings) | [parseResults](#variable-parseresults) |
19535
- | [PBKDF2_NUM_ROUNDS](#variable-pbkdf2_num_rounds) | [queryOverlay](#variable-queryoverlay) |
19536
- | [ProvenTxReqNonTerminalStatus](#variable-proventxreqnonterminalstatus) | [specOpFailedActions](#variable-specopfailedactions) |
19537
- | [ProvenTxReqTerminalStatus](#variable-proventxreqterminalstatus) | [specOpInvalidChange](#variable-specopinvalidchange) |
19538
- | [TESTNET_DEFAULT_SETTINGS](#variable-testnet_default_settings) | [specOpNoSendActions](#variable-specopnosendactions) |
19539
- | [aggregateActionResults](#variable-aggregateactionresults) | [specOpSetWalletChangeParams](#variable-specopsetwalletchangeparams) |
19540
- | [brc29ProtocolID](#variable-brc29protocolid) | [specOpThrowReviewActions](#variable-specopthrowreviewactions) |
19541
- | [dirtyHashes](#variable-dirtyhashes) | [specOpWalletBalance](#variable-specopwalletbalance) |
19542
- | [getLabelToSpecOp](#variable-getlabeltospecop) | [transactionColumnsWithoutRawTx](#variable-transactioncolumnswithoutrawtx) |
19543
- | [logger](#variable-logger) | [transformVerifiableCertificatesWithTrust](#variable-transformverifiablecertificateswithtrust) |
19544
- | [maxPossibleSatoshis](#variable-maxpossiblesatoshis) | [validBulkHeaderFiles](#variable-validbulkheaderfiles) |
19545
+ | | | |
19546
+ | --- | --- | --- |
19547
+ | [DEFAULT_PROFILE_ID](#variable-default_profile_id) | [getLabelToSpecOp](#variable-getlabeltospecop) | [specOpNoSendActions](#variable-specopnosendactions) |
19548
+ | [DEFAULT_SETTINGS](#variable-default_settings) | [logger](#variable-logger) | [specOpSetWalletChangeParams](#variable-specopsetwalletchangeparams) |
19549
+ | [PBKDF2_NUM_ROUNDS](#variable-pbkdf2_num_rounds) | [maxChangeOutputsPerTransaction](#variable-maxchangeoutputspertransaction) | [specOpThrowReviewActions](#variable-specopthrowreviewactions) |
19550
+ | [ProvenTxReqNonTerminalStatus](#variable-proventxreqnonterminalstatus) | [maxPossibleSatoshis](#variable-maxpossiblesatoshis) | [specOpWalletBalance](#variable-specopwalletbalance) |
19551
+ | [ProvenTxReqTerminalStatus](#variable-proventxreqterminalstatus) | [outputColumnsWithoutLockingScript](#variable-outputcolumnswithoutlockingscript) | [transactionColumnsWithoutRawTx](#variable-transactioncolumnswithoutrawtx) |
19552
+ | [TESTNET_DEFAULT_SETTINGS](#variable-testnet_default_settings) | [parseResults](#variable-parseresults) | [transformVerifiableCertificatesWithTrust](#variable-transformverifiablecertificateswithtrust) |
19553
+ | [aggregateActionResults](#variable-aggregateactionresults) | [queryOverlay](#variable-queryoverlay) | [validBulkHeaderFiles](#variable-validbulkheaderfiles) |
19554
+ | [brc29ProtocolID](#variable-brc29protocolid) | [specOpFailedActions](#variable-specopfailedactions) | |
19555
+ | [dirtyHashes](#variable-dirtyhashes) | [specOpInvalidChange](#variable-specopinvalidchange) | |
19545
19556
 
19546
19557
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
19547
19558
 
@@ -19777,6 +19788,15 @@ logger = (message: string, ...optionalParams: any[]): void => {
19777
19788
 
19778
19789
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
19779
19790
 
19791
+ ---
19792
+ ##### Variable: maxChangeOutputsPerTransaction
19793
+
19794
+ ```ts
19795
+ maxChangeOutputsPerTransaction = 8
19796
+ ```
19797
+
19798
+ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
19799
+
19780
19800
  ---
19781
19801
  ##### Variable: maxPossibleSatoshis
19782
19802
 
package/docs/storage.md CHANGED
@@ -176,6 +176,7 @@ export interface GenerateChangeSdkParams {
176
176
  changeFirstSatoshis: number;
177
177
  changeLockingScriptLength: number;
178
178
  changeUnlockingScriptLength: number;
179
+ maxChangeOutputs?: number;
179
180
  randomVals?: number[];
180
181
  noLogging?: boolean;
181
182
  log?: string;
@@ -222,6 +223,19 @@ For P2PKH template, 107 bytes
222
223
  changeUnlockingScriptLength: number
223
224
  ```
224
225
 
226
+ ###### Property maxChangeOutputs
227
+
228
+ Maximum number of change outputs to create in this transaction.
229
+ Defaults to `maxChangeOutputsPerTransaction` (8).
230
+
231
+ Callers may override this to allow more outputs in special cases (e.g.
232
+ consolidation transactions) or fewer outputs when a compact transaction
233
+ is preferred.
234
+
235
+ ```ts
236
+ maxChangeOutputs?: number
237
+ ```
238
+
225
239
  ###### Property targetNetCount
226
240
 
227
241
  Target for number of new change outputs added minus number of funding change outputs consumed.
@@ -5142,6 +5156,7 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
5142
5156
  | |
5143
5157
  | --- |
5144
5158
  | [getLabelToSpecOp](#variable-getlabeltospecop) |
5159
+ | [maxChangeOutputsPerTransaction](#variable-maxchangeoutputspertransaction) |
5145
5160
  | [maxPossibleSatoshis](#variable-maxpossiblesatoshis) |
5146
5161
  | [outputColumnsWithoutLockingScript](#variable-outputcolumnswithoutlockingscript) |
5147
5162
  | [transactionColumnsWithoutRawTx](#variable-transactioncolumnswithoutrawtx) |
@@ -5192,6 +5207,15 @@ See also: [AuthId](./client.md#interface-authid), [ListActionsSpecOp](./storage.
5192
5207
 
5193
5208
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
5194
5209
 
5210
+ ---
5211
+ ##### Variable: maxChangeOutputsPerTransaction
5212
+
5213
+ ```ts
5214
+ maxChangeOutputsPerTransaction = 8
5215
+ ```
5216
+
5217
+ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
5218
+
5195
5219
  ---
5196
5220
  ##### Variable: maxPossibleSatoshis
5197
5221
 
package/docs/wallet.md CHANGED
@@ -2917,6 +2917,7 @@ export interface GenerateChangeSdkParams {
2917
2917
  changeFirstSatoshis: number;
2918
2918
  changeLockingScriptLength: number;
2919
2919
  changeUnlockingScriptLength: number;
2920
+ maxChangeOutputs?: number;
2920
2921
  randomVals?: number[];
2921
2922
  noLogging?: boolean;
2922
2923
  log?: string;
@@ -2963,6 +2964,19 @@ For P2PKH template, 107 bytes
2963
2964
  changeUnlockingScriptLength: number
2964
2965
  ```
2965
2966
 
2967
+ ###### Property maxChangeOutputs
2968
+
2969
+ Maximum number of change outputs to create in this transaction.
2970
+ Defaults to `maxChangeOutputsPerTransaction` (8).
2971
+
2972
+ Callers may override this to allow more outputs in special cases (e.g.
2973
+ consolidation transactions) or fewer outputs when a compact transaction
2974
+ is preferred.
2975
+
2976
+ ```ts
2977
+ maxChangeOutputs?: number
2978
+ ```
2979
+
2966
2980
  ###### Property targetNetCount
2967
2981
 
2968
2982
  Target for number of new change outputs added minus number of funding change outputs consumed.
@@ -19528,20 +19542,17 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
19528
19542
  ---
19529
19543
  #### Variables
19530
19544
 
19531
- | | |
19532
- | --- | --- |
19533
- | [DEFAULT_PROFILE_ID](#variable-default_profile_id) | [outputColumnsWithoutLockingScript](#variable-outputcolumnswithoutlockingscript) |
19534
- | [DEFAULT_SETTINGS](#variable-default_settings) | [parseResults](#variable-parseresults) |
19535
- | [PBKDF2_NUM_ROUNDS](#variable-pbkdf2_num_rounds) | [queryOverlay](#variable-queryoverlay) |
19536
- | [ProvenTxReqNonTerminalStatus](#variable-proventxreqnonterminalstatus) | [specOpFailedActions](#variable-specopfailedactions) |
19537
- | [ProvenTxReqTerminalStatus](#variable-proventxreqterminalstatus) | [specOpInvalidChange](#variable-specopinvalidchange) |
19538
- | [TESTNET_DEFAULT_SETTINGS](#variable-testnet_default_settings) | [specOpNoSendActions](#variable-specopnosendactions) |
19539
- | [aggregateActionResults](#variable-aggregateactionresults) | [specOpSetWalletChangeParams](#variable-specopsetwalletchangeparams) |
19540
- | [brc29ProtocolID](#variable-brc29protocolid) | [specOpThrowReviewActions](#variable-specopthrowreviewactions) |
19541
- | [dirtyHashes](#variable-dirtyhashes) | [specOpWalletBalance](#variable-specopwalletbalance) |
19542
- | [getLabelToSpecOp](#variable-getlabeltospecop) | [transactionColumnsWithoutRawTx](#variable-transactioncolumnswithoutrawtx) |
19543
- | [logger](#variable-logger) | [transformVerifiableCertificatesWithTrust](#variable-transformverifiablecertificateswithtrust) |
19544
- | [maxPossibleSatoshis](#variable-maxpossiblesatoshis) | [validBulkHeaderFiles](#variable-validbulkheaderfiles) |
19545
+ | | | |
19546
+ | --- | --- | --- |
19547
+ | [DEFAULT_PROFILE_ID](#variable-default_profile_id) | [getLabelToSpecOp](#variable-getlabeltospecop) | [specOpNoSendActions](#variable-specopnosendactions) |
19548
+ | [DEFAULT_SETTINGS](#variable-default_settings) | [logger](#variable-logger) | [specOpSetWalletChangeParams](#variable-specopsetwalletchangeparams) |
19549
+ | [PBKDF2_NUM_ROUNDS](#variable-pbkdf2_num_rounds) | [maxChangeOutputsPerTransaction](#variable-maxchangeoutputspertransaction) | [specOpThrowReviewActions](#variable-specopthrowreviewactions) |
19550
+ | [ProvenTxReqNonTerminalStatus](#variable-proventxreqnonterminalstatus) | [maxPossibleSatoshis](#variable-maxpossiblesatoshis) | [specOpWalletBalance](#variable-specopwalletbalance) |
19551
+ | [ProvenTxReqTerminalStatus](#variable-proventxreqterminalstatus) | [outputColumnsWithoutLockingScript](#variable-outputcolumnswithoutlockingscript) | [transactionColumnsWithoutRawTx](#variable-transactioncolumnswithoutrawtx) |
19552
+ | [TESTNET_DEFAULT_SETTINGS](#variable-testnet_default_settings) | [parseResults](#variable-parseresults) | [transformVerifiableCertificatesWithTrust](#variable-transformverifiablecertificateswithtrust) |
19553
+ | [aggregateActionResults](#variable-aggregateactionresults) | [queryOverlay](#variable-queryoverlay) | [validBulkHeaderFiles](#variable-validbulkheaderfiles) |
19554
+ | [brc29ProtocolID](#variable-brc29protocolid) | [specOpFailedActions](#variable-specopfailedactions) | |
19555
+ | [dirtyHashes](#variable-dirtyhashes) | [specOpInvalidChange](#variable-specopinvalidchange) | |
19545
19556
 
19546
19557
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
19547
19558
 
@@ -19777,6 +19788,15 @@ logger = (message: string, ...optionalParams: any[]): void => {
19777
19788
 
19778
19789
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
19779
19790
 
19791
+ ---
19792
+ ##### Variable: maxChangeOutputsPerTransaction
19793
+
19794
+ ```ts
19795
+ maxChangeOutputsPerTransaction = 8
19796
+ ```
19797
+
19798
+ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
19799
+
19780
19800
  ---
19781
19801
  ##### Variable: maxPossibleSatoshis
19782
19802
 
package/out/src/Wallet.js CHANGED
@@ -379,7 +379,7 @@ class Wallet {
379
379
  trustSettings = settings.trustSettings;
380
380
  this._trustSettingsCache = { trustSettings, expiresAt: now + TTL_MS };
381
381
  }
382
- const certifiers = trustSettings.trustedCertifiers.map(c => c.identityKey).sort();
382
+ const certifiers = trustSettings.trustedCertifiers.map(c => c.identityKey).sort((a, b) => a.localeCompare(b));
383
383
  // --- queryOverlay cache (2 minutes) ---
384
384
  const cacheKey = JSON.stringify({
385
385
  fn: 'discoverByIdentityKey',
@@ -411,12 +411,12 @@ class Wallet {
411
411
  trustSettings = settings.trustSettings;
412
412
  this._trustSettingsCache = { trustSettings, expiresAt: now + TTL_MS };
413
413
  }
414
- const certifiers = trustSettings.trustedCertifiers.map(c => c.identityKey).sort();
414
+ const certifiers = trustSettings.trustedCertifiers.map(c => c.identityKey).sort((a, b) => a.localeCompare(b));
415
415
  // Normalize attributes for a stable cache key.
416
416
  // If attributes is an object, sort its top-level keys; if it's an array, sort a shallow copy.
417
417
  let attributesKey = args.attributes;
418
418
  if (args.attributes && typeof args.attributes === 'object') {
419
- const keys = Object.keys(args.attributes).sort();
419
+ const keys = Object.keys(args.attributes).sort((a, b) => a.localeCompare(b));
420
420
  attributesKey = JSON.stringify(args.attributes, keys);
421
421
  }
422
422
  // --- queryOverlay cache (2 minutes) ---
@@ -1 +1 @@
1
- {"version":3,"file":"Wallet.js","sourceRoot":"","sources":["../../src/Wallet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Wallet.js","sourceRoot":"","sources":["../../src/Wallet.ts"],"names":[],"mappings":"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"}