@bsv/wallet-toolbox 1.6.23 → 1.6.25

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 (206) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/docs/client.md +298 -167
  3. package/docs/monitor.md +126 -23
  4. package/docs/services.md +86 -37
  5. package/docs/wallet.md +298 -167
  6. package/mobile/out/src/WalletPermissionsManager.d.ts +3 -0
  7. package/mobile/out/src/WalletPermissionsManager.d.ts.map +1 -1
  8. package/mobile/out/src/WalletPermissionsManager.js +185 -43
  9. package/mobile/out/src/WalletPermissionsManager.js.map +1 -1
  10. package/mobile/out/src/index.mobile.d.ts +1 -1
  11. package/mobile/out/src/index.mobile.js +1 -1
  12. package/mobile/out/src/monitor/Monitor.d.ts +32 -8
  13. package/mobile/out/src/monitor/Monitor.d.ts.map +1 -1
  14. package/mobile/out/src/monitor/Monitor.js +59 -28
  15. package/mobile/out/src/monitor/Monitor.js.map +1 -1
  16. package/mobile/out/src/monitor/tasks/TaskCheckNoSends.js +2 -1
  17. package/mobile/out/src/monitor/tasks/TaskCheckNoSends.js.map +1 -1
  18. package/mobile/out/src/monitor/tasks/TaskClock.js +3 -2
  19. package/mobile/out/src/monitor/tasks/TaskClock.js.map +1 -1
  20. package/mobile/out/src/monitor/tasks/TaskMonitorCallHistory.js +2 -1
  21. package/mobile/out/src/monitor/tasks/TaskMonitorCallHistory.js.map +1 -1
  22. package/mobile/out/src/monitor/tasks/TaskNewHeader.js +2 -1
  23. package/mobile/out/src/monitor/tasks/TaskNewHeader.js.map +1 -1
  24. package/mobile/out/src/monitor/tasks/TaskReorg.d.ts +47 -0
  25. package/mobile/out/src/monitor/tasks/TaskReorg.d.ts.map +1 -0
  26. package/mobile/out/src/monitor/tasks/TaskReorg.js +135 -0
  27. package/mobile/out/src/monitor/tasks/TaskReorg.js.map +1 -0
  28. package/mobile/out/src/monitor/tasks/TaskSendWaiting.js +2 -1
  29. package/mobile/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
  30. package/mobile/out/src/monitor/tasks/TaskUnFail.js +2 -1
  31. package/mobile/out/src/monitor/tasks/TaskUnFail.js.map +1 -1
  32. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts +1 -1
  33. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts.map +1 -1
  34. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts +4 -0
  35. package/mobile/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts.map +1 -1
  36. package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
  37. package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.js +3 -1
  38. package/mobile/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
  39. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts.map +1 -1
  40. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js +4 -1
  41. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js.map +1 -1
  42. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
  43. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +3 -1
  44. package/mobile/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
  45. package/mobile/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.d.ts +5 -0
  46. package/mobile/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.d.ts.map +1 -0
  47. package/mobile/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.js +68 -0
  48. package/mobile/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.js.map +1 -0
  49. package/mobile/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts +2 -1
  50. package/mobile/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts.map +1 -1
  51. package/mobile/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js +59 -15
  52. package/mobile/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js.map +1 -1
  53. package/mobile/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts +1 -1
  54. package/mobile/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts.map +1 -1
  55. package/mobile/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js +4 -61
  56. package/mobile/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js.map +1 -1
  57. package/mobile/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.d.ts +13 -0
  58. package/mobile/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.d.ts.map +1 -0
  59. package/mobile/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js +27 -0
  60. package/mobile/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js.map +1 -0
  61. package/mobile/out/src/services/chaintracker/chaintracks/index.client.d.ts +2 -28
  62. package/mobile/out/src/services/chaintracker/chaintracks/index.client.d.ts.map +1 -1
  63. package/mobile/out/src/services/chaintracker/chaintracks/index.client.js +2 -50
  64. package/mobile/out/src/services/chaintracker/chaintracks/index.client.js.map +1 -1
  65. package/mobile/out/src/services/chaintracker/chaintracks/index.mobile.d.ts +30 -0
  66. package/mobile/out/src/services/chaintracker/chaintracks/index.mobile.d.ts.map +1 -0
  67. package/mobile/out/src/services/chaintracker/chaintracks/index.mobile.js +68 -0
  68. package/mobile/out/src/services/chaintracker/chaintracks/index.mobile.js.map +1 -0
  69. package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js +11 -11
  70. package/mobile/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
  71. package/mobile/package-lock.json +7 -6
  72. package/mobile/package.json +2 -2
  73. package/out/src/WalletPermissionsManager.d.ts +3 -0
  74. package/out/src/WalletPermissionsManager.d.ts.map +1 -1
  75. package/out/src/WalletPermissionsManager.js +185 -43
  76. package/out/src/WalletPermissionsManager.js.map +1 -1
  77. package/out/src/index.mobile.d.ts +1 -1
  78. package/out/src/index.mobile.js +1 -1
  79. package/out/src/monitor/Monitor.d.ts +32 -8
  80. package/out/src/monitor/Monitor.d.ts.map +1 -1
  81. package/out/src/monitor/Monitor.js +59 -28
  82. package/out/src/monitor/Monitor.js.map +1 -1
  83. package/out/src/monitor/MonitorDaemon.d.ts +2 -0
  84. package/out/src/monitor/MonitorDaemon.d.ts.map +1 -1
  85. package/out/src/monitor/MonitorDaemon.js +3 -1
  86. package/out/src/monitor/MonitorDaemon.js.map +1 -1
  87. package/out/src/monitor/__test/MonitorDaemon.man.test.js +30 -39
  88. package/out/src/monitor/__test/MonitorDaemon.man.test.js.map +1 -1
  89. package/out/src/monitor/tasks/TaskCheckNoSends.js +2 -1
  90. package/out/src/monitor/tasks/TaskCheckNoSends.js.map +1 -1
  91. package/out/src/monitor/tasks/TaskClock.js +3 -2
  92. package/out/src/monitor/tasks/TaskClock.js.map +1 -1
  93. package/out/src/monitor/tasks/TaskMonitorCallHistory.js +2 -1
  94. package/out/src/monitor/tasks/TaskMonitorCallHistory.js.map +1 -1
  95. package/out/src/monitor/tasks/TaskNewHeader.js +2 -1
  96. package/out/src/monitor/tasks/TaskNewHeader.js.map +1 -1
  97. package/out/src/monitor/tasks/TaskReorg.d.ts +47 -0
  98. package/out/src/monitor/tasks/TaskReorg.d.ts.map +1 -0
  99. package/out/src/monitor/tasks/TaskReorg.js +135 -0
  100. package/out/src/monitor/tasks/TaskReorg.js.map +1 -0
  101. package/out/src/monitor/tasks/TaskSendWaiting.js +2 -1
  102. package/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
  103. package/out/src/monitor/tasks/TaskUnFail.js +2 -1
  104. package/out/src/monitor/tasks/TaskUnFail.js.map +1 -1
  105. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts +1 -1
  106. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts.map +1 -1
  107. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts +4 -0
  108. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts.map +1 -1
  109. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
  110. package/out/src/services/chaintracker/chaintracks/Chaintracks.js +3 -1
  111. package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
  112. package/out/src/services/chaintracker/chaintracks/ChaintracksService.js +1 -1
  113. package/out/src/services/chaintracker/chaintracks/ChaintracksService.js.map +1 -1
  114. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts.map +1 -1
  115. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js +4 -1
  116. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js.map +1 -1
  117. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts.map +1 -1
  118. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js +3 -1
  119. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js.map +1 -1
  120. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
  121. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +3 -1
  122. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
  123. package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js +1 -1
  124. package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js.map +1 -1
  125. package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.d.ts +5 -0
  126. package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.d.ts.map +1 -0
  127. package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.js +68 -0
  128. package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.js.map +1 -0
  129. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.d.ts +2 -1
  130. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.d.ts.map +1 -1
  131. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.js +66 -22
  132. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.js.map +1 -1
  133. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts +2 -1
  134. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts.map +1 -1
  135. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js +59 -15
  136. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js.map +1 -1
  137. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts +1 -1
  138. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts.map +1 -1
  139. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js +4 -61
  140. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js.map +1 -1
  141. package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.d.ts +14 -0
  142. package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.d.ts.map +1 -0
  143. package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.js +27 -0
  144. package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.js.map +1 -0
  145. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.d.ts +13 -0
  146. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.d.ts.map +1 -0
  147. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js +27 -0
  148. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js.map +1 -0
  149. package/out/src/services/chaintracker/chaintracks/index.all.d.ts +1 -0
  150. package/out/src/services/chaintracker/chaintracks/index.all.d.ts.map +1 -1
  151. package/out/src/services/chaintracker/chaintracks/index.all.js +1 -0
  152. package/out/src/services/chaintracker/chaintracks/index.all.js.map +1 -1
  153. package/out/src/services/chaintracker/chaintracks/index.client.d.ts +2 -28
  154. package/out/src/services/chaintracker/chaintracks/index.client.d.ts.map +1 -1
  155. package/out/src/services/chaintracker/chaintracks/index.client.js +2 -50
  156. package/out/src/services/chaintracker/chaintracks/index.client.js.map +1 -1
  157. package/out/src/services/chaintracker/chaintracks/index.mobile.d.ts +30 -0
  158. package/out/src/services/chaintracker/chaintracks/index.mobile.d.ts.map +1 -0
  159. package/out/src/services/chaintracker/chaintracks/index.mobile.js +68 -0
  160. package/out/src/services/chaintracker/chaintracks/index.mobile.js.map +1 -0
  161. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js +11 -11
  162. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
  163. package/out/src/services/chaintracker/index.mobile.d.ts +4 -0
  164. package/out/src/services/chaintracker/index.mobile.d.ts.map +1 -0
  165. package/out/src/services/chaintracker/index.mobile.js +20 -0
  166. package/out/src/services/chaintracker/index.mobile.js.map +1 -0
  167. package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
  168. package/out/src/storage/schema/KnexMigrations.js +12 -0
  169. package/out/src/storage/schema/KnexMigrations.js.map +1 -1
  170. package/out/test/monitor/Monitor.test.js +32 -29
  171. package/out/test/monitor/Monitor.test.js.map +1 -1
  172. package/out/tsconfig.all.tsbuildinfo +1 -1
  173. package/package.json +2 -2
  174. package/src/WalletPermissionsManager.ts +245 -57
  175. package/src/index.mobile.ts +1 -1
  176. package/src/monitor/Monitor.ts +94 -29
  177. package/src/monitor/MonitorDaemon.ts +9 -1
  178. package/src/monitor/__test/MonitorDaemon.man.test.ts +35 -7
  179. package/src/monitor/tasks/TaskCheckNoSends.ts +1 -1
  180. package/src/monitor/tasks/TaskClock.ts +2 -2
  181. package/src/monitor/tasks/TaskMonitorCallHistory.ts +1 -1
  182. package/src/monitor/tasks/TaskNewHeader.ts +1 -1
  183. package/src/monitor/tasks/TaskReorg.ts +139 -0
  184. package/src/monitor/tasks/TaskSendWaiting.ts +3 -3
  185. package/src/monitor/tasks/TaskUnFail.ts +1 -1
  186. package/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.ts +6 -1
  187. package/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.ts +4 -0
  188. package/src/services/chaintracker/chaintracks/Chaintracks.ts +3 -1
  189. package/src/services/chaintracker/chaintracks/ChaintracksService.ts +2 -2
  190. package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.ts +4 -1
  191. package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.ts +4 -12
  192. package/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.ts +3 -1
  193. package/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.ts +2 -2
  194. package/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.ts +92 -0
  195. package/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.ts +84 -25
  196. package/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.ts +79 -17
  197. package/src/services/chaintracker/chaintracks/createIdbChaintracks.ts +11 -64
  198. package/src/services/chaintracker/chaintracks/createKnexChaintracks.ts +65 -0
  199. package/src/services/chaintracker/chaintracks/createNoDbChaintracks.ts +60 -0
  200. package/src/services/chaintracker/chaintracks/index.all.ts +1 -0
  201. package/src/services/chaintracker/chaintracks/index.client.ts +2 -35
  202. package/src/services/chaintracker/chaintracks/index.mobile.ts +37 -0
  203. package/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.ts +11 -11
  204. package/src/services/chaintracker/index.mobile.ts +4 -0
  205. package/src/storage/schema/KnexMigrations.ts +13 -0
  206. package/test/monitor/Monitor.test.ts +21 -16
@@ -464,6 +464,8 @@ export declare class WalletPermissionsManager implements WalletInterface {
464
464
  private isTokenExpired;
465
465
  /** Looks for a DPACP permission token matching origin/domain, privileged, protocol, cpty. */
466
466
  private findProtocolToken;
467
+ /** Finds ALL DPACP permission tokens matching origin/domain, privileged, protocol, cpty. Never filters by expiry. */
468
+ private findAllProtocolTokens;
467
469
  /** Looks for a DBAP token matching (originator, basket). */
468
470
  private findBasketToken;
469
471
  /** Looks for a DCAP token matching (origin, privileged, verifier, certType, fields subset). */
@@ -490,6 +492,7 @@ export declare class WalletPermissionsManager implements WalletInterface {
490
492
  * @param amount For DSAP, the authorized spending limit
491
493
  */
492
494
  private createPermissionOnChain;
495
+ private coalescePermissionTokens;
493
496
  /**
494
497
  * Renews a permission token by spending the old token as input and creating a new token output.
495
498
  * This invalidates the old token and replaces it with a new one.
@@ -1 +1 @@
1
- {"version":3,"file":"WalletPermissionsManager.d.ts","sourceRoot":"","sources":["../../../src/WalletPermissionsManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WalletPermissionsManager.d.ts","sourceRoot":"","sources":["../../../src/WalletPermissionsManager.ts"],"names":[],"mappings":"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"}
@@ -286,14 +286,28 @@ class WalletPermissionsManager {
286
286
  params.granted.spendingAuthorization.amount);
287
287
  }
288
288
  for (const p of params.granted.protocolPermissions || []) {
289
- await this.createPermissionOnChain({
290
- type: 'protocol',
291
- originator,
292
- privileged: false, // No privileged protocols allowed in groups for added security.
293
- protocolID: p.protocolID,
294
- counterparty: p.counterparty || 'self',
295
- reason: p.description
296
- }, expiry);
289
+ const token = await this.findProtocolToken(originator, false, // No privileged protocols allowed in groups for added security.
290
+ p.protocolID, p.counterparty || 'self', true);
291
+ if (token) {
292
+ await this.renewPermissionOnChain(token, {
293
+ type: 'protocol',
294
+ originator,
295
+ privileged: false, // No privileged protocols allowed in groups for added security.
296
+ protocolID: p.protocolID,
297
+ counterparty: p.counterparty || 'self',
298
+ reason: p.description
299
+ }, expiry);
300
+ }
301
+ else {
302
+ await this.createPermissionOnChain({
303
+ type: 'protocol',
304
+ originator,
305
+ privileged: false, // No privileged protocols allowed in groups for added security.
306
+ protocolID: p.protocolID,
307
+ counterparty: p.counterparty || 'self',
308
+ reason: p.description
309
+ }, expiry);
310
+ }
297
311
  }
298
312
  for (const b of params.granted.basketAccess || []) {
299
313
  await this.createPermissionOnChain({ type: 'basket', originator, basket: b.basket, reason: b.description }, expiry);
@@ -808,6 +822,69 @@ class WalletPermissionsManager {
808
822
  }
809
823
  return undefined;
810
824
  }
825
+ /** Finds ALL DPACP permission tokens matching origin/domain, privileged, protocol, cpty. Never filters by expiry. */
826
+ async findAllProtocolTokens(originator, privileged, protocolID, counterparty) {
827
+ const [secLevel, protoName] = protocolID;
828
+ const tags = [
829
+ `originator ${originator}`,
830
+ `privileged ${!!privileged}`,
831
+ `protocolName ${protoName}`,
832
+ `protocolSecurityLevel ${secLevel}`
833
+ ];
834
+ if (secLevel === 2) {
835
+ tags.push(`counterparty ${counterparty}`);
836
+ }
837
+ const result = await this.underlying.listOutputs({
838
+ basket: BASKET_MAP.protocol,
839
+ tags,
840
+ tagQueryMode: 'all',
841
+ include: 'entire transactions'
842
+ }, this.adminOriginator);
843
+ const matches = [];
844
+ for (const out of result.outputs) {
845
+ const [txid, outputIndexStr] = out.outpoint.split('.');
846
+ const tx = sdk_1.Transaction.fromBEEF(result.BEEF, txid);
847
+ const vout = Number(outputIndexStr);
848
+ const dec = sdk_1.PushDrop.decode(tx.outputs[vout].lockingScript);
849
+ if (!dec || !dec.fields || dec.fields.length < 6)
850
+ continue;
851
+ const domainRaw = dec.fields[0];
852
+ const expiryRaw = dec.fields[1];
853
+ const privRaw = dec.fields[2];
854
+ const secLevelRaw = dec.fields[3];
855
+ const protoNameRaw = dec.fields[4];
856
+ const counterpartyRaw = dec.fields[5];
857
+ // Decrypt all fields
858
+ const domainDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(domainRaw));
859
+ const expiryDecoded = parseInt(sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(expiryRaw)), 10);
860
+ const privDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(privRaw)) === 'true';
861
+ const secLevelDecoded = parseInt(sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(secLevelRaw)), 10);
862
+ const protoNameDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(protoNameRaw));
863
+ const cptyDecoded = sdk_1.Utils.toUTF8(await this.decryptPermissionTokenField(counterpartyRaw));
864
+ // Strict attribute match; NO expiry filtering
865
+ if (domainDecoded !== originator ||
866
+ privDecoded !== !!privileged ||
867
+ secLevelDecoded !== secLevel ||
868
+ protoNameDecoded !== protoName ||
869
+ (secLevelDecoded === 2 && cptyDecoded !== counterparty)) {
870
+ continue;
871
+ }
872
+ matches.push({
873
+ tx: tx.toBEEF(),
874
+ txid,
875
+ outputIndex: vout,
876
+ outputScript: tx.outputs[vout].lockingScript.toHex(),
877
+ satoshis: out.satoshis,
878
+ originator,
879
+ privileged,
880
+ protocol: protoName,
881
+ securityLevel: secLevel,
882
+ expiry: expiryDecoded,
883
+ counterparty: cptyDecoded
884
+ });
885
+ }
886
+ return matches;
887
+ }
811
888
  /** Looks for a DBAP token matching (originator, basket). */
812
889
  async findBasketToken(originator, basket, includeExpired) {
813
890
  const result = await this.underlying.listOutputs({
@@ -993,6 +1070,57 @@ class WalletPermissionsManager {
993
1070
  }
994
1071
  }, this.adminOriginator);
995
1072
  }
1073
+ async coalescePermissionTokens(oldTokens, newScript, opts) {
1074
+ var _a;
1075
+ if (!(oldTokens === null || oldTokens === void 0 ? void 0 : oldTokens.length))
1076
+ throw new Error('No permission tokens to coalesce');
1077
+ if (oldTokens.length < 2)
1078
+ throw new Error('Need at least 2 tokens to coalesce');
1079
+ // 1) Create a signable action with N inputs and a single renewed output
1080
+ const { signableTransaction } = await this.createAction({
1081
+ description: (_a = opts === null || opts === void 0 ? void 0 : opts.description) !== null && _a !== void 0 ? _a : `Coalesce ${oldTokens.length} permission tokens`,
1082
+ inputs: oldTokens.map((t, i) => ({
1083
+ outpoint: `${t.txid}.${t.outputIndex}`,
1084
+ unlockingScriptLength: 74,
1085
+ inputDescription: `Consume permission token #${i + 1}`
1086
+ })),
1087
+ outputs: [
1088
+ {
1089
+ lockingScript: newScript.toHex(),
1090
+ satoshis: 1,
1091
+ outputDescription: 'Renewed permission token',
1092
+ ...((opts === null || opts === void 0 ? void 0 : opts.basket) ? { basket: opts.basket } : {}),
1093
+ ...((opts === null || opts === void 0 ? void 0 : opts.tags) ? { tags: opts.tags } : {})
1094
+ }
1095
+ ],
1096
+ options: {
1097
+ acceptDelayedBroadcast: false,
1098
+ randomizeOutputs: false,
1099
+ signAndProcess: false
1100
+ }
1101
+ }, this.adminOriginator);
1102
+ if (!(signableTransaction === null || signableTransaction === void 0 ? void 0 : signableTransaction.reference) || !signableTransaction.tx) {
1103
+ throw new Error('Failed to create signable transaction');
1104
+ }
1105
+ // 2) Sign each input
1106
+ const partialTx = sdk_1.Transaction.fromAtomicBEEF(signableTransaction.tx);
1107
+ const pushdrop = new sdk_1.PushDrop(this.underlying);
1108
+ const unlocker = pushdrop.unlock(WalletPermissionsManager.PERM_TOKEN_ENCRYPTION_PROTOCOL, '1', 'self');
1109
+ const spends = {};
1110
+ for (let i = 0; i < oldTokens.length; i++) {
1111
+ // The signable transaction already contains the necessary prevout context
1112
+ const unlockingScript = await unlocker.sign(partialTx, i);
1113
+ spends[i] = { unlockingScript: unlockingScript.toHex() };
1114
+ }
1115
+ // 3) Finalize the action
1116
+ const { txid } = await this.underlying.signAction({
1117
+ reference: signableTransaction.reference,
1118
+ spends
1119
+ });
1120
+ if (!txid)
1121
+ throw new Error('Failed to finalize coalescing transaction');
1122
+ return txid;
1123
+ }
996
1124
  /**
997
1125
  * Renews a permission token by spending the old token as input and creating a new token output.
998
1126
  * This invalidates the old token and replaces it with a new one.
@@ -1008,43 +1136,57 @@ class WalletPermissionsManager {
1008
1136
  // 2) new script
1009
1137
  const newScript = await new sdk_1.PushDrop(this.underlying).lock(newFields, WalletPermissionsManager.PERM_TOKEN_ENCRYPTION_PROTOCOL, '1', 'self', true, true);
1010
1138
  const tags = this.buildTagsForRequest(r);
1011
- // 3) For BRC-100, we do a "createAction" with a partial input referencing oldToken
1012
- // plus a single new output. We'll hydrate the template, then signAction for the wallet to finalize.
1013
- const oldOutpoint = `${oldToken.txid}.${oldToken.outputIndex}`;
1014
- const { signableTransaction } = await this.createAction({
1015
- description: `Renew ${r.type} permission`,
1016
- inputBEEF: oldToken.tx,
1017
- inputs: [
1018
- {
1019
- outpoint: oldOutpoint,
1020
- unlockingScriptLength: 73, // length of signature
1021
- inputDescription: `Consume old ${r.type} token`
1022
- }
1023
- ],
1024
- outputs: [
1025
- {
1026
- lockingScript: newScript.toHex(),
1027
- satoshis: 1,
1028
- outputDescription: `Renewed ${r.type} permission token`,
1029
- basket: BASKET_MAP[r.type],
1030
- tags
1139
+ // Check if there are multiple old tokens for the same parameters (shouldn't usually happen)
1140
+ const oldTokens = await this.findAllProtocolTokens(oldToken.originator, oldToken.privileged, [oldToken.securityLevel, oldToken.protocol], oldToken.counterparty);
1141
+ // If so, coalesce them into a single token first, to avoid bloat
1142
+ if (oldTokens.length > 1) {
1143
+ const txid = await this.coalescePermissionTokens(oldTokens, newScript, {
1144
+ tags,
1145
+ basket: BASKET_MAP[r.type],
1146
+ description: `Coalesce ${r.type} permission tokens`
1147
+ });
1148
+ console.log('Coalesced permission tokens:', txid);
1149
+ }
1150
+ else {
1151
+ // Otherwise, just proceed with the single-token renewal
1152
+ // 3) For BRC-100, we do a "createAction" with a partial input referencing oldToken
1153
+ // plus a single new output. We'll hydrate the template, then signAction for the wallet to finalize.
1154
+ const oldOutpoint = `${oldToken.txid}.${oldToken.outputIndex}`;
1155
+ const { signableTransaction } = await this.createAction({
1156
+ description: `Renew ${r.type} permission`,
1157
+ inputBEEF: oldToken.tx,
1158
+ inputs: [
1159
+ {
1160
+ outpoint: oldOutpoint,
1161
+ unlockingScriptLength: 73, // length of signature
1162
+ inputDescription: `Consume old ${r.type} token`
1163
+ }
1164
+ ],
1165
+ outputs: [
1166
+ {
1167
+ lockingScript: newScript.toHex(),
1168
+ satoshis: 1,
1169
+ outputDescription: `Renewed ${r.type} permission token`,
1170
+ basket: BASKET_MAP[r.type],
1171
+ tags
1172
+ }
1173
+ ],
1174
+ options: {
1175
+ acceptDelayedBroadcast: false
1031
1176
  }
1032
- ],
1033
- options: {
1034
- acceptDelayedBroadcast: false
1035
- }
1036
- }, this.adminOriginator);
1037
- const tx = sdk_1.Transaction.fromBEEF(signableTransaction.tx);
1038
- const unlocker = new sdk_1.PushDrop(this.underlying).unlock(WalletPermissionsManager.PERM_TOKEN_ENCRYPTION_PROTOCOL, '1', 'self', 'all', false, 1, sdk_1.LockingScript.fromHex(oldToken.outputScript));
1039
- const unlockingScript = await unlocker.sign(tx, 0);
1040
- await this.underlying.signAction({
1041
- reference: signableTransaction.reference,
1042
- spends: {
1043
- 0: {
1044
- unlockingScript: unlockingScript.toHex()
1177
+ }, this.adminOriginator);
1178
+ const tx = sdk_1.Transaction.fromBEEF(signableTransaction.tx);
1179
+ const unlocker = new sdk_1.PushDrop(this.underlying).unlock(WalletPermissionsManager.PERM_TOKEN_ENCRYPTION_PROTOCOL, '1', 'self', 'all', false, 1, sdk_1.LockingScript.fromHex(oldToken.outputScript));
1180
+ const unlockingScript = await unlocker.sign(tx, 0);
1181
+ await this.underlying.signAction({
1182
+ reference: signableTransaction.reference,
1183
+ spends: {
1184
+ 0: {
1185
+ unlockingScript: unlockingScript.toHex()
1186
+ }
1045
1187
  }
1046
- }
1047
- });
1188
+ });
1189
+ }
1048
1190
  }
1049
1191
  /**
1050
1192
  * Builds the encrypted array of fields for a PushDrop permission token