fix(ms-ai-architect): #7c wire foreldreløse deliverable-KB — nye kommandoer businesscase + anskaffelse (I)

Audit P2 I. 6 foreldreløse deliverable-KB-er surfaces nå (var skrevet/betalt for, ikke nåbare).
Operatørvalg: dedikerte kommandoer (audit-primær), ikke kun dokumentasjon. Telling 25→27 kommandoer.

Nye kommandoer:
- businesscase.md → samfunnsokonomisk-analyse-nnv.md + gevinstrealisering-dfo-methodology.md (NNV + DFØ 5-stegs gevinst)
- anskaffelse.md → anskaffelser-ai-procurement-framework.md (kravspec, leverandørevaluering, terskelverdi)

Utvidet eksisterende:
- compare.md: weighted multi-kriterie-modus (alternativanalyse-methodology.md) ved 3+ alternativer / --weighted
- cost.md: kapasitet-/gjennomførbarhetssteg (gpu-compute-sizing.md + capacity-feasibility-benchmarks.md) ved --capacity

De-orphaning (kb-integrity måler orphan via SKILL.md/agents, ikke kommandofiler):
- ms-ai-governance/SKILL.md: ny seksjon 1.4 Beslutningsgrunnlag (3 referanser)
- ms-ai-advisor/SKILL.md: alternativanalyse + capacity-feasibility
- ms-ai-security/SKILL.md: gpu-compute-sizing
→ alle 6 de-orphaned (kb-integrity warnings 268→262)

Registrering/docs: help.md + README + CLAUDE.md-tabell + playground-katalog (2 produces_report:false-
oppføringer, gjenbruker ikke 14-parser/17-renderer-kanonen) + docs/playground.md (25→27) + test 25→27.

validate 231 PASS · playground v3 221 PASS · e2e alle suiter · kb-integrity 115/115 — 0 FAIL overalt.

NB: README:358/418/427 har pre-eksisterende «24 commands»-drift (uavhengig av denne endringen) — flagget for #8.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01REiKFhP4w6xGXXqWKpPCJJ
This commit is contained in:
Kjell Tore Guttormsen 2026-06-18 17:50:06 +02:00
commit 20c1be6531
13 changed files with 252 additions and 8 deletions

View file

@ -24,11 +24,13 @@ Tilbyr strukturert arkitekturveiledning for Microsoft AI-stakken:
| `/architect:compare` | Sammenlign Microsoft AI-plattformer for et gitt scenario |
| `/architect:security` | Sikkerhets- og compliance-vurdering (6 dimensjoner) |
| `/architect:cost` | Kostnadsestimat med konfidensgradering (NOK) |
| `/architect:businesscase` | Forretningscase: NNV (netto nåverdi) + DFØ-gevinstrealisering |
| `/architect:adr` | Generer Architecture Decision Record (MADR v3.0) |
| `/architect:research` | Utforsk siste nytt for en Microsoft AI-plattform |
| `/architect:poc` | Generer POC-plan med suksesskriterier og risiko |
| `/architect:license` | Kartlegg AI-kapabiliteter per lisenstype |
| `/architect:migrate` | Planlegg migrasjon mellom plattformer |
| `/architect:anskaffelse` | AI-anskaffelse: kravspesifikasjon, leverandørevaluering, terskelverdier |
| `/architect:utredning` | AI-arkitekturutredning for norsk offentlig sektor |
| `/architect:diagram` | Generer arkitekturdiagram med Imagen 3 (mcp-image) |
| `/architect:review` | Kjør arkitekturgjennomgang mot norske offentlig sektor-krav |

View file

@ -120,6 +120,7 @@ Cosmo will ask clarifying questions about your business need, licenses, data sou
| `/architect:ros` | Risk and Vulnerability Analysis (ROS) with 7 dimensions and AI threat library |
| `/architect:security` | Security and compliance assessment (6-dimension scoring) |
| `/architect:cost` | Cost estimate with confidence grading in NOK |
| `/architect:businesscase` | Business case with net present value (NPV) and DFØ benefits realization |
| `/architect:review` | Architecture review against Norwegian public sector requirements |
| `/architect:dpia` | DPIA/PVK for an AI system with risk matrix and mitigation table |
| `/architect:license` | Map AI capabilities per license type (E3, E5, F1, G5, etc.) |
@ -140,6 +141,7 @@ Cosmo will ask clarifying questions about your business need, licenses, data sou
| `/architect:utredning` | Full AI architecture investigation for Norwegian public sector |
| `/architect:poc` | Generate POC plan with success criteria and risk assessment |
| `/architect:migrate` | Plan migration between Microsoft AI platforms |
| `/architect:anskaffelse` | AI procurement plan — requirements spec, vendor evaluation, thresholds |
### Setup & Maintenance

73
commands/anskaffelse.md Normal file
View file

@ -0,0 +1,73 @@
---
name: architect:anskaffelse
description: Anskaffelsesplan for AI — kravspesifikasjon, leverandørevaluering og terskelverdier
argument-hint: "[hva som skal anskaffes]"
allowed-tools: Read, Glob, Grep, Task, Write, mcp__microsoft-learn__microsoft_docs_search
model: opus
---
# /architect:anskaffelse - AI-anskaffelse
Du er Cosmo Skyberg i en anskaffelsesrolle. Hjelp brukeren å planlegge en AI-anskaffelse i norsk offentlig sektor — forankret i anskaffelsesloven/-forskriften, EØS-regelverket og DFØs veiledning for IT-anskaffelser.
## Språk og encoding
**VIKTIG:** Bruk norske tegn (æ, ø, å) korrekt i all output. Norsk prosa, engelske fagtermer der naturlig.
## Instruksjoner
### 1. Parse input
Ekstraher hva som skal anskaffes (AI-tjeneste, plattform, konsulentbistand, ferdig løsning).
### 2. Samle kontekst
Spør om nøkkelinformasjon hvis ikke kjent:
- **Estimert verdi** (avgjør prosedyre + terskelverdi)
- **Type:** vare/tjeneste, rammeavtale, utvikling, SaaS
- **Databehandling:** personopplysninger? særlige kategorier? dataresidens-krav?
- **Eksisterende rammeavtaler** (f.eks. statens, Sykehusinnkjøp, egne)
### 3. Les kunnskapsbasen
- `skills/ms-ai-governance/references/norwegian-public-sector-governance/anskaffelser-ai-procurement-framework.md` — lovgrunnlag (anskaffelsesloven/-forskriften), EØS-regelverk, AI-spesifikk kravspesifikasjon, leverandørevaluering, etiske krav, DFØs IT-anskaffelsesveiledning
For AI Act-deployer-/transparenskrav som skal inn i kravspec: koble til `/architect:requirements` og `/architect:classify`.
### 4. Bygg anskaffelsesplanen
**A. Prosedyrevalg og terskelverdi:** Fastslå anvendelig prosedyre ut fra estimert verdi (under/over EØS-terskel) per kunnskapsbasen — marker hvilken terskel som gjelder og hvorfor.
**B. AI-spesifikk kravspesifikasjon:**
- Funksjonelle krav + ytelseskrav (nøyaktighet, latens, oppetid)
- Datakrav: residens, eierskap, sletting, sub-prosessorer (koble til DPIA/TIA)
- Transparens/forklarbarhet (AI Act Art. 13/50 der relevant)
- Sikkerhet (NSM, ISO 27001), exit/portabilitet
**C. Tildelingskriterier + evalueringsmodell:**
| Kriterium | Vekt | Målemetode |
|-----------|------|------------|
| Pris/TCO | X % | … |
| Kvalitet/ytelse | X % | … |
| Sikkerhet & personvern | X % | … |
| Leveranseevne | X % | … |
**D. Etiske krav** (per kunnskapsbasen): ansvarlig AI, bias-testing, menneskelig tilsyn — som kontraktsvilkår.
**E. Risiko & oppfølging:** leverandørlåsing, restoverføringer (Schrems II/TIA), kontraktsoppfølging.
### 5. Lever
Tilby:
- Skriv til fil (foreslå `docs/anskaffelse/ANSK-[slug].md`)
- `/architect:requirements` — AI Act-krav inn i kravspec
- `/architect:dpia` — personvern + cross-border-TIA før kontrakt
- `/architect:businesscase` — økonomisk grunnlag for anskaffelsen
## Retningslinjer
- Marker eksplisitt hvilken **terskelverdi/prosedyre** som gjelder — usikkerhet her er kostbar
- Skill mellom **må-krav** (absolutte) og **bør-krav** (tildelingskriterier)
- Ingen salgsspråk; etterprøvbart og klagebestandig
- Henvis til kilde (anskaffelsesloven/-forskriften, DFØ) ved konkrete krav

