@bsv/wallet-toolbox 2.1.27 → 2.1.30
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 +6 -0
- package/docs/client.md +485 -160
- package/docs/monitor.md +69 -1
- package/docs/storage.md +421 -63
- package/docs/wallet.md +945 -145
- package/out/src/CWIStyleWalletManager.js +107 -41
- package/out/src/CWIStyleWalletManager.js.map +1 -1
- package/out/src/Setup.js +3 -3
- package/out/src/Setup.js.map +1 -1
- package/out/src/SetupClient.js +1 -1
- package/out/src/SetupClient.js.map +1 -1
- package/out/src/ShamirWalletManager.d.ts +2 -2
- package/out/src/ShamirWalletManager.js +10 -3
- package/out/src/ShamirWalletManager.js.map +1 -1
- package/out/src/SimpleWalletManager.js +29 -0
- package/out/src/SimpleWalletManager.js.map +1 -1
- package/out/src/Wallet.js +84 -66
- package/out/src/Wallet.js.map +1 -1
- package/out/src/WalletAuthenticationManager.js +6 -3
- package/out/src/WalletAuthenticationManager.js.map +1 -1
- package/out/src/WalletLogger.js +6 -4
- package/out/src/WalletLogger.js.map +1 -1
- package/out/src/WalletPermissionsManager.d.ts.map +1 -1
- package/out/src/WalletPermissionsManager.js +158 -167
- package/out/src/WalletPermissionsManager.js.map +1 -1
- package/out/src/WalletSettingsManager.js +3 -0
- package/out/src/WalletSettingsManager.js.map +1 -1
- package/out/src/entropy/EntropyCollector.js +9 -9
- package/out/src/entropy/EntropyCollector.js.map +1 -1
- package/out/src/fundWalletP2PKH.js +5 -6
- package/out/src/fundWalletP2PKH.js.map +1 -1
- package/out/src/mockchain/MockChainMigrations.js +1 -1
- package/out/src/mockchain/MockChainMigrations.js.map +1 -1
- package/out/src/mockchain/MockChainStorage.js +1 -0
- package/out/src/mockchain/MockChainStorage.js.map +1 -1
- package/out/src/mockchain/MockChainTracker.js +2 -0
- package/out/src/mockchain/MockChainTracker.js.map +1 -1
- package/out/src/mockchain/MockMiner.js +2 -2
- package/out/src/mockchain/MockMiner.js.map +1 -1
- package/out/src/mockchain/MockServices.js +21 -25
- package/out/src/mockchain/MockServices.js.map +1 -1
- package/out/src/monitor/Monitor.d.ts.map +1 -1
- package/out/src/monitor/Monitor.js +57 -33
- package/out/src/monitor/Monitor.js.map +1 -1
- package/out/src/monitor/MonitorDaemon.js +12 -10
- package/out/src/monitor/MonitorDaemon.js.map +1 -1
- package/out/src/monitor/tasks/TaskArcSSE.js +10 -13
- package/out/src/monitor/tasks/TaskArcSSE.js.map +1 -1
- package/out/src/monitor/tasks/TaskCheckForProofs.js +10 -11
- package/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -1
- package/out/src/monitor/tasks/TaskCheckNoSends.d.ts +59 -1
- package/out/src/monitor/tasks/TaskCheckNoSends.d.ts.map +1 -1
- package/out/src/monitor/tasks/TaskCheckNoSends.js +101 -12
- package/out/src/monitor/tasks/TaskCheckNoSends.js.map +1 -1
- package/out/src/monitor/tasks/TaskClock.js +3 -1
- package/out/src/monitor/tasks/TaskClock.js.map +1 -1
- package/out/src/monitor/tasks/TaskFailAbandoned.js +2 -1
- package/out/src/monitor/tasks/TaskFailAbandoned.js.map +1 -1
- package/out/src/monitor/tasks/TaskMineBlock.js +3 -2
- package/out/src/monitor/tasks/TaskMineBlock.js.map +1 -1
- package/out/src/monitor/tasks/TaskMonitorCallHistory.js +2 -1
- package/out/src/monitor/tasks/TaskMonitorCallHistory.js.map +1 -1
- package/out/src/monitor/tasks/TaskNewHeader.js +12 -1
- package/out/src/monitor/tasks/TaskNewHeader.js.map +1 -1
- package/out/src/monitor/tasks/TaskPurge.js +7 -5
- package/out/src/monitor/tasks/TaskPurge.js.map +1 -1
- package/out/src/monitor/tasks/TaskReorg.js +4 -2
- package/out/src/monitor/tasks/TaskReorg.js.map +1 -1
- package/out/src/monitor/tasks/TaskReviewDoubleSpends.js +12 -9
- package/out/src/monitor/tasks/TaskReviewDoubleSpends.js.map +1 -1
- package/out/src/monitor/tasks/TaskReviewProvenTxs.js +8 -3
- package/out/src/monitor/tasks/TaskReviewProvenTxs.js.map +1 -1
- package/out/src/monitor/tasks/TaskReviewStatus.js +7 -5
- package/out/src/monitor/tasks/TaskReviewStatus.js.map +1 -1
- package/out/src/monitor/tasks/TaskReviewUtxos.js +6 -2
- package/out/src/monitor/tasks/TaskReviewUtxos.js.map +1 -1
- package/out/src/monitor/tasks/TaskSendWaiting.js +9 -2
- package/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
- package/out/src/monitor/tasks/TaskSyncWhenIdle.js +2 -1
- package/out/src/monitor/tasks/TaskSyncWhenIdle.js.map +1 -1
- package/out/src/monitor/tasks/TaskUnFail.js +6 -5
- package/out/src/monitor/tasks/TaskUnFail.js.map +1 -1
- package/out/src/monitor/tasks/WalletMonitorTask.js +7 -4
- package/out/src/monitor/tasks/WalletMonitorTask.js.map +1 -1
- package/out/src/sdk/PrivilegedKeyManager.js +44 -27
- package/out/src/sdk/PrivilegedKeyManager.js.map +1 -1
- package/out/src/sdk/WERR_errors.js +23 -8
- package/out/src/sdk/WERR_errors.js.map +1 -1
- package/out/src/sdk/WalletError.js +7 -7
- package/out/src/sdk/WalletError.js.map +1 -1
- package/out/src/services/ServiceCollection.js +9 -2
- package/out/src/services/ServiceCollection.js.map +1 -1
- package/out/src/services/Services.js +58 -54
- package/out/src/services/Services.js.map +1 -1
- package/out/src/services/chaintracker/BHServiceClient.js +8 -2
- package/out/src/services/chaintracker/BHServiceClient.js.map +1 -1
- package/out/src/services/chaintracker/ChaintracksChainTracker.js +5 -2
- package/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Chaintracks.js +27 -21
- package/out/src/services/chaintracker/chaintracks/Chaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksService.js +10 -5
- package/out/src/services/chaintracker/chaintracks/ChaintracksService.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +4 -1
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js +8 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js +7 -0
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorCDN.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js +5 -3
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js +3 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainWs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js +3 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js +3 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainPoll.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js +4 -3
- package/out/src/services/chaintracker/chaintracks/Ingest/LiveIngestorWhatsOnChainWs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js +1 -2
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainIngestorWs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js +8 -5
- package/out/src/services/chaintracker/chaintracks/Ingest/WhatsOnChainServices.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js +3 -1
- package/out/src/services/chaintracker/chaintracks/Storage/BulkStorageBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js +2 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksKnexMigrations.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js +12 -6
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageBase.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js +8 -7
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageIdb.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js +8 -8
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageKnex.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js +15 -16
- package/out/src/services/chaintracker/chaintracks/Storage/ChaintracksStorageNoDb.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.js +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultIdbChaintracksOptions.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.js +3 -3
- package/out/src/services/chaintracker/chaintracks/createDefaultKnexChaintracksOptions.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js +1 -1
- package/out/src/services/chaintracker/chaintracks/createDefaultNoDbChaintracksOptions.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js +1 -1
- package/out/src/services/chaintracker/chaintracks/createIdbChaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.js +1 -1
- package/out/src/services/chaintracker/chaintracks/createKnexChaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js +1 -1
- package/out/src/services/chaintracker/chaintracks/createNoDbChaintracks.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js +19 -16
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataManager.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js +4 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkFileDataReader.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js +17 -4
- package/out/src/services/chaintracker/chaintracks/util/BulkFilesReader.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js +21 -0
- package/out/src/services/chaintracker/chaintracks/util/BulkHeaderFile.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js +1 -3
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFetch.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js +9 -3
- package/out/src/services/chaintracker/chaintracks/util/ChaintracksFs.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/HeightRange.js +7 -5
- package/out/src/services/chaintracker/chaintracks/util/HeightRange.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js +4 -6
- package/out/src/services/chaintracker/chaintracks/util/SingleWriterMultiReaderLock.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js +1 -1
- package/out/src/services/chaintracker/chaintracks/util/blockHeaderUtilities.js.map +1 -1
- package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js +8 -8
- package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
- package/out/src/services/createDefaultWalletServicesOptions.js +8 -8
- package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -1
- package/out/src/services/providers/ARC.js +13 -5
- package/out/src/services/providers/ARC.js.map +1 -1
- package/out/src/services/providers/ArcSSEClient.js +9 -8
- package/out/src/services/providers/ArcSSEClient.js.map +1 -1
- package/out/src/services/providers/Bitails.js +6 -2
- package/out/src/services/providers/Bitails.js.map +1 -1
- package/out/src/services/providers/SdkWhatsOnChain.js +6 -2
- package/out/src/services/providers/SdkWhatsOnChain.js.map +1 -1
- package/out/src/services/providers/WhatsOnChain.js +2 -1
- package/out/src/services/providers/WhatsOnChain.js.map +1 -1
- package/out/src/services/providers/getBeefForTxid.js +2 -1
- package/out/src/services/providers/getBeefForTxid.js.map +1 -1
- package/out/src/signer/WalletSigner.js +4 -1
- package/out/src/signer/WalletSigner.js.map +1 -1
- package/out/src/signer/methods/acquireDirectCertificate.js +1 -2
- package/out/src/signer/methods/acquireDirectCertificate.js.map +1 -1
- package/out/src/signer/methods/buildSignableTransaction.js +1 -2
- package/out/src/signer/methods/buildSignableTransaction.js.map +1 -1
- package/out/src/signer/methods/completeSignedTransaction.js +4 -5
- package/out/src/signer/methods/completeSignedTransaction.js.map +1 -1
- package/out/src/signer/methods/createAction.js +9 -11
- package/out/src/signer/methods/createAction.js.map +1 -1
- package/out/src/signer/methods/internalizeAction.d.ts +8 -1
- package/out/src/signer/methods/internalizeAction.d.ts.map +1 -1
- package/out/src/signer/methods/internalizeAction.js +8 -1
- package/out/src/signer/methods/internalizeAction.js.map +1 -1
- package/out/src/signer/methods/signAction.js +5 -6
- package/out/src/signer/methods/signAction.js.map +1 -1
- package/out/src/storage/StorageIdb.js +84 -99
- package/out/src/storage/StorageIdb.js.map +1 -1
- package/out/src/storage/StorageKnex.d.ts.map +1 -1
- package/out/src/storage/StorageKnex.js +22 -29
- package/out/src/storage/StorageKnex.js.map +1 -1
- package/out/src/storage/StorageProvider.d.ts +4 -1
- package/out/src/storage/StorageProvider.d.ts.map +1 -1
- package/out/src/storage/StorageProvider.js +122 -32
- package/out/src/storage/StorageProvider.js.map +1 -1
- package/out/src/storage/StorageReader.js +4 -2
- package/out/src/storage/StorageReader.js.map +1 -1
- package/out/src/storage/StorageSyncReader.js +2 -0
- package/out/src/storage/StorageSyncReader.js.map +1 -1
- package/out/src/storage/WalletStorageManager.js +47 -25
- package/out/src/storage/WalletStorageManager.js.map +1 -1
- package/out/src/storage/adminServer/adminServer.js +35 -48
- package/out/src/storage/adminServer/adminServer.js.map +1 -1
- package/out/src/storage/idbHelpers.js +1 -2
- package/out/src/storage/idbHelpers.js.map +1 -1
- package/out/src/storage/methods/ListActionsSpecOp.d.ts.map +1 -1
- package/out/src/storage/methods/ListActionsSpecOp.js +69 -6
- package/out/src/storage/methods/ListActionsSpecOp.js.map +1 -1
- package/out/src/storage/methods/ListOutputsSpecOp.d.ts.map +1 -1
- package/out/src/storage/methods/ListOutputsSpecOp.js +5 -2
- package/out/src/storage/methods/ListOutputsSpecOp.js.map +1 -1
- package/out/src/storage/methods/attemptToPostReqsToNetwork.js +10 -12
- package/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -1
- package/out/src/storage/methods/createAction.d.ts.map +1 -1
- package/out/src/storage/methods/createAction.js +111 -69
- package/out/src/storage/methods/createAction.js.map +1 -1
- package/out/src/storage/methods/generateChange.js +2 -3
- package/out/src/storage/methods/generateChange.js.map +1 -1
- package/out/src/storage/methods/getBeefForTransaction.js +2 -4
- package/out/src/storage/methods/getBeefForTransaction.js.map +1 -1
- package/out/src/storage/methods/internalizeAction.d.ts +69 -2
- package/out/src/storage/methods/internalizeAction.d.ts.map +1 -1
- package/out/src/storage/methods/internalizeAction.js +232 -27
- package/out/src/storage/methods/internalizeAction.js.map +1 -1
- package/out/src/storage/methods/listActionsIdb.js +7 -9
- package/out/src/storage/methods/listActionsIdb.js.map +1 -1
- package/out/src/storage/methods/listActionsKnex.js +7 -9
- package/out/src/storage/methods/listActionsKnex.js.map +1 -1
- package/out/src/storage/methods/listOutputsIdb.js +5 -7
- package/out/src/storage/methods/listOutputsIdb.js.map +1 -1
- package/out/src/storage/methods/listOutputsKnex.js +9 -10
- package/out/src/storage/methods/listOutputsKnex.js.map +1 -1
- package/out/src/storage/methods/processAction.d.ts.map +1 -1
- package/out/src/storage/methods/processAction.js +12 -11
- package/out/src/storage/methods/processAction.js.map +1 -1
- package/out/src/storage/methods/reviewStatus.d.ts +3 -2
- package/out/src/storage/methods/reviewStatus.d.ts.map +1 -1
- package/out/src/storage/methods/reviewStatus.js +34 -2
- package/out/src/storage/methods/reviewStatus.js.map +1 -1
- package/out/src/storage/methods/reviewStatusIdb.d.ts +2 -2
- package/out/src/storage/methods/reviewStatusIdb.d.ts.map +1 -1
- package/out/src/storage/methods/reviewStatusIdb.js +54 -13
- package/out/src/storage/methods/reviewStatusIdb.js.map +1 -1
- package/out/src/storage/portable/index.d.ts.map +1 -1
- package/out/src/storage/portable/index.js +171 -129
- package/out/src/storage/portable/index.js.map +1 -1
- package/out/src/storage/remoting/StorageClient.js +2 -3
- package/out/src/storage/remoting/StorageClient.js.map +1 -1
- package/out/src/storage/remoting/StorageClientBase.js +6 -3
- package/out/src/storage/remoting/StorageClientBase.js.map +1 -1
- package/out/src/storage/remoting/StorageServer.js +17 -11
- package/out/src/storage/remoting/StorageServer.js.map +1 -1
- package/out/src/storage/schema/KnexMigrations.js +5 -1
- package/out/src/storage/schema/KnexMigrations.js.map +1 -1
- package/out/src/storage/schema/entities/EntityBase.js +1 -0
- package/out/src/storage/schema/entities/EntityBase.js.map +1 -1
- package/out/src/storage/schema/entities/EntityOutputBasket.js +1 -1
- package/out/src/storage/schema/entities/EntityOutputBasket.js.map +1 -1
- package/out/src/storage/schema/entities/EntityProvenTx.js +12 -13
- package/out/src/storage/schema/entities/EntityProvenTx.js.map +1 -1
- package/out/src/storage/schema/entities/EntityProvenTxReq.js +7 -9
- package/out/src/storage/schema/entities/EntityProvenTxReq.js.map +1 -1
- package/out/src/storage/schema/entities/EntitySyncState.js +6 -3
- package/out/src/storage/schema/entities/EntitySyncState.js.map +1 -1
- package/out/src/storage/schema/entities/MergeEntity.js +4 -0
- package/out/src/storage/schema/entities/MergeEntity.js.map +1 -1
- package/out/src/storage/storageProviderHelpers.js +2 -3
- package/out/src/storage/storageProviderHelpers.js.map +1 -1
- package/out/src/storage/sync/StorageMySQLDojoReader.js +2 -2
- package/out/src/storage/sync/StorageMySQLDojoReader.js.map +1 -1
- package/out/src/utility/Format.js +4 -5
- package/out/src/utility/Format.js.map +1 -1
- package/out/src/utility/ScriptTemplateBRC29.js +7 -6
- package/out/src/utility/ScriptTemplateBRC29.js.map +1 -1
- package/out/src/utility/brc114ActionTimeLabels.js +1 -1
- package/out/src/utility/brc114ActionTimeLabels.js.map +1 -1
- package/out/src/utility/identityUtils.js +2 -4
- package/out/src/utility/identityUtils.js.map +1 -1
- package/out/src/utility/utilityHelpers.buffer.js +3 -3
- package/out/src/utility/utilityHelpers.buffer.js.map +1 -1
- package/out/src/utility/utilityHelpers.js +2 -2
- package/out/src/utility/utilityHelpers.js.map +1 -1
- package/out/src/utility/utilityHelpers.noBuffer.js +4 -4
- package/out/src/utility/utilityHelpers.noBuffer.js.map +1 -1
- package/out/src/wab-client/WABClient.js +1 -0
- package/out/src/wab-client/WABClient.js.map +1 -1
- package/out/src/wab-client/auth-method-interactors/DevConsoleInteractor.js +1 -4
- package/out/src/wab-client/auth-method-interactors/DevConsoleInteractor.js.map +1 -1
- package/out/src/wab-client/auth-method-interactors/PersonaIDInteractor.js +1 -4
- package/out/src/wab-client/auth-method-interactors/PersonaIDInteractor.js.map +1 -1
- package/out/src/wab-client/auth-method-interactors/TwilioPhoneInteractor.js +1 -4
- package/out/src/wab-client/auth-method-interactors/TwilioPhoneInteractor.js.map +1 -1
- package/package.json +19 -19
- package/out/src/__tests/CWIStyleWalletManager.test.d.ts +0 -2
- package/out/src/__tests/CWIStyleWalletManager.test.d.ts.map +0 -1
- package/out/src/__tests/CWIStyleWalletManager.test.js +0 -810
- package/out/src/__tests/CWIStyleWalletManager.test.js.map +0 -1
- package/out/src/__tests/ShamirWalletManager.test.d.ts +0 -2
- package/out/src/__tests/ShamirWalletManager.test.d.ts.map +0 -1
- package/out/src/__tests/ShamirWalletManager.test.js +0 -303
- package/out/src/__tests/ShamirWalletManager.test.js.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.callbacks.test.d.ts +0 -2
- package/out/src/__tests/WalletPermissionsManager.callbacks.test.d.ts.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.callbacks.test.js +0 -365
- package/out/src/__tests/WalletPermissionsManager.callbacks.test.js.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.checks.test.d.ts +0 -2
- package/out/src/__tests/WalletPermissionsManager.checks.test.d.ts.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.checks.test.js +0 -642
- package/out/src/__tests/WalletPermissionsManager.checks.test.js.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.encryption.test.d.ts +0 -2
- package/out/src/__tests/WalletPermissionsManager.encryption.test.d.ts.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.encryption.test.js +0 -335
- package/out/src/__tests/WalletPermissionsManager.encryption.test.js.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.fixtures.d.ts +0 -86
- package/out/src/__tests/WalletPermissionsManager.fixtures.d.ts.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.fixtures.js +0 -280
- package/out/src/__tests/WalletPermissionsManager.fixtures.js.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.flows.test.d.ts +0 -2
- package/out/src/__tests/WalletPermissionsManager.flows.test.d.ts.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.flows.test.js +0 -613
- package/out/src/__tests/WalletPermissionsManager.flows.test.js.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.initialization.test.d.ts +0 -2
- package/out/src/__tests/WalletPermissionsManager.initialization.test.d.ts.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.initialization.test.js +0 -227
- package/out/src/__tests/WalletPermissionsManager.initialization.test.js.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.pmodules.test.d.ts +0 -2
- package/out/src/__tests/WalletPermissionsManager.pmodules.test.d.ts.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.pmodules.test.js +0 -735
- package/out/src/__tests/WalletPermissionsManager.pmodules.test.js.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.proxying.test.d.ts +0 -2
- package/out/src/__tests/WalletPermissionsManager.proxying.test.d.ts.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.proxying.test.js +0 -585
- package/out/src/__tests/WalletPermissionsManager.proxying.test.js.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.tokens.test.d.ts +0 -2
- package/out/src/__tests/WalletPermissionsManager.tokens.test.d.ts.map +0 -1
- package/out/src/__tests/WalletPermissionsManager.tokens.test.js +0 -416
- package/out/src/__tests/WalletPermissionsManager.tokens.test.js.map +0 -1
- package/out/src/entropy/__tests/EntropyCollector.test.d.ts +0 -2
- package/out/src/entropy/__tests/EntropyCollector.test.d.ts.map +0 -1
- package/out/src/entropy/__tests/EntropyCollector.test.js +0 -137
- package/out/src/entropy/__tests/EntropyCollector.test.js.map +0 -1
- package/out/src/monitor/__test/MonitorDaemon.man.test.d.ts +0 -2
- package/out/src/monitor/__test/MonitorDaemon.man.test.d.ts.map +0 -1
- package/out/src/monitor/__test/MonitorDaemon.man.test.js +0 -41
- package/out/src/monitor/__test/MonitorDaemon.man.test.js.map +0 -1
- package/out/src/monitor/tasks/__tests/TaskArcSSE.test.d.ts +0 -2
- package/out/src/monitor/tasks/__tests/TaskArcSSE.test.d.ts.map +0 -1
- package/out/src/monitor/tasks/__tests/TaskArcSSE.test.js +0 -257
- package/out/src/monitor/tasks/__tests/TaskArcSSE.test.js.map +0 -1
- package/out/src/monitor/tasks/__tests/TaskReviewDoubleSpends.test.d.ts +0 -2
- package/out/src/monitor/tasks/__tests/TaskReviewDoubleSpends.test.d.ts.map +0 -1
- package/out/src/monitor/tasks/__tests/TaskReviewDoubleSpends.test.js +0 -161
- package/out/src/monitor/tasks/__tests/TaskReviewDoubleSpends.test.js.map +0 -1
- package/out/src/monitor/tasks/__tests/TaskReviewProvenTxs.test.d.ts +0 -2
- package/out/src/monitor/tasks/__tests/TaskReviewProvenTxs.test.d.ts.map +0 -1
- package/out/src/monitor/tasks/__tests/TaskReviewProvenTxs.test.js +0 -214
- package/out/src/monitor/tasks/__tests/TaskReviewProvenTxs.test.js.map +0 -1
- package/out/src/monitor/tasks/__tests/TaskReviewUtxos.test.d.ts +0 -2
- package/out/src/monitor/tasks/__tests/TaskReviewUtxos.test.d.ts.map +0 -1
- package/out/src/monitor/tasks/__tests/TaskReviewUtxos.test.js +0 -92
- package/out/src/monitor/tasks/__tests/TaskReviewUtxos.test.js.map +0 -1
- package/out/src/monitor/tasks/__tests/TaskSendWaiting.test.d.ts +0 -2
- package/out/src/monitor/tasks/__tests/TaskSendWaiting.test.d.ts.map +0 -1
- package/out/src/monitor/tasks/__tests/TaskSendWaiting.test.js +0 -139
- package/out/src/monitor/tasks/__tests/TaskSendWaiting.test.js.map +0 -1
- package/out/src/sdk/__test/CertificateLifeCycle.test.d.ts +0 -2
- package/out/src/sdk/__test/CertificateLifeCycle.test.d.ts.map +0 -1
- package/out/src/sdk/__test/CertificateLifeCycle.test.js +0 -62
- package/out/src/sdk/__test/CertificateLifeCycle.test.js.map +0 -1
- package/out/src/sdk/__test/PrivilegedKeyManager.test.d.ts +0 -2
- package/out/src/sdk/__test/PrivilegedKeyManager.test.d.ts.map +0 -1
- package/out/src/sdk/__test/PrivilegedKeyManager.test.js +0 -647
- package/out/src/sdk/__test/PrivilegedKeyManager.test.js.map +0 -1
- package/out/src/sdk/__test/WalletError.test.d.ts +0 -2
- package/out/src/sdk/__test/WalletError.test.d.ts.map +0 -1
- package/out/src/sdk/__test/WalletError.test.js +0 -255
- package/out/src/sdk/__test/WalletError.test.js.map +0 -1
- package/out/src/sdk/__test/validationHelpers.test.d.ts +0 -2
- package/out/src/sdk/__test/validationHelpers.test.d.ts.map +0 -1
- package/out/src/sdk/__test/validationHelpers.test.js +0 -20
- package/out/src/sdk/__test/validationHelpers.test.js.map +0 -1
- package/out/src/services/__tests/ARC.man.test.d.ts +0 -2
- package/out/src/services/__tests/ARC.man.test.d.ts.map +0 -1
- package/out/src/services/__tests/ARC.man.test.js +0 -104
- package/out/src/services/__tests/ARC.man.test.js.map +0 -1
- package/out/src/services/__tests/ARC.timeout.man.test.d.ts +0 -2
- package/out/src/services/__tests/ARC.timeout.man.test.d.ts.map +0 -1
- package/out/src/services/__tests/ARC.timeout.man.test.js +0 -74
- package/out/src/services/__tests/ARC.timeout.man.test.js.map +0 -1
- package/out/src/services/__tests/ArcGorillaPool.man.test.d.ts +0 -2
- package/out/src/services/__tests/ArcGorillaPool.man.test.d.ts.map +0 -1
- package/out/src/services/__tests/ArcGorillaPool.man.test.js +0 -93
- package/out/src/services/__tests/ArcGorillaPool.man.test.js.map +0 -1
- package/out/src/services/__tests/arcServices.test.d.ts +0 -2
- package/out/src/services/__tests/arcServices.test.d.ts.map +0 -1
- package/out/src/services/__tests/arcServices.test.js +0 -7
- package/out/src/services/__tests/arcServices.test.js.map +0 -1
- package/out/src/services/__tests/bitrails.test.d.ts +0 -2
- package/out/src/services/__tests/bitrails.test.d.ts.map +0 -1
- package/out/src/services/__tests/bitrails.test.js +0 -60
- package/out/src/services/__tests/bitrails.test.js.map +0 -1
- package/out/src/services/__tests/getFiatExchangeRate.test.d.ts +0 -2
- package/out/src/services/__tests/getFiatExchangeRate.test.d.ts.map +0 -1
- package/out/src/services/__tests/getFiatExchangeRate.test.js +0 -156
- package/out/src/services/__tests/getFiatExchangeRate.test.js.map +0 -1
- package/out/src/services/__tests/getMerklePath.test.d.ts +0 -2
- package/out/src/services/__tests/getMerklePath.test.d.ts.map +0 -1
- package/out/src/services/__tests/getMerklePath.test.js +0 -16
- package/out/src/services/__tests/getMerklePath.test.js.map +0 -1
- package/out/src/services/__tests/getRawTx.test.d.ts +0 -2
- package/out/src/services/__tests/getRawTx.test.d.ts.map +0 -1
- package/out/src/services/__tests/getRawTx.test.js +0 -16
- package/out/src/services/__tests/getRawTx.test.js.map +0 -1
- package/out/src/services/__tests/postBeef.test.d.ts +0 -2
- package/out/src/services/__tests/postBeef.test.d.ts.map +0 -1
- package/out/src/services/__tests/postBeef.test.js +0 -101
- package/out/src/services/__tests/postBeef.test.js.map +0 -1
- package/out/src/services/__tests/verifyBeef.test.d.ts +0 -2
- package/out/src/services/__tests/verifyBeef.test.d.ts.map +0 -1
- package/out/src/services/__tests/verifyBeef.test.js +0 -43
- package/out/src/services/__tests/verifyBeef.test.js.map +0 -1
- package/out/src/services/chaintracker/__tests/ChaintracksChainTracker.test.d.ts +0 -2
- package/out/src/services/chaintracker/__tests/ChaintracksChainTracker.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/__tests/ChaintracksChainTracker.test.js +0 -25
- package/out/src/services/chaintracker/__tests/ChaintracksChainTracker.test.js.map +0 -1
- package/out/src/services/chaintracker/__tests/ChaintracksServiceClient.test.d.ts +0 -2
- package/out/src/services/chaintracker/__tests/ChaintracksServiceClient.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/__tests/ChaintracksServiceClient.test.js +0 -27
- package/out/src/services/chaintracker/__tests/ChaintracksServiceClient.test.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.d.ts +0 -2
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.js +0 -57
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/BulkIngestorCDNBabbage.test.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/LiveIngestorWhatsOnChainPoll.test.d.ts +0 -2
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/LiveIngestorWhatsOnChainPoll.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/LiveIngestorWhatsOnChainPoll.test.js +0 -41
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/LiveIngestorWhatsOnChainPoll.test.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.man.test.d.ts +0 -2
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.man.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.man.test.js +0 -109
- package/out/src/services/chaintracker/chaintracks/Ingest/__tests/WhatsOnChainServices.man.test.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.d.ts +0 -2
- package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.js +0 -88
- package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageIdb.test.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageKnex.test.d.ts +0 -2
- package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageKnex.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageKnex.test.js +0 -39
- package/out/src/services/chaintracker/chaintracks/Storage/__tests/ChaintracksStorageKnex.test.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.d.ts +0 -2
- package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js +0 -76
- package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksCDN.man.test.d.ts +0 -2
- package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksCDN.man.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksCDN.man.test.js +0 -44
- package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksCDN.man.test.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksClientApi.test.d.ts +0 -2
- package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksClientApi.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksClientApi.test.js +0 -165
- package/out/src/services/chaintracker/chaintracks/__tests/ChaintracksClientApi.test.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/__tests/LocalCdnServer.d.ts +0 -12
- package/out/src/services/chaintracker/chaintracks/__tests/LocalCdnServer.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/__tests/LocalCdnServer.js +0 -66
- package/out/src/services/chaintracker/chaintracks/__tests/LocalCdnServer.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/__tests/bulkIngestorFailures.test.d.ts +0 -2
- package/out/src/services/chaintracker/chaintracks/__tests/bulkIngestorFailures.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/__tests/bulkIngestorFailures.test.js +0 -109
- package/out/src/services/chaintracker/chaintracks/__tests/bulkIngestorFailures.test.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.d.ts +0 -2
- package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.js +0 -55
- package/out/src/services/chaintracker/chaintracks/__tests/createIdbChaintracks.test.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/util/__tests/BulkFileDataManager.test.d.ts +0 -2
- package/out/src/services/chaintracker/chaintracks/util/__tests/BulkFileDataManager.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/util/__tests/BulkFileDataManager.test.js +0 -255
- package/out/src/services/chaintracker/chaintracks/util/__tests/BulkFileDataManager.test.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/util/__tests/ChaintracksFetch.test.d.ts +0 -2
- package/out/src/services/chaintracker/chaintracks/util/__tests/ChaintracksFetch.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/util/__tests/ChaintracksFetch.test.js +0 -56
- package/out/src/services/chaintracker/chaintracks/util/__tests/ChaintracksFetch.test.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/util/__tests/HeightRange.test.d.ts +0 -2
- package/out/src/services/chaintracker/chaintracks/util/__tests/HeightRange.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/util/__tests/HeightRange.test.js +0 -69
- package/out/src/services/chaintracker/chaintracks/util/__tests/HeightRange.test.js.map +0 -1
- package/out/src/services/chaintracker/chaintracks/util/__tests/SingleWriterMultiReaderLock.test.d.ts +0 -2
- package/out/src/services/chaintracker/chaintracks/util/__tests/SingleWriterMultiReaderLock.test.d.ts.map +0 -1
- package/out/src/services/chaintracker/chaintracks/util/__tests/SingleWriterMultiReaderLock.test.js +0 -51
- package/out/src/services/chaintracker/chaintracks/util/__tests/SingleWriterMultiReaderLock.test.js.map +0 -1
- package/out/src/services/providers/__tests/ArcSSEClient.test.d.ts +0 -2
- package/out/src/services/providers/__tests/ArcSSEClient.test.d.ts.map +0 -1
- package/out/src/services/providers/__tests/ArcSSEClient.test.js +0 -256
- package/out/src/services/providers/__tests/ArcSSEClient.test.js.map +0 -1
- package/out/src/services/providers/__tests/WhatsOnChain.test.d.ts +0 -2
- package/out/src/services/providers/__tests/WhatsOnChain.test.d.ts.map +0 -1
- package/out/src/services/providers/__tests/WhatsOnChain.test.js +0 -191
- package/out/src/services/providers/__tests/WhatsOnChain.test.js.map +0 -1
- package/out/src/services/providers/__tests/exchangeRates.test.d.ts +0 -2
- package/out/src/services/providers/__tests/exchangeRates.test.d.ts.map +0 -1
- package/out/src/services/providers/__tests/exchangeRates.test.js +0 -23
- package/out/src/services/providers/__tests/exchangeRates.test.js.map +0 -1
- package/out/src/storage/__test/StorageIdb.test.d.ts +0 -2
- package/out/src/storage/__test/StorageIdb.test.d.ts.map +0 -1
- package/out/src/storage/__test/StorageIdb.test.js +0 -44
- package/out/src/storage/__test/StorageIdb.test.js.map +0 -1
- package/out/src/storage/__test/WalletStorageManager.test.d.ts +0 -2
- package/out/src/storage/__test/WalletStorageManager.test.d.ts.map +0 -1
- package/out/src/storage/__test/WalletStorageManager.test.js +0 -254
- package/out/src/storage/__test/WalletStorageManager.test.js.map +0 -1
- package/out/src/storage/__test/adminStats.man.test.d.ts +0 -2
- package/out/src/storage/__test/adminStats.man.test.d.ts.map +0 -1
- package/out/src/storage/__test/adminStats.man.test.js +0 -78
- package/out/src/storage/__test/adminStats.man.test.js.map +0 -1
- package/out/src/storage/__test/findStaleMerkleRoots.test.d.ts +0 -2
- package/out/src/storage/__test/findStaleMerkleRoots.test.d.ts.map +0 -1
- package/out/src/storage/__test/findStaleMerkleRoots.test.js +0 -41
- package/out/src/storage/__test/findStaleMerkleRoots.test.js.map +0 -1
- package/out/src/storage/__test/findStaleMerkleRootsKnex.test.d.ts +0 -2
- package/out/src/storage/__test/findStaleMerkleRootsKnex.test.d.ts.map +0 -1
- package/out/src/storage/__test/findStaleMerkleRootsKnex.test.js +0 -73
- package/out/src/storage/__test/findStaleMerkleRootsKnex.test.js.map +0 -1
- package/out/src/storage/__test/getBeefForTransaction.test.d.ts +0 -2
- package/out/src/storage/__test/getBeefForTransaction.test.d.ts.map +0 -1
- package/out/src/storage/__test/getBeefForTransaction.test.js +0 -347
- package/out/src/storage/__test/getBeefForTransaction.test.js.map +0 -1
- package/out/src/storage/methods/__test/GenerateChange/generateChangeSdk.test.d.ts +0 -2
- package/out/src/storage/methods/__test/GenerateChange/generateChangeSdk.test.d.ts.map +0 -1
- package/out/src/storage/methods/__test/GenerateChange/generateChangeSdk.test.js +0 -1111
- package/out/src/storage/methods/__test/GenerateChange/generateChangeSdk.test.js.map +0 -1
- package/out/src/storage/methods/__test/offsetKey.test.d.ts +0 -2
- package/out/src/storage/methods/__test/offsetKey.test.d.ts.map +0 -1
- package/out/src/storage/methods/__test/offsetKey.test.js +0 -229
- package/out/src/storage/methods/__test/offsetKey.test.js.map +0 -1
- package/out/src/storage/remoting/__test/StorageClient.man.test.d.ts +0 -2
- package/out/src/storage/remoting/__test/StorageClient.man.test.d.ts.map +0 -1
- package/out/src/storage/remoting/__test/StorageClient.man.test.js +0 -487
- package/out/src/storage/remoting/__test/StorageClient.man.test.js.map +0 -1
- package/out/src/storage/remoting/__test/StorageClient.test.d.ts +0 -2
- package/out/src/storage/remoting/__test/StorageClient.test.d.ts.map +0 -1
- package/out/src/storage/remoting/__test/StorageClient.test.js +0 -119
- package/out/src/storage/remoting/__test/StorageClient.test.js.map +0 -1
- package/out/src/storage/remoting/__tests__/entityValidationHelpers.test.d.ts +0 -2
- package/out/src/storage/remoting/__tests__/entityValidationHelpers.test.d.ts.map +0 -1
- package/out/src/storage/remoting/__tests__/entityValidationHelpers.test.js +0 -268
- package/out/src/storage/remoting/__tests__/entityValidationHelpers.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/CertificateFieldTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/CertificateFieldTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/CertificateFieldTests.test.js +0 -301
- package/out/src/storage/schema/entities/__tests/CertificateFieldTests.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/CertificateTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/CertificateTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/CertificateTests.test.js +0 -308
- package/out/src/storage/schema/entities/__tests/CertificateTests.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/CommissionTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/CommissionTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/CommissionTests.test.js +0 -316
- package/out/src/storage/schema/entities/__tests/CommissionTests.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/OutputBasketTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/OutputBasketTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/OutputBasketTests.test.js +0 -228
- package/out/src/storage/schema/entities/__tests/OutputBasketTests.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/OutputTagMapTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/OutputTagMapTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/OutputTagMapTests.test.js +0 -191
- package/out/src/storage/schema/entities/__tests/OutputTagMapTests.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/OutputTagTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/OutputTagTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/OutputTagTests.test.js +0 -226
- package/out/src/storage/schema/entities/__tests/OutputTagTests.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/OutputTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/OutputTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/OutputTests.test.js +0 -413
- package/out/src/storage/schema/entities/__tests/OutputTests.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/ProvenTxReqTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/ProvenTxReqTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/ProvenTxReqTests.test.js +0 -331
- package/out/src/storage/schema/entities/__tests/ProvenTxReqTests.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.js +0 -474
- package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/SyncStateTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/SyncStateTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/SyncStateTests.test.js +0 -234
- package/out/src/storage/schema/entities/__tests/SyncStateTests.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/TransactionTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/TransactionTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/TransactionTests.test.js +0 -539
- package/out/src/storage/schema/entities/__tests/TransactionTests.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/TxLabelMapTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/TxLabelMapTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/TxLabelMapTests.test.js +0 -304
- package/out/src/storage/schema/entities/__tests/TxLabelMapTests.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/TxLabelTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/TxLabelTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/TxLabelTests.test.js +0 -170
- package/out/src/storage/schema/entities/__tests/TxLabelTests.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/stampLogTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/stampLogTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/stampLogTests.test.js +0 -81
- package/out/src/storage/schema/entities/__tests/stampLogTests.test.js.map +0 -1
- package/out/src/storage/schema/entities/__tests/usersTests.test.d.ts +0 -2
- package/out/src/storage/schema/entities/__tests/usersTests.test.d.ts.map +0 -1
- package/out/src/storage/schema/entities/__tests/usersTests.test.js +0 -277
- package/out/src/storage/schema/entities/__tests/usersTests.test.js.map +0 -1
- package/out/src/utility/__tests/utilityHelpers.noBuffer.test.d.ts +0 -2
- package/out/src/utility/__tests/utilityHelpers.noBuffer.test.d.ts.map +0 -1
- package/out/src/utility/__tests/utilityHelpers.noBuffer.test.js +0 -107
- package/out/src/utility/__tests/utilityHelpers.noBuffer.test.js.map +0 -1
- package/out/src/wab-client/__tests/WABClient.man.test.d.ts +0 -2
- package/out/src/wab-client/__tests/WABClient.man.test.d.ts.map +0 -1
- package/out/src/wab-client/__tests/WABClient.man.test.js +0 -52
- package/out/src/wab-client/__tests/WABClient.man.test.js.map +0 -1
|
@@ -96,7 +96,6 @@ function removeDustOutputs(changeOutputs, dustFloor) {
|
|
|
96
96
|
* @returns
|
|
97
97
|
*/
|
|
98
98
|
async function generateChangeSdk(params, allocateChangeInput, releaseChangeInput, logger) {
|
|
99
|
-
var _a;
|
|
100
99
|
if (params.noLogging === false)
|
|
101
100
|
logGenerateChangeSdkParams(params);
|
|
102
101
|
const r = {
|
|
@@ -128,7 +127,7 @@ async function generateChangeSdk(params, allocateChangeInput, releaseChangeInput
|
|
|
128
127
|
* Applies the per-transaction limit so that the UTXO pool grows
|
|
129
128
|
* gradually rather than all at once.
|
|
130
129
|
*/
|
|
131
|
-
const maxChangeOutputs =
|
|
130
|
+
const maxChangeOutputs = params.maxChangeOutputs ?? exports.maxChangeOutputsPerTransaction;
|
|
132
131
|
const randomVals = [...(params.randomVals || [])];
|
|
133
132
|
const nextRandomVal = () => {
|
|
134
133
|
let val = 0;
|
|
@@ -330,7 +329,7 @@ async function generateChangeSdk(params, allocateChangeInput, releaseChangeInput
|
|
|
330
329
|
*/
|
|
331
330
|
if (feeExcess() < 0) {
|
|
332
331
|
const werr = new WERR_errors_1.WERR_INSUFFICIENT_FUNDS(spending() + feeTarget(), -feeExcessNow);
|
|
333
|
-
logger
|
|
332
|
+
logger?.error(`throwing WERR_INSUFFICIENT_FUNDS moreSatoshisNeeded ${werr.moreSatoshisNeeded}`);
|
|
334
333
|
await releaseAllocatedChangeInputs();
|
|
335
334
|
throw werr;
|
|
336
335
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generateChange.js","sourceRoot":"","sources":["../../../../src/storage/methods/generateChange.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"generateChange.js","sourceRoot":"","sources":["../../../../src/storage/methods/generateChange.ts"],"names":[],"mappings":"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"}
|
|
@@ -37,20 +37,18 @@ async function getBeefForTransaction(storage, txid, options) {
|
|
|
37
37
|
* @returns rawTx if txid known to network, if merkle proof available then also proven result is valid.
|
|
38
38
|
*/
|
|
39
39
|
async function getProvenOrRawTxFromServices(storage, txid, options) {
|
|
40
|
-
var _a;
|
|
41
40
|
const por = await EntityProvenTx_1.EntityProvenTx.fromTxid(txid, storage.getServices());
|
|
42
41
|
if ((por.proven != null) && !options.ignoreStorage && !options.ignoreNewProven) {
|
|
43
42
|
por.proven.provenTxId = await storage.insertProvenTx(por.proven.toApi());
|
|
44
43
|
}
|
|
45
|
-
return { proven:
|
|
44
|
+
return { proven: por.proven?.toApi(), rawTx: por.rawTx };
|
|
46
45
|
}
|
|
47
46
|
async function mergeBeefForTransactionRecurse(beef, storage, txid, options, recursionDepth) {
|
|
48
|
-
var _a;
|
|
49
47
|
const maxDepth = storage.maxRecursionDepth;
|
|
50
48
|
if (maxDepth && maxDepth <= recursionDepth) {
|
|
51
49
|
throw new WERR_errors_1.WERR_INVALID_OPERATION(`Maximum BEEF depth exceeded. Limit is ${storage.maxRecursionDepth}`);
|
|
52
50
|
}
|
|
53
|
-
if (
|
|
51
|
+
if (options.knownTxids?.includes(txid)) {
|
|
54
52
|
// This txid is one of the txids the caller claims to already know are valid...
|
|
55
53
|
beef.mergeTxidOnly(txid);
|
|
56
54
|
return beef;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getBeefForTransaction.js","sourceRoot":"","sources":["../../../../src/storage/methods/getBeefForTransaction.ts"],"names":[],"mappings":";;AAyBA,sDAeC;AAxCD,kCAA+B;AAG/B,sEAAkE;AAClE,uDAAgH;AAChH,iEAAuE;AAEvE;;;;;;;;;;;;;;;;;GAiBG;AACI,KAAK,UAAU,qBAAqB,CACzC,OAAwB,EACxB,IAAY,EACZ,OAA8B;IAE9B,MAAM,IAAI;IACR,4CAA4C;IAC5C,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC;QAChC,CAAC,CAAC,UAAI,CAAC,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC;QACtC,CAAC,CAAC,2CAA2C;YAC3C,OAAO,CAAC,WAAW,IAAI,IAAI,UAAI,EAAE,CAAA;IAEvC,MAAM,8BAA8B,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;IAErE,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,4BAA4B,CACzC,OAAwB,EACxB,IAAY,EACZ,OAA8B
|
|
1
|
+
{"version":3,"file":"getBeefForTransaction.js","sourceRoot":"","sources":["../../../../src/storage/methods/getBeefForTransaction.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,63 @@
|
|
|
1
|
-
import { InternalizeActionArgs } from '@bsv/sdk';
|
|
1
|
+
import { Transaction as BsvTransaction, InternalizeActionArgs } from '@bsv/sdk';
|
|
2
2
|
import { StorageProvider } from '../StorageProvider';
|
|
3
3
|
import { AuthId, StorageInternalizeActionResult } from '../../sdk/WalletStorage.interfaces';
|
|
4
|
+
/**
|
|
5
|
+
* Record of a spent-input transition this internalize call performed.
|
|
6
|
+
* Carries enough state to roll back the exact change via
|
|
7
|
+
* {@link restoreInputsToSpendable}: which row, and whether we touched
|
|
8
|
+
* `spentBy` (only true for rows owned by the internalizing user).
|
|
9
|
+
*/
|
|
10
|
+
export interface SpentInputTransition {
|
|
11
|
+
outputId: number;
|
|
12
|
+
/** true if the call set spentBy; false if only spendable was flipped. */
|
|
13
|
+
setSpentBy: boolean;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Mark every storage row at each consumed-input outpoint as spent — across
|
|
17
|
+
* all users that track that outpoint. An on-chain spend invalidates the UTXO
|
|
18
|
+
* for every wallet that references it, not just the wallet that called
|
|
19
|
+
* `internalizeAction`. Returns the per-row transitions so the caller can
|
|
20
|
+
* roll back via {@link restoreInputsToSpendable} on broadcast failure.
|
|
21
|
+
*
|
|
22
|
+
* Cross-user semantics:
|
|
23
|
+
* - For rows owned by `userId` (the internalizing user) we also set
|
|
24
|
+
* `spentBy=transactionId`. They own the corresponding transaction
|
|
25
|
+
* record; the FK target exists in their scope.
|
|
26
|
+
* - For rows owned by other users we set `spendable=false` and leave
|
|
27
|
+
* `spentBy` untouched. `spentBy` references the owning user's
|
|
28
|
+
* `transactions.transactionId`, and that user has no record of our
|
|
29
|
+
* transaction yet — they'd need to internalize it themselves to get
|
|
30
|
+
* one. Leaving `spentBy` undefined keeps the field consistent with
|
|
31
|
+
* "this UTXO is spent, but my wallet didn't witness the spend".
|
|
32
|
+
*
|
|
33
|
+
* Mirrors what `createAction` does for wallet-originated transactions and
|
|
34
|
+
* what `TaskUnFail.unfailReq` does when reviving a previously-failed tx.
|
|
35
|
+
* Without this, an externally-broadcast tx that consumed user UTXOs would
|
|
36
|
+
* leave those UTXOs as phantom spendable rows, picked up by subsequent
|
|
37
|
+
* `createAction` fund selection.
|
|
38
|
+
*
|
|
39
|
+
* Idempotent: rows already `spendable=false` are skipped. Rows already
|
|
40
|
+
* `spentBy` a different transaction are also skipped (a competing spend
|
|
41
|
+
* has been recorded; do not overwrite).
|
|
42
|
+
*/
|
|
43
|
+
export declare function markUserInputsSpent(storage: StorageProvider, userId: number, tx: BsvTransaction, transactionId: number): Promise<SpentInputTransition[]>;
|
|
44
|
+
/**
|
|
45
|
+
* Revert the spendable=true → false transitions performed by
|
|
46
|
+
* {@link markUserInputsSpent}. Used when an internalize call's downstream
|
|
47
|
+
* broadcast fails non-fatally so the caller can retry with the same UTXOs.
|
|
48
|
+
*
|
|
49
|
+
* Only undoes what was changed: `spendable=true` always; `spentBy=undefined`
|
|
50
|
+
* only when the original transition set it. Avoids clobbering a competing
|
|
51
|
+
* spent-by on cross-user rows.
|
|
52
|
+
*
|
|
53
|
+
* The downstream `attemptToPostReqsToNetwork` path also calls
|
|
54
|
+
* `updateTransactionStatus('failed')` on doubleSpend/invalidTx outcomes,
|
|
55
|
+
* which independently restores same-user inputs (via
|
|
56
|
+
* `EntityTransaction.getInputs` filtered by userId). This explicit rollback
|
|
57
|
+
* covers cross-user rows and any path where the downstream restore did not
|
|
58
|
+
* run, and is a no-op when the downstream restore already happened.
|
|
59
|
+
*/
|
|
60
|
+
export declare function restoreInputsToSpendable(storage: StorageProvider, transitions: SpentInputTransition[]): Promise<void>;
|
|
4
61
|
/**
|
|
5
62
|
* Internalize Action allows a wallet to take ownership of outputs in a pre-existing transaction.
|
|
6
63
|
* The transaction may, or may not already be known to both the storage and user.
|
|
@@ -14,7 +71,17 @@ import { AuthId, StorageInternalizeActionResult } from '../../sdk/WalletStorage.
|
|
|
14
71
|
* Processing starts with simple validation and then checks for a pre-existing transaction.
|
|
15
72
|
* If the transaction is already known to the user, then the outputs are reviewed against the existing outputs treatment,
|
|
16
73
|
* and merge rules are added to the arguments passed to the storage layer.
|
|
17
|
-
*
|
|
74
|
+
*
|
|
75
|
+
* The existing transaction's `status` determines what the merge path does next:
|
|
76
|
+
* - `'unproven'` or `'completed'`: outputs are merged into the existing record. The transaction status is left as-is.
|
|
77
|
+
* - `'nosend'`: an ambiguous case. The transaction was created with `noSend: true` and may have been externally
|
|
78
|
+
* broadcast, may be sitting in a sendWith chain, or may be stuck mid-flight. The merge path treats the
|
|
79
|
+
* `internalizeAction` call as explicit authorization to advance the lifecycle. Specifically: `transactions.status`
|
|
80
|
+
* is promoted to `'completed'` (when a BUMP is included in the BEEF) or `'unproven'` (otherwise), and the
|
|
81
|
+
* `proven_tx_req` is moved out of `'nosend'` so Monitor's standard proof-fetching flow can finalize it.
|
|
82
|
+
* This makes the `internalizeAction` semantics consistent regardless of whether the originator shares the
|
|
83
|
+
* same storage as the internalizer or not.
|
|
84
|
+
* - Any other status: an error.
|
|
18
85
|
*
|
|
19
86
|
* When the transaction already exists, the description is updated. The isOutgoing sense is not changed.
|
|
20
87
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internalizeAction.d.ts","sourceRoot":"","sources":["../../../../src/storage/methods/internalizeAction.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"internalizeAction.d.ts","sourceRoot":"","sources":["../../../../src/storage/methods/internalizeAction.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,IAAI,cAAc,EAG7B,qBAAqB,EAOtB,MAAM,UAAU,CAAA;AAEjB,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,MAAM,EAAE,8BAA8B,EAAsB,MAAM,oCAAoC,CAAA;AAW/G;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAA;IAChB,yEAAyE;IACzE,UAAU,EAAE,OAAO,CAAA;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,eAAe,EACxB,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,cAAc,EAClB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,oBAAoB,EAAE,CAAC,CA0BjC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,eAAe,EACxB,WAAW,EAAE,oBAAoB,EAAE,GAClC,OAAO,CAAC,IAAI,CAAC,CAUf;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,qBAAqB,GAC1B,OAAO,CAAC,8BAA8B,CAAC,CAQzC"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.markUserInputsSpent = markUserInputsSpent;
|
|
4
|
+
exports.restoreInputsToSpendable = restoreInputsToSpendable;
|
|
3
5
|
exports.internalizeAction = internalizeAction;
|
|
4
6
|
const sdk_1 = require("@bsv/sdk");
|
|
5
7
|
const processAction_1 = require("./processAction");
|
|
@@ -7,6 +9,92 @@ const WERR_errors_1 = require("../../sdk/WERR_errors");
|
|
|
7
9
|
const utilityHelpers_1 = require("../../utility/utilityHelpers");
|
|
8
10
|
const EntityProvenTxReq_1 = require("../schema/entities/EntityProvenTxReq");
|
|
9
11
|
const blockHeaderUtilities_1 = require("../../services/chaintracker/chaintracks/util/blockHeaderUtilities");
|
|
12
|
+
/**
|
|
13
|
+
* Mark every storage row at each consumed-input outpoint as spent — across
|
|
14
|
+
* all users that track that outpoint. An on-chain spend invalidates the UTXO
|
|
15
|
+
* for every wallet that references it, not just the wallet that called
|
|
16
|
+
* `internalizeAction`. Returns the per-row transitions so the caller can
|
|
17
|
+
* roll back via {@link restoreInputsToSpendable} on broadcast failure.
|
|
18
|
+
*
|
|
19
|
+
* Cross-user semantics:
|
|
20
|
+
* - For rows owned by `userId` (the internalizing user) we also set
|
|
21
|
+
* `spentBy=transactionId`. They own the corresponding transaction
|
|
22
|
+
* record; the FK target exists in their scope.
|
|
23
|
+
* - For rows owned by other users we set `spendable=false` and leave
|
|
24
|
+
* `spentBy` untouched. `spentBy` references the owning user's
|
|
25
|
+
* `transactions.transactionId`, and that user has no record of our
|
|
26
|
+
* transaction yet — they'd need to internalize it themselves to get
|
|
27
|
+
* one. Leaving `spentBy` undefined keeps the field consistent with
|
|
28
|
+
* "this UTXO is spent, but my wallet didn't witness the spend".
|
|
29
|
+
*
|
|
30
|
+
* Mirrors what `createAction` does for wallet-originated transactions and
|
|
31
|
+
* what `TaskUnFail.unfailReq` does when reviving a previously-failed tx.
|
|
32
|
+
* Without this, an externally-broadcast tx that consumed user UTXOs would
|
|
33
|
+
* leave those UTXOs as phantom spendable rows, picked up by subsequent
|
|
34
|
+
* `createAction` fund selection.
|
|
35
|
+
*
|
|
36
|
+
* Idempotent: rows already `spendable=false` are skipped. Rows already
|
|
37
|
+
* `spentBy` a different transaction are also skipped (a competing spend
|
|
38
|
+
* has been recorded; do not overwrite).
|
|
39
|
+
*/
|
|
40
|
+
async function markUserInputsSpent(storage, userId, tx, transactionId) {
|
|
41
|
+
const outpoints = tx.inputs
|
|
42
|
+
.map(i => ({ txid: i.sourceTXID ?? '', vout: i.sourceOutputIndex ?? 0 }))
|
|
43
|
+
.filter(o => o.txid !== '');
|
|
44
|
+
if (outpoints.length === 0)
|
|
45
|
+
return [];
|
|
46
|
+
const transitioned = [];
|
|
47
|
+
await storage.transaction(async (trx) => {
|
|
48
|
+
for (const op of outpoints) {
|
|
49
|
+
const matches = await storage.findOutputs({
|
|
50
|
+
partial: { txid: op.txid, vout: op.vout },
|
|
51
|
+
noScript: true,
|
|
52
|
+
trx
|
|
53
|
+
});
|
|
54
|
+
for (const o of matches) {
|
|
55
|
+
if (!o.spendable)
|
|
56
|
+
continue;
|
|
57
|
+
if (o.spentBy != null && o.spentBy !== transactionId)
|
|
58
|
+
continue;
|
|
59
|
+
const setSpentBy = o.userId === userId;
|
|
60
|
+
const update = setSpentBy
|
|
61
|
+
? { spendable: false, spentBy: transactionId }
|
|
62
|
+
: { spendable: false };
|
|
63
|
+
await storage.updateOutput((0, utilityHelpers_1.verifyId)(o.outputId), update, trx);
|
|
64
|
+
transitioned.push({ outputId: (0, utilityHelpers_1.verifyId)(o.outputId), setSpentBy });
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
});
|
|
68
|
+
return transitioned;
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Revert the spendable=true → false transitions performed by
|
|
72
|
+
* {@link markUserInputsSpent}. Used when an internalize call's downstream
|
|
73
|
+
* broadcast fails non-fatally so the caller can retry with the same UTXOs.
|
|
74
|
+
*
|
|
75
|
+
* Only undoes what was changed: `spendable=true` always; `spentBy=undefined`
|
|
76
|
+
* only when the original transition set it. Avoids clobbering a competing
|
|
77
|
+
* spent-by on cross-user rows.
|
|
78
|
+
*
|
|
79
|
+
* The downstream `attemptToPostReqsToNetwork` path also calls
|
|
80
|
+
* `updateTransactionStatus('failed')` on doubleSpend/invalidTx outcomes,
|
|
81
|
+
* which independently restores same-user inputs (via
|
|
82
|
+
* `EntityTransaction.getInputs` filtered by userId). This explicit rollback
|
|
83
|
+
* covers cross-user rows and any path where the downstream restore did not
|
|
84
|
+
* run, and is a no-op when the downstream restore already happened.
|
|
85
|
+
*/
|
|
86
|
+
async function restoreInputsToSpendable(storage, transitions) {
|
|
87
|
+
if (transitions.length === 0)
|
|
88
|
+
return;
|
|
89
|
+
await storage.transaction(async (trx) => {
|
|
90
|
+
for (const t of transitions) {
|
|
91
|
+
const update = t.setSpentBy
|
|
92
|
+
? { spendable: true, spentBy: undefined }
|
|
93
|
+
: { spendable: true };
|
|
94
|
+
await storage.updateOutput((0, utilityHelpers_1.verifyId)(t.outputId), update, trx);
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
}
|
|
10
98
|
/**
|
|
11
99
|
* Internalize Action allows a wallet to take ownership of outputs in a pre-existing transaction.
|
|
12
100
|
* The transaction may, or may not already be known to both the storage and user.
|
|
@@ -20,7 +108,17 @@ const blockHeaderUtilities_1 = require("../../services/chaintracker/chaintracks/
|
|
|
20
108
|
* Processing starts with simple validation and then checks for a pre-existing transaction.
|
|
21
109
|
* If the transaction is already known to the user, then the outputs are reviewed against the existing outputs treatment,
|
|
22
110
|
* and merge rules are added to the arguments passed to the storage layer.
|
|
23
|
-
*
|
|
111
|
+
*
|
|
112
|
+
* The existing transaction's `status` determines what the merge path does next:
|
|
113
|
+
* - `'unproven'` or `'completed'`: outputs are merged into the existing record. The transaction status is left as-is.
|
|
114
|
+
* - `'nosend'`: an ambiguous case. The transaction was created with `noSend: true` and may have been externally
|
|
115
|
+
* broadcast, may be sitting in a sendWith chain, or may be stuck mid-flight. The merge path treats the
|
|
116
|
+
* `internalizeAction` call as explicit authorization to advance the lifecycle. Specifically: `transactions.status`
|
|
117
|
+
* is promoted to `'completed'` (when a BUMP is included in the BEEF) or `'unproven'` (otherwise), and the
|
|
118
|
+
* `proven_tx_req` is moved out of `'nosend'` so Monitor's standard proof-fetching flow can finalize it.
|
|
119
|
+
* This makes the `internalizeAction` semantics consistent regardless of whether the originator shares the
|
|
120
|
+
* same storage as the internalizer or not.
|
|
121
|
+
* - Any other status: an error.
|
|
24
122
|
*
|
|
25
123
|
* When the transaction already exists, the description is updated. The isOutgoing sense is not changed.
|
|
26
124
|
*
|
|
@@ -43,6 +141,31 @@ async function internalizeAction(storage, auth, args) {
|
|
|
43
141
|
return ctx.r;
|
|
44
142
|
}
|
|
45
143
|
class InternalizeActionContext {
|
|
144
|
+
storage;
|
|
145
|
+
auth;
|
|
146
|
+
args;
|
|
147
|
+
/** result to be returned */
|
|
148
|
+
r;
|
|
149
|
+
/** the parsed input AtomicBEEF */
|
|
150
|
+
ab;
|
|
151
|
+
/** the incoming transaction extracted from AtomicBEEF */
|
|
152
|
+
tx;
|
|
153
|
+
/** the user's change basket */
|
|
154
|
+
changeBasket;
|
|
155
|
+
/** cached baskets referenced by basket insertions */
|
|
156
|
+
baskets;
|
|
157
|
+
/** existing storage transaction for this txid and userId */
|
|
158
|
+
etx;
|
|
159
|
+
/** existing outputs */
|
|
160
|
+
eos;
|
|
161
|
+
/** all the basket insertions from incoming outputs array */
|
|
162
|
+
basketInsertions;
|
|
163
|
+
/** all the wallet payments from incoming outputs array */
|
|
164
|
+
walletPayments;
|
|
165
|
+
/** outputs this call transitioned spendable=true → false (for rollback) */
|
|
166
|
+
spentInputs;
|
|
167
|
+
userId;
|
|
168
|
+
vargs;
|
|
46
169
|
constructor(storage, auth, args) {
|
|
47
170
|
this.storage = storage;
|
|
48
171
|
this.auth = auth;
|
|
@@ -62,6 +185,7 @@ class InternalizeActionContext {
|
|
|
62
185
|
this.basketInsertions = [];
|
|
63
186
|
this.walletPayments = [];
|
|
64
187
|
this.eos = [];
|
|
188
|
+
this.spentInputs = [];
|
|
65
189
|
}
|
|
66
190
|
get isMerge() {
|
|
67
191
|
return this.r.isMerge;
|
|
@@ -211,7 +335,7 @@ class InternalizeActionContext {
|
|
|
211
335
|
}
|
|
212
336
|
async findOrInsertTargetTransaction(satoshis, provenTx) {
|
|
213
337
|
const now = new Date();
|
|
214
|
-
const provenTxId = provenTx
|
|
338
|
+
const provenTxId = provenTx?.provenTxId;
|
|
215
339
|
const status = (provenTx != null) ? 'completed' : 'unproven';
|
|
216
340
|
const newTx = {
|
|
217
341
|
created_at: now,
|
|
@@ -246,9 +370,44 @@ class InternalizeActionContext {
|
|
|
246
370
|
}
|
|
247
371
|
return tr.tx;
|
|
248
372
|
}
|
|
373
|
+
async findOrInsertProvenTxFromBump(bump, btx) {
|
|
374
|
+
const now = new Date();
|
|
375
|
+
const merkleRoot = bump.computeRoot(this.txid);
|
|
376
|
+
const indexEntry = bump.path[0].find(p => p.hash === this.txid);
|
|
377
|
+
if (indexEntry == null) {
|
|
378
|
+
throw new WERR_errors_1.WERR_INTERNAL(`Could not determine transaction index for txid ${this.txid} in bump path. Expected to find txid in bump.path[0]: ${JSON.stringify(bump.path[0])}`);
|
|
379
|
+
}
|
|
380
|
+
const index = indexEntry.offset;
|
|
381
|
+
const header = await this.storage.getServices().getHeaderForHeight(bump.blockHeight);
|
|
382
|
+
if (!header) {
|
|
383
|
+
throw new WERR_errors_1.WERR_INTERNAL(`Block header not found for height ${bump.blockHeight}`);
|
|
384
|
+
}
|
|
385
|
+
const hash = (0, blockHeaderUtilities_1.blockHash)(header);
|
|
386
|
+
const provenTxR = await this.storage.findOrInsertProvenTx({
|
|
387
|
+
created_at: now,
|
|
388
|
+
updated_at: now,
|
|
389
|
+
provenTxId: 0,
|
|
390
|
+
txid: this.txid,
|
|
391
|
+
height: bump.blockHeight,
|
|
392
|
+
index,
|
|
393
|
+
merklePath: bump.toBinary(),
|
|
394
|
+
rawTx: btx.rawTx,
|
|
395
|
+
blockHash: hash,
|
|
396
|
+
merkleRoot
|
|
397
|
+
});
|
|
398
|
+
return provenTxR.proven;
|
|
399
|
+
}
|
|
249
400
|
async mergedInternalize() {
|
|
250
401
|
const transactionId = this.etx.transactionId;
|
|
402
|
+
const wasNoSend = this.etx.status === 'nosend';
|
|
251
403
|
await this.addLabels(transactionId);
|
|
404
|
+
// Externally-broadcast txs internalized into a pre-existing storage
|
|
405
|
+
// record (typically a nosend created by this wallet) still need their
|
|
406
|
+
// consumed user UTXOs marked spent. createAction marks them when the
|
|
407
|
+
// tx is wallet-originated, but a nosend can be merged from a sender
|
|
408
|
+
// that doesn't share storage. Idempotent for the wallet-originated
|
|
409
|
+
// case — already-spent outputs are skipped.
|
|
410
|
+
await this.markInputsSpent(transactionId);
|
|
252
411
|
for (const payment of this.walletPayments) {
|
|
253
412
|
if ((payment.eo != null) && !payment.ignore)
|
|
254
413
|
await this.mergeWalletPaymentForOutput(transactionId, payment);
|
|
@@ -261,6 +420,60 @@ class InternalizeActionContext {
|
|
|
261
420
|
else
|
|
262
421
|
await this.storeNewBasketInsertionForOutput(transactionId, basket);
|
|
263
422
|
}
|
|
423
|
+
// Lifecycle advance when merging into a tx that was 'nosend'.
|
|
424
|
+
//
|
|
425
|
+
// Background: an internalizeAction call against an existing tx in
|
|
426
|
+
// 'nosend' status is the caller asserting the tx has now been
|
|
427
|
+
// externally broadcast (and potentially mined if the BEEF includes
|
|
428
|
+
// a BUMP). Before this advance, mergedInternalize only updated
|
|
429
|
+
// labels + per-output ownership records and left transactions.status
|
|
430
|
+
// and proven_tx_reqs.status unchanged. The nosend state then had no
|
|
431
|
+
// reliable retirement path: TaskCheckNoSends's default daily cadence
|
|
432
|
+
// combined with intermittent wallet uptime meant the req could sit
|
|
433
|
+
// in 'nosend' indefinitely, and a subsequent abortAction call would
|
|
434
|
+
// unconditionally invalidate the on-chain tx — orphaning every
|
|
435
|
+
// output the tx produced.
|
|
436
|
+
//
|
|
437
|
+
// BUMP-present path: mirror newInternalize's findOrInsertProvenTx
|
|
438
|
+
// path, then promote the existing transaction record to 'completed'
|
|
439
|
+
// with the new provenTxId and retire the proven_tx_req to
|
|
440
|
+
// 'completed' too.
|
|
441
|
+
//
|
|
442
|
+
// BUMP-absent path: promote transactions.status to 'unproven' (so
|
|
443
|
+
// listOutputs filters the tx's outputs into the spendable set
|
|
444
|
+
// immediately) and transition the proven_tx_req to 'unmined' so
|
|
445
|
+
// TaskCheckForProofs picks it up on its next nudge cycle. This
|
|
446
|
+
// hands off to Monitor's standard proof-fetching flow.
|
|
447
|
+
if (wasNoSend) {
|
|
448
|
+
const bump = this.ab.findBump(this.txid);
|
|
449
|
+
if (bump != null) {
|
|
450
|
+
const btx = this.ab.findTxid(this.txid);
|
|
451
|
+
if (btx == null) {
|
|
452
|
+
throw new WERR_errors_1.WERR_INTERNAL(`Could not find transaction ${this.txid} in AtomicBEEF`);
|
|
453
|
+
}
|
|
454
|
+
const proven = await this.findOrInsertProvenTxFromBump(bump, btx);
|
|
455
|
+
await this.storage.updateTransaction(transactionId, {
|
|
456
|
+
provenTxId: proven.provenTxId,
|
|
457
|
+
status: 'completed'
|
|
458
|
+
});
|
|
459
|
+
const req = await EntityProvenTxReq_1.EntityProvenTxReq.fromStorageTxid(this.storage, this.txid);
|
|
460
|
+
if (req != null && req.status === 'nosend') {
|
|
461
|
+
req.addHistoryNote({ what: 'internalizeAction-bumpRetire', userId: this.userId });
|
|
462
|
+
req.provenTxId = proven.provenTxId;
|
|
463
|
+
req.status = 'completed';
|
|
464
|
+
await req.updateStorageDynamicProperties(this.storage);
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
else {
|
|
468
|
+
await this.storage.updateTransaction(transactionId, { status: 'unproven' });
|
|
469
|
+
const req = await EntityProvenTxReq_1.EntityProvenTxReq.fromStorageTxid(this.storage, this.txid);
|
|
470
|
+
if (req != null && req.status === 'nosend') {
|
|
471
|
+
req.addHistoryNote({ what: 'internalizeAction-nosendRetire', userId: this.userId });
|
|
472
|
+
req.status = 'unmined';
|
|
473
|
+
await req.updateStorageDynamicProperties(this.storage);
|
|
474
|
+
}
|
|
475
|
+
}
|
|
476
|
+
}
|
|
264
477
|
}
|
|
265
478
|
/**
|
|
266
479
|
* internalize output(s) from a transaction with txid unknown to storage.
|
|
@@ -276,34 +489,13 @@ class InternalizeActionContext {
|
|
|
276
489
|
// The presence bump indicates the transaction has already been mined.
|
|
277
490
|
// Verify a provenTx record exist before creating a new transaction with completed status...
|
|
278
491
|
// Which normally means creating a new provenTx record.
|
|
279
|
-
|
|
280
|
-
const merkleRoot = bump.computeRoot(this.txid);
|
|
281
|
-
const indexEntry = bump.path[0].find(p => p.hash === this.txid);
|
|
282
|
-
if (indexEntry == null) {
|
|
283
|
-
throw new WERR_errors_1.WERR_INTERNAL(`Could not determine transaction index for txid ${this.txid} in bump path. Expected to find txid in bump.path[0]: ${JSON.stringify(bump.path[0])}`);
|
|
284
|
-
}
|
|
285
|
-
const index = indexEntry.offset;
|
|
286
|
-
const header = await this.storage.getServices().getHeaderForHeight(bump.blockHeight);
|
|
287
|
-
if (!header) {
|
|
288
|
-
throw new WERR_errors_1.WERR_INTERNAL(`Block header not found for height ${bump.blockHeight}`);
|
|
289
|
-
}
|
|
290
|
-
const hash = (0, blockHeaderUtilities_1.blockHash)(header);
|
|
291
|
-
const provenTxR = await this.storage.findOrInsertProvenTx({
|
|
292
|
-
created_at: now,
|
|
293
|
-
updated_at: now,
|
|
294
|
-
provenTxId: 0,
|
|
295
|
-
txid: this.txid,
|
|
296
|
-
height: bump.blockHeight,
|
|
297
|
-
index,
|
|
298
|
-
merklePath: bump.toBinary(),
|
|
299
|
-
rawTx: btx.rawTx,
|
|
300
|
-
blockHash: hash,
|
|
301
|
-
merkleRoot
|
|
302
|
-
});
|
|
303
|
-
pr.proven = provenTxR.proven;
|
|
492
|
+
pr.proven = await this.findOrInsertProvenTxFromBump(bump, btx);
|
|
304
493
|
}
|
|
305
494
|
this.etx = await this.findOrInsertTargetTransaction(this.satoshis, pr.proven);
|
|
306
495
|
const transactionId = this.etx.transactionId;
|
|
496
|
+
// Mark any user-owned outputs the incoming tx consumes as spent BEFORE
|
|
497
|
+
// attempting broadcast. If broadcast fails we restore them below.
|
|
498
|
+
await this.markInputsSpent(transactionId);
|
|
307
499
|
if (pr.proven == null) {
|
|
308
500
|
// beef doesn't include proof of mining for the transaction (etx).
|
|
309
501
|
// the new transaction record has been added to storage, but (baring race conditions)
|
|
@@ -332,6 +524,11 @@ class InternalizeActionContext {
|
|
|
332
524
|
};
|
|
333
525
|
const { swr, ndr } = await (0, processAction_1.shareReqsWithWorld)(this.storage, this.userId, [], false, r);
|
|
334
526
|
if (ndr[0].status !== 'success') {
|
|
527
|
+
// Roll back the spendable=true → false transitions performed above
|
|
528
|
+
// so the caller can retry with the same UTXOs. Idempotent w.r.t.
|
|
529
|
+
// attemptToPostReqsToNetwork's own updateTransactionStatus('failed')
|
|
530
|
+
// restore on doubleSpend/invalidTx outcomes.
|
|
531
|
+
await this.restoreSpentInputs();
|
|
335
532
|
this.r.sendWithResults = swr;
|
|
336
533
|
this.r.notDelayedResults = ndr;
|
|
337
534
|
// abort the internalize action, WERR_REVIEW_ACTIONS exception will be thrown
|
|
@@ -352,6 +549,14 @@ class InternalizeActionContext {
|
|
|
352
549
|
await this.storage.findOrInsertTxLabelMap((0, utilityHelpers_1.verifyId)(transactionId), (0, utilityHelpers_1.verifyId)(txLabel.txLabelId));
|
|
353
550
|
}
|
|
354
551
|
}
|
|
552
|
+
async markInputsSpent(transactionId) {
|
|
553
|
+
const transitioned = await markUserInputsSpent(this.storage, this.userId, this.tx, transactionId);
|
|
554
|
+
this.spentInputs.push(...transitioned);
|
|
555
|
+
}
|
|
556
|
+
async restoreSpentInputs() {
|
|
557
|
+
await restoreInputsToSpendable(this.storage, this.spentInputs);
|
|
558
|
+
this.spentInputs = [];
|
|
559
|
+
}
|
|
355
560
|
async addBasketTags(basket, outputId) {
|
|
356
561
|
for (const tag of basket.tags || []) {
|
|
357
562
|
await this.storage.tagOutput({ outputId, userId: this.userId }, tag);
|