From 91efdce0f09a7652751733857e5c7ebcd1feee0a Mon Sep 17 00:00:00 2001 From: Eureka Date: Tue, 27 Oct 2026 17:02:28 +0100 Subject: [PATCH] Skill: re-entry triages reports with no verdict; second beating triggers the structural move; pushed heads build Co-Authored-By: Claude Opus 5.5 --- SKILL.md | 12 +++++++++--- references/briefs.md | 4 +++- references/changelog.md | 8 ++++++++ 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/SKILL.md b/SKILL.md index 34aed2e..e218aae 100644 --- a/SKILL.md +++ b/SKILL.md @@ -468,7 +468,10 @@ brief template, not only the instance. That is how "operator rulings each need their own failing mutation" entered the Hands brief. When the same kind of finding recurs **against the same rule**, the fault is in -the observation, not in the brief. If a second fix batch for one rule is again +the observation, not in the brief. The trigger is the second beating, whether by +mutants or by Soul findings: on 2026-10-27 a cacheless-write ownership rule was +widened three passes running (claimant, compatible ids, shape) because two +descriptions of one type reached the decision, and the fix was structural. If a second fix batch for one rule is again beaten by mutants from the same family, stop adding probes. Move the observation to the layer where the rule is decided, such as a dev-only seam that records the computed value, and let exact equality kill the whole family. The @@ -584,8 +587,11 @@ and reconciles the target doc with the Body. admitted. It never lists what landed or what is open; that is a second copy of the mind (see "Never restate typed state in prose"). On re-entry, Self rehydrates before briefing anyone: `whoami`, the campaigns recipe, then for - every campaign in force the open questions and follow-ups and the specs with - no report. The handoff is a pointer into that state, not the ledger. Every + every campaign in force the open questions and follow-ups, the specs with + no report and the reports with no verdict; a report unverified for days gets a + recovery Soul pass (on 2026-10-27 two such reports hid High defects). Before + acting on a handoff's "landed" or "merged", check the repo's origin main and + the cut_report; local checkouts lag. The handoff is a pointer into that state, not the ledger. Every campaign in force has exactly one area: before writing a handoff, Self runs the campaigns recipe and checks that each campaign in force is named by its own handoff or by another area's current one; on re-entry, a campaign in diff --git a/references/briefs.md b/references/briefs.md index c2784fe..e901378 100644 --- a/references/briefs.md +++ b/references/briefs.md @@ -410,7 +410,9 @@ Commits: git push`. Never commit from PowerShell (it writes a BOM and breaks here-strings). - End each message with the attribution trailer. -- Say in the message which commits don't build. +- Before every push, build and run the test project the commit touches. A + commit that does not build is never pushed; if a local commit could not + build, say so in its message and make the pushed head build. Verification: . - No test run of any size on Starfire: a "quick" local suite counts. Only diff --git a/references/changelog.md b/references/changelog.md index 1ee8596..5da5443 100644 --- a/references/changelog.md +++ b/references/changelog.md @@ -2,6 +2,14 @@ Record each change to the skill together with the evidence that motivated it. +## 2026-10-27: re-entry triage, second-beating trigger, pushed heads build + +Self, sessions `self-2026-10-27-eureka` and `self-2026-10-27b-eureka`. + +Evidence. A recovery Soul pass found High defects in two cuts whose reports had sat days with no verdict (Bifrost OIDC stale client, Heimdall boot-proof pin); re-entry rehydration did not list reports with no verdict. The "same rule beaten again" step fired twice in one session (boot-proof verdict owner; the C2a claimant rule beaten on claimant, compatible ids and shape) and both times only a structural move fixed it; the step's text read as a mutant-only, late trigger. Hands pushed a non-building commit in four consecutive batches although the brief said "Say in the message which commits don't build", which permits it. + +What changed. `SKILL.md` re-entry adds reports with no verdict and an origin check before trusting a handoff's status words; step 5 says the trigger is the second beating, by mutants or findings. `references/briefs.md` Hands commit rules: build and run the touched test project before every push; pushed heads build. + ## 2026-10-23: worktrees die with their cut Self, session `self-2026-10-23-ag8`.