Commit graph

75 commits

Author SHA1 Message Date
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
d9f2848d90 feat(okr): delt frontmatter-parse/skrive-modul + #-strip-fix (SC2) [skip-docs] 2026-06-26 14:19:20 +02:00
274d833e64 docs(okr): OKF second-brain retningsnotat (neste initiativ -> 1.6.0) 2026-06-26 10:48:48 +02:00
3ed59d05fb chore(okr): bump 1.5.0 (Fase 3) v1.5.0 2026-06-26 10:06:13 +02:00
88eaca81e0 feat(okr): /okr:help kommando-/agentoversikt + syklusarbeidsflyt (SC2) 2026-06-26 09:53:46 +02:00
4488a84e3a feat(okr): /okr:freshen-references + KB-selvevaluator-rubrikk (SC8) 2026-06-26 09:49:35 +02:00
a0e533a856 feat(okr): /okr:export PDF via weasyprint + scripts/export-pdf.py (SC5) 2026-06-26 09:46:39 +02:00
5890d09ac9 feat(okr): utvid metrics-library m/ verifiserte offentlig-metrikker (SC7) 2026-06-26 00:42:39 +02:00
65d4f289d5 feat(okr): ankret kvalitetsrubrikk-referansefil + wiring (SC3) 2026-06-26 00:38:15 +02:00
c7a0323a81 feat(okr): UserPromptSubmit emne-guard + test (SC6) [skip-docs] 2026-06-26 00:17:10 +02:00
b594eeb88c feat(okr): coaching-hook klokke-seam + node-test fixtures (SC4) [skip-docs] 2026-06-26 00:11:14 +02:00
60174e8f5c feat(okr): wire org-profil-skriving i oppsett + dokumenter hjem-sti (SC1) 2026-06-26 00:08:52 +02:00
63a642b29f feat(okr): atomisk org-profil-skrivehelper + test (SC1) [skip-docs] 2026-06-26 00:06:11 +02:00
e4f6c4d498 chore(okr): bump 1.4.0 (Fase 1+2) v1.4.0 2026-06-24 11:47:16 +02:00
d969cedf47 feat(okr): wire 6 referansefiler i kommando/agent + rett CLAUDE.md-tall (SC4) 2026-06-24 11:42:18 +02:00
97adff50de feat(okr): template-skjema-paritet med onboarding (SC5) [skip-docs] 2026-06-24 11:38:41 +02:00
9ab9ebe499 feat(okr): hook hybrid org-lese-fallback + node-test (SC6) [skip-docs] 2026-06-24 11:37:23 +02:00
e390a7a213 feat(okr): agent-modning — negative triggere + org-lesing + antipatterns (SC3) [skip-docs] 2026-06-24 11:34:30 +02:00
9eddec836b feat(okr): avdupliser gap/governance-tabell + disambiguering (SC2) 2026-06-24 11:28:23 +02:00
2cb8f71a47 feat(okr): kontekstbevissthet-blokk i moter (SC1) 2026-06-24 11:26:50 +02:00
ef3d51cde7 fix(okr): fjern loopende Stop-hook + bump 1.3.2 v1.3.2
Stop-hooken var type `prompt`: en prompt-Stop-hook sendes til modellen
hver gang økten stopper, og enhver ikke-tom output tolkes som feedback →
agenten re-invokeres → stopper igjen → loop. «Skip entirely if no OKR
work»-grenen kunne aldri bli helt taus (modellen forklarer at den
skipper = ikke-tom output), så den looper hver økt uten OKR-arbeid.
Observert i praksis: 6+ runder før harness flagget «Stop hook error».

Funksjonen var dessuten svak: en blind prosa-nudge som ikke kan
verifisere om arbeid er lagret, og som peker på integrasjoner som knapt
er wiret (Oboard: ingen; Linear: valgfri MCP). Kontinuitet er allerede
dekket av PreCompact-hooken (bevarer arbeid-i-progresjon) + STATE.md.
Fjernet framfor å konvertere til command-hook (over-engineering uten
reell sync-sjekk). Revurderes hvis ekte ekstern-tracker-integrasjon
lander (Fase 3).

