portfolio-optimiser/docs/plan
Kjell Tore Guttormsen c50fd2edb4 docs(P4.5): §5s frys-gate ved X kunne aldri feile
Punkt 5 kjørte frys-gaten mot <X> rett etter at punkt 4 leste X som
`git rev-parse HEAD`. På det tidspunktet ER X lik HEAD, og ingenting er
committet imellom — så <X>..HEAD er tom uansett hva treet inneholder.

Målt, ikke resonnert: med en endret src/-fil liggende i arbeidstreet
(` M src/portfolio_optimiser/__init__.py`) sto gaten fortsatt tom. Den
måler ingen tilstand.

Økt 7s begrunnelse for to kjøringer sa «den første måler en tilstand som
ikke lenger finnes når taggen settes». Det er for snill: den finner ingen
tilstand å måle. Dette er repoets egen defektklasse, anvendt på repoets
egen runbook — «en gate som bare kan bli grønn beviser ingenting» er
standarden hver load-bearing test måles mot.

Alvorlighet, uttalt presist: falsk trygghet, ikke falsk grønt. Punkt 3
(rent tre) og punkt 9 (etter Y og Z) dekker den faktiske risikoen, så
ingenting ved onsdagen blir rødt av dette. Men en gate operatøren ser
grønn ved X kan under tidspress gjøre punkt 9 til en gjentakelse man
hopper over — samme argument som ga §6 steg 1 sin `--untracked-files=no`.

Punktet er BEHOLDT, ikke fjernet: fjerning renummererer 6→5 … 11→10 og
bryter fem kryssreferanser (§0s «punkt 10» og «punkt 6», punkt 9s
tilbakereferanse, STATEs «elleve punkter», planens ons-12-rad) — på
frys-eve. I stedet har punkt 5 fått en arm den kan feile på:

    git diff --stat c255662..HEAD -- . ':(exclude)docs/' ':(exclude)CHANGELOG.md'

→ ikke tomt (målt: 6 filer). Den beviser at kommandoen kan diskriminere
FØR punkt 9 hviler på at den er tom. Uten den ville en feilskrevet
':(exclude)…' eller en quoting som ikke overlevde skallet (MULTIOS,
08-09) gitt grønn gate på feil grunnlag, og et utestet tre tagget.
c255662 ligger fast bak både Y og Z, så armen forblir ikke-tom uansett
hvor HEAD står onsdag.

To rettelser i samme pass, begge nødvendige for at teksten ikke skal lyve
på en ny måte:

- punkt 9 sa «Punkt 5 målte en tilstand som ikke lenger finnes» — under
  det nye punkt 5 er det galt på en ny måte, siden punkt 5 ikke målte noe
- §5s ingress sa «Fila skrives ÉN gang onsdag (punkt 6)», mens punkt 4
  instruerer om å skrive X inn i §0. Den bærende egenskapen er at
  ingenting skrives ETTER Y, ikke antallet skrivinger — nå sagt slik.
  Punkt 4 er operasjonelt riktig: å bære en hash i hodet gjennom tre
  gate-kjøringer er verre.

Begge gate-kommandoene er EKSTRAHERT LITERALT fra runbooken og kjørt
(ikke gjenskapt for hånd — repoets MULTIOS-lærdom): arm 1 tom, arm 2
seks filer.

Målt: utfyllings-gaten 2 · §5 elleve punkter · §0/§1/§2/§3/§4/§6/vedlegg
byte-urørt mot 24b5ed2 (kun §5 endret, så økt 9s 67 målinger av §2 står) ·
planens kalender-rader 3 usiterte pipes · frys-gaten mot HEAD TOM ·
810 passed / 4 skipped · ruff + format + mypy rene.

Pre-flighten er re-målt HELT på 24b5ed2, ikke arvet fra 4b9e5d9:
stale tag 0/0 · [Unreleased] 1, null link-refs · frys-gaten d0e8bb0..HEAD
TOM og diskriminerende (c255662..HEAD = 6 filer) · demo exit 0, golden-diff
TOM, 61 linjer, K1 distinkt 8 / linjer 9.

