@bsv/wallet-toolbox 2.1.27 → 2.1.28

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 (42) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/docs/client.md +303 -153
  3. package/docs/monitor.md +69 -1
  4. package/docs/storage.md +107 -31
  5. package/docs/wallet.md +246 -118
  6. package/out/src/monitor/Monitor.d.ts.map +1 -1
  7. package/out/src/monitor/Monitor.js +12 -0
  8. package/out/src/monitor/Monitor.js.map +1 -1
  9. package/out/src/monitor/tasks/TaskCheckNoSends.d.ts +59 -1
  10. package/out/src/monitor/tasks/TaskCheckNoSends.d.ts.map +1 -1
  11. package/out/src/monitor/tasks/TaskCheckNoSends.js +93 -4
  12. package/out/src/monitor/tasks/TaskCheckNoSends.js.map +1 -1
  13. package/out/src/services/__tests/getFiatExchangeRate.test.js +25 -0
  14. package/out/src/services/__tests/getFiatExchangeRate.test.js.map +1 -1
  15. package/out/src/services/__tests/getMerklePath.test.js +8 -0
  16. package/out/src/services/__tests/getMerklePath.test.js.map +1 -1
  17. package/out/src/services/__tests/verifyBeef.test.js +37 -0
  18. package/out/src/services/__tests/verifyBeef.test.js.map +1 -1
  19. package/out/src/services/chaintracker/__tests/ChaintracksChainTracker.test.js +36 -0
  20. package/out/src/services/chaintracker/__tests/ChaintracksChainTracker.test.js.map +1 -1
  21. package/out/src/services/chaintracker/__tests/ChaintracksServiceClient.test.js +34 -0
  22. package/out/src/services/chaintracker/__tests/ChaintracksServiceClient.test.js.map +1 -1
  23. package/out/src/signer/methods/internalizeAction.d.ts +8 -1
  24. package/out/src/signer/methods/internalizeAction.d.ts.map +1 -1
  25. package/out/src/signer/methods/internalizeAction.js +8 -1
  26. package/out/src/signer/methods/internalizeAction.js.map +1 -1
  27. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  28. package/out/src/storage/StorageProvider.js +80 -2
  29. package/out/src/storage/StorageProvider.js.map +1 -1
  30. package/out/src/storage/methods/ListActionsSpecOp.d.ts.map +1 -1
  31. package/out/src/storage/methods/ListActionsSpecOp.js +68 -5
  32. package/out/src/storage/methods/ListActionsSpecOp.js.map +1 -1
  33. package/out/src/storage/methods/createAction.js +27 -13
  34. package/out/src/storage/methods/createAction.js.map +1 -1
  35. package/out/src/storage/methods/internalizeAction.d.ts +69 -2
  36. package/out/src/storage/methods/internalizeAction.d.ts.map +1 -1
  37. package/out/src/storage/methods/internalizeAction.js +206 -26
  38. package/out/src/storage/methods/internalizeAction.js.map +1 -1
  39. package/out/src/storage/portable/index.d.ts.map +1 -1
  40. package/out/src/storage/portable/index.js +160 -114
  41. package/out/src/storage/portable/index.js.map +1 -1
  42. package/package.json +6 -6
@@ -1,6 +1,63 @@
1
- import { InternalizeActionArgs } from '@bsv/sdk';
1
+ import { Transaction as BsvTransaction, InternalizeActionArgs } from '@bsv/sdk';
2
2
  import { StorageProvider } from '../StorageProvider';
3
3
  import { AuthId, StorageInternalizeActionResult } from '../../sdk/WalletStorage.interfaces';
4
+ /**
5
+ * Record of a spent-input transition this internalize call performed.
6
+ * Carries enough state to roll back the exact change via
7
+ * {@link restoreInputsToSpendable}: which row, and whether we touched
8
+ * `spentBy` (only true for rows owned by the internalizing user).
9
+ */
10
+ export interface SpentInputTransition {
11
+ outputId: number;
12
+ /** true if the call set spentBy; false if only spendable was flipped. */
13
+ setSpentBy: boolean;
14
+ }
15
+ /**
16
+ * Mark every storage row at each consumed-input outpoint as spent — across
17
+ * all users that track that outpoint. An on-chain spend invalidates the UTXO
18
+ * for every wallet that references it, not just the wallet that called
19
+ * `internalizeAction`. Returns the per-row transitions so the caller can
20
+ * roll back via {@link restoreInputsToSpendable} on broadcast failure.
21
+ *
22
+ * Cross-user semantics:
23
+ * - For rows owned by `userId` (the internalizing user) we also set
24
+ * `spentBy=transactionId`. They own the corresponding transaction
25
+ * record; the FK target exists in their scope.
26
+ * - For rows owned by other users we set `spendable=false` and leave
27
+ * `spentBy` untouched. `spentBy` references the owning user's
28
+ * `transactions.transactionId`, and that user has no record of our
29
+ * transaction yet — they'd need to internalize it themselves to get
30
+ * one. Leaving `spentBy` undefined keeps the field consistent with
31
+ * "this UTXO is spent, but my wallet didn't witness the spend".
32
+ *
33
+ * Mirrors what `createAction` does for wallet-originated transactions and
34
+ * what `TaskUnFail.unfailReq` does when reviving a previously-failed tx.
35
+ * Without this, an externally-broadcast tx that consumed user UTXOs would
36
+ * leave those UTXOs as phantom spendable rows, picked up by subsequent
37
+ * `createAction` fund selection.
38
+ *
39
+ * Idempotent: rows already `spendable=false` are skipped. Rows already
40
+ * `spentBy` a different transaction are also skipped (a competing spend
41
+ * has been recorded; do not overwrite).
42
+ */
43
+ export declare function markUserInputsSpent(storage: StorageProvider, userId: number, tx: BsvTransaction, transactionId: number): Promise<SpentInputTransition[]>;
44
+ /**
45
+ * Revert the spendable=true → false transitions performed by
46
+ * {@link markUserInputsSpent}. Used when an internalize call's downstream
47
+ * broadcast fails non-fatally so the caller can retry with the same UTXOs.
48
+ *
49
+ * Only undoes what was changed: `spendable=true` always; `spentBy=undefined`
50
+ * only when the original transition set it. Avoids clobbering a competing
51
+ * spent-by on cross-user rows.
52
+ *
53
+ * The downstream `attemptToPostReqsToNetwork` path also calls
54
+ * `updateTransactionStatus('failed')` on doubleSpend/invalidTx outcomes,
55
+ * which independently restores same-user inputs (via
56
+ * `EntityTransaction.getInputs` filtered by userId). This explicit rollback
57
+ * covers cross-user rows and any path where the downstream restore did not
58
+ * run, and is a no-op when the downstream restore already happened.
59
+ */
60
+ export declare function restoreInputsToSpendable(storage: StorageProvider, transitions: SpentInputTransition[]): Promise<void>;
4
61
  /**
5
62
  * Internalize Action allows a wallet to take ownership of outputs in a pre-existing transaction.
6
63
  * The transaction may, or may not already be known to both the storage and user.
@@ -14,7 +71,17 @@ import { AuthId, StorageInternalizeActionResult } from '../../sdk/WalletStorage.
14
71
  * Processing starts with simple validation and then checks for a pre-existing transaction.
15
72
  * If the transaction is already known to the user, then the outputs are reviewed against the existing outputs treatment,
16
73
  * and merge rules are added to the arguments passed to the storage layer.
17
- * The existing transaction must be in the 'unproven' or 'completed' status. Any other status is an error.
74
+ *
75
+ * The existing transaction's `status` determines what the merge path does next:
76
+ * - `'unproven'` or `'completed'`: outputs are merged into the existing record. The transaction status is left as-is.
77
+ * - `'nosend'`: an ambiguous case. The transaction was created with `noSend: true` and may have been externally
78
+ * broadcast, may be sitting in a sendWith chain, or may be stuck mid-flight. The merge path treats the
79
+ * `internalizeAction` call as explicit authorization to advance the lifecycle. Specifically: `transactions.status`
80
+ * is promoted to `'completed'` (when a BUMP is included in the BEEF) or `'unproven'` (otherwise), and the
81
+ * `proven_tx_req` is moved out of `'nosend'` so Monitor's standard proof-fetching flow can finalize it.
82
+ * This makes the `internalizeAction` semantics consistent regardless of whether the originator shares the
83
+ * same storage as the internalizer or not.
84
+ * - Any other status: an error.
18
85
  *
19
86
  * When the transaction already exists, the description is updated. The isOutgoing sense is not changed.
20
87
  *
@@ -1 +1 @@
1
- {"version":3,"file":"internalizeAction.d.ts","sourceRoot":"","sources":["../../../../src/storage/methods/internalizeAction.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,qBAAqB,EAKtB,MAAM,UAAU,CAAA;AAEjB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,MAAM,EAAE,8BAA8B,EAAsB,MAAM,oCAAoC,CAAA;AAW/G;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,8BAA8B,CAAC,CAQzC"}
1
+ {"version":3,"file":"internalizeAction.d.ts","sourceRoot":"","sources":["../../../../src/storage/methods/internalizeAction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,IAAI,cAAc,EAG7B,qBAAqB,EAOtB,MAAM,UAAU,CAAA;AAEjB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,MAAM,EAAE,8BAA8B,EAAsB,MAAM,oCAAoC,CAAA;AAW/G;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAA;IAChB,yEAAyE;IACzE,UAAU,EAAE,OAAO,CAAA;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,cAAc,EAClB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,oBAAoB,EAAE,CAAC,CA0BjC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,oBAAoB,EAAE,GAClC,OAAO,CAAC,IAAI,CAAC,CAUf;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,8BAA8B,CAAC,CAQzC"}
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.markUserInputsSpent = markUserInputsSpent;
4
+ exports.restoreInputsToSpendable = restoreInputsToSpendable;
3
5
  exports.internalizeAction = internalizeAction;
4
6
  const sdk_1 = require("@bsv/sdk");
5
7
  const processAction_1 = require("./processAction");
@@ -7,6 +9,92 @@ const WERR_errors_1 = require("../../sdk/WERR_errors");
7
9
  const utilityHelpers_1 = require("../../utility/utilityHelpers");
8
10
  const EntityProvenTxReq_1 = require("../schema/entities/EntityProvenTxReq");
9
11
  const blockHeaderUtilities_1 = require("../../services/chaintracker/chaintracks/util/blockHeaderUtilities");
12
+ /**
13
+ * Mark every storage row at each consumed-input outpoint as spent — across
14
+ * all users that track that outpoint. An on-chain spend invalidates the UTXO
15
+ * for every wallet that references it, not just the wallet that called
16
+ * `internalizeAction`. Returns the per-row transitions so the caller can
17
+ * roll back via {@link restoreInputsToSpendable} on broadcast failure.
18
+ *
19
+ * Cross-user semantics:
20
+ * - For rows owned by `userId` (the internalizing user) we also set
21
+ * `spentBy=transactionId`. They own the corresponding transaction
22
+ * record; the FK target exists in their scope.
23
+ * - For rows owned by other users we set `spendable=false` and leave
24
+ * `spentBy` untouched. `spentBy` references the owning user's
25
+ * `transactions.transactionId`, and that user has no record of our
26
+ * transaction yet — they'd need to internalize it themselves to get
27
+ * one. Leaving `spentBy` undefined keeps the field consistent with
28
+ * "this UTXO is spent, but my wallet didn't witness the spend".
29
+ *
30
+ * Mirrors what `createAction` does for wallet-originated transactions and
31
+ * what `TaskUnFail.unfailReq` does when reviving a previously-failed tx.
32
+ * Without this, an externally-broadcast tx that consumed user UTXOs would
33
+ * leave those UTXOs as phantom spendable rows, picked up by subsequent
34
+ * `createAction` fund selection.
35
+ *
36
+ * Idempotent: rows already `spendable=false` are skipped. Rows already
37
+ * `spentBy` a different transaction are also skipped (a competing spend
38
+ * has been recorded; do not overwrite).
39
+ */
40
+ async function markUserInputsSpent(storage, userId, tx, transactionId) {
41
+ const outpoints = tx.inputs
42
+ .map(i => { var _a, _b; return ({ txid: (_a = i.sourceTXID) !== null && _a !== void 0 ? _a : '', vout: (_b = i.sourceOutputIndex) !== null && _b !== void 0 ? _b : 0 }); })
43
+ .filter(o => o.txid !== '');
44
+ if (outpoints.length === 0)
45
+ return [];
46
+ const transitioned = [];
47
+ await storage.transaction(async (trx) => {
48
+ for (const op of outpoints) {
49
+ const matches = await storage.findOutputs({
50
+ partial: { txid: op.txid, vout: op.vout },
51
+ noScript: true,
52
+ trx
53
+ });
54
+ for (const o of matches) {
55
+ if (!o.spendable)
56
+ continue;
57
+ if (o.spentBy != null && o.spentBy !== transactionId)
58
+ continue;
59
+ const setSpentBy = o.userId === userId;
60
+ const update = setSpentBy
61
+ ? { spendable: false, spentBy: transactionId }
62
+ : { spendable: false };
63
+ await storage.updateOutput((0, utilityHelpers_1.verifyId)(o.outputId), update, trx);
64
+ transitioned.push({ outputId: (0, utilityHelpers_1.verifyId)(o.outputId), setSpentBy });
65
+ }
66
+ }
67
+ });
68
+ return transitioned;
69
+ }
70
+ /**
71
+ * Revert the spendable=true → false transitions performed by
72
+ * {@link markUserInputsSpent}. Used when an internalize call's downstream
73
+ * broadcast fails non-fatally so the caller can retry with the same UTXOs.
74
+ *
75
+ * Only undoes what was changed: `spendable=true` always; `spentBy=undefined`
76
+ * only when the original transition set it. Avoids clobbering a competing
77
+ * spent-by on cross-user rows.
78
+ *
79
+ * The downstream `attemptToPostReqsToNetwork` path also calls
80
+ * `updateTransactionStatus('failed')` on doubleSpend/invalidTx outcomes,
81
+ * which independently restores same-user inputs (via
82
+ * `EntityTransaction.getInputs` filtered by userId). This explicit rollback
83
+ * covers cross-user rows and any path where the downstream restore did not
84
+ * run, and is a no-op when the downstream restore already happened.
85
+ */
86
+ async function restoreInputsToSpendable(storage, transitions) {
87
+ if (transitions.length === 0)
88
+ return;
89
+ await storage.transaction(async (trx) => {
90
+ for (const t of transitions) {
91
+ const update = t.setSpentBy
92
+ ? { spendable: true, spentBy: undefined }
93
+ : { spendable: true };
94
+ await storage.updateOutput((0, utilityHelpers_1.verifyId)(t.outputId), update, trx);
95
+ }
96
+ });
97
+ }
10
98
  /**
11
99
  * Internalize Action allows a wallet to take ownership of outputs in a pre-existing transaction.
12
100
  * The transaction may, or may not already be known to both the storage and user.
@@ -20,7 +108,17 @@ const blockHeaderUtilities_1 = require("../../services/chaintracker/chaintracks/
20
108
  * Processing starts with simple validation and then checks for a pre-existing transaction.
21
109
  * If the transaction is already known to the user, then the outputs are reviewed against the existing outputs treatment,
22
110
  * and merge rules are added to the arguments passed to the storage layer.
23
- * The existing transaction must be in the 'unproven' or 'completed' status. Any other status is an error.
111
+ *
112
+ * The existing transaction's `status` determines what the merge path does next:
113
+ * - `'unproven'` or `'completed'`: outputs are merged into the existing record. The transaction status is left as-is.
114
+ * - `'nosend'`: an ambiguous case. The transaction was created with `noSend: true` and may have been externally
115
+ * broadcast, may be sitting in a sendWith chain, or may be stuck mid-flight. The merge path treats the
116
+ * `internalizeAction` call as explicit authorization to advance the lifecycle. Specifically: `transactions.status`
117
+ * is promoted to `'completed'` (when a BUMP is included in the BEEF) or `'unproven'` (otherwise), and the
118
+ * `proven_tx_req` is moved out of `'nosend'` so Monitor's standard proof-fetching flow can finalize it.
119
+ * This makes the `internalizeAction` semantics consistent regardless of whether the originator shares the
120
+ * same storage as the internalizer or not.
121
+ * - Any other status: an error.
24
122
  *
25
123
  * When the transaction already exists, the description is updated. The isOutgoing sense is not changed.
26
124
  *
@@ -62,6 +160,7 @@ class InternalizeActionContext {
62
160
  this.basketInsertions = [];
63
161
  this.walletPayments = [];
64
162
  this.eos = [];
163
+ this.spentInputs = [];
65
164
  }
66
165
  get isMerge() {
67
166
  return this.r.isMerge;
@@ -246,9 +345,44 @@ class InternalizeActionContext {
246
345
  }
247
346
  return tr.tx;
248
347
  }
348
+ async findOrInsertProvenTxFromBump(bump, btx) {
349
+ const now = new Date();
350
+ const merkleRoot = bump.computeRoot(this.txid);
351
+ const indexEntry = bump.path[0].find(p => p.hash === this.txid);
352
+ if (indexEntry == null) {
353
+ throw new WERR_errors_1.WERR_INTERNAL(`Could not determine transaction index for txid ${this.txid} in bump path. Expected to find txid in bump.path[0]: ${JSON.stringify(bump.path[0])}`);
354
+ }
355
+ const index = indexEntry.offset;
356
+ const header = await this.storage.getServices().getHeaderForHeight(bump.blockHeight);
357
+ if (!header) {
358
+ throw new WERR_errors_1.WERR_INTERNAL(`Block header not found for height ${bump.blockHeight}`);
359
+ }
360
+ const hash = (0, blockHeaderUtilities_1.blockHash)(header);
361
+ const provenTxR = await this.storage.findOrInsertProvenTx({
362
+ created_at: now,
363
+ updated_at: now,
364
+ provenTxId: 0,
365
+ txid: this.txid,
366
+ height: bump.blockHeight,
367
+ index,
368
+ merklePath: bump.toBinary(),
369
+ rawTx: btx.rawTx,
370
+ blockHash: hash,
371
+ merkleRoot
372
+ });
373
+ return provenTxR.proven;
374
+ }
249
375
  async mergedInternalize() {
250
376
  const transactionId = this.etx.transactionId;
377
+ const wasNoSend = this.etx.status === 'nosend';
251
378
  await this.addLabels(transactionId);
379
+ // Externally-broadcast txs internalized into a pre-existing storage
380
+ // record (typically a nosend created by this wallet) still need their
381
+ // consumed user UTXOs marked spent. createAction marks them when the
382
+ // tx is wallet-originated, but a nosend can be merged from a sender
383
+ // that doesn't share storage. Idempotent for the wallet-originated
384
+ // case — already-spent outputs are skipped.
385
+ await this.markInputsSpent(transactionId);
252
386
  for (const payment of this.walletPayments) {
253
387
  if ((payment.eo != null) && !payment.ignore)
254
388
  await this.mergeWalletPaymentForOutput(transactionId, payment);
@@ -261,6 +395,60 @@ class InternalizeActionContext {
261
395
  else
262
396
  await this.storeNewBasketInsertionForOutput(transactionId, basket);
263
397
  }
398
+ // Lifecycle advance when merging into a tx that was 'nosend'.
399
+ //
400
+ // Background: an internalizeAction call against an existing tx in
401
+ // 'nosend' status is the caller asserting the tx has now been
402
+ // externally broadcast (and potentially mined if the BEEF includes
403
+ // a BUMP). Before this advance, mergedInternalize only updated
404
+ // labels + per-output ownership records and left transactions.status
405
+ // and proven_tx_reqs.status unchanged. The nosend state then had no
406
+ // reliable retirement path: TaskCheckNoSends's default daily cadence
407
+ // combined with intermittent wallet uptime meant the req could sit
408
+ // in 'nosend' indefinitely, and a subsequent abortAction call would
409
+ // unconditionally invalidate the on-chain tx — orphaning every
410
+ // output the tx produced.
411
+ //
412
+ // BUMP-present path: mirror newInternalize's findOrInsertProvenTx
413
+ // path, then promote the existing transaction record to 'completed'
414
+ // with the new provenTxId and retire the proven_tx_req to
415
+ // 'completed' too.
416
+ //
417
+ // BUMP-absent path: promote transactions.status to 'unproven' (so
418
+ // listOutputs filters the tx's outputs into the spendable set
419
+ // immediately) and transition the proven_tx_req to 'unmined' so
420
+ // TaskCheckForProofs picks it up on its next nudge cycle. This
421
+ // hands off to Monitor's standard proof-fetching flow.
422
+ if (wasNoSend) {
423
+ const bump = this.ab.findBump(this.txid);
424
+ if (bump != null) {
425
+ const btx = this.ab.findTxid(this.txid);
426
+ if (btx == null) {
427
+ throw new WERR_errors_1.WERR_INTERNAL(`Could not find transaction ${this.txid} in AtomicBEEF`);
428
+ }
429
+ const proven = await this.findOrInsertProvenTxFromBump(bump, btx);
430
+ await this.storage.updateTransaction(transactionId, {
431
+ provenTxId: proven.provenTxId,
432
+ status: 'completed'
433
+ });
434
+ const req = await EntityProvenTxReq_1.EntityProvenTxReq.fromStorageTxid(this.storage, this.txid);
435
+ if (req != null && req.status === 'nosend') {
436
+ req.addHistoryNote({ what: 'internalizeAction-bumpRetire', userId: this.userId });
437
+ req.provenTxId = proven.provenTxId;
438
+ req.status = 'completed';
439
+ await req.updateStorageDynamicProperties(this.storage);
440
+ }
441
+ }
442
+ else {
443
+ await this.storage.updateTransaction(transactionId, { status: 'unproven' });
444
+ const req = await EntityProvenTxReq_1.EntityProvenTxReq.fromStorageTxid(this.storage, this.txid);
445
+ if (req != null && req.status === 'nosend') {
446
+ req.addHistoryNote({ what: 'internalizeAction-nosendRetire', userId: this.userId });
447
+ req.status = 'unmined';
448
+ await req.updateStorageDynamicProperties(this.storage);
449
+ }
450
+ }
451
+ }
264
452
  }
265
453
  /**
266
454
  * internalize output(s) from a transaction with txid unknown to storage.
@@ -276,34 +464,13 @@ class InternalizeActionContext {
276
464
  // The presence bump indicates the transaction has already been mined.
277
465
  // Verify a provenTx record exist before creating a new transaction with completed status...
278
466
  // Which normally means creating a new provenTx record.
279
- const now = new Date();
280
- const merkleRoot = bump.computeRoot(this.txid);
281
- const indexEntry = bump.path[0].find(p => p.hash === this.txid);
282
- if (indexEntry == null) {
283
- throw new WERR_errors_1.WERR_INTERNAL(`Could not determine transaction index for txid ${this.txid} in bump path. Expected to find txid in bump.path[0]: ${JSON.stringify(bump.path[0])}`);
284
- }
285
- const index = indexEntry.offset;
286
- const header = await this.storage.getServices().getHeaderForHeight(bump.blockHeight);
287
- if (!header) {
288
- throw new WERR_errors_1.WERR_INTERNAL(`Block header not found for height ${bump.blockHeight}`);
289
- }
290
- const hash = (0, blockHeaderUtilities_1.blockHash)(header);
291
- const provenTxR = await this.storage.findOrInsertProvenTx({
292
- created_at: now,
293
- updated_at: now,
294
- provenTxId: 0,
295
- txid: this.txid,
296
- height: bump.blockHeight,
297
- index,
298
- merklePath: bump.toBinary(),
299
- rawTx: btx.rawTx,
300
- blockHash: hash,
301
- merkleRoot
302
- });
303
- pr.proven = provenTxR.proven;
467
+ pr.proven = await this.findOrInsertProvenTxFromBump(bump, btx);
304
468
  }
305
469
  this.etx = await this.findOrInsertTargetTransaction(this.satoshis, pr.proven);
306
470
  const transactionId = this.etx.transactionId;
471
+ // Mark any user-owned outputs the incoming tx consumes as spent BEFORE
472
+ // attempting broadcast. If broadcast fails we restore them below.
473
+ await this.markInputsSpent(transactionId);
307
474
  if (pr.proven == null) {
308
475
  // beef doesn't include proof of mining for the transaction (etx).
309
476
  // the new transaction record has been added to storage, but (baring race conditions)
@@ -332,6 +499,11 @@ class InternalizeActionContext {
332
499
  };
333
500
  const { swr, ndr } = await (0, processAction_1.shareReqsWithWorld)(this.storage, this.userId, [], false, r);
334
501
  if (ndr[0].status !== 'success') {
502
+ // Roll back the spendable=true → false transitions performed above
503
+ // so the caller can retry with the same UTXOs. Idempotent w.r.t.
504
+ // attemptToPostReqsToNetwork's own updateTransactionStatus('failed')
505
+ // restore on doubleSpend/invalidTx outcomes.
506
+ await this.restoreSpentInputs();
335
507
  this.r.sendWithResults = swr;
336
508
  this.r.notDelayedResults = ndr;
337
509
  // abort the internalize action, WERR_REVIEW_ACTIONS exception will be thrown
@@ -352,6 +524,14 @@ class InternalizeActionContext {
352
524
  await this.storage.findOrInsertTxLabelMap((0, utilityHelpers_1.verifyId)(transactionId), (0, utilityHelpers_1.verifyId)(txLabel.txLabelId));
353
525
  }
354
526
  }
527
+ async markInputsSpent(transactionId) {
528
+ const transitioned = await markUserInputsSpent(this.storage, this.userId, this.tx, transactionId);
529
+ this.spentInputs.push(...transitioned);
530
+ }
531
+ async restoreSpentInputs() {
532
+ await restoreInputsToSpendable(this.storage, this.spentInputs);
533
+ this.spentInputs = [];
534
+ }
355
535
  async addBasketTags(basket, outputId) {
356
536
  for (const tag of basket.tags || []) {
357
537
  await this.storage.tagOutput({ outputId, userId: this.userId }, tag);
@@ -1 +1 @@
1
- {"version":3,"file":"internalizeAction.js","sourceRoot":"","sources":["../../../../src/storage/methods/internalizeAction.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internalizeAction.js","sourceRoot":"","sources":["../../../../src/storage/methods/internalizeAction.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/portable/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/storage/portable/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAsBpD,KAAK,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAA;AAC9C,KAAK,SAAS,GAAG,aAAa,GAAG,SAAS,EAAE,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAAA;AAC3E,KAAK,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;AAE5C,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,WAAW,EAAE,CAAA;IACxB,YAAY,EAAE,WAAW,EAAE,CAAA;IAC3B,aAAa,EAAE,WAAW,EAAE,CAAA;IAC5B,YAAY,EAAE,WAAW,EAAE,CAAA;IAC3B,WAAW,EAAE,WAAW,EAAE,CAAA;IAC1B,OAAO,EAAE,WAAW,EAAE,CAAA;IACtB,UAAU,EAAE,WAAW,EAAE,CAAA;IACzB,aAAa,EAAE,WAAW,EAAE,CAAA;IAC5B,QAAQ,EAAE,WAAW,EAAE,CAAA;IACvB,WAAW,EAAE,WAAW,EAAE,CAAA;IAC1B,YAAY,EAAE,WAAW,EAAE,CAAA;IAC3B,iBAAiB,EAAE,WAAW,EAAE,CAAA;IAChC,UAAU,EAAE,WAAW,EAAE,CAAA;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,EAAE,CAAA;IACP,KAAK,EAAE,yBAAyB,CAAA;IAChC,aAAa,EAAE,CAAC,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,aAAa,EAAE,WAAW,CAAA;IAC1B,IAAI,EAAE,WAAW,CAAA;IACjB,MAAM,EAAE,WAAW,CAAA;CACpB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,GAAG,SAAS,CAAA;CAC1B;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,OAAO,GAAG,SAAS,CAAA;IACzB,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;CACrB;AA6FD,wBAAsB,WAAW,CAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAgE1G;AAED,wBAAsB,eAAe,CAAE,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAErG;AAED,wBAAgB,cAAc,CAAE,IAAI,EAAE,MAAM,GAAG,eAAe,CAQ7D;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,eAAe,EACxB,cAAc,EAAE,eAAe,GAAG,MAAM,EACxC,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,iBAAiB,CAAC,CAU5B;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,EAAE,CAAC,CAEnB;AAED,wBAAsB,WAAW,CAC/B,OAAO,EAAE,eAAe,EACxB,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,EAC5B,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,iBAAiB,CAAC,CAE5B;AAED,wBAAsB,YAAY,CAChC,cAAc,EAAE,eAAe,GAAG,MAAM,EACxC,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,YAAY,GACrB,OAAO,CAAC,MAAM,EAAE,CAAC,CA4BnB;AAwCD,wBAAsB,YAAY,CAAE,KAAK,EAAE,MAAM,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAa5G"}