ms-ai-architect/scripts/kb-update/lib
Kjell Tore Guttormsen f094e242d1 fix(ms-ai-architect): Enhet 3b — dedup dual-**Dato:** i 5 mlops-genaiops-filer (Created-relabel/drop, git-verifisert) [skip-docs]
Løser dual-header der filer bærer BÅDE **Dato:** (opprettelse) OG **Last updated:**
(endring). Ground truth 2026-07-16 + git first-commit-map (2026-04-08 for alle 5):

- 4 distinkte (**Dato:** 2026-02-04, FØR git first-commit → ekte opprettelsesdato):
  relabel **Dato:** → **Created:**, verdi byte-bevart (norsk→engelsk label-rename).
- 1 identisk (mlops-security-access-control: **Dato:**=**Last updated:**=2026-06-19,
  ETTER git first-commit → metadata-artefakt, ikke ekte opprettelsesdato): drop redundant
  **Dato:**. Relabel ville påstått falsk opprettelsesdato — drop er sannferdig.

Ny ren primitiv dropRedundantBoldField (kaster uten identisk-verdi bevis-felt),
gjenbrukt relabelHeaderDialect m/ CREATED_MAP. Manifest-drevet dedup-dato.mjs med
hard per-fil-invariant FØR skriv (relabel: 1 linje, kun label-token; drop: net -1,
Last updated bevart), atomicWriteSync, idempotent. Ingen validator håndhever lukket
feltliste → **Created:** er additiv/konform.

+15 tester (dropRedundantBoldField, CREATED_MAP-relabel, applyOp, manifest, 2 corpus-
guards) + oppdatert stale Enhet-2 carve-out-guard til post-3b-sannhet. Suite 910/910
exit 0. validate-plugin 250 PASS/0 FAIL. Datoløse dual-**Dato:**-filer 5→0.
2026-07-16 20:38:24 +02:00
..
adversarial-detect.mjs fix(ms-ai-architect): G6 Layer B — unicode/carrier-scan kjører pre-write via temp-fil (lukker ingestion-brief §8-akseptansegap, TDD) [skip-docs] 2026-07-04 23:04:00 +02:00
adversarial-scan.mjs feat(ms-ai-architect): Layer B ingestion-gate — deterministisk adversariell-innhold-skann før skriving/commit (G6 §8 / R6 punkt d, TDD) [skip-docs] 2026-07-04 07:13:43 +02:00
ai-act-deadlines.mjs feat(ms-ai-architect): RX-REG — én maskinlesbar AI Act-frist-kilde + synk-test (B2-B5, R3-5, M10) [skip-docs] 2026-07-15 06:13:36 +02:00
atomic-write.mjs feat(ms-ai-architect): add lib/atomic-write for crash-safe state files [skip-docs] 2026-05-05 10:32:13 +02:00
authority.mjs feat(ms-ai-architect): Sesjon 6 - lag 3 verifisering-INN (authority-binding) 2026-06-19 22:58:10 +02:00
backup.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
classify-ref-type.mjs feat(ms-ai-architect): Spor 1 — ref-type-klassifiserer (pure core, MS-sitering-proxy + edge-flagg, TDD) [skip-docs] 2026-07-03 00:52:45 +02:00
course-diff.mjs feat(ms-ai-architect): C3.2 — course-diff (ren) + course-registry load/save (TDD) [skip-docs] 2026-06-23 13:12:49 +02:00
cross-platform-paths.mjs feat(ms-ai-architect): add lib/cross-platform-paths for cache/log/state/backup dirs [skip-docs] 2026-05-05 10:30:31 +02:00
decisions-io.mjs feat(ms-ai-architect): C3.5 — courses-kolleksjon i decisions-io.mjs (UID-nøklet, Spor C) + kb-update §3c kurs-gate (TDD) [skip-docs] 2026-06-23 14:38:56 +02:00
detection-schedule.mjs feat(ms-ai-architect): Spor 3 Port 3 (rapporterende gulv) — KB-tillit-signal i SessionStart [skip-docs] 2026-06-29 14:58:32 +02:00
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
kb-headers.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
keychain.mjs feat(ms-ai-architect): C3.1 — keychain + Learn Platform API-klient (TDD) [skip-docs] 2026-06-23 12:59:16 +02:00
launchd-plist.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
learn-api.mjs feat(ms-ai-architect): C3.1 — keychain + Learn Platform API-klient (TDD) [skip-docs] 2026-06-23 12:59:16 +02:00
log-rotate.mjs feat(ms-ai-architect): add lib/log-rotate for bounded log disk use [skip-docs] 2026-05-05 10:54:50 +02:00
registry-io.mjs feat(ms-ai-architect): C3.2 — course-diff (ren) + course-registry load/save (TDD) [skip-docs] 2026-06-23 13:12:49 +02:00
registry-migrate.mjs feat(ms-ai-architect): Sesjon 2 - ai-foundry->foundry registry-remap 2026-06-19 21:09:00 +02:00
sitemap-stream.mjs feat(ms-ai-architect): sitemap-based KB change detection system 2026-04-09 21:19:51 +02:00
taxonomy.mjs feat(ms-ai-architect): C3.3 — course_products (live-enumerert) + makeCourseClassifier (TDD) [skip-docs] 2026-06-23 13:48:04 +02:00
transform.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
url-normalize.mjs fix(ms-ai-architect): registry-herding Fase 1a — +5 sitemap-prefiks + skjemaløs URL-ekstraksjon 2026-06-26 10:15:46 +02:00
user-data.mjs feat(ms-ai-architect): C2.2 valgfritt fritekst-felt free-context.md i onboarding (TDD) [skip-docs] 2026-06-22 14:16:00 +02:00
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
verify-out.mjs feat(ms-ai-architect): Sesjon 4 - verifisering-ut (lag 5) + adversarial regresjonstest 2026-06-19 22:00:36 +02:00