okr/docs/innboks-ingestion-veivalg-2026-06.md
Kjell Tore Guttormsen 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

7.3 KiB

Innboks-ingestion — veivalg og posisjon (2026-06-26)

Operatør-låst retning for okr-pluginens innboks-ingestion. Avstemmer okr-STATE mot den cross-cutting convergence-briefen (linkedin-studio/docs/okf-convergence-brief.md). Self-bearing — leses ved oppstart av ingestion-løpet. Teknisk grunnlag (web-verifisert): docs/innboks-ingestion-funn-2026-06.md. Status-of-play: STATE.md.

RATIFISERT 2026-06-29 (handoff catalog/docs/okf-second-brain/handoff-2026-06-29.md §3). Den delte konvensjonen er nå kanonisert i catalog/docs/okf-second-brain/spec.md v0.1 (single source of truth, katalog-eid). Dette dokumentet refererer spec-en — det redefinerer den ikke. Innboks-løpet bygger mot spec §3 (minimal kontrakt = gulv, ikke tak) + §5 (extension keys). okr-bekreftelser (§4): okf-check.mjs-semantikken står som referansekontrakt (spec §7); okr bruker resource (ikke source); ingen feltgap (profil/config-nøkler = extension keys). Premiss-korreksjonene i §2 under er nå kanonisert i spec §9.

1. Låste beslutninger (operatør, 2026-06-26)

  1. Innboks-ingestion SKAL bygges for okr. Ikke valgfritt, ikke «defer». Krever grundig planlegging — eget Voyage-løp (/trekbrief/trekplan → execute), egen minor-bump (1.7.0-kandidat). Start når operatør sier fra (scope-guard).
  2. linkedin-studio er IKKE en mal for okr. Deres second-brain har en annen tilnærming (provenans-vektet læring, episodisk/semantisk split, evidens-terskel-promotering) som vi ikke kopierer. okr bygger sin egen sti.
  3. Delt cross-repo OKF-skill: ikke nå. Stage 3 (betinget) i convergence-briefen — utsatt. okr-ingestion er okr-eid og ikke gated på en delt skill.

2. Avstemming mot convergence-briefen (hva gjelder for okr)

Convergence-briefen er linkedin-studio-sentrert og cross-cutting. For okr skiller vi verifiserte tekniske fakta (beholdes) fra strategisk framing (avvises):

BEHOLD — verifiserte tekniske premisser (gjelder uansett strategi):

  • Google knowledge-catalog har ingen innboks→OKF-pipeline (funn §2, brief §2). Vi får spec + byggeklosser, ikke en ferdig løype.
  • mdcode er ikke et OKF-verktøy — det er Dataplex git-sync med et annet frontmatter-schema (id/resource.name/createTime/links). Ikke planlegg kcmd til å emittere/synke OKF.
  • Googles reference_agent ER en OKF-produsent, men leser BigQuery + seed-URLer, ikke en dokumentmappe, og er Gemini/GCP-bundet. Gjenbrukbare (GCP-frie) deler: SPEC, emit/serialize/ validate-kjernen, index.md-syntese.
  • Dokument-klassifisering/-konvertering av vilkårlige filer: Google gir INGENTING — 100 % bygg selv.
  • OKF-relasjoner = vanlige markdown-lenker i body (ikke frontmatter-felt); konsumenter MÅ tolerere brutte lenker (funn §4, brief §5).
  • OKF v0.1-spec finnesokf/SPEC.md (distinkt fra mdcodes «Metadata as Code» for Dataplex). Kun type påkrevd; index.md reservert (ingen frontmatter); okf_version i rot-index.md. (NB: okr 1.6.0 pinnet bevisst til «Documents/kb Layout» og kalte det IKKE en formell standard — ingestion-løpet bør re-verifisere okf/SPEC.md ved brief-tid og avgjøre hvor tett vi konformer.)

AVVIS for okr — strategisk framing som IKKE styrer okr-ingestion:

  • «Defer auto-classify/convert; build only on demonstrated need» → avvist (beslutning 1: skal bygges).
  • «linkedin-studio is the reference design; siblings rise to it» → avvist for okr (beslutning 2).
  • «Inbox forblir en manuell drop-zone uten auto-klassifiserer» → det var linkedin-studios stance; okr-målet er det motsatte: auto-oppdage + konvertere + tilordne OKF.

