@bopen-io/wallet-toolbox 2.6.2-brc153.5 → 2.14.5
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.
- package/CHANGELOG.md +744 -1
- package/LICENSES/Open-BSV-License-4-wallet-pre-2026.txt +28 -0
- package/README.md +823 -14
- package/THIRD_PARTY_NOTICES.md +35 -0
- package/docs/README.md +44 -31
- package/docs/action-batch-planning.md +80 -37
- package/docs/client.md +12996 -4571
- package/docs/identity-verification.md +218 -0
- package/docs/local-first-chaintracks.md +129 -0
- package/docs/managed-change-liquidity.md +258 -0
- package/docs/managed-change-policy.md +14 -1
- package/docs/monitor.md +505 -190
- package/docs/no-send-expiry.md +167 -0
- package/docs/prepared-beef.md +197 -0
- package/docs/services.md +4013 -1153
- package/docs/setup.md +107 -56
- package/docs/storage.md +5781 -1599
- package/docs/sync-transfer.md +144 -0
- package/docs/wab-shamir.md +5 -1
- package/docs/wallet.md +10188 -10904
- package/out/src/CWIStyleWalletManager.d.ts +39 -31
- package/out/src/CWIStyleWalletManager.d.ts.map +1 -1
- package/out/src/CWIStyleWalletManager.js +309 -258
- package/out/src/CWIStyleWalletManager.js.map +1 -1
- package/out/src/Setup.d.ts +14 -0
- package/out/src/Setup.d.ts.map +1 -1
- package/out/src/Setup.js +6 -2
- package/out/src/Setup.js.map +1 -1
- package/out/src/SetupClient.d.ts +3 -0
- package/out/src/SetupClient.d.ts.map +1 -1
- package/out/src/SetupClient.js +1 -0
- package/out/src/SetupClient.js.map +1 -1
- package/out/src/SetupWallet.d.ts +3 -0
- package/out/src/SetupWallet.d.ts.map +1 -1
- package/out/src/ShamirWalletManager.d.ts.map +1 -1
- package/out/src/ShamirWalletManager.js +34 -19
- package/out/src/ShamirWalletManager.js.map +1 -1
- package/out/src/SimpleWalletManager.d.ts.map +1 -1
- package/out/src/SimpleWalletManager.js +7 -6
- package/out/src/SimpleWalletManager.js.map +1 -1
- package/out/src/Wallet.d.ts +54 -14
- package/out/src/Wallet.d.ts.map +1 -1
- package/out/src/Wallet.js +216 -114
- package/out/src/Wallet.js.map +1 -1
- package/out/src/WalletAuthenticationManager.d.ts +32 -0
- package/out/src/WalletAuthenticationManager.d.ts.map +1 -1
- package/out/src/WalletAuthenticationManager.js +531 -78
- package/out/src/WalletAuthenticationManager.js.map +1 -1
- package/out/src/WalletLogger.js +1 -1
- package/out/src/WalletLogger.js.map +1 -1
- package/out/src/WalletPermissionsManager.d.ts +101 -43
- package/out/src/WalletPermissionsManager.d.ts.map +1 -1
- package/out/src/WalletPermissionsManager.js +897 -414
- package/out/src/WalletPermissionsManager.js.map +1 -1
- package/out/src/WalletSettingsManager.d.ts +3 -2
- package/out/src/WalletSettingsManager.d.ts.map +1 -1
- package/out/src/WalletSettingsManager.js +143 -8
- package/out/src/WalletSettingsManager.js.map +1 -1
- package/out/src/entropy/EntropyCollector.d.ts.map +1 -1
- package/out/src/entropy/EntropyCollector.js +3 -2
- package/out/src/entropy/EntropyCollector.js.map +1 -1
- package/out/src/fundWalletP2PKH.d.ts.map +1 -1
- package/out/src/fundWalletP2PKH.js +143 -44
- package/out/src/fundWalletP2PKH.js.map +1 -1
- package/out/src/index.client.d.ts +6 -0
- package/out/src/index.client.d.ts.map +1 -1
- package/out/src/index.client.js +16 -1
- package/out/src/index.client.js.map +1 -1
- package/out/src/index.mobile.d.ts +7 -0
- package/out/src/index.mobile.d.ts.map +1 -1
- package/out/src/index.mobile.js +17 -1
- package/out/src/index.mobile.js.map +1 -1
- package/out/src/mockchain/MockChainTracker.d.ts.map +1 -1
- package/out/src/mockchain/MockChainTracker.js +5 -5
- package/out/src/mockchain/MockChainTracker.js.map +1 -1
- package/out/src/mockchain/MockServices.d.ts +2 -0
- package/out/src/mockchain/MockServices.d.ts.map +1 -1
- package/out/src/mockchain/MockServices.js +54 -14
- package/out/src/mockchain/MockServices.js.map +1 -1
- package/out/src/monitor/Monitor.d.ts +51 -0
- package/out/src/monitor/Monitor.d.ts.map +1 -1
- package/out/src/monitor/Monitor.js +282 -41
- package/out/src/monitor/Monitor.js.map +1 -1
- package/out/src/monitor/MonitorDaemon.d.ts.map +1 -1
- package/out/src/monitor/MonitorDaemon.js +64 -16
- package/out/src/monitor/MonitorDaemon.js.map +1 -1
- package/out/src/monitor/monitorValidation.d.ts +12 -0
- package/out/src/monitor/monitorValidation.d.ts.map +1 -0
- package/out/src/monitor/monitorValidation.js +133 -0
- package/out/src/monitor/monitorValidation.js.map +1 -0
- package/out/src/monitor/tasks/TaskArcSSE.d.ts +6 -1
- package/out/src/monitor/tasks/TaskArcSSE.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskArcSSE.js +117 -74
- package/out/src/monitor/tasks/TaskArcSSE.js.map +1 -1
- package/out/src/monitor/tasks/TaskCheckForProofs.d.ts +5 -0
- package/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskCheckForProofs.js +29 -24
- package/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -1
- package/out/src/monitor/tasks/TaskCheckNoSends.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskCheckNoSends.js +11 -3
- package/out/src/monitor/tasks/TaskCheckNoSends.js.map +1 -1
- package/out/src/monitor/tasks/TaskFailAbandoned.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskFailAbandoned.js +9 -4
- package/out/src/monitor/tasks/TaskFailAbandoned.js.map +1 -1
- package/out/src/monitor/tasks/TaskNewHeader.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskNewHeader.js +3 -1
- package/out/src/monitor/tasks/TaskNewHeader.js.map +1 -1
- package/out/src/monitor/tasks/TaskNoSendExpiry.d.ts +19 -0
- package/out/src/monitor/tasks/TaskNoSendExpiry.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskNoSendExpiry.js +47 -0
- package/out/src/monitor/tasks/TaskNoSendExpiry.js.map +1 -0
- package/out/src/monitor/tasks/TaskReconcilePendingTransactions.d.ts +27 -0
- package/out/src/monitor/tasks/TaskReconcilePendingTransactions.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskReconcilePendingTransactions.js +242 -0
- package/out/src/monitor/tasks/TaskReconcilePendingTransactions.js.map +1 -0
- package/out/src/monitor/tasks/TaskReorg.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskReorg.js +4 -4
- package/out/src/monitor/tasks/TaskReorg.js.map +1 -1
- package/out/src/monitor/tasks/TaskReviewDoubleSpends.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskReviewDoubleSpends.js +31 -9
- package/out/src/monitor/tasks/TaskReviewDoubleSpends.js.map +1 -1
- package/out/src/monitor/tasks/TaskReviewProvenTxs.d.ts +18 -1
- package/out/src/monitor/tasks/TaskReviewProvenTxs.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskReviewProvenTxs.js +99 -21
- package/out/src/monitor/tasks/TaskReviewProvenTxs.js.map +1 -1
- package/out/src/monitor/tasks/TaskReviewUtxos.d.ts +33 -6
- package/out/src/monitor/tasks/TaskReviewUtxos.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskReviewUtxos.js +189 -13
- package/out/src/monitor/tasks/TaskReviewUtxos.js.map +1 -1
- package/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskSendWaiting.js +52 -11
- package/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
- package/out/src/monitor/tasks/TaskUnFail.d.ts +1 -0
- package/out/src/monitor/tasks/TaskUnFail.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskUnFail.js +26 -8
- package/out/src/monitor/tasks/TaskUnFail.js.map +1 -1
- package/out/src/monitor/tasks/index.all.d.ts +2 -0
- package/out/src/monitor/tasks/index.all.d.ts.map +1 -1
- package/out/src/monitor/tasks/index.all.js +2 -0
- package/out/src/monitor/tasks/index.all.js.map +1 -1
- package/out/src/sdk/ActionBatch.interfaces.d.ts +23 -0
- package/out/src/sdk/ActionBatch.interfaces.d.ts.map +1 -1
- package/out/src/sdk/PrivilegedKeyManager.d.ts.map +1 -1
- package/out/src/sdk/PrivilegedKeyManager.js +3 -2
- package/out/src/sdk/PrivilegedKeyManager.js.map +1 -1
- package/out/src/sdk/WERR_errors.d.ts +23 -0
- package/out/src/sdk/WERR_errors.d.ts.map +1 -1
- package/out/src/sdk/WERR_errors.js +51 -7
- package/out/src/sdk/WERR_errors.js.map +1 -1
- package/out/src/sdk/WalletError.d.ts.map +1 -1
- package/out/src/sdk/WalletError.js +7 -21
- package/out/src/sdk/WalletError.js.map +1 -1
- package/out/src/sdk/WalletErrorFromJson.d.ts.map +1 -1
- package/out/src/sdk/WalletErrorFromJson.js +121 -3
- package/out/src/sdk/WalletErrorFromJson.js.map +1 -1
- package/out/src/sdk/WalletServices.interfaces.d.ts +45 -2
- package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -1
- package/out/src/sdk/WalletStorage.interfaces.d.ts +87 -4
- package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -1
- package/out/src/sdk/types.d.ts +3 -2
- package/out/src/sdk/types.d.ts.map +1 -1
- package/out/src/sdk/types.js +3 -2
- package/out/src/sdk/types.js.map +1 -1
- package/out/src/services/ServiceCollection.js +2 -2
- package/out/src/services/ServiceCollection.js.map +1 -1
- package/out/src/services/Services.d.ts +5 -0
- package/out/src/services/Services.d.ts.map +1 -1
- package/out/src/services/Services.js +346 -120
- package/out/src/services/Services.js.map +1 -1
- package/out/src/services/chaintracker/BHServiceClient.d.ts +21 -4
- package/out/src/services/chaintracker/BHServiceClient.d.ts.map +1 -1
- package/out/src/services/chaintracker/BHServiceClient.js +269 -66
- package/out/src/services/chaintracker/BHServiceClient.js.map +1 -1
- package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +25 -3
- package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -1
- package/out/src/services/chaintracker/ChaintracksChainTracker.js +188 -53
- package/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -1
- package/out/src/services/chaintracker/LocalChainTracker.d.ts +122 -0
- package/out/src/services/chaintracker/LocalChainTracker.d.ts.map +1 -0
- package/out/src/services/chaintracker/LocalChainTracker.js +465 -0
- package/out/src/services/chaintracker/LocalChainTracker.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.js +59 -7
- package/out/src/services/chaintracker/chaintracks/Api/BlockHeaderApi.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataCacheApi.d.ts +48 -0
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataCacheApi.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataCacheApi.js +3 -0
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataCacheApi.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataValidatorApi.d.ts +70 -0
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataValidatorApi.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataValidatorApi.js +21 -0
- package/out/src/services/chaintracker/chaintracks/Api/BulkFileDataValidatorApi.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts +6 -0
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts +53 -0
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksClientApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.d.ts +9 -2
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksFetchApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts +9 -0
- package/out/src/services/chaintracker/chaintracks/Api/ChaintracksStorageApi.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts +28 -3
- package/out/src/services/chaintracker/chaintracks/Chaintracks.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Chaintracks.js +282 -64
- package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts +16 -0
- package/out/src/services/chaintracker/chaintracks/ChaintracksService.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksService.js +150 -26
- package/out/src/services/chaintracker/chaintracks/ChaintracksService.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts +30 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +348 -30
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.d.ts +32 -1
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js +378 -44
- package/out/src/services/chaintracker/chaintracks/GoChaintracksServiceClient.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +28 -3
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +33 -9
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDNBabbage.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.js +4 -2
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorChaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts +2 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js +17 -4
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts +2 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js +40 -20
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +14 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.d.ts +6 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.js +56 -9
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorChaintracksSSE.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.js +6 -3
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorTeranodeP2P.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts +4 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +27 -9
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts +8 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js +49 -5
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +90 -21
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts +3 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js +185 -38
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +59 -6
- package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.d.ts +2 -0
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js +89 -39
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts +10 -0
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +230 -28
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts +2 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js +265 -96
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts +3 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js +240 -87
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts +3 -0
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +121 -35
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.d.ts +8 -0
- package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.js +6 -3
- package/out/src/services/chaintracker/chaintracks/configureChaintracksIngestors.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js +1 -7
- package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.js +1 -7
- package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js +1 -7
- package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.all.d.ts +3 -0
- package/out/src/services/chaintracker/chaintracks/index.all.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.all.js +3 -0
- package/out/src/services/chaintracker/chaintracks/index.all.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.mobile.d.ts +5 -0
- package/out/src/services/chaintracker/chaintracks/index.mobile.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/index.mobile.js +5 -0
- package/out/src/services/chaintracker/chaintracks/index.mobile.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.d.ts +51 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.js +394 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataCacheFs.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts +45 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +733 -166
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js +17 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.d.ts +32 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.js +40 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataValidator.worker.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js +99 -30
- package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts +3 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js +23 -15
- package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts +38 -4
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js +191 -47
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.d.ts +2 -1
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js +57 -11
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.d.ts +48 -0
- package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.js +280 -0
- package/out/src/services/chaintracker/chaintracks/util/DurableFileBulkFileDownloadBudget.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/FixedWindowBulkFileDownloadBudget.d.ts +30 -0
- package/out/src/services/chaintracker/chaintracks/util/FixedWindowBulkFileDownloadBudget.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/FixedWindowBulkFileDownloadBudget.js +57 -0
- package/out/src/services/chaintracker/chaintracks/util/FixedWindowBulkFileDownloadBudget.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/HeightRange.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/HeightRange.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.d.ts +14 -0
- package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.js +148 -0
- package/out/src/services/chaintracker/chaintracks/util/InlineBulkFileDataValidator.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.d.ts +41 -0
- package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.js +271 -0
- package/out/src/services/chaintracker/chaintracks/util/NodeBulkFileDataValidator.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts +3 -0
- package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js +15 -0
- package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts +17 -4
- package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js +362 -105
- package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.d.ts +4 -0
- package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.js +33 -0
- package/out/src/services/chaintracker/chaintracks/util/safeDiagnostic.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
- package/out/src/services/chaintracker/index.all.d.ts +1 -0
- package/out/src/services/chaintracker/index.all.d.ts.map +1 -1
- package/out/src/services/chaintracker/index.all.js +1 -0
- package/out/src/services/chaintracker/index.all.js.map +1 -1
- package/out/src/services/chaintracker/index.client.d.ts +1 -0
- package/out/src/services/chaintracker/index.client.d.ts.map +1 -1
- package/out/src/services/chaintracker/index.client.js +1 -0
- package/out/src/services/chaintracker/index.client.js.map +1 -1
- package/out/src/services/chaintracker/index.mobile.d.ts +1 -0
- package/out/src/services/chaintracker/index.mobile.d.ts.map +1 -1
- package/out/src/services/chaintracker/index.mobile.js +1 -0
- package/out/src/services/chaintracker/index.mobile.js.map +1 -1
- package/out/src/services/classifyOutputUtxo.d.ts +25 -0
- package/out/src/services/classifyOutputUtxo.d.ts.map +1 -0
- package/out/src/services/classifyOutputUtxo.js +96 -0
- package/out/src/services/classifyOutputUtxo.js.map +1 -0
- package/out/src/services/createDefaultWalletServicesOptions.d.ts +16 -3
- package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -1
- package/out/src/services/createDefaultWalletServicesOptions.js +38 -8
- package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
- package/out/src/services/fiatRateValidation.d.ts +12 -0
- package/out/src/services/fiatRateValidation.d.ts.map +1 -0
- package/out/src/services/fiatRateValidation.js +138 -0
- package/out/src/services/fiatRateValidation.js.map +1 -0
- package/out/src/services/getCanonicalMerklePath.d.ts +15 -0
- package/out/src/services/getCanonicalMerklePath.d.ts.map +1 -0
- package/out/src/services/getCanonicalMerklePath.js +90 -0
- package/out/src/services/getCanonicalMerklePath.js.map +1 -0
- package/out/src/services/providers/ARC.d.ts +3 -16
- package/out/src/services/providers/ARC.d.ts.map +1 -1
- package/out/src/services/providers/ARC.js +36 -37
- package/out/src/services/providers/ARC.js.map +1 -1
- package/out/src/services/providers/ArcSSEClient.d.ts +38 -23
- package/out/src/services/providers/ArcSSEClient.d.ts.map +1 -1
- package/out/src/services/providers/ArcSSEClient.js +384 -63
- package/out/src/services/providers/ArcSSEClient.js.map +1 -1
- package/out/src/services/providers/Arcade.d.ts +11 -1
- package/out/src/services/providers/Arcade.d.ts.map +1 -1
- package/out/src/services/providers/Arcade.js +111 -33
- package/out/src/services/providers/Arcade.js.map +1 -1
- package/out/src/services/providers/Bitails.d.ts +3 -0
- package/out/src/services/providers/Bitails.d.ts.map +1 -1
- package/out/src/services/providers/Bitails.js +79 -12
- package/out/src/services/providers/Bitails.js.map +1 -1
- package/out/src/services/providers/SdkWhatsOnChain.d.ts +8 -2
- package/out/src/services/providers/SdkWhatsOnChain.d.ts.map +1 -1
- package/out/src/services/providers/SdkWhatsOnChain.js +83 -10
- package/out/src/services/providers/SdkWhatsOnChain.js.map +1 -1
- package/out/src/services/providers/WhatsOnChain.d.ts +3 -0
- package/out/src/services/providers/WhatsOnChain.d.ts.map +1 -1
- package/out/src/services/providers/WhatsOnChain.js +221 -69
- package/out/src/services/providers/WhatsOnChain.js.map +1 -1
- package/out/src/services/providers/arcProviderConfig.d.ts +27 -0
- package/out/src/services/providers/arcProviderConfig.d.ts.map +1 -0
- package/out/src/services/providers/arcProviderConfig.js +83 -0
- package/out/src/services/providers/arcProviderConfig.js.map +1 -0
- package/out/src/services/providers/arcTxDataValidation.d.ts +4 -0
- package/out/src/services/providers/arcTxDataValidation.d.ts.map +1 -0
- package/out/src/services/providers/arcTxDataValidation.js +92 -0
- package/out/src/services/providers/arcTxDataValidation.js.map +1 -0
- package/out/src/services/providers/arcadeStatus.d.ts +18 -0
- package/out/src/services/providers/arcadeStatus.d.ts.map +1 -0
- package/out/src/services/providers/arcadeStatus.js +56 -0
- package/out/src/services/providers/arcadeStatus.js.map +1 -0
- package/out/src/services/providers/exchangeRates.d.ts +3 -3
- package/out/src/services/providers/exchangeRates.d.ts.map +1 -1
- package/out/src/services/providers/exchangeRates.js +153 -226
- package/out/src/services/providers/exchangeRates.js.map +1 -1
- package/out/src/services/providers/getBeefForTxid.d.ts.map +1 -1
- package/out/src/services/providers/getBeefForTxid.js.map +1 -1
- package/out/src/services/providers/whatsOnChainHelpers.d.ts +2 -2
- package/out/src/services/providers/whatsOnChainHelpers.d.ts.map +1 -1
- package/out/src/services/providers/whatsOnChainHelpers.js +11 -8
- package/out/src/services/providers/whatsOnChainHelpers.js.map +1 -1
- package/out/src/services/validateMerklePathResult.d.ts +30 -0
- package/out/src/services/validateMerklePathResult.d.ts.map +1 -0
- package/out/src/services/validateMerklePathResult.js +272 -0
- package/out/src/services/validateMerklePathResult.js.map +1 -0
- package/out/src/services/validatePostBeefResult.d.ts +17 -0
- package/out/src/services/validatePostBeefResult.d.ts.map +1 -0
- package/out/src/services/validatePostBeefResult.js +334 -0
- package/out/src/services/validatePostBeefResult.js.map +1 -0
- package/out/src/services/validateRawTxResult.d.ts +6 -0
- package/out/src/services/validateRawTxResult.d.ts.map +1 -0
- package/out/src/services/validateRawTxResult.js +77 -0
- package/out/src/services/validateRawTxResult.js.map +1 -0
- package/out/src/services/validateScriptHashHistoryResult.d.ts +5 -0
- package/out/src/services/validateScriptHashHistoryResult.d.ts.map +1 -0
- package/out/src/services/validateScriptHashHistoryResult.js +99 -0
- package/out/src/services/validateScriptHashHistoryResult.js.map +1 -0
- package/out/src/services/validateStatusForTxidsResult.d.ts +8 -0
- package/out/src/services/validateStatusForTxidsResult.d.ts.map +1 -0
- package/out/src/services/validateStatusForTxidsResult.js +181 -0
- package/out/src/services/validateStatusForTxidsResult.js.map +1 -0
- package/out/src/services/validateUtxoStatusResult.d.ts +6 -0
- package/out/src/services/validateUtxoStatusResult.d.ts.map +1 -0
- package/out/src/services/validateUtxoStatusResult.js +126 -0
- package/out/src/services/validateUtxoStatusResult.js.map +1 -0
- package/out/src/signer/actionBatch/ActionBatchPlanner.d.ts +3 -2
- package/out/src/signer/actionBatch/ActionBatchPlanner.d.ts.map +1 -1
- package/out/src/signer/actionBatch/ActionBatchPlanner.js +29 -6
- package/out/src/signer/actionBatch/ActionBatchPlanner.js.map +1 -1
- package/out/src/signer/actionBatch/ActionBatchWorkspace.d.ts +8 -5
- package/out/src/signer/actionBatch/ActionBatchWorkspace.d.ts.map +1 -1
- package/out/src/signer/actionBatch/ActionBatchWorkspace.js +186 -73
- package/out/src/signer/actionBatch/ActionBatchWorkspace.js.map +1 -1
- package/out/src/signer/actionBatch/actionBatchBootstrap.d.ts +2 -2
- package/out/src/signer/actionBatch/actionBatchBootstrap.d.ts.map +1 -1
- package/out/src/signer/actionBatch/actionBatchBootstrap.js +3 -3
- package/out/src/signer/actionBatch/actionBatchBootstrap.js.map +1 -1
- package/out/src/signer/methods/acquireDirectCertificate.d.ts +3 -2
- package/out/src/signer/methods/acquireDirectCertificate.d.ts.map +1 -1
- package/out/src/signer/methods/acquireDirectCertificate.js.map +1 -1
- package/out/src/signer/methods/buildSignableTransaction.d.ts +6 -5
- package/out/src/signer/methods/buildSignableTransaction.d.ts.map +1 -1
- package/out/src/signer/methods/buildSignableTransaction.js +6 -11
- package/out/src/signer/methods/buildSignableTransaction.js.map +1 -1
- package/out/src/signer/methods/createAction.d.ts +4 -3
- package/out/src/signer/methods/createAction.d.ts.map +1 -1
- package/out/src/signer/methods/createAction.js +3 -1
- package/out/src/signer/methods/createAction.js.map +1 -1
- package/out/src/signer/methods/createNoSendExpiryAction.d.ts +7 -0
- package/out/src/signer/methods/createNoSendExpiryAction.d.ts.map +1 -0
- package/out/src/signer/methods/createNoSendExpiryAction.js +254 -0
- package/out/src/signer/methods/createNoSendExpiryAction.js.map +1 -0
- package/out/src/signer/methods/internalizeAction.d.ts.map +1 -1
- package/out/src/signer/methods/internalizeAction.js +9 -5
- package/out/src/signer/methods/internalizeAction.js.map +1 -1
- package/out/src/signer/methods/proveCertificate.d.ts +3 -2
- package/out/src/signer/methods/proveCertificate.d.ts.map +1 -1
- package/out/src/signer/methods/proveCertificate.js.map +1 -1
- package/out/src/signer/methods/signAction.d.ts.map +1 -1
- package/out/src/signer/methods/signAction.js +12 -2
- package/out/src/signer/methods/signAction.js.map +1 -1
- package/out/src/signer/methods/verifyUnlockScripts.d.ts.map +1 -1
- package/out/src/signer/methods/verifyUnlockScripts.js +12 -17
- package/out/src/signer/methods/verifyUnlockScripts.js.map +1 -1
- package/out/src/storage/StorageIdb.d.ts +11 -3
- package/out/src/storage/StorageIdb.d.ts.map +1 -1
- package/out/src/storage/StorageIdb.js +134 -44
- package/out/src/storage/StorageIdb.js.map +1 -1
- package/out/src/storage/StorageKnex.d.ts +68 -7
- package/out/src/storage/StorageKnex.d.ts.map +1 -1
- package/out/src/storage/StorageKnex.js +551 -105
- package/out/src/storage/StorageKnex.js.map +1 -1
- package/out/src/storage/StorageProvider.d.ts +41 -10
- package/out/src/storage/StorageProvider.d.ts.map +1 -1
- package/out/src/storage/StorageProvider.js +397 -107
- package/out/src/storage/StorageProvider.js.map +1 -1
- package/out/src/storage/StorageReader.d.ts +9 -3
- package/out/src/storage/StorageReader.d.ts.map +1 -1
- package/out/src/storage/StorageReader.js +21 -43
- package/out/src/storage/StorageReader.js.map +1 -1
- package/out/src/storage/StorageReaderWriter.d.ts +4 -0
- package/out/src/storage/StorageReaderWriter.d.ts.map +1 -1
- package/out/src/storage/StorageReaderWriter.js +68 -38
- package/out/src/storage/StorageReaderWriter.js.map +1 -1
- package/out/src/storage/StorageSyncReader.d.ts +1 -1
- package/out/src/storage/StorageSyncReader.d.ts.map +1 -1
- package/out/src/storage/StorageSyncReader.js +3 -36
- package/out/src/storage/StorageSyncReader.js.map +1 -1
- package/out/src/storage/WalletStorageManager.d.ts +31 -6
- package/out/src/storage/WalletStorageManager.d.ts.map +1 -1
- package/out/src/storage/WalletStorageManager.js +166 -75
- package/out/src/storage/WalletStorageManager.js.map +1 -1
- package/out/src/storage/adminServer/adminServer.d.ts +3 -1
- package/out/src/storage/adminServer/adminServer.d.ts.map +1 -1
- package/out/src/storage/adminServer/adminServer.js +38 -49
- package/out/src/storage/adminServer/adminServer.js.map +1 -1
- package/out/src/storage/adminServer/adminUi.d.ts.map +1 -1
- package/out/src/storage/adminServer/adminUi.js +32 -9
- package/out/src/storage/adminServer/adminUi.js.map +1 -1
- package/out/src/storage/adminServer/reviewUtxos.d.ts +27 -0
- package/out/src/storage/adminServer/reviewUtxos.d.ts.map +1 -0
- package/out/src/storage/adminServer/reviewUtxos.js +62 -0
- package/out/src/storage/adminServer/reviewUtxos.js.map +1 -0
- package/out/src/storage/idbHelpers.d.ts.map +1 -1
- package/out/src/storage/idbHelpers.js +14 -2
- package/out/src/storage/idbHelpers.js.map +1 -1
- package/out/src/storage/index.all.d.ts +3 -0
- package/out/src/storage/index.all.d.ts.map +1 -1
- package/out/src/storage/index.all.js +3 -0
- package/out/src/storage/index.all.js.map +1 -1
- package/out/src/storage/index.client.d.ts +1 -0
- package/out/src/storage/index.client.d.ts.map +1 -1
- package/out/src/storage/index.client.js +1 -0
- package/out/src/storage/index.client.js.map +1 -1
- package/out/src/storage/index.mobile.d.ts +1 -0
- package/out/src/storage/index.mobile.d.ts.map +1 -1
- package/out/src/storage/index.mobile.js +1 -0
- package/out/src/storage/index.mobile.js.map +1 -1
- package/out/src/storage/methods/ListActionsSpecOp.d.ts +2 -2
- package/out/src/storage/methods/ListActionsSpecOp.d.ts.map +1 -1
- package/out/src/storage/methods/ListActionsSpecOp.js.map +1 -1
- package/out/src/storage/methods/ListOutputsSpecOp.d.ts +7 -4
- package/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -1
- package/out/src/storage/methods/ListOutputsSpecOp.js +5 -44
- package/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -1
- package/out/src/storage/methods/actionBatch.d.ts +9 -2
- package/out/src/storage/methods/actionBatch.d.ts.map +1 -1
- package/out/src/storage/methods/actionBatch.js +260 -67
- package/out/src/storage/methods/actionBatch.js.map +1 -1
- package/out/src/storage/methods/actionBatchBlobs.d.ts +2 -0
- package/out/src/storage/methods/actionBatchBlobs.d.ts.map +1 -1
- package/out/src/storage/methods/actionBatchBlobs.js +47 -26
- package/out/src/storage/methods/actionBatchBlobs.js.map +1 -1
- package/out/src/storage/methods/actionBatchValidation.d.ts.map +1 -1
- package/out/src/storage/methods/actionBatchValidation.js +22 -30
- package/out/src/storage/methods/actionBatchValidation.js.map +1 -1
- package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts +7 -2
- package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts.map +1 -1
- package/out/src/storage/methods/attemptToPostReqsToNetwork.js +59 -110
- package/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -1
- package/out/src/storage/methods/availableManagedChange.d.ts +8 -1
- package/out/src/storage/methods/availableManagedChange.d.ts.map +1 -1
- package/out/src/storage/methods/availableManagedChange.js.map +1 -1
- package/out/src/storage/methods/createAction.d.ts +60 -3
- package/out/src/storage/methods/createAction.d.ts.map +1 -1
- package/out/src/storage/methods/createAction.js +390 -105
- package/out/src/storage/methods/createAction.js.map +1 -1
- package/out/src/storage/methods/generateChange.d.ts +15 -5
- package/out/src/storage/methods/generateChange.d.ts.map +1 -1
- package/out/src/storage/methods/generateChange.js +187 -27
- package/out/src/storage/methods/generateChange.js.map +1 -1
- package/out/src/storage/methods/getBeefForTransaction.js +5 -7
- package/out/src/storage/methods/getBeefForTransaction.js.map +1 -1
- package/out/src/storage/methods/getSyncChunk.d.ts.map +1 -1
- package/out/src/storage/methods/getSyncChunk.js +42 -11
- package/out/src/storage/methods/getSyncChunk.js.map +1 -1
- package/out/src/storage/methods/internalizeAction.d.ts +3 -3
- package/out/src/storage/methods/internalizeAction.d.ts.map +1 -1
- package/out/src/storage/methods/internalizeAction.js +171 -133
- package/out/src/storage/methods/internalizeAction.js.map +1 -1
- package/out/src/storage/methods/listActionsIdb.d.ts +3 -2
- package/out/src/storage/methods/listActionsIdb.d.ts.map +1 -1
- package/out/src/storage/methods/listActionsIdb.js +2 -2
- package/out/src/storage/methods/listActionsIdb.js.map +1 -1
- package/out/src/storage/methods/listActionsKnex.d.ts +3 -2
- package/out/src/storage/methods/listActionsKnex.d.ts.map +1 -1
- package/out/src/storage/methods/listActionsKnex.js +22 -11
- package/out/src/storage/methods/listActionsKnex.js.map +1 -1
- package/out/src/storage/methods/listCertificates.d.ts +3 -2
- package/out/src/storage/methods/listCertificates.d.ts.map +1 -1
- package/out/src/storage/methods/listCertificates.js.map +1 -1
- package/out/src/storage/methods/listOutputsIdb.d.ts +3 -2
- package/out/src/storage/methods/listOutputsIdb.d.ts.map +1 -1
- package/out/src/storage/methods/listOutputsIdb.js +25 -18
- package/out/src/storage/methods/listOutputsIdb.js.map +1 -1
- package/out/src/storage/methods/listOutputsKnex.d.ts +3 -2
- package/out/src/storage/methods/listOutputsKnex.d.ts.map +1 -1
- package/out/src/storage/methods/listOutputsKnex.js +32 -30
- package/out/src/storage/methods/listOutputsKnex.js.map +1 -1
- package/out/src/storage/methods/managedChangePolicy.d.ts +44 -0
- package/out/src/storage/methods/managedChangePolicy.d.ts.map +1 -0
- package/out/src/storage/methods/managedChangePolicy.js +58 -0
- package/out/src/storage/methods/managedChangePolicy.js.map +1 -0
- package/out/src/storage/methods/maxPossibleSatoshis.d.ts +13 -0
- package/out/src/storage/methods/maxPossibleSatoshis.d.ts.map +1 -0
- package/out/src/storage/methods/maxPossibleSatoshis.js +16 -0
- package/out/src/storage/methods/maxPossibleSatoshis.js.map +1 -0
- package/out/src/storage/methods/noSendExpiry.d.ts +11 -0
- package/out/src/storage/methods/noSendExpiry.d.ts.map +1 -0
- package/out/src/storage/methods/noSendExpiry.js +359 -0
- package/out/src/storage/methods/noSendExpiry.js.map +1 -0
- package/out/src/storage/methods/noSendExpiryLifecycle.d.ts +14 -0
- package/out/src/storage/methods/noSendExpiryLifecycle.d.ts.map +1 -0
- package/out/src/storage/methods/noSendExpiryLifecycle.js +691 -0
- package/out/src/storage/methods/noSendExpiryLifecycle.js.map +1 -0
- package/out/src/storage/methods/preparedBeef.d.ts +104 -0
- package/out/src/storage/methods/preparedBeef.d.ts.map +1 -0
- package/out/src/storage/methods/preparedBeef.js +524 -0
- package/out/src/storage/methods/preparedBeef.js.map +1 -0
- package/out/src/storage/methods/processAction.d.ts.map +1 -1
- package/out/src/storage/methods/processAction.js +144 -32
- package/out/src/storage/methods/processAction.js.map +1 -1
- package/out/src/storage/methods/purgeData.d.ts.map +1 -1
- package/out/src/storage/methods/purgeData.js +21 -3
- package/out/src/storage/methods/purgeData.js.map +1 -1
- package/out/src/storage/methods/reconcileFailedTransactionInputs.d.ts +32 -0
- package/out/src/storage/methods/reconcileFailedTransactionInputs.d.ts.map +1 -0
- package/out/src/storage/methods/reconcileFailedTransactionInputs.js +142 -0
- package/out/src/storage/methods/reconcileFailedTransactionInputs.js.map +1 -0
- package/out/src/storage/methods/reviewStatus.d.ts.map +1 -1
- package/out/src/storage/methods/reviewStatus.js +7 -4
- package/out/src/storage/methods/reviewStatus.js.map +1 -1
- package/out/src/storage/methods/reviewStatusIdb.d.ts +1 -1
- package/out/src/storage/methods/reviewStatusIdb.d.ts.map +1 -1
- package/out/src/storage/methods/reviewStatusIdb.js.map +1 -1
- package/out/src/storage/methods/reviewUtxoOutputs.d.ts +38 -0
- package/out/src/storage/methods/reviewUtxoOutputs.d.ts.map +1 -0
- package/out/src/storage/methods/reviewUtxoOutputs.js +197 -0
- package/out/src/storage/methods/reviewUtxoOutputs.js.map +1 -0
- package/out/src/storage/methods/validateSyncProof.d.ts +32 -0
- package/out/src/storage/methods/validateSyncProof.d.ts.map +1 -0
- package/out/src/storage/methods/validateSyncProof.js +139 -0
- package/out/src/storage/methods/validateSyncProof.js.map +1 -0
- package/out/src/storage/portable/index.d.ts.map +1 -1
- package/out/src/storage/portable/index.js +25 -15
- package/out/src/storage/portable/index.js.map +1 -1
- package/out/src/storage/remoting/BinaryJson.d.ts +11 -0
- package/out/src/storage/remoting/BinaryJson.d.ts.map +1 -1
- package/out/src/storage/remoting/BinaryJson.js +94 -8
- package/out/src/storage/remoting/BinaryJson.js.map +1 -1
- package/out/src/storage/remoting/KnexPaymentReplayStore.d.ts.map +1 -1
- package/out/src/storage/remoting/KnexPaymentReplayStore.js +1 -0
- package/out/src/storage/remoting/KnexPaymentReplayStore.js.map +1 -1
- package/out/src/storage/remoting/KnexSessionManager.d.ts +26 -2
- package/out/src/storage/remoting/KnexSessionManager.d.ts.map +1 -1
- package/out/src/storage/remoting/KnexSessionManager.js +221 -40
- package/out/src/storage/remoting/KnexSessionManager.js.map +1 -1
- package/out/src/storage/remoting/KnexSyncTransferStore.d.ts +26 -0
- package/out/src/storage/remoting/KnexSyncTransferStore.d.ts.map +1 -0
- package/out/src/storage/remoting/KnexSyncTransferStore.js +222 -0
- package/out/src/storage/remoting/KnexSyncTransferStore.js.map +1 -0
- package/out/src/storage/remoting/StorageClient.d.ts +6 -1
- package/out/src/storage/remoting/StorageClient.d.ts.map +1 -1
- package/out/src/storage/remoting/StorageClient.js +65 -8
- package/out/src/storage/remoting/StorageClient.js.map +1 -1
- package/out/src/storage/remoting/StorageClientBase.d.ts +57 -10
- package/out/src/storage/remoting/StorageClientBase.d.ts.map +1 -1
- package/out/src/storage/remoting/StorageClientBase.js +372 -9
- package/out/src/storage/remoting/StorageClientBase.js.map +1 -1
- package/out/src/storage/remoting/StorageMobile.d.ts +5 -0
- package/out/src/storage/remoting/StorageMobile.d.ts.map +1 -1
- package/out/src/storage/remoting/StorageMobile.js +13 -11
- package/out/src/storage/remoting/StorageMobile.js.map +1 -1
- package/out/src/storage/remoting/StorageServer.d.ts +10 -1
- package/out/src/storage/remoting/StorageServer.d.ts.map +1 -1
- package/out/src/storage/remoting/StorageServer.js +221 -20
- package/out/src/storage/remoting/StorageServer.js.map +1 -1
- package/out/src/storage/remoting/SyncTransfer.d.ts +29 -0
- package/out/src/storage/remoting/SyncTransfer.d.ts.map +1 -0
- package/out/src/storage/remoting/SyncTransfer.js +153 -0
- package/out/src/storage/remoting/SyncTransfer.js.map +1 -0
- package/out/src/storage/remoting/entityValidationHelpers.d.ts.map +1 -1
- package/out/src/storage/remoting/entityValidationHelpers.js +35 -0
- package/out/src/storage/remoting/entityValidationHelpers.js.map +1 -1
- package/out/src/storage/remoting/syncChunkBinary.d.ts +4 -0
- package/out/src/storage/remoting/syncChunkBinary.d.ts.map +1 -0
- package/out/src/storage/remoting/syncChunkBinary.js +38 -0
- package/out/src/storage/remoting/syncChunkBinary.js.map +1 -0
- package/out/src/storage/remoting/validateRpcSyncProofs.d.ts +5 -0
- package/out/src/storage/remoting/validateRpcSyncProofs.d.ts.map +1 -0
- package/out/src/storage/remoting/validateRpcSyncProofs.js +82 -0
- package/out/src/storage/remoting/validateRpcSyncProofs.js.map +1 -0
- package/out/src/storage/schema/KnexMigrations.d.ts +6 -0
- package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -1
- package/out/src/storage/schema/KnexMigrations.js +194 -5
- package/out/src/storage/schema/KnexMigrations.js.map +1 -1
- package/out/src/storage/schema/StorageIdbSchema.d.ts +3 -0
- package/out/src/storage/schema/StorageIdbSchema.d.ts.map +1 -1
- package/out/src/storage/schema/entities/EntityOutput.d.ts.map +1 -1
- package/out/src/storage/schema/entities/EntityOutput.js +24 -4
- package/out/src/storage/schema/entities/EntityOutput.js.map +1 -1
- package/out/src/storage/schema/entities/EntityOutputBasket.d.ts.map +1 -1
- package/out/src/storage/schema/entities/EntityOutputBasket.js +5 -2
- package/out/src/storage/schema/entities/EntityOutputBasket.js.map +1 -1
- package/out/src/storage/schema/entities/EntityProvenTx.d.ts +4 -1
- package/out/src/storage/schema/entities/EntityProvenTx.d.ts.map +1 -1
- package/out/src/storage/schema/entities/EntityProvenTx.js +125 -41
- package/out/src/storage/schema/entities/EntityProvenTx.js.map +1 -1
- package/out/src/storage/schema/entities/EntityProvenTxReq.js +1 -1
- package/out/src/storage/schema/entities/EntityProvenTxReq.js.map +1 -1
- package/out/src/storage/schema/entities/EntitySyncState.d.ts +4 -2
- package/out/src/storage/schema/entities/EntitySyncState.d.ts.map +1 -1
- package/out/src/storage/schema/entities/EntitySyncState.js +12 -6
- package/out/src/storage/schema/entities/EntitySyncState.js.map +1 -1
- package/out/src/storage/schema/entities/EntityTransaction.d.ts +26 -0
- package/out/src/storage/schema/entities/EntityTransaction.d.ts.map +1 -1
- package/out/src/storage/schema/entities/EntityTransaction.js +221 -21
- package/out/src/storage/schema/entities/EntityTransaction.js.map +1 -1
- package/out/src/storage/schema/tables/TableCertificate.d.ts +1 -1
- package/out/src/storage/schema/tables/TableCertificate.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableCertificateField.d.ts +1 -1
- package/out/src/storage/schema/tables/TableCertificateField.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableCommission.d.ts +1 -1
- package/out/src/storage/schema/tables/TableCommission.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableMonitorEvent.d.ts +1 -1
- package/out/src/storage/schema/tables/TableMonitorEvent.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableOutput.d.ts +1 -1
- package/out/src/storage/schema/tables/TableOutput.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableOutputBasket.d.ts +1 -1
- package/out/src/storage/schema/tables/TableOutputBasket.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableOutputTag.d.ts +1 -1
- package/out/src/storage/schema/tables/TableOutputTag.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableOutputTagMap.d.ts +1 -1
- package/out/src/storage/schema/tables/TableOutputTagMap.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TablePreparedBeef.interfaces.d.ts +23 -0
- package/out/src/storage/schema/tables/TablePreparedBeef.interfaces.d.ts.map +1 -0
- package/out/src/storage/schema/tables/TablePreparedBeef.interfaces.js +3 -0
- package/out/src/storage/schema/tables/TablePreparedBeef.interfaces.js.map +1 -0
- package/out/src/storage/schema/tables/TableProvenTx.d.ts +1 -1
- package/out/src/storage/schema/tables/TableProvenTx.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableProvenTxReq.d.ts +1 -1
- package/out/src/storage/schema/tables/TableProvenTxReq.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableSettings.d.ts +2 -2
- package/out/src/storage/schema/tables/TableSettings.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableSyncState.d.ts +1 -1
- package/out/src/storage/schema/tables/TableSyncState.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableTransaction.d.ts +17 -1
- package/out/src/storage/schema/tables/TableTransaction.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableTransaction.js +14 -1
- package/out/src/storage/schema/tables/TableTransaction.js.map +1 -1
- package/out/src/storage/schema/tables/TableTxLabel.d.ts +1 -1
- package/out/src/storage/schema/tables/TableTxLabel.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableTxLabelMap.d.ts +1 -1
- package/out/src/storage/schema/tables/TableTxLabelMap.d.ts.map +1 -1
- package/out/src/storage/schema/tables/TableUser.d.ts +1 -1
- package/out/src/storage/schema/tables/TableUser.d.ts.map +1 -1
- package/out/src/storage/sync/StorageMySQLDojoReader.d.ts.map +1 -1
- package/out/src/storage/sync/StorageMySQLDojoReader.js +8 -7
- package/out/src/storage/sync/StorageMySQLDojoReader.js.map +1 -1
- package/out/src/storage/sync/SyncPageBudget.d.ts +8 -0
- package/out/src/storage/sync/SyncPageBudget.d.ts.map +1 -0
- package/out/src/storage/sync/SyncPageBudget.js +24 -0
- package/out/src/storage/sync/SyncPageBudget.js.map +1 -0
- package/out/src/storage/sync/syncCheckpoint.d.ts +4 -0
- package/out/src/storage/sync/syncCheckpoint.d.ts.map +1 -0
- package/out/src/storage/sync/syncCheckpoint.js +49 -0
- package/out/src/storage/sync/syncCheckpoint.js.map +1 -0
- package/out/src/utility/Argon2idBackend.d.ts +36 -0
- package/out/src/utility/Argon2idBackend.d.ts.map +1 -0
- package/out/src/utility/Argon2idBackend.js +60 -0
- package/out/src/utility/Argon2idBackend.js.map +1 -0
- package/out/src/utility/actionBatchDigest.d.ts.map +1 -1
- package/out/src/utility/actionBatchDigest.js +9 -7
- package/out/src/utility/actionBatchDigest.js.map +1 -1
- package/out/src/utility/actionBatchPack.d.ts.map +1 -1
- package/out/src/utility/actionBatchPack.js +7 -12
- package/out/src/utility/actionBatchPack.js.map +1 -1
- package/out/src/utility/beefForTxids.d.ts +12 -3
- package/out/src/utility/beefForTxids.d.ts.map +1 -1
- package/out/src/utility/beefForTxids.js +69 -21
- package/out/src/utility/beefForTxids.js.map +1 -1
- package/out/src/utility/brc153ReferenceLabels.d.ts +16 -0
- package/out/src/utility/brc153ReferenceLabels.d.ts.map +1 -1
- package/out/src/utility/brc153ReferenceLabels.js +20 -5
- package/out/src/utility/brc153ReferenceLabels.js.map +1 -1
- package/out/src/utility/brc177NoSendExpiry.d.ts +34 -0
- package/out/src/utility/brc177NoSendExpiry.d.ts.map +1 -0
- package/out/src/utility/brc177NoSendExpiry.js +81 -0
- package/out/src/utility/brc177NoSendExpiry.js.map +1 -0
- package/out/src/utility/canonicalizeAtomicBeef.d.ts +12 -0
- package/out/src/utility/canonicalizeAtomicBeef.d.ts.map +1 -0
- package/out/src/utility/canonicalizeAtomicBeef.js +23 -0
- package/out/src/utility/canonicalizeAtomicBeef.js.map +1 -0
- package/out/src/utility/exactActionSpend.d.ts +9 -0
- package/out/src/utility/exactActionSpend.d.ts.map +1 -0
- package/out/src/utility/exactActionSpend.js +26 -0
- package/out/src/utility/exactActionSpend.js.map +1 -0
- package/out/src/utility/hashWasm.d.ts +1 -1
- package/out/src/utility/hashWasm.d.ts.map +1 -1
- package/out/src/utility/hashWasm.js +83 -1
- package/out/src/utility/hashWasm.js.map +1 -1
- package/out/src/utility/identityUtils.d.ts +44 -4
- package/out/src/utility/identityUtils.d.ts.map +1 -1
- package/out/src/utility/identityUtils.js +523 -61
- package/out/src/utility/identityUtils.js.map +1 -1
- package/out/src/utility/index.all.d.ts +2 -0
- package/out/src/utility/index.all.d.ts.map +1 -1
- package/out/src/utility/index.all.js +2 -0
- package/out/src/utility/index.all.js.map +1 -1
- package/out/src/utility/index.client.d.ts +2 -0
- package/out/src/utility/index.client.d.ts.map +1 -1
- package/out/src/utility/index.client.js +2 -0
- package/out/src/utility/index.client.js.map +1 -1
- package/out/src/utility/parseTxScriptOffsets.d.ts.map +1 -1
- package/out/src/utility/parseTxScriptOffsets.js +1 -19
- package/out/src/utility/parseTxScriptOffsets.js.map +1 -1
- package/out/src/utility/tscProofToMerklePath.d.ts.map +1 -1
- package/out/src/utility/tscProofToMerklePath.js +35 -4
- package/out/src/utility/tscProofToMerklePath.js.map +1 -1
- package/out/src/utility/utilityHelpers.d.ts +1 -1
- package/out/src/utility/utilityHelpers.d.ts.map +1 -1
- package/out/src/utility/utilityHelpers.js +10 -7
- package/out/src/utility/utilityHelpers.js.map +1 -1
- package/out/src/utility/utilityHelpers.noBuffer.d.ts.map +1 -1
- package/out/src/utility/utilityHelpers.noBuffer.js +6 -6
- package/out/src/utility/utilityHelpers.noBuffer.js.map +1 -1
- package/out/src/utility/verifyOverlayOutput.d.ts +12 -0
- package/out/src/utility/verifyOverlayOutput.d.ts.map +1 -0
- package/out/src/utility/verifyOverlayOutput.js +22 -0
- package/out/src/utility/verifyOverlayOutput.js.map +1 -0
- package/out/src/utility/walletResultGuards.d.ts +14 -0
- package/out/src/utility/walletResultGuards.d.ts.map +1 -0
- package/out/src/utility/walletResultGuards.js +28 -0
- package/out/src/utility/walletResultGuards.js.map +1 -0
- package/out/src/wab-client/WABClient.d.ts +4 -17
- package/out/src/wab-client/WABClient.d.ts.map +1 -1
- package/out/src/wab-client/WABClient.js +35 -12
- package/out/src/wab-client/WABClient.js.map +1 -1
- package/out/src/wab-client/WABResponseValidation.d.ts +48 -0
- package/out/src/wab-client/WABResponseValidation.d.ts.map +1 -0
- package/out/src/wab-client/WABResponseValidation.js +321 -0
- package/out/src/wab-client/WABResponseValidation.js.map +1 -0
- package/out/src/wab-client/WABTransport.d.ts +17 -23
- package/out/src/wab-client/WABTransport.d.ts.map +1 -1
- package/out/src/wab-client/WABTransport.js +130 -142
- package/out/src/wab-client/WABTransport.js.map +1 -1
- package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts +8 -0
- package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.d.ts.map +1 -1
- package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js +3 -2
- package/out/src/wab-client/auth-method-interactors/AuthMethodInteractor.js.map +1 -1
- package/package.json +36 -32
- package/docs/open-rpc/index.html +0 -46
|
@@ -2,7 +2,18 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.TaskReviewDoubleSpends = void 0;
|
|
4
4
|
const Monitor_1 = require("../Monitor");
|
|
5
|
+
const monitorValidation_1 = require("../monitorValidation");
|
|
5
6
|
const WalletMonitorTask_1 = require("./WalletMonitorTask");
|
|
7
|
+
function hasDurableInputConflict(req) {
|
|
8
|
+
try {
|
|
9
|
+
const history = JSON.parse(req.history);
|
|
10
|
+
return history.notes?.some(note => note.inputConflict === true || note.what === 'arcSSEInputQuarantine') === true;
|
|
11
|
+
}
|
|
12
|
+
catch {
|
|
13
|
+
// Malformed legacy history must never weaken a terminal decision.
|
|
14
|
+
return true;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
6
17
|
/**
|
|
7
18
|
* Review recent reqs in terminal 'doubleSpend' state and move any false positives
|
|
8
19
|
* back to 'unfail' so existing recovery handling can re-process them.
|
|
@@ -14,8 +25,12 @@ class TaskReviewDoubleSpends extends WalletMonitorTask_1.WalletMonitorTask {
|
|
|
14
25
|
triggerQuickMsecs;
|
|
15
26
|
static taskName = 'ReviewDoubleSpends';
|
|
16
27
|
static checkNowRequested = false;
|
|
17
|
-
static get checkNow() {
|
|
18
|
-
|
|
28
|
+
static get checkNow() {
|
|
29
|
+
return this.checkNowRequested;
|
|
30
|
+
}
|
|
31
|
+
static set checkNow(value) {
|
|
32
|
+
this.checkNowRequested = value;
|
|
33
|
+
}
|
|
19
34
|
triggerNextMsecs;
|
|
20
35
|
constructor(monitor, triggerMsecs = Monitor_1.Monitor.oneMinute * 12, reviewLimit = 100, minAgeMinutes = 60, triggerQuickMsecs = Monitor_1.Monitor.oneMinute * 1) {
|
|
21
36
|
super(monitor, TaskReviewDoubleSpends.taskName);
|
|
@@ -23,6 +38,10 @@ class TaskReviewDoubleSpends extends WalletMonitorTask_1.WalletMonitorTask {
|
|
|
23
38
|
this.reviewLimit = reviewLimit;
|
|
24
39
|
this.minAgeMinutes = minAgeMinutes;
|
|
25
40
|
this.triggerQuickMsecs = triggerQuickMsecs;
|
|
41
|
+
(0, monitorValidation_1.requireMonitorInteger)(triggerMsecs, 'triggerMsecs', 0, monitorValidation_1.MAX_MONITOR_INTERVAL_MSECS);
|
|
42
|
+
(0, monitorValidation_1.requireMonitorInteger)(reviewLimit, 'reviewLimit', 1, monitorValidation_1.MAX_MONITOR_PAGE_SIZE);
|
|
43
|
+
(0, monitorValidation_1.requireMonitorInteger)(minAgeMinutes, 'minAgeMinutes', 0, monitorValidation_1.MAX_MONITOR_INTERVAL_MSECS / Monitor_1.Monitor.oneMinute);
|
|
44
|
+
(0, monitorValidation_1.requireMonitorInteger)(triggerQuickMsecs, 'triggerQuickMsecs', 0, monitorValidation_1.MAX_MONITOR_INTERVAL_MSECS);
|
|
26
45
|
this.triggerNextMsecs = this.triggerQuickMsecs;
|
|
27
46
|
}
|
|
28
47
|
trigger(nowMsecsSinceEpoch) {
|
|
@@ -45,10 +64,11 @@ class TaskReviewDoubleSpends extends WalletMonitorTask_1.WalletMonitorTask {
|
|
|
45
64
|
continue;
|
|
46
65
|
try {
|
|
47
66
|
const parsed = JSON.parse(event.details);
|
|
48
|
-
|
|
67
|
+
const resumeOffset = (0, monitorValidation_1.optionalMonitorInteger)(parsed.resumeOffset, 0, monitorValidation_1.MAX_MONITOR_OFFSET);
|
|
68
|
+
if (resumeOffset !== undefined) {
|
|
49
69
|
return {
|
|
50
|
-
resumeOffset
|
|
51
|
-
expectedProvenTxReqId: parsed.expectedProvenTxReqId
|
|
70
|
+
resumeOffset,
|
|
71
|
+
expectedProvenTxReqId: (0, monitorValidation_1.optionalMonitorInteger)(parsed.expectedProvenTxReqId, 1, monitorValidation_1.MAX_MONITOR_OFFSET)
|
|
52
72
|
};
|
|
53
73
|
}
|
|
54
74
|
}
|
|
@@ -75,15 +95,17 @@ class TaskReviewDoubleSpends extends WalletMonitorTask_1.WalletMonitorTask {
|
|
|
75
95
|
let retainedDoubleSpendCount = 0;
|
|
76
96
|
for (const req of reqs) {
|
|
77
97
|
const gsr = await this.monitor.services.getStatusForTxids([req.txid]);
|
|
78
|
-
const status = gsr.results
|
|
98
|
+
const status = gsr.status === 'success' ? gsr.results.find(result => result.txid === req.txid)?.status : undefined;
|
|
99
|
+
const durableInputConflict = hasDurableInputConflict(req);
|
|
79
100
|
reviewed.push(req);
|
|
80
|
-
|
|
101
|
+
const canUnfail = status === 'mined' || (status === 'known' && !durableInputConflict);
|
|
102
|
+
if (!canUnfail) {
|
|
81
103
|
lastRetainedDoubleSpendIndex = reviewed.length - 1;
|
|
82
104
|
retainedDoubleSpendCount += 1;
|
|
83
105
|
}
|
|
84
106
|
else {
|
|
85
107
|
unfails.push(req.provenTxReqId);
|
|
86
|
-
log += `unfail ${req.provenTxReqId} ${req.txid} status:${status}\n`;
|
|
108
|
+
log += `unfail ${req.provenTxReqId} ${req.txid} status:${status} durableInputConflict:${String(durableInputConflict)}\n`;
|
|
87
109
|
}
|
|
88
110
|
}
|
|
89
111
|
if (unfails.length > 0) {
|
|
@@ -103,7 +125,7 @@ class TaskReviewDoubleSpends extends WalletMonitorTask_1.WalletMonitorTask {
|
|
|
103
125
|
});
|
|
104
126
|
}
|
|
105
127
|
async findReqsToReview(checkpoint, updatedBefore) {
|
|
106
|
-
let offset = checkpoint?.resumeOffset
|
|
128
|
+
let offset = checkpoint?.resumeOffset ?? 0;
|
|
107
129
|
if (checkpoint?.expectedProvenTxReqId !== undefined) {
|
|
108
130
|
const verify = await this.storage.findProvenTxReqs({
|
|
109
131
|
partial: { status: 'doubleSpend' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskReviewDoubleSpends.js","sourceRoot":"","sources":["../../../../src/monitor/tasks/TaskReviewDoubleSpends.ts"],"names":[],"mappings":";;;AACA,wCAAoC;AACpC,2DAAuD;
|
|
1
|
+
{"version":3,"file":"TaskReviewDoubleSpends.js","sourceRoot":"","sources":["../../../../src/monitor/tasks/TaskReviewDoubleSpends.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,20 @@ export interface ReviewHeightRangeResult {
|
|
|
7
7
|
mismatchedHeights: number;
|
|
8
8
|
affectedTransactions: number;
|
|
9
9
|
updatedTransactions: number;
|
|
10
|
+
unresolvedHeights: number[];
|
|
11
|
+
}
|
|
12
|
+
interface ReviewProvenTxsCheckpoint {
|
|
13
|
+
tipHeight: number;
|
|
14
|
+
minBlockAge: number;
|
|
15
|
+
maxHeightsPerRun: number;
|
|
16
|
+
startHeight: number;
|
|
17
|
+
reviewedThroughHeight: number;
|
|
18
|
+
reviewedHeights: number;
|
|
19
|
+
mismatchedHeights: number;
|
|
20
|
+
affectedTransactions: number;
|
|
21
|
+
updatedTransactions: number;
|
|
22
|
+
retryHeights?: number[];
|
|
23
|
+
reviewLog?: string;
|
|
10
24
|
}
|
|
11
25
|
/**
|
|
12
26
|
* Backup verification task for recent proven_txs records.
|
|
@@ -20,17 +34,20 @@ export declare class TaskReviewProvenTxs extends WalletMonitorTask {
|
|
|
20
34
|
maxHeightsPerRun: number;
|
|
21
35
|
minBlockAge: number;
|
|
22
36
|
triggerQuickMsecs: number;
|
|
37
|
+
maxRetryHeightsPerRun: number;
|
|
23
38
|
static readonly taskName = "ReviewProvenTxs";
|
|
24
39
|
private static checkNowRequested;
|
|
25
40
|
static get checkNow(): boolean;
|
|
26
41
|
static set checkNow(value: boolean);
|
|
27
42
|
triggerNextMsecs: number;
|
|
28
|
-
constructor(monitor: Monitor, triggerMsecs?: number, maxHeightsPerRun?: number, minBlockAge?: number, triggerQuickMsecs?: number);
|
|
43
|
+
constructor(monitor: Monitor, triggerMsecs?: number, maxHeightsPerRun?: number, minBlockAge?: number, triggerQuickMsecs?: number, maxRetryHeightsPerRun?: number);
|
|
29
44
|
trigger(nowMsecsSinceEpoch: number): {
|
|
30
45
|
run: boolean;
|
|
31
46
|
};
|
|
32
47
|
runTask(): Promise<string>;
|
|
33
48
|
reviewHeightRange(range: HeightRange): Promise<ReviewHeightRangeResult>;
|
|
34
49
|
getLastReviewedHeight(): Promise<number | undefined>;
|
|
50
|
+
getLastCheckpoint(): Promise<Partial<ReviewProvenTxsCheckpoint> | undefined>;
|
|
35
51
|
}
|
|
52
|
+
export {};
|
|
36
53
|
//# sourceMappingURL=TaskReviewProvenTxs.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskReviewProvenTxs.d.ts","sourceRoot":"","sources":["../../../../src/monitor/tasks/TaskReviewProvenTxs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0DAA0D,CAAA;AACtF,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"TaskReviewProvenTxs.d.ts","sourceRoot":"","sources":["../../../../src/monitor/tasks/TaskReviewProvenTxs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0DAA0D,CAAA;AACtF,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AAQpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEvD,MAAM,WAAW,uBAAuB;IACtC,GAAG,EAAE,MAAM,CAAA;IACX,eAAe,EAAE,MAAM,CAAA;IACvB,iBAAiB,EAAE,MAAM,CAAA;IACzB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,mBAAmB,EAAE,MAAM,CAAA;IAC3B,iBAAiB,EAAE,MAAM,EAAE,CAAA;CAC5B;AAED,UAAU,yBAAyB;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,gBAAgB,EAAE,MAAM,CAAA;IACxB,WAAW,EAAE,MAAM,CAAA;IACnB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,eAAe,EAAE,MAAM,CAAA;IACvB,iBAAiB,EAAE,MAAM,CAAA;IACzB,oBAAoB,EAAE,MAAM,CAAA;IAC5B,mBAAmB,EAAE,MAAM,CAAA;IAC3B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAA;IACvB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAED;;;;;;GAMG;AACH,qBAAa,mBAAoB,SAAQ,iBAAiB;IAe/C,YAAY;IACZ,gBAAgB;IAChB,WAAW;IACX,iBAAiB;IACjB,qBAAqB;IAlB9B,MAAM,CAAC,QAAQ,CAAC,QAAQ,qBAAoB;IAE5C,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAQ;IACxC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAE7B;IACD,MAAM,KAAK,QAAQ,CAAC,KAAK,EAAE,OAAO,EAEjC;IAED,gBAAgB,EAAE,MAAM,CAAA;IAExB,YACE,OAAO,EAAE,OAAO,EACT,YAAY,SAAyB,EACrC,gBAAgB,SAAM,EACtB,WAAW,SAAM,EACjB,iBAAiB,SAAwB,EACzC,qBAAqB,SAAK,EASlC;IAED,OAAO,CAAC,kBAAkB,EAAE,MAAM,GAAG;QAAE,GAAG,EAAE,OAAO,CAAA;KAAE,CAMpD;IAEK,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CA0E/B;IAEK,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAoD5E;IAEK,qBAAqB,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAezD;IAEK,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC,yBAAyB,CAAC,GAAG,SAAS,CAAC,CA+BjF;CACF"}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.TaskReviewProvenTxs = void 0;
|
|
4
4
|
const HeightRange_1 = require("../../services/chaintracker/chaintracks/util/HeightRange");
|
|
5
5
|
const Monitor_1 = require("../Monitor");
|
|
6
|
+
const monitorValidation_1 = require("../monitorValidation");
|
|
6
7
|
const WalletMonitorTask_1 = require("./WalletMonitorTask");
|
|
7
8
|
/**
|
|
8
9
|
* Backup verification task for recent proven_txs records.
|
|
@@ -16,17 +17,28 @@ class TaskReviewProvenTxs extends WalletMonitorTask_1.WalletMonitorTask {
|
|
|
16
17
|
maxHeightsPerRun;
|
|
17
18
|
minBlockAge;
|
|
18
19
|
triggerQuickMsecs;
|
|
20
|
+
maxRetryHeightsPerRun;
|
|
19
21
|
static taskName = 'ReviewProvenTxs';
|
|
20
22
|
static checkNowRequested = false;
|
|
21
|
-
static get checkNow() {
|
|
22
|
-
|
|
23
|
+
static get checkNow() {
|
|
24
|
+
return this.checkNowRequested;
|
|
25
|
+
}
|
|
26
|
+
static set checkNow(value) {
|
|
27
|
+
this.checkNowRequested = value;
|
|
28
|
+
}
|
|
23
29
|
triggerNextMsecs;
|
|
24
|
-
constructor(monitor, triggerMsecs = Monitor_1.Monitor.oneMinute * 10, maxHeightsPerRun = 100, minBlockAge = 100, triggerQuickMsecs = Monitor_1.Monitor.oneMinute * 1) {
|
|
30
|
+
constructor(monitor, triggerMsecs = Monitor_1.Monitor.oneMinute * 10, maxHeightsPerRun = 100, minBlockAge = 100, triggerQuickMsecs = Monitor_1.Monitor.oneMinute * 1, maxRetryHeightsPerRun = 25) {
|
|
25
31
|
super(monitor, TaskReviewProvenTxs.taskName);
|
|
26
32
|
this.triggerMsecs = triggerMsecs;
|
|
27
33
|
this.maxHeightsPerRun = maxHeightsPerRun;
|
|
28
34
|
this.minBlockAge = minBlockAge;
|
|
29
35
|
this.triggerQuickMsecs = triggerQuickMsecs;
|
|
36
|
+
this.maxRetryHeightsPerRun = maxRetryHeightsPerRun;
|
|
37
|
+
(0, monitorValidation_1.requireMonitorInteger)(triggerMsecs, 'triggerMsecs', 0, monitorValidation_1.MAX_MONITOR_INTERVAL_MSECS);
|
|
38
|
+
(0, monitorValidation_1.requireMonitorInteger)(maxHeightsPerRun, 'maxHeightsPerRun', 0, monitorValidation_1.MAX_MONITOR_PAGE_SIZE);
|
|
39
|
+
(0, monitorValidation_1.requireMonitorInteger)(minBlockAge, 'minBlockAge', 0, monitorValidation_1.MAX_MONITOR_HEIGHT);
|
|
40
|
+
(0, monitorValidation_1.requireMonitorInteger)(triggerQuickMsecs, 'triggerQuickMsecs', 0, monitorValidation_1.MAX_MONITOR_INTERVAL_MSECS);
|
|
41
|
+
(0, monitorValidation_1.requireMonitorInteger)(maxRetryHeightsPerRun, 'maxRetryHeightsPerRun', 0, monitorValidation_1.MAX_MONITOR_PAGE_SIZE);
|
|
30
42
|
this.triggerNextMsecs = this.triggerQuickMsecs;
|
|
31
43
|
}
|
|
32
44
|
trigger(nowMsecsSinceEpoch) {
|
|
@@ -38,27 +50,66 @@ class TaskReviewProvenTxs extends WalletMonitorTask_1.WalletMonitorTask {
|
|
|
38
50
|
async runTask() {
|
|
39
51
|
TaskReviewProvenTxs.checkNow = false;
|
|
40
52
|
const chaintracks = this.monitor.chaintracksWithEvents || this.monitor.chaintracks;
|
|
41
|
-
const tipHeight = await chaintracks.currentHeight();
|
|
53
|
+
const tipHeight = (0, monitorValidation_1.requireMonitorInteger)(await chaintracks.currentHeight(), 'chain tip height', 0, monitorValidation_1.MAX_MONITOR_HEIGHT);
|
|
42
54
|
const maxEligibleHeight = tipHeight - this.minBlockAge;
|
|
43
|
-
const
|
|
55
|
+
const checkpoint = await this.getLastCheckpoint();
|
|
56
|
+
const lastReviewedHeight = checkpoint?.reviewedThroughHeight ?? (await this.getLastReviewedHeight());
|
|
44
57
|
const startHeight = lastReviewedHeight === undefined ? 0 : lastReviewedHeight + 1;
|
|
45
58
|
const endHeight = Math.min(startHeight + this.maxHeightsPerRun - 1, maxEligibleHeight);
|
|
46
59
|
const range = new HeightRange_1.HeightRange(startHeight, endHeight);
|
|
47
|
-
|
|
60
|
+
const priorRetryHeights = [...new Set(checkpoint?.retryHeights ?? [])];
|
|
61
|
+
// Retain temporarily ineligible heights if the tip retreats. Eligibility
|
|
62
|
+
// limits this attempt, not the durable queue of unresolved work.
|
|
63
|
+
const retryBatch = this.maxRetryHeightsPerRun > 0
|
|
64
|
+
? priorRetryHeights.filter(height => height <= maxEligibleHeight).slice(0, this.maxRetryHeightsPerRun)
|
|
65
|
+
: [];
|
|
66
|
+
if (range.isEmpty && retryBatch.length === 0)
|
|
48
67
|
return '';
|
|
49
|
-
let log =
|
|
50
|
-
const review =
|
|
68
|
+
let log = '';
|
|
69
|
+
const review = {
|
|
70
|
+
log: '',
|
|
71
|
+
reviewedHeights: 0,
|
|
72
|
+
mismatchedHeights: 0,
|
|
73
|
+
affectedTransactions: 0,
|
|
74
|
+
updatedTransactions: 0,
|
|
75
|
+
unresolvedHeights: []
|
|
76
|
+
};
|
|
77
|
+
const mergeReview = (part) => {
|
|
78
|
+
review.log += part.log;
|
|
79
|
+
review.reviewedHeights += part.reviewedHeights;
|
|
80
|
+
review.mismatchedHeights += part.mismatchedHeights;
|
|
81
|
+
review.affectedTransactions += part.affectedTransactions;
|
|
82
|
+
review.updatedTransactions += part.updatedTransactions;
|
|
83
|
+
review.unresolvedHeights.push(...part.unresolvedHeights);
|
|
84
|
+
};
|
|
85
|
+
if (retryBatch.length > 0) {
|
|
86
|
+
log += `retrying unresolved heights ${retryBatch.join(',')}\n`;
|
|
87
|
+
for (const height of retryBatch)
|
|
88
|
+
mergeReview(await this.reviewHeightRange(new HeightRange_1.HeightRange(height, height)));
|
|
89
|
+
}
|
|
90
|
+
if (!range.isEmpty) {
|
|
91
|
+
log += `reviewing heights ${range.minHeight}..${range.maxHeight} tip=${tipHeight} minAge=${this.minBlockAge} maxPerRun=${this.maxHeightsPerRun}\n`;
|
|
92
|
+
mergeReview(await this.reviewHeightRange(range));
|
|
93
|
+
}
|
|
51
94
|
log += review.log;
|
|
95
|
+
const attemptedRetries = new Set(retryBatch);
|
|
96
|
+
// Failed attempts move behind waiting heights so persistent failures cannot
|
|
97
|
+
// monopolize the next batch, including after a monitor restart.
|
|
98
|
+
const retryHeights = [
|
|
99
|
+
...new Set([...priorRetryHeights.filter(height => !attemptedRetries.has(height)), ...review.unresolvedHeights])
|
|
100
|
+
];
|
|
101
|
+
const reviewedThroughHeight = range.isEmpty ? (lastReviewedHeight ?? -1) : range.maxHeight;
|
|
52
102
|
return JSON.stringify({
|
|
53
103
|
tipHeight,
|
|
54
104
|
minBlockAge: this.minBlockAge,
|
|
55
105
|
maxHeightsPerRun: this.maxHeightsPerRun,
|
|
56
106
|
startHeight,
|
|
57
|
-
reviewedThroughHeight
|
|
107
|
+
reviewedThroughHeight,
|
|
58
108
|
reviewedHeights: review.reviewedHeights,
|
|
59
109
|
mismatchedHeights: review.mismatchedHeights,
|
|
60
110
|
affectedTransactions: review.affectedTransactions,
|
|
61
111
|
updatedTransactions: review.updatedTransactions,
|
|
112
|
+
retryHeights,
|
|
62
113
|
reviewLog: log
|
|
63
114
|
});
|
|
64
115
|
}
|
|
@@ -68,7 +119,8 @@ class TaskReviewProvenTxs extends WalletMonitorTask_1.WalletMonitorTask {
|
|
|
68
119
|
reviewedHeights: 0,
|
|
69
120
|
mismatchedHeights: 0,
|
|
70
121
|
affectedTransactions: 0,
|
|
71
|
-
updatedTransactions: 0
|
|
122
|
+
updatedTransactions: 0,
|
|
123
|
+
unresolvedHeights: []
|
|
72
124
|
};
|
|
73
125
|
if (range.isEmpty) {
|
|
74
126
|
this.triggerNextMsecs = this.triggerMsecs;
|
|
@@ -82,6 +134,7 @@ class TaskReviewProvenTxs extends WalletMonitorTask_1.WalletMonitorTask {
|
|
|
82
134
|
const header = await chaintracks.findHeaderForHeight(height);
|
|
83
135
|
if (header == null) {
|
|
84
136
|
result.log += ` height ${height} canonical header unavailable\n`;
|
|
137
|
+
result.unresolvedHeights.push(height);
|
|
85
138
|
continue;
|
|
86
139
|
}
|
|
87
140
|
let staleRoots = [];
|
|
@@ -92,16 +145,37 @@ class TaskReviewProvenTxs extends WalletMonitorTask_1.WalletMonitorTask {
|
|
|
92
145
|
continue;
|
|
93
146
|
result.mismatchedHeights++;
|
|
94
147
|
result.log += ` height ${height} canonical ${header.merkleRoot} stale ${staleRoots.join(',')}\n`;
|
|
148
|
+
let unresolved = false;
|
|
95
149
|
for (const staleRoot of staleRoots) {
|
|
96
150
|
const reprove = await this.storage.reproveHeightMerkleRoot(height, staleRoot);
|
|
97
151
|
result.affectedTransactions += reprove.updated.length + reprove.unchanged.length + reprove.unavailable.length;
|
|
98
152
|
result.updatedTransactions += reprove.updated.length;
|
|
153
|
+
if (reprove.unchanged.length > 0 || reprove.unavailable.length > 0)
|
|
154
|
+
unresolved = true;
|
|
99
155
|
result.log += reprove.log;
|
|
100
156
|
}
|
|
157
|
+
if (unresolved)
|
|
158
|
+
result.unresolvedHeights.push(height);
|
|
101
159
|
}
|
|
102
160
|
return result;
|
|
103
161
|
}
|
|
104
162
|
async getLastReviewedHeight() {
|
|
163
|
+
const checkpoint = await this.getLastCheckpoint();
|
|
164
|
+
if (checkpoint?.reviewedThroughHeight != null)
|
|
165
|
+
return checkpoint.reviewedThroughHeight;
|
|
166
|
+
let lastReviewedHeight;
|
|
167
|
+
await this.storage.runAsStorageProvider(async (sp) => {
|
|
168
|
+
// Start at height of first proven tx when it appears...
|
|
169
|
+
const ptxs = await sp.findProvenTxs({ partial: {}, paged: { limit: 1, offset: 0 }, orderDescending: false });
|
|
170
|
+
if (ptxs.length > 0) {
|
|
171
|
+
const firstHeight = (0, monitorValidation_1.optionalMonitorInteger)(ptxs[0].height, 0, monitorValidation_1.MAX_MONITOR_HEIGHT);
|
|
172
|
+
if (firstHeight !== undefined)
|
|
173
|
+
lastReviewedHeight = firstHeight - 1;
|
|
174
|
+
}
|
|
175
|
+
});
|
|
176
|
+
return lastReviewedHeight;
|
|
177
|
+
}
|
|
178
|
+
async getLastCheckpoint() {
|
|
105
179
|
let events = [];
|
|
106
180
|
await this.storage.runAsStorageProvider(async (sp) => {
|
|
107
181
|
events = await sp.findMonitorEvents({
|
|
@@ -115,23 +189,27 @@ class TaskReviewProvenTxs extends WalletMonitorTask_1.WalletMonitorTask {
|
|
|
115
189
|
continue;
|
|
116
190
|
try {
|
|
117
191
|
const parsed = JSON.parse(event.details);
|
|
118
|
-
if (typeof parsed
|
|
119
|
-
|
|
192
|
+
if (parsed == null || typeof parsed !== 'object' || Array.isArray(parsed))
|
|
193
|
+
continue;
|
|
194
|
+
const record = parsed;
|
|
195
|
+
const reviewedThroughHeight = (0, monitorValidation_1.optionalMonitorInteger)(record.reviewedThroughHeight, 0, monitorValidation_1.MAX_MONITOR_HEIGHT);
|
|
196
|
+
if (reviewedThroughHeight === undefined)
|
|
197
|
+
continue;
|
|
198
|
+
const retryHeights = [];
|
|
199
|
+
if (Array.isArray(record.retryHeights) && record.retryHeights.length <= monitorValidation_1.MAX_MONITOR_PAGE_SIZE) {
|
|
200
|
+
for (const candidate of record.retryHeights) {
|
|
201
|
+
const height = (0, monitorValidation_1.optionalMonitorInteger)(candidate, 0, monitorValidation_1.MAX_MONITOR_HEIGHT);
|
|
202
|
+
if (height !== undefined && !retryHeights.includes(height))
|
|
203
|
+
retryHeights.push(height);
|
|
204
|
+
}
|
|
120
205
|
}
|
|
206
|
+
return { reviewedThroughHeight, retryHeights };
|
|
121
207
|
}
|
|
122
208
|
catch {
|
|
123
209
|
continue;
|
|
124
210
|
}
|
|
125
211
|
}
|
|
126
|
-
|
|
127
|
-
await this.storage.runAsStorageProvider(async (sp) => {
|
|
128
|
-
// Start at height of first proven tx when it appears...
|
|
129
|
-
const ptxs = await sp.findProvenTxs({ partial: {}, paged: { limit: 1, offset: 0 }, orderDescending: false });
|
|
130
|
-
if (ptxs.length > 0) {
|
|
131
|
-
lastReviewedHeight = ptxs[0].height - 1;
|
|
132
|
-
}
|
|
133
|
-
});
|
|
134
|
-
return lastReviewedHeight;
|
|
212
|
+
return undefined;
|
|
135
213
|
}
|
|
136
214
|
}
|
|
137
215
|
exports.TaskReviewProvenTxs = TaskReviewProvenTxs;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskReviewProvenTxs.js","sourceRoot":"","sources":["../../../../src/monitor/tasks/TaskReviewProvenTxs.ts"],"names":[],"mappings":";;;AAAA,0FAAsF;AACtF,wCAAoC;AACpC,2DAAuD;
|
|
1
|
+
{"version":3,"file":"TaskReviewProvenTxs.js","sourceRoot":"","sources":["../../../../src/monitor/tasks/TaskReviewProvenTxs.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,25 +1,52 @@
|
|
|
1
|
+
import { UtxoReviewDiagnostics } from '../../storage/methods/reviewUtxoOutputs';
|
|
1
2
|
import { Monitor } from '../Monitor';
|
|
2
3
|
import { WalletMonitorTask } from './WalletMonitorTask';
|
|
4
|
+
export interface TaskReviewUtxosPageResult extends UtxoReviewDiagnostics {
|
|
5
|
+
found: boolean;
|
|
6
|
+
userId?: number;
|
|
7
|
+
identityKey: string;
|
|
8
|
+
mode: 'all' | 'change';
|
|
9
|
+
release: boolean;
|
|
10
|
+
offset: number;
|
|
11
|
+
pageLimit: number;
|
|
12
|
+
sourceScanned: number;
|
|
13
|
+
complete: boolean;
|
|
14
|
+
nextOffset?: number;
|
|
15
|
+
log: string;
|
|
16
|
+
}
|
|
3
17
|
/**
|
|
4
|
-
* Use the reviewByIdentityKey method to
|
|
18
|
+
* Use the reviewByIdentityKey method to scan the UTXOs of a specific user by
|
|
19
|
+
* identity key. The scan is read-only unless the caller explicitly requests
|
|
20
|
+
* release, and release remains blocked if any provider result is inconclusive.
|
|
21
|
+
* Operator UIs should use reviewPageByIdentityKey: it bounds each provider
|
|
22
|
+
* round-trip and may explicitly release only the conclusive spent subset while
|
|
23
|
+
* reporting unknowns.
|
|
5
24
|
*
|
|
6
25
|
* The task itself is disabled and will not run on a schedule; review must be triggered manually by calling reviewByIdentityKey.
|
|
7
26
|
*/
|
|
8
27
|
export declare class TaskReviewUtxos extends WalletMonitorTask {
|
|
9
|
-
triggerMsecs: number;
|
|
10
|
-
userLimit: number;
|
|
11
|
-
userOffset: number;
|
|
12
|
-
tags: string[];
|
|
13
28
|
static readonly taskName = "ReviewUtxos";
|
|
14
29
|
private static checkNowRequested;
|
|
15
30
|
static get checkNow(): boolean;
|
|
16
31
|
static set checkNow(value: boolean);
|
|
32
|
+
triggerMsecs: number;
|
|
33
|
+
userLimit: number;
|
|
34
|
+
userOffset: number;
|
|
35
|
+
tags: string[];
|
|
17
36
|
constructor(monitor: Monitor, triggerMsecs?: number, userLimit?: number, userOffset?: number, tags?: string[]);
|
|
18
37
|
trigger(_nowMsecsSinceEpoch: number): {
|
|
19
38
|
run: boolean;
|
|
20
39
|
};
|
|
21
40
|
runTask(): Promise<string>;
|
|
22
|
-
reviewByIdentityKey(identityKey: string, mode?: 'all' | 'change'): Promise<string>;
|
|
41
|
+
reviewByIdentityKey(identityKey: string, mode?: 'all' | 'change', release?: boolean): Promise<string>;
|
|
42
|
+
reviewPageByIdentityKey(identityKey: string, mode?: 'all' | 'change', release?: boolean, pageLimit?: number, offset?: number): Promise<TaskReviewUtxosPageResult>;
|
|
43
|
+
private emptyPage;
|
|
44
|
+
/**
|
|
45
|
+
* Report managed-change liquidity without changing it. Monitor deliberately
|
|
46
|
+
* has no signing authority; progressive migration occurs only during a
|
|
47
|
+
* caller-authorized createAction.
|
|
48
|
+
*/
|
|
49
|
+
reviewManagedChangeByIdentityKey(identityKey: string): Promise<string>;
|
|
23
50
|
private toUserLog;
|
|
24
51
|
}
|
|
25
52
|
//# sourceMappingURL=TaskReviewUtxos.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TaskReviewUtxos.d.ts","sourceRoot":"","sources":["../../../../src/monitor/tasks/TaskReviewUtxos.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TaskReviewUtxos.d.ts","sourceRoot":"","sources":["../../../../src/monitor/tasks/TaskReviewUtxos.ts"],"names":[],"mappings":"AAKA,OAAO,EAGL,qBAAqB,EACtB,MAAM,yCAAyC,CAAA;AAEhD,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAavD,MAAM,WAAW,yBAA0B,SAAQ,qBAAqB;IACtE,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,WAAW,EAAE,MAAM,CAAA;IACnB,IAAI,EAAE,KAAK,GAAG,QAAQ,CAAA;IACtB,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,OAAO,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,GAAG,EAAE,MAAM,CAAA;CACZ;AAED;;;;;;;;;GASG;AACH,qBAAa,eAAgB,SAAQ,iBAAiB;IACpD,MAAM,CAAC,QAAQ,CAAC,QAAQ,iBAAgB;IAExC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAQ;IACxC,MAAM,KAAK,QAAQ,IAAI,OAAO,CAE7B;IACD,MAAM,KAAK,QAAQ,CAAC,KAAK,EAAE,OAAO,EAGjC;IAEM,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,IAAI,EAAE,MAAM,EAAE,CAAA;IAErB,YAAY,OAAO,EAAE,OAAO,EAAE,YAAY,SAAI,EAAE,SAAS,SAAK,EAAE,UAAU,SAAI,EAAE,IAAI,GAAE,MAAM,EAAY,EAMvG;IAED,OAAO,CAAC,mBAAmB,EAAE,MAAM,GAAG;QAAE,GAAG,EAAE,OAAO,CAAA;KAAE,CAIrD;IAEK,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAG/B;IAEK,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,GAAE,KAAK,GAAG,QAAgB,EAAE,OAAO,UAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAmC/G;IAEK,uBAAuB,CAC3B,WAAW,EAAE,MAAM,EACnB,IAAI,GAAE,KAAK,GAAG,QAAgB,EAC9B,OAAO,UAAQ,EACf,SAAS,SAA4B,EACrC,MAAM,SAAI,GACT,OAAO,CAAC,yBAAyB,CAAC,CAyFpC;IAED,OAAO,CAAC,SAAS;IA+BjB;;;;OAIG;IACG,gCAAgC,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CA6C3E;IAED,OAAO,CAAC,SAAS;CAelB"}
|