Åttende defekt i denne dokumentfamilien på åtte økter. Ny klasse: ikke
«feil tidspunkt» og ikke «implisitt steg», men en gate hvis utfall var
avgjort av sin egen plassering i sekvensen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0192WLzngWK5aFDYpkXWuLVh
2026-08-11 21:51:23 +02:00
..
2026-06-23-incremental-plan.md docs: add cost-discipline + 90% principle as locked decisions (D5, D6) 2026-06-23 22:11:48 +02:00
2026-06-26-maalbilde-agentic-loop.md docs(maalbilde): konsolidert agentisk-loop baseline + OKF-kontekstarkitektur 2026-06-26 20:56:14 +02:00
2026-07-02-sesjonsplan.md docs(plan): session-by-session execution plan from the 2026-07-02 status analysis 2026-07-02 17:11:10 +02:00
2026-07-03-maalbilde-ingest-lag.md docs(plan): målbilde + gated sesjonsplan for ingest-programmet 2026-07-03 13:45:14 +02:00
2026-07-03-program-brief-ingest-konnektorer.md docs(plan): program-brief for ingest-lag — tools/konnektorer mot reelle datakilder 2026-07-03 11:24:24 +02:00
2026-07-03-sammenligningsprotokoll.md docs(plan): S3 — comparison protocol (pinned ref, metrics, liveness asymmetry) 2026-07-03 01:10:05 +02:00
2026-07-03-sesjonsplan-ingest.md docs(plan): ingest-rammer — Opus 4.8 xhigh alle økter, ingen Fable 5 2026-07-04 17:17:09 +02:00
2026-07-06-reell-kjoring-analyse-plan.md docs(plan): utrulling D-F–D-I — sesjonsplan (D-F–D-I i §2, S3.5/S3.6/S5.4, graf+T0), roadmap-revisjonsblokk, commons-amendment-utkast (Step-1-analyse: NEI → minimal amendment), toolkit-repo-brief 2026-07-15 05:29:41 +02:00
2026-07-10-sesjonsplan-fase2-6.md docs(repo): meet the org repo-standard gate — 0 ERROR 2026-08-03 21:56:19 +02:00
2026-07-14-commons-amendment-utkast.md docs(plan): utrulling D-F–D-I — sesjonsplan (D-F–D-I i §2, S3.5/S3.6/S5.4, graf+T0), roadmap-revisjonsblokk, commons-amendment-utkast (Step-1-analyse: NEI → minimal amendment), toolkit-repo-brief 2026-07-15 05:29:41 +02:00
2026-07-14-revisjonspakke-DF-DI.md docs(plan): utrulling D-F–D-I — sesjonsplan (D-F–D-I i §2, S3.5/S3.6/S5.4, graf+T0), roadmap-revisjonsblokk, commons-amendment-utkast (Step-1-analyse: NEI → minimal amendment), toolkit-repo-brief 2026-07-15 05:29:41 +02:00
2026-07-14-toolkit-repo-brief.md docs(plan): utrulling D-F–D-I — sesjonsplan (D-F–D-I i §2, S3.5/S3.6/S5.4, graf+T0), roadmap-revisjonsblokk, commons-amendment-utkast (Step-1-analyse: NEI → minimal amendment), toolkit-repo-brief 2026-07-15 05:29:41 +02:00
2026-07-16-llm-ingestion-guard-inclusion.md feat(ingest): P2/S1.b — innholdsgaten står, rundt materialize og ikke i den 2026-08-09 22:58:00 +02:00
2026-08-06-demo-uke-plan.md feat(step5): the falsification that informed the next hypothesis now leaves the loop 2026-08-06 15:12:06 +02:00
2026-08-06-intensjons-qa.md docs(qa): the four decisions the QA surfaced, with what constrains them 2026-08-06 13:20:52 +02:00
2026-08-07-planrevisjon-prompt.md docs(plan): six objections to the week plan, as a prompt the next session must measure before acting 2026-08-07 16:39:42 +02:00
2026-08-09-egnethetsreview-plan.md docs(P4.5): §5s frys-gate ved X kunne aldri feile 2026-08-11 21:51:23 +02:00
2026-08-09-fable-egnethetsreview-prompt.md docs(plan): the Fable prompt, with the feature set as its main track and quota as its output 2026-08-06 20:01:53 +02:00
2026-08-09-innholdsgate-og-aerlighet.md feat(ingest): P2/S1.b — innholdsgaten står, rundt materialize og ikke i den 2026-08-09 22:58:00 +02:00
2026-08-12-demo-runbook.md docs(P4.5): §5s frys-gate ved X kunne aldri feile 2026-08-11 21:51:23 +02:00