feat(ms-ai-architect): R22 decision-b Enhet 3 — Status-backfill 25 none + ai-act dual-header-dedup 4 (Missing Status/Last-updated 29+4→0) [skip-docs]
To operasjoner, én økt (⊥ R7), begge ren metadata-normalisering (verdi aldri fabrikkert). Premiss-korreksjon (ground truth 2026-07-07): roadmap sa «27 none + 4 ai-act». Målt: 29 mangler bold **Status:** = 25 rene none + 4 ai-act (plain Status: GA). De «27» inkluderte 2 for mye — 2 filer (custom-dashboards-ai-operations, zero-trust-ai-services) har bold **Status:** KUN forbi byte 500 (present for full-fil-audit, usynlig for 500B header-parser) → egen header-slanking-residual (§8-register), utenfor Enhet 3. Op A — Status-backfill 25 rene none: utvidet backfill-status.mjs MANIFEST 14→39 (samme statusForFile + insertMetaField + hard per-fil-invariant, idempotent skip på de 14 R21-gjorte). Alle 25 → **Status:** Established Practice (ingen matcher template|matrix|benchmarks|register). Diff +25/-0. Op B — ai-act dual-header-dedup (4 filer): ny driver dedup-plain-header.mjs + 2 rene primitiver i transform.mjs — boldifyPlainField (plain→bold, verdi bevart byte-eksakt, header-scoped, idempotent) + dropRedundantPlainField (sletter plain KUN når bold m/ identisk verdi beviser redundans; kaster ved avvik/manglende bold). Per fil: plain Last updated: + Status: GA → bold (2026-06-18/2026-02, GA bevart), redundant plain Category: fjernet. Hard per-fil-invariant (net -1 linje, begge felt bold m/ bevart verdi, ingen plain-header igjen, body byte-identisk). Diff -12/+8. Verifisering: test-backfill-status 8/8 + test-dedup-plain-header 13/13; audit Missing Status 29→0, Missing English Last updated 4→0; skills-diff 29 filer +33/-12 (kun **Status:** + 8 bold-swaps), diff-kontekst inspisert per fil; begge drivere idempotent (re-run 0 writes); suite 806/806 exit 0; none=8 uendret (Enhet 4).
This commit is contained in:
parent
1ab4fc34cf
commit
de0d94cbc1
35 changed files with 510 additions and 57 deletions
|
|
@ -163,10 +163,22 @@ Maskineriet er bygget (krav 1+2+3 + per-kategori-hint); målingen er aldri kjør
|
|||
|
||||
**Verifisering:** `test-relabel-dato` 10/10 (inkl. disk-integritet: committed-state + at de 5 dual-filene forblir urørt); git diff **+16/−16** på 16 filer (hver endret linje = label-swap, verifisert begge retninger); revers-substitusjon byte-eksakt; idempotent re-run = 0; verdier bevart (`2026-04`, `5. februar 2026`, …); ground truth `Missing English Last updated (non-advisor) 20→4`, gjenstående `**Dato:**` = 13 (5 dual + 8 body); R22-Enhet-1-tool fortsatt no-op (51/51 already-english); suite **792/792** exit 0.
|
||||
|
||||
### Enhet 3 — Status-backfill + ai-act dual-header-dedup ✅ 2026-07-07
|
||||
|
||||
To operasjoner, én økt (⊥ R7), begge metadata-normalisering (verdi ALDRI fabrikkert).
|
||||
|
||||
**Premiss-korreksjon (ground truth 2026-07-07, `audit-corpus-headers.mjs` + worklist):** roadmap sa «27 none + 4 ai-act». Målt: **29** filer mangler bold `**Status:**` = **25 rene «none»** (ingen Status-markør) + **4 ai-act** (plain `Status: GA`). De «27» inkluderte 2 for mye: **2 filer** (`monitoring-observability/custom-dashboards-ai-operations`, `ai-security-engineering/zero-trust-ai-services`) bærer bold `**Status:**` KUN forbi byte 500 → present for full-fil-audit, men **usynlig for 500-byte header-parseren**. De er IKKE manglende felt — de er en egen **header-slanking-residual** (§8-register), utenfor Enhet 3.
|
||||
|
||||
**Op A — Status-backfill 25 rene none-filer.** Utvidet den ene Status-mekanismen `backfill-status.mjs` (MANIFEST 14→**39**; samme `statusForFile` + `insertMetaField` + hard per-fil-invariant, idempotent skip på de 14 R21-gjorte). Alle 25 → `**Status:** Established Practice` (ingen matcher `template|matrix|benchmarks|register`-token). Diff **+25/−0**, hver = én `**Status:**`-linje i bold-meta-run innenfor 500B.
|
||||
|
||||
**Op B — ai-act dual-header-dedup (4 filer).** Ny driver `dedup-plain-header.mjs` + 2 nye rene primitiver i `transform.mjs`: `boldifyPlainField()` (plain `<label>: <verdi>`→`**<label>:** <verdi>`, verdi bevart byte-eksakt, header-scoped, idempotent) og `dropRedundantPlainField()` (sletter plain-linje KUN når bold `**<label>:**` med **identisk verdi** beviser redundans; **kaster** ved verdi-avvik eller manglende bold — aldri auto-slett). Per fil: plain `Last updated:` + `Status: GA` → bold (verdi bevart: `2026-06-18`/`2026-02`, `GA`), redundant plain `Category:` fjernet (bold Category fra R20 bevart). Hard per-fil-invariant: net −1 linje, begge felt bold m/ bevart verdi, ingen plain-header-felt igjen, body byte-identisk. Diff **−12/+8** på 4 filer (net −1/fil).
|
||||
|
||||
**Verifisering:** `test-backfill-status` 8/8 + `test-dedup-plain-header` 13/13; audit **Missing Status 29→0**, **Missing English Last updated 4→0**; git diff skills = 29 filer +33/−12 (25 Status-insert + 4 dedup), alle tilførte linjer verifisert (kun `**Status:**` + de 8 bold-swappene), diff-kontekst inspisert per fil ([[dual-header-dialect-blindness]]); begge drivere idempotent (re-run 0 writes); suite **806/806** exit 0. `none=8`-dialekt uendret (Enhet 4-scope).
|
||||
|
||||
**Gjenstående decision-(b)-enheter (egne økter, ⊥ R7):**
|
||||
- **Enhet 3:** Status-backfill 27 none-filer (`statusForFile`, R21-mønster) + 4 `ai-act-*` plain-blokk-dedup (bold-ify + fjern redundant plain-linjer).
|
||||
- **Enhet 3b (NY — dedup):** 5 dual-label-filer med `**Dato:**` (opprettelse) + `**Last updated:**` (endring). Beslutning kreves: behold `**Dato:**` som eget «opprettet»-felt (relabel til `**Created:**`?) vs. fjern som redundant. Fabrikk/slett ALDRI uten operatør-beslutning. Filer: `feedback-loops-continuous-improvement`, `genaiops-llm-specific-practices`, `mlops-security-access-control`, `model-deployment-strategies-azure`, `prompt-flow-production-deployment` (alle mlops-genaiops).
|
||||
- **Enhet 3b (dedup):** 5 dual-label-filer med `**Dato:**` (opprettelse) + `**Last updated:**` (endring). Beslutning kreves: behold `**Dato:**` som eget «opprettet»-felt (relabel til `**Created:**`?) vs. fjern som redundant. **Målt 2026-07-07:** 4 av 5 har distinkt opprettet≠endret (`**Dato:**` bærer ekte info); 1 (`mlops-security-access-control`) har identiske datoer (`**Dato:**` redundant). Fabrikk/slett ALDRI uten operatør-beslutning. Filer: `feedback-loops-continuous-improvement`, `genaiops-llm-specific-practices`, `mlops-security-access-control`, `model-deployment-strategies-azure`, `prompt-flow-production-deployment` (alle mlops-genaiops).
|
||||
- **Enhet 4:** 1 datoløs (`decision-trees.md`, git-«innholds-commit»-heuristikk, ALDRI «i dag») + verifiser de 8 «category-none» = ekte gap vs. vindus-artefakt.
|
||||
- **Residual (header-slanking, §8-register):** 2 filer med bold `**Status:**` forbi byte 500 (`custom-dashboards-ai-operations`, `zero-trust-ai-services`) → header-parseren ser dem ikke. Ikke missing-felt; krever header-omstokking (distinkt, risikofylt operasjon), ikke insert. Lukkes egen økt.
|
||||
|
||||
## Parkert (krever eget operatør-go)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue