Skip to content

fix(wallet-toolbox): close nosend orphan-output failure mode#122

Merged
sirdeggen merged 12 commits into
bsv-blockchain:mainfrom
BSVanon:fix/nosend-lifecycle-defense
May 19, 2026
Merged

fix(wallet-toolbox): close nosend orphan-output failure mode#122
sirdeggen merged 12 commits into
bsv-blockchain:mainfrom
BSVanon:fix/nosend-lifecycle-defense

fix(ci): link payment-express-middleware to workspace auth middleware

d0ad88a
Select commit
Loading
Failed to load commit list.
SonarQubeCloud / SonarCloud Code Analysis succeeded May 19, 2026 in 59s

Annotations

Check warning on line 159 in packages/wallet/wallet-toolbox/test/storage/markStaleInputsAsSpent.test.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Move function 'mockServices' to the outer scope.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ4988F7nQ8skf4BLKej&open=AZ4988F7nQ8skf4BLKej&pullRequest=122

Check warning on line 448 in packages/wallet/wallet-toolbox/test/storage/nosendLifecycleDefense.test.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Prefer using an optional chain expression instead, as it's more concise and easier to read.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ49zRN2_3NrXwOQQvYY&open=AZ49zRN2_3NrXwOQQvYY&pullRequest=122

Check warning on line 605 in packages/wallet/wallet-toolbox/test/utils/TestUtilsWalletStorage.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Use concise character class syntax '\W' instead of '[^a-zA-Z0-9_]'.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ4988LonQ8skf4BLKem&open=AZ4988LonQ8skf4BLKem&pullRequest=122

Check warning on line 182 in packages/wallet/wallet-toolbox/test/storage/nosendLifecycleDefense.test.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

This assertion is unnecessary since the receiver accepts the original type of the expression.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ49zRN2_3NrXwOQQvYS&open=AZ49zRN2_3NrXwOQQvYS&pullRequest=122

Check failure on line 60 in packages/wallet/wallet-toolbox/src/storage/methods/ListActionsSpecOp.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Refactor this function to reduce its Cognitive Complexity from 21 to the 15 allowed.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ49zRH0_3NrXwOQQvYH&open=AZ49zRH0_3NrXwOQQvYH&pullRequest=122

Check failure on line 254 in packages/wallet/wallet-toolbox/src/storage/StorageProvider.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Refactor this function to reduce its Cognitive Complexity from 22 to the 15 allowed.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ49zRMK_3NrXwOQQvYM&open=AZ49zRMK_3NrXwOQQvYM&pullRequest=122

Check warning on line 123 in packages/wallet/wallet-toolbox/test/storage/nosendLifecycleDefense.test.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Move function 'mockServices' to the outer scope.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ4988JknQ8skf4BLKek&open=AZ4988JknQ8skf4BLKek&pullRequest=122

Check warning on line 108 in packages/wallet/wallet-toolbox/test/storage/nosendLifecycleDefense.test.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

This assertion is unnecessary since it does not change the type of the expression.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ49zRN2_3NrXwOQQvYP&open=AZ49zRN2_3NrXwOQQvYP&pullRequest=122

Check warning on line 186 in packages/wallet/wallet-toolbox/test/storage/nosendLifecycleDefense.test.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Move function 'countHistoryNotes' to the outer scope.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ4988JknQ8skf4BLKel&open=AZ4988JknQ8skf4BLKel&pullRequest=122

Check failure on line 369 in packages/wallet/wallet-toolbox/src/storage/methods/internalizeAction.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Refactor this function to reduce its Cognitive Complexity from 24 to the 15 allowed.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ49zRLv_3NrXwOQQvYI&open=AZ49zRLv_3NrXwOQQvYI&pullRequest=122

Check warning on line 81 in packages/wallet/wallet-toolbox/test/monitor/taskCheckNoSendsFreshnessGate.test.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Move function 'eligibleBlockHeight' to the outer scope.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ49zROA_3NrXwOQQvYZ&open=AZ49zROA_3NrXwOQQvYZ&pullRequest=122

Check warning on line 431 in packages/wallet/wallet-toolbox/src/storage/methods/internalizeAction.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Prefer using an optional chain expression instead, as it's more concise and easier to read.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ49zRLv_3NrXwOQQvYL&open=AZ49zRLv_3NrXwOQQvYL&pullRequest=122

Check warning on line 138 in packages/wallet/wallet-toolbox/test/monitor/taskCheckNoSendsFreshnessGate.test.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Move function 'txidFromRawTx' to the outer scope.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ49zROA_3NrXwOQQvYa&open=AZ49zROA_3NrXwOQQvYa&pullRequest=122

Check warning on line 411 in packages/wallet/wallet-toolbox/src/storage/methods/internalizeAction.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Unexpected negated condition.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ49zRLv_3NrXwOQQvYJ&open=AZ49zRLv_3NrXwOQQvYJ&pullRequest=122

Check warning on line 318 in packages/wallet/wallet-toolbox/src/storage/StorageProvider.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Unexpected negated condition.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ49zRMK_3NrXwOQQvYN&open=AZ49zRMK_3NrXwOQQvYN&pullRequest=122

Check warning on line 422 in packages/wallet/wallet-toolbox/src/storage/methods/internalizeAction.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Prefer using an optional chain expression instead, as it's more concise and easier to read.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ49zRLv_3NrXwOQQvYK&open=AZ49zRLv_3NrXwOQQvYK&pullRequest=122

Check warning on line 109 in packages/wallet/wallet-toolbox/test/storage/nosendLifecycleDefense.test.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

This assertion is unnecessary since it does not change the type of the expression.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ49zRN2_3NrXwOQQvYQ&open=AZ49zRN2_3NrXwOQQvYQ&pullRequest=122

Check warning on line 141 in packages/wallet/wallet-toolbox/test/storage/nosendLifecycleDefense.test.ts

See this annotation in the file changed.

@sonarqubecloud sonarqubecloud / SonarCloud Code Analysis

Extract this nested ternary operation into an independent statement.

See more on https://sonarcloud.io/project/issues?id=bsv-blockchain_ts-stack&issues=AZ49zRN2_3NrXwOQQvYR&open=AZ49zRN2_3NrXwOQQvYR&pullRequest=122