docs(P4.5): punkt 5s nye arm hadde tvetydig failure-mode

Armen mot c255662 ble lagt til i c50fd2e for å bevise at frys-gaten kan
diskriminere. Men den fortalte ikke onsdagens operatør hvordan man skiller
de to måtene den kan svikte på — og begge ville stoppet sekvensen på en
enveis-dag:

- stille tomt  = pathspec-en er ødelagt (det armen finnes for)
- fatal: bad revision = hashen er feilskrevet

MÅLT, ikke antatt:

    $ git diff --stat deadbeef..HEAD -- . ':(exclude)docs/' ':(exclude)CHANGELOG.md'
    fatal: bad revision 'deadbeef..HEAD'

Git roper altså på feil hash. En tom utskrift er derfor ALDRI «feil hash»,
og det står nå i punktet — så «ikke gå videre før armen er ikke-tom» kan
handles på uten å gjette.

Samme klasse som defekten c50fd2e lukket, ett nivå ned: en gate hvis
utfall er tvetydig blir under tidspress resolvert ved gjetning. c255662 er
nå load-bearing i runbooken, så hashen navngis i selve feilbeskrivelsen.

Målt: utfyllings-gaten 2 · §5 elleve punkter · frys-gaten mot HEAD TOM ·
kun §5 endret. Ingen suite-kjøring: identisk innholdsklasse som c50fd2e,
der 810/4 + ruff + format + mypy allerede ble målt rene.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0192WLzngWK5aFDYpkXWuLVh
This commit is contained in:
Kjell Tore Guttormsen 2026-08-11 21:57:06 +02:00
commit 1d30a47e68

View file

@ -253,6 +253,10 @@ til **hakene** — de er det eneste som ellers ville havnet i fila etter `Y`.
`':(exclude)…'`, eller quoting som ikke overlevde skallet (repoets MULTIOS-lærdom: en kommando
som ser riktig ut kan lyve). Punkt 9 ville da vært grønn på feil grunnlag, og du ville tagget
et utestet tre. **Ikke gå videre før den andre armen er ikke-tom.**
**De to måtene armen kan svikte på ser IKKE like ut, og det er med vilje:** *stille tomt* =
pathspec-en er ødelagt (det er dette armen finnes for). *`fatal: bad revision`* = du bommet på
hashen — den er `c255662`, målt ikke-tom 08-11. En tom utskrift er altså aldri «feil hash»;
da hadde git ropt.
- [ ] Runbooken fylt ut (§0s to felt) + `grep -n '<<[A-ZÆØÅ-]*>>' docs/plan/2026-08-12-demo-runbook.md`
→ TOMT — **og så `git commit`. Den commiten ER `Y`.** Uten den er runbooken en ucommittet
endring resten av sekvensen ikke kan se: frys-gaten (punkt 5 og 9) ekskluderer `docs/`, så den