V39 Gate 7: Settlement Rights Delivery Boundary#142
Conversation
Implement the AssetPack paid-boundary receipt that observes BTC payment/finality, composes source-to-shares compensation, BTD rights transfer/read receipts, settlement unlock readback, ledger/database/object-storage reconciliation, delivery unlock, replay, and repair posture. Wire the boundary through AssetPack preprocess/postprocess storage projection and export the required BTD subpaths. Add the V39 Gate 7 protocol artifact, generator, checker, workflow coverage, package tests, and specification/roadmap documentation. Refresh the Gate 6 preview artifact predicate now that the roadmap has advanced to Gate 7.
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a695b5ea31
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| }): AssetPackSettlementFinalityReceipt { | ||
| const withoutRoot = { | ||
| schema: 'bitcode.asset-pack.settlement.finality-receipt' as const, | ||
| finalityState: input.finality?.finalityState || 'confirmed' as const, |
There was a problem hiding this comment.
Require explicit BTC finality before marking settlement confirmed
Do not default finalityState to confirmed when no finality receipt is provided. In the current flow, buildAssetPackSettlementRightsDeliveryBoundary can be called with a payment observation but finality undefined (see preprocess wiring), and this fallback marks the payment as confirmed, which allows downstream rights-transfer/delivery logic to proceed as if chain finality were proven. This breaks the fail-closed settlement gate for any caller that has payment metadata but has not yet observed confirmation.
Useful? React with 👍 / 👎.
Summary
Validation