@bsv/wallet-toolbox 2.4.22 → 2.6.0

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 (160) hide show
  1. package/CHANGELOG.md +60 -7
  2. package/README.md +52 -1
  3. package/docs/authentication-observability.md +21 -9
  4. package/out/src/CWIStyleWalletManager.d.ts +31 -3
  5. package/out/src/CWIStyleWalletManager.d.ts.map +1 -1
  6. package/out/src/CWIStyleWalletManager.js +164 -56
  7. package/out/src/CWIStyleWalletManager.js.map +1 -1
  8. package/out/src/Wallet.d.ts +3 -3
  9. package/out/src/Wallet.d.ts.map +1 -1
  10. package/out/src/Wallet.js +45 -19
  11. package/out/src/Wallet.js.map +1 -1
  12. package/out/src/index.all.d.ts +1 -0
  13. package/out/src/index.all.d.ts.map +1 -1
  14. package/out/src/index.all.js +1 -0
  15. package/out/src/index.all.js.map +1 -1
  16. package/out/src/index.mobile.d.ts +1 -0
  17. package/out/src/index.mobile.d.ts.map +1 -1
  18. package/out/src/index.mobile.js +1 -0
  19. package/out/src/index.mobile.js.map +1 -1
  20. package/out/src/sdk/WalletStorage.interfaces.d.ts +1 -0
  21. package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -1
  22. package/out/src/sdk/types.d.ts +1 -1
  23. package/out/src/sdk/types.d.ts.map +1 -1
  24. package/out/src/sdk/types.js +1 -6
  25. package/out/src/sdk/types.js.map +1 -1
  26. package/out/src/services/Services.d.ts.map +1 -1
  27. package/out/src/services/Services.js +5 -5
  28. package/out/src/services/Services.js.map +1 -1
  29. package/out/src/services/chaintracker/chaintracks/Api/BulkIngestorApi.d.ts +1 -1
  30. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts +11 -0
  31. package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts.map +1 -1
  32. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +4 -0
  33. package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
  34. package/out/src/services/chaintracker/chaintracks/Chaintracks.js +97 -33
  35. package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
  36. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.d.ts +12 -0
  37. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.d.ts.map +1 -1
  38. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js +127 -41
  39. package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js.map +1 -1
  40. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.d.ts +27 -0
  41. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.d.ts.map +1 -0
  42. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.js +64 -0
  43. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.js.map +1 -0
  44. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.d.ts.map +1 -1
  45. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.js +15 -2
  46. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.js.map +1 -1
  47. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -1
  48. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +8 -6
  49. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -1
  50. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts +11 -5
  51. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts.map +1 -1
  52. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js +40 -3
  53. package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js.map +1 -1
  54. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +3 -0
  55. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
  56. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +33 -8
  57. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
  58. package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.d.ts +16 -1
  59. package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.d.ts.map +1 -1
  60. package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.js +70 -31
  61. package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.js.map +1 -1
  62. package/out/src/services/chaintracker/chaintracks/index.mobile.d.ts +3 -0
  63. package/out/src/services/chaintracker/chaintracks/index.mobile.d.ts.map +1 -1
  64. package/out/src/services/chaintracker/chaintracks/index.mobile.js +3 -0
  65. package/out/src/services/chaintracker/chaintracks/index.mobile.js.map +1 -1
  66. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts.map +1 -1
  67. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js +35 -2
  68. package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js.map +1 -1
  69. package/out/src/services/createDefaultWalletServicesOptions.d.ts +6 -1
  70. package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
  71. package/out/src/services/createDefaultWalletServicesOptions.js +48 -19
  72. package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
  73. package/out/src/services/networkConfig.d.ts +10 -21
  74. package/out/src/services/networkConfig.d.ts.map +1 -1
  75. package/out/src/services/networkConfig.js +49 -11
  76. package/out/src/services/networkConfig.js.map +1 -1
  77. package/out/src/services/providers/WhatsOnChain.d.ts +8 -2
  78. package/out/src/services/providers/WhatsOnChain.d.ts.map +1 -1
  79. package/out/src/services/providers/WhatsOnChain.js +21 -2
  80. package/out/src/services/providers/WhatsOnChain.js.map +1 -1
  81. package/out/src/signer/methods/completeSignedTransaction.d.ts.map +1 -1
  82. package/out/src/signer/methods/completeSignedTransaction.js +54 -13
  83. package/out/src/signer/methods/completeSignedTransaction.js.map +1 -1
  84. package/out/src/signer/methods/createAction.d.ts.map +1 -1
  85. package/out/src/signer/methods/createAction.js +14 -10
  86. package/out/src/signer/methods/createAction.js.map +1 -1
  87. package/out/src/signer/methods/verifyUnlockScripts.d.ts.map +1 -1
  88. package/out/src/signer/methods/verifyUnlockScripts.js +257 -21
  89. package/out/src/signer/methods/verifyUnlockScripts.js.map +1 -1
  90. package/out/src/storage/StorageIdb.d.ts +2 -0
  91. package/out/src/storage/StorageIdb.d.ts.map +1 -1
  92. package/out/src/storage/StorageIdb.js +49 -3
  93. package/out/src/storage/StorageIdb.js.map +1 -1
  94. package/out/src/storage/StorageKnex.d.ts +6 -0
  95. package/out/src/storage/StorageKnex.d.ts.map +1 -1
  96. package/out/src/storage/StorageKnex.js +140 -5
  97. package/out/src/storage/StorageKnex.js.map +1 -1
  98. package/out/src/storage/StorageProvider.d.ts +23 -0
  99. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  100. package/out/src/storage/StorageProvider.js +64 -1
  101. package/out/src/storage/StorageProvider.js.map +1 -1
  102. package/out/src/storage/index.all.d.ts +1 -0
  103. package/out/src/storage/index.all.d.ts.map +1 -1
  104. package/out/src/storage/index.all.js +1 -0
  105. package/out/src/storage/index.all.js.map +1 -1
  106. package/out/src/storage/methods/actionPlanning.d.ts +14 -0
  107. package/out/src/storage/methods/actionPlanning.d.ts.map +1 -1
  108. package/out/src/storage/methods/actionPlanning.js +55 -0
  109. package/out/src/storage/methods/actionPlanning.js.map +1 -1
  110. package/out/src/storage/methods/availableManagedChange.d.ts +1 -0
  111. package/out/src/storage/methods/availableManagedChange.d.ts.map +1 -1
  112. package/out/src/storage/methods/availableManagedChange.js.map +1 -1
  113. package/out/src/storage/methods/createAction.d.ts.map +1 -1
  114. package/out/src/storage/methods/createAction.js +225 -131
  115. package/out/src/storage/methods/createAction.js.map +1 -1
  116. package/out/src/storage/methods/generateChange.d.ts.map +1 -1
  117. package/out/src/storage/methods/generateChange.js +29 -14
  118. package/out/src/storage/methods/generateChange.js.map +1 -1
  119. package/out/src/storage/methods/getBeefForTransaction.d.ts +7 -0
  120. package/out/src/storage/methods/getBeefForTransaction.d.ts.map +1 -1
  121. package/out/src/storage/methods/getBeefForTransaction.js +196 -16
  122. package/out/src/storage/methods/getBeefForTransaction.js.map +1 -1
  123. package/out/src/storage/methods/processAction.d.ts.map +1 -1
  124. package/out/src/storage/methods/processAction.js +36 -15
  125. package/out/src/storage/methods/processAction.js.map +1 -1
  126. package/out/src/storage/remoting/KnexPaymentReplayStore.d.ts +12 -0
  127. package/out/src/storage/remoting/KnexPaymentReplayStore.d.ts.map +1 -0
  128. package/out/src/storage/remoting/KnexPaymentReplayStore.js +46 -0
  129. package/out/src/storage/remoting/KnexPaymentReplayStore.js.map +1 -0
  130. package/out/src/storage/remoting/KnexSessionManager.d.ts +20 -0
  131. package/out/src/storage/remoting/KnexSessionManager.d.ts.map +1 -1
  132. package/out/src/storage/remoting/KnexSessionManager.js +74 -16
  133. package/out/src/storage/remoting/KnexSessionManager.js.map +1 -1
  134. package/out/src/storage/remoting/StorageServer.d.ts +21 -1
  135. package/out/src/storage/remoting/StorageServer.d.ts.map +1 -1
  136. package/out/src/storage/remoting/StorageServer.js +143 -5
  137. package/out/src/storage/remoting/StorageServer.js.map +1 -1
  138. package/out/src/storage/remoting/edgePolicy.d.ts +27 -0
  139. package/out/src/storage/remoting/edgePolicy.d.ts.map +1 -1
  140. package/out/src/storage/remoting/edgePolicy.js +165 -15
  141. package/out/src/storage/remoting/edgePolicy.js.map +1 -1
  142. package/out/src/storage/schema/KnexMigrations.d.ts +1 -0
  143. package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
  144. package/out/src/storage/schema/KnexMigrations.js +41 -2
  145. package/out/src/storage/schema/KnexMigrations.js.map +1 -1
  146. package/out/src/storage/schema/entities/EntityProvenTx.d.ts +2 -1
  147. package/out/src/storage/schema/entities/EntityProvenTx.d.ts.map +1 -1
  148. package/out/src/storage/schema/entities/EntityProvenTx.js +8 -3
  149. package/out/src/storage/schema/entities/EntityProvenTx.js.map +1 -1
  150. package/out/src/storage/storageProviderHelpers.d.ts.map +1 -1
  151. package/out/src/storage/storageProviderHelpers.js +8 -2
  152. package/out/src/storage/storageProviderHelpers.js.map +1 -1
  153. package/out/src/utility/ScriptTemplateBRC29.d.ts +3 -2
  154. package/out/src/utility/ScriptTemplateBRC29.d.ts.map +1 -1
  155. package/out/src/utility/ScriptTemplateBRC29.js +13 -5
  156. package/out/src/utility/ScriptTemplateBRC29.js.map +1 -1
  157. package/out/src/utility/utilityHelpers.d.ts.map +1 -1
  158. package/out/src/utility/utilityHelpers.js +2 -0
  159. package/out/src/utility/utilityHelpers.js.map +1 -1
  160. package/package.json +5 -3
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getBeefForTransaction = getBeefForTransaction;
4
+ exports.getBeefForTransactions = getBeefForTransactions;
4
5
  const sdk_1 = require("@bsv/sdk");
5
6
  const EntityProvenTx_1 = require("../schema/entities/EntityProvenTx");
6
7
  const WERR_errors_1 = require("../../sdk/WERR_errors");
@@ -23,16 +24,7 @@ const WERR_errors_1 = require("../../sdk/WERR_errors");
23
24
  * @param options
24
25
  */
25
26
  async function getBeefForTransaction(storage, txid, options) {
26
- let beef;
27
- if (options.mergeToBeef instanceof sdk_1.Beef) {
28
- beef = options.mergeToBeef;
29
- }
30
- else if (options.mergeToBeef != null) {
31
- beef = sdk_1.Beef.fromBinary(options.mergeToBeef);
32
- }
33
- else {
34
- beef = new sdk_1.Beef();
35
- }
27
+ const beef = mergeTarget(options);
36
28
  // Most createAction proof requests resolve a single, already-proven root.
37
29
  // Building a Set for a wallet's entire known-txid history made that common
38
30
  // path O(history) before storage did any useful work. Use array membership
@@ -41,19 +33,16 @@ async function getBeefForTransaction(storage, txid, options) {
41
33
  const hasKnownTxid = makeKnownTxidLookup(options.knownTxids ?? []);
42
34
  const scheduled = new Set([txid]);
43
35
  let frontier = [{ txid, depth: 0 }];
44
- const requestedConcurrency = options.maxConcurrency ?? 8;
45
- const concurrency = Number.isFinite(requestedConcurrency)
46
- ? Math.max(1, Math.min(32, Math.floor(requestedConcurrency)))
47
- : 8;
36
+ const concurrency = normalizeConcurrency(options.maxConcurrency);
48
37
  while (frontier.length > 0) {
49
- const current = frontier.filter(item => beef.findTxid(item.txid) == null);
38
+ const current = frontier.filter(item => needsResolution(beef, item.txid, hasKnownTxid));
50
39
  const resolved = await mapWithConcurrency(current, concurrency, async (item) => await resolveBeefForTransaction(storage, item.txid, options, hasKnownTxid, item.depth));
51
40
  const next = [];
52
41
  for (let i = 0; i < resolved.length; i++) {
53
42
  const result = resolved[i];
54
43
  beef.mergeBeef(result.beef);
55
44
  for (const dependency of result.dependencies) {
56
- if (!scheduled.has(dependency) && beef.findTxid(dependency) == null) {
45
+ if (!scheduled.has(dependency) && needsResolution(beef, dependency, hasKnownTxid)) {
57
46
  scheduled.add(dependency);
58
47
  next.push({ txid: dependency, depth: current[i].depth + 1 });
59
48
  }
@@ -63,6 +52,192 @@ async function getBeefForTransaction(storage, txid, options) {
63
52
  }
64
53
  return beef;
65
54
  }
55
+ /**
56
+ * Build one aggregate BEEF for several roots while resolving each storage
57
+ * frontier as a set. This avoids one proof query per funding input on the
58
+ * createAction success path. Complex proof-level and chain-tracker policies
59
+ * retain the established single-root implementation.
60
+ */
61
+ async function getBeefForTransactions(storage, txids, options) {
62
+ const beef = mergeTarget(options);
63
+ const roots = [...new Set(txids)];
64
+ if (roots.length === 0)
65
+ return beef;
66
+ if (requiresSingleRootPolicy(options))
67
+ return await mergeSingleRootFragments(storage, roots, options, beef);
68
+ const hasKnownTxid = makeKnownTxidLookup(options.knownTxids ?? []);
69
+ const scheduled = new Set(roots);
70
+ let frontier = roots.map(txid => ({ txid, depth: 0 }));
71
+ while (frontier.length > 0) {
72
+ const unresolved = collectUnresolvedFrontier(storage, frontier, beef, hasKnownTxid);
73
+ if (unresolved.length === 0)
74
+ break;
75
+ const stored = await storage.getProvenOrRawTxs(unresolved.map(item => item.txid));
76
+ const allProven = options.trustSelf !== 'known' && unresolved.every(item => stored.get(item.txid)?.proven != null);
77
+ if (allProven) {
78
+ mergeAllProven(storage, beef, unresolved, stored);
79
+ break;
80
+ }
81
+ const [next, missing] = mergeStoredFrontier(beef, unresolved, stored, options, scheduled, hasKnownTxid);
82
+ await mergeMissingFragments(storage, beef, missing, options);
83
+ frontier = next;
84
+ }
85
+ return beef;
86
+ }
87
+ function mergeTarget(options) {
88
+ if (options.mergeToBeef instanceof sdk_1.Beef)
89
+ return options.mergeToBeef;
90
+ if (options.mergeToBeef != null)
91
+ return sdk_1.Beef.fromBinary(options.mergeToBeef);
92
+ return new sdk_1.Beef();
93
+ }
94
+ function requiresSingleRootPolicy(options) {
95
+ return options.ignoreStorage === true ||
96
+ options.minProofLevel !== undefined ||
97
+ options.chainTracker != null ||
98
+ options.skipInvalidProofs === true;
99
+ }
100
+ async function mergeSingleRootFragments(storage, roots, options, beef) {
101
+ const fragments = await mapWithConcurrency(roots.filter(txid => beef.findTxid(txid) == null), normalizeConcurrency(options.maxConcurrency), async (txid) => await getBeefForTransaction(storage, txid, { ...options, mergeToBeef: undefined }));
102
+ for (const fragment of fragments)
103
+ beef.mergeBeef(fragment);
104
+ return beef;
105
+ }
106
+ function collectUnresolvedFrontier(storage, frontier, beef, hasKnownTxid) {
107
+ const unresolved = [];
108
+ for (const item of frontier) {
109
+ if (!needsResolution(beef, item.txid, hasKnownTxid))
110
+ continue;
111
+ if (storage.maxRecursionDepth && storage.maxRecursionDepth <= item.depth) {
112
+ throw new WERR_errors_1.WERR_INVALID_OPERATION(`Maximum BEEF depth exceeded. Limit is ${storage.maxRecursionDepth}`);
113
+ }
114
+ if (hasKnownTxid(item.txid))
115
+ beef.mergeTxidOnly(item.txid);
116
+ else
117
+ unresolved.push(item);
118
+ }
119
+ return unresolved;
120
+ }
121
+ function decodeProvenEntries(storage, unresolved, stored) {
122
+ const span = storage.telemetry.enabled
123
+ ? storage.telemetry.startSpan('wallet.storage.beef.decode_proven_batch', {
124
+ component: 'wallet-storage',
125
+ attributes: { 'beef.proven_tx_count': unresolved.length }
126
+ })
127
+ : undefined;
128
+ try {
129
+ const entries = unresolved.map(item => {
130
+ const proven = stored.get(item.txid).proven;
131
+ return {
132
+ rawTx: proven.rawTx,
133
+ merklePath: new EntityProvenTx_1.EntityProvenTx(proven).getMerklePath(false),
134
+ merkleRoot: proven.merkleRoot
135
+ };
136
+ });
137
+ span?.end({ attributes: { 'beef.decoded_proof_count': entries.length } });
138
+ return entries;
139
+ }
140
+ catch (error) {
141
+ span?.end({ status: 'error', error });
142
+ throw error;
143
+ }
144
+ }
145
+ function mergeAllProven(storage, beef, unresolved, stored) {
146
+ const entries = decodeProvenEntries(storage, unresolved, stored);
147
+ const span = storage.telemetry.enabled
148
+ ? storage.telemetry.startSpan('wallet.storage.beef.merge_proven_batch', {
149
+ component: 'wallet-storage',
150
+ attributes: { 'beef.proven_tx_count': entries.length }
151
+ })
152
+ : undefined;
153
+ try {
154
+ mergeProvenEntries(beef, entries, unresolved, stored);
155
+ span?.end({
156
+ attributes: {
157
+ 'beef.merged_tx_count': entries.length,
158
+ 'beef.result_tx_count': beef.txs.length,
159
+ 'beef.result_bump_count': beef.bumps.length
160
+ }
161
+ });
162
+ }
163
+ catch (error) {
164
+ span?.end({ status: 'error', error });
165
+ throw error;
166
+ }
167
+ }
168
+ function mergeProvenEntries(beef, entries, unresolved, stored) {
169
+ if (typeof beef.mergeProvenTxs === 'function') {
170
+ beef.mergeProvenTxs(entries);
171
+ return;
172
+ }
173
+ // Runtime compatibility for applications that intentionally retain an older
174
+ // compatible SDK peer. Current peers use the bulk lane; older peers retain
175
+ // the established validated sequential behavior.
176
+ for (const item of unresolved) {
177
+ const proven = stored.get(item.txid).proven;
178
+ beef.mergeRawTx(proven.rawTx);
179
+ beef.mergeBump(new EntityProvenTx_1.EntityProvenTx(proven).getMerklePath());
180
+ }
181
+ }
182
+ function mergeStoredFrontier(beef, unresolved, stored, options, scheduled, hasKnownTxid) {
183
+ const next = [];
184
+ const missing = [];
185
+ for (const item of unresolved) {
186
+ const result = stored.get(item.txid);
187
+ if (result?.proven != null)
188
+ mergeStoredProven(beef, item, result, options);
189
+ else if (result?.rawTx != null)
190
+ mergeStoredRaw(beef, item, result, options, scheduled, next, hasKnownTxid);
191
+ else
192
+ missing.push(item);
193
+ }
194
+ return [next, missing];
195
+ }
196
+ function mergeStoredProven(beef, item, result, options) {
197
+ if (options.trustSelf === 'known') {
198
+ beef.mergeTxidOnly(item.txid);
199
+ return;
200
+ }
201
+ const proven = result.proven;
202
+ beef.mergeRawTx(proven.rawTx);
203
+ beef.mergeBump(new EntityProvenTx_1.EntityProvenTx(proven).getMerklePath());
204
+ }
205
+ function mergeStoredRaw(beef, item, result, options, scheduled, next, hasKnownTxid) {
206
+ if (options.trustSelf === 'known') {
207
+ beef.mergeTxidOnly(item.txid);
208
+ return;
209
+ }
210
+ const transaction = beef.mergeRawTx(result.rawTx);
211
+ if (result.inputBEEF != null)
212
+ beef.mergeBeef(result.inputBEEF);
213
+ appendNewDependencies(transaction.inputTxids, item.depth + 1, beef, scheduled, next, hasKnownTxid);
214
+ }
215
+ function appendNewDependencies(dependencies, depth, beef, scheduled, next, hasKnownTxid) {
216
+ for (const txid of dependencies) {
217
+ if (scheduled.has(txid) || !needsResolution(beef, txid, hasKnownTxid))
218
+ continue;
219
+ scheduled.add(txid);
220
+ next.push({ txid, depth });
221
+ }
222
+ }
223
+ function needsResolution(beef, txid, hasKnownTxid) {
224
+ const entry = beef.findTxid(txid);
225
+ return entry == null || (entry.isTxidOnly && !hasKnownTxid(txid));
226
+ }
227
+ async function mergeMissingFragments(storage, beef, missing, options) {
228
+ if (missing.length === 0)
229
+ return;
230
+ if (options.ignoreServices === true) {
231
+ throw new WERR_errors_1.WERR_INVALID_PARAMETER(`txid ${missing[0].txid}`, `valid transaction on chain ${storage.chain}`);
232
+ }
233
+ const fragments = await mapWithConcurrency(missing, normalizeConcurrency(options.maxConcurrency), async (item) => await getBeefForTransaction(storage, item.txid, {
234
+ ...options,
235
+ ignoreStorage: true,
236
+ mergeToBeef: undefined
237
+ }));
238
+ for (const fragment of fragments)
239
+ beef.mergeBeef(fragment);
240
+ }
66
241
  function makeKnownTxidLookup(knownTxids) {
67
242
  let lookups = 0;
68
243
  let indexed;
@@ -77,6 +252,11 @@ function makeKnownTxidLookup(knownTxids) {
77
252
  return knownTxids.includes(txid);
78
253
  };
79
254
  }
255
+ function normalizeConcurrency(value = 8) {
256
+ return Number.isFinite(value)
257
+ ? Math.max(1, Math.min(32, Math.floor(value)))
258
+ : 8;
259
+ }
80
260
  async function mapWithConcurrency(values, concurrency, mapper) {
81
261
  const results = Array.from({ length: values.length }, () => undefined);
82
262
  let cursor = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"getBeefForTransaction.js","sourceRoot":"","sources":["../../../../src/storage/methods/getBeefForTransaction.ts"],"names":[],"mappings":";;;AAAA,kCAA+B;AAG/B,sEAAkE;AAClE,uDAAgH;AAEhH;;;;;;;;;;;;;;;;;GAiBG;AACI,KAAK,gCACV,OAAwB,EACxB,IAAY,EACZ,OAA8B;IAE9B,IAAI,IAAU,CAAA;IACd,IAAI,OAAO,CAAC,WAAW,YAAY,UAAI,EAAE,CAAC;QACxC,IAAI,GAAG,OAAO,CAAC,WAAW,CAAA;IAC5B,CAAC;SAAM,IAAI,OAAO,CAAC,WAAW,IAAI,IAAI,EAAE,CAAC;QACvC,IAAI,GAAG,UAAI,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAC7C,CAAC;SAAM,CAAC;QACN,IAAI,GAAG,IAAI,UAAI,EAAE,CAAA;IACnB,CAAC;IAED,0EAA0E;IAC1E,2EAA2E;IAC3E,2EAA2E;IAC3E,2EAA2E;IAC3E,sDAAsD;IACtD,MAAM,YAAY,GAAG,mBAAmB,CAAC,OAAO,CAAC,UAAU,IAAI,EAAE,CAAC,CAAA;IAClE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAS,CAAC,IAAI,CAAC,CAAC,CAAA;IACzC,IAAI,QAAQ,GAA2C,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAA;IAC3E,MAAM,oBAAoB,GAAG,OAAO,CAAC,cAAc,IAAI,CAAC,CAAA;IACxD,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC;QACvD,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC,CAAA;IAEL,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAA;QACzE,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CACvC,OAAO,EACP,WAAW,EACX,KAAK,EAAC,IAAI,EAAC,EAAE,CAAC,MAAM,yBAAyB,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,CACrG,CAAA;QAED,MAAM,IAAI,GAA2C,EAAE,CAAA;QACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;YAC1B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YAC3B,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;gBAC7C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;oBACpE,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;oBACzB,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,CAAA;gBAC9D,CAAC;YACH,CAAC;QACH,CAAC;QACD,QAAQ,GAAG,IAAI,CAAA;IACjB,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,SAAS,mBAAmB,CAAE,UAAoB;IAChD,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,IAAI,OAAgC,CAAA;IACpC,OAAO,IAAI,CAAC,EAAE;QACZ,OAAO,EAAE,CAAA;QACT,IAAI,OAAO,IAAI,IAAI;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC7C,IAAI,UAAU,CAAC,MAAM,GAAG,EAAE,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;YAC1C,OAAO,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAA;YAC7B,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QAC1B,CAAC;QACD,OAAO,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IAClC,CAAC,CAAA;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,MAAW,EACX,WAAmB,EACnB,MAAgC;IAEhC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,SAAc,CAAC,CAAA;IAC3E,IAAI,MAAM,GAAG,CAAC,CAAA;IACd,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,IAAI,EAAE;QACtE,OAAO,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,MAAM,EAAE,CAAA;YACtB,OAAO,CAAC,KAAK,CAAC,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;QAC9C,CAAC;IACH,CAAC,CAAC,CACH,CAAA;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,4BAA4B,CACzC,OAAwB,EACxB,IAAY,EACZ,OAA8B;IAE9B,MAAM,GAAG,GAAG,MAAM,+BAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;IACtE,IAAI,GAAG,CAAC,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE,CAAC;QAC7E,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAA;IAC1E,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,CAAA;AAC1D,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,OAAwB,EACxB,IAAY,EACZ,OAA8B,EAC9B,cAAsB;IAEtB,IAAI,OAAO,CAAC,aAAa;QAAE,OAAO,SAAS,CAAA;IAE3C,MAAM,cAAc,GAAG,OAAO,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,GAAG,cAAc,CAAA;IAC/G,OAAO,MAAM,OAAO,CAAC,mBAAmB,CACtC,IAAI,EACJ,IAAI,UAAI,EAAE,EACV,OAAO,CAAC,SAAS,EACjB,OAAO,CAAC,UAAU,EAClB,SAAS,EACT,cAAc,EACd,OAAO,CAAC,YAAY,EACpB,OAAO,CAAC,iBAAiB,CAC1B,CAAA;AACH,CAAC;AAED,KAAK,UAAU,4BAA4B,CACzC,IAAU,EACV,IAAY,EACZ,MAAqB,EACrB,OAA8B,EAC9B,cAAsB;IAEtB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAA;IAC5B,IAAI,MAAM,IAAI,IAAI;QAAE,OAAO,SAAS,CAAA;IACpC,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,IAAI,OAAO,CAAC,aAAa,GAAG,cAAc;QAAE,OAAO,SAAS,CAAA;IAEnG,MAAM,UAAU,GAAG,IAAI,+BAAc,CAAC,MAAM,CAAC,CAAC,aAAa,EAAE,CAAA;IAC7D,IAAI,OAAO,CAAC,YAAY,IAAI,IAAI,EAAE,CAAC;QACjC,MAAM,IAAI,GAAG,UAAU,CAAC,WAAW,EAAE,CAAA;QACrC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAA;QACpF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBAC/B,MAAM,IAAI,sCAAwB,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAA;YACjF,CAAC;YACD,OAAO,SAAS,CAAA;QAClB,CAAC;IACH,CAAC;IAED,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC7B,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;IAC1B,OAAO,IAAI,CAAA;AACb,CAAC;AAED,KAAK,UAAU,yBAAyB,CACtC,OAAwB,EACxB,IAAY,EACZ,OAA8B,EAC9B,YAAuC,EACvC,cAAsB;IAEtB,MAAM,QAAQ,GAAG,OAAO,CAAC,iBAAiB,CAAA;IAC1C,IAAI,QAAQ,IAAI,QAAQ,IAAI,cAAc,EAAE,CAAC;QAC3C,MAAM,IAAI,oCAAsB,CAAC,yCAAyC,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAA;IACxG,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,UAAI,EAAE,CAAA;IAEvB,IAAI,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;QACvB,+EAA+E;QAC/E,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;QACxB,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,CAAA;IACnC,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,CAAC,CAAA;IAC9E,IAAI,UAAU,IAAI,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,EAAE,CAAA;IAErE,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;QAC3B,MAAM,IAAI,oCAAsB,CAAC,QAAQ,IAAI,EAAE,EAAE,8BAA8B,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;IACjG,CAAC;IAED,mDAAmD;IACnD,iDAAiD;IACjD,MAAM,MAAM,GAAG,MAAM,4BAA4B,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;IACzE,MAAM,UAAU,GAAG,MAAM,4BAA4B,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,CAAC,CAAA;IAClG,IAAI,UAAU,IAAI,IAAI;QAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,EAAE,EAAE,CAAA;IAErE,IAAI,MAAM,CAAC,KAAK,IAAI,IAAI;QACtB,MAAM,IAAI,oCAAsB,CAAC,QAAQ,IAAI,EAAE,EAAE,8BAA8B,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;IAEjG,yDAAyD;IACzD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAC5C,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,CAAC,UAAU,EAAE,CAAA;AAClD,CAAC"}
1
+ {"version":3,"file":"getBeefForTransaction.js","sourceRoot":"","sources":["../../../../src/storage/methods/getBeefForTransaction.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"processAction.d.ts","sourceRoot":"","sources":["../../../../src/storage/methods/processAction.ts"],"names":[],"mappings":"AACA,OAAO,EACL,IAAI,EAEJ,cAAc,EAEd,qBAAqB,EACtB,MAAM,UAAU,CAAA;AAEjB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EACL,MAAM,EACN,kBAAkB,EAClB,wBAAwB,EACxB,2BAA2B,EAC5B,MAAM,oCAAoC,CAAA;AAU3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAU9D,wBAAsB,aAAa,CACjC,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,wBAAwB,GAC7B,OAAO,CAAC,2BAA2B,CAAC,CA0CtC;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,gBAAgB,CAAA;IACtB,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,MAAM,EAAE,aAAa,GAAG,aAAa,GAAG,OAAO,GAAG,SAAS,CAAA;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,IAAI,CAAA;IACV,OAAO,EAAE,oBAAoB,EAAE,CAAA;IAC/B,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,MAAM,EAAE,SAAS,GAAG,OAAO,CAAA;IAE3B;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IAEtB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAgFD,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EAAE,EACf,SAAS,EAAE,OAAO,EAClB,CAAC,CAAC,EAAE,oBAAoB,EACxB,MAAM,CAAC,EAAE,qBAAqB,GAC7B,OAAO,CAAC;IAAE,GAAG,EAAE,cAAc,EAAE,CAAC;IAAC,GAAG,EAAE,kBAAkB,EAAE,GAAG,SAAS,CAAA;CAAE,CAAC,CAyC3E;AAiMD,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,iBAAiB,CAAA;IACtB,GAAG,CAAC,EAAE,MAAM,CAAA;CACb"}
1
+ {"version":3,"file":"processAction.d.ts","sourceRoot":"","sources":["../../../../src/storage/methods/processAction.ts"],"names":[],"mappings":"AACA,OAAO,EACL,IAAI,EAEJ,cAAc,EAEd,qBAAqB,EAEtB,MAAM,UAAU,CAAA;AAEjB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EACL,MAAM,EACN,kBAAkB,EAClB,wBAAwB,EACxB,2BAA2B,EAC5B,MAAM,oCAAoC,CAAA;AAU3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAA;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAA;AACpE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAS9D,wBAAsB,aAAa,CACjC,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,wBAAwB,GAC7B,OAAO,CAAC,2BAA2B,CAAC,CAoBtC;AAgFD,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,gBAAgB,CAAA;IACtB,MAAM,CAAC,EAAE,aAAa,CAAA;IACtB,MAAM,EAAE,aAAa,GAAG,aAAa,GAAG,OAAO,GAAG,SAAS,CAAA;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,IAAI,CAAA;IACV,OAAO,EAAE,oBAAoB,EAAE,CAAA;IAC/B,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,MAAM,CAAA;IAEZ;;OAEG;IACH,MAAM,EAAE,SAAS,GAAG,OAAO,CAAA;IAE3B;;;;OAIG;IACH,YAAY,CAAC,EAAE,OAAO,CAAA;IAEtB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAgFD,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,MAAM,EAAE,EACf,SAAS,EAAE,OAAO,EAClB,CAAC,CAAC,EAAE,oBAAoB,EACxB,MAAM,CAAC,EAAE,qBAAqB,GAC7B,OAAO,CAAC;IAAE,GAAG,EAAE,cAAc,EAAE,CAAC;IAAC,GAAG,EAAE,kBAAkB,EAAE,GAAG,SAAS,CAAA;CAAE,CAAC,CAyC3E;AA4LD,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,iBAAiB,CAAA;IACtB,GAAG,CAAC,EAAE,MAAM,CAAA;CACb"}
@@ -14,6 +14,24 @@ const utilityHelpers_noBuffer_1 = require("../../utility/utilityHelpers.noBuffer
14
14
  const WalletError_1 = require("../../sdk/WalletError");
15
15
  const storageProviderHelpers_1 = require("../storageProviderHelpers");
16
16
  async function processAction(storage, auth, args) {
17
+ if (!storage.telemetry.enabled)
18
+ return await processActionCore(storage, auth, args);
19
+ return await storage.telemetry.withSpan('wallet.storage.process_action', {
20
+ component: 'wallet-storage',
21
+ carrier: args,
22
+ attributes: {
23
+ 'action.is_new_transaction': args.isNewTx,
24
+ 'action.is_no_send': args.isNoSend,
25
+ 'action.is_delayed': args.isDelayed,
26
+ 'action.send_with_count': args.sendWith.length
27
+ }
28
+ }, async (span) => {
29
+ const result = await processActionCore(storage, auth, args, span);
30
+ span.end({ attributes: { 'action.send_result_count': result.sendWithResults?.length ?? 0 } });
31
+ return result;
32
+ });
33
+ }
34
+ async function processActionCore(storage, auth, args, parent) {
17
35
  const logger = args.logger;
18
36
  logger?.group('storage processAction');
19
37
  const userId = (0, utilityHelpers_1.verifyId)(auth.userId);
@@ -23,9 +41,9 @@ async function processAction(storage, auth, args) {
23
41
  let req;
24
42
  const txidsOfReqsToShareWithWorld = [...args.sendWith];
25
43
  if (args.isNewTx) {
26
- const vargs = await validateCommitNewTxToStorageArgs(storage, userId, args);
44
+ const vargs = await traceProcessStep(storage, 'wallet.storage.process_action.validate', parent, async () => await validateCommitNewTxToStorageArgs(storage, userId, args));
27
45
  logger?.log('validated new tx updates to storage');
28
- ({ req } = await commitNewTxToStorage(storage, userId, vargs));
46
+ ({ req } = await traceProcessStep(storage, 'wallet.storage.process_action.commit', parent, async () => await commitNewTxToStorage(storage, userId, vargs)));
29
47
  logger?.log('committed new tx updates to storage ');
30
48
  if (!req)
31
49
  throw new WERR_errors_1.WERR_INTERNAL();
@@ -38,12 +56,17 @@ async function processAction(storage, auth, args) {
38
56
  logger?.log(`sending txid ${req.txid}`);
39
57
  }
40
58
  }
41
- const { swr, ndr } = await shareReqsWithWorld(storage, userId, txidsOfReqsToShareWithWorld, args.isDelayed, undefined, logger);
59
+ const { swr, ndr } = await traceProcessStep(storage, 'wallet.storage.process_action.share', parent, async () => await shareReqsWithWorld(storage, userId, txidsOfReqsToShareWithWorld, args.isDelayed, undefined, logger));
42
60
  r.sendWithResults = swr;
43
61
  r.notDelayedResults = ndr;
44
62
  logger?.groupEnd();
45
63
  return r;
46
64
  }
65
+ async function traceProcessStep(storage, name, parent, callback) {
66
+ if (parent == null)
67
+ return await callback();
68
+ return await storage.telemetry.withSpan(name, { component: 'wallet-storage', parent: parent.context }, callback);
69
+ }
47
70
  /**
48
71
  * Verifies that all the txids are known reqs with ready-to-share status.
49
72
  * Assigns a batch identifier and updates all the provenTxReqs.
@@ -214,20 +237,21 @@ async function validateCommitNewTxToStorageArgs(storage, userId, params) {
214
237
  throw new WERR_errors_1.WERR_INVALID_OPERATION('isOutgoing is not true');
215
238
  if (transaction.inputBEEF == null)
216
239
  throw new WERR_errors_1.WERR_INVALID_OPERATION();
217
- const beef = sdk_1.Beef.fromBinary((0, utilityHelpers_noBuffer_1.asArray)(transaction.inputBEEF));
218
- // Could check beef validates transaction inputs...
219
240
  // Transaction must have unsigned or unprocessed status
220
241
  if (transaction.status !== 'unsigned' && transaction.status !== 'unprocessed') {
221
242
  throw new WERR_errors_1.WERR_INVALID_OPERATION(`invalid transaction status ${transaction.status}`);
222
243
  }
223
244
  const transactionId = (0, utilityHelpers_1.verifyId)(transaction.transactionId);
224
- const outputOutputs = await storage.findOutputs({
225
- partial: { userId, transactionId }
226
- });
227
- const inputOutputs = await storage.findOutputs({
228
- partial: { userId, spentBy: transactionId }
229
- });
230
- const commission = (0, utilityHelpers_1.verifyOneOrNone)(await storage.findCommissions({ partial: { transactionId, userId } }));
245
+ // These reads are independent once the planned transaction is resolved.
246
+ // Running them together removes two network-database round trips from every
247
+ // successful remote-storage commit.
248
+ const [outputOutputs, commissionRows] = await Promise.all([
249
+ storage.findOutputs({ partial: { userId, transactionId } }),
250
+ storage.commissionSatoshis > 0
251
+ ? storage.findCommissions({ partial: { transactionId, userId } })
252
+ : Promise.resolve([])
253
+ ]);
254
+ const commission = (0, utilityHelpers_1.verifyOneOrNone)(commissionRows);
231
255
  if (storage.commissionSatoshis > 0) {
232
256
  // A commission is required...
233
257
  if (commission == null)
@@ -265,10 +289,7 @@ async function validateCommitNewTxToStorageArgs(storage, userId, params) {
265
289
  txScriptOffsets,
266
290
  transactionId,
267
291
  transaction,
268
- inputOutputs,
269
292
  outputOutputs,
270
- commission,
271
- beef,
272
293
  req,
273
294
  outputUpdates: [],
274
295
  // update txid, status in transactions table and drop rawTransaction value
@@ -1 +1 @@
1
- {"version":3,"file":"processAction.js","sourceRoot":"","sources":["../../../../src/storage/methods/processAction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"processAction.js","sourceRoot":"","sources":["../../../../src/storage/methods/processAction.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import type { PaymentReplayStore } from '@bsv/payment-express-middleware';
2
+ import type { Knex } from 'knex';
3
+ export declare const PAYMENT_REPLAY_TABLE = "payment_replays";
4
+ /** Durable, replica-safe BRC-105 transaction replay claims. */
5
+ export declare class KnexPaymentReplayStore implements PaymentReplayStore {
6
+ private readonly knex;
7
+ private readonly ttlDays;
8
+ constructor(knex: Knex, ttlDays?: number);
9
+ claim(transactionId: string): Promise<boolean>;
10
+ pruneExpired(now?: Date): Promise<number>;
11
+ }
12
+ //# sourceMappingURL=KnexPaymentReplayStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KnexPaymentReplayStore.d.ts","sourceRoot":"","sources":["../../../../src/storage/remoting/KnexPaymentReplayStore.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AACzE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAEhC,eAAO,MAAM,oBAAoB,oBAAoB,CAAA;AAarD,+DAA+D;AAC/D,qBAAa,sBAAuB,YAAW,kBAAkB;IAE7D,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAF1B,YACmB,IAAI,EAAE,IAAI,EACV,OAAO,GAAE,MAAY,EAKvC;IAEK,KAAK,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAanD;IAEK,YAAY,CAAC,GAAG,OAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAEpD;CACF"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.KnexPaymentReplayStore = exports.PAYMENT_REPLAY_TABLE = void 0;
4
+ exports.PAYMENT_REPLAY_TABLE = 'payment_replays';
5
+ function isDuplicate(error) {
6
+ if (error == null || typeof error !== 'object')
7
+ return false;
8
+ const value = error;
9
+ return (value.code === 'ER_DUP_ENTRY' ||
10
+ value.code === 'SQLITE_CONSTRAINT_PRIMARYKEY' ||
11
+ value.code === 'SQLITE_CONSTRAINT_UNIQUE' ||
12
+ value.errno === 1062);
13
+ }
14
+ /** Durable, replica-safe BRC-105 transaction replay claims. */
15
+ class KnexPaymentReplayStore {
16
+ knex;
17
+ ttlDays;
18
+ constructor(knex, ttlDays = 365) {
19
+ this.knex = knex;
20
+ this.ttlDays = ttlDays;
21
+ if (!Number.isSafeInteger(ttlDays) || (ttlDays !== -1 && ttlDays < 1)) {
22
+ throw new TypeError('KnexPaymentReplayStore ttlDays must be -1 or a positive integer.');
23
+ }
24
+ }
25
+ async claim(transactionId) {
26
+ const now = new Date();
27
+ try {
28
+ await this.knex(exports.PAYMENT_REPLAY_TABLE).insert({
29
+ transactionId,
30
+ createdAt: now,
31
+ expiresAt: this.ttlDays === -1 ? null : new Date(now.getTime() + this.ttlDays * 24 * 60 * 60 * 1_000)
32
+ });
33
+ return true;
34
+ }
35
+ catch (error) {
36
+ if (isDuplicate(error))
37
+ return false;
38
+ throw error;
39
+ }
40
+ }
41
+ async pruneExpired(now = new Date()) {
42
+ return await this.knex(exports.PAYMENT_REPLAY_TABLE).whereNotNull('expiresAt').where('expiresAt', '<=', now).delete();
43
+ }
44
+ }
45
+ exports.KnexPaymentReplayStore = KnexPaymentReplayStore;
46
+ //# sourceMappingURL=KnexPaymentReplayStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KnexPaymentReplayStore.js","sourceRoot":"","sources":["../../../../src/storage/remoting/KnexPaymentReplayStore.ts"],"names":[],"mappings":";;;AAGa,QAAA,oBAAoB,GAAG,iBAAiB,CAAA;AAErD,SAAS,WAAW,CAAC,KAAc;IACjC,IAAI,KAAK,IAAI,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAA;IAC5D,MAAM,KAAK,GAAG,KAA4C,CAAA;IAC1D,OAAO,CACL,KAAK,CAAC,IAAI,KAAK,cAAc;QAC7B,KAAK,CAAC,IAAI,KAAK,8BAA8B;QAC7C,KAAK,CAAC,IAAI,KAAK,0BAA0B;QACzC,KAAK,CAAC,KAAK,KAAK,IAAI,CACrB,CAAA;AACH,CAAC;AAED,+DAA+D;AAC/D;IAEqB,IAAI;IACJ,OAAO;IAF1B,YACmB,IAAU,EACV,OAAO,GAAW,GAAG;oBADrB,IAAI;uBACJ,OAAO;QAExB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,CAAC,IAAI,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC;YACtE,MAAM,IAAI,SAAS,CAAC,kEAAkE,CAAC,CAAA;QACzF,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,aAAqB;QAC/B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QACtB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,IAAI,CAAC,QAAA,oBAAoB,CAAC,CAAC,MAAM,CAAC;gBAC3C,aAAa;gBACb,SAAS,EAAE,GAAG;gBACd,SAAS,EAAE,IAAI,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,OAAO,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC;aACtG,CAAC,CAAA;YACF,OAAO,IAAI,CAAA;QACb,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,WAAW,CAAC,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAA;YACpC,MAAM,KAAK,CAAA;QACb,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,GAAG,GAAG,IAAI,IAAI,EAAE;QACjC,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,QAAA,oBAAoB,CAAC,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,MAAM,EAAE,CAAA;IAC/G,CAAC;CACF"}
@@ -2,9 +2,16 @@ import { AsyncSessionManager, PeerSession } from '@bsv/sdk';
2
2
  import { Knex } from 'knex';
3
3
  export declare const AUTH_SESSION_TABLE = "auth_sessions";
4
4
  export declare const DEFAULT_AUTH_SESSION_TTL_MS: number;
5
+ export declare const DEFAULT_AUTH_SESSION_TOUCH_INTERVAL_MS: number;
5
6
  export interface KnexSessionManagerOptions {
6
7
  /** Session lifetime since its most recent authenticated use. Default: 24 hours. */
7
8
  ttlMs?: number;
9
+ /**
10
+ * Maximum time that an authenticated, timestamp-only session update may be
11
+ * coalesced. Authentication and certificate state changes are always written
12
+ * immediately. Default: 1 minute (or one quarter of ttlMs when shorter).
13
+ */
14
+ touchIntervalMs?: number;
8
15
  /** Testable clock source. Defaults to `Date.now`. */
9
16
  now?: () => number;
10
17
  }
@@ -19,7 +26,10 @@ export interface KnexSessionManagerOptions {
19
26
  export declare class KnexSessionManager implements AsyncSessionManager {
20
27
  private readonly knex;
21
28
  private readonly ttlMs;
29
+ private readonly touchIntervalMs;
22
30
  private readonly now;
31
+ /** Rows associated with session objects returned by this manager. */
32
+ private readonly persistedRows;
23
33
  constructor(knex: Knex, options?: KnexSessionManagerOptions);
24
34
  addSession(session: PeerSession): Promise<void>;
25
35
  updateSession(session: PeerSession): Promise<void>;
@@ -30,6 +40,16 @@ export declare class KnexSessionManager implements AsyncSessionManager {
30
40
  pruneExpiredSessions(): Promise<number>;
31
41
  private activeSessions;
32
42
  private persistSession;
43
+ private validatePersistentSession;
44
+ /**
45
+ * Coalesce only the routine last-used write performed after an authenticated
46
+ * general message. The WeakMap proves that this exact session object came
47
+ * from a durable row read (or successful write) by this manager. Every
48
+ * authentication/certificate transition and every unrecognized object still
49
+ * takes the monotonic database path.
50
+ */
51
+ private canCoalesceTouch;
52
+ private sessionForRow;
33
53
  private updateIfCurrentOrNewer;
34
54
  private mergeNullableBoolean;
35
55
  private toTableAuthSession;
@@ -1 +1 @@
1
- {"version":3,"file":"KnexSessionManager.d.ts","sourceRoot":"","sources":["../../../../src/storage/remoting/KnexSessionManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAG3B,eAAO,MAAM,kBAAkB,kBAAkB,CAAA;AACjD,eAAO,MAAM,2BAA2B,QAAsB,CAAA;AAE9D,MAAM,WAAW,yBAAyB;IACxC,mFAAmF;IACnF,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,qDAAqD;IACrD,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CACnB;AAED;;;;;;;GAOG;AACH,qBAAa,kBAAmB,YAAW,mBAAmB;IAI/C,OAAO,CAAC,QAAQ,CAAC,IAAI;IAHlC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAElC,YAA8B,IAAI,EAAE,IAAI,EAAE,OAAO,GAAE,yBAA8B,EAOhF;IAEK,UAAU,CAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAErD;IAEK,aAAa,CAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAExD;IAEK,UAAU,CAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAYtE;IAEK,aAAa,CAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBxD;IAEK,UAAU,CAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAUtD;IAED,8EAA8E;IACxE,oBAAoB,IAAK,OAAO,CAAC,MAAM,CAAC,CAI7C;IAED,OAAO,CAAC,cAAc;YAKR,cAAc;YAqCd,sBAAsB;IAwBpC,OAAO,CAAC,oBAAoB;IAe5B,OAAO,CAAC,kBAAkB;CAiB3B"}
1
+ {"version":3,"file":"KnexSessionManager.d.ts","sourceRoot":"","sources":["../../../../src/storage/remoting/KnexSessionManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAG3B,eAAO,MAAM,kBAAkB,kBAAkB,CAAA;AACjD,eAAO,MAAM,2BAA2B,QAAsB,CAAA;AAC9D,eAAO,MAAM,sCAAsC,QAAY,CAAA;AAG/D,MAAM,WAAW,yBAAyB;IACxC,mFAAmF;IACnF,KAAK,CAAC,EAAE,MAAM,CAAA;IACd;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,qDAAqD;IACrD,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;CACnB;AAED;;;;;;;GAOG;AACH,qBAAa,kBAAmB,YAAW,mBAAmB;IAO/C,OAAO,CAAC,QAAQ,CAAC,IAAI;IANlC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAC9B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAQ;IACxC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,qEAAqE;IACrE,OAAO,CAAC,QAAQ,CAAC,aAAa,CAA+C;IAE7E,YAA8B,IAAI,EAAE,IAAI,EAAE,OAAO,GAAE,yBAA8B,EAchF;IAEK,UAAU,CAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAErD;IAEK,aAAa,CAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAExD;IAEK,UAAU,CAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAYtE;IAEK,aAAa,CAAE,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBxD;IAEK,UAAU,CAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAUtD;IAED,8EAA8E;IACxE,oBAAoB,IAAK,OAAO,CAAC,MAAM,CAAC,CAI7C;IAED,OAAO,CAAC,cAAc;YAKR,cAAc;IAyC5B,OAAO,CAAC,yBAAyB;IASjC;;;;;;OAMG;IACH,OAAO,CAAC,gBAAgB;IAgBxB,OAAO,CAAC,aAAa;YAMP,sBAAsB;IAwBpC,OAAO,CAAC,oBAAoB;IAe5B,OAAO,CAAC,kBAAkB;CAiB3B"}