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
106 lines
7.3 KiB
Markdown
106 lines
7.3 KiB
Markdown
# 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 finnes** på `okf/SPEC.md` (distinkt fra `mdcode`s «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-architect** — **IKKE 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`).
|