ms-ai-architect/docs/onboarding-redesign-brief.md
Kjell Tore Guttormsen c4d434f9e9 test(ms-ai-architect): C2.4 lås K4 privat-sektor-paritet (regresjonsvakt) + omdøp feildøpt doc [skip-docs]
C2 KOMPLETT (C2.1->C2.4). C2.4 var verifikasjon, ikke nybygg: privat-greinen
i onboarding kom i 6e1fc6d (FOER C2.1), saa audit §167-onboarding-residu var
allerede lukket i kode. Denne oekta beviser + laaser det.

- tests/test-onboarding-parity.sh (NY): 14 asserts mot KILDEN
  (onboarding-agent.md Phase 1; onboarding er interaktivt AskUserQuestion ->
  ingen output-fixture). Dekker sektortype-forgrening, privat sektor-grein
  (bank slipper «Annet»), privat reg-sett (DORA/Finansforetaksloven/
  Finanstilsynets IKT-forskrift/Verdipapirhandelloven/Hvitvaskingsloven), og
  at private aldri spoerres Offentleglova/Arkivloven. TDD roed->groenn:
  strippet offentlig-only-kopi -> 13/14 FAIL; ekte fil -> 14/14 PASS.
- tests/run-e2e.sh: wiret --onboarding (med i --all).
- §167 (d) bevisst IKKE bygget: «egen dataklassifiserings-taksonomi for privat
  Fase 3» er gull-plating utenfor K4 (dagens taksonomi er alminnelig norsk
  bedrifts-klassifisering; privat fullfoerer Fase 3 uhindret).
- Omdoept feildoept docs/onboarding-ros-analysis.md ->
  docs/windows-clone-to-pr-ros-guide.md (Windows clone-to-PR-bidragsyterguide,
  ikke onboarding-analyse); plan+brief-ref oppdatert.

Verifisert: onboarding-parity 14/14 (NY) · validate 239/0/0 · e2e alle suiter ·
discovery 13/13 · test-hooks 11/11 · kb-integrity 192/192 (220 baseline-warns) ·
gitleaks 3 PRE-EKSISTERENDE (playground/vendor/).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 17:39:11 +02:00

46 lines
4.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Brief — Redesign av onboarding-/virksomhetskontekst-mekanismen (ms-ai-architect)
_Problemstilling + krav, ikke en godkjent plan. Opprettet 2026-06-19 etter operatør-flagg under Sesjon 3 av KB-redesignet. Design godkjennes separat (brief → plan, slik KB-redesignet gikk). **Ikke start implementering uten operatør-go.** Refereres fra `STATE.md`._
## Hvorfor dette er kritisk
Virksomhetskontekst (sektor, lisens, dataklassifisering, budsjett, styringsmodell, regelverk) er det som gjør pluginens output relevant for *denne* brukeren i stedet for generisk. Operatørens vurdering (2026-06-19): hvis denne konteksten ikke er **til stede i enhver interaksjon** og ikke **overlever oppgraderinger**, skaper mekanismen frustrasjon i stedet for verdi — brukeren fyller den ut én gang og opplever at den «forsvinner» eller «ignoreres».
## Verifisert tilstand i dag (2026-06-19)
- **Innsamling:** `/architect:onboard` (orkestrator) → `agents/onboarding-agent.md` (5-fase intervju via `AskUserQuestion`, ~13 spørsmål, sektor-forgrening offentlig/privat).
- **Lagring:** `org/*.md` — 5 markdown-filer med YAML-frontmatter (`completed: true`). Plassert **inne i plugin-katalogen**.
- **Konsum:** 11 agenter har en «Virksomhetskontekst (automatisk)»-seksjon som **betinget** leser `org/`-filene («hvis mappen finnes»).
- **Hook:** `hooks/scripts/session-start-context.mjs` viser onboarding-**status** ved sesjonsstart («Ingen virksomhetstilpasning. Kjør /architect:onboard»), men injiserer **ikke** selve innholdet.
## Gap mot operatør-kravene
| # | Krav (operatør) | Gap i dag |
|---|---|---|
| 1 | **Ambient i enhver interaksjon** | Org-lesing er opt-in per agent og betinget. Et fritekst-spørsmål eller en kommando uten egen org-seksjon får ikke konteksten. Hooken injiserer status, ikke innhold. |
| 2 | **Overlever oppgraderinger** | `org/` er gitignored (`.gitignore:24`) og bor i plugin-katalogen (`~/.claude/plugins/marketplaces/.../ms-ai-architect/org/`). `git pull` rører den ikke (bra for personvern), men reinstall / re-clone / marketplace-oppdatering til ny katalog **mister den**. Ikke git-backet, ikke backup/restore. |
| 3 | **Fritekst-kontekst utover formelle spørsmål** | Onboarding samler kun strukturerte svar fra faste `AskUserQuestion`-valg. Det finnes ingen «alt annet du vil at pluginen skal vite»-felt (fri prosa) som konteksten kan bære med seg. |
**Tilstøtende (allerede dokumentert):** `docs/devils-advocate-audit-2026-06-18.md` §167 — onboarding kan ikke representere en privat virksomhet (sektor-valg hardkodet offentlig; reguleringsliste mangler DORA/Finansforetaksloven m.m.). Bør løses i samme redesign siden det treffer samme filer.
> Merknad: `docs/onboarding-ros-analysis.md` var feildøpt — den er en Windows «clone-to-PR»-guide for ROS-featuren, **ikke** en onboarding-analyse. **Omdøpt i C2.4** til `docs/windows-clone-to-pr-ros-guide.md`.
## Skisserte løsningsretninger (ikke bindende — design godkjennes senere)
1. **Robust lagringssted.** Flytt org-data ut av plugin-katalogen til en bruker-eid sti som overlever reinstall (f.eks. under `~/.claude/` eller en eksplisitt prosjekt-/bruker-data-mappe), og/eller etabler et eksplisitt eksport/import-mønster. Behold personvern (ikke commit til git).
2. **Ambient injeksjon.** La `session-start-context.mjs` injisere et kompakt org-sammendrag i hver sesjon (slik `STATE.md` injiseres i dag), så konteksten er til stede uavhengig av hvilken agent/kommando som kjøres. Vurder lengde-budsjett.
3. **Fritekst-felt.** Legg til et fritt «ekstra kontekst»-felt i onboarding (én `org/free-context.md` eller seksjon) som bæres med i den ambiente injeksjonen.
4. **Privat-sektor-paritet.** Parametrer sektor-forgreningen så en privat virksomhet ikke er andrerangs (mekanisk endring i `onboarding-agent.md`-spørsmålene + reguleringslister).
## Verifiserbare akseptansekriterier (for den senere planen)
- **K1 (ambient):** Start en frisk sesjon med utfylt org-kontekst og still et fritekst-spørsmål uten å invokere en org-bevisst agent → svaret reflekterer minst ett org-faktum. (Bevis: konteksten injiseres, ikke betinget lest.)
- **K2 (overlevelse):** Simuler en oppgradering (flytt/reinstaller plugin-katalogen) → org-konteksten er fortsatt tilgjengelig. (Bevis: lagring utenfor det som blåses bort ved reinstall, eller dokumentert restore-steg.)
- **K3 (fritekst):** Onboarding fanger et fritt prosa-felt, og innholdet er synlig i en etterfølgende interaksjon.
- **K4 (paritet):** En privat virksomhet kan fullføre onboarding uten å velge «Annet» på sektor, med relevant reguleringsliste.
## Avgrensning
- **Ikke** en del av KB-mekanisme-redesignet (Sesjon 15 + kurs-spor). Eget spor, egen plan.
- Prioriteres etter operatørens vurdering — naturlig kandidat når KB-redesignet (lag 13) er på plass, men kan hentes fram tidligere hvis brukervennlighet veier tyngst.
- Følger samme kontinuitetsregler: denne briefen bor i `docs/`, refereres fra `STATE.md`, ingen egen `ROADMAP.md`.