76
commands/businesscase.md Normal file
View file

@ -0,0 +1,76 @@
---
name: architect:businesscase
description: Forretningscase med NNV (netto nåverdi) og DFØ-gevinstrealisering for et AI-prosjekt
argument-hint: "[prosjektnavn] over [N] år"
allowed-tools: Read, Glob, Grep, Task, Write, mcp__microsoft-learn__microsoft_docs_search
model: opus
---
# /architect:businesscase - Forretningscase (NNV + gevinstrealisering)
Du er Cosmo Skyberg i en økonomisk beslutningsrolle. Bygg et forretningscase for et AI-prosjekt i norsk offentlig sektor, forankret i samfunnsøkonomisk analyse (netto nåverdi) og DFØs gevinstrealiseringsmetodikk. Dette er beslutningsgrunnlag som skal tåle en styre- eller revisjonsgjennomgang.
## Språk og encoding
**VIKTIG:** Bruk norske tegn (æ, ø, å) korrekt i all output. Norsk prosa, engelske fagtermer der naturlig.
## Instruksjoner
### 1. Parse input
Ekstraher:
- **Prosjektnavn** — hva som vurderes
- **Analyseperiode** — antall år (default 5)
### 2. Samle kontekst
Spør om nøkkeltall hvis ikke allerede kjent:
- **Investering:** engangskostnad (utvikling, anskaffelse, opplæring)
- **Driftskostnader:** årlige (lisenser, AI-tjenester, forvaltning)
- **Gevinster:** tidsbesparelse, kvalitetsheving, unngåtte kostnader — prissatte og ikke-prissatte
- **Kalkulasjonsrente:** default 4 % (DFØ/Finansdepartementet)
- **Gevinsteier:** hvem realiserer og følger opp gevinstene
### 3. Les kunnskapsbasene
- `skills/ms-ai-governance/references/norwegian-public-sector-governance/samfunnsokonomisk-analyse-nnv.md` — NNV-formel, kalkulasjonsrente, diskonteringsfaktorer, skattefinansieringskostnad, prissatte vs. ikke-prissatte virkninger
- `skills/ms-ai-governance/references/norwegian-public-sector-governance/gevinstrealisering-dfo-methodology.md` — DFØs 5-stegs modell + gevinstregister-mal
For selve kostnadsestimatet: deleger til `/architect:cost` eller `cost-estimation-agent` og bruk resultatet som input til NNV-en.
### 4. Bygg forretningscaset
**A. NNV-beregning** (per kunnskapsbasen):
- Sett opp kontantstrøm per år (investering, drift, prissatte gevinster)
- Diskontér med kalkulasjonsrente (4 %), inkludér skattefinansieringskostnad der relevant
- Beregn netto nåverdi + tilbakebetalingstid
| År | Investering | Drift | Prissatt gevinst | Netto | Diskontert (4 %) |
|----|-------------|-------|------------------|-------|------------------|
| 0 | X | | | X | X |
| 1N | … | … | … | … | … |
| **NNV** | | | | | **X** |
**B. Ikke-prissatte virkninger:** Vurder kvalitativt (rettssikkerhet, brukertilfredshet, omdømme) — pluss/minus-skala, ikke kroner.
**C. Gevinstregister** (DFØs 5-stegs modell):
| Gevinst | Type | Måleindikator | Baseline | Mål | Gevinsteier | Realiseringstidspunkt |
|---------|------|---------------|----------|-----|-------------|----------------------|
**D. Følsomhetsanalyse:** Vis NNV ved ±20 % på de mest usikre forutsetningene.
### 5. Lever
Tilby:
- Skriv til fil (foreslå `docs/businesscase/BC-[slug].md`)
- `/architect:cost` — forankre kostnadssiden
- `/architect:adr` — dokumentér investeringsbeslutningen
- `/architect:utredning` — hvis dette inngår i en full utredning
## Retningslinjer
- Skill alltid mellom **prissatte** (kroner, i NNV) og **ikke-prissatte** (kvalitativt) virkninger
- Marker forutsetninger eksplisitt — et forretningscase er bare så godt som sine antakelser
- Ingen salgsspråk; nøktern, etterprøvbar økonomi
- Konfidensgrader gevinstanslagene (🟢/🟡/🔴)

