@ducat-unit/wallet-snap 0.1.0 → 0.1.2

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/AUDIT_SCOPE.md CHANGED
@@ -29,7 +29,7 @@ This file defines the minimum security review scope before publishing `@ducat-un
29
29
  - Any unauthorized origin able to invoke Snap RPC methods.
30
30
  - Any malformed PSBT, wrong-network PSBT, unknown address, or unknown input index that is accepted.
31
31
  - Any package dependency that violates MetaMask Snap SES constraints or creates avoidable key-management risk.
32
- - Any Taproot script-path behavior that signs a Ducat vault input without proving the tapleaf is a Ducat cosign leaf, commits to the prevout output key, and contains the derived vault pubkey in the client slot.
32
+ - Any Taproot script-path behavior that signs a Ducat vault input without proving the tapleaf is a Ducat cosign leaf, commits to the prevout output key, contains the derived vault pubkey in the client slot, and uses distinct client and guard pubkeys.
33
33
 
34
34
  ## Audit Evidence
35
35
 
package/README.md CHANGED
@@ -99,7 +99,7 @@ For the published Snap, use:
99
99
 
100
100
  ```bash
101
101
  NEXT_PUBLIC_DUCAT_SNAP_ID="npm:@ducat-unit/wallet-snap"
102
- NEXT_PUBLIC_DUCAT_SNAP_VERSION="^0.1.0"
102
+ NEXT_PUBLIC_DUCAT_SNAP_VERSION="^0.1.2"
103
103
  ```
104
104
 
105
105
  Run the frontend on an origin allowed by `snap.manifest.json`, for example:
@@ -194,7 +194,7 @@ Errors returned to the frontend are friendly by default and include a stable `co
194
194
 
195
195
  ### Taproot Script-Path Policy
196
196
 
197
- Vault PSBTs that spend Taproot script-path inputs must include a Ducat cosign tapleaf and control-block data that recomputes to the prevout P2TR output key. The Snap rejects uncommitted script-path inputs and generic leaves even if the leaf contains the derived Ducat vault key.
197
+ Vault PSBTs that spend Taproot script-path inputs must include a Ducat cosign tapleaf and control-block data that recomputes to the prevout P2TR output key. The tapleaf must place the derived Ducat vault key in the client slot, and the client and guard pubkeys must be distinct. The Snap rejects uncommitted script-path inputs, client/guard key collapse, and generic leaves even if the leaf contains the derived Ducat vault key.
198
198
 
199
199
  Mainnet support still requires a separate audit pass, but the signet/mutinynet Snap no longer contains the earlier alpha fallback that accepted uncommitted tapleaf data.
200
200
 
@@ -217,7 +217,7 @@ Current candidate progress: duplicate previous-output rejection, missing previou
217
217
  3. Tag the audit candidate.
218
218
  4. Complete the third-party audit required for `snap_getBip32Entropy`.
219
219
  5. Merge any audit fixes and tag the fixed candidate.
220
- 6. Publish `@ducat-unit/wallet-snap@0.1.0` to npm.
220
+ 6. Publish `@ducat-unit/wallet-snap@0.1.2` to npm.
221
221
  7. Replace pending external fields in `submission/metamask-directory.json` and `submission/ALLOWLIST_SUBMISSION.md`.
222
222
  8. Capture real PSBT fixtures into `submission/fixtures/`.
223
223
  9. Capture final E2E evidence into `submission/e2e/evidence.json`.