Skip to content

V30 Gate 5: Testnet Ledger Projection Hardening#37

Merged
geraldarthurdavis merged 2 commits into
version/v30from
v30/gate-5-testnet-ledger-projection-hardening
May 21, 2026
Merged

V30 Gate 5: Testnet Ledger Projection Hardening#37
geraldarthurdavis merged 2 commits into
version/v30from
v30/gate-5-testnet-ledger-projection-hardening

Conversation

@geraldarthurdavis

Copy link
Copy Markdown
Contributor

Summary

  • adds package-owned object-storage artifact facts and secret-free Supabase staging-testnet readback receipts to BTD reconciliation reports
  • wires Gate 5 projection evidence through the AssetPack Sandbox harness and Terminal journal reconciliation surface
  • updates V30 spec/delta/notes/parity, package/Terminal docs, and the gate-quality workflow with a Gate 5 checker

Validation

  • pnpm --filter @bitcode/btd test
  • pnpm --filter @bitcode/btd typecheck
  • pnpm --filter @bitcode/api build
  • pnpm --filter @bitcode/api exec jest --config jest.config.cjs --runTestsByPath src/routes/tests/btd-crypto.test.ts --runInBand
  • pnpm --filter @bitcode/pipeline-hosts exec jest --config jest.config.cjs --runTestsByPath src/tests/asset-pack-harness.test.ts --runInBand
  • pnpm --filter @bitcode/pipeline-hosts typecheck
  • pnpm --dir uapi exec jest --runTestsByPath tests/terminalJournalReconciliation.test.ts tests/terminalTransactionDetailSnapshot.test.ts --runInBand
  • pnpm --dir uapi exec tsc --noEmit --pretty false
  • pnpm run check:v30-gate1
  • node scripts/check-v30-gate2-protocol-package-api-boundaries.mjs --skip-branch-check
  • node scripts/check-v30-gate3-bitcoin-taproot-psbt-fee-rigor.mjs --skip-branch-check
  • node scripts/check-v30-gate4-btd-assetpack-mint-read-receipts.mjs --skip-branch-check
  • pnpm run check:v30-gate5
  • node scripts/check-bitcode-spec-family.mjs --version V30 --mode draft --current-target V29
  • node scripts/check-bitcode-canon-posture-drift.mjs --active-canon V29 --draft-target V30
  • node scripts/check-bitcode-canonical-inputs.mjs --current-target V29
  • pnpm run check:spec-quality
  • bash scripts/find-uppercase-raw-promptparts.sh && bash scripts/check-import-casing.sh
  • git diff --check
  • git diff --cached --check
  • staged secret-shape scan for OpenAI, Supabase, JWT, and database-password values

Adds package-owned object-storage artifact facts and secret-free Supabase staging-testnet readback receipts to BTD reconciliation reports. Wires the report through the AssetPack Sandbox harness and Terminal journal reconciliation UI so ledger, database, object-storage, and private facts remain distinct with deterministic repair roots.

Covers drift, quarantine, retry, protected-source rejection, staging readback blocking, API serialization, harness generation, Terminal rendering, V30 spec parity, and the Gate 5 workflow checker.
@vercel

vercel Bot commented May 21, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
engi-uapi Ready Ready Preview, Comment May 21, 2026 9:38pm

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: d0fd62f262

ℹ️ 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".

Comment on lines +676 to +679
const repairSnapshots = mergeRepairSnapshots(
journal?.repairs || [],
buildReportRepairSnapshots(settlement),
);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Derive reconciliation state from merged repair snapshots

repairSnapshots now merges report repairs with journal repairs, but deriveState still classifies repairable using only journal?.repairs.length. In runs where the new ledger-database report contributes non-blocking repairs (for example a finality mismatch that does not set blocking), the snapshot can be labeled aligned even though repair receipts/actions are present. This under-reports drift and can lead operators to treat an unresolved reconciliation as healthy.

Useful? React with 👍 / 👎.

Allow Terminal reconciliation cards to render historical or partial journal snapshots that predate object-storage fact projection while preserving the new object-storage section for current reports.

Proof: pnpm --dir uapi exec jest --runTestsByPath tests/api/readReviewRoute.test.ts tests/api/pipelineHarnessRoute.test.ts tests/terminalPipelineHarnessClient.test.ts tests/terminalDepositReadWorkbench.test.ts tests/terminalTransactionQuery.test.ts tests/terminalTransactionReadModel.test.ts tests/terminalWalletBtcOperation.test.ts tests/terminalJournalReconciliation.test.ts tests/terminalOrganizationAuthority.test.ts tests/protocolCommercialBoundary.test.ts tests/terminalTransactionDetailCards.test.tsx tests/terminalTransactionDetailSnapshot.test.ts tests/terminalUxBrowserProof.test.tsx tests/pipelineExecutionLogHeader.test.tsx --runInBand; pnpm -C uapi exec jest --coverage; pnpm --dir uapi exec tsc --noEmit --pretty false
@geraldarthurdavis
geraldarthurdavis merged commit a91d313 into version/v30 May 21, 2026
30 checks passed
@geraldarthurdavis
geraldarthurdavis deleted the v30/gate-5-testnet-ledger-projection-hardening branch May 21, 2026 21:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant