@bsv/wallet-toolbox 2.1.25 → 3.0.0-alpha.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 (257) hide show
  1. package/docs/CREATEACTION_BLOCKERS.md +391 -0
  2. package/docs/CUTOVER_RUNBOOK.md +95 -0
  3. package/docs/REQUIREMENTS_COMPLIANCE.md +157 -0
  4. package/docs/ROLLOUT_PLAN.md +273 -0
  5. package/docs/SESSION_HANDOFF.md +298 -0
  6. package/docs/STORAGE_METHOD_WIRING.md +176 -0
  7. package/docs/client.md +3765 -1325
  8. package/docs/monitor.md +255 -33
  9. package/docs/services.md +304 -280
  10. package/docs/setup.md +24 -24
  11. package/docs/storage.md +2783 -251
  12. package/docs/v3-upgrade/index.html +911 -0
  13. package/docs/wallet.md +4956 -9455
  14. package/out/src/Wallet.d.ts.map +1 -1
  15. package/out/src/Wallet.js.map +1 -1
  16. package/out/src/WalletLogger.d.ts.map +1 -1
  17. package/out/src/WalletLogger.js.map +1 -1
  18. package/out/src/__tests/CWIStyleWalletManager.test.js.map +1 -1
  19. package/out/src/__tests/WalletPermissionsManager.fixtures.d.ts.map +1 -1
  20. package/out/src/__tests/WalletPermissionsManager.fixtures.js.map +1 -1
  21. package/out/src/entropy/EntropyCollector.d.ts.map +1 -1
  22. package/out/src/entropy/EntropyCollector.js.map +1 -1
  23. package/out/src/monitor/LeasedMonitorTask.d.ts +43 -0
  24. package/out/src/monitor/LeasedMonitorTask.d.ts.map +1 -0
  25. package/out/src/monitor/LeasedMonitorTask.js +89 -0
  26. package/out/src/monitor/LeasedMonitorTask.js.map +1 -0
  27. package/out/src/monitor/Monitor.d.ts +7 -0
  28. package/out/src/monitor/Monitor.d.ts.map +1 -1
  29. package/out/src/monitor/Monitor.js +7 -0
  30. package/out/src/monitor/Monitor.js.map +1 -1
  31. package/out/src/monitor/MonitorDaemon.d.ts.map +1 -1
  32. package/out/src/monitor/MonitorDaemon.js.map +1 -1
  33. package/out/src/monitor/V7LeasedTask.d.ts +43 -0
  34. package/out/src/monitor/V7LeasedTask.d.ts.map +1 -0
  35. package/out/src/monitor/V7LeasedTask.js +89 -0
  36. package/out/src/monitor/V7LeasedTask.js.map +1 -0
  37. package/out/src/monitor/index.all.d.ts +1 -0
  38. package/out/src/monitor/index.all.d.ts.map +1 -1
  39. package/out/src/monitor/index.all.js +1 -0
  40. package/out/src/monitor/index.all.js.map +1 -1
  41. package/out/src/monitor/tasks/TaskCheckForProofs.d.ts +2 -0
  42. package/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +1 -1
  43. package/out/src/monitor/tasks/TaskCheckForProofs.js +55 -0
  44. package/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -1
  45. package/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -1
  46. package/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
  47. package/out/src/sdk/WalletStorage.interfaces.d.ts +59 -59
  48. package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -1
  49. package/out/src/sdk/types.d.ts +32 -0
  50. package/out/src/sdk/types.d.ts.map +1 -1
  51. package/out/src/sdk/types.js +50 -1
  52. package/out/src/sdk/types.js.map +1 -1
  53. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts.map +1 -1
  54. package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -1
  55. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +1 -1
  56. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -1
  57. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts.map +1 -1
  58. package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js.map +1 -1
  59. package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.d.ts.map +1 -1
  60. package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.js.map +1 -1
  61. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.d.ts.map +1 -1
  62. package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.js.map +1 -1
  63. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts.map +1 -1
  64. package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js.map +1 -1
  65. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts.map +1 -1
  66. package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js.map +1 -1
  67. package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.d.ts.map +1 -1
  68. package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.js.map +1 -1
  69. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.d.ts.map +1 -1
  70. package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js.map +1 -1
  71. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +1 -1
  72. package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -1
  73. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.d.ts.map +1 -1
  74. package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js.map +1 -1
  75. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts.map +1 -1
  76. package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js.map +1 -1
  77. package/out/src/services/chaintracker/chaintracks/util/__tests/SingleWriterMultiReaderLock.test.js.map +1 -1
  78. package/out/src/storage/StorageIdb.d.ts.map +1 -1
  79. package/out/src/storage/StorageIdb.js +10 -5
  80. package/out/src/storage/StorageIdb.js.map +1 -1
  81. package/out/src/storage/StorageKnex.d.ts +133 -3
  82. package/out/src/storage/StorageKnex.d.ts.map +1 -1
  83. package/out/src/storage/StorageKnex.js +691 -94
  84. package/out/src/storage/StorageKnex.js.map +1 -1
  85. package/out/src/storage/StorageProvider.d.ts +114 -1
  86. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  87. package/out/src/storage/StorageProvider.js +164 -4
  88. package/out/src/storage/StorageProvider.js.map +1 -1
  89. package/out/src/storage/WalletStorageManager.d.ts.map +1 -1
  90. package/out/src/storage/WalletStorageManager.js.map +1 -1
  91. package/out/src/storage/idbHelpers.d.ts +5 -0
  92. package/out/src/storage/idbHelpers.d.ts.map +1 -1
  93. package/out/src/storage/idbHelpers.js +42 -0
  94. package/out/src/storage/idbHelpers.js.map +1 -1
  95. package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts.map +1 -1
  96. package/out/src/storage/methods/attemptToPostReqsToNetwork.js +116 -4
  97. package/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -1
  98. package/out/src/storage/methods/createAction.d.ts.map +1 -1
  99. package/out/src/storage/methods/createAction.js +22 -5
  100. package/out/src/storage/methods/createAction.js.map +1 -1
  101. package/out/src/storage/methods/internalizeAction.d.ts.map +1 -1
  102. package/out/src/storage/methods/internalizeAction.js +172 -5
  103. package/out/src/storage/methods/internalizeAction.js.map +1 -1
  104. package/out/src/storage/methods/listActionsKnex.d.ts +49 -0
  105. package/out/src/storage/methods/listActionsKnex.d.ts.map +1 -1
  106. package/out/src/storage/methods/listActionsKnex.js +179 -69
  107. package/out/src/storage/methods/listActionsKnex.js.map +1 -1
  108. package/out/src/storage/methods/listOutputsKnex.d.ts.map +1 -1
  109. package/out/src/storage/methods/listOutputsKnex.js +51 -4
  110. package/out/src/storage/methods/listOutputsKnex.js.map +1 -1
  111. package/out/src/storage/methods/processAction.d.ts.map +1 -1
  112. package/out/src/storage/methods/processAction.js +82 -14
  113. package/out/src/storage/methods/processAction.js.map +1 -1
  114. package/out/src/storage/methods/purgeData.d.ts.map +1 -1
  115. package/out/src/storage/methods/purgeData.js +22 -14
  116. package/out/src/storage/methods/purgeData.js.map +1 -1
  117. package/out/src/storage/methods/reviewStatus.d.ts.map +1 -1
  118. package/out/src/storage/methods/reviewStatus.js +18 -9
  119. package/out/src/storage/methods/reviewStatus.js.map +1 -1
  120. package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
  121. package/out/src/storage/schema/KnexMigrations.js +134 -0
  122. package/out/src/storage/schema/KnexMigrations.js.map +1 -1
  123. package/out/src/storage/schema/StorageIdbSchema.d.ts +43 -2
  124. package/out/src/storage/schema/StorageIdbSchema.d.ts.map +1 -1
  125. package/out/src/storage/schema/__tests/backfill.runner.test.d.ts +2 -0
  126. package/out/src/storage/schema/__tests/backfill.runner.test.d.ts.map +1 -0
  127. package/out/src/storage/schema/__tests/backfill.runner.test.js +148 -0
  128. package/out/src/storage/schema/__tests/backfill.runner.test.js.map +1 -0
  129. package/out/src/storage/schema/__tests/backfill.test.d.ts +2 -0
  130. package/out/src/storage/schema/__tests/backfill.test.d.ts.map +1 -0
  131. package/out/src/storage/schema/__tests/backfill.test.js +96 -0
  132. package/out/src/storage/schema/__tests/backfill.test.js.map +1 -0
  133. package/out/src/storage/schema/__tests/processingFsm.test.d.ts +2 -0
  134. package/out/src/storage/schema/__tests/processingFsm.test.d.ts.map +1 -0
  135. package/out/src/storage/schema/__tests/processingFsm.test.js +42 -0
  136. package/out/src/storage/schema/__tests/processingFsm.test.js.map +1 -0
  137. package/out/src/storage/schema/__tests/processingFsmLegacyMapping.test.d.ts +2 -0
  138. package/out/src/storage/schema/__tests/processingFsmLegacyMapping.test.d.ts.map +1 -0
  139. package/out/src/storage/schema/__tests/processingFsmLegacyMapping.test.js +82 -0
  140. package/out/src/storage/schema/__tests/processingFsmLegacyMapping.test.js.map +1 -0
  141. package/out/src/storage/schema/__tests/spendabilityRule.test.d.ts +2 -0
  142. package/out/src/storage/schema/__tests/spendabilityRule.test.d.ts.map +1 -0
  143. package/out/src/storage/schema/__tests/spendabilityRule.test.js +29 -0
  144. package/out/src/storage/schema/__tests/spendabilityRule.test.js.map +1 -0
  145. package/out/src/storage/schema/__tests/v7FsmLegacyMapping.test.d.ts +2 -0
  146. package/out/src/storage/schema/__tests/v7FsmLegacyMapping.test.d.ts.map +1 -0
  147. package/out/src/storage/schema/__tests/v7FsmLegacyMapping.test.js +77 -0
  148. package/out/src/storage/schema/__tests/v7FsmLegacyMapping.test.js.map +1 -0
  149. package/out/src/storage/schema/backfill.d.ts +35 -0
  150. package/out/src/storage/schema/backfill.d.ts.map +1 -0
  151. package/out/src/storage/schema/backfill.idb.d.ts +32 -0
  152. package/out/src/storage/schema/backfill.idb.d.ts.map +1 -0
  153. package/out/src/storage/schema/backfill.idb.js +95 -0
  154. package/out/src/storage/schema/backfill.idb.js.map +1 -0
  155. package/out/src/storage/schema/backfill.js +150 -0
  156. package/out/src/storage/schema/backfill.js.map +1 -0
  157. package/out/src/storage/schema/backfill.knex.d.ts +32 -0
  158. package/out/src/storage/schema/backfill.knex.d.ts.map +1 -0
  159. package/out/src/storage/schema/backfill.knex.js +240 -0
  160. package/out/src/storage/schema/backfill.knex.js.map +1 -0
  161. package/out/src/storage/schema/backfill.runner.d.ts +63 -0
  162. package/out/src/storage/schema/backfill.runner.d.ts.map +1 -0
  163. package/out/src/storage/schema/backfill.runner.js +64 -0
  164. package/out/src/storage/schema/backfill.runner.js.map +1 -0
  165. package/out/src/storage/schema/coinbaseMaturityBackfill.d.ts +25 -0
  166. package/out/src/storage/schema/coinbaseMaturityBackfill.d.ts.map +1 -0
  167. package/out/src/storage/schema/coinbaseMaturityBackfill.js +75 -0
  168. package/out/src/storage/schema/coinbaseMaturityBackfill.js.map +1 -0
  169. package/out/src/storage/schema/monitorLease.d.ts +57 -0
  170. package/out/src/storage/schema/monitorLease.d.ts.map +1 -0
  171. package/out/src/storage/schema/monitorLease.js +101 -0
  172. package/out/src/storage/schema/monitorLease.js.map +1 -0
  173. package/out/src/storage/schema/processingFsm.d.ts +27 -0
  174. package/out/src/storage/schema/processingFsm.d.ts.map +1 -0
  175. package/out/src/storage/schema/processingFsm.js +132 -0
  176. package/out/src/storage/schema/processingFsm.js.map +1 -0
  177. package/out/src/storage/schema/schemaCutover.d.ts +34 -0
  178. package/out/src/storage/schema/schemaCutover.d.ts.map +1 -0
  179. package/out/src/storage/schema/schemaCutover.js +230 -0
  180. package/out/src/storage/schema/schemaCutover.js.map +1 -0
  181. package/out/src/storage/schema/schemaCutoverIdb.d.ts +26 -0
  182. package/out/src/storage/schema/schemaCutoverIdb.d.ts.map +1 -0
  183. package/out/src/storage/schema/schemaCutoverIdb.js +90 -0
  184. package/out/src/storage/schema/schemaCutoverIdb.js.map +1 -0
  185. package/out/src/storage/schema/spendabilityRefresh.d.ts +49 -0
  186. package/out/src/storage/schema/spendabilityRefresh.d.ts.map +1 -0
  187. package/out/src/storage/schema/spendabilityRefresh.js +120 -0
  188. package/out/src/storage/schema/spendabilityRefresh.js.map +1 -0
  189. package/out/src/storage/schema/spendabilityRule.d.ts +45 -0
  190. package/out/src/storage/schema/spendabilityRule.d.ts.map +1 -0
  191. package/out/src/storage/schema/spendabilityRule.js +52 -0
  192. package/out/src/storage/schema/spendabilityRule.js.map +1 -0
  193. package/out/src/storage/schema/tables/TableAction.d.ts +3 -3
  194. package/out/src/storage/schema/tables/TableAction.d.ts.map +1 -1
  195. package/out/src/storage/schema/tables/TableChainTip.d.ts +1 -1
  196. package/out/src/storage/schema/tables/TableMonitorLease.d.ts +1 -1
  197. package/out/src/storage/schema/tables/TableOutput.d.ts +7 -0
  198. package/out/src/storage/schema/tables/TableOutput.d.ts.map +1 -1
  199. package/out/src/storage/schema/tables/TableOutput.js.map +1 -1
  200. package/out/src/storage/schema/tables/TableTransactionNew.d.ts +50 -0
  201. package/out/src/storage/schema/tables/TableTransactionNew.d.ts.map +1 -0
  202. package/out/src/storage/schema/tables/TableTransactionNew.js +3 -0
  203. package/out/src/storage/schema/tables/TableTransactionNew.js.map +1 -0
  204. package/out/src/storage/schema/tables/TableTxAudit.d.ts +1 -1
  205. package/out/src/storage/schema/tables/index.d.ts +5 -0
  206. package/out/src/storage/schema/tables/index.d.ts.map +1 -1
  207. package/out/src/storage/schema/tables/index.js +5 -0
  208. package/out/src/storage/schema/tables/index.js.map +1 -1
  209. package/out/src/storage/schema/transactionCrud.d.ts +41 -0
  210. package/out/src/storage/schema/transactionCrud.d.ts.map +1 -0
  211. package/out/src/storage/schema/transactionCrud.js +205 -0
  212. package/out/src/storage/schema/transactionCrud.js.map +1 -0
  213. package/out/src/storage/schema/transactionService.d.ts +315 -0
  214. package/out/src/storage/schema/transactionService.d.ts.map +1 -0
  215. package/out/src/storage/schema/transactionService.js +783 -0
  216. package/out/src/storage/schema/transactionService.js.map +1 -0
  217. package/out/src/storage/schema/txAudit.d.ts +33 -0
  218. package/out/src/storage/schema/txAudit.d.ts.map +1 -0
  219. package/out/src/storage/schema/txAudit.js +64 -0
  220. package/out/src/storage/schema/txAudit.js.map +1 -0
  221. package/out/src/storage/schema/v7Backfill.d.ts.map +1 -1
  222. package/out/src/storage/schema/v7Backfill.js +4 -1
  223. package/out/src/storage/schema/v7Backfill.js.map +1 -1
  224. package/out/src/storage/schema/v7Backfill.runner.d.ts.map +1 -1
  225. package/out/src/storage/schema/v7Backfill.runner.js +3 -1
  226. package/out/src/storage/schema/v7Backfill.runner.js.map +1 -1
  227. package/out/src/storage/schema/v7CoinbaseMaturityBackfill.d.ts +25 -0
  228. package/out/src/storage/schema/v7CoinbaseMaturityBackfill.d.ts.map +1 -0
  229. package/out/src/storage/schema/v7CoinbaseMaturityBackfill.js +75 -0
  230. package/out/src/storage/schema/v7CoinbaseMaturityBackfill.js.map +1 -0
  231. package/out/src/storage/schema/v7Crud.d.ts +5 -3
  232. package/out/src/storage/schema/v7Crud.d.ts.map +1 -1
  233. package/out/src/storage/schema/v7Crud.js +11 -9
  234. package/out/src/storage/schema/v7Crud.js.map +1 -1
  235. package/out/src/storage/schema/v7Cutover.d.ts +34 -0
  236. package/out/src/storage/schema/v7Cutover.d.ts.map +1 -0
  237. package/out/src/storage/schema/v7Cutover.js +223 -0
  238. package/out/src/storage/schema/v7Cutover.js.map +1 -0
  239. package/out/src/storage/schema/v7CutoverIdb.d.ts +26 -0
  240. package/out/src/storage/schema/v7CutoverIdb.d.ts.map +1 -0
  241. package/out/src/storage/schema/v7CutoverIdb.js +90 -0
  242. package/out/src/storage/schema/v7CutoverIdb.js.map +1 -0
  243. package/out/src/storage/schema/v7Fsm.d.ts.map +1 -1
  244. package/out/src/storage/schema/v7Fsm.js +22 -6
  245. package/out/src/storage/schema/v7Fsm.js.map +1 -1
  246. package/out/src/storage/schema/v7Service.d.ts +305 -0
  247. package/out/src/storage/schema/v7Service.d.ts.map +1 -0
  248. package/out/src/storage/schema/v7Service.js +757 -0
  249. package/out/src/storage/schema/v7Service.js.map +1 -0
  250. package/out/src/storage/schema/v7SpendabilityRefresh.d.ts +49 -0
  251. package/out/src/storage/schema/v7SpendabilityRefresh.d.ts.map +1 -0
  252. package/out/src/storage/schema/v7SpendabilityRefresh.js +111 -0
  253. package/out/src/storage/schema/v7SpendabilityRefresh.js.map +1 -0
  254. package/out/src/storage/storageProviderHelpers.js +1 -1
  255. package/out/src/storage/storageProviderHelpers.js.map +1 -1
  256. package/out/src/utility/Format.js.map +1 -1
  257. package/package.json +7 -4
