107 lines
11 KiB
Markdown
107 lines
11 KiB
Markdown
# Plugin-roadmap: sesjonsplan R0–R18 (2026-07)
|
||
|
||
_Styrende sesjonsplan for ms-ai-architect fra 2026-07-02, basert på full statusanalyse (visjon/planer, ground-truth-audit m/testkjøring, Spor 1-planlesing). Erstatter IKKE eksisterende planer (korrekthetsprogrammet, Spor 1-planen, briefer) — **sekvenserer** dem og fyller hullene analysen avdekket. Operatør-detaljer som ikke hører hjemme i repoet ligger i en LOCAL-ONLY-annex (`.claude/projects/2026-07-02-helhetlig-roadmap/`)._
|
||
|
||
**Status 2026-07-02:** måle-/hardningsfasen av korrekthetsprogrammet er ferdig (judge v3.1 P100/R100, alle §8-gap lukket, suite 641/641, alle skills ≥90) — men mekanismen er dormant til Spor 1 kjøres. Gapet mellom visjon («reference-filene 100 % til å stole på» som prosessgaranti) og realitet er nøyaktig de ueksekverte sporene under.
|
||
|
||
## Modelldirektiv
|
||
|
||
**Alle sesjoner i denne roadmapen + alle deres subagenter kjøres på Opus 4.8 med xhigh reasoning effort** (operatørbeslutning 2026-07-02). Aldri Sonnet/Haiku. Agent-tool: `model: "opus"`.
|
||
|
||
## Prinsipper
|
||
|
||
1. **Én sesjon = én fullført enhet:** hver sesjon avsluttes med suite grønn (exit-kode), commit + push, STATE.md overskrevet med neste sesjons-ID.
|
||
2. **Split-regel:** blir en sesjon for stor midtveis → fullfør en HEL delmengde (per skill / per batch), commit, la STATE peke på resten som egen sesjon. Aldri halvferdig tilstand.
|
||
3. **TDD Iron Law** for all produksjonskode; **aldri auto-fiks KB** (judge/audit flagger → menneske bekrefter mot kilde → fiks).
|
||
4. **Scope-fence:** sesjonens innhold er grensen; muligheter utover foreslås i sluttrapporten, utføres ikke.
|
||
5. **Provenans-regel (ny):** hvert tall som skrives i STATE/docs bærer scope + målemetode i én linje (analysen 2026-07-02 brukte en hel avstemmingsrunde på å re-utlede at «45» var non-advisor-scoped).
|
||
|
||
## Sekvens og avhengigheter
|
||
|
||
```
|
||
R0 (tillit+hygiene+klargjøring)
|
||
└─→ R1 → R2 → R3 → R4 (Spor 1 substrat via /trekexecute; release v1.17.0 i R4)
|
||
└─→ R5 (Spor 0-fiksing)
|
||
└─→ R6 (judge-pass brief+plan) → R7…R10 (korpus-pass; antall fastsettes i R6)
|
||
└─→ R11 (flag→fiks) → R12 (§7 fersk-gull — programmets sluttbevis)
|
||
└─→ R13 → R14 (S-Cosmo, sist i programmet)
|
||
└─→ R15 (skill-eval v2 plan) → R16+ (eksekvering)
|
||
Fleksible (uavhengige, kan interleaves): R17 (dekningsaudit), R18 (onboarding-uplift)
|
||
Parkert (eget operatør-go): OKF second brain · pris/unsourced-verifisering
|
||
```
|
||
|
||
---
|
||
|
||
## R0 — Tillit, dok-hygiene og Spor 1-klargjøring (kort økt)
|
||
|
||
**Mål:** fjern alt som kan villede fremtidige sesjoner eller svekke tillit, og gjør Spor 1-planen eksekverbar.
|
||
|
||
1. **Sanering:** fjern identifiserende personkontekst fra ett tracked dokument (utpekt i LOCAL-ONLY-annexen) + søk hele tracked-treet for samme mønster; historikk-håndtering = operatørbeslutning dokumentert i annexen.
|
||
2. **Utracket brief:** `docs/skill-validation-routine-brief-2026-07.md` — public-egnethetssjekk → commit (eller flytt til `.claude/projects/` hvis intern).
|
||
3. **CLAUDE.md:** rett de to stale pekerne → `skills/ms-ai-advisor/references/architecture/recommended-mcp-servers.md`.
|
||
4. **Tellinger:** fjern «398 inkl. plugin-nivå» overalt (plugin-nivå `references/` har aldri eksistert; 389 er totalen).
|
||
5. **Programdok:** §6-statustabell à jour med §8 (Spor 2a/2b/3 lukket 2026-06-30); historisk-merknad på 84,2-tallene i intro.
|
||
6. **Workflow-plan:** superseded-peker øverst → programdokumentet.
|
||
7. **development.md:** fjern «For Cosmo»-instruksen — produserer aktivt ny drift mot aldri-ny-Cosmo-regelen.
|
||
8. **STATE-korreksjoner:** registry-semantikk (2 disk-filer mangler *i* registry — ikke «stale cache»); Status-tall 31→29 (målt 2026-07-02, non-advisor); provenans-regelen innføres.
|
||
9. **P0-beslutninger (operatør, minutter):** velsign Spor 1-planens Assumption #1 (fjern stale `**Verified:** MCP` på de 14 filene) + bekreft TOC-scope-default (alle 324 store filer).
|
||
10. **Plan-patch:** legg manifest-re-entrans-vakt inn i Spor 1-planen (klassifiserer-CLI `--write` skal nekte/merge når manifestet er beriket med `resolvedBy`/`source`) + re-valider planen.
|
||
|
||
**Verifisering:** `grep -rn 'references/architecture' CLAUDE.md` viser kun skills-prefiks · `grep -rn '398' CLAUDE.md docs/` → 0 relevante treff · sanering bekreftet med søk → 0 treff i tracked filer · plan-validator strict exit 0 · suite exit 0 · commit + push, `git status --short` ren.
|
||
|
||
## R1–R4 — Spor 1 substrat-migrering (4 økter, strengt sekvensiell)
|
||
|
||
Kjøres via `/trekexecute --project .claude/projects/2026-06-30-spor1-corpus-migration` (lokalt planprosjekt, 11 steg / plan v1.7+). Roadmapen dupliserer ikke stegene — kun sesjonsgrenser og sluttkriterier:
|
||
|
||
- **R1 = Session 1 (Steg 1–4):** header-audit → typeklassifiserer-core (TDD) → CLI + manifest persistert (`--write`, 389 entries, union == uavhengig målt live-tall) → edge-review via subagenter, manifest finalisert. **Verifisering:** manifest med 389 entries, `reviewFlag:false` overalt; suite exit 0.
|
||
- **R2 = Session 2 (Steg 5–6):** `insertHeaderFields` + kirurgisk `normalizeStaleVerified` (TDD; first-match/`---`-aware/pipe-safe) → authority-URL per reference-fil (deterministiske tie-breaks → subagent → defer-not-guess). **Verifisering:** suite exit 0; manifest `source`-beriket; defer-listen eksplisitt (aldri gjettet URL).
|
||
- **R3 = Session 3 (Steg 7–8):** `migrate-corpus.mjs` unified applier (TDD: backup + atomisk skriv + advisor-fence + per-felt-idempotens + post-write-assert) → akseptansetester skrevet FØR kjøring. **Verifisering:** suite exit 0 inkl. nye akseptansetester.
|
||
- **R4 = Session 4 (Steg 9–11):** kjør migreringen (~327 Type / ~253 Source / 324 TOC / 14 stale-verified fjernet) → re-score (CT5 `available:true`, N4 ~1) + worklist-aktivering + `docs/spor1-migration-outcome.md` (transient Spor D sub-90 merkes som policy-artefakt) → hygiene + full suite. **Deretter batch-release v1.17.0** (`release-plugin.mjs`, `check-versions.mjs` 0 ERROR).
|
||
|
||
**Eskaleringsregel (fra plananalysen):** per-fil post-write-assert-feil i Steg 9 → restore + stopp + rapporter; «logg som defer og fortsett» er ikke tillatt uten plan-revisjon.
|
||
|
||
## R5 — Spor 0: de 38+4 kjente innholds-fiksene (1 økt, split per skill ved behov)
|
||
|
||
Påfør `spor0-fix-manifest.json` (38 fikser / 25 filer) + G5b-fillisten (`adr-template.md`, `multi-region-azure-openai-deployment.md`, `network-resilience-patterns-ai.md`, `vector-storage-cost-optimization.md`). Mønster: subagent-fan-out henter/bekrefter kilde per fiks (v3.1-fanout-runbook som mal); hovedkontekst redigerer; tvilstilfeller → operatør. **Forutsetning:** R4 ferdig (substratet i ro). **Verifisering:** manifest 38/38 applied m/kilde-URL per fiks; suite exit 0.
|
||
|
||
## R6 — Korpus-judge-pass: brief + plan (1 planleggingsøkt, Voyage)
|
||
|
||
Selvbærende brief + adversarielt reviewet plan for v3.1-judgen over alle verifiserbare påstander i non-advisor-korpuset (~2146 fetches, ikke resume-safe → sesjons-batchet design med per-batch-manifest). Briefen skal inkludere: (a) **G2-restgapet** — generaliser stempel-guarden i `transform.mjs` FØR evt. judge-minor-bump; (b) beslutning **retire vs. harden `backfill-toc.mjs`** (unified applier har overtatt; anbefaling: retire); (c) flaggformat som mater R11 direkte; (d) **G6 ingestion-gate (§8):** design to-lags sikkerhetsgate for all henting av eksternt innhold — llm-security-pluginen aktivert + verifisert fyrende (`post-mcp-verify`) i alle fetch-økter (headless-caveat GH #36071 → foreground eller kompenserende skann) + deterministisk node-skann (unicode/decode/injection) over endrede `skills/**/*.md` før commit. **Verifisering:** brief- + plan-validator strict exit 0; antall R7–R10-økter fastsatt; G6-gate-design eksplisitt i briefen.
|
||
|
||
## R7–R10 — Korpus-judge-pass eksekvering (antall fra R6; estimat 4 økter à ~80 filer)
|
||
|
||
Per økt: én batch judged komplett → flagg akkumulert i manifest. Judge-passet endrer ALDRI KB-innhold — kun `verified`-stempling av grønne filer + flagging. **G6-gate (ufravikelig):** økten starter ALDRI uten llm-security aktiv med hooks verifisert fyrende, eller R6-definert kompenserende deterministisk skann. **Verifisering per økt:** G6-gate bekreftet ved øktstart; 0 udømte i batchen; `git status` viser kun manifest-/stempel-endringer; suite exit 0.
|
||
|
||
## R11 — Flag→fiks-loop (1 økt, split ved stort flaggvolum)
|
||
|
||
Operatør-bekreftede fikser mot kilde + `verified`-bump per fikset fil (§3c-disiplin). **Verifisering:** alle flagg lukket (fikset eller avvist m/begrunnelse); suite exit 0.
|
||
|
||
## R12 — §7 fersk-gull-måling: programmets sluttbevis (1 økt)
|
||
|
||
Trekk NYTT blindt gull-utvalg (G5-protokoll: re-adjuder mot live før fasiten stoles på), mål flagget feilrate. **<~2 % → prosessgarantien er dokumentert virksom** — visjonens suksesskriterium. Utvalget blir neste kalibreringssett; periodisk gull-re-adjudering forankres her. **Verifisering:** rapport med målt feilrate + konfidensintervall committed; ≥2 % → ny R11-runde planlegges, ikke bortforklares.
|
||
|
||
## R13 — S-Cosmo del 1: mekanisk korpus-rens (1 økt)
|
||
|
||
Scripted transform (TDD) for Cosmo-forekomster i ref-korpuset (378 ref-filer; heading-nøytralisering) + absorberte rester: redirects (1a-C) og store-fil-TOC (1b). **Verifisering:** `grep -rl "Cosmo" skills/*/references | wc -l` → 0; suite exit 0; stikkprøve-diff-review.
|
||
|
||
## R14 — S-Cosmo del 2: persona, advisor og legacy (1 økt)
|
||
|
||
Fjerning i SKILL.md-er, 23 commands, 11 docs, rot-filer + `generate-skills.md`/`transform-prompt.md`; **advisor frontmatter-backfill + advisor judge-pass** (advisor judged etter Cosmo); retir legacy bash `MODEL=sonnet`. Release-bump. **Verifisering:** `grep -rli "cosmo" --include='*.md' .` (unntak per cosmo-removal-brief) → 0; advisor stemplet; suite exit 0; release grønn.
|
||
|
||
## R15 → R16+ — Skill-eval v2 (1 planleggingsøkt + est. 2–3 eksekveringsøkter)
|
||
|
||
`/trekplan --brief docs/skill-validation-routine-brief-2026-07.md` (committet i R0). Trinn 2 (live triggering m/precision+recall, 3× repetisjon, train/held-out), Trinn 3 (uplift vs. baseline), Trinn 4 (behavioral gate + `generate-skills`-wiring). Briefens §7-beslutninger (adopt vs. reimplement, kostnadsgating) avgjøres av operatør ved planreview. Re-score ETTER Spor 1 + S-Cosmo (kanonisert rekkefølge, programdok §6). **Verifisering:** briefens 7 testbare suksesskriterier.
|
||
|
||
## R17 — Dekningsaudit (1 økt — fleksibel, uavhengig)
|
||
|
||
Svar på det aldri-målte spørsmålet: **dekker de 389 filene de riktige temaene?** Fan-out: Microsoft AI-landskapet (Foundry / Copilot / Power Platform / Agent Framework / AI Act-flater) vs. faktisk KB-dekning → dekningsrapport + prioritert gap-liste som mates inn som fremtidige KB-emner (født-verifisert generering). **Verifisering:** rapport committed med tema-matrise + gap-liste.
|
||
|
||
## R18 — Onboarding uplift-måling (1 økt — fleksibel, uavhengig)
|
||
|
||
Maskineriet er bygget (krav 1+2+3 + per-kategori-hint); målingen er aldri kjørt. Design: samme oppgavesett med/uten onboardet kontekst, mål merkbar letthet (tid/kvalitet). **Verifisering:** uplift-rapport committed; beslutning videre loggført.
|
||
|
||
## Parkert (krever eget operatør-go)
|
||
|
||
- **OKF second brain** (spec v0.1 ratifisert; bygging = separat go).
|
||
- **Pris/unsourced-verifisering** (74 % av prispåstander ikke maskinverifiserbare; operatør-gated).
|
||
- **Historikk-håndtering** for saneringen i R0 hvis operatør ønsker mer enn fremoverrettet fiks (egen beslutning).
|