Commit graph

108 commits

Author SHA1 Message Date
44ceec7205 fix(okr): C7b remediering R1-R4 (release-relevante review-funn for 1.8.0)
Lukker de fire release-relevante MAJOR-funnene fra /trekreview (S33). Alle TDD
roed -> groenn, ingen fiks landet uten en test som feilet foerst. Suite 163 -> 167.

R1 (af16d5e4) hooks/scripts/coaching-hook.mjs:83 -- LEVENDE REGRESJON innfoert av
1.8.0. Denne releasen skrev status-malen (commands/sporing.md:86-88) om til den
kanoniske skalaen On Track/At Risk/Off Track, mens hooken fortsatt talte kun
/i fare|blokkert/i over tabellrader. En status generert under 1.8.0 ga derfor
atRiskCount = 0 og SessionStart-nudgen sluttet stille aa utloese seg. Hooken
teller naa de kanoniske etikettene; de to norske er BEHOLDT som bakover-
kompatibilitet for status-filer skrevet foer 1.8.0. Nudge-teksten bruker samme
kanoniske vokabular. Ny testcase mates av malen slik den faktisk genereres i dag;
den eksisterende casen beholder gammelt vokabular og daekker legacy-stien.

R2 (7ec575be) F-i-omskrivingen ga hver kommando en Kontekstbevissthet-blokk som
INSTRUERER Glob, men allowed-tools ble kun utvidet i kaskade.md. Glob lagt til i
export, gap, governance, innfoering, kvalitet, moeter, skriv, sporing. Ny vakt-
case (k): nevner BODY verktoeyet, maa frontmatter deklarere det (13 kommandoer
instruerer Glob; alle 13 dekket). Case (i) grepper kun etter fjernede fraser og
kunne ikke fange dette.

R3 (5e61ae0d) tests/package-shape.test.mjs asserterte KUN package.json -- som er
private:true og dermed den ene flaten som aldri shipper. En delvis bump ville
shippet groenn. Ny versjonssync-case dekker .claude-plugin/plugin.json, README-
badgen og begge SKILL.md, med forventet verdi UTLEDET fra package.json (ett sted
aa endre ved neste bump). Mutasjonsbevist: hver av de fire flatene tilbakestilt
til 1.7.1 en om gangen -> casen roed i alle fire tilfeller.

R4 (ccff16e1 + 231c53fc) Tre parallelle confidence-etikettsett overlevde F-c:
fremdriftssporer-agent.md:68 ("Paa sporet / I fare / Blokkert"), :98
("Confidence: [Hoey/Medium/Lav]" -- en annen akse: stoerrelse, ikke sannsynlighet)
og SKILL.md:48 ("blocked"; kanonisk er "off track"). Alle tre erstattet med
referanse til kanon (okr-framework.md:389-392). sporing.md og agenten den
delegerer til svarer naa i samme vokabular. Vakt-case (a)/(b) skanner naa samme
sett som (d) allerede brukte (+ agents/ + SKILL.md), samlet i canonScan(). Ny
case (a2) fanger etikettsett skrevet som bullet eller mal-linje -- tabell-
signaturen alene fanget dem ikke, og det var nettopp formen driften overlevde i.
Divergens gjenkjennes STRUKTURELT (skraastrek-enumerasjon av >= 2 etiketter, med
>= 1 ikke-kanonisk), saa loepende prosa som "For KR i fare" og "Blokkert av
eksterne faktorer" ikke gir falske positive. Verifisert: roed-listen var noeyaktig
de 3 kjente linjene, ingen andre.

CHANGELOG/README: vakt-antall 13 -> 15 cases, suite 149 -> 167, og de fire
fiksene lagt inn under [1.8.0] (Added + Fixed). Ingen versjonsbump.

GJENSTAAR fra reviewet (3 MAJOR, IKKE i denne bolgen): 607313e3 F-d-kadens-
moensteret kan ikke feile paa den kanoniske kadens-tabellen; 029ef814
freshen-references.md:24 baerer fortsatt en foreldet kontekstblokk og vaktens
exclude-kommentar kaller fila feilaktig "allerede-fikset" (den er utenfor
1.8.0-scope by design, jf. ba91fc2 -- kommentaren er usann, ikke ekskluderingen);
7579d59c "Outcome" er utestbar i 10-dims-casen pga. substring-containment.

Verify: node --test --test-reporter=tap tests/*.test.mjs -> 167 pass / 0 fail.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016pUfkQ1YyH75z9y6RBaBHG
2026-07-25 12:33:55 +02:00
37142236f2 feat(okr): 1.8.0 En kanon versjonssync + CHANGELOG
Step 14 (Wave 6), siste steg i fase C3. Alle versjonsflater 1.7.1 -> 1.8.0:
plugin.json:3, package.json:3, package-lock.json:3+9, CLAUDE.md:1, README.md
badge, SKILL.md x2. Ny Keep-a-Changelog-seksjon [1.8.0] + README-historikkrad
som oppsummerer F-a..F-i, score-grenser, konsistensvakten og C6-markeds-
oppdateringen fra Steps 1-13.

TDD: package.json bumpet foerst -> package-shape.test.mjs case 1 gikk ROED
(expected 1.7.1, actual 1.8.0) -> assertion + header-kommentar oppdatert til
1.8.0 (minor-lane C: En kanon) -> GROENN. Historiske "B1/B2 (1.7.1)"-
provenanskommentarer i tester og historikkrader for 1.7.1 er urort.

To presisjonsfikser tatt inn fra S31-funn (begge i filer Step 14 allerede rorer):
- CLAUDE.md:21 sa "score the 16 domain reference files". Fasit: 16 AV 17 scores;
  okr-quality-rubrics.md er ekskludert (sirkulaer - den er selv scorings-
  instrumentet). Skrevet i samme presise form som README:150.
- CLAUDE.md:73 pekte paa lib/innboks-convert.mjs. Modulen har ALDRI eksistert
  (git log --all paa stien: tom; adapterne har ligget i lib/convert/ siden
  a807ee2). Rettet til lib/convert/index.mjs. Samme feilsti stod i CHANGELOG
  1.7.0-noten (linje 34) og er rettet der ogsaa: en dokumentert modul som aldri
  fantes er en usann paastand, ikke historisk provenans.

CHANGELOG-datoen er satt til 2026-07-25 (i dag). Faller C7-releasen paa en
senere dato, maa datoen justeres da.

Verify: node --test --test-reporter=tap tests/*.test.mjs -> 163 pass / 0 fail.
grep -rc "1.7.1" plugin.json package.json CLAUDE.md -> 0/0/0.
9 filer endret = Manifest expected_paths 1:1.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016pUfkQ1YyH75z9y6RBaBHG
2026-07-25 06:44:35 +02:00
1cb2eed5a2 fix(okr): C6 markedsoppdatering + kaskade F-i (verifisert-bruker, align-not-cascade, NCT)
C6 markedsclaim -> verifisert-bruker-disiplin (README):
Paastanden "increasingly by Norwegian public sector organizations like NAV and
FINN.no" hadde ingen kilde i kunnskapsbasen. Erstattet med fire adoptorer som
ALLE har en offentlig kilde i okr-sources.md par. 4 (Digdir, NAV-team, Oslo
Origo, FINN.no) + eksplisitt setning om at usourcede virksomheter ikke navngis.
Skatteetaten/Entur/Politiet er fortsatt IKKE verifisert og navngis derfor ikke.

okr-sources.md par. 4: NAV manglet helt som oppslag selv om README paastod
bruken. Lagt til med first-party-kilde (aksel.nav.no produktbloggen), scopet
til team-/produktnivaa - etatsnivaa-OKR er ikke dokumentert.

okr-sources.md par. 7 (ny): alternative rammeverk med verifisert attribusjon.
- NCT (Narrative, Commitments, Tasks) tilskrives Ravi Mehta / Reforge, med
  eksplisitt advarsel om den vanlige feilattribusjonen til Radical Focus 2. utg.
- Evidence-Based Management -> 2024-guiden. Kun det verifiserte "what's new"
  er gjengitt (KVA-til-maaletype-kobling, Input/Impact som egne maaletyper,
  klargjorte KVA-beskrivelser). Mission/Vision-innrammingen fra raarapporten
  er UTELATT - ikke bekreftet av Scrum.orgs egen What's-New.
Sist oppdatert-markoer bumpet Januar -> Juli 2026.

align, don't cascade (kaskade.md + kaskadebygger-agent.md):
Begge flater laerte mekanisk kaskadering ("et overordnet KR blir teamets
Objective"). Rammet om til alignment via lineage: org-KR er INPUT til teamets
Objective, teamet omformulerer og eier formuleringen, team-KR maaler teamets
eget bidrag, og manglende paavirkbarhet rapporteres som gap i stedet for et
konstruert bidrag. Individ-OKR eksplisitt utelukket paa begge flater.
NAV-praksisen er brukt som norsk anker for doktrinen.

F-i (kaskade.md): siste gjenstaaende foreldede kontekstblokk skrevet om til
post-1.6.0-moensteret (analyse.md:13-20). Glob lagt til i allowed-tools siden
blokken naa instruerer Glob.

Planavvik (premiss-verifisering): Step 13 sa README "16" -> "17 domenefiler".
Ground truth motsier premisset - freshen-references.md scorer 16 AV 17 filer
(okr-quality-rubrics.md er eksplisitt ekskludert som sirkulaer). "17" ville
gjort README feil. Skrevet presist i stedet: "16 of the 17 ... the quality
rubric itself is excluded". Planens Verify (grep -c "16 domain" -> 0) passerer.

Vakt-case (i) GROENN. Alle 13 konsistens-cases groenne; suite 163/163/0.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016pUfkQ1YyH75z9y6RBaBHG
2026-07-25 06:32:18 +02:00
ba91fc2a1a fix(okr): F-i post-1.6.0 kontekstblokker (6 kommandoer) + kadens-konsumenter
F-i: seks kommandoer paastod fortsatt at hooken for-injiserer en fil-liste.
Skrevet om til post-1.6.0-moensteret (analyse.md:13-20 / governance / kvalitet):
disk-oppdagelse via Glob + peker til okr-second-brain-search for bredere wiki-
kontekst + kjerne-profil for organisasjon/syklus.
- sporing.md: blokk + den stale "Automatisk OKR-lasting"-underseksjonen UTENFOR
  headeren fjernet (enumererings-logikk, ikke bare header-paastand)
- skriv.md, moter.md, gap.md, export.md, innforing.md: blokk

F-c (sporing): egne confidence-nivaaer ("Paa sporet / I fare / Blokkert" med
trend-kriterier) + et fjerde vokab ("Confidence level: Medium") -> refererer den
kanoniske confidence-tabellen i okr-framework.md; trend er naa ETT innspill, ikke
en definisjon. Eksempel-output bruker samme kanoniske merkelapper.

F-d (moter): check-in-motet stod "Ukentlig eller annenhver uke, 15-30 min,
Team + leder" -> kanonisk "Ukentlig, 15 min, Team", med eksplisitt note om at den
maanedlige statusgjennomgangen for ledergruppen er et EGET mote (annet publikum).

Verifisert konsistent uten endring: innforing.md:117-118 (ukentlige check-ins +
maanedlig review med sponsor) foelger allerede kanon. 1:1-kadensen i moter.md
er CFR-styrt (cfr-framework.md), ikke dekket av kadens-tabellen - urort.

Vakt-case (i): 8/9 kommandoer lukket. Gjenstaaende treff er KUN kaskade.md
(Step 13, Wave 5); freshen-references.md er utenfor 1.8.0-scope by design.
Suite 163/162/1.
2026-07-25 06:13:38 +02:00
08d135d5d3 fix(okr): F-c/F-d konsument-dedup i referansefiler + SKILL
Kadens-drift rettet mot den kanoniske kadens-tabellen i okr-framework.md
(ukentlig team-check-in / maanedlig statusgjennomgang til ledergruppen):
- meeting-guides.md: moete 2 var "Maanedlig OKR Check-in" med publikum Team
  -> "Ukentlig OKR Check-in (team)", 15 min, agenda-timing komprimert
- okr-cheatsheet.md: syklus-diagram + Quick Tips baerer naa begge rytmer
- dfo-okr-mapping.md: kadens-raden viste kun maanedlig check-in
- SKILL.md: "monthly check-ins" -> begge rytmer + peker til kanon

F-c: meeting-guides definerte egne confidence-terskler som andel av
forventet (over 70 / 50-69 / under 50 prosent) -> refererer naa den
kanoniske confidence-tabellen i okr-framework.md (sannsynlighet for
aa naa target), ingen egne terskler.

okr-arshjul.md verifisert konsistent uten endring (ukentlig-leir:
linje 57-58, 171, 174). SKILL.md versjonslinje uroert (Step 14).

Vakt-case (b) FLIPPET GROENN. Suite 163/162/1 - gjenstaaende roed
er (i), som lukkes i Wave 5 / Step 13.
2026-07-25 06:10:27 +02:00
329089671a fix(okr): F-e scoreband-til-rubrikk + 10 dims + F-h binaer-unntak + kvalitet F-i 2026-07-24 20:19:48 +02:00
5d540f8b5a fix(okr): F-f rubrikk-anker paavirkning + Outcome/Uavhengighet-avveining 2026-07-24 20:15:37 +02:00
51f6e23175 fix(okr): F-b committed=forpliktelse OG paavirkbarhet + governance F-i 2026-07-24 20:14:04 +02:00
4bbba6e719 fix(okr): F-a fjern score-til-modenhet + F-g ekte antipattern-kategorier 2026-07-24 19:57:34 +02:00
e7eee0d8f8 fix(okr): score-grenser (kapp/div-null) + F-c confidence-dedup 2026-07-24 07:01:07 +02:00
8b1bd4bd19 fix(okr): F-h/F-11 milepael-unntak + committed=1.0 + committed-doktrine 2026-07-24 06:56:33 +02:00
b7f21c8482 fix(okr): F-d EN kadens-doktrine (ukentlig team + maanedlig ledelse) 2026-07-24 06:55:02 +02:00
e0263c3e77 fix(okr): F-c EN kanonisk confidence-tabell i framework 2026-07-24 06:52:38 +02:00
3b1b255ed6 test(okr): referanse-integritet dekker skills relative lenker 2026-07-24 06:48:20 +02:00
5166dbf772 test(okr): kanon-konsistensvakt RED-baseline (F-a..F-i)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MZ4qHkTDUn9tDRi8YS8cF8
2026-07-24 01:50:11 +02:00
056b6522f1 docs(okr): trinn C-tillegg til fase-4-kartlegging (adopsjonsrunden)
Deltakelse i den koordinerte OKF-adopsjonsrunden (ni repo). Varig innhold
festet i eget repo per postkasse-regel 2; svaret selv ligger i den
midlertidige postkassen.

Nytt i §6: primitiv-hypotesen bekreftet mot egen kode, med forbehold om at
orkestreringen (gate-foer-relasjoner, gate-scoping, claimed-register,
per-dokument-rollback) er den dyre delen og maa foelge med som referanse-
orkestrator. Flat-vs-hierarkisk indeks: format kan deles, kontrakt ikke --
to lenkekonvensjoner i samme bundle kollapser i en flat modell. Konvergens
med to andre repo paa writer-primitivet (frontmatter-passthrough, som vi
allerede har). Bundle-plassering: compliant, men cwd-binding flytter
lekkasjeflaten uten aa fjerne den.

Ingen kodeendring.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AGkEqS3Zxf7rVuUQHrsQG2
2026-07-20 08:53:07 +02:00
29401bcd60 docs(okr): fase-4-kartlegging for llm-ingestion-okf (planned, ingen kode)
Forarbeid mot fase 4: all OKF-kode (okf-check/okf-index/innboks-ingest,
lib/okf-*.mjs, lib/innboks-*.mjs, lib/convert/) lest mot ground truth og
skilt i generelt vs. okr-spesifikt. Kravliste for at okr skal kunne vendore
en delt Node-utgave, samt okrs faktiske bruk av okf_version (ekko-tekst i
rot-index.md, kb-layout-2026-06) og hvorfor avviket mot spec-ens 0.1 er et
felt-type-avvik, ikke bare en verdiforskjell.

Ingen kode endret, ingenting wiret. Markørlinje satt til planned i STATE.md
(local-only). Meldt avvik: bibliotekets koordineringsvedlegg er utdatert.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AGkEqS3Zxf7rVuUQHrsQG2
2026-07-20 07:23:04 +02:00
482effbad1 fix(okr): B2 ingestion-kode-hygiene + bump 1.7.1 (patch-lane)
8 hygiene-fikser fra review 2026-07-16 par.4 kode-lista, TDD roed-groenn
(suite 138 -> 149):
- innboks-split: slugify translittererer ae/oe (datatap-fiks)
- innboks-frontmatter: beskrivende feil ved manglende sourceMtime
- okf-index: --okf-version bumper eksisterende rot, flagg-tolerant CLI
  (exit 2 ved manglende verdi), sanitizeEntry strip C1/zero-width/bidi/
  Unicode-tag
- write-org-profile: circuit-breaker MERGER i stedet for aa overskrive
  full config (M4); test beviser at eksisterende config overlever
- compose-org-profile: intern ----linje trunkerer ikke blokken
- coaching-hook: at-risk teller status-markerte tabellrader (M1/m1)
- inject-okr-context: topic-guard treffer boeyningsformer (maalene)
- frontmatter: BOM/CRLF-toleranse (falsk mangler-type-fiks)

Versjonsflater bumpet til 1.7.1 (package/plugin/lock/CLAUDE/README/
SKILL x2/package-shape-test) + CHANGELOG 1.7.1-seksjon (B1+B2).
Release-tag + katalog-ref venter paa [G-B] operatoer-go.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 04:02:10 +02:00
6028ac2f90 fix(okr): B1 KB/doc-hygiene + referanse-integritetstest (1.7.1-lane)
- Ny tests/reference-integrity.test.mjs: alle ${CLAUDE_PLUGIN_ROOT}-stier i
  commands/agents må finnes på disk OG være shippbare (aldri under gitignored
  .claude/). Fanger død-referanse-klassen permanent (TDD: rød på
  freshen-references før fiks). Suite 135 -> 138.
- Døde referanser lukket: freshen-references peker nå på metrics-library
  «Review-kadens»; metrics-library-provenanslinje uten død relativ sti.
- Kryssref-isolasjon: «Ressurser/Interne referanser»-seksjon i de 5 isolerte
  KB-filene (examples, oboard-guide, meeting-guides, calculator, cfr).
- «Sist oppdatert»-markør på alle 17 referansefiler (var 4).
- 19 -> 20 antipatterns (SKILL, kvalitet x2, help — help-forekomst funnet i
  sweep utover review-lista); «15. oktober» -> tidlig oktober (arshjul x2,
  framework); garblet prognoseformel rettet mot calculator-kanon (framework).
- Typonits: schuld/Næste (meeting-guides), resultatmål (dfo-mapping),
  sandbagging (trendanalytiker), Q1-2026 -> T1-2026 (fremdriftssporer).
- README: hooks-badge 4 -> 3, død Stop-rad fjernet.
- BACKLOG.md foldet inn i docs/roadmap.md (tema-nivå, ingen interne
  plandetaljer) og slettet; .gitignore ROADMAP.md ankret til rot (/ROADMAP.md)
  så docs/roadmap.md kan trackes.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 03:43:22 +02:00
8328d5d31e feat(okr): innboks-ingestion 1.7.0, docs + release (SC alle)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 03:21:55 +02:00
0fcc88430c fix(okr): SKILL.md untrusted-content-herding + kilde-rangering mot RAG-poisoning
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 03:15:30 +02:00
79d3c1ee64 feat(okr): /okr:innboks kommando (tynn wrapper, ASCII) [skip-docs]
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:34:08 +02:00
7643304177 feat(okr): innboks-ingestion orkestrator end-to-end, idempotent by construction (SC1-6) [skip-docs]
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:32:50 +02:00
188b534a3b fix(okr): B1 pekerfil uten lenkeform + B5 kollisjons-guards (kuratert-vern, reservert index.md, kryss-kilde claimed) [skip-docs]
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:27:55 +02:00
7f9c790f43 fix(okr): gate-herding B2 scoped strict + B3 alle lenkeformer + M2 realpath-confinement + M3 deriveType basename/ord-grense
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:12:35 +02:00
a807ee2b79 feat(okr): pure-JS konverterings-adaptere txt/docx/eml/pdf + ukjent-ext-skip (SC format) [skip-docs]
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:06:43 +02:00
249de8fb2d feat(okr): package.json + engines>=22 + pinnede pure-JS converter-deps + dep-disclosure (Topic 1)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-16 20:02:22 +02:00
dec8a13952 fix(okr): okf-index saner title/desc + escape klammer + skip innboks/dot (SC index-integritet)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

Claude-Session: https://claude.ai/code/session_012HzGPGJ81k1BkUC6UvgX4Y
2026-06-30 14:01:19 +02:00
3b45be70be feat(okr): okf-check++ strictIngest (vokab+lenker) + skip innboks/dot (SC konformitet) [skip-docs]
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

Claude-Session: https://claude.ai/code/session_012HzGPGJ81k1BkUC6UvgX4Y
2026-06-30 13:55:34 +02:00
935c1d0ae9 feat(okr): konsept-skriver m/ type-til-nivaa-ruting + original-bevaring (SC original, riktig nivaa) [skip-docs]
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012HzGPGJ81k1BkUC6UvgX4Y
2026-06-30 13:33:38 +02:00
2b0c520efd feat(okr): delt bundle-root-relativ lenke-resolver + zero-dangling relasjoner (SC relasjoner) [skip-docs] 2026-06-30 13:01:19 +02:00
d011fb1922 feat(okr): deterministisk frontmatter-projeksjon + vokab-snap + mtime-timestamp (SC idempotens) [skip-docs] 2026-06-30 12:58:26 +02:00
136093da38 feat(okr): deterministisk heading-split for ingestion (SC idempotens) [skip-docs] 2026-06-30 12:54:57 +02:00
ca6c89e7be feat(okr): writeFrontmatter multi-linje tags-liste (additiv array-gren) [skip-docs] 2026-06-30 11:04:29 +02:00
a9d9c45192 feat(okr): lukket OKF type/tags-vokabular for ingestion-snap [skip-docs] 2026-06-30 11:00:16 +02:00
abfcc6b48e test(okr): innboks-ingestion fixtures (inbox + pre-converted) 2026-06-30 10:57:54 +02:00
f0ef6c1abc docs(claude-md): tighten State-Management prose (okr CLAUDE.md near-optimal)
CLAUDE.md loads every turn while working in this repo (measured 1,732
always-loaded tokens — the whole per-repo delta; no .claude/rules or .mcp.json).
Unlike the larger plugins, this file is already information-dense (tables + precise
design contracts), and the OKF Knowledge Layout content is under active development
(the "OKF second-brain spec" work), so it is left untouched.

The only safe, fact-preserving compression is the org-profile State-Management
paragraph (stable infra, not OKF-spec): same facts, tighter wording. 1,732→1,717
tok. The one remaining lever — the command→agent Architecture routing diagram
(~230 tok) — is a deliberate wiring reference and is kept; it can move to
/okr:help on request. Docs-only — no version bump, no catalog ref change.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01683eAqVecv9VZfQzL8CQ9h
2026-06-29 10:22:57 +02:00
75bfc9b47d docs(okr): ratify OKF second-brain spec v0.1 + adapt innboks-plan
Handoff catalog/docs/okf-second-brain/handoff-2026-06-29.md §3 (operator relay
fra linkedin-studio-sesjonen). okr ratifiserer den delte konvensjonen (spec.md
v0.1, katalog-eid single source of truth) etter ground-truth-verifisering:

- okf-check.mjs-semantikken bekreftet = referansekontrakt (spec §3/§7): kun
  type paakrevd (okf-check.mjs:50), anbefalte felt -> warnings (:19,:55),
  okf_version-ekko uten auto-fetch (:36-41,:85). 91/55 linjer, zero npm-deps.
- okr bruker resource (ikke source): alle emittere (okf-check RECOMMENDED,
  compose-org-profile:59, template:15, second-brain SKILL:56). Eneste source-
  treff er prosa, ikke felt.
- Ingen feltgap: profil/config-noekler baeres som extension keys (spec §5).

Adaptert: veivalg-doc + okf-note refererer naa spec-en (redefinerer ikke);
premiss-korreksjonene (§2) kanonisert i spec §9. Delings-scope for evt.
Stage-3-skill = okr + ms-ai-architect (ikke linkedin-studio). Ingen kode-/
versjonsendring (okr forblir 1.6.1); separat go for selve innboks-byggingen.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012HzGPGJ81k1BkUC6UvgX4Y
2026-06-29 09:46:57 +02:00
30545b982e fix(okr): credibility-sanering fra 360-re-evaluering + bump 1.6.1 v1.6.1
Lukker de 5 credibility-kritiske funnene fra docs/evaluering-360-2026-06-26.md:
1. okr-quality-rubrics.md omskrevet til korrekt norsk (var ASCII-strippet, 0
   aa/oe/ae; lastes brukervendt av /okr:kvalitet + kvalitetssjekker +
   freshen-references). Regresjon i samme klasse som v1.3.0-showstopperen.
2. SKILL.md flaggskip-eksempel: strippet norsk rettet (per aar/hoyrisiko/
   spoerreundersoekelse/Gjennomfoere moeter).
3. okr-second-brain-search ~-glob: literal ~ ekspanderes ikke av Glob ->
   hjemme-roten ble aldri soekt. Naa eksplisitt absolutt hjemme-sti.
4. Uverifisert kb-search-sitat fjernet (motsagt av innboks-ingestion-funn);
   erstattet med funksjonell Glob/Read/Grep + discovery-moenster.
5. okr-oboard-guide.md KR1-regnefeil 52% -> 65% (per filens egen formel).

Bump alle flater 1.6.0 -> 1.6.1 (plugin.json, CLAUDE.md, README badge+hist,
begge SKILL.md, CHANGELOG). Suite 55/55 groenn. C+ -> A-; systemiske funn
(KB-kryssref, Sist-oppdatert-markoerer) bevisst utsatt.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SFW5scLL7oEwWWTv1fPQG6
2026-06-26 21:31:42 +02:00
e2d5ddb85f docs(okr): 360-re-evaluering v1.6.0 (C+ -> A-) + skills/KB-scoring
Tiltak #2 (full re-evaluering) levert. 5 Opus-agenter: 2 KB-ref-scorere
(16 domene-filer mot freshen-rubrikken), 2 skill-evaluatorer, 1 360-delta-
verifikator mot alle v1.3.0-funn. Lead reviewer ground-truth-verifiserte
de baerende funnene mot fil.

Resultat: alle KRITISKE/HOEYE 360-funn (DDT, scoringsterskel, UTF-8,
find-replace, doc-motsigelser) bevist lukket; hele ms-ai-architect-gapet
levert (org-katalog, /help, rubrikker, 55 groenne tester, PDF, org-lesende
agenter). C+ -> A-.

Holder igjen A: EN regresjon i samme klasse som showstopperen --
okr-quality-rubrics.md er ASCII-strippet (0 aa/oe/ae) og lastes brukervendt
av /okr:kvalitet. + SKILL.md flaggskip-eksempel strippet; second-brain
~-glob soeker aldri hjemme-roten; kb-search-sitat uverifisert; oboard-guide
regnefeil 52->65%. Prioritert retteliste = kandidat 1.6.1.

Skills: okr-offentlig-sektor B+, okr-second-brain-search B (foerstegangs).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SFW5scLL7oEwWWTv1fPQG6
2026-06-26 21:23:45 +02:00
6a595bf69e docs(okr): innboks-ingestion veivalg + avstemming mot convergence-brief
Operatør-låst posisjon (2026-06-26): innboks-ingestion er OBLIGATORISK for okr (ikke 'defer'), krever grundig planlegging, eget Voyage-løp. linkedin-studio er IKKE en mal (annen tilnærming) -> omstøter convergence-briefens 'rise to the reference design' for okr. Skiller verifiserte tekniske premisser (beholdes: ingen Google inbox->OKF-pipeline, mdcode ikke OKF, relasjoner=md-lenker, OKF v0.1 paa okf/SPEC.md) fra strategisk framing (avvises for okr). Lister gap som maa bygges + gjenbruk fra 1.6.0 + aapne /trekbrief-spoersmaal (zero-dep-konflikt for dok-konvertering flagget). STATE.md peker hit.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SFW5scLL7oEwWWTv1fPQG6
2026-06-26 20:47:49 +02:00
7fdbf9bcbd chore(okr): bump 1.6.0 (OKF second brain) + CLAUDE.md/README/CHANGELOG docs v1.6.0
Bump 1.5.0 -> 1.6.0 across plugin.json, CLAUDE.md title, okr-offentlig-sektor SKILL.md, README badge. README version-history row + Under-the-Hood Skills table; CHANGELOG 1.6.0 entry. CLAUDE.md gains OKF Knowledge Layout section (two-root model, okf-index/okf-check/compose-org-profile, lib/frontmatter), second skill in Skills table, and two architecture lines.

Ref-count: kept '16 domain reference files' (correct -- freshen-references scores 16, excludes okr-quality-rubrics.md as the scoring instrument; 17 is the directory total). Tightened CLAUDE.md:20 wording to '16 domain' for clarity; did NOT apply the plan's 16->17 (would contradict the command). References dir untouched (SC9). Verify: node --test 55/55; all version surfaces 1.6.0.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SFW5scLL7oEwWWTv1fPQG6
2026-06-26 20:02:42 +02:00
80d96898bc docs(okr): innboks-ingestion funn-grunnlag (web-verifisert)
Self-bearing grunnlag for den koeede innboks-ingestion-oppgaven (start etter
OKF-fasen). Web-verifisert undersoekelse av GoogleCloudPlatform/knowledge-catalog:
ingen ferdig innboks->OKF-pipeline finnes (verken Google eller oss). Dokumenterer
hva som finnes (reference_agent/index-generator/Source-ABC/fileskb), OKF-relasjons-
modellen (markdown-lenker i body), gap (dok-konvertering + konsept-ekstraksjon +
generalisert relasjons-oppdagelse), gjenbrukbare byggeklosser, og kilder for
etterproevbarhet. STATE I-koe-peker oppdatert (local-only).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SFW5scLL7oEwWWTv1fPQG6
2026-06-26 18:03:55 +02:00
77280ac319 feat(okr): tre-skrivere emitterer OKF-frontmatter + index-regenerering (SC2,SC3)
oppsett.md (eneste tre-skriver m/ Write+Bash): strategisk-kontekst-filer
faar OKF-frontmatter (type: Tildelingsbrev/Virksomhetsplan/Overordnede OKR),
retro -> type: Retrospektiv, ny-syklus status.md -> type: Status; regenererer
.claude/okr-indeksen via okf-index.mjs etter tre-skriv (2 punkter). skriv.md/
sporing.md har ikke Write -> dokumenterer OKF-frontmatter (type: OKR / Status)
i eksempel-output (malen brukeren lagrer). Lukker SC2-gapet: alle konsept-
filer paa disk baerer type:. Verify: okf-check fixture exit 0; suite 55/55.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SFW5scLL7oEwWWTv1fPQG6
2026-06-26 17:24:20 +02:00
5219d50d4b feat(okr): onboarding skriver OKF-frontmatter paa org-profil (SC6)
compose-org-profile.mjs prepender top-level OKF-noekler (type:
Organisasjonsprofil/resource/timestamp) over den nestede org-profilen i
ETT frontmatter-blokk, pipes til write-org-profile.mjs (uendret). Kun de
tre trygge noeklene top-level; FORBID nye top-level navn/id/fase/domene/
sektor som ville skygge nestede verdier hooken leser. oppsett.md (begge
profil-skriv-sites) + template oppdatert. Test: compose->pip->readback +
inject-roundtrip (4), full suite 51->55.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SFW5scLL7oEwWWTv1fPQG6
2026-06-26 17:19:14 +02:00
9701c81158 feat(okr): okf-index (ekte format)/okf-check + okf_version per rot (SC2,SC3,SC7) [skip-docs]
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SFW5scLL7oEwWWTv1fPQG6
2026-06-26 15:12:48 +02:00
615542d064 fix(okr): analyse leser historikk direkte etter hook-splitt (SC5)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01SFW5scLL7oEwWWTv1fPQG6
2026-06-26 15:07:19 +02:00
ea2bd444ea feat(okr): splitt inject-hook ved 91/92 - kjerne + resolvert index-peker (SC5) [skip-docs] 2026-06-26 14:45:34 +02:00
bf0e463b4a feat(okr): retrieval-SKILL m/ OKF-mønster + fixtures (SC1,SC4) [skip-docs] 2026-06-26 14:39:46 +02:00
9b85c0b436 refactor(okr): begge hooks bruker delt frontmatter-modul (SC2) [skip-docs] 2026-06-26 14:21:58 +02:00