feat(prepass): --prepass-seed makes the cut a starting point, and K2 says it costs
Q5 = B, bygget som MAALT OPSJON. --prepass-payload gir DEBATTEN et deklarert
kutt og trekker de fire navigatoerverktoeyene; --prepass-seed gir UTFORSKNINGEN
det samme kuttet som utgangspunkt og BEHOLDER verktoeyene.
Nekten M32/F4 staar ORDRETT. B er et nytt flagg, aldri en loesning av den, og
hjemmelen er konsumkontraktens SS 2.2: en skill maa ikke lese «outside what the
payload delivers or explicitly names as reachable». Andre ledd er hele arm B, og
PrepassDeclaration.rest_reachable er det som gjoer de to lesningene skillbare i
ettertid -- paakrevd uten default av cost_baseline_anchoreds grunn, fordi begge
defaults ville loeyet om hvilken arm som leste kuttet.
Soemmene:
admit_payload er EN opptaks-gate (form -> montert base -> tom-leveranse-nekt)
delt av begge doerer; to kopier ville latt en doer slippe inn det den andre
nekter.
render_seed deler header, regel->ANTALL-foldingen og DATA-blokkene med
render_context. Det eneste som skiller dem er avsnittet som sier hva
leseren kan gjoere videre.
explore(seed_context=...) legger kuttet i TASK-MELDINGEN, aldri i prompt:
_finish bygger Mandate.objective av prompt, og en kommisjon med 22 335
tokens utdrag i objektivet er uleselig for den som skrev den. Tom streng gir
en byte-identisk task-melding.
trace_payload(prepass=...) skriver deklarasjonen fra en finally. MAALT baerende
-- den seedede kjoeringen som doede paa en Azure-400 etterlot likevel kuttet
deklarert.
Fem nekter ved navn. --checkpoint-dir baerer en beslutning: en gjenopptatt
etappe kjoerer i en prosess som aldri saa payloaden og ville overskrevet den
parkerte etappens deklarasjon med prepass: null.
--dimension-config er BEVISST ikke nektet (arm A nekter den): maalt bygger
utforskningen navigator_tools(bundle_dirs) UTEN dimensjon, saa aa skope
seedet ville nektet tekst den samme loekka kan aapne et oeyeblikk senere.
MAALT PAA K2 MED LEVENDE MODELL, og maalingen taler MOT aa gjoere B til default:
like-for-like gratis 4 317 -> 227 675 o200k (x 52,7), og betalt er manageren
x 21 paa samme antall prompter. Viktigere enn prisen: den USEEDETE kontrollen
hentet prisskjemaet i fire steg (del-ii-bilag-7-prisskjema/prissammenstilling-
sheet-1.md), mens BEGGE seedede armer lot vaere -- den ene med null verktoeykall
fordi manageren rutet til hypotesisereren i alle tre runder, den andre ved aa
gjette stier ut av kuttets egne konsept-navn og mynte en base-id som ikke finnes.
Erkjennelsen kom (manageren skrev i hver runde at utdragene ikke rakk),
handlingen ikke. Ingen av de 40 svarene brukte ett eneste av kontraktens fem
literaler. NOK 2,78 av taket 5, 0 x 429. Anbefaling skrevet, beslutning ikke
tatt -- den er operatoerens.
Load-bearing maalt: 26 armer, 16 mutasjoner alle roede mot HELE suiten, groenn
kontroll 1493 passed / 5 skipped (fra 1467/5; +26 node-ider, 0 fjernet), golden
demo-transcript.stdout byte-uendret (shasum -a 1 av innholdet =
ea8c534773acdbe41ae68f2c55724d69aaf8be4f).
To armer var GROENNE AV FEIL GRUNN og ble rettet, ikke droppet: tool_calls alene
kan ikke skille «et verktoey ble kalt» fra «basen var aapen», fordi recorderen
appender FOER call_next; og id-enighets-armen maalte den stale digesten i stedet
for id-gaten. Sonden var dessuten feil foer koden var det -- foerste
diskriminator var norsk, og verktoeysvar serialiseres med \uXXXX-escapes.
Avvik, uttalt: implementasjonen ble skrevet FOER testfila. Roedmaalingen er gjort
etterpaa ved aa reversere src/ til HEAD (16 av 24 armer roede), deretter
restaurert med shasum-verifikasjon. Beviset er ekte, rekkefoelgen var ikke.
Rapportert, ikke fikset: ChatClientException (Azure 400, «No tool call found for
function call output») etter tre quick_validate-nekter paa rad -- den ligger
utenfor main()s nekt-tuppel og forlater CLI-en som traceback.
Azure-konfigurasjonen er uendret; endepunktet utledes inline fra az og er aldri
lagret i fil. Ruff + mypy rene.
Maaling: docs/2026-09-07-prepass-mater-q5b-k2.md
Ordre: 20260907T234344Z-9062321009-from-.claude
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
parent
de50764e5c
commit
76b939b3b8
9 changed files with 1474 additions and 42 deletions
303
docs/2026-09-07-prepass-mater-q5b-k2.md
Normal file
303
docs/2026-09-07-prepass-mater-q5b-k2.md
Normal file
|
|
@ -0,0 +1,303 @@
|
|||
# Q5=B — pre-passet MATER utforskningen: `--prepass-seed`, målt på K2 med levende modell
|
||||
|
||||
**Dato:** 2026-09-08 (ordre datert 2026-09-07) · **Ordre:** `20260907T234344Z-9062321009-from-.claude` ·
|
||||
**Beslutning:** `~/.claude/docs/2026-09-07-vurdering-arbeidssystemet.md` rad 0 / § 3 Q5 —
|
||||
**A forblir default, B bygges som MÅLT OPSJON.** ·
|
||||
**Forrige ledd:** `docs/2026-09-07-okf-prepass-i-debatten.md` (kuttet i debatten) og
|
||||
`docs/2026-09-07-syretest-s7-prepass-k2.md` (armene A og C, betalt i økt 98).
|
||||
|
||||
Dette er **både en leveranse og en måling**. Koden er ny og gatet (26 armer, 16 mutasjoner alle
|
||||
røde); tallene under er produsert av kommandoer som står i teksten, og måleoppsettet ligger utenfor
|
||||
treet (`scratchpad/q5b/`, utracket).
|
||||
|
||||
---
|
||||
|
||||
## 0. Hva som ER målt, og hva som IKKE er det
|
||||
|
||||
**Målt her:** at `--prepass-seed` gir utforskningen det deklarerte kuttet som **utgangspunkt** og
|
||||
**beholder** de fire navigatørverktøyene; at deklarasjonen sier `rest_reachable: true` på stdout og
|
||||
i `{run_id}-exploration.json`; at nekten M32/F4 (`--prepass-payload` + `--explore`) står ordrett; at
|
||||
kjøringen uten flagget er byte-uendret. Deretter **tre betalte armer på K2** med levende
|
||||
`gpt-4.1-mini`: én useedet kontroll og **to** seedede kjøringer, med kjent-positiv assertert først i
|
||||
hver.
|
||||
|
||||
**IKKE målt:** at en modell dømmer **bedre** med et seedet kutt. Tre kjøringer på ett spørsmål er
|
||||
ikke et utvalg, og de tre endte av tre ulike grunner (rundetak · rundetak · en Azure-400). Én
|
||||
kjøring er én kjøring; at den seedede atferden gikk i **samme retning to ganger** er sterkere enn
|
||||
én, og fortsatt ikke et utvalg. **Heller ikke målt:** siteringene i stempelet — ingen av de tre
|
||||
armene nådde pipelinen (§ 5), og den seedede armens pris gjør en full kjøring uoppnåelig innenfor
|
||||
taket på NOK 5, hvilket er selve funnet snarere enn et hull i det.
|
||||
|
||||
**Kjent-positiv, kjørt FØRST og `assert`-et i hver eneste betalte kjøring:** rotnivå-listingen på
|
||||
**levert** K2 måler **3 954 tegn / 1 495 o200k-tokens over 629 konseptfiler** — S7a-3s publiserte
|
||||
tall, eksakt. `scratchpad/q5b/live/live_q5b.py` nekter å kjøre videre uten den; utskriften står
|
||||
øverst i hver armlogg.
|
||||
|
||||
---
|
||||
|
||||
## 1. Nekten M32/F4 — hvorfor den ble valgt, skrevet ned FØR den ble rørt
|
||||
|
||||
Ordrett fra `src/portfolio_optimiser/run.py`, slik den sto ved øktstart:
|
||||
|
||||
```
|
||||
run refused: --prepass-payload and --explore cannot be combined (the exploration
|
||||
navigates the whole knowledge base with the same four tools the payload
|
||||
withdraws, so the run as a whole would read far outside the cut it declares)
|
||||
```
|
||||
|
||||
Grunnen i kommentaren over den: utforskningen leser HELE basen med de fire verktøyene og former så
|
||||
mandatet debatten får beskjed om at den ikke må gå utenfor — «that is precisely the ground on which
|
||||
the debate's own tools are withdrawn, one caller over».
|
||||
|
||||
**B opphever ikke dette.** Nekten står, ordrett, og har sitt eget vitne
|
||||
(`test_the_replacing_arm_is_still_refused_with_explore_in_the_same_words`). B er et **nytt flagg**
|
||||
med motsatt oppførsel på den ene aksen nekten handler om: kuttet **erstatter ikke** basen, det er
|
||||
hvor man **begynner**, og verktøyene blir. Kontrakten sier selv at det er lov —
|
||||
`llm-ingestion-okf/docs/consumption-contract.md` § 2.2: en skill må ikke lese «outside what the
|
||||
payload delivers **or explicitly names as reachable**». Andre ledd er hele hjemmelen for arm B, og
|
||||
`PrepassDeclaration.rest_reachable` er det som gjør de to lesningene skillbare i ettertid.
|
||||
|
||||
Navnet: ordren foreslo `--prepass-seed`, og kontrakten antyder ingen bedre. «Seed» er dessuten
|
||||
repoets eget ord for et **bevart utgangspunkt** (`explore(seed_approaches=…)`, § C.6 dør 1).
|
||||
|
||||
---
|
||||
|
||||
## 2. Hva som ble bygget
|
||||
|
||||
| Søm | Hva |
|
||||
|---|---|
|
||||
| `prepass.admit_payload` | ÉN opptaks-gate — form, montert base, tom-leveranse-nekt — delt av BEGGE dører. To kopier ville latt én dør slippe inn det den andre nekter (kø-(p)). |
|
||||
| `prepass.render_seed` | Arm B-renderingen. Deler header, regel→ANTALL-foldingen og DATA-blokkene med `render_context`; **det eneste som skiller dem er avsnittet som sier hva leseren kan gjøre videre.** |
|
||||
| `PrepassDeclaration.rest_reachable` | **Påkrevd uten default** (`cost_baseline_anchored`-regelen: begge defaults ville løyet). Når artefaktet via `declaration_payload`. |
|
||||
| `explore(seed_context=…)` | Kuttet rir i **TASK-MELDINGEN**, aldri i `prompt` — `_finish` bygger `Mandate.objective` av `prompt`, og en kommisjon med 22 335 tokens utdrag i objektivet er uleselig for den som skrev den. Tom streng ⇒ byte-identisk med i dag. |
|
||||
| `trace_payload(prepass=…)` | Deklarasjonen inn i `{run_id}-exploration.json`, skrevet fra `finally`. **Defaulter til `None`** (`skipped_links`-halvdelen: fravær er et ærlig positivt utsagn). |
|
||||
| `run.prepass_notice` | ÉN renderer, to armer. Uten `rest_reachable` ville «8 av 630» sagt det motsatte av sannheten i nøyaktig ett av de to tilfellene. |
|
||||
| Fem nekter | `--prepass-seed` krever `--explore`; refusert med `--prepass-payload` (to motsatte armer), `--portfolio`, `--report` og `--checkpoint-dir`. |
|
||||
|
||||
**`--checkpoint-dir`-nekten er ikke pynt:** en parkert etappe skriver `{run_id}-exploration.json`
|
||||
med deklarasjonen; den GJENOPPTATTE etappen kjører i en prosess som aldri så payloaden og
|
||||
overskriver samme fil med `prepass: null`. En deklarasjon som fordamper halvveis er verre enn en
|
||||
nektet, og den ville gjort det i stillhet.
|
||||
|
||||
**`--dimension-config` er BEVISST ikke nektet** — arm A nekter den. Målt: utforskningen bygger
|
||||
`navigator_tools(bundle_dirs)` **uten** dimensjon, så å skope seedet ville nektet tekst den samme
|
||||
løkka kan åpne med `read_file` et øyeblikk senere. Debatten nedstrøms er skopet som før.
|
||||
|
||||
---
|
||||
|
||||
## 3. Instrumentet, og hva det målte GRATIS før noe ble betalt
|
||||
|
||||
Samme manus, samme base, samme spørsmål, kun flagget skiller:
|
||||
|
||||
```bash
|
||||
scratchpad/prepass-venv/bin/python scratchpad/q5b/live/rehearse.py seed # 227 675 o200k
|
||||
scratchpad/prepass-venv/bin/python scratchpad/q5b/live/rehearse.py plain # 4 317 o200k
|
||||
```
|
||||
|
||||
**19 prompter i begge. 4 317 mot 227 675 o200k-tokens — × 52,7.** 225 518 av de 227 675 er de
|
||||
**fire manager-promptene**: utforskningens deltakere deler ÉN samtalehistorikk, så task-meldingen
|
||||
rir i hver prompt — MAJOR-3-målingen ett lag opp, nå på et kutt i stedet for en base.
|
||||
|
||||
Rendringen selv: `render_seed` = **75 614 tegn / 22 335 o200k**, `render_context` = 75 341 / 22 283.
|
||||
Forskjellen mellom armene er 273 tegn prosa. **Hver manager-prompt bar ~45 000 tokens**, altså
|
||||
kuttet omtrent to ganger — MAF legger task-teksten både i system- og bruker-rollen.
|
||||
|
||||
---
|
||||
|
||||
## 4. Tre betalte armer på K2
|
||||
|
||||
Base `k2-trinn1-20260903`, ref `sha256-tree:4ffd750c…`, 630 konsepter. Payload fra økt 98:
|
||||
**8 levert / 622 holdt tilbake** (`below_k` 261, `no_lexical_match` 359, `over_budget_alone` 2).
|
||||
Spørsmålet er ORDRETT S7as og S7s: `Finn kostnadsbesparelser i Stange skole-anbudet`.
|
||||
|
||||
```bash
|
||||
export PORTFOLIO_FOUNDRY_PROJECT_ENDPOINT=… # utledet INLINE fra `az`, aldri i fil
|
||||
export PORTFOLIO_MODEL_MAP=scratchpad/major2-live/model_map.json
|
||||
export PACE_SECONDS=2
|
||||
scratchpad/prepass-venv/bin/python scratchpad/q5b/live/live_q5b.py {Bplain|Bseed|Bseed2}
|
||||
# argv: K2 --profile azure --docs-dir <base> --bundle-dir <base>
|
||||
# --explore "Finn kostnadsbesparelser i Stange skole-anbudet" --explore-config <fil>
|
||||
# --outbox-dir … --run-id … [+ --prepass-seed <payload> for Bseed/Bseed2]
|
||||
# bounds: max_rounds=3, max_tokens=1 000 000, max_stall_count=2, max_reset_count=1
|
||||
```
|
||||
|
||||
Deployment `gpt-4.1-mini` (GlobalStandard, `capacity` 100, versjon `2025-04-14`) — **målt med
|
||||
`az cognitiveservices account deployment show`, ingen konfig rørt.**
|
||||
|
||||
| Arm | Prompter | Input | Output | NOK | Verktøykall | **Nådde prisskjemaet?** | Slutt |
|
||||
|---|---:|---:|---:|---:|---:|---|---|
|
||||
| **Bplain** (useedet) | 12 | 35 914 | 2 284 | 0,168 | 4 | **JA** — `del-ii-bilag-7-prisskjema/prissammenstilling-sheet-1.md` | rundetak 3/3 |
|
||||
| **Bseed** | 20 | 376 127 | 3 590 | 1,458 | 12 | **NEI** | Azure 400 (§ 6) |
|
||||
| **Bseed2** | 8 | 299 160 | 2 403 | 1,153 | **0** | **NEI** | rundetak 3/3 |
|
||||
|
||||
Per fase (BudgetMiddleware-ledgeren, input-tokens):
|
||||
|
||||
| Rolle | Bplain | Bseed | Bseed2 |
|
||||
|---|---:|---:|---:|
|
||||
| manager (5 prompter i alle tre) | 14 204 | **310 430** | **298 230** |
|
||||
| navigator | 14 975 (6) | 63 237 (10) | — (0) |
|
||||
| hypothesiser | 6 735 (1) | 2 460 (5) | 930 (3) |
|
||||
|
||||
**Manageren alene er × 21,9 og × 21,0 dyrere seedet, på samme antall prompter.**
|
||||
|
||||
### Den useedete armen fant prisskjemaet i fire steg
|
||||
|
||||
```
|
||||
list_bundles → read_bundle(k2-trinn1-20260903)
|
||||
→ read_dir(del-ii-bilag-7-prisskjema)
|
||||
→ read_file(del-ii-bilag-7-prisskjema/prissammenstilling-sheet-1.md)
|
||||
```
|
||||
|
||||
Nøyaktig samme fire steg som S7s arm C (`docs/2026-09-07-syretest-s7-prepass-k2.md` § 4), og
|
||||
prompt 9 er modellens egen oppsummering av prisrammen. Hypotesisereren resonnerte deretter om
|
||||
«tiltransporterte kontrakter» — en retning forankret i tallene den faktisk hadde lest.
|
||||
|
||||
### De seedede armene gjorde det ikke — og de to gjorde det på hver sin måte
|
||||
|
||||
**Bseed2 er den rene:** manageren rutet til **hypothesiser i alle tre runder**. Navigatøren fikk
|
||||
aldri en tur, og null verktøykall ble gjort — mens manageren i hver eneste runde skrev at utdragene
|
||||
«do not explicitly enumerate … costs». Den **så** at kuttet ikke rakk, og gikk likevel ikke og så
|
||||
etter. Hypotesene ble deretter generiske: `Early Integration Testing`, `Modular Component Design`,
|
||||
«prefabricated building components» — ingen av dem forankret i en kostlinje.
|
||||
|
||||
**Bseed vandret, og feil vei.** Sporet (`{run_id}-exploration.json`, S7a-3 pkt. 3 gir stien):
|
||||
|
||||
```
|
||||
quick_validate | renholdstekniske_funksjonskrav ← OPPDIKTET base-id, 3×, alle nektet
|
||||
list_bundles → read_bundle → read_dir(del-ii-bilag-1-2-renholdstekniske-…)
|
||||
→ read_file(…/1-1/1-1.md) ← finnes ikke
|
||||
→ read_dir(…/1-1) → read_file(…/03-01-2023-vask-av-layout.md) ← ALLEREDE LEVERT
|
||||
→ read_file(inbox-del-ii-bilag-7-prisskjema.md) ← finnes ikke
|
||||
→ read_file(del-ii-bilag-7-prisskjema) ← katalog, nektet ved navn
|
||||
→ read_file(del-ii-bilag-7-prisskjema.md) ← finnes ikke
|
||||
```
|
||||
|
||||
Tre ting står her. (1) Hypotesisereren **myntet en base-id av et levert konsepts navn**
|
||||
(`renholdstekniske_funksjonskrav`) og fikk tre nekter på rad, hvorpå MAF sluttet å tillate
|
||||
verktøykall for den forespørselen. (2) Navigatøren gikk inn i katalogen til et konsept den
|
||||
**allerede hadde i prompten** og leste det på nytt. (3) Den prøvde prisskjemaet **tre ganger** og
|
||||
bommet på formen hver gang — den kom aldri på å kalle `read_dir` på katalogen, som er nøyaktig det
|
||||
steget den useedete armen tok.
|
||||
|
||||
### Nevnerne: hva modellen sa om dem
|
||||
|
||||
**Ingen av de tre armene brukte ett eneste av kontraktens fem literaler** (`[unread]`,
|
||||
`[sourced-not-sufficient]`, `[unverifiable-from-bundle]`, `extracted`, `derived`), og ingen nevnte
|
||||
`630`, `622` eller `8`. Nevner: 40 svar over tre armer. Kontrast: S7s arm A — kuttet i **debatten**,
|
||||
verktøyene **trukket** — brukte `[sourced-not-sufficient]` ordrett (1 i renderingen → 1 i svaret).
|
||||
|
||||
Manageren sa det likevel, i sine egne ord og i hver runde: «without explicit enumeration or direct
|
||||
[cost data]». **Erkjennelsen kom; handlingen kom ikke.**
|
||||
|
||||
### Refererte konsept-id-er ∩ levert
|
||||
|
||||
**0 av 0 i Bplain, 0 av 4 og 0 av 2 i de seedede.** Ingen modell refererte til en konsept-id i
|
||||
prosa i det hele tatt; de fire/to «id-lignende strengene» i de seedede armene er vanlige
|
||||
skråstreker i prosa (`cleaning/maintenance`, `material/use`). Nevneren er skrevet ned fordi
|
||||
tellingen ellers ville lest som et funn om levert-mengden.
|
||||
|
||||
---
|
||||
|
||||
## 5. Siteringene i stempelet: IKKE målt, og hvorfor
|
||||
|
||||
Alle tre armene stoppet i utforskningen — to på rundetaket, én på en 400 — så ingen mandat ble
|
||||
evaluert, ingen `SavingsProposal` ble bygget og intet `ProvenanceStamp` finnes å telle siteringer i.
|
||||
Å heve rundetaket for den useedete armen ville kostet ~NOK 0,3; for en **seedet** arm anslår de
|
||||
målte 60–80k input-tokens per manager-prompt ~NOK 3,2, mot NOK 2,22 igjen av taket. **Det er ikke
|
||||
et hull i målingen, det er målingen:** per-prompt-prisen på et seedet utforskningskutt gjør en full
|
||||
pipeline-kjøring uoverkommelig innenfor det taket ordren satte.
|
||||
|
||||
---
|
||||
|
||||
## 6. Azure-400-en i Bseed — rapportert, ikke fikset
|
||||
|
||||
```
|
||||
ChatClientException: Error code: 400 — No tool call found for function call output
|
||||
with call_id call_AyeuYJmqvmmej9utu361Phtt
|
||||
```
|
||||
|
||||
Sekvensen er målt: tre `quick_validate`-nekter på rad → MAF melder «Maximum consecutive function
|
||||
call errors reached (3). Stopping further function calls for this request» → samtalen inneholder
|
||||
et funksjonskall-**resultat** uten sitt kall → Responses-APIet avviser den. Feilen kommer fra
|
||||
transporten, ikke fra denne ordrens kode, og den ville forlatt CLI-en som **traceback**
|
||||
(`ChatClientException` er ikke i `main()`s nekt-tuppel). **Utenfor ordren; rapportert.**
|
||||
|
||||
---
|
||||
|
||||
## 7. Kostnad
|
||||
|
||||
Listepris, Azure Retail Prices API (`api-version=2023-01-01-preview`, `currencyCode='NOK'`,
|
||||
`armRegionName=eastus`), **hentet på nytt 2026-09-08**: input **NOK 0,003734 / 1K**, output
|
||||
**NOK 0,014936 / 1K** — identiske med dem økt 98 målte.
|
||||
|
||||
| Kjøring | Prompter | Input | Output | NOK |
|
||||
|---|---:|---:|---:|---:|
|
||||
| Bplain | 12 | 35 914 | 2 284 | 0,168 |
|
||||
| Bseed | 20 | 376 127 | 3 590 | 1,458 |
|
||||
| Bseed2 | 8 | 299 160 | 2 403 | 1,153 |
|
||||
| **SUM** | **40** | **711 201** | **8 277** | **2,779** |
|
||||
|
||||
**NOK 2,78 — 56 % av taket på NOK 5. 429-svar: 0.** Største enkeltkall: 80 713 input-tokens
|
||||
(Bseed2s siste manager-prompt).
|
||||
|
||||
---
|
||||
|
||||
## 8. Anbefaling — beslutningen er operatørens
|
||||
|
||||
**Målingen peker på A som default, og på B som en opsjon med et smalt bruksområde.** Grunnlaget er
|
||||
tre tall og én atferd:
|
||||
|
||||
1. **Prisen.** × 52,7 like-for-like gratis, × 21 på manageren betalt. Kuttets tekst rir i hver
|
||||
prompt fordi deltakerne deler én historikk — det er MAJOR-3-formen, og den gjelder et kutt like
|
||||
fullt som en base.
|
||||
2. **Effekten på navigasjonen.** Den useedete armen gikk og hentet prisskjemaet i fire steg; begge
|
||||
seedede armer gjorde det ikke, den ene uten å kalle et eneste verktøy. **Et utgangspunkt ble en
|
||||
endestasjon** — i én kjøring fordi manageren aldri rutet til navigatøren, i den andre fordi
|
||||
modellen gjettet stier ut av kuttets egne konsept-navn.
|
||||
3. **Erkjennelsen uten handlingen.** Manageren skrev i hver runde at utdragene ikke rakk, og
|
||||
handlet ikke på det. Renderingen sier eksplisitt «OPEN THE BASE with your navigation tools»; det
|
||||
var ikke nok. Om en skarpere formulering endrer dette er **ikke målt**.
|
||||
|
||||
**Der B likevel kan være riktig:** når kuttet er *ment* å være svaret og navigasjonen bare er en
|
||||
sikkerhetsventil — små korpus, eller et pre-pass som er kjørt for nøyaktig dette spørsmålet av
|
||||
noen som vet det. Da kjøper man en deklarert nevner uten å miste utveien. På et 630-konsept-korpus
|
||||
med et leksikalsk kutt kjøpte den her verken det ene eller det andre.
|
||||
|
||||
**Ikke konkludert:** at A er bedre enn B *generelt*. Tre kjøringer, ett spørsmål, ett korpus, én
|
||||
modell.
|
||||
|
||||
---
|
||||
|
||||
## 9. Ærlighets-grenser, uttalt
|
||||
|
||||
- **Ikke-determinisme.** Tre kjøringer er ikke et utvalg. De to seedede gikk i samme retning; det
|
||||
gjør retningen mer troverdig og ikke etablert.
|
||||
- **De to seedede armene endte ulikt** (400 vs rundetak), så «nådde ikke prisskjemaet» er ikke
|
||||
målt mot samme sluttbetingelse i begge.
|
||||
- **Arm A og arm C er GJENBRUKT**, ikke re-kjørt: tallene står i
|
||||
`docs/2026-09-07-syretest-s7-prepass-k2.md` § 4 og ble betalt i økt 98. De er dessuten
|
||||
**debatt**-armer, mens B er en **utforskning** — sammenligningen på tvers gjelder samme base,
|
||||
samme spørsmål og samme modell, aldri samme fase.
|
||||
- **Prisene i K2-fixturen er syntetiske** (MAJOR-4-arven); det påvirker ikke tokenmålingene.
|
||||
- **Ingen `ProvenanceStamp` finnes i noen arm** (§ 5), så siteringene er ikke talt.
|
||||
- **Hosting-flaten er urørt.** Feltet er i ingen av de tre settene, så den generiske
|
||||
`unknown field(s)`-400-en svarer, og Fase 4es to halvdeler står — gatet av en testarm, ikke av en
|
||||
redigering.
|
||||
|
||||
---
|
||||
|
||||
## 10. Verifiseringslogg
|
||||
|
||||
| Påstand | Hvordan verifisert |
|
||||
|---|---|
|
||||
| Nekten M32/F4 står ordrett | `test_the_replacing_arm_is_still_refused_with_explore_in_the_same_words` + kilden sitert i § 1 |
|
||||
| Kontraktens § 2.2 hjemler arm B | `llm-ingestion-okf/docs/consumption-contract.md`, lest i denne økten |
|
||||
| Utforskningen er uskopet | `explore.fresh_exploration_workflow` → `navigator_tools(bundle_dirs)` uten `dimension` |
|
||||
| Kjent-positiv 3 954 / 1 495 / 629 | `assert` i `live_q5b.py`, kjørt først i alle tre betalte armer |
|
||||
| Deployment/kapasitet urørt | `az cognitiveservices account deployment show` (GlobalStandard, 100, `2025-04-14`) |
|
||||
| NOK-prisene | Azure Retail Prices API, hentet 2026-09-08 |
|
||||
| Prisskjemaet nådd/ikke nådd | `{run_id}-exploration.json` → `tool_calls[].path` |
|
||||
| Nevnerne uten kontrakt-literaler | tokenskann over alle 40 svar |
|
||||
| Gaten er load-bearing | 16 mutasjoner, alle røde mot HELE suiten; grønn kontroll **1493 passed / 5 skipped** |
|
||||
| Golden byte-uendret | `shasum -a 1 tests/golden/demo-transcript.stdout` = `ea8c534773acdbe41ae68f2c55724d69aaf8be4f` (INNHOLD, ikke git-blob) |
|
||||
| Suiten er et strengt supersett | `comm -23` node-id-er før/etter: **0 fjernet, 26 lagt til** |
|
||||
Loading…
Add table
Add a link
Reference in a new issue