Versjonssync → 1.3.2: plugin.json, README-badge, SKILL.md, og rettet
stale CLAUDE.md-header (v1.3.0 → v1.3.2; Fase 0 bommet på denne).
Fjernet Stop-raden fra CLAUDE.md Hooks-tabell.
2026-06-24 10:26:29 +02:00
46ac021355 fix(okr): harmoniser DFO→DFØ (korrekt forkortelse) — løser /trekreview WARN
Fase 1-prosaen innførte den korrekte moderne forkortelsen DFØ i
dfo-okr-mapping.md, mens resten av fila (+ README, SKILL) brukte den
upresise legacy-formen DFO. Samme etat staves dermed to måter — en
konsistens-sprekk en DFØ/Riksrevisjon-leser (pluginets målgruppe) fanger.

Harmonisert hele pluginen mot DFØ (offisiell form, Direktoratet for
forvaltning og økonomistyring):
- dfo-okr-mapping.md: 20 tokens (14 ordgrense + 6 genitiv «DFOs»→«DFØs»)
- README.md: 2 tokens
- SKILL.md: 1 token

dfo.no-URLene er urørt (faktisk domene, ikke forkortelsen). Filnavnet
dfo-okr-mapping.md beholdes (ASCII-slug; rename ville brutt referanser).
Ingen versjonsbump (Fase 1-disiplin — filene forblir 1.3.1).

Løser review.md MAJOR-funn a1f3c9e2 (PLAN_EXECUTE_DRIFT,
verdict WARN → resolved).
2026-06-24 10:11:11 +02:00
43d3a3b01d feat(okr): reelle norske OKR-caser m/ proveniens (Digdir/Oslo/Ruter/Knowit), drop NRK 2026-06-23 23:06:41 +02:00
9a12c3b03e feat(okr): tillitsreform-seksjon (datert/hedget, Kuvaas vs Bjurstrøm) 2026-06-23 23:05:16 +02:00
0f5b2d1ca7 feat(okr): MRS-posisjonering — OKR lag oppå MRS (økonomiregelverket §4) 2026-06-23 23:03:41 +02:00
7b861bca2c feat(okr): målforskyvning-antipattern (Merton/Campbell, norske caser) 2026-06-23 23:02:46 +02:00
6adf290aad fix(okr): committed og aspirational scores skal ikke aggregeres til ett tall (Doerr) 2026-06-23 23:00:32 +02:00
0d4adb9cb3 fix(okr): dropp ukildet Locke 250%, fullfør Kleingeld-sitering (JAP 96(6)) 2026-06-23 22:59:48 +02:00
a4ae0cc45b fix(okr): Intel-faktakorreksjon — gjenvunnet 85% 16-bit innen 1986, ikke fra 0% 2026-06-23 22:59:15 +02:00
2403682a89 fix(okr): tertial-korreksjon — tre rapporteringsspor, sjekk tildelingsbrev 2026-06-23 22:58:23 +02:00
6f31a52b6a refactor(okr): rename plugin-egen Kvartalsreview til Syklusreview (6 sites) 2026-06-23 22:56:44 +02:00
7cd5e115dc chore(okr): bump versjon til 1.3.1 (Fase 0 troverdighetssanering) v1.3.1 2026-06-23 21:22:44 +02:00
5723c7957e fix(okr): rett CONTRIBUTING/GOVERNANCE-motsigelse, SECURITY-kanal, uciterte statistikker 2026-06-23 21:19:50 +02:00
a40da9b9c6 fix(okr): fjern død futureworks-lenke, normaliser rework-lenker til /en/ 2026-06-23 21:17:10 +02:00