@@ -12,6 +12,7 @@ const WERR_errors_1 = require("../../sdk/WERR_errors");
12
12
  const parseTxScriptOffsets_1 = require("../../utility/parseTxScriptOffsets");
13
13
  const utilityHelpers_noBuffer_1 = require("../../utility/utilityHelpers.noBuffer");
14
14
  async function processAction(storage, auth, args) {
15
+ var _a, _b;
15
16
  const logger = args.logger;
16
17
  logger === null || logger === void 0 ? void 0 : logger.group('storage processAction');
17
18
  const userId = (0, utilityHelpers_1.verifyId)(auth.userId);
@@ -27,6 +28,50 @@ async function processAction(storage, auth, args) {
27
28
  logger === null || logger === void 0 ? void 0 : logger.log('committed new tx updates to storage ');
28
29
  if (!req)
29
30
  throw new WERR_errors_1.WERR_INTERNAL();
31
+ // new-schema additive wiring — Option B (defer to processAction).
32
+ // Now that the real txid is known, create the new transactions row + actions
33
+ // row and repoint any tx_labels_map rows from the legacy transactionId to
34
+ // the new new actionId. Wrapped in try/catch so pre-cutover test databases
35
+ // (which lack the new transactions tables) continue to pass without modification.
36
+ // See docs/CREATEACTION_BLOCKERS.md §3 Option B.
37
+ const txSvc = storage.getTransactionService();
38
+ if (txSvc != null) {
39
+ try {
40
+ const processing = vargs.isNoSend ? 'nosend' : 'queued';
41
+ const { action, transaction } = await txSvc.findOrCreateActionForTxid({
42
+ userId,
43
+ txid: vargs.txid,
44
+ isOutgoing: vargs.transaction.isOutgoing,
45
+ description: (_a = vargs.transaction.description) !== null && _a !== void 0 ? _a : '',
46
+ satoshisDelta: (_b = vargs.transaction.satoshis) !== null && _b !== void 0 ? _b : 0,
47
+ reference: vargs.reference,
48
+ rawTx: vargs.rawTx,
49
+ inputBeef: (0, utilityHelpers_noBuffer_1.asArray)(vargs.beef.toBinary()),
50
+ processing
51
+ });
52
+ // Repoint tx_labels_map rows written by createAction (which used the
53
+ // legacy transactionId) to the new actions.actionId.
54
+ await txSvc.repointLabelsToActionId(vargs.transactionId, action.actionId);
55
+ logger === null || logger === void 0 ? void 0 : logger.log(`new action created: actionId=${action.actionId}`);
56
+ // Repoint outputs/commissions written during bridge period (transactionId
57
+ // = legacyTransactionId) to the real new transactionId so that
58
+ // listActionsKnex can find them.
59
+ await txSvc.repointOutputsToNewTransactionId(vargs.transactionId, transaction.transactionId);
60
+ logger === null || logger === void 0 ? void 0 : logger.log(`new outputs repointed: legacyId=${vargs.transactionId} → newId=${transaction.transactionId}`);
61
+ }
62
+ catch (txErr) {
63
+ // Tolerate pre-cutover databases where the new transactions tables may not yet exist.
64
+ const msg = txErr instanceof Error ? txErr.message : String(txErr);
65
+ if (msg.includes('no such table') ||
66
+ msg.includes("Table") ||
67
+ msg.includes('SQLITE_ERROR')) {
68
+ logger === null || logger === void 0 ? void 0 : logger.log(`new-schema wiring skipped (pre-cutover DB): ${msg}`);
69
+ }
70
+ else {
71
+ throw txErr;
72
+ }
73
+ }
74
+ }
30
75
  // Add the new txid to sendWith unless there are no others to send and the noSend option is set.
31
76
  if (args.isNoSend && !args.isSendWith) {
32
77
  logger === null || logger === void 0 ? void 0 : logger.log(`noSend txid ${req.txid}`);
@@ -93,7 +138,10 @@ async function shareReqsWithWorld(storage, userId, txids, isDelayed, r, logger)
93
138
  if (readyToSendReqIds.length > 0) {
94
139
  await storage.transaction(async (trx) => {
95
140
  await storage.updateProvenTxReq(readyToSendReqIds, { status: 'unsent', batch }, trx);
96
- await storage.updateTransaction(transactionIds, { status: 'sending' }, trx);
141
+ // Post-cutover: notify.transactionIds are legacy IDs that live in
142
+ // transactions_legacy. Use updateLegacyTransaction to target correct table.
143
+ // Mapping §2: legacy `unprocessed` → `sending` transition.
144
+ await storage.updateLegacyTransaction(transactionIds, { status: 'sending' }, trx);
97
145
  });
98
146
  }
99
147
  return { swr, ndr };
@@ -168,7 +216,12 @@ async function validateCommitNewTxToStorageArgs(storage, userId, params) {
168
216
  which can be found at https://wiki.bitcoinsv.io/index.php/NLocktime_and_nSequence`);
169
217
  }
170
218
  const txScriptOffsets = (0, parseTxScriptOffsets_1.parseTxScriptOffsets)(params.rawTx);
171
- const transaction = (0, utilityHelpers_1.verifyOne)(await storage.findTransactions({
219
+ // Post-cutover: unsigned/unprocessed rows live in `transactions_legacy`, not
220
+ // in new `transactions` (which has `processing` not `status` and requires a real
221
+ // txid at insert time). Use findLegacyTransactions to target the correct table.
222
+ // Pre-cutover: findLegacyTransactions falls back to findTransactions transparently.
223
+ // Mapping §2: legacy `unsigned` → no equivalent in new schema; must query transactions_legacy.
224
+ const transaction = (0, utilityHelpers_1.verifyOne)(await storage.findLegacyTransactions({
172
225
  partial: { userId, reference: params.reference }
173
226
  }));
174
227
  if (!transaction.isOutgoing)
@@ -251,18 +304,33 @@ async function commitNewTxToStorage(storage, userId, vargs) {
251
304
  let log = vargs.log;
252
305
  log = (0, stampLog_1.stampLog)(log, 'start storage commitNewTxToStorage');
253
306
  let req;
254
- await storage.transaction(async (trx) => {
255
- log = (0, stampLog_1.stampLog)(log, '... storage commitNewTxToStorage storage transaction start');
256
- // Create initial 'nosend' proven_tx_req record to store signed, valid rawTx and input beef
257
- req = await vargs.req.insertOrMerge(storage, trx);
258
- log = (0, stampLog_1.stampLog)(log, '... storage commitNewTxToStorage req inserted');
259
- for (const ou of vargs.outputUpdates) {
260
- await storage.updateOutput(ou.id, ou.update, trx);
261
- }
262
- log = (0, stampLog_1.stampLog)(log, '... storage commitNewTxToStorage outputs updated');
263
- await storage.updateTransaction(vargs.transactionId, vargs.transactionUpdate, trx);
264
- log = (0, stampLog_1.stampLog)(log, '... storage commitNewTxToStorage storage transaction end');
265
- });
307
+ // Post-cutover SQLite: `proven_tx_reqs_legacy` has a FK to `proven_txs`
308
+ // (renamed to `proven_txs_legacy` after cutover). PRAGMA changes inside SQLite
309
+ // transactions are no-ops, so we must disable FK before opening the transaction.
310
+ // Pre-cutover or non-SQLite: disableForeignKeys() is a no-op.
311
+ await storage.disableForeignKeys();
312
+ try {
313
+ await storage.transaction(async (trx) => {
314
+ log = (0, stampLog_1.stampLog)(log, '... storage commitNewTxToStorage storage transaction start');
315
+ // Create initial 'nosend' proven_tx_req record to store signed, valid rawTx and input beef
316
+ req = await vargs.req.insertOrMerge(storage, trx);
317
+ log = (0, stampLog_1.stampLog)(log, '... storage commitNewTxToStorage req inserted');
318
+ for (const ou of vargs.outputUpdates) {
319
+ await storage.updateOutput(ou.id, ou.update, trx);
320
+ }
321
+ log = (0, stampLog_1.stampLog)(log, '... storage commitNewTxToStorage outputs updated');
322
+ // Post-cutover: the unsigned transaction row lives in `transactions_legacy`.
323
+ // Use updateLegacyTransaction so the txid + status write-back goes to the
324
+ // correct table. Pre-cutover: falls back to updateTransaction transparently.
325
+ // Mapping §2: legacy `unsigned` → `unprocessed`/`nosend` write-back must
326
+ // target `transactions_legacy` post-cutover, not new `transactions`.
327
+ await storage.updateLegacyTransaction(vargs.transactionId, vargs.transactionUpdate, trx);
328
+ log = (0, stampLog_1.stampLog)(log, '... storage commitNewTxToStorage storage transaction end');
329
+ });
330
+ }
331
+ finally {
332
+ await storage.enableForeignKeys();
333
+ }
266
334
  log = (0, stampLog_1.stampLog)(log, '... storage commitNewTxToStorage storage transaction await done');
267
335
  const r = {
268
336
  req: (0, utilityHelpers_1.verifyTruthy)(req),
@@ -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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"}
@@ -1 +1 @@
1
- {"version":3,"file":"purgeData.d.ts","sourceRoot":"","sources":["../../../../src/storage/methods/purgeData.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAyB,QAAQ,EAAE,MAAM,oCAAoC,CAAA;AAQ/G,wBAAsB,SAAS,CAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,CA+OjH"}
1
+ {"version":3,"file":"purgeData.d.ts","sourceRoot":"","sources":["../../../../src/storage/methods/purgeData.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,WAAW,EAAE,YAAY,EAAyB,QAAQ,EAAE,MAAM,oCAAoC,CAAA;AAQ/G,wBAAsB,SAAS,CAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,CAwPjH"}
@@ -21,6 +21,13 @@ async function purgeData(storage, params, trx) {
21
21
  throw error_;
22
22
  }
23
23
  };
24
+ // Post-cutover: `proven_txs`, `proven_tx_reqs`, and the legacy-shaped
25
+ // `transactions` table (with `status` column) are all renamed to `*_legacy`.
26
+ // Resolve canonical table names once and reuse throughout.
27
+ const txTable = await storage.provenTxsTableName(); // proven_txs or proven_txs_legacy
28
+ const reqTable = await storage.provenTxReqsTableName(); // proven_tx_reqs or proven_tx_reqs_legacy
29
+ // `transactions` with `status` column → `transactions_legacy` post-cutover.
30
+ const txnsTable = txTable === 'proven_txs_legacy' ? 'transactions_legacy' : 'transactions';
24
31
  if (params.purgeCompleted) {
25
32
  const age = params.purgeCompletedAge || defaultAge;
26
33
  const before = toSqlWhereDate(new Date(Date.now() - age));
@@ -30,7 +37,7 @@ async function purgeData(storage, params, trx) {
30
37
  qs.push({
31
38
  log: 'conpleted transactions purged of transient data',
32
39
  q: storage
33
- .toDb(trx)('transactions')
40
+ .toDb(trx)(txnsTable)
34
41
  .update({
35
42
  inputBEEF: null,
36
43
  rawTx: null
@@ -44,7 +51,7 @@ async function purgeData(storage, params, trx) {
44
51
  })
45
52
  });
46
53
  const completedReqs = await storage
47
- .toDb(trx)('proven_tx_reqs')
54
+ .toDb(trx)(reqTable)
48
55
  .select('provenTxReqId')
49
56
  .where('updated_at', '<', before)
50
57
  .where('status', 'completed')
@@ -54,7 +61,7 @@ async function purgeData(storage, params, trx) {
54
61
  if (completedReqIds.length > 0) {
55
62
  qs.push({
56
63
  log: 'completed proven_tx_reqs deleted',
57
- q: storage.toDb(trx)('proven_tx_reqs').whereIn('provenTxReqId', completedReqIds).delete()
64
+ q: storage.toDb(trx)(reqTable).whereIn('provenTxReqId', completedReqIds).delete()
58
65
  });
59
66
  }
60
67
  for (const q of qs)
@@ -65,7 +72,7 @@ async function purgeData(storage, params, trx) {
65
72
  const before = toSqlWhereDate(new Date(Date.now() - age));
66
73
  const qs = [];
67
74
  const failedTxsQ = storage
68
- .toDb(trx)('transactions')
75
+ .toDb(trx)(txnsTable)
69
76
  .select('transactionId')
70
77
  .where('updated_at', '<', before)
71
78
  .where('status', 'failed');
@@ -73,7 +80,7 @@ async function purgeData(storage, params, trx) {
73
80
  const failedTxIds = txs.map(tx => tx.transactionId);
74
81
  await deleteTransactions(failedTxIds, qs, 'failed', true);
75
82
  const invalidReqs = await storage
76
- .toDb(trx)('proven_tx_reqs')
83
+ .toDb(trx)(reqTable)
77
84
  .select('provenTxReqId')
78
85
  .where('updated_at', '<', before)
79
86
  .where('status', 'invalid');
@@ -81,11 +88,11 @@ async function purgeData(storage, params, trx) {
81
88
  if (invalidReqIds.length > 0) {
82
89
  qs.push({
83
90
  log: 'invalid proven_tx_reqs deleted',
84
- q: storage.toDb(trx)('proven_tx_reqs').whereIn('provenTxReqId', invalidReqIds).delete()
91
+ q: storage.toDb(trx)(reqTable).whereIn('provenTxReqId', invalidReqIds).delete()
85
92
  });
86
93
  }
87
94
  const doubleSpendReqs = await storage
88
- .toDb(trx)('proven_tx_reqs')
95
+ .toDb(trx)(reqTable)
89
96
  .select('provenTxReqId')
90
97
  .where('updated_at', '<', before)
91
98
  .where('status', 'doubleSpend');
@@ -93,7 +100,7 @@ async function purgeData(storage, params, trx) {
93
100
  if (doubleSpendReqIds.length > 0) {
94
101
  qs.push({
95
102
  log: 'doubleSpend proven_tx_reqs deleted',
96
- q: storage.toDb(trx)('proven_tx_reqs').whereIn('provenTxReqId', doubleSpendReqIds).delete()
103
+ q: storage.toDb(trx)(reqTable).whereIn('provenTxReqId', doubleSpendReqIds).delete()
97
104
  });
98
105
  }
99
106
  for (const q of qs)
@@ -130,10 +137,10 @@ async function purgeData(storage, params, trx) {
130
137
  proofTxids[btx.txid] = true;
131
138
  const qs = [];
132
139
  const spentTxsQ = storage
133
- .toDb(trx)('transactions')
140
+ .toDb(trx)(txnsTable)
134
141
  .where('updated_at', '<', before)
135
142
  .where('status', 'completed')
136
- .whereRaw('not exists(select outputId from outputs as o where o.transactionId = transactions.transactionId and o.spendable = 1)');
143
+ .whereRaw(`not exists(select outputId from outputs as o where o.transactionId = ${txnsTable}.transactionId and o.spendable = 1)`);
137
144
  const txs = await spentTxsQ;
138
145
  // Save any spent txid still needed to prove a utxo:
139
146
  const nptxs = txs.filter(t => !proofTxids[t.txid || '']);
@@ -156,13 +163,14 @@ async function purgeData(storage, params, trx) {
156
163
  }
157
164
  }
158
165
  // Delete proven_txs no longer referenced by remaining transactions.
166
+ // Use canonical table names for post-cutover correctness.
159
167
  const qs = [];
160
168
  qs.push({
161
169
  log: 'orphan proven_txs deleted',
162
170
  q: storage
163
- .toDb(trx)('proven_txs')
164
- .whereRaw('not exists(select * from transactions as t where t.txid = proven_txs.txid or t.provenTxId = proven_txs.provenTxId)')
165
- .whereRaw('not exists(select * from proven_tx_reqs as r where r.txid = proven_txs.txid or r.provenTxId = proven_txs.provenTxId)')
171
+ .toDb(trx)(txTable)
172
+ .whereRaw(`not exists(select * from ${txnsTable} as t where t.txid = ${txTable}.txid or t.provenTxId = ${txTable}.provenTxId)`)
173
+ .whereRaw(`not exists(select * from ${reqTable} as r where r.txid = ${txTable}.txid or r.provenTxId = ${txTable}.provenTxId)`)
166
174
  .delete()
167
175
  });
168
176
  for (const q of qs)
@@ -202,7 +210,7 @@ async function purgeData(storage, params, trx) {
202
210
  }
203
211
  qs.push({
204
212
  log: `${reason} transactions deleted`,
205
- q: storage.toDb(trx)('transactions').whereIn('transactionId', transactionIds).delete()
213
+ q: storage.toDb(trx)(txnsTable).whereIn('transactionId', transactionIds).delete()
206
214
  });
207
215
  }
208
216
  }
@@ -1 +1 @@
1
- {"version":3,"file":"purgeData.js","sourceRoot":"","sources":["../../../../src/storage/methods/purgeData.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"purgeData.js","sourceRoot":"","sources":["../../../../src/storage/methods/purgeData.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"reviewStatus.d.ts","sourceRoot":"","sources":["../../../../src/storage/methods/reviewStatus.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAA;AAQ7D;;;;;;;;;;GAUG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE;IAAE,SAAS,EAAE,IAAI,CAAC;IAAC,GAAG,CAAC,EAAE,QAAQ,CAAA;CAAE,GACxC,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CAkF1B"}
1
+ {"version":3,"file":"reviewStatus.d.ts","sourceRoot":"","sources":["../../../../src/storage/methods/reviewStatus.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAA;AAQ7D;;;;;;;;;;GAUG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,WAAW,EACpB,IAAI,EAAE;IAAE,SAAS,EAAE,IAAI,CAAC;IAAC,GAAG,CAAC,EAAE,QAAQ,CAAA;CAAE,GACxC,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CA4F1B"}
@@ -31,6 +31,15 @@ async function reviewStatus(storage, args) {
31
31
  }
32
32
  };
33
33
  const k = storage.toDb(args.trx);
34
+ // Post-cutover: `proven_txs` → `proven_txs_legacy`, `proven_tx_reqs` →
35
+ // `proven_tx_reqs_legacy`, and `transactions` (legacy-shaped with `status`
36
+ // column) → `transactions_legacy`. Pre-cutover: the original table names.
37
+ const txTable = await storage.provenTxsTableName(); // proven_txs or proven_txs_legacy
38
+ const reqTable = await storage.provenTxReqsTableName(); // proven_tx_reqs or proven_tx_reqs_legacy
39
+ // The legacy-shaped `transactions` table (with status, satoshis, etc. columns).
40
+ // Post-cutover that table is renamed to `transactions_legacy`; the new
41
+ // `transactions` table has `processing` instead of `status`.
42
+ const txnsTable = txTable === 'proven_txs_legacy' ? 'transactions_legacy' : 'transactions';
34
43
  const qs = [];
35
44
  qs.push({
36
45
  log: 'transactions updated to status of \'failed\' where provenTxReq with matching txid is \'invalid\'',
@@ -38,13 +47,13 @@ async function reviewStatus(storage, args) {
38
47
  UPDATE transactions SET status = 'failed'
39
48
  WHERE exists(select 1 from proven_tx_reqs as r where transactions.txid = r.txid and r.status = 'invalid')
40
49
  */
41
- q: k('transactions')
50
+ q: k(txnsTable)
42
51
  .update({ status: 'failed' })
43
52
  .whereNot({ status: 'failed' })
44
53
  .whereExists(function () {
45
54
  this.select(k.raw(1))
46
- .from('proven_tx_reqs as r')
47
- .whereRaw('transactions.txid = r.txid and r.status = \'invalid\'');
55
+ .from(`${reqTable} as r`)
56
+ .whereRaw(`${txnsTable}.txid = r.txid and r.status = 'invalid'`);
48
57
  })
49
58
  }, {
50
59
  log: 'outputs updated to spendable where spentBy is a failed transaction with no blocking ProvenTxReq',
@@ -57,13 +66,13 @@ async function reviewStatus(storage, args) {
57
66
  .update({ spentBy: null, spendable: true })
58
67
  .whereExists(function () {
59
68
  this.select(k.raw(1))
60
- .from('transactions as t')
61
- .whereRaw('outputs.spentBy = t.transactionId and t.status = \'failed\'')
69
+ .from(`${txnsTable} as t`)
70
+ .whereRaw(`outputs.spentBy = t.transactionId and t.status = 'failed'`)
62
71
  .whereNotExists(function () {
63
72
  // A failed transaction can still be reconciled from active or valid reqs.
64
73
  // Only terminal failure reqs are safe for input restoration.
65
74
  this.select(k.raw(1))
66
- .from('proven_tx_reqs as r')
75
+ .from(`${reqTable} as r`)
67
76
  .whereRaw('r.txid = t.txid')
68
77
  .whereNotIn('r.status', provenTxReqStatusesSafeForInputRestore);
69
78
  });
@@ -75,14 +84,14 @@ async function reviewStatus(storage, args) {
75
84
  FROM proven_txs p
76
85
  WHERE transactions.txid = p.txid AND transactions.provenTxId IS NULL
77
86
  */
78
- q: k('transactions')
87
+ q: k(txnsTable)
79
88
  .update({
80
89
  status: 'completed',
81
- provenTxId: k.raw('(SELECT provenTxId FROM proven_txs AS p WHERE transactions.txid = p.txid)')
90
+ provenTxId: k.raw(`(SELECT provenTxId FROM ${txTable} AS p WHERE ${txnsTable}.txid = p.txid)`)
82
91
  })
83
92
  .whereNull('provenTxId')
84
93
  .whereExists(function () {
85
- this.select(k.raw(1)).from('proven_txs as p').whereRaw('transactions.txid = p.txid');
94
+ this.select(k.raw(1)).from(`${txTable} as p`).whereRaw(`${txnsTable}.txid = p.txid`);
86
95
  })
87
96
  });
88
97
  for (const q of qs)
@@ -1 +1 @@
1
- {"version":3,"file":"reviewStatus.js","sourceRoot":"","sources":["../../../../src/storage/methods/reviewStatus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reviewStatus.js","sourceRoot":"","sources":["../../../../src/storage/methods/reviewStatus.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"KnexMigrations.d.ts","sourceRoot":"","sources":["../../../../src/storage/schema/KnexMigrations.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAKvC,UAAU,SAAS;IACjB,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACjC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACpC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,UAAU,eAAe,CAAC,cAAc;IACtC,aAAa,EAAE,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC,CAAA;IAC/E,gBAAgB,EAAE,CAAC,SAAS,EAAE,cAAc,KAAK,MAAM,CAAA;IACvD,YAAY,EAAE,CAAC,SAAS,EAAE,cAAc,KAAK,OAAO,CAAC,SAAS,CAAC,CAAA;CAChE;AAED,qBAAa,cAAe,YAAW,eAAe,CAAC,MAAM,CAAC;IASnD,KAAK,EAAE,KAAK;IACZ,WAAW,EAAE,MAAM;IACnB,kBAAkB,EAAE,MAAM;IAC1B,qBAAqB,EAAE,MAAM;IAXtC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAK;IAE1C;;;;OAIG;gBAEM,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,EACnB,kBAAkB,EAAE,MAAM,EAC1B,qBAAqB,EAAE,MAAM;IAKhC,aAAa,IAAK,OAAO,CAAC,MAAM,EAAE,CAAC;IAIzC,gBAAgB,CAAE,SAAS,EAAE,MAAM;IAI7B,YAAY,CAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAIpD,kBAAkB,IAAK,OAAO,CAAC,MAAM,CAAC;WAK/B,eAAe,IAAK,OAAO,CAAC,MAAM,CAAC;IAKhD,eAAe,CACb,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,kBAAkB,EAAE,MAAM,EAC1B,qBAAqB,EAAE,MAAM,GAC5B,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC;CA6c7B;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAoB9E"}
1
+ {"version":3,"file":"KnexMigrations.d.ts","sourceRoot":"","sources":["../../../../src/storage/schema/KnexMigrations.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAA;AAKvC,UAAU,SAAS;IACjB,EAAE,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACjC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IACpC,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,UAAU,eAAe,CAAC,cAAc;IACtC,aAAa,EAAE,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC,CAAA;IAC/E,gBAAgB,EAAE,CAAC,SAAS,EAAE,cAAc,KAAK,MAAM,CAAA;IACvD,YAAY,EAAE,CAAC,SAAS,EAAE,cAAc,KAAK,OAAO,CAAC,SAAS,CAAC,CAAA;CAChE;AAED,qBAAa,cAAe,YAAW,eAAe,CAAC,MAAM,CAAC;IASnD,KAAK,EAAE,KAAK;IACZ,WAAW,EAAE,MAAM;IACnB,kBAAkB,EAAE,MAAM;IAC1B,qBAAqB,EAAE,MAAM;IAXtC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAK;IAE1C;;;;OAIG;gBAEM,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,MAAM,EACnB,kBAAkB,EAAE,MAAM,EAC1B,qBAAqB,EAAE,MAAM;IAKhC,aAAa,IAAK,OAAO,CAAC,MAAM,EAAE,CAAC;IAIzC,gBAAgB,CAAE,SAAS,EAAE,MAAM;IAI7B,YAAY,CAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAIpD,kBAAkB,IAAK,OAAO,CAAC,MAAM,CAAC;WAK/B,eAAe,IAAK,OAAO,CAAC,MAAM,CAAC;IAKhD,eAAe,CACb,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,EACnB,kBAAkB,EAAE,MAAM,EAC1B,qBAAqB,EAAE,MAAM,GAC5B,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC;CA0lB7B;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAoB9E"}
@@ -48,6 +48,140 @@ class KnexMigrations {
48
48
  table.timestamp('updated_at', { precision: 3 }).defaultTo(knex.fn.now()).notNullable();
49
49
  }
50
50
  };
51
+ migrations['2026-05-13-001 add outputs.matures_at_height for coinbase maturity'] = {
52
+ async up(knex) {
53
+ await knex.schema.alterTable('outputs', table => {
54
+ table.integer('matures_at_height').unsigned().nullable();
55
+ table.index(['matures_at_height'], 'idx_outputs_matures_at_height');
56
+ });
57
+ },
58
+ async down(knex) {
59
+ await knex.schema.alterTable('outputs', table => {
60
+ table.dropIndex(['matures_at_height'], 'idx_outputs_matures_at_height');
61
+ table.dropColumn('matures_at_height');
62
+ });
63
+ }
64
+ };
65
+ migrations['2026-05-11-001 add refactor schema (actions, transactions_new, chain_tip, tx_audit, monitor_lease)'] = {
66
+ async up(knex) {
67
+ const dbtype = await determineDBType(knex);
68
+ // Per-txid canonical record. Source of truth for broadcast + proof state.
69
+ await knex.schema.createTable('transactions_new', table => {
70
+ addTimeStamps(knex, table, dbtype);
71
+ table.increments('transactionId');
72
+ table.string('txid', 64).notNullable().unique();
73
+ table.string('processing', 16).notNullable().defaultTo('queued');
74
+ table.timestamp('processing_changed_at', { precision: 3 }).defaultTo(knex.fn.now()).notNullable();
75
+ table.timestamp('next_action_at', { precision: 3 }).nullable();
76
+ table.integer('attempts').unsigned().notNullable().defaultTo(0);
77
+ table.integer('rebroadcast_cycles').unsigned().notNullable().defaultTo(0);
78
+ table.boolean('was_broadcast').notNullable().defaultTo(false);
79
+ table.string('idempotency_key', 128).nullable().unique();
80
+ table.string('batch', 64).nullable();
81
+ table.binary('raw_tx').nullable();
82
+ table.binary('input_beef').nullable();
83
+ table.integer('height').unsigned().nullable();
84
+ table.integer('merkle_index').unsigned().nullable();
85
+ table.binary('merkle_path').nullable();
86
+ table.string('merkle_root', 64).nullable();
87
+ table.string('block_hash', 64).nullable();
88
+ table.boolean('is_coinbase').notNullable().defaultTo(false);
89
+ table.string('last_provider', 64).nullable();
90
+ table.string('last_provider_status', 64).nullable();
91
+ table.string('frozen_reason', 255).nullable();
92
+ table.integer('row_version').unsigned().notNullable().defaultTo(0);
93
+ table.index('processing');
94
+ table.index('batch');
95
+ table.index(['processing', 'next_action_at'], 'idx_tx_new_processing_next');
96
+ });
97
+ // Per-user view of a transactions_new row.
98
+ await knex.schema.createTable('actions', table => {
99
+ addTimeStamps(knex, table, dbtype);
100
+ table.increments('actionId');
101
+ table.integer('userId').unsigned().references('userId').inTable('users').notNullable();
102
+ table
103
+ .integer('transactionId')
104
+ .unsigned()
105
+ .references('transactionId')
106
+ .inTable('transactions_new')
107
+ .notNullable();
108
+ table.string('reference', 64).notNullable();
109
+ table.string('description', 2000).notNullable();
110
+ table.boolean('isOutgoing').notNullable();
111
+ table.bigint('satoshis_delta').notNullable().defaultTo(0);
112
+ table.boolean('user_nosend').notNullable().defaultTo(false);
113
+ table.boolean('hidden').notNullable().defaultTo(false);
114
+ table.boolean('user_aborted').notNullable().defaultTo(false);
115
+ table.text('notify_json', 'longtext').nullable();
116
+ table.integer('row_version').unsigned().notNullable().defaultTo(0);
117
+ table.unique(['userId', 'transactionId']);
118
+ table.unique(['userId', 'reference']);
119
+ table.index(['userId', 'hidden'], 'idx_actions_user_hidden');
120
+ });
121
+ // Singleton chain tip cache.
122
+ await knex.schema.createTable('chain_tip', table => {
123
+ addTimeStamps(knex, table, dbtype);
124
+ table.integer('id').notNullable().primary();
125
+ table.integer('height').unsigned().notNullable();
126
+ table.string('block_hash', 64).notNullable();
127
+ table.string('merkle_root', 64).nullable();
128
+ table.timestamp('observed_at', { precision: 3 }).defaultTo(knex.fn.now()).notNullable();
129
+ });
130
+ // Append-only audit log keyed by transactionId and/or actionId.
131
+ await knex.schema.createTable('tx_audit', table => {
132
+ addTimeStamps(knex, table, dbtype);
133
+ table.increments('auditId');
134
+ table
135
+ .integer('transactionId')
136
+ .unsigned()
137
+ .references('transactionId')
138
+ .inTable('transactions_new')
139
+ .nullable();
140
+ table
141
+ .integer('actionId')
142
+ .unsigned()
143
+ .references('actionId')
144
+ .inTable('actions')
145
+ .nullable();
146
+ table.string('event', 64).notNullable();
147
+ table.string('from_state', 16).nullable();
148
+ table.string('to_state', 16).nullable();
149
+ table.text('details_json', 'longtext').nullable();
150
+ table.index('event');
151
+ table.index('transactionId');
152
+ table.index('actionId');
153
+ });
154
+ // Monitor task leases.
155
+ await knex.schema.createTable('monitor_lease', table => {
156
+ addTimeStamps(knex, table, dbtype);
157
+ table.string('task_name', 64).notNullable().primary();
158
+ table.string('owner_id', 64).notNullable();
159
+ table.timestamp('expires_at', { precision: 3 }).notNullable();
160
+ table.integer('renew_count').unsigned().notNullable().defaultTo(0);
161
+ table.string('note', 255).nullable();
162
+ table.index('expires_at');
163
+ });
164
+ if (dbtype === 'MySQL') {
165
+ await knex.raw('ALTER TABLE transactions_new MODIFY COLUMN raw_tx LONGBLOB');
166
+ await knex.raw('ALTER TABLE transactions_new MODIFY COLUMN input_beef LONGBLOB');
167
+ await knex.raw('ALTER TABLE transactions_new MODIFY COLUMN merkle_path LONGBLOB');
168
+ }
169
+ else {
170
+ await knex.schema.alterTable('transactions_new', table => {
171
+ table.binary('raw_tx', 10000000).alter();
172
+ table.binary('input_beef', 10000000).alter();
173
+ table.binary('merkle_path', 10000000).alter();
174
+ });
175
+ }
176
+ },
177
+ async down(knex) {
178
+ await knex.schema.dropTableIfExists('monitor_lease');
179
+ await knex.schema.dropTableIfExists('tx_audit');
180
+ await knex.schema.dropTableIfExists('chain_tip');
181
+ await knex.schema.dropTableIfExists('actions');
182
+ await knex.schema.dropTableIfExists('transactions_new');
183
+ }
184
+ };
51
185
  migrations['2026-04-30-001 add wasBroadcast and rebroadcastAttempts to proven_tx_reqs'] = {
52
186
  async up(knex) {
53
187
  await knex.schema.alterTable('proven_tx_reqs', table => {