ms-ai-architect/scripts/kb-update
Kjell Tore Guttormsen 31d2b62aed feat(ms-ai-architect): gjør reduksjonsenheten til dokumentet, ikke feltet [skip-docs]
Linje-cappen på 25 var ikke en reduksjon, men en seleksjon etter fast
rekkefølge. Målt 2026-08-26 (bake-off arm A2b, flatt org/, 55 korpusdokumenter):
61 filer og 183 felt inn, 24 felt ut — alle fra 8 filer — mens 1 013 av de 4 000
verditegnene sto ubrukt. 53 filer var usynlige, og usynligheten var stille:
brukeren tror pluginen er onboardet mens rådet er generisk.

Sammendraget bygges ambient ved sesjonsstart, FØR det finnes et spørsmål, så det
finnes ingen relevans å rangere mot. Når man ikke kan rangere, er det ærlige
alternativet å dekke:

- linjebudsjettet utledes fra filantallet (én linje per fil) i stedet for å være
  konstant, begrenset av MIN_COVERAGE_VALUE_LEN = 60 tegn per linje — forankret
  i den designede onboardingens egne feltlengder (median 34, snitt 75, maks 278)
- seleksjonen er bredde-først på tvers av filer: hver fil gir fra seg sitt første
  felt før noen fil gir fra seg sitt andre. Emisjonsrekkefølgen er fortsatt
  filrekkefølgen, så leserekkefølgen er uendret
- overflow-markøren oppgir hvor mange FILER som er utelatt, ikke bare felt

Målt mot bake-off-harnesset (forhåndsregistrert gullsett, 40 spørsmål x 4
frikontekst-lengder), kontrollmålt mot git stash:

  n=55   A2b 10/160 -> 160/160   (kostnad 4 443 -> 4 923 tegn)
  n=25   A2b 10/160 ->  68/160
  n=10   A2b 10/160 ->  24/160

A2b treffer nå last-alt-taket (identisk på alle fire korpusstørrelser) til 4 923
tegn mot 33 127. Ved den designede onboardingen (6 filer, 19 felt) er hookens
output byte-identisk med før — kostnaden øker kun der den gamle koden skjulte
dokumenter. Lesesiden verifisert ende-til-ende: hooken emitterer 62 linjer mot
25, med markøren "0 av 61 filer helt utelatt".

Reach-metrikken sier at dokumentet er representert, ikke at svaret er riktig;
hver fil bæres av ~65 tegn av sitt første felt. Den harde faktum-metrikken er
ugyldig — dens egen kjent-positiv (last-alt) treffer bare 4/40.

Tester: 7 nye i test-user-data.test.mjs (3 røde mot HEAD, verifisert med git
stash). Sporet suite 1070/1070.

