docs(plan): P4 pkt. 5, 2 og 1 lukket — og pinningen i pkt. 3 har fått sin egen måling
Punkt 5 (entry points), 2 (stderr) og 1 (fresh-clone) er merket ✔ med en UTFØRT-blokk som bærer beslutningen og belegget, ikke bare utfallet. Punkt 2 var øktas åpne beslutning, og den ble avgjort ved måling framfor preferanse: rund-taks-linjene dempes, ExperimentalWarning-paret gjør det ikke — de fyrer før simulation i det hele tatt importeres, så demping ville krevd et warnings-filter inne i bibliotekpakken. Punkt 3 får en konsekvens fra fresh-clone-målingen: fasiten kan ikke være literal. De to gjenstående stderr-linjene bærer en absolutt sti inn i site-packages, som er ulik i klon og arbeidskopi — normaliser på BÅDE den og po-sim-suffikset. Pinnet stderr blir fire linjer, ikke to. [skip-docs] Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01C2bxLcCRguxXzpM4priTMn
This commit is contained in:
parent
ab7f45aa95
commit
7acd331e31
1 changed files with 41 additions and 12 deletions
|
|
@ -207,14 +207,12 @@ et planlagt utfall, ikke en krise — generalprøve nr. 0 mandag har allerede ve
|
|||
demoen denne varianten (call-site-valg i `main()` — samme søm GO-utfallet uansett bruker).
|
||||
**Faller den:** fallback = uforankret reserve + den gamle NO-GO-setningen — ingenting tapt mot
|
||||
planen slik den sto før revisjonen.
|
||||
1. **Fresh-clone-kriterium:** klon til scratch → `uv sync` → kjør simuleringen → diff mot
|
||||
arbeidskopiens output. Beviser «last ned → kjør»-påstanden. **Kjøres ETTER pkt. 5**
|
||||
(`[project.scripts]`), så målingen dekker den endelige install-flaten (I3).
|
||||
2. **Stderr: FØRST beslutningen, SÅ pinningen (I2).** Dempingen er besluttet JA (§0 Spor 2) og
|
||||
utføres FØR pinning. Målt 08-07: stderr er seks linjer — fire støylinjer + blanklinje + den
|
||||
bevisst ikke-deterministiske `arbeidskopi:`-linja (`simulation.py:531-534`), som aldri kan stå
|
||||
ubehandlet i en byte-fasit. Pin deretter: «stderr = kun `arbeidskopi:`-linja (+ blank),
|
||||
normalisert på prefiks»; nye advarsler etter subtree-pull fanges fortsatt.
|
||||
1. **Fresh-clone-kriterium ✔ (2026-08-09, `ab7f45a`)** — se UTFØRT-blokka under punkt 5.
|
||||
2. **Stderr: FØRST beslutningen, SÅ pinningen (I2) ✔ (2026-08-09, `ab7f45a`)** — beslutningen er
|
||||
tatt og målt; se UTFØRT-blokka under punkt 5. **Konsekvens for pinningen (pkt. 3):** fasiten kan
|
||||
IKKE være literal — de to gjenstående `ExperimentalWarning`-linjene bærer en absolutt sti inn i
|
||||
`.venv/…/site-packages`, som er ulik i fersk klon og arbeidskopi (målt). Normaliser på BEGGE:
|
||||
site-packages-stien OG `po-sim-`-suffikset. Pinnet stderr er da fire linjer, ikke to.
|
||||
3. **Golden-transkript:** sjekk inn demo-outputen som fasit-fil og diff mot den — selvidentitet
|
||||
(kriterium 6) fanger ikke-determinisme, men ikke regresjon mellom onsdag og torsdag.
|
||||
**Transkriptet er også demoens abortsti** (gjort eksplisitt i P4.5).
|
||||
|
|
@ -224,10 +222,41 @@ et planlagt utfall, ikke en krise — generalprøve nr. 0 mandag har allerede ve
|
|||
(fallback hvis pkt. 0 faller: den gamle setningen «kostnads-forankringen er ikke aktiv i
|
||||
reserve-eksemplet»). Frø-setningen står: «én av de to tidligere dommene i Kjøring B fulgte med
|
||||
eksempelet — den andre er den demoen lærte».
|
||||
5. **`[project.scripts]` (flyttet HIT fra S1.c, I3):** entry point inn i `pyproject.toml`
|
||||
(`grep -n scripts pyproject.toml` → 0 treff i dag) + `uv sync` → deretter pkt. 1. En
|
||||
install-flate som endres på frysedagen ville krevd ny fresh-clone-måling ETTER frys —
|
||||
selvmotsigende.
|
||||
5. **`[project.scripts]` (flyttet HIT fra S1.c, I3) ✔ (2026-08-09, `ab7f45a`)** — se UTFØRT-blokka
|
||||
rett under.
|
||||
|
||||
**UTFØRT — punkt 5, 2 og 1 (2026-08-09, `ab7f45a`). 775 → 785 passed / 4 skipped.**
|
||||
|
||||
*Punkt 5:* to konsoll-kommandoer — `portfolio-optimiser` (`run:main`) og `portfolio-optimiser-demo`
|
||||
(`simulation:main`). **Bevisst to av fem `main()`:** `costsim`/`hitl`/`preflight` beholder
|
||||
`-m`-formen; hvert navn her er et navn frysen må bære. Testen leser den INSTALLERTE distribusjonens
|
||||
metadata, ikke TOML-en — en `[project.scripts]`-linje som aldri er `uv sync`-et er en påstand, ikke
|
||||
en kommando. Målt: stdout er byte-identisk mellom `uv run portfolio-optimiser-demo` og
|
||||
`uv run python -m portfolio_optimiser.simulation`.
|
||||
|
||||
*Punkt 2 — den åpne beslutningen, avgjort ved måling:* **rund-taks-linjene dempes, de to
|
||||
`ExperimentalWarning`-linjene gjør det ikke.** Loggeren er lest ut av MAFs kilde
|
||||
(`logger.warning` i `_base_group_chat_orchestrator`), ikke gjettet; filteret er nøklet på MELDINGEN
|
||||
og installeres i `main()`, aldri ved import. **Hvorfor de to andre ikke dempes:** de fyrer mens
|
||||
`portfolio_optimiser/__init__.py` importerer `run` → `agent_framework` — alltid FØR `simulation` sin
|
||||
egen importblokk, under BEGGE kjøreformer. Å dempe dem ville krevd et warnings-filter inne i
|
||||
bibliotekpakken, altså at rammeverket bestemmer hva MAF får si til enhver konsument. En wrapper bak
|
||||
konsoll-kommandoen ble avvist av en andre grunn: de to kjøreformene ville da skrevet ULIK stderr, og
|
||||
en byte-fasit ville pinnet kommandoen i stedet for programmet. **stderr 6 → 4 linjer.**
|
||||
*Første implementasjon ble FJERNET etter måling:* en scoped mute rundt `simulation`s egen
|
||||
`agent_framework`-import kan aldri fyre (pakken har allerede importert den) — en grønn-men-død søm.
|
||||
|
||||
*Punkt 1 — fresh-clone, målt mot `ab7f45a`:* klon fra `origin` → `uv sync` → `uv run
|
||||
portfolio-optimiser-demo`. **stdout byte-identisk** med arbeidskopien; stderr identisk normalisert
|
||||
på site-packages-sti + `po-sim-`-suffiks. READMEens egen verifikasjon kjørt i klonen: **785 passed /
|
||||
4 skipped**. *(Merk: `open/`-speilet står fortsatt på `520e7412` = `v0.1.0` — publisering dit er
|
||||
S1.c onsdag, ikke en del av denne målingen.)*
|
||||
|
||||
**Load-bearing MÅLT mot HELE suiten, fem mutasjoner alle røde + grønn kontroll:** fjern
|
||||
`[project.scripts]` · typo i target · detach `main()`-kallet · la filteret droppe alt · installer
|
||||
filteret ved import. **Typo-mutasjonen felte en TEST:** resolve-asserten resolverte det FORVENTEDE
|
||||
targetet mot seg selv; den leser nå det distribusjonen faktisk installerer. Fjerde gang på fem økter
|
||||
at mutasjonsmålingen feller testen, ikke koden.
|
||||
|
||||
**UTFØRT — punkt 0 (2026-08-09).** `materialize_anchored_bundle` kopierer reserven og legger til
|
||||
`cost-baseline.json` utenfor `shared/`; `main()` kjører den varianten, og hele demoløpet er kjørt
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue