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
-`BtcFeeQuote`: deterministic BTC fee quote with quote root, measurement root, purpose, network, sats, pricing version, expiration, and lifecycle state.
185
185
-`WalletSignerSessionRecovery`: signer-session posture proving whether the Reader wallet can sign a PSBT without server custody.
186
-
-`BtcFeeOperationPosture`: operational state over quote, signer, PSBT, broadcast, finality, replacement, reorg, failure, and blocked readiness.
186
+
-`BtcFeeNetworkPolicy`: proof-rooted environment and network admission posture over local, staging-testnet, and production-mainnet value-bearing BTC settlement.
-`BtdReadReceipt`: typed receipt binding Reader, read request, accepted Need, Finding Fits result root, source-safe preview root, paid/unpaid disclosure state, read-right state, and delivery admission.
189
191
-`BtdRightsTransferReceipt`: typed receipt binding BTC fee finality, BTD owner or license transition, range projection, paid unlock, delivery proof, and reconciliation status.
@@ -317,7 +319,9 @@ The operation model must contain:
317
319
- quote lifecycle: quoted, accepted, expired, superseded, and failed;
318
320
- deterministic quote root over quote id, purpose, network, sats, measurement root, issue time, and expiration;
319
321
- signer recovery: missing, prepared authorization required, stored authorization requiring live reconnect, expired, revoked, failed, network mismatch, capability missing, server-custody rejected, or live authorized;
320
-
- PSBT handoff: accepted quote prepares a PSBT; the wallet signs; the signed PSBT broadcasts;
322
+
- network policy: local and staging-testnet may exercise value-bearing BTC settlement for QA; production-mainnet value-bearing settlement remains blocked until explicit operational approval is attached and proof-rooted;
323
+
- Taproot/script posture: Bitcoin fee and anchor paths default to Taproot, name the admitted script path, and expose non-Taproot posture as audit evidence rather than silently treating it as equivalent;
324
+
- PSBT handoff: accepted quote prepares an unsigned PSBT; the wallet signs; the signed PSBT is ready for broadcast; broadcast and finality observations are separate states;
- blocked-readiness receipts naming the blocker id, summary, required action, quote id, wallet session id, receipt id, and no-server-custody posture;
323
327
- Terminal read rows and metrics for state, network, sats, confirmations, quote root, wallet session, payer wallet, PSBT handoff, txid, server custody, and next action.
Copy file name to clipboardExpand all lines: BITCODE_SPEC_V30_PARITY_MATRIX.md
+21-1Lines changed: 21 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -56,7 +56,7 @@ No `_legacy/` source is active source truth.
56
56
| Draft family and branch posture | Gate 1 |`BITCODE_SPEC_V30.md`, DELTA, NOTES, PARITY, `BITCODE_SPEC.txt`, branch `v30/gate-1-roadmap-and-gating`| drafted | V30 family validates in draft mode over active V29 and `check:v30-gate1` passes. |
57
57
| Roadmap truth | Gate 1 |`SPECIFICATIONS_ROADMAP.md`, README, PR template, workflow posture | drafted | Roadmap states V29 active, V30 draft, and coherent V31-V37 responsibilities. |
58
58
| Protocol package API boundaries | Gate 2 |`packages/btd/src/api-boundaries.ts`, `packages/api/src/routes/btd-crypto.ts`, package READMEs/tests | drafted | Shared Protocol/BTD objects have package-owned builders, parsers, validators, JSON-safe serializers, and tests. |
59
-
| Bitcoin Taproot PSBT fee rigor | Gate 3 |BTD fee/signer/PSBT primitives, API route adapters, tests | pending| BTC fee and signer states are typed, testnet/mainnet-safe, no-custody, and proof-rooted. |
59
+
| Bitcoin Taproot PSBT fee rigor | Gate 3 |`packages/btd/src/btc-fee-operation.ts`, `packages/btd/src/bitcoin-fees.ts`, BTD/API tests, gate checker | drafted| BTC fee and signer states are typed, testnet/mainnet-safe, no-custody, Taproot/PSBT aware, and proof-rooted. |
| PSBT handoff is typed across prepared, signed, broadcast, finality, replacement/reorg repair, and failure |`BtcFeePsbtHandoffState`, `deriveBtcFeePsbtHandoffState`, `BtcFeeOperationPosture`| drafted |
123
+
| Taproot/script posture is proof-rooted and attached to fee operation posture |`BtcFeeTaprootPsbtPosture`, `buildBtcFeeTaprootPsbtPosture`, API route tests | drafted |
| Signed receipts require signed PSBT evidence before broadcast |`packages/btd/src/bitcoin-fees.ts`, `packages/btd/__tests__/btc-fee-operation.test.ts`| drafted |
126
+
| API settlement route serializes the added operation posture safely |`packages/api/src/routes/__tests__/btd-crypto.test.ts`| drafted |
127
+
| Gate checker protects the BTC fee rigor surface |`scripts/check-v30-gate3-bitcoin-taproot-psbt-fee-rigor.mjs`, `pnpm run check:v30-gate3`, gate-quality workflow | drafted |
128
+
129
+
## Gate 3 accepted boundaries
130
+
131
+
- Gate 3 does not admit value-bearing production-mainnet settlement by default.
132
+
- Gate 3 does not implement a bridge chain-of-record path.
133
+
- Gate 3 does not custody Reader private keys or sign PSBTs server-side.
134
+
- Gate 3 does not replace later Gate 4 BTD mint, read, and rights-transfer receipts.
115
135
- Gate 1 does not promote `BITCODE_SPEC.txt` to V30.
116
136
- Gate 1 may retarget workflows to active V29 / draft V30 so later gates are greenable.
117
137
- Gate 1 may update roadmap scope for V31-V37 to align with V28/V29 promotion learning without opening those versions.
0 commit comments