[skip-docs]: intern reduksjonsmekanikk. Ingen kommando, agent, skill eller hook
endrer grensesnitt; README/CLAUDE.md beskriver ingen av disse konstantene.
2026-08-26 14:49:40 +02:00
..
data feat(ms-ai-architect): Enhet A2 — Layer B baseline-adjudikering: innholds-basert allowlist (75 funn adjudikert, TDD) + 4 korpus-defekter fikset (2 homoglyph-ord, 2 U+00AD-filer); korpus 389/389 exit 0 [skip-docs] 2026-07-18 10:31:06 +02:00
lib feat(ms-ai-architect): gjør reduksjonsenheten til dokumentet, ikke feltet [skip-docs] 2026-08-26 14:49:40 +02:00
apply-verified-stamp.mjs feat(ms-ai-architect): R7.1 — apply-verified-stamp driver (surgical insertVerifiedFields over ledger-pass-records; invariant-assertert, atomisk, idempotent; ustempelbar → samlet feil, TDD 3 tester) [skip-docs] 2026-07-18 11:19:26 +02:00
audit-corpus-headers.mjs feat(ms-ai-architect): RX-HDR oppløst → permanent R7-ustempelbar audit-signal (premiss 10→2) [skip-docs] 2026-07-17 03:43:04 +02:00
backfill-category.mjs fix(ms-ai-architect): RX-OPS2 skrive-sikkerhet i driverne — scoped restore + atomiske skriv [skip-docs] 2026-07-15 21:31:29 +02:00
backfill-last-updated.mjs fix(ms-ai-architect): Enhet 4 — Last updated på datoløs advisor decision-trees.md (git content-commit 2026-06-23) [skip-docs] 2026-07-16 20:19:07 +02:00
backfill-status.mjs fix(ms-ai-architect): RX-OPS2 skrive-sikkerhet i driverne — scoped restore + atomiske skriv [skip-docs] 2026-07-15 21:31:29 +02:00
build-registry.mjs feat(ms-ai-architect): Sesjon 6 - lag 3 verifisering-INN (authority-binding) 2026-06-19 22:58:10 +02:00
classify-ref-type.mjs feat(ms-ai-architect): Spor 1 — klassifiserer-CLI + registry-merge (389 klassifisert, union reconciled) [skip-docs] 2026-07-03 00:55:15 +02:00
dedup-dato.mjs fix(ms-ai-architect): Enhet 3b — dedup dual-**Dato:** i 5 mlops-genaiops-filer (Created-relabel/drop, git-verifisert) [skip-docs] 2026-07-16 20:38:24 +02:00
dedup-plain-header.mjs fix(ms-ai-architect): RX-OPS2 skrive-sikkerhet i driverne — scoped restore + atomiske skriv [skip-docs] 2026-07-15 21:31:29 +02:00
detect-courses.mjs feat(ms-ai-architect): C3.4 — detect-courses.mjs (binder C3.1–C3.3, LLM-fri) + selectDetectionSteps + include_course_detection (TDD) [skip-docs] 2026-06-23 14:24:57 +02:00
discover-new-urls.mjs feat(ms-ai-architect): Sesjon 3 - decision-ledger (lag 2) + discovery-dedup 2026-06-19 21:48:03 +02:00
migrate-ai-foundry.mjs feat(ms-ai-architect): Sesjon 2 - ai-foundry->foundry registry-remap 2026-06-19 21:09:00 +02:00
migrate-corpus.mjs fix(ms-ai-architect): RX-OPS2 skrive-sikkerhet i driverne — scoped restore + atomiske skriv [skip-docs] 2026-07-15 21:31:29 +02:00
poll-sitemaps.mjs feat(ms-ai-architect): Sesjon 2 lag 0 - konsolider taksonomi til en sannhetskilde 2026-06-19 21:02:59 +02:00
pre-commit-scan.mjs chore(ms-ai-architect): Enhet B — gjør pre-commit-scan.mjs kjørbar for git-hook-install (symlinket som .git/hooks/pre-commit) [skip-docs] 2026-07-18 10:51:01 +02:00
relabel-dato.mjs fix(ms-ai-architect): RX-OPS2 skrive-sikkerhet i driverne — scoped restore + atomiske skriv [skip-docs] 2026-07-15 21:31:29 +02:00
relabel-dialect.mjs fix(ms-ai-architect): RX-OPS2 skrive-sikkerhet i driverne — scoped restore + atomiske skriv [skip-docs] 2026-07-15 21:31:29 +02:00
report-changes.mjs feat(ms-ai-architect): Sesjon 5 carry-forward B — datoløse filer → unverified-tier 2026-06-19 22:31:25 +02:00
report-full-pass-worklist.mjs feat(ms-ai-architect): Spor 3 Port 3 (P3d) — periodisk full-pass worklist (kadens-judge enumerering) [skip-docs] 2026-06-29 15:34:45 +02:00
report-verified-staleness.mjs feat(ms-ai-architect): Spor 3 Port 3 (inkrementell) — stale-since-verified klassifiserer + CLI [skip-docs] 2026-06-29 14:53:51 +02:00
run-detection.mjs feat(ms-ai-architect): C3.4 — detect-courses.mjs (binder C3.1–C3.3, LLM-fri) + selectDetectionSteps + include_course_detection (TDD) [skip-docs] 2026-06-23 14:24:57 +02:00
run-weekly-update.mjs feat(ms-ai-architect): sitemap-based KB change detection system 2026-04-09 21:19:51 +02:00
scan-adversarial-content.mjs feat(ms-ai-architect): Enhet A2 — Layer B baseline-adjudikering: innholds-basert allowlist (75 funn adjudikert, TDD) + 4 korpus-defekter fikset (2 homoglyph-ord, 2 U+00AD-filer); korpus 389/389 exit 0 [skip-docs] 2026-07-18 10:31:06 +02:00
scheduler.mjs feat(ms-ai-architect): Sesjon 24 — C1 Tier 2 lokal launchd-scheduler (deteksjon-only, ToS-trygt) [skip-docs] 2026-06-21 19:59:18 +02:00
strip-stale-verified-pipe.mjs fix(ms-ai-architect): RX-KB1 strip stale plain-Verified pipe-tails (87) + audit-deteksjon [skip-docs] 2026-07-16 20:04:52 +02:00
transform-prompt.md feat(ms-ai-architect): G2 LUKKET — adoptert v3.1-judge wired inn i pipeline (JUDGE_VERSION 2→'3.1', TDD, suite 641) [skip-docs] 2026-06-30 21:55:39 +02:00
validate-kb-file.mjs feat(ms-ai-architect): Spor 3 Port 2 — create-time-guard (born-verified contract) [skip-docs] 2026-06-29 10:36:21 +02:00
write-schedule-config.mjs feat(ms-ai-architect): C3 (3) — --courses-flagg i write-schedule-config.mjs (TDD) + live-probe-doc 2026-06-23 16:25:56 +02:00