docs(ms-ai-architect): R11 §9.2 — cond2-rekkevidden er en uratifisert forgrening, ikke en måling [skip-docs]

This commit is contained in:
Kjell Tore Guttormsen 2026-08-03 17:59:08 +02:00
commit 03caa72d58

View file

@ -368,7 +368,26 @@ a now-trailing colon, and the `**Verified** (Microsoft Learn - Enable semantic
caching for LLM APIs)` stamp on line 258 afterwards stamps only the direction
statement. Neither makes the remainder false.
**idx 8 — cond 2 does not hold, and the candidate is not ratifiable as written.**
**idx 8 — not ratifiable as written, under either reading of cond 2 — but the
reason and the remedy differ, and choosing between them is an operator call.**
First, the fork, because everything below depends on it. Cond 2 says the
remainder must not be misleading. **Its scope was never fixed:**
- **Broad reading** — misleading *to a reader of the file*. Then the rest of the
file is in scope, and a remainder that contradicts a passage seventy lines
down fails.
- **Narrow reading** — misleading *as a statement of what the source grounds*.
Then only the edited passage is in scope, and a contradiction elsewhere in the
file is a **separate ungrounded claim**, to be flagged on its own, not a
defeater of this subtraction.
The analysis below takes the **broad** reading. It is not ratified, and it is
the operator's to settle — the same operator who ratified conditions 2 and 3 as
human-judged. Under the narrow reading the classifier did exactly what cond 2
asks and idx 8's cond 2 holds; the finding then becomes "lines 263-265 are a
second ungrounded claim" rather than "the classifier was wrong".
The classifier justified cond 2 on one of the two sub-deletions and never
checked the other:
@ -377,12 +396,20 @@ checked the other:
(`**Azure Monitor + Application Insights** (Verified)` / "Drift metrics
emitteres til Application Insights"), so removing the prerequisite bullet
leaves no false implication.
- Sub-deletion (a), `eller managed compute cluster`: **fails.** The same file
documents `**Managed Compute Cluster** (for store volumer)` as a real compute
option at lines 263-265, with pricing and a usage recommendation. Deleting the
- Sub-deletion (a), `eller managed compute cluster`: **fails under the broad
reading, holds under the narrow one.** The same file documents
`**Managed Compute Cluster** (for store volumer)` as a real compute option at
lines 263-265, with pricing and a usage recommendation. Deleting the
alternative from the prerequisites leaves the file asserting serverless Spark
as the only compute requirement seventy lines above a cost section that prices
the alternative. That is precisely a misleading remainder.
the alternative. Broad: that is a misleading remainder. Narrow: the remainder
states what the source grounds, and 263-265 is a separate claim needing its
own verdict.
Either way the candidate does not go in as written — under the broad reading
because (a) must be dropped from the subtraction, under the narrow reading
because lines 263-265 must be adjudicated first and may themselves need an edit.
The remedies are different and the operator picks which applies.
There is a further limit the O2 envelope cannot resolve: cond 3 passes for (a)
only because the source does not *mention* managed compute — not-mentioned
@ -397,13 +424,20 @@ string** than the one V2b attested, so it is not machine-clean until
amendment, including dropping idx 17's trailing colon: **amended remainder →
re-run the check before it counts as verified.**
**The generalisable finding.** The classifier judged cond 2 against the *source*
and against citations it chose itself. It did not systematically judge it
against **the rest of the same file**. Internal consistency is a cond-2
dimension the wave prompts never assigned, and idx 8 — the single `high`
confidence record in the set — is the proof that it bites. The remaining 15
candidates have not had this check. It must be run per candidate before any of
them reaches a ratifier; expect it to move some of them.
**The generalisable finding — conditional on the broad reading.** The classifier
judged cond 2 against the *source* and against citations it chose itself. It did
not systematically judge it against **the rest of the same file**. Under the
broad reading that is a defect: internal consistency is a cond-2 dimension the
wave prompts never assigned, and idx 8 — the single `high` confidence record in
the set — is the proof that it bites. Under the narrow reading it is not a
defect at all; the same sweep is still worth running, but its output is a list
of *additional* ungrounded claims rather than a list of corrections to the
existing verdicts.
Either way the remaining 15 have not had the check, and it should be run per
candidate before any of them reaches a ratifier. What changes with the reading
is what the results *mean*, not whether to gather them — which is why the sweep
can proceed before the scope question is settled, and the verdicts cannot.
## Appendix A — the 15 admitted proposals, hand-verified
@ -500,11 +534,13 @@ additionally carries a machine flag: its remainder recapitalises rather than
deletes (§9.1, V2b), so it is a text change and must be reviewed as one.
⚠️ **The `cond 2 = yes` column is the classifier's claim, not a verified fact.**
Hand-checking the two affirmative rows (§9.2) falsified idx 8: half its cond-2
justification was never checked and does not hold, because the same file
documents the deleted alternative in its cost section. Read every `yes` in this
column as "the classifier believed this", and verify against the rest of the
file before ratifying. Only **idx 17** has survived that check so far.
Hand-checking the two affirmative rows (§9.2) showed that half of idx 8's cond-2
justification was never checked, and that the same file documents the deleted
alternative in its cost section. Read every `yes` in this column as "the
classifier believed this". Only **idx 17** has been hand-verified so far, and
idx 8 is not ratifiable as written under either reading of cond 2 — but **which
reading applies is an open operator decision** (§9.2), and it governs both the
count and what a sweep of the remaining 15 would mean.
Reproduce the tally and the machine checks:
`node scripts/kb-eval/check-o2-returns.mjs`.