From 16ae8d3db312cde32767d3b3d57c603678ea7c38 Mon Sep 17 00:00:00 2001 From: Kjell Tore Guttormsen Date: Tue, 23 Jun 2026 18:36:01 +0200 Subject: [PATCH] docs: add 360 evaluation + reference-grade execution plan (okr) 360-degree evaluation (14-agent workflow: 6 readers, 4 researchers, 2 benchmarks, synthesis + adversarial plan-critic). Verdict C+: strong architecture/methodology, credibility-critical content defects (fictional agency presented as fact, find-replace artefacts, scoring self-contradiction across 5+ files, UTF-8 corruption, dead links). - docs/evaluering-360-2026-06-23.md: findings per dimension, scorecard, verification log, ms-ai-architect maturity gaps, plan-critic appendix. - docs/plan-referansegrad-2026-06-23.md: critic-corrected, followable multi-session plan (Fase 0-3) with finding->phase traceability, version-per-phase, file-ownership, On-failure/circuit-breaker rules, and Voyage usage per phase. Pilot review (2026-06-20) covered security/config; this covers domain, content, language, UX, completeness. Implementation not started. Co-Authored-By: Claude Opus 4.8 (1M context) Claude-Session: https://claude.ai/code/session_01LSVEbrrahcSVoNG4WG3NrP --- docs/evaluering-360-2026-06-23.md | 246 ++++++++++++++++++++++++++ docs/plan-referansegrad-2026-06-23.md | 156 ++++++++++++++++ 2 files changed, 402 insertions(+) create mode 100644 docs/evaluering-360-2026-06-23.md create mode 100644 docs/plan-referansegrad-2026-06-23.md diff --git a/docs/evaluering-360-2026-06-23.md b/docs/evaluering-360-2026-06-23.md new file mode 100644 index 0000000..7ef7b92 --- /dev/null +++ b/docs/evaluering-360-2026-06-23.md @@ -0,0 +1,246 @@ +# 360-evaluering: OKR Offentlig Sektor-plugin (v1.3.0) + +**Dato:** 2026-06-23 +**Evaluator:** Lead reviewer (syntese av 6 fil-lesere, 4 web-/Gemini-researchere, 2 benchmark-agenter) +**Mål:** Vurdere hva som skal til for å gjøre dette til DET refererte OKR-pluginet for norsk offentlig sektor. +**Avgrensning:** Denne 360-en dekker **domenekorrekthet, innhold, språk, UX og fullstendighet**. Sikkerhet/config/struktur/versjon ble dekket av piloten (`docs/review-2026-06-20.md`) og gjentas ikke her. + +--- + +## Sammendrag + +Pluginet er **arkitektonisk sterkt og metodisk substansielt**, med ekte norsk forvaltningstilpasning som ikke er kosmetisk (DFØ-begrepsbro, Hovedavtalen/tillitsvalgte, tildelingsbrev-kategorisering, Riksrevisjon-etterprøvbarhet). Hooks, agent-arkitektur og state-modell er på høyde med — og på coaching-siden over — referanse-pluginet `ms-ai-architect`. + +Men det er **ikke referansegrad i dag, og kan ikke trygt deles eksternt**, fordi *innholdslaget* har troverdighetskritiske feil som en norsk fagperson vil oppdage ved første gjennomlesning: + +1. **Fiktiv etat presentert som fakta.** «Direktoratet for digital tjenesteutvikling (DDT)» finnes ikke. Den brukes som løpende eksempel-etat, og i kildefilen presenteres «Oboard (DDTs valg)» som en faktisk kilde — fabrikkert proveniens. +2. **Find-replace-vrøvl** i de mest kopierte eksemplene: doblede ord («saksbehandlingbehandling»), semantisk umulige fraser («fornye saksbehandling»), feil sammensetninger («saksbehandlingtjenester»). +3. **Scoringsterskel som motsier plugins egne kilder** på tvers av minst 5 filer (0.6-0.7 / 0.7-0.8 / 0.6-0.8 / 0.7-0.9 / 70-80 %). +4. **Total UTF-8-korrupsjon** i to filer (0 å-tegn) + coaching-hookens brukervendte strenger. +5. **Døde lenker og dokument-selvmotsigelser** (CONTRIBUTING inviterer PR-er som GOVERNANCE avviser; README oppgir DDT som reell bruker). + +Fundamentet er godt nok til at **én fokusert saneringsrunde løfter pluginet raskt**. Men inntil fakta-laget er ryddet, er pilotens «lav risiko, høy kvalitet»-verdikt riktig på sikkerhet/struktur og **misvisende på innhold**. + +**Samlet karakter: C+** (sterkt fundament trukket ned av troverdighetskritiske innholdsfeil). + +--- + +## Metode + +- **Pilotens dekning (ikke gjentatt):** sikkerhet (A-), config (A), struktur, versjonskonsistens. Pilotens ene svakhet: «Feature Coverage D 40». To nits: OKR-01 (ugardert `rm -rf`), OKR-02 (Linear-nøkler i okr.local.md). +- **Denne 360-ens dekning:** domenekorrekthet/metodikk, norsk forvaltningstilpasning, innholds-/språkkvalitet, kommando-/agent-/hook-kvalitet, dokumentasjon/markedsplass-klarhet, modenhet vs `ms-ai-architect`, plugin-craft, og referansegrad-gap. +- **Kildehåndtering:** Researcher-verdiktene er brukt som fasit for faktapåstander. Alle kritiske og høye funn er **verifisert direkte mot filene** (se Verifiseringslogg). Der lesere var uenige eller upresise, er filsjekken avgjørende. +- **Korreksjon av lesere:** Lesere oppga «15 referansefiler» og en CHANGELOG uten 1.2.0-forklaring. Filsjekk viser **16 referansefiler** (`okr-oboard-guide.md` ble oversett) og at CHANGELOG **faktisk** noterer «Version bumped from 1.1.0 to 1.3.0». CLAUDE.md sier derimot feilaktig «References (15)». + +--- + +## Scorecard + +| Dimensjon | Karakter | Kort begrunnelse | +|-----------|----------|------------------| +| Domenekorrekthet/metodikk | C+ | Kjernemekanikk korrekt; scoringsterskel selvmotsigende på tvers av ≥5 filer og motsier egen bibliografi. | +| Norsk forvaltningstilpasning | C | Ekte differensierende lag, men fiktiv DDT, tertial overdrevet som DFØ-standard, tillitsreformen fraværende. | +| Innholds- og språkkvalitet | D | Total UTF-8-korrupsjon i 2 filer + hook; ≥8 find-replace-artefakter i kopierte eksempler; uciterte statistikker. | +| Kommandoer | B | Komplette og selvstendige; møter.md mangler Kontekstbevissthet, gap/governance overlapper, «Kvartalsreview» feil. | +| Agenter | B | Ren ansvarsdeling; mangler negative triggere, leser ikke org-kontekst når Task-spawnet, 0.7-0.9-tabell uten kilde. | +| Hooks/state/arkitektur | B+ | Robuste hooks og sammenhengende state; læring-regex feiler på «Læring», rm -rf ugardert, ikke reinstall-overlevende. | +| Dokumentasjon/markedsplass-klar | C | Fullt hygiene-sett, men README-feil (DDT, ASCII-kommandonavn), CONTRIBUTING↔GOVERNANCE-motsigelse, SECURITY peker GitHub. | +| Modenhet vs ms-ai-architect | C+ | Paritet/overlegen på coaching; mangler reinstall-overlevende org-katalog, /help, PDF-eksport, rubrikk-filer, fixtures. | +| Plugin-craft | B | Tynn SKILL.md, riktig eksternalisering; SKILL-versjon 1.0.0 vs 1.3.0, 6 usiterte filer, ingen emne-guard på injeksjon. | + +--- + +## Funn per dimensjon + +### A. Domenekorrekthet og metodikk + +**[KRITISK] Scoringsterskel selvmotsigende og i strid med egne kilder** — `SKILL.md:47`, `okr-framework.md:104/262/268`, `okr-offentlig-governance.md:73`, `commands/sporing.md:33`, `agents/fremdriftssporer-agent.md:44`, `okr-cheatsheet.md:48`. +Pluginet bruker fem forskjellige stretch-suksessterskler: 0.6-0.7 (sources, korrekt), 0.7-0.8 (SKILL/framework/sporing), 0.6-0.8 (framework L268), 0.7-0.9 (cheatsheet L48 + fremdriftssporer L44), 70-80 % (governance L73). Kanon (Doerr/Google re:Work, verifisert live) er **0.7 forventet score, 0.6-0.7 sweet spot**. 0.7-0.9 og 70-80 % har ingen kildebasis og forteller brukeren at 0.9 på et stretch-mål bare er «suksess» heller enn eksepsjonelt. +*Anbefaling:* Innfør ÉN kanonisk formulering overalt: «0.7 = forventet for aspirational; 0.6-0.7 = sweet spot (Google/Doerr)». Hvis offentlig-sektor-tilpasning ønsker høyere gulv, merk det eksplisitt som bevisst avvik. + +**[INFO/MEDIUM] Faktarammings-feil i sekundære caser** — `okr-sources.md:125/131`. +Intel «fra 0 % til 85 %» er misvisende (85 % var *gjenvunnet* andel av 16-bit-markedet, ikke fra null), og «2000 design wins» var *målet*, ikke resultatet (~2300-2500 oppnådd). Locke & Latham «250 %» bør rammes som «vanskeligste vs enkleste mål», ikke «vs do-your-best». +*Anbefaling:* Rett begge; legg til Kleingeld-journal (Journal of Applied Psychology 96(6):1289-1304). + +**[MEDIUM] Aggregering snitter committed og aspirational sammen** — `okr-framework.md` aggregeringslogikk. +Doerr advarer eksplisitt mot dette. Skår de to typene separat. + +### B. Norsk forvaltningstilpasning + +**[KRITISK] Fiktiv etat presentert som fakta** — `okr-sources.md:299`, `README.md:23`, gjennom hele `okr-offentlig-governance.md` og `okr-examples.md`. +«Direktoratet for digital tjenesteutvikling (DDT)» finnes ikke (verifisert mot regjeringen.no/Digdir). I kildefilen står «Oboard (Direktoratet for digital tjenesteutviklings valg)» — fabrikkert kilde-proveniens i en evidensfil. README oppgir DDT som reell OKR-bruker ved siden av NAV og FINN.no. DDT er dessuten internt usammenhengende: et «digital tjenesteutvikling»-direktorat eier riksvei-vedlikehold og trafikkdrepte-mål (Statens vegvesens domene), med tildelingsbrev fra Samferdselsdepartementet. +*Anbefaling:* Enten konsekvent merk DDT «(fiktiv eksempeletat)» med disclaimer ved første bruk, eller splitt i reelle etater (Statens vegvesen for vei/trafikk; Digdir for digitale tjenester). Fjern den fabrikkerte Oboard-attribusjonen og DDT fra README-listen over reelle brukere. + +**[MEDIUM] Tertial overdrevet som DFØ-standard** — `dfo-okr-mapping.md:45`, `okr-framework.md:205`. +Tertialrapportering eksisterer i 2026, men det formelle regimet har **2 interim-punkter** (per 30. april / 31. august) + årsrapport, ikke 3 likeverdige sykluser, og DFØ vektlegger nå halvårs-/årsrapportmøte. 4-måneders OKR-syklus er et forsvarlig *praktisk* valg, men må ikke fremstilles som identisk med rapporteringsregimet. +*Anbefaling:* Omramme: «mange virksomheter bruker tertialrapportering; 4-måneders syklus aligner med — er ikke identisk med — det formelle (2-punkts) regimet. Sjekk eget tildelingsbrev.» + +**[MEDIUM] Feil dokumenttittel** — `okr-offentlig-governance.md:395`. +«Digitaliseringsstrategi for offentlig sektor 2024-2030» finnes ikke under det navnet. Korrekt: **«Fremtidens digitale Norge — Nasjonal digitaliseringsstrategi 2024-2030»** (lansert 26.09.2024). «...for offentlig sektor» tilhører den forrige 2019-2025-strategien. + +**[REFERANSEGRAD-GAP] Tillitsreformen fraværende.** Den sittende regjeringens tillitsreform (tillitsbasert styring, redusert detaljmålstyring) er den mest sentrale styringsspenningen for OKR i staten nå — og er helt utelatt. «Målforskyvning» mangler som førsteklasses norsk antipattern. + +### C. Innholds- og språkkvalitet + +**[KRITISK/HØY] Total UTF-8-korrupsjon** — `individual-vs-team-okr.md` (0 å-tegn, 1 ø), `commands/oppsett.md` (0 å-tegn). +Alle norske spesialtegn er strippet: «i trad med radene», «a eie outcomes», «Nar individuell», «lonn», «sporsmal», «verktoy», «Kjor», «sporsmaal», «foreslaar», «ambisiose», «nokkelmal». Begge filene er i praksis upubliserbare for en norsk leser. Coaching-hookens **brukervendte strenger** har samme feil (`coaching-hook.mjs:115/124/125`: «fokus pa», «naermer», «/okr:moter») — synlig i hver sesjonsstart. +*Anbefaling:* Full regenerering med korrekt UTF-8 (tryggere enn find-replace pga. omfang). + +**[HØY] Find-replace-artefakter i kopierte eksempler** — verifisert liste: +- `okr-offentlig-governance.md:346, :422` — «saksbehandlingbehandling» (doblet ord) → «saksbehandling» +- `okr-offentlig-governance.md:319, :413` + `okr-framework.md:63` — «saksbehandlingtjenester» → «saksbehandlingstjenester» +- `okr-offentlig-governance.md:71` + `okr-framework.md:101` — «saksbehandlingklager» → «saksbehandlingsklager» +- `okr-offentlig-governance.md:340` — «fornye saksbehandling» (semantisk umulig; klue L342 «mottatt kort» tyder på opprinnelig førerkort/pass) → koherent domene +- `okr-offentlig-governance.md:326` — «saksbehandling-søknader» → «søknader» +- `okr-examples.md:60, :64` — «vevedlikehold» → «veivedlikehold» +- `okr-examples.md:25`, `okr-framework.md:245`, `commands/skriv.md:61` — «saksbehandlingsøknader» (tautologi) +*Anbefaling:* Bestem ett koherent domene (sannsynlig opprinnelse: førerkort/kjøretøy hos Statens vegvesen) og rett systematisk. Bevis 0 gjenstående med grep. + +**[MEDIUM] Uciterte statistikker presentert som fakta** — `okr-implementation.md:8-10`, `okr-antipatterns.md:3`. +«39 % mer sannsynlige», «43 % flere mål», «30-45 % flere objectives», «60 % mislykkes» — ingen kilde; ligner vendor-markedsføring. I en Riksrevisjon-/DFØ-kontekst er dette en tillitsbelastning. +*Anbefaling:* Merk «industri-rapportert (ikke fagfellevurdert)» eller erstatt med Locke & Latham-effektstørrelser som allerede er i okr-sources.md. + +### D. Kommandoer + +**[MEDIUM] «Kvartalsreview» i 4-måneders plugin** — `commands/møter.md:60`, `agents/møtefasilitator-agent.md:39`, `okr-implementation.md:48/415` («kvartalsvise»). En norsk fagperson vil anta Q1-Q4 og ikke kjenne igjen sin egen tertialsyklus. → «Syklusreview»/«syklusvise». + +**[LAV] møter.md mangler Kontekstbevissthet-blokk** — alene med oppsett blant de 10. De 8 andre har den (verifisert). + +**[MEDIUM] gap vs governance overlapper uten disambiguering** — identisk innholdstabell duplisert; begge leser samme tildelingsbrev. Legg til «Bruk /okr:gap når... (kvantitativ dekningsmatrise)» vs «Bruk /okr:governance når... (kvalitativ oversettelse + compliance)». + +### E. Agenter + +**[MEDIUM] Ingen negative triggere** — særlig `styringsrådgiver` vs `gapanalytiker` (begge fyrer på «tildelingsbrev»). +**[MEDIUM] Agenter leser ikke org-kontekst fra fil** — de er blinde når de Task-spawnes (arver ikke UserPromptSubmit-injeksjonen). Legg til eksplisitt fil-lesing som i ms-ai-architect. +**[LAV] fremdriftssporer bruker 0.7-0.9-tabell** uten kilde (del av scoring-saneringen). + +### F. Hooks, state og arkitektur + +**[HØY] Læring-regex feiler på korrekt norsk** — `coaching-hook.mjs:100` matcher kun `[Ll]aering`. Når en bruker skriver korrekt «Læring», feiler den stille og longitudinell læring forsvinner. → `/## (?:Laering|Læring) til neste syklus/`. +**[MEDIUM] OKR-01 bekreftet** — `commands/oppsett.md:457/459`: `rm -rf .claude/okr/syklus/[id]/` uten validering av at `[id]` matcher `^[TQ][1-4]-[0-9]{4}$`. Tom verdi → `rm -rf .claude/okr/syklus//`. +**[REFERANSEGRAD-GAP] Ikke reinstall-overlevende** — onboarding skriver til prosjektlokal `okr.local.md`; org-identitet/syklushistorikk tapes ved reinstall/nytt prosjekt. + +### G. Dokumentasjon og markedsplass-klarhet + +**[HØY] CONTRIBUTING ↔ GOVERNANCE-motsigelse** — `CONTRIBUTING.md:23-30` har full «Submitting Pull Requests»-seksjon; `GOVERNANCE.md:9` avviser PR-er eksplisitt. → Erstatt med kryssreferanse. +**[HØY] SECURITY peker til GitHub** på en Forgejo-hostet repo (`open/okr.git`) — feil disclosure-kanal. +**[MEDIUM] README ASCII-kommandonavn** — `/okr:moter`, `/okr:innforing` (L106/L114/L166) matcher ikke filnavnene `møter.md`/`innføring.md`; copy-paste feiler. → bruk korrekte tegn. +**[MEDIUM] CLAUDE.md «References (15)»** — faktisk 16 filer. + +### H. Plugin-craft + +**[MUST] SKILL.md-versjon 1.0.0 vs plugin.json 1.3.0** — bump + sync. +**[MEDIUM] Template-skjema ≠ onboarding-YAML** — manuell bootstrap mangler felter hooken averterer. +**[SHOULD] 6 usiterte referansefiler** (dfo-okr-mapping, individual-vs-team-okr, metrics-library, okr-cheatsheet, okr-integrations, okr-sources) — dødvekt; wire inn eller avskriv. +**[SHOULD] UserPromptSubmit uten emne-guard** — injiserer OKR-kontekst på hver prompt. + +--- + +## Verifiseringslogg + +Nøkkelpåstander sjekket direkte mot filer og researcher-verdikter (oppfyller verifiseringsplikten): + +| Påstand | Verdikt | Korrekt verdi / funn | Kilde | +|---------|---------|----------------------|-------| +| DDT er en reell norsk etat | **Avkreftet** | Finnes ikke; reell digital-etat er Digdir, reell vei-etat er Statens vegvesen | regjeringen.no; `okr-sources.md:299`, `README.md:23` (filsjekk) | +| «Oboard (DDTs valg)» er en faktisk kilde | **Avkreftet** | Fabrikkert proveniens; Oboard er reelt verktøy men ikke noen navngitt etats verifiserte valg | oboard.io; `okr-sources.md:299` | +| Stretch-suksess = 0.7-0.8 | **Avkreftet** | Kanon: 0.7 forventet / 0.6-0.7 sweet spot (Doerr/Google re:Work, live) | rework.withgoogle.com/en/guides/set-goals-with-okrs | +| Scoringsterskel er konsistent i pluginet | **Avkreftet** | 5 ulike verdier funnet: 0.6-0.7, 0.7-0.8, 0.6-0.8, 0.7-0.9, 70-80 % | filsjekk (6 filer) | +| Find-replace-artefakter eksisterer | **Bekreftet** | «saksbehandlingbehandling», «fornye saksbehandling», «saksbehandlingtjenester», «vevedlikehold» m.fl. | grep over references/ + commands/ | +| individual-vs-team-okr.md mangler norske tegn | **Bekreftet** | 0 å-tegn, 1 ø-tegn i hele filen | `grep -o å \| wc -l` | +| oppsett.md mangler norske tegn | **Bekreftet** | 0 å-tegn; «lonn», «sporsmaal», «foreslaar» m.fl. | filsjekk | +| coaching-hook har encoding-feil i brukerstrenger | **Bekreftet** | L115/124/125: «fokus pa», «naermer», «/okr:moter» | `coaching-hook.mjs` | +| Læring-regex feiler på «Læring» | **Bekreftet** | L100 matcher kun ASCII `[Ll]aering` | `coaching-hook.mjs:100` | +| Statistikkene 39/43/30-45/60 % er uciterte | **Bekreftet** | Ingen kilde; ligner vendor-data | `okr-implementation.md:8-10`, `okr-antipatterns.md:3` | +| futureworks.no-artikkel er død | **Bekreftet (web)** | HTTP 404; futureworks.no er nå SaaS, ikke artikkel | `okr-sources.md:230` | +| Kleingeld d=0.80/-1.75/1.20 | **Bekreftet** | Eksakt korrekt; JAP 96(6):1289-1304, 2011 | pubmed.ncbi.nlm.nih.gov/21744940 | +| Locke & Latham «250 % vs do-your-best» | **Delvis** | Effektstørrelser (d≈0.52-0.82) korrekte; 250 % = vanskeligste vs *enkleste* mål | Locke & Latham 2002, Am. Psychologist | +| Intel «fra 0 % til 85 %» / «2000 design wins resultat» | **Delvis** | 85 % = *gjenvunnet* 16-bit-andel; 2000 var mål, ~2300-2500 oppnådd | whatmatters.com/operation-crush | +| Tertialrapportering er current 2026 | **Bekreftet** | Eksisterer; men formelt 2 interim-punkter + årsrapport, DFØ vektlegger halvårs-/årsrapportmøte | dfo.no/...etatsstyring/rapportering | +| «Digitaliseringsstrategi for offentlig sektor 2024-2030» | **Delvis (feil tittel)** | Korrekt: «Fremtidens digitale Norge — Nasjonal digitaliseringsstrategi 2024-2030» | regjeringen.no | +| NTP 2025-2036 sitert korrekt | **Bekreftet** | Meld. St. 14 (2023-2024) | regjeringen.no | +| Antall referansefiler | **Lesere upresise** | **16** filer (ikke 15); `okr-oboard-guide.md` oversett | `ls references/ \| wc -l` | +| CHANGELOG forklarer 1.2.0-hopp | **Lesere feil** | CHANGELOG **noterer** det; CLAUDE.md sier feil «(15)» | `CHANGELOG.md:19`, `CLAUDE.md:46` | +| CONTRIBUTING inviterer PR-er GOVERNANCE avviser | **Bekreftet** | CONTRIBUTING L23-30 vs GOVERNANCE L9 | filsjekk | +| Gemini-triangulering levert | **Uverifiserbar** | Gemini-bridge nede (deprecated SDK); triangulering MANGLER | researcher-rapport | + +--- + +## Modenhet vs ms-ai-architect + +**På paritet eller overlegen:** proaktiv coaching-hook med syklusposisjon og at-risk-KR-deteksjon (overgår ms-ai-architect), rik UserPromptSubmit-injeksjon, 7 spesialiserte agenter, dyp onboarding-wizard med resume, syklus-arkivering med retrospektiv-generering, 16-fils kuratert kunnskapsbase, fullt community-hygiene-sett. + +**Gap som skiller fra referanse-plugin (prioritert):** +- **MUST:** reinstall-overlevende `~/.claude/okr/org/` (i dag prosjektlokal okr.local.md — tapes ved reinstall); `/okr:help`-kommando (10 kommandoer + 7 agenter uten oppdagbarhetshjelp). +- **SHOULD:** ankrede scoringsrubrikker per dimensjon (egen KB-fil, 5 ankere/dimensjon) for determinisme i governance-kontekst; test-fixtures + smoke-test for hooks (fanger skjema-drift); `/okr:export` PDF for deling med ledelse/tillitsvalgte/Riksrevisjon; agenter som leser org-kontekst direkte (Task-spawn-blindhet); SessionStart-hook som signaliserer manglende onboarding. +- **NICE:** KB-ferskhetssjekk + `/okr:freshen-references`; interaktiv playground for innkjøps-/champion-demo. + +--- + +## Veikart til referansegrad (flersesjons, Voyage-drevet) + +> **Den følgbare, kritikk-korrigerte utførelsesplanen ligger i `docs/plan-referansegrad-2026-06-23.md`.** Veikartet under er syntese-versjonen; planen korrigerer det på flere punkter (DDT = 61 forekomster i 14 filer, ikke 2; UTF-8 = omskriving ikke encoding-fiks; full scoring-målliste med KEEP-merking av kanon-kilden; versjon-per-fase; fil-eierskap Fase 1↔2; OKR-01 flyttet til Fase 0). Se Vedlegg F for plan-criticens funn. + +**Fase 0 — Fakta- og troverdighetssanering (1-2 sesjoner). Avhenger av: ingenting.** +Credibility-critical. Alt annet bygger på et troverdig fundament. +Leveranser: DDT-beslutning (merk fiktiv ELLER splitt i reelle etater) + fjern fabrikkert Oboard-kilde og DDT fra README; rett alle find-replace-artefakter; ÉN kanonisk scoringsterskel overalt; full UTF-8-regenerering av de to filene + hook-strenger + læring-regex; rett døde/feil lenker og dokumenttittel; rydd CONTRIBUTING↔GOVERNANCE, SECURITY, README-kommandonavn, CLAUDE.md-count, uciterte statistikker; bump SKILL-versjon + katalog-ref. +*Voyage:* `/trekbrief` rammer saneringen + forankrer verifiseringsplikten → `/trekplan` med eksplisitt Verifisering-seksjon (grep beviser 0 artefakter, 0 strippede å, én scoringsverdi) → `/trekexecute` → `/trekreview`. + +**Fase 1 — Domenedybde og kildeintegritet (2-3 sesjoner). Avhenger av: Fase 0.** +Tertial-korreksjon + rasjonale-dokument; posisjoner OKR som lag oppå MRS + tillitsreform-seksjon + målforskyvning-antipattern; metodikk-presisjoner (Doerr-aggregering, Intel, Locke, Kleingeld-journal); «Kvartalsreview»→«Syklusreview»; reelle norske caser (Digdir produktorganisering, NRK/Ruter, Knowit) med vendor-merking. +*Voyage:* `/trekresearch` med Tavily/WebFetch triangulerer DFØ-currency, tillitsreform og reelle caser mot primærkilder → `/trekplan` → `/trekexecute` → `/trekreview`. + +**Fase 2 — UX-koherens og kommando-/agent-modning (1-2 sesjoner). Avhenger av: Fase 0.** +Kontekstbevissthet i møter.md; gap/governance-disambiguering + avdupliser tabell; negative triggere + Task-spawn-fil-lesing i agenter; wire inn / avskriv 6 usiterte filer; rm -rf-validering (OKR-01) + template-sync. +*Voyage:* `/trekbrief` → `/trekplan` med Verifisering (grep bekrefter Kontekstbevissthet i alle 10; manuell rm-validering med tom id) → `/trekexecute`. + +**Fase 3 — Referansegrad-løft mot ms-ai-architect-paritet (2-3 sesjoner). Avhenger av: Fase 1 + Fase 2.** +Reinstall-overlevende org-katalog; `/okr:help`; ankrede rubrikker + hook-fixtures/smoke-test; `/okr:export` PDF; bredere offentlig-metrikkbibliotek (eForvaltningsindeks, WCAG, klagefrist, eFormidling) + etat/kommune-differensiering; vurder `/okr:freshen-references`. +*Voyage:* flersesjons `/trekplan` med `.session-state`, `/trekexecute` + `/trekcontinue` mellom sesjoner, `/trekresearch` for metrikkbiblioteket, avslutt med `/trekreview` mot brief-kriteriene. + +--- + +## Vedlegg + +### A. Konsolidert «find-and-replace»-retteliste (Fase 0) +| Fil:linje | Feil | Rett til | +|-----------|------|----------| +| okr-offentlig-governance.md:346, :422 | saksbehandlingbehandling | saksbehandling | +| okr-offentlig-governance.md:319, :413; okr-framework.md:63 | saksbehandlingtjenester | saksbehandlingstjenester | +| okr-offentlig-governance.md:71; okr-framework.md:101 | saksbehandlingklager | saksbehandlingsklager | +| okr-offentlig-governance.md:77 | saksbehandlingsaker | saksbehandlingssaker | +| okr-offentlig-governance.md:340 | fornye saksbehandling | koherent domene (f.eks. fornye førerkort) | +| okr-offentlig-governance.md:326 | saksbehandling-søknader | digitale søknader | +| okr-examples.md:60, :64 | vevedlikehold | veivedlikehold | +| okr-examples.md:25; okr-framework.md:245; skriv.md:61 | saksbehandlingsøknader | domenenøytralt/koherent | + +### B. Scoring-retteliste (Fase 0) +Mål-formulering overalt: **«0.7 = forventet for aspirational; 0.6-0.7 = sweet spot (Google/Doerr)»**. +Filer: SKILL.md:47/107, okr-framework.md:104/262/268, okr-offentlig-governance.md:73, sporing.md:33, fremdriftssporer-agent.md:44, okr-cheatsheet.md:48. Fjern 0.7-0.9 og 70-80 % helt. + +### C. Encoding-retteliste (Fase 0) +Full UTF-8-regenerering: `individual-vs-team-okr.md`, `commands/oppsett.md`. Streng-retting: `coaching-hook.mjs:100/115/124/125`. + +### D. Pilot-nits (status) +- OKR-01 (rm -rf ugardert): **bekreftet**, planlagt i Fase 2. +- OKR-02 (Linear-nøkler i okr.local.md): utenfor denne 360-ens scope (sikkerhet), men SECURITY.md bør samtidig rettes for GitHub→Forgejo-feilen i Fase 0. + +### E. Manglende triangulering +Gemini Deep Research-bridgen var nede (deprecated Interactions API SDK). Independent triangulering ble ikke levert; faktapåstander her er triangulert via direkte filsjekk + web-researchere i stedet. Operatør bør oppgradere gemini-mcp-SDK før neste runde. + +### F. Veikart-kritikk (adversariell plan-critic) + +Veikartet over (syntese-versjon) ble stress-testet av en plan-critic. Materielle korrigeringer — alle innarbeidet i `docs/plan-referansegrad-2026-06-23.md`: + +| # | Kritikk | Korrigering i planen | +|---|---------|----------------------| +| 1 | DDT-saneringen scopet til 2 sites; reelt **61 forekomster i 14 filer**. «Splitt i reelle etater» er en flersesjons innholds-omskriving, ikke find-replace. | Beslutningsport før Fase 0: (a) merk fiktiv [mekanisk, default] vs (b) egen dedikert Fase 0b. Avgjøres i `/trekbrief`. | +| 2 | Scoring-lista ufullstendig og delvis feilrettet: `okr-sources.md:44/115` ER kanon 0.6-0.7 (skal **bevares**, ikke slettes); `analyse.md:138-139` + `styringsrådgiver:90` manglet. | Re-derivér med grep; KEEP-merk kanon-kilden; avklar at analyse.md trolig er tverr-syklus modenhet (annen akse, utenfor scope). | +| 3 | «Full UTF-8-regenerering» underspesifisert: filene har 0 å **og** 0 ø/æ — ingen ren kilde. Det er manuell omskriving, og `å>0`-grep beviser ikke ø/æ. | Omformulert til manuell norsk omskriving + spellcheck-verifisering (`aspell -l nb`/vokabular-diff). Circuit-breaker. | +| 4 | Versjon-bump kun nevnt i Fase 0; Fase 1-3 sender også brukervendte endringer (polyrepo-regel = ny tag hver gang). | Versjon-per-fase: 1.3.1 / 1.4.0 / 1.5.0; tag + katalog-`ref` som avsluttende steg i HVER fase. | +| 5 | Fase 1 og Fase 2 deler `møter.md` + `møtefasilitator-agent.md` → kan ikke kjøre parallelt. | Serialisér Fase 1 før Fase 2; eksplisitt fil-eierskap. | +| 6 | Fase 3 flytter org-kontekst-sti **etter** at Fase 2 wirer agenter til gammel sti → dobbeltarbeid. | Sti-beslutning **før** Fase 2; agenter peker på endelig sti én gang; migrasjon m/ fallback i Fase 3. | +| 7 | OKR-01 rm -rf (data-tap-risiko) parkert i Fase 2. | Flyttet til Fase 0 som circuit-breaker (høyest risiko først). | +| 8 | ASCII-kommandonavn også i `oppsett.md:246/478`, ikke bare README/hook. | Eget grep-mål `'/okr:moter\|/okr:innforing\|oppstartsmate'` over alle filer. | +| 9 | Ingen On-failure/Checkpoint/circuit-breaker på destruktive steg. | Krav i §1/§7: hvert `/trekplan`-steg bærer begge; destruktive = halt-on-failure. | +| 10 | CLAUDE.md «(15)→(16)» blir stale hvis Fase 2 avskriver filer. | Tall-fiks utsatt til etter Fase 2s avskriv-beslutning. | diff --git a/docs/plan-referansegrad-2026-06-23.md b/docs/plan-referansegrad-2026-06-23.md new file mode 100644 index 0000000..aba1b17 --- /dev/null +++ b/docs/plan-referansegrad-2026-06-23.md @@ -0,0 +1,156 @@ +# Utførelsesplan: OKR-plugin → referansegrad (norsk offentlig sektor) + +**Dato:** 2026-06-23 +**Grunnlag:** `docs/evaluering-360-2026-06-23.md` (360-evaluering, 14 agenter) + adversariell plan-critic-runde. +**Status i dag:** Samlet karakter **C+**. Sterkt fundament (arkitektur, hooks, metodikk-kjerne, ekte forvaltningstilpasning), trukket ned av **troverdighetskritiske innholdsfeil**. +**Mål:** Lukke alle funn i fire faser slik at pluginet trygt kan deles og fungere som referanse. Hver fase er et eget Voyage-løp over én eller flere sesjoner. + +> Denne planen er **kritikk-korrigert**: plan-criticen avdekket at synteserunden underestimerte flere leveranser (DDT = 61 forekomster i 14 filer, ikke 2; UTF-8 = total ASCII-stripping som krever omskriving, ikke encoding-fiks; scoring-linjelista var ufullstendig og delvis feilrettet; versjon-per-fase manglet; Fase 1/2 deler filer). Alle disse er innarbeidet under. + +--- + +## 1. Slik følger vi planen (driftsmodell) + +1. **Én fase = ett Voyage-løp.** `/trekbrief` (ramme + verifiseringskriterier) → `/trekplan` (fil-for-fil steg) → `/trekexecute` → `/trekreview` (mot brief-kriteriene). Flersesjons faser bruker `.session-state` + `/trekcontinue`. +2. **Hvert `/trekplan`-steg MÅ bære `On-failure:` og `Checkpoint:` (git commit).** Destruktive steg merkes **circuit-breaker**: ved feil → stopp hele fasen, ikke fortsett. +3. **Verifiseringsplikt.** Hver fase avsluttes med konkrete bevis (grep-/spellcheck-kommandoer som beviser at funnet er borte og at ingen nye er introdusert). Ingen fase er «ferdig» uten grønne bevis. +4. **Versjon per fase.** Hver fase som endrer brukervendt innhold/funksjon bumper versjon + lager release-tag + oppdaterer katalog-`ref` (`catalog/scripts/release-plugin.mjs `), innenfor push-vinduet. Se §6. +5. **STATE.md oppdateres ved hver sesjonslutt** (local-only, gitignored — offentlig remote). +6. **Scope-guard.** Ingen fase utvider seg utover sine leveranser uten ny godkjenning. + +--- + +## 2. Beslutningsport FØR Fase 0 (avgjøres i `/trekbrief`) + +**DDT-beslutning.** «Direktoratet for digital tjenesteutvikling (DDT)» er fiktiv og brukes som løpende eksempel-etat. Verifisert omfang: **61 forekomster i 14 filer** (28 i `okr-offentlig-governance.md`, 7 i `okr-integrations.md`, 4 hver i `okr-examples.md`/`okr-framework.md`, flere i `oppsett.md` m.fl.). To veier: + +| Valg | Hva | Innsats | Konsekvens | +|------|-----|---------|------------| +| **(a) Merk fiktiv** *(anbefalt for rask troverdighet)* | Konsekvent «(fiktiv eksempeletat)» + disclaimer ved første bruk; behold alle eksempler | Mekanisk, **én grep-verifisert pass** over alle 61 | Rask, lav risiko. Eksemplene forblir koherente. | +| **(b) Splitt i reelle etater** | Statens vegvesen (vei/trafikk) + Digdir (digitale tjenester) | **Egen dedikert fase (2-3 sesjoner)** mellom Fase 0 og Fase 1 | Omskriver tildelingsbrev-, kaskade- og metrikk-eksempler. Fase 1 avhenger av hvilken etat som «eier» hvilket eksempel. | + +**Default i denne planen:** (a). Velges (b), settes en egen «Fase 0b — Etats-resplitt» inn, og Fase 1 omdefineres til å bygge på de nye etatene. **Avgjør i brief, ikke i utførelse.** Uansett valg: fjern den fabrikkerte kilde-attribusjonen «Oboard (Direktoratet for digital tjenesteutviklings valg)» (`okr-sources.md:299`) og DDT fra README-listen over *reelle* brukere (`README.md:23`). + +--- + +## 3. Fase 0 — Fakta- og troverdighetssanering (credibility-critical) + +**Avhenger av:** ingenting. **Estimat:** 2-3 sesjoner (oppjustert fra 1-2 etter kritikk: UTF-8 = omskriving av 2 hele filer; DDT = 61 sites). **Versjon ved slutt:** **1.3.1 (patch)**. +**Hvorfor først:** alt annet bygger på at teksten er til å stole på. + +**Leveranser (hver med On-failure + Checkpoint):** + +1. **[CIRCUIT-BREAKER, flyttet hit fra Fase 2] OKR-01 rm -rf-validering.** Høyeste data-tap-risiko. Valider at `[id]` matcher `^[TQ][1-4]-[0-9]{4}$` og er ikke-tom **før** `rm -rf .claude/okr/syklus/[id]/` i `oppsett.md:457/459`. Manuell test: tom + malformert id skal avvises. On-failure: halt hele fasen. +2. **DDT** per beslutningsporten (default: merk fiktiv). Grep-fasit: `grep -rni 'DDT\|Direktoratet for digital tjenesteutvikling' .` → forvent 61 → 0 umerkede. Fjern fabrikkert Oboard-attribusjon + DDT fra README reell-bruker-liste. +3. **Find-replace-artefakter.** Re-derivér full målliste (ikke stol på synteselista alene): `grep -rni 'saksbehandlingbehandling\|saksbehandlingtjenester\|saksbehandlingklager\|saksbehandling-søknad\|saksbehandlingsøknad\|vevedlikehold\|fornye saksbehandling' .`. Rett til koherent domene. **Regresjonssjekk:** blanket-erstatninger må ikke mangle korrekte sammensetninger — bevis 0 GAMLE *og* 0 NYE artefakter. +4. **ÉN kanonisk scoringsterskel.** Re-derivér: `grep -rn '0\.[567]-0\.[789]\|70-80%\|0\.7 =' .`. Innfør overalt: **«0.7 = forventet for aspirational; 0.6-0.7 = sweet spot (Google/Doerr)»**. **BEVAR `okr-sources.md:44` og `:115`** (de ER kanon 0.6-0.7 — ikke slett). Fjern 0.7-0.9 (`okr-cheatsheet.md:48`, `fremdriftssporer-agent.md:44`) og 70-80% (`governance.md:73`). Inkluder `styringsrådgiver-agent.md:90`. **Avklar:** `analyse.md:138-139` (0.5-0.7/>0.7) er trolig *tverr-syklus modenhet* ≠ enkelt-OKR stretch-score → sannsynlig utenfor scope; bekreft før endring. Verifisering: nøyaktig én stretch-definisjon, kanonisk kilde ikke rørt. +5. **[CIRCUIT-BREAKER] UTF-8: manuell norsk omskriving** av `individual-vs-team-okr.md` og `commands/oppsett.md` (begge 0 å + 0 ø/æ — total ASCII-stripping, ingen ren kilde å «regenerere» fra). Dette er korrekturlesing/omskriving, ikke encoding-fiks. Checkpoint (git) før start. **Verifisering:** spellcheck (`aspell -l nb` eller kuratert vokabular-diff mot øvrige referansefiler) — *ikke* bare `å > 0` (en fil kan ha riktig å men feil ø/æ). +6. **ASCII-kommandonavn.** `grep -rn '/okr:moter\|/okr:innforing\|oppstartsmate' .` → inkluderer `README.md` (L106/114/166), `oppsett.md` (L246/478), `coaching-hook.mjs` (L125). Rett til `/okr:møter`, `/okr:innføring`. +7. **coaching-hook-strenger + læring-regex.** `coaching-hook.mjs:115/124/125` (brukervendte strenger, synlig hver sesjonsstart) + L100 regex → `/## (?:Laering|Læring)/`. +8. **Døde/feil lenker + dokumenttittel.** `futureworks.no` (404) fjern/erstatt; `rework.withgoogle.com` normaliser til `/en/`-form + Wayback-fallback; rett tittel til **«Fremtidens digitale Norge — Nasjonal digitaliseringsstrategi 2024-2030»** (`governance.md:395`). +9. **Dokument-motsigelser.** CONTRIBUTING PR-seksjon → kryssreferanse til GOVERNANCE; SECURITY GitHub → Forgejo/e-post; uciterte statistikker (39/43/30-45/60%) merk «industri-rapportert (ikke fagfellevurdert)» eller erstatt med Locke & Latham-effektstørrelser. +10. **CLAUDE.md «References (15)»** → **utsett til etter Fase 2** (Fase 2 kan avskrive filer og endre tallet). Sett her bare hvis Fase 2-beslutningen allerede er tatt; ellers er dette en Fase 2-leveranse. +11. **Versjon:** SKILL.md `version` → 1.3.1, sync plugin.json, release-tag + katalog-`ref` (release-plugin.mjs), push-vindu. + +**Voyage:** `/trekbrief` (ramme sanering + DDT-beslutning + verifiseringsplikt) → `/trekplan` (fil-for-fil, hvert steg med On-failure/Checkpoint, circuit-breakers på #1/#5) → `/trekexecute` → `/trekreview` (bekreft 0 artefakter, 0 strippede tegn, én scoringsverdi, kanonisk kilde intakt). + +--- + +## 4. Fase 1 — Domenedybde og kildeintegritet + +**Avhenger av:** Fase 0. **Serialisér FØR Fase 2** (deler `møter.md` + `møtefasilitator-agent.md` — kan ikke kjøre parallelt). **Estimat:** 2-3 sesjoner. **Versjon ved slutt:** **1.4.0** (sammen med Fase 2). + +**Leveranser:** +1. **Tertial-korreksjon.** Presiser: formelt regime har **2 interim-punkter** (30. april / 31. august) + årsrapport; DFØ vektlegger nå halvårs-/årsrapportmøte. 4-mnd OKR-syklus = pragmatisk valg som *aligner med* — ikke er identisk med — rapporteringsregimet. «Sjekk eget tildelingsbrev.» (`dfo-okr-mapping.md:45`, `okr-framework.md:205`). +2. **OKR posisjonert som lag oppå mål- og resultatstyring** (MRS, økonomireglementet §4) — ikke erstatning. Ny seksjon om **tillitsreformen** (sentral styringsspenning, i dag fraværende). **«Målforskyvning»** lagt til som førsteklasses norsk antipattern. +3. **Metodikk-presisjoner.** Doerrs advarsel mot å snitte committed+aspirational sammen (inn i aggregeringslogikk); Intel rettet (85% = *gjenvunnet* 16-bit-andel, ikke «fra 0%»; ~2300-2500 design wins oppnådd vs 2000 mål); Locke & Latham «250%» → «vanskeligste vs enkleste mål»; legg til Kleingeld-journalref (JAP 96(6):1289-1304). +4. **«Kvartalsreview» → «Syklusreview»** (`møter.md:60`, `møtefasilitator-agent.md:39`); «kvartalsvise» → «syklusvise» (`okr-implementation.md:48/415`). +5. **Reelle norske offentlig-sektor-referanser** (Digdir produktorganisering, NRK/Ruter som faktisk offentlige, Knowit «fire fallgruver») med tydelig vendor-/praktiker- vs uavhengig-merking. + +**Voyage:** `/trekresearch` (Tavily/WebFetch triangulerer DFØ-currency, tillitsreform, reelle caser mot primærkilder; confidence-rating) → `/trekplan` → `/trekexecute` → `/trekreview`. + +--- + +## 5. Fase 2 — UX-koherens og kommando-/agent-modning + +**Avhenger av:** Fase 0 (+ org-kontekst-sti-beslutning, se under). **Serialisér ETTER Fase 1** (delt fil-eierskap). **Estimat:** 1-2 sesjoner. **Versjon ved slutt:** **1.4.0**. + +**Forhåndsbeslutning (kritisk avhengighet):** Bestem **kanonisk org-kontekst-sti FØR denne fasen** — `~/.claude/okr/org/` (reinstall-overlevende, Fase 3-mål) vs prosjektlokal. Agentene wires til å lese fra **endelig** sti her, slik at Fase 3 ikke må gjøre om arbeidet. + +**Leveranser:** +1. **Kontekstbevissthet-blokk** i `møter.md` (syklusfase-deteksjon + OKR-antall) — på linje med de 8 andre. +2. **gap vs governance disambiguert.** «Bruk /okr:gap når … (kvantitativ dekningsmatrise)» vs «Bruk /okr:governance når … (kvalitativ oversettelse + compliance)». Avdupliser den identiske innholdstabellen. +3. **Negative triggere** per agent (særlig `styringsrådgiver` vs `gapanalytiker`, begge på «tildelingsbrev»); `fremdriftssporer` instruert til å lese full antipatterns-fil; **alle Task-spawnbare agenter leser org-kontekst direkte fra fil** (endelig sti). +4. **6 usiterte referansefiler** (`dfo-okr-mapping`, `individual-vs-team-okr`, `metrics-library`, `okr-cheatsheet`, `okr-integrations`, `okr-sources`) — wire inn i relevant kommando/agent eller eksplisitt avskriv. **Deretter** rett CLAUDE.md referanse-tall til post-avskriv-tallet. +5. **Template-YAML ↔ onboarding-skjema-sync** (`okr.local.md.template`); paritetstest manuell bootstrap vs hook-forventet skjema. + +**Filer eid av Fase 2 (ikke Fase 1):** `møter.md` (Kontekstbevissthet), agentfilene (negative triggere). Fase 1s `møter.md`-rename (Kvartalsreview) gjøres FØR Fase 2 starter. + +**Voyage:** `/trekbrief` (avgrens UX-scope + org-sti-beslutning) → `/trekplan` (Verifisering: grep bekrefter Kontekstbevissthet i alle 10 kommandoer; manuell rm-validering allerede gjort i Fase 0) → `/trekexecute`. + +--- + +## 6. Fase 3 — Referansegrad-løft mot ms-ai-architect-paritet + +**Avhenger av:** Fase 1 + Fase 2. **Estimat:** 2-3 sesjoner (flersesjons). **Versjon ved slutt:** **1.5.0** (nye kommandoer = minor). + +**Leveranser (prioritert etter adopsjonsverdi):** +1. **[MUST] Reinstall-overlevende `~/.claude/okr/org/`.** Implementer flytting + **bakoverkompatibel fallback** (les ny sti, fall tilbake til prosjektlokal). Oppdater CLAUDE.md «State Management» + `okr.local.md.template` i samme endring. On-failure: agenter faller tilbake til hook-injeksjon, ikke error. (Sti-beslutningen ble tatt i Fase 2; her implementeres migrasjonen.) +2. **[MUST] `/okr:help`** — alle 10 kommandoer + 7 agenter + anbefalt tidlig/midt/sen-syklus-arbeidsflyt. +3. **[SHOULD] Ankrede scoringsrubrikker** (`okr-quality-rubrics.md`, 5 ankere/dimensjon) som `kvalitetssjekker` laster → determinisme i governance-kontekst. +4. **[SHOULD] Test-fixtures + `node --test` smoke-test** for de to hookene (fanger skjema-drift). +5. **[SHOULD] `/okr:export` (PDF)** for kvalitetsvurderinger, gap-matriser, statusrapporter, retrospektiver — deling med ledelse/tillitsvalgte/Riksrevisjon. +6. **[SHOULD] UserPromptSubmit emne-guard** — injiser ikke OKR-kontekst på hver prompt uten relevans. +7. **[SHOULD] Bredere offentlig-metrikkbibliotek** (eForvaltningsindeks, WCAG/universell utforming, klagebehandlingsfrist, eFormidling) + minst én reell etat/kommune-differensiering (statlig vs kommunalt styringsregime). +8. **[NICE] `/okr:freshen-references`** — WebSearch/Tavily-subagenter mot dfo.no/regjeringen.no/riksrevisjonen.no for KB-currency. + +**Voyage:** flersesjons `/trekplan` med `.session-state`; `/trekexecute` + `/trekcontinue` mellom sesjoner; `/trekresearch` for metrikkbiblioteket; avslutt med `/trekreview` mot brief-kriteriene for å bekrefte referansegrad. + +--- + +## 7. Tverrgående krav + +| Krav | Detalj | +|------|--------| +| **Versjon per fase** | Fase 0 → 1.3.1 (patch) · Fase 1+2 → 1.4.0 (minor) · Fase 3 → 1.5.0 (minor, nye kommandoer). Tag + katalog-`ref` (release-plugin.mjs) som **avsluttende leveranse i HVER fase**, i push-vinduet. | +| **Rollback** | Hvis en publisert tag senere må korrigeres fordi en senere fase endret kanonisk innhold tag-en averterte: dokumentér og lag patch-tag. | +| **Fil-eierskap** | `møter.md` + `møtefasilitator-agent.md` deles av Fase 1 (rename) og Fase 2 (Kontekstbevissthet/triggere) → **serialisér Fase 1 før Fase 2**. Ingen fil redigeres av to parallelle løp. | +| **On-failure/Checkpoint** | Hvert `/trekplan`-steg bærer begge. Destruktive steg (UTF-8-omskriving, DDT, rm -rf) = circuit-breaker (halt hele fasen ved feil). | +| **Gemini-triangulering** | Gemini-bridge var nede (deprecated Interactions API SDK). Oppgradér `gemini-mcp`-SDK før neste runde som trenger uavhengig triangulering. | +| **STATE.md** | Local-only (offentlig remote). Oppdatér ved hver sesjonslutt. | + +--- + +## 8. Sporbarhet: funn → fase + +| # | Funn (alvorlighet) | Fase | +|---|--------------------|------| +| 1 | Scoringsterskel selvmotsigende ≥5 filer (KRITISK) | Fase 0 | +| 2 | Fiktiv etat DDT presentert som fakta + fabrikkert Oboard-kilde (KRITISK) | Beslutningsport + Fase 0 (el. Fase 0b) | +| 3 | Total UTF-8-korrupsjon i 2 filer + hook (KRITISK/HØY) | Fase 0 | +| 4 | Find-replace-artefakter i kopierte eksempler (HØY) | Fase 0 | +| 5 | Læring-regex feiler på «Læring» (HØY) | Fase 0 | +| 6 | CONTRIBUTING↔GOVERNANCE-motsigelse (HØY) | Fase 0 | +| 7 | SECURITY peker GitHub på Forgejo-repo (HØY) | Fase 0 | +| 8 | OKR-01 rm -rf ugardert (MEDIUM, men høyest data-tap-risiko) | Fase 0 (flyttet fra Fase 2) | +| 9 | ASCII-kommandonavn i README/oppsett/hook (MEDIUM) | Fase 0 | +| 10 | Døde lenker + feil dokumenttittel (MEDIUM) | Fase 0 | +| 11 | Uciterte statistikker som fakta (MEDIUM) | Fase 0 | +| 12 | Intel/Locke faktarammings-feil (INFO/MEDIUM) | Fase 1 | +| 13 | Committed+aspirational snittes sammen (MEDIUM) | Fase 1 | +| 14 | Tertial overdrevet som DFØ-standard (MEDIUM) | Fase 1 | +| 15 | Tillitsreform + målforskyvning fraværende (REFERANSEGRAD-GAP) | Fase 1 | +| 16 | «Kvartalsreview» i 4-mnd-plugin (MEDIUM) | Fase 1 | +| 17 | møter.md mangler Kontekstbevissthet (LAV) | Fase 2 | +| 18 | gap vs governance overlapp (MEDIUM) | Fase 2 | +| 19 | Agenter mangler negative triggere (MEDIUM) | Fase 2 | +| 20 | Agenter blinde ved Task-spawn (MEDIUM) | Fase 2 | +| 21 | 6 usiterte referansefiler (SHOULD) + CLAUDE.md-tall | Fase 2 | +| 22 | Template ≠ onboarding-YAML (MEDIUM) | Fase 2 | +| 23 | Ikke reinstall-overlevende org-kontekst (REFERANSEGRAD-GAP/MUST) | Fase 2 (beslutning) + Fase 3 (impl.) | +| 24 | Mangler /okr:help, rubrikker, fixtures, PDF-eksport (SHOULD) | Fase 3 | +| 25 | UserPromptSubmit uten emne-guard (SHOULD) | Fase 3 | +| 26 | Tynt offentlig-metrikkbibliotek (SHOULD) | Fase 3 | +| 27 | SKILL-versjon 1.0.0 vs 1.3.0 (MUST) | Fase 0 (del av versjonsbump) | + +**Vurdert og forkastet:** Share-session-as-artifacts (claude.ai-hostet, Team/Enterprise-gated, dataresidens/Schrems II for offentlig sektor) — operatørbeslutning 2026-06-23, tas ikke inn.