feat(ms-ai-architect): G1 LUKKET — v3.1 judge MÅLT + ADOPTERT (P100/R100/0FP/0FN, max-utfall)
45-veis v3.1 fan-out kjørt per runbook: 255 claims / 45 filer, 45 Opus-4.8-xhigh- subagenter (live MS Learn, blinde for gull, én per fil), aggregert 255/255 rent → deterministisk re-score mot G5b-korrigert gull. Resultat: v3.1 = P 100,0 / R 100,0 / 0 FP / 0 FN / F1 1,000 (TP 42, TN 198) mot v3-baren P 100,0 / R 92,9 / 3 FN. Alle 3 gjenstående FN fanget (R1 øvre-grense, R7 last-bærende-streng, R8 fler-delt) UTEN én ny FP. Forhåndsregistrert gate (hold P=100 ∧ løft R>92,9) klarert → v3.1 ADOPTERT som judge. R1-«+»-floor-flagg over full populasjon avkreftet som FP-risiko: alle matchet gull (decision-changing floors = outdated/TP; tette floors = correct/TN). §8 G1 lukket, G2 avblokkert (v3.1 = prompt å wire i transform.mjs). Suite 641/641. [skip-docs]
This commit is contained in:
parent
52e822376b
commit
09bc99eec8
4 changed files with 297 additions and 2 deletions
234
scripts/kb-eval/data/judge-bakeoff-report-v3.1.json
Normal file
234
scripts/kb-eval/data/judge-bakeoff-report-v3.1.json
Normal file
|
|
@ -0,0 +1,234 @@
|
|||
{
|
||||
"_meta": {
|
||||
"source": "gold-correctness-set.json + judge-bakeoff-results.json",
|
||||
"thresholds": {
|
||||
"minRecall": 0.7,
|
||||
"minPrecision": 0.6
|
||||
},
|
||||
"judged": 255
|
||||
},
|
||||
"population": {
|
||||
"total": 255,
|
||||
"verifiable": 240,
|
||||
"positives": 42,
|
||||
"negatives": 198,
|
||||
"unsourcedInP": 15
|
||||
},
|
||||
"arms": {
|
||||
"staleness": {
|
||||
"tp": 0,
|
||||
"fp": 0,
|
||||
"fn": 42,
|
||||
"tn": 198,
|
||||
"positives": 42,
|
||||
"negatives": 198,
|
||||
"flagged": 0,
|
||||
"precision": null,
|
||||
"recall": 0,
|
||||
"f1": null,
|
||||
"recallWilson": {
|
||||
"p": 0,
|
||||
"low": 0,
|
||||
"high": 0.08380161250916199
|
||||
},
|
||||
"precisionWilson": null
|
||||
},
|
||||
"judge": {
|
||||
"tp": 42,
|
||||
"fp": 0,
|
||||
"fn": 0,
|
||||
"tn": 198,
|
||||
"positives": 42,
|
||||
"negatives": 198,
|
||||
"flagged": 42,
|
||||
"precision": 1,
|
||||
"recall": 1,
|
||||
"f1": 1,
|
||||
"recallWilson": {
|
||||
"p": 1,
|
||||
"low": 0.9161983874908382,
|
||||
"high": 1
|
||||
},
|
||||
"precisionWilson": {
|
||||
"p": 1,
|
||||
"low": 0.9161983874908382,
|
||||
"high": 1
|
||||
}
|
||||
},
|
||||
"hybrid": {
|
||||
"tp": 42,
|
||||
"fp": 0,
|
||||
"fn": 0,
|
||||
"tn": 198,
|
||||
"positives": 42,
|
||||
"negatives": 198,
|
||||
"flagged": 42,
|
||||
"precision": 1,
|
||||
"recall": 1,
|
||||
"f1": 1,
|
||||
"recallWilson": {
|
||||
"p": 1,
|
||||
"low": 0.9161983874908382,
|
||||
"high": 1
|
||||
},
|
||||
"precisionWilson": {
|
||||
"p": 1,
|
||||
"low": 0.9161983874908382,
|
||||
"high": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"sourceSilent": {
|
||||
"onVerifiableNegative": 0,
|
||||
"onVerifiableError": 0,
|
||||
"agreesWithUnsourced": 2,
|
||||
"disagreesWithUnsourced": 13
|
||||
},
|
||||
"byClaimType": {
|
||||
"version": {
|
||||
"tp": 7,
|
||||
"fp": 0,
|
||||
"fn": 0,
|
||||
"tn": 21,
|
||||
"positives": 7,
|
||||
"negatives": 21,
|
||||
"flagged": 7,
|
||||
"precision": 1,
|
||||
"recall": 1,
|
||||
"f1": 1,
|
||||
"recallWilson": {
|
||||
"p": 1,
|
||||
"low": 0.6456611570247934,
|
||||
"high": 1
|
||||
},
|
||||
"precisionWilson": {
|
||||
"p": 1,
|
||||
"low": 0.6456611570247934,
|
||||
"high": 1
|
||||
}
|
||||
},
|
||||
"tpm": {
|
||||
"tp": 5,
|
||||
"fp": 0,
|
||||
"fn": 0,
|
||||
"tn": 20,
|
||||
"positives": 5,
|
||||
"negatives": 20,
|
||||
"flagged": 5,
|
||||
"precision": 1,
|
||||
"recall": 1,
|
||||
"f1": 1,
|
||||
"recallWilson": {
|
||||
"p": 1,
|
||||
"low": 0.5655085052479191,
|
||||
"high": 1
|
||||
},
|
||||
"precisionWilson": {
|
||||
"p": 1,
|
||||
"low": 0.5655085052479191,
|
||||
"high": 1
|
||||
}
|
||||
},
|
||||
"region": {
|
||||
"tp": 2,
|
||||
"fp": 0,
|
||||
"fn": 0,
|
||||
"tn": 13,
|
||||
"positives": 2,
|
||||
"negatives": 13,
|
||||
"flagged": 2,
|
||||
"precision": 1,
|
||||
"recall": 1,
|
||||
"f1": 1,
|
||||
"recallWilson": {
|
||||
"p": 1,
|
||||
"low": 0.34237195288961925,
|
||||
"high": 1
|
||||
},
|
||||
"precisionWilson": {
|
||||
"p": 1,
|
||||
"low": 0.34237195288961925,
|
||||
"high": 1
|
||||
}
|
||||
},
|
||||
"status": {
|
||||
"tp": 10,
|
||||
"fp": 0,
|
||||
"fn": 0,
|
||||
"tn": 43,
|
||||
"positives": 10,
|
||||
"negatives": 43,
|
||||
"flagged": 10,
|
||||
"precision": 1,
|
||||
"recall": 1,
|
||||
"f1": 1,
|
||||
"recallWilson": {
|
||||
"p": 1,
|
||||
"low": 0.7224598312333834,
|
||||
"high": 1
|
||||
},
|
||||
"precisionWilson": {
|
||||
"p": 1,
|
||||
"low": 0.7224598312333834,
|
||||
"high": 1
|
||||
}
|
||||
},
|
||||
"taxonomy": {
|
||||
"tp": 11,
|
||||
"fp": 0,
|
||||
"fn": 0,
|
||||
"tn": 86,
|
||||
"positives": 11,
|
||||
"negatives": 86,
|
||||
"flagged": 11,
|
||||
"precision": 1,
|
||||
"recall": 1,
|
||||
"f1": 1,
|
||||
"recallWilson": {
|
||||
"p": 1,
|
||||
"low": 0.7411599827511859,
|
||||
"high": 1
|
||||
},
|
||||
"precisionWilson": {
|
||||
"p": 1,
|
||||
"low": 0.7411599827511859,
|
||||
"high": 1
|
||||
}
|
||||
},
|
||||
"sku": {
|
||||
"tp": 7,
|
||||
"fp": 0,
|
||||
"fn": 0,
|
||||
"tn": 15,
|
||||
"positives": 7,
|
||||
"negatives": 15,
|
||||
"flagged": 7,
|
||||
"precision": 1,
|
||||
"recall": 1,
|
||||
"f1": 1,
|
||||
"recallWilson": {
|
||||
"p": 1,
|
||||
"low": 0.6456611570247934,
|
||||
"high": 1
|
||||
},
|
||||
"precisionWilson": {
|
||||
"p": 1,
|
||||
"low": 0.6456611570247934,
|
||||
"high": 1
|
||||
}
|
||||
}
|
||||
},
|
||||
"gate": {
|
||||
"pass": true,
|
||||
"recallOk": true,
|
||||
"precisionOk": true,
|
||||
"beatsStaleness": true,
|
||||
"thresholds": {
|
||||
"minRecall": 0.7,
|
||||
"minPrecision": 0.6
|
||||
},
|
||||
"reasons": [
|
||||
"all criteria met"
|
||||
]
|
||||
}
|
||||
}
|
||||
54
scripts/kb-eval/data/judge-bakeoff-report-v3.1.md
Normal file
54
scripts/kb-eval/data/judge-bakeoff-report-v3.1.md
Normal file
|
|
@ -0,0 +1,54 @@
|
|||
# Judge bake-off-rapport — S1 (Fase 3 de-risk)
|
||||
|
||||
_Generert deterministisk av `run-judge-bakeoff.mjs` over `gold-correctness-set.json` + `judge-bakeoff-results.json`. Tall fra testet `lib/judge-bakeoff.mjs`. Ikke rediger for hånd — regenerer._
|
||||
|
||||
**Forhåndsregistrert gate (låst FØR fan-out):** recall ≥ 0.7, presisjon ≥ 0.6, OG judge-recall > staleness-recall.
|
||||
|
||||
## Evaluerings-populasjon (P)
|
||||
|
||||
Volatil stratum + fetchbare claim_types (price ekskludert) — der feilene bor; unngår «invertert leverage».
|
||||
|
||||
| metrikk | verdi |
|
||||
|---|---|
|
||||
| P totalt | 255 |
|
||||
| Verifiserbare (correct/outdated/wrong) | 240 |
|
||||
| Positive (reelle feil å fange) | 42 |
|
||||
| Negative (correct) | 198 |
|
||||
| Unsourced i P (kjørt, men utenfor P/R) | 15 |
|
||||
|
||||
## Arm-sammenligning (detektering over de 240 verifiserbare)
|
||||
|
||||
| arm | TP | FP | FN | TN | presisjon | recall | recall Wilson 95% | F1 |
|
||||
|---|---|---|---|---|---|---|---|---|
|
||||
| staleness (billig baseline) | 0 | 0 | 42 | 198 | n/a | 0.0% | [0.0%, 8.4%] | n/a |
|
||||
| judge (per-påstand groundedness) | 42 | 0 | 0 | 198 | 100.0% | 100.0% | [91.6%, 100.0%] | 1.000 |
|
||||
| hybrid (union) | 42 | 0 | 0 | 198 | 100.0% | 100.0% | [91.6%, 100.0%] | 1.000 |
|
||||
|
||||
## Judge per claim_type (verifiserbar delmengde)
|
||||
|
||||
| claim_type | positive | TP | FP | FN | presisjon | recall |
|
||||
|---|---|---|---|---|---|---|
|
||||
| taxonomy | 11 | 11 | 0 | 0 | 100.0% | 100.0% |
|
||||
| status | 10 | 10 | 0 | 0 | 100.0% | 100.0% |
|
||||
| version | 7 | 7 | 0 | 0 | 100.0% | 100.0% |
|
||||
| sku | 7 | 7 | 0 | 0 | 100.0% | 100.0% |
|
||||
| tpm | 5 | 5 | 0 | 0 | 100.0% | 100.0% |
|
||||
| region | 2 | 2 | 0 | 0 | 100.0% | 100.0% |
|
||||
|
||||
## source_silent-diagnostikk
|
||||
|
||||
Judgen hentet siden men fant ikke verdien. Diagnostisk, ikke et flagg.
|
||||
|
||||
| signal | antall | tolkning |
|
||||
|---|---|---|
|
||||
| På verifiserbar feil | 0 | judge-bom: reell feil oversett via «kan ikke verifisere» |
|
||||
| På verifiserbar correct | 0 | judge reproduserte ikke et korrekt faktum mennesket fant |
|
||||
| Enig med unsourced | 2 | judge reproduserer den uverifiserbare grensen (godt) |
|
||||
| Uenig med unsourced | 13 | judge hevdet grunnet/ugrunnet der mennesket ikke fant kilde |
|
||||
|
||||
## GATE: ✅ PASS — bygg S3
|
||||
|
||||
- recall 1.000 ≥ 0.7? **ja**
|
||||
- presisjon 1.000 ≥ 0.6? **ja**
|
||||
- slår staleness (recall 0.000)? **ja**
|
||||
- begrunnelse: all criteria met
|
||||
1
scripts/kb-eval/data/judge-bakeoff-results-v3.1.json
Normal file
1
scripts/kb-eval/data/judge-bakeoff-results-v3.1.json
Normal file
File diff suppressed because one or more lines are too long
Loading…
Add table
Add a link
Reference in a new issue