3. Hva som faktisk skal bygges (gap, fra funn-grunnlaget §5)

  1. Dokument-konvertering — PDF/Word/e-post/tekst → markdown. Finnes ikke i Google-repoet (fileskb/md-fileset antar markdown og er read-only).
  2. Konsept-ekstraksjon + frontmatter-tilordning — splitte vilkårlige dokumenter til «konsepter», sette type/resource/title/description/tags/timestamp.
  3. Generalisert relasjons-oppdagelse — Googles relasjons-prompt er BQ-joins/web-spesifikk; må generaliseres til vilkårlig dokumentkorpus (relasjoner som markdown-lenker i body).
  4. Innboks-orkestrering — oppdage nye filer, beholde original + plassere markdown-peker, idempotent re-kjøring, plassering i riktig nivå av treet, regenerere berørt index.md.

4. Gjenbrukbart fra OKF-fasen (1.6.0 — bygger ikke fra null)

  • scripts/okf-index.mjs — kildeagnostisk, idempotent index.md-regen (speiler Googles regenerate_indexes). Innboks-pipelinen kaller den etter skriv (som tre-skriverne i oppsett.md).
  • lib/frontmatter.mjs (parse/skrive) + scripts/okf-check.mjs (validering) dekker skrive- og verifiserings-siden.
  • Googles Source-ABC viser et rent adapter-mønster — en «innboks-kilde» som lister konsepter fra en mappe kan mate eksisterende skrive-/index-/kryss-lenke-maskineri.

5. Åpne spørsmål til /trekbrief (avgjøres da, ikke nå)

  • Konverterings-motor: okr er i dag zero-dependency Node ESM (kun node:-builtins). PDF/Word→md krever realistisk enten et eksternt verktøy (pandoc/libreoffice/markitdown) eller en avhengighet — bryter zero-dep-invarianten. Dette er et reelt arkitekturvalg (dokumentert prerequisite à la export-pdf.py/weasyprint? egen avhengighet? hvilke formater i v1?).
  • Konsept-ekstraksjon: LLM-drevet (Claude i kommando) vs. heuristisk splitting — og hvor deterministisk.
  • Relasjons-oppdagelse: hvor generalisert; hvordan holde testbart.
  • Innboks-plassering: prosjekt-.claude/okr/innboks/? home? begge røtter? Original-bevaring + peker-layout.
  • Mål-format: full OKF v0.1 (okf/SPEC.md) vs. dagens lettere «OKF-kompatible form» okr emitterer.
  • Idempotens + sikkerhet: re-kjøring uten dubletter; ikke ødelegge brukerens originaler.

6. Forhold til søsken-pluginer

  • Delings-scope (operatør-låst 2026-06-29): en eventuell delt Stage-3-skill deles mellom okr + ms-ai-architectIKKE linkedin-studio. linkedin-studio har sin egen mekanisme (rikere ikke-OKF-brain, reference-design — «not levelled down to bare OKF», brief §1) og leveres ikke ned til en delt skill. Låsen endrer kun hvem som deler, ikke når: Stage 3 er fortsatt betinget på Stage-2-måling og utsatt.
  • ms-ai-architect har samme oppgave (designet, ikke bygget). Vurder felles abstraksjon før dobbel-implementasjon — men felles ≠ kopiere linkedin-studio. Eventuell deling skjer på okr-egne premisser.
  • En delt OKF-spec (convergence-briefens Stage 1, katalog-nivå) er grei interop og ikke i konflikt med dette løpet; okr-ingestion er ikke blokkert på den.

7. Kilder

  • Delt konvensjon (single source of truth): catalog/docs/okf-second-brain/spec.md v0.1 + koordinerings-log.md + handoff-2026-06-29.md (samme mappe, katalog-repo).
  • docs/innboks-ingestion-funn-2026-06.md — web-verifisert Google-repo-analyse (kilder i §9 der).
  • linkedin-studio/docs/okf-convergence-brief.md — cross-cutting convergence (avstemt over; nå foldet inn i spec-en).
  • OKF v0.1: github.com/GoogleCloudPlatform/knowledge-catalog/blob/main/okf/SPEC.md.
  • Leveranse vi bygger på: okr 1.6.0 (scripts/okf-*, lib/frontmatter.mjs, skill okr-second-brain-search).