View file

@ -45,6 +45,7 @@ Bruk microsoft_docs_search for begge plattformer."
Les også relevant kunnskapsbase:
- `skills/ms-ai-advisor/references/architecture/decision-trees.md` — beslutningsrammeverk
- Les plattformfil(er) relevant for sammenligningen fra `skills/ms-ai-advisor/references/platforms/` (max 2-3 filer)
- **Ved 3+ alternativer eller `--weighted`:** `skills/ms-ai-advisor/references/architecture/alternativanalyse-methodology.md` — vektet multi-kriterie-analyse (scoringsskala, standardkriterier, vekting, begrunnelsestabell)
### 3. Bygg sammenligning
@ -71,6 +72,22 @@ Presenter resultatet som:
- Kan plattformene brukes sammen?
- Migrasjonsvei mellom dem?
### 3b. Vektet sammenligning (multi-kriterie — ved 3+ alternativer eller `--weighted`)
Når valget skal tåle en anskaffelsesklage eller styre-utfordring, holder ikke en bar pros/cons-tabell. Bruk `alternativanalyse-methodology.md` og bygg et vektet scorecard:
| Kriterium | Vekt | [Alt A] (1-5) | [Alt B] (1-5) | [Alt C] (1-5) |
|-----------|------|---------------|---------------|---------------|
| Funksjonell dekning | X % | | | |
| Sikkerhet & compliance | X % | | | |
| Kostnad/TCO | X % | | | |
| Leveranseevne/modenhet | X % | | | |
| **Vektet totalscore** | 100 % | **X,X** | **X,X** | **X,X** |
- Bruk standardkriteriene + foreslåtte vekter fra metodikken; juster vekter eksplisitt og begrunn justeringen.
- **Begrunnelsestabell er obligatorisk** — hver score skal ha én linje som forklarer hvorfor (etterprøvbarhet).
- Inkludér **0-alternativet** (ikke gjøre noe) som referanse.
### 4. Anbefaling
Gi en klar anbefaling med begrunnelse:

View file

@ -27,6 +27,10 @@ Hvis informasjon mangler, spør brukeren om nøkkeltall.
Les `skills/ms-ai-advisor/references/architecture/cost-models.md` for baseline-priser per plattform.
Les `skills/ms-ai-security/references/cost-optimization/deterministic-cost-calculation-model.md` for enhetspriser, beregningsformler og P10/P50/P90 konfidensintervaller.
**Ved selvhostede modeller / GPU-inferens eller `--capacity`:** Les også
- `skills/ms-ai-security/references/performance-scalability/gpu-compute-sizing.md` — GPU VM-serier, modellstørrelse→GPU-krav, minnebudsjett, batch/throughput
- `skills/ms-ai-advisor/references/architecture/capacity-feasibility-benchmarks.md` — kompetanse-gap-matrise + tidsplan-validering mot bransjebenchmarks
### 3. Deleger estimering
Bruk Task-verktøyet til å lansere `cost-estimation-agent`:
@ -79,11 +83,22 @@ Verifiser priser via microsoft_docs_search."
- Smaller models for enkle oppgaver (GPT-4o-mini vs GPT-4o)
- Reserved capacity for forutsigbar last
### 4b. Kapasitet og gjennomførbarhet (betinget — selvhostet/GPU eller `--capacity`)
For selvhostede modeller eller GPU-inferens, dimensjonér compute før du priser:
- **GPU-sizing:** velg VM-serie ut fra modellstørrelse og minnebudsjett (`gpu-compute-sizing.md`); oppgi antatt batch size og throughput-mål, og hvordan det driver antall instanser.
- **Gjennomførbarhet:** valider kompetanse (gap-matrise) og tidsplan mot bransjebenchmarks (`capacity-feasibility-benchmarks.md`) — et estimat som ignorerer kompetansegap er ikke realistisk.
| Komponent | Modell/krav | GPU VM-serie | Instanser | Månedlig (NOK) |
|-----------|-------------|--------------|-----------|-----------------|
| Inferens | … | … | … | … |
### 5. Neste steg
Tilby:
- `/architect:compare` — sammenlign med alternativ plattform
- `/architect:license` — detaljert lisensanalyse
- `/architect:businesscase` — NNV/gevinst med dette estimatet som input
- Justere estimat med andre parametere
## Retningslinjer

View file

@ -23,11 +23,13 @@ Presenter følgende oversikt til brukeren i et ryddig, tabellbasert format.
| `/architect:compare` | Sammenlign Microsoft AI-plattformer for et gitt scenario |
| `/architect:security` | Kjør sikkerhets- og compliance-vurdering |
| `/architect:cost` | Estimer kostnader for en foreslått arkitektur |
| `/architect:businesscase` | Forretningscase med NNV og DFØ-gevinstrealisering |
| `/architect:adr` | Opprett en Architecture Decision Record (ADR) |
| `/architect:research` | Dypdykk i et spesifikt Microsoft AI-tema |
| `/architect:poc` | Generer en POC-plan med evalueringskriterier |
| `/architect:license` | Kartlegg lisensbehov for en løsning |
| `/architect:migrate` | Planlegg migrasjonssti mellom plattformer |
| `/architect:anskaffelse` | AI-anskaffelse — kravspesifikasjon, leverandørevaluering, terskelverdier |
| `/architect:utredning` | AI-arkitekturutredning v2 — fil-basert orkestrering, TeamCreate, 3-fase KOMPLEKS |
| `/architect:review` | Kjør arkitekturgjennomgang mot norske offentlig sektor-krav |
| `/architect:diagram` | Generer arkitekturdiagram med Imagen 3 |

View file

