feat(okr): KR-datakontrakt i skriv-malen

This commit is contained in:
Kjell Tore Guttormsen 2026-08-01 22:31:53 +02:00
commit e3a99b02ff
2 changed files with 84 additions and 0 deletions

View file

@ -104,6 +104,54 @@ KR[n]: [Formulering med baseline → target]
- Type: Committed / Aspirational
```
### Maskinlaget: KR-datakontrakten i frontmatter
Punktprosaen over er for mennesker og beholdes uendret. Ved siden av den legges
**samme tall som maskinlesbar frontmatter** i `okr-*.md`, slik at rapport-
generatorene (`/okr:rapport`) kan lese syklusen uten å tolke prosa.
Emitter fem nøkler per KR `n`, nummerert fra 1:
```yaml
---
type: OKR
kr1_navn: Saksbehandlingstid førerkort (dager)
kr1_baseline: 14
kr1_target: 5
kr1_naa: 11
kr1_type: committed
kr2_navn: Andel digitale søknader (%)
kr2_baseline: 60
kr2_target: 85
kr2_naa: 72
kr2_type: aspirational
---
```
| Nøkkel | Innhold |
|--------|---------|
| `krN_navn` | Tekst. Kortform av KR-en. **Enheten hører hjemme her** (og i prosaen) |
| `krN_baseline` | Utgangspunktet ved syklusstart |
| `krN_target` | Målverdien ved syklusslutt |
| `krN_naa` | Nåverdien. **Oppdateres ved hver check-in** |
| `krN_type` | `committed` eller `aspirational` — små bokstaver |
**Tre regler som gjør kontrakten lesbar for generatoren:**
1. **Rene tall uten enhet.** `kr1_baseline: 14`, aldri `14 dager` eller `60 %`.
Enheten bæres av `krN_navn` og av prosaen — et tall med enhet er ikke et tall.
2. **Score skrives aldri til fil.** Den beregnes av generatoren som
`(nåværende baseline) / (target baseline)`. En lagret score er en andre
sannhetskilde som drifter fra tallene den ble utledet av. Ingen `krN_score`.
3. **Nedadgående mål trenger ingen særbehandling**`baseline: 14, target: 5`
fungerer som-er, fordi teller og nevner begge blir negative.
For binære KR (milepæl): sett `krN_baseline: 0` og `krN_target: 1`, og la
`krN_naa` være `0` eller `1`.
`/okr:skriv` skriver ikke til disk. Emitter frontmatteren sammen med OKR-teksten
og be brukeren lagre den i `.claude/okr/syklus/[syklus-id]/okr-[navn].md`.
## Strategi-til-OKR
Når brukeren har strategidokument eller tildelingsbrev som input: