From 329089671ad7651c18571ab7324b7ee7651626bf Mon Sep 17 00:00:00 2001 From: Kjell Tore Guttormsen Date: Fri, 24 Jul 2026 20:19:48 +0200 Subject: [PATCH] fix(okr): F-e scoreband-til-rubrikk + 10 dims + F-h binaer-unntak + kvalitet F-i --- agents/kvalitetssjekker-agent.md | 34 +++++++++++------- commands/kvalitet.md | 61 +++++++++++++------------------- 2 files changed, 45 insertions(+), 50 deletions(-) diff --git a/agents/kvalitetssjekker-agent.md b/agents/kvalitetssjekker-agent.md index 2abb976..7a9cd96 100644 --- a/agents/kvalitetssjekker-agent.md +++ b/agents/kvalitetssjekker-agent.md @@ -32,19 +32,23 @@ Org-kontekst kan være sendt med i Task-prompten fra den kallende kommandoen — ## Din oppgave -Når du mottar OKR for vurdering: +Scor mot ALLE 10 dimensjonene i den kanoniske rubrikken +(`${CLAUDE_PLUGIN_ROOT}/skills/okr-offentlig-sektor/references/okr-quality-rubrics.md`, +fem ankere per dimensjon). Bær ikke et eget scorebånd — rubrikkfila eier anker → skala. -1. **Analyser hvert Objective** mot disse kriteriene: - - Inspirerende og motiverende? - - Klart og konkret? - - Outcome-fokusert (ikke aktivitet)? - - Aligned med høyere mål? +1. **Scor hvert Objective** mot de 5 Objective-dimensjonene: + - **Inspirerende** — motiverer og kommuniserer hvorfor arbeidet betyr noe + - **Klarhet** — entydig retning alle tolker likt + - **Outcome-fokus** — ønsket tilstand heller enn aktivitet + - **Scope** — riktig dimensjonert for én tertial + - **Alignment** — koblet oppover til org-OKR/tildelingsbrev -2. **Analyser hver Key Result** mot disse kriteriene: - - Målbar med konkrete tall? - - Har baseline og target? - - Outcome-fokusert (ikke output)? - - 2-5 KR per Objective? +2. **Scor hvert Key Result** mot de 5 Key Result-dimensjonene: + - **Målbarhet** — konkrete tall med baseline → target + - **Outcome** — reell effekt heller enn output/aktivitet + - **Ambisjon** — riktig stretch (~70 %), ikke sandbagget + - **Datakilde** — spesifisert og faktisk tilgjengelig + - **Uavhengighet** — teamet kan påvirke utfallet vesentlig (påvirkning, ikke nødvendigvis full kontroll) 3. **Sjekk for antipatterns** fra `references/okr-antipatterns.md`: - Aktivitetsorientert @@ -53,7 +57,7 @@ Når du mottar OKR for vurdering: - Manglende alignment 4. **Gi konstruktiv feedback**: - - Score per element (1-10) + - Score per element (1-10) etter anker → skala i rubrikkfila - Spesifikke forbedringspunkter - Konkrete omskrivningsforslag @@ -97,7 +101,11 @@ Når du mottar OKR for vurdering: ## Scoring-guide -| Score | Betydning | +Anker → 0-10-skala eies av rubrikkfila (`okr-quality-rubrics.md`, «Bruk»-avsnittet): +anker 1 → 1-2 … anker 5 → 9-10. Bruk den skalaen per dimensjon; bær ikke et eget bånd. +Verdikt-tolkning av samlet score (samme skala): + +| Samlet score | Betydning | |-------|-----------| | 9-10 | Utmerket - klar til bruk | | 7-8 | God - små justeringer anbefalt | diff --git a/commands/kvalitet.md b/commands/kvalitet.md index e80aa3f..f694c52 100644 --- a/commands/kvalitet.md +++ b/commands/kvalitet.md @@ -11,19 +11,19 @@ Hjelp brukeren med å vurdere kvaliteten på eksisterende OKR og foreslå forbed ## Kontekstbevissthet -OKR-kontekst injiseres automatisk via hook. Sjekk system-konteksten FØR du spør brukeren: -- Hvis organisasjon og syklus er kjent: hopp over de spørsmålene -- Hvis relevante filer er listet (f.eks. `.claude/okr/syklus/T1-2026/okr-teamet.md`): - les den filen direkte i stedet for å be brukeren lime inn innhold -- Hvis `.claude/okr/strategisk-kontekst/` inneholder relevante docs: les dem -- Hvis `.claude/okr/strategisk-kontekst/overordnede-okr.md` er tilgjengelig fra system- - konteksten, les den og sjekk alignment mellom KR som vurderes og org-OKR. Legg til - Alignment-seksjon i rapporten. +Hooken for-injiserer ikke lenger en fil-liste — den emitterer kun kjerne-profil ++ en peker til wikien. Oppdag OKR-konteksten direkte fra disk FØR du spør brukeren: +- Glob `.claude/okr/syklus/*/` for aktive OKR-filer som skal vurderes — les dem + direkte i stedet for å be brukeren lime inn innhold. +- Glob `.claude/okr/strategisk-kontekst/overordnede-okr.md` — finnes den, sjekk + alignment mellom KR som vurderes og org-OKR, og legg til Alignment-seksjon i rapporten. +- Trenger du bredere kontekst fra brukerens wiki, invoker `okr-second-brain-search`. +- Kjenner du allerede organisasjon og syklus fra kjerne-profilen: hopp over de spørsmålene. ## Arbeidsflyt -1. **Motta OKR** — sjekk injisert kontekst først. Hvis aktive OKR-filer er listet - i system-kontekst, tilby å lese dem direkte. Ellers be brukeren dele OKR-ene. +1. **Motta OKR** — oppdag aktive OKR-filer via Glob (se Kontekstbevissthet) og tilby + å lese dem direkte. Ellers be brukeren dele OKR-ene. - Kan være tekst, bilde, eller hentet fra Linear 2. **Kjør kvalitetssjekk** — vurder mot rubrikk (se under) @@ -43,34 +43,18 @@ OKR-kontekst injiseres automatisk via hook. Sjekk system-konteksten FØR du spø ## Vurderingsrubrikk -### Objective-kriterier (0-10) +Scoringen bruker ÉN kanonisk sannhetskilde — bær ikke et eget scorebånd eller en +inline-rubrikk her: +`${CLAUDE_PLUGIN_ROOT}/skills/okr-offentlig-sektor/references/okr-quality-rubrics.md` -| Kriterie | Score 8-10 | Score 4-7 | Score 0-3 | -|----------|-----------|-----------|-----------| -| Inspirerende | Motiverer teamet | Nøytralt | Kjedelig/byråkratisk | -| Klarhet | Entydig retning | Noe vagt | Flertydig | -| Outcome-fokus | Resultat | Blanding | Ren aktivitet | -| Scope | Passer i syklus | Litt for stort/lite | Helt feil scope | -| Alignment | Tydelig koblet oppover | Implisitt kobling | Ingen kobling | +Fila har fem ankere per dimensjon (svakest → sterkest) over alle 10 dimensjonene: +- **Objective (5):** Inspirerende, Klarhet, Outcome-fokus, Scope, Alignment +- **Key Result (5):** Målbarhet, Outcome, Ambisjon, Datakilde, Uavhengighet -### Key Result-kriterier (0-10) - -| Kriterie | Score 8-10 | Score 4-7 | Score 0-3 | -|----------|-----------|-----------|-----------| -| Målbarhet | Tall med baseline→target | Delvis målbart | Ikke målbart | -| Outcome | Måler resultat | Blanding | Ren output/aktivitet | -| Ambisjon | Riktig stretch | For lett/vanskelig | Urealistisk | -| Datakilde | Spesifisert og tilgjengelig | Antas tilgjengelig | Ukjent | -| Uavhengighet | Team kontrollerer | Delvis avhengig | Helt utenfor kontroll | - -### Samlet scoring - -| Score | Vurdering | Handling | -|-------|-----------|---------| -| 8-10 | Utmerket | Klar til bruk | -| 6-7 | God | Små justeringer | -| 4-5 | Akseptabel | Bør forbedres | -| 0-3 | Svak | Omskriving anbefalt | +Les ankerbeskrivelsen per dimensjon, finn nivået OKR-en faktisk treffer, og scor 1-5. +Anker → 0-10-skala er definert i rubrikkfila («Bruk»-avsnittet): anker 1 → 1-2, +anker 2 → 3-4, anker 3 → 5-6, anker 4 → 7-8, anker 5 → 9-10. Det er rubrikkfila som +eier skalaen; ikke dupliser den her. ## Vanlige antipatterns å sjekke @@ -79,7 +63,10 @@ OKR-kontekst injiseres automatisk via hook. Sjekk system-konteksten FØR du spø 3. **Business-as-usual** — driftsmål forkledd som OKR 4. **For mange OKR** — over 3 Objectives eller 5 KR per Objective 5. **Manglende baseline** — target uten å vite utgangspunktet -6. **Binære KR** — "Ja/Nei" uten progresjonsmulighet +6. **Milepæl som eneste KR** — en ren ferdig/ikke-ferdig-milepæl brukt alene. Milepæl/binær + leveranse er et dokumentert unntak (jf. `okr-framework.md`): akseptabelt når den følges av + et outcome-KR som fanger effekten leveransen skal gi. Antipattern først når milepælen står + alene uten et outcome-KR ved siden av. ## Eksempel på output