From de285be74259e7c9aa3956f863da0ee685fab846 Mon Sep 17 00:00:00 2001 From: tegwick Date: Tue, 22 Sep 2026 16:26:43 +0200 Subject: [PATCH] Record recovery of stranded 2026-09-15..22 briefs and the rein push fix. Co-Authored-By: Claude Opus 5 Assistant: claude-code Assistant-Model: opus Assistant-Process: 51320@bnt-lap001 Assistant-Session: 9d40b4c7-8e3c-42ee-b755-d658d4640d6c --- docs/brief-durability-audit.md | 32 +++++++++++++++++++ .../FI-WP-0005-profiled-brief-execution.md | 7 ++++ 2 files changed, 39 insertions(+) diff --git a/docs/brief-durability-audit.md b/docs/brief-durability-audit.md index bb5c8c9..7f54535 100644 --- a/docs/brief-durability-audit.md +++ b/docs/brief-durability-audit.md @@ -90,3 +90,35 @@ Live audit checks: strict mode exits 1 for the five missing dates; `--allow-reconciled --require-date 2026-09-14` exits 1 because that day's scheduled publication has not occurred. Progress note: `687fee6f-e080-40f4-a62c-ffb23face166`. + +## 2026-09-22: stranded briefs 2026-09-15 to 2026-09-22 recovered + +The claim loop produced a brief every weekday, but every push was rejected +non-fast-forward (`! [rejected] HEAD -> main (fetch first)`). Origin had +moved through workstation commits and the executor never fetched. The +FI-WP-0004 safeguard held: each run failed and reopened, and no +`fi_daily_brief` was posted, so there were no false completions. Six +commits stayed local on railiance01. + +Recovery: the six brief-only commits were rebased onto `origin/main` on +railiance01 and pushed (`166fda3..5c2dd69`). Completion events were then +posted with `recovered: true` and the rebased `origin_sha`: + +| Day | origin_sha | Event | +| --- | --- | --- | +| 2026-09-15 | `93f0b97` | `3cfceabb` | +| 2026-09-16 | `f912c18` | `14b2c7df` | +| 2026-09-17 | `083bd28` | `163cf2d4` | +| 2026-09-18 | `4a4eb0c` | `88877318` | +| 2026-09-21 | `9cb00d3` | `65c37af3` | +| 2026-09-22 | `5c2dd69` | `9b85f21b` | + +`--allow-reconciled --require-date 2026-09-22` exits 0 with 8 valid published +events. Strict mode still exits 1, only for the acknowledged 09-07 to 09-11 gaps. + +Root-cause fix: rein-aharness `294201a` implements the publication decision +(`docs/decisions/2026-09-22-brief-origin-publication.md`). On rejection it +fetches, confirms that unpublished commits touch only `briefs/`, rebases +once and retries; a conflict aborts and fails the day. It is deployed on +railiance01 (editable install at `294201a`), and the claim loop was +restarted 2026-09-22 14:26 CEST. diff --git a/workplans/FI-WP-0005-profiled-brief-execution.md b/workplans/FI-WP-0005-profiled-brief-execution.md index 6e9d289..dd6995c 100644 --- a/workplans/FI-WP-0005-profiled-brief-execution.md +++ b/workplans/FI-WP-0005-profiled-brief-execution.md @@ -260,6 +260,13 @@ grant schema revision, and canary and rollback evidence. profiled path, and rein confirms that FI no longer needs `AGENT_HARNESS_LEGACY_APPROACHES_UNTIL`. Target: before 2026-12-01. +## Incident found during T06 (2026-09-22) + +Briefs for 2026-09-15 to 2026-09-22 were stranded on railiance01 because +every push was rejected non-fast-forward. They are recovered, and the root cause +is fixed in rein-aharness `294201a` (the T02 rebase-once rule, now also on the +compatibility path). Details: `docs/brief-durability-audit.md`. + ## Risks - **Owner-auth blockers in sand-boxer and Glas** may not clear before