Skip to content

chore: release#72

Merged
himerus merged 2 commits intomainfrom
changeset-release/main
Apr 22, 2026
Merged

chore: release#72
himerus merged 2 commits intomainfrom
changeset-release/main

Conversation

@himerus
Copy link
Copy Markdown
Contributor

@himerus himerus commented Apr 22, 2026

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@bookedsolid/rea@0.10.1

Single patch release — governance recovery + audit integrity + base-branch resolution + audit-chain corruption-tolerance. Closes defects S + P + N (partial) + T + U on one branch.

Note on the main-branch commit title: the merged commit 933fc79 on main has the title fix(cli,hooks,middleware): governance recovery + audit integrity (S+P+N+T+U) (0.10.2). The "(0.10.2)" in that subject line is a planning-artifact from the working tree — the shipped npm version is 0.10.1 (Changesets correctly generated a single patch bump from the patch-kind changeset). No 0.10.1 was ever published standalone; this IS that release. Commit titles drift from release numbers; no history rewrite was attempted.

Patch Changes

  • 933fc79: Governance recovery + audit integrity + base-branch resolution + audit-chain corruption-tolerance (Defects S + P + N + T + U)

    Five independent fixes shipped on one branch because the push-gate and audit-helper surfaces they touch overlap enough that landing T and U as a follow-up patch would have required a second Codex pass over code already under review.

    • Defect S — TOFU drift recovery CLI (HIGH, governance recovery): new rea tofu list [--json] and rea tofu accept <name> [--reason <text>] subcommands so operators can recover from a drift fail-close without restarting the gateway with REA_ACCEPT_DRIFT=<name>. Audit trail via tofu.drift_accepted_by_cli / tofu.first_seen_accepted_by_cli records on the hash chain.
    • Defect Pcodex.review audit record forgery surface (CRITICAL, integrity): new required emission_source field on AuditRecord, hashed into the chain. Public appendAuditRecord() stamps "other"; only the new appendCodexReviewAuditRecord() helper (reachable exclusively via rea audit record codex-review CLI) stamps "rea-cli". Push-review cache gate's jq predicate now requires rea-cli or codex-cli. Legacy pre-0.10.1 records are rejected — first push per branch after upgrade requires a fresh rea audit record codex-review invocation.
    • Defect N — base-branch resolution consults branch.<name>.base (MEDIUM, partial): hooks/_lib/push-review-core.sh now reads git config branch.<source>.base <ref> before falling through to origin/HEAD. Full fail-loud + general-label-fix halves deferred to defect G.
    • Defect T — audit writer serialization self-check (MEDIUM, integrity): appendAuditRecord() / appendCodexReviewAuditRecord() verify the JSON line round-trips before touching .rea/audit.jsonl. rea audit verify now collects every unparseable line across the walk instead of aborting at the first one; chain verification continues over the parseable subset.
    • Defect U — push-review-core.sh audit scan tolerates malformed lines (HIGH, availability): jq scan rewritten as jq -R ... 'fromjson? | select(<predicate>)' so a single corrupt line in .rea/audit.jsonl no longer locks the push gate closed. Forgery-rejection guarantee (P) still holds line-by-line.

Followups (tracked separately, not in this patch)

  • Gpush-review-core.sh TypeScript port (1154 LOC + 10 integration test suites). Tracked for 0.11.0. Completes defect N's general label fix.
  • Widen T self-check to src/gateway/middleware/audit.ts and src/gateway/audit/rotator.ts via a shared serialization helper.
  • Shell-level integration test for defect P's gate predicate (forgery-rejection fixture).
  • Codex pass finding chore(ci)(deps): bump actions/setup-node from 4.0.3 to 6.3.0 #2 — proxied-MCP records through gateway middleware stamp rea-cli; narrow residual surface (no current exploit).
  • Codex pass finding chore(ci)(deps): bump pnpm/action-setup from 4.0.0 to 6.0.1 #3rea tofu accept writes fingerprint before audit append; reverse order or document recovery in error message.

github-actions Bot and others added 2 commits April 22, 2026 12:31
Signed-off-by: Jake Strawn <bandy.strawn@clarityhouse.press>
…guage)

Signed-off-by: Jake Strawn <bandy.strawn@clarityhouse.press>
@himerus himerus added the @changesets/skip Changeset not required for infra-only PR label Apr 22, 2026
@himerus himerus force-pushed the changeset-release/main branch from f2c7913 to 79656a6 Compare April 22, 2026 16:32
@himerus himerus merged commit 4659861 into main Apr 22, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

@changesets/skip Changeset not required for infra-only PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant