docs(ms-ai-architect): R11 §9.3 — idx 19 er en innsnevring, ikke en ratifikasjon; skår står på 1 av 46 [skip-docs]

Retter en overpåstand i forrige commit. §9.3 skrev "verifisert skår: 2 av 46
(idx 17 + idx 19)". Idx 19 hadde cond2 = human_must_confirm; å telle den ville
vært å forfremme en human_must_confirm til bekreftende på sjekkerens egen
autoritet — nøyaktig den retningen ratifikasjonsgaten finnes for å hindre.

Asymmetrien er poenget: idx 14, 18 og 26 var også cond2 = confirm, og der
BEKREFTET sveipet tvilen (trygg retning). Idx 19 er det ene tilfellet som ville
gått motsatt vei, og den flyttingen er ikke sveipets å gjøre.

Hele-fila-sjekken INNSNEVRER idx 19s cond2-innvending til et utelatelses-spørsmål
(misleder allerede eksisterende taushet en leser?) — det er ratifikatorens kall.
Idx 19 = sterkeste kandidat for neste ratifikasjon, ikke medlem av den
verifiserte klassen.

Skår: 1 av 46 (idx 17). Sveipet fjernet ingen og la til ingen; det korrigerte fire
rader.

Navngir også idx 36 som det andre null-leksikalsk-overlapp-funnet (grep returnerer
ingenting; linje 310 kom fra lesning) — reproduserbarhet er poenget med avsnittet.
This commit is contained in:
Kjell Tore Guttormsen 2026-08-03 20:21:55 +02:00
commit 43f0a5e4e9

View file

@ -456,7 +456,9 @@ bill on idx 8 — and silently on others.
**The grep is necessary and not sufficient.** Two of the findings below have no **The grep is necessary and not sufficient.** Two of the findings below have no
lexical overlap with the deleted tokens at all. Idx 14's surviving claim is the lexical overlap with the deleted tokens at all. Idx 14's surviving claim is the
Norwegian `automatisk` restating a deleted English `Automatically`; no token Norwegian `automatisk` restating a deleted English `Automatically`; no token
search finds it. Every candidate was therefore also read in place — the enclosing search finds it. Idx 36's deleted `indiscriminate` appears nowhere else in its
file — the grep returns nothing at all — and the finding at line 310 came from
reading the section, not from a hit. Every candidate was therefore also read in place — the enclosing
section around `real_line`, plus every hit line with context — and asked the section around `real_line`, plus every hit line with context — and asked the
second question the grep cannot: *does the surviving text now claim something second question the grep cannot: *does the surviving text now claim something
broader or narrower than before, and does anything else in the file depend on the broader or narrower than before, and does anything else in the file depend on the
@ -525,18 +527,27 @@ without the remainder becoming false:
acceptable, or whether 310 needs the same qualifier, is a judgement about the acceptable, or whether 310 needs the same qualifier, is a judgement about the
file — and a companion edit at 310 exceeds the single-locator O2 envelope. file — and a companion edit at 310 exceeds the single-locator O2 envelope.
**What this does to the score.** The sweep settles the whole-file dimension of **What this does to the score — nothing, and that is deliberate.** The sweep
cond 2 for all 15: affirmative for 9, negative for 4, operator for 2. It settles settles the whole-file dimension of cond 2 for all 15: affirmative for 9, negative
nothing about cond 3, which stands at `human_must_confirm` for ten of them. Only for 4, operator for 2. It settles nothing about cond 3, which stands at
one candidate moves into the both-conditions-affirmative class: **idx 19**, whose `human_must_confirm` for ten of them.
cond-2 doubt was itself whole-file-shaped (the classifier worried that the
preceding code sample's silence about explicit vector indexes might read as "no
setup needed") and whose cond 3 the classifier already marked `yes`. The silence
predates the deletion, and the deletion removes an affirmative false claim, so the
remainder asserts nothing the file denies.
**Verified score: 2 of 46 — idx 17 and idx 19.** Up from 1, and by a different **The verified score remains 1 of 46 (idx 17).** The temptation here is idx 19,
route than the classifier's original 2: idx 8 left the class and idx 19 entered it. and it should be named rather than acted on. Its cond-2 doubt was itself
whole-file-shaped — the classifier worried that the preceding code sample's
silence about explicit vector indexes might read as "no setup needed" — and its
cond 3 the classifier already marked `yes`. The whole-file check finds no
contradiction: the silence predates the deletion, and the deletion removes an
affirmative false claim. That **narrows** the objection; it does not resolve it.
What is left is an omission judgement — does pre-existing silence mislead a reader
of this file? — and that is the ratifier's call, not the sweep's. Counting idx 19
would mean promoting a `human_must_confirm` to affirmative on the checker's own
authority, which is the one direction this gate exists to prevent. Note the
asymmetry: idx 14, 18 and 26 were also `cond2 = confirm`, and for those the sweep
*confirmed* the doubt. Moving a candidate the other way is not the sweep's to do.
**Idx 19 is therefore the strongest new candidate for ratification** — not a
member of the verified class.
**What the sweep says about the method.** The classifier's cond-2 column was **What the sweep says about the method.** The classifier's cond-2 column was
wrong in one direction only. Of the eleven candidates it marked `cond 2 = yes`, wrong in one direction only. Of the eleven candidates it marked `cond 2 = yes`,
@ -655,10 +666,12 @@ which overrides it:
without the remainder becoming false. without the remainder becoming false.
- **Clean on the whole-file dimension:** idx 7, 9, 17, 19, 28, 31, 38, 40, 42, 45. - **Clean on the whole-file dimension:** idx 7, 9, 17, 19, 28, 31, 38, 40, 42, 45.
Cond 3 is still `human_must_confirm` for most of them; clean here means cond 2 Cond 3 is still `human_must_confirm` for most of them; clean here means cond 2
only. only. **Idx 19 is a narrowing, not a resolution** — its cond 2 stands at
`human_must_confirm`, with the residual reduced to an omission question (§9.3).
**The verified score is 2 of 46 — idx 17 and idx 19**, not the classifier's **The verified score remains 1 of 46 — idx 17 alone.** The sweep removed no
original 2 (idx 8 left the class, idx 19 entered it). member and added none; it corrected four rows and left idx 19 as the strongest
candidate for the next ratification.
Reproduce the tally and the machine checks: Reproduce the tally and the machine checks:
`node scripts/kb-eval/check-o2-returns.mjs`. `node scripts/kb-eval/check-o2-returns.mjs`.