You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
modernize @bsv/btms as a Node 22 dual ESM/CommonJS package with strict artifact and clean-consumer validation
bring @bsv/btms-permission-module onto the public package profile with enforced coverage and exact transaction-signing digest authorization
add the missing private-library format/typecheck controls to @bsv/btms-backend and clean its docs and lint surface
remove 11 repository-health findings while preserving the canonical Open BSV License Version 6 policy
Security and quality
The permission module now fails closed on malformed transaction capture, binds each approved signable transaction to the SHA-256 digest of every exact BIP-143 input preimage, verifies the 32-byte digest actually emitted by SDK PushDrop, prevents token-access grants from authorizing unbound signatures, and makes unbound signature approval one-shot.
The quality pass decomposes BTMS topic admission into bounded stages, addresses every Sonar issue reported on the first head, and adds focused branch coverage for malformed inputs, detached BEEF sources, allowance enforcement, metadata parsing, bounded preimage parsing, PushDrop unlock configuration, history selection, storage binding, and randomized change conservation.
Verification
repository build, lint, and test suites passed
repository health: 83 findings, 11 active exceptions, 0 control errors
pnpm audit: no known vulnerabilities
46 manifests and 30 public tarballs verified with canonical Open BSV License Version 6
Approval in substance for exact head f3b034a: I reviewed the complete patch and its security-sensitive authorization changes. All exact-head required and advisory checks are green, CodeQL and Socket pass, Codecov patch passes at 92.37668%, Sonar reports 0 open/confirmed issues and 0 security hotspots, the Open BSV License Version 6 policy verifies all 46 manifests, package artifacts and consumers pass, and there are no unresolved review threads. GitHub does not permit a pull request author to submit a formal approval on their own PR, so this ty-everett maintainer comment records the equivalent approval for this exact commit before admin merge.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Security and quality
The permission module now fails closed on malformed transaction capture, binds each approved signable transaction to the SHA-256 digest of every exact BIP-143 input preimage, verifies the 32-byte digest actually emitted by SDK PushDrop, prevents token-access grants from authorizing unbound signatures, and makes unbound signature approval one-shot.
The quality pass decomposes BTMS topic admission into bounded stages, addresses every Sonar issue reported on the first head, and adds focused branch coverage for malformed inputs, detached BEEF sources, allowance enforcement, metadata parsing, bounded preimage parsing, PushDrop unlock configuration, history selection, storage binding, and randomized change conservation.
Verification
Tracks #324.