@ -7,7 +7,7 @@ Erstatter v2 5-stegs-pipelinen med en multi-surface-app som persisterer state og
**v1.15.0 (sesjon 5 av ~8 i v2-prosjektet):** Project-surface byttet fra v2 `renderProjectSurface` (screen-tabs + category-tabs + per-command paste-cards) til v3 `renderProjectView` (sidebar med 17 artifacts + main-area + import-modal overlay). `renderActive()` ruter `project`-surface til `renderProjectSurfaceV3()` som wrapper renderProjectView + topbar + app-shell. V2-surface helt fjernet: `renderProjectSurface` (152 linjer), `renderCommandSubCard` (87 linjer), `rehydratePasteImports` (15 linjer), `currentProjectScreen`, `ACTIONS['project-screen']`, 5 v2-CSS-klasser. Zombie-handlers beholdt for test-back-compat: `currentProjectTab`, `ACTIONS['project-tab']`, `ACTIONS['parse']`, `handlePasteImport`, `window.__handlePasteImport`. 2 fingerprint-gap lukket: requirements.headers + license.headers. `migrateDataVersion` utvidet med `parserFor` → demo-state (kun `raw_markdown`) auto-parses til `project.artifacts[cid]`. Ship-QA-bugfixes: `components-tier4-project-view.css` lagt til i `<link>`-kjeden (manglet → modal-overlay og two-column layout virket ikke); `renderImportModal` setter `data-open="true"` (DS-kontrakt).
- **Fil:** `playground/ms-ai-architect-playground.html` (~3870+ linjer, single-file v3-arkitektur)
- **4 surfaces:** Onboarding (18 felles felt — 4 strukturerte / 14 fritekst etter v1.10.0) → Home (prosjekt-liste + 3 entry-tracks) → Catalog (25 commands gruppert i 5 expansion-grupper med søk) → **Project v3** (sidebar med 17 artifacts gruppert i 4 kategorier + søk + main-area med per-artifact view eller overview med top-risks/next-actions + import-modal som DS-overlay)
- **4 surfaces:** Onboarding (18 felles felt — 4 strukturerte / 14 fritekst etter v1.10.0) → Home (prosjekt-liste + 3 entry-tracks) → Catalog (27 commands gruppert i 5 expansion-grupper med søk) → **Project v3** (sidebar med 17 artifacts gruppert i 4 kategorier + søk + main-area med per-artifact view eller overview med top-risks/next-actions + import-modal som DS-overlay)
- **Persistens:** IndexedDB-primær med localStorage-fallback. Schema-versjonert (`STATE_KEY = 'ms-ai-architect-state-v1'`) med eager `MIGRATIONS`-pipeline. v1.10.0 introduserer `dataVersion v1→v2`-migrasjon (idempotent) som backfill-er `verdict`+`keyStats`.
- **17 rapport-renderers (felles grunnskjelett):** Alle wrapper output via `renderPageShell()` med eyebrow + h1 + valgfri verdict-pill + valgfri key-stats-grid + arketype-spesifikk body. Parser → struktur → HTML rutet via kanonisk archetype-routing-tabell.
- **Foundation-helpers:** `renderPageShell`, `renderVerdictPill`, `renderKeyStatsGrid`, `inferVerdict`, `inferKeyStats`, `KEY_STATS_CONFIG`.
@ -19,7 +19,7 @@ Erstatter v2 5-stegs-pipelinen med en multi-surface-app som persisterer state og
| Test | Kommando | Dekning |
|------|----------|---------|
| Statisk struktur | `bash tests/test-playground-v3.sh` | 219 PASS, 2 WARN (pre-eks.) — vendored CSS, surfaces, 25 commands, 14 parsere, 17 renderers via PROJECT_VIEW_CONFIG.renderers-routing, action-handlers |
| Statisk struktur | `bash tests/test-playground-v3.sh` | 219 PASS, 2 WARN (pre-eks.) — vendored CSS, surfaces, 27 commands, 14 parsere, 17 renderers via PROJECT_VIEW_CONFIG.renderers-routing, action-handlers |
| Parser-fixtures | `bash tests/test-playground-parsers.sh` | 70 PASS — 17 fixtures × parser-routing |
| Migrasjon | `bash tests/test-playground-migrations.sh` | 16 PASS — v1→v2 + v2→v3 idempotent migrasjon |
| Fingerprints | `bash tests/test-playground-fingerprints.sh` | 32 PASS — 17-fixture true-positive + 4 anti-match + API-sanity |

View file

@ -1060,7 +1060,7 @@
]
},
// ===== ECONOMY (2) =====
// ===== ECONOMY (3) =====
{
id: 'cost',
category: 'economy',
@ -1103,7 +1103,49 @@
]
},
// ===== DOCUMENTATION (6) =====
{
id: 'businesscase',
category: 'economy',
label: 'Forretningscase (NNV + gevinst)',
description: 'Forretningscase med netto nåverdi og DFØ-gevinstrealisering.',
argument_hint: '[prosjektnavn] over [N] år',
calls_agent: null,
kb_files: ['samfunnsokonomisk-analyse-nnv.md', 'gevinstrealisering-dfo-methodology.md'],
produces_report: false,
report_archetype: null,
report_root_class: null,
renderer: null,
input_fields: [
SHARED.organisation_name,
{ id: 'project_name', label: 'Prosjektnavn', type: 'text', from: 'local' },
{ id: 'analysis_years', label: 'Analyseperiode (år)', type: 'number', from: 'local' },
{ id: 'investment', label: 'Investering (engangs, NOK)', type: 'number', from: 'local' },
{ id: 'annual_opex', label: 'Årlige driftskostnader (NOK)', type: 'number', from: 'local' },
{ id: 'expected_benefits', label: 'Forventede gevinster', type: 'textarea', from: 'local' }
]
},
// ===== DOCUMENTATION (7) =====
{
id: 'anskaffelse',
category: 'documentation',
label: 'AI-anskaffelse (kravspec + terskel)',
description: 'Anskaffelsesplan for AI: kravspesifikasjon, leverandørevaluering, terskelverdier.',
argument_hint: '[hva som skal anskaffes]',
calls_agent: null,
kb_files: ['anskaffelser-ai-procurement-framework.md'],
produces_report: false,
report_archetype: null,
report_root_class: null,
renderer: null,
input_fields: [
SHARED.organisation_name,
SHARED.sector,
{ id: 'procurement_object', label: 'Hva som skal anskaffes', type: 'textarea', from: 'local' },
{ id: 'estimated_value', label: 'Estimert verdi (NOK)', type: 'number', from: 'local' },
{ id: 'procurement_type', label: 'Type', type: 'select', from: 'local', options: ['Vare/tjeneste', 'Rammeavtale', 'Utvikling', 'SaaS'] }
]
},
{
id: 'migrate',
category: 'documentation',

View file

@ -217,6 +217,8 @@ Du har tilgang til forhåndsresearchede kunnskapsbaser i `references/`-mappen:
- `adr-template.md` - ADR-mal (MADR v3.0)
- `diagram-prompt-templates.md` - Diagramprompts for Imagen 3
- `recommended-mcp-servers.md` - Anbefalte MCP-servere
- `alternativanalyse-methodology.md` - Vektet multi-kriterie-analyse (brukt av `/architect:compare --weighted`)
- `capacity-feasibility-benchmarks.md` - Kompetanse-gap + tidsplan-benchmarks (brukt av `/architect:cost --capacity`)
- (+ øvrige filer i architecture/)
**Utvikling (`references/development/`):**

View file

@ -60,6 +60,18 @@ Key requirements for AI in administrative decisions:
> **Reference:** `references/norwegian-public-sector-governance/forvaltningsloven-ai-decisions.md`
### 1.4 Beslutningsgrunnlag og anskaffelser
Metodikk for å forankre AI-investeringer i samfunnsøkonomi, gevinstrealisering og offentlige anskaffelser. Brukes av `/architect:businesscase` og `/architect:anskaffelse`.
- **Samfunnsøkonomisk analyse (NNV):** netto nåverdi, kalkulasjonsrente (DFØ/Finansdepartementet), prissatte vs. ikke-prissatte virkninger.
- **Gevinstrealisering:** DFØs 5-stegs modell + gevinstregister for AI-prosjekter.
- **AI-anskaffelser:** anskaffelsesloven/-forskriften, EØS-terskelverdier, AI-spesifikk kravspesifikasjon og leverandørevaluering.
> **Reference:** `references/norwegian-public-sector-governance/samfunnsokonomisk-analyse-nnv.md`
> **Reference:** `references/norwegian-public-sector-governance/gevinstrealisering-dfo-methodology.md`
> **Reference:** `references/norwegian-public-sector-governance/anskaffelser-ai-procurement-framework.md`
---
## 2. EU-regelverk

View file

@ -157,6 +157,7 @@ For detailed implementation guidance, see specific files in `references/performa
- `auto-scaling-ai-infrastructure.md` — Scaling patterns
- `rate-limit-management.md` — TPM/RPM quota management
- `load-testing-ai-services.md` — Load testing methodology
- `gpu-compute-sizing.md` — GPU VM-sizing for selvhostet inferens (brukt av `/architect:cost --capacity`)
---

View file

@ -138,7 +138,7 @@ for g in $EXPECTED_GLOBALS; do
done
# -------------------------------------------------------
# 9. Alle 24 command-IDer fra commands/*.md referert i HTML
# 9. Alle command-IDer fra commands/*.md referert i HTML
# -------------------------------------------------------
cmd_count=0
for f in "$PLUGIN_ROOT"/commands/*.md; do
@ -151,10 +151,10 @@ for f in "$PLUGIN_ROOT"/commands/*.md; do
fail "Command-ID '${cmd_id}' mangler i v3 HTML"
fi
done
if [ "$cmd_count" -eq 25 ]; then
pass "25 command-filer funnet i commands/ (forventet 25)"
if [ "$cmd_count" -eq 27 ]; then
pass "27 command-filer funnet i commands/ (forventet 27)"
else
fail "Forventet 25 command-filer, fant $cmd_count"
fail "Forventet 27 command-filer, fant $cmd_count"
fi
# -------------------------------------------------------