ktg-plugin-marketplace/plugins/ms-ai-architect/docs/eu-ai-act-integration-handover.md
Kjell Tore Guttormsen bd22b29a21 chore(ms-ai-architect): sanitize all private references for open-source
README.md: badges updated (1.7.0/387/12), installation URL updated to
ktg-plugin-marketplace, added ai-act-assessor to agent table, updated skill
ref counts, updated hooks section, updated category-skill-map path.

CLAUDE.md: fix agent model column (sonnet->opus), remove Linear section,
fix manual test path to generic placeholder.

commands/generate-skills.md: orchestrator paths updated to scripts/skill-gen.
commands/export.md: add Bash scope guardrail (security scan finding).

docs: replace GitHub and ktg-privat URLs with Forgejo, replace personal paths.
scripts/skill-gen/manifest.json: rename ktg-privat ID.
skills: remove Linear tagging reference, add supply chain warnings.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-07 17:27:10 +02:00

506 lines
17 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.

# EU AI Act Integration Handover til Claude Code
**Dato:** 2026-02-22
**Formål:** Legg til full EU AI Act-støtte i ms-ai-architect plugin
**Prioritet:** P1 Frister nærmer seg (2. august 2026: høyrisiko-krav trer i kraft)
**Estimert arbeid:** 812 timers Claude Code-arbeid fordelt på 10 steg
---
## Kontekst
ms-ai-architect er en Claude Code-plugin for Microsoft AI-arkitektur i norsk offentlig sektor, primært brukt av KTG (AI-rådgiver, Statens vegvesen). Pluginen har allerede DPIA- og ROS-agenter. EU AI Act-støtte skal integreres som en **overordnet regulatory layer** som feeder inn i eksisterende arbeidsflyt.
**Logisk sekvens (uforanderlig):**
```
EU AI Act-klassifisering → DPIA (Art. 13/14 input) → ROS (dimensjon 6 input)
```
Eksisterende AI Act-kunnskap i pluginen:
- `skills/ms-ai-governance/references/responsible-ai/ai-act-compliance-guide.md`
- `skills/ms-ai-governance/references/responsible-ai/ai-act-annex-iii-checklist.md`
Disse er komplette og oppdaterte per feb 2026. Ikke overskriv dem.
---
## Implementeringsrekkefølge
### STEG 1: Opprett 7 nye KB-filer
Plassering: `skills/ms-ai-governance/references/responsible-ai/`
#### 1a. `ai-act-classification-methodology.md`
Systematisk metodikk for klassifisering i fire steg:
1. Forbudt praksis-sjekk (Annex II / Art. 5)
2. Generell AI-modell (GPAI) er det en grunnmodell/frontier model?
3. Høyrisiko-sjekk via Annex III (8 kategorier) og Annex I (produktsikkerhet)
4. Begrenset/minimal risiko (default)
For hvert steg: beslutningspunkter, terskelverdier, SVV-eksempler.
Inkluder: Annex III full liste på norsk med presiseringer for transport/infrastruktur-sektoren.
#### 1b. `ai-act-provider-obligations.md`
Forpliktelser for **tilbydere** (organisasjoner som utvikler/tilpasser AI-systemer):
- Art. 9: Risk management system
- Art. 10: Datakvalitetskrav
- Art. 11: Teknisk dokumentasjon (Annex IV-format)
- Art. 12: Logging og hendelsesregistrering
- Art. 13: Transparens og informasjon til brukere
- Art. 14: Menneskelig tilsyn (human oversight)
- Art. 15: Nøyaktighet, robusthet, cybersikkerhet
- Art. 1627: Kvalitetsstyring, samsvarsvurdering, CE-merking (relevant ved anskaffelse)
SVV-kontekst: Statens vegvesen er typisk **deployer**, ikke provider. Men ved intern utvikling på topp av Azure AI/Copilot Studio: provider-rolle.
#### 1c. `ai-act-deployer-obligations.md`
Forpliktelser for **deployere** (organisasjoner som tar i bruk AI-systemer):
- Art. 26: Deployerens forpliktelser
- Bruk i tråd med provider-instruksjoner
- Menneskelig tilsyn (Art. 26(2))
- Databehandlingsansvar ved trening på egne data
- Logging (Art. 26(5) 6 måneder minimum)
- Informasjon til berørte parter
- FRIA-plikt for offentlig sektor (Art. 27)
SVV som deployer: Copilot Studio-agenter, Azure AI Foundry-løsninger, M365 Copilot.
#### 1d. `ai-act-fria-template.md`
Fundamental Rights Impact Assessment **obligatorisk for offentlig sektor** (Art. 27).
Mal med følgende seksjoner:
1. Systembeskrivelse og formål
2. Grunnleggende rettigheter som kan påvirkes (GDPR Art. 1-katalog)
3. Berørte grupper (sårbare grupper, minoriteter, ansatte)
4. Sannsynlighet og alvorlighetsgrad per rettighet
5. Eksisterende beskyttelsestiltak
6. Restrisiko og konklusjon
7. Godkjenningsstatus og dato
Norsk kontekst: Datatilsynet veileder, Nkom koordinerer nasjonal håndhevelse.
#### 1e. `ai-act-conformity-assessment.md`
Samsvarsvurdering for høyrisiko-systemer:
- Intern (Art. 43(2)): Selvvurdering mot harmoniserte standarder → EU-deklarasjon
- Ekstern (Art. 43(1)): Krav til notifisert organ (visse Annex III-kategorier)
- Teknisk dokumentasjon (Annex IV) komplett sjekkliste
- EU-deklarasjon om samsvar mal
- Registrering i EU-databasen (Art. 49, plikt for offentlig sektor)
#### 1f. `ai-act-transparency-notices.md`
Mal for transparensnotiser per Art. 13 og 52:
- Art. 13: Informasjon til brukere av høyrisiko-systemer
- Formål og funksjonalitet
- Nøyaktighet og begrensninger
- Menneskelig tilsyn
- Kontaktinformasjon
- Art. 52(1): Notis til brukere av samtalesystemer (chatbots)
- Art. 52(3): Deepfake-merking
- Art. 50: GPAI-modeller krav til maskinlesbar metadata
SVV-eksempler: Chatbot på vegvesen.no, AI i saksbehandling.
#### 1g. `ai-act-microsoft-tools-mapping.md`
Kartlegging av Microsoft-verktøy mot AI Act-krav:
- **Purview Compliance Manager**: AI Act assessment template, kontroller, improvement actions
- **Azure AI Foundry / AI Reports**: Teknisk dokumentasjon, evaluering, monitoring
- **Priva**: FRIA-støtte, personvernvurdering, data mapping
- **Entra Agent ID**: Agentidentitet og sporbarhet (Art. 12 logging)
- **Azure Policy + Defender for Cloud**: Teknisk kontroll og compliance-bevis
- **Microsoft Copilot Studio**: Innebygde transparens-features, human handoff
---
### STEG 2: Opprett ai-act-assessor agent
Fil: `agents/ai-act-assessor.md`
```yaml
name: ai-act-assessor
description: EU AI Act-klassifisering og compliance-vurdering for AI-systemer i norsk offentlig sektor
model: claude-sonnet-4-5
tools:
- Read
- Glob
- Grep
- WebSearch
- mcp__microsoft-learn__microsoft_docs_search
- mcp__microsoft-learn__microsoft_docs_fetch
```
**Triggers:** "AI Act", "høyrisiko", "Annex III", "samsvarsvurdering", "conformity assessment", "FRIA", "transparensnotis", "risikoklassifisering"
**Arbeidsflyt:**
1. Les inn systemdokumentasjon fra bruker (navn, formål, brukere, teknologi)
2. Kjør klassifiseringssjekk: Forbudt → GPAI → Høyrisiko (Annex III) → Begrenset/Minimal
3. Fastslå rolle (provider/deployer/begge)
4. List konkrete forpliktelser basert på klassifisering og rolle
5. Lag tiltaksplan med prioritet og frist
6. Anbefal neste steg: DPIA (hvis persondata), ROS (alltid for høyrisiko)
**Output-format:**
```markdown
# EU AI Act Vurdering: [Systemnavn]
## Risikoklassifisering
**Klasse:** [Forbudt / Høyrisiko / Begrenset / Minimal]
**Hjemmel:** Annex III, kategori X [beskrivelse]
## Rolle
**SVV som:** [Provider / Deployer / Begge]
## Forpliktelser
### Umiddelbart (innen 2026-08-02)
...
### Kortfristet (innen 2027-08-02)
...
## Tiltaksplan
| Tiltak | Hjemmel | Ansvar | Frist | Status |
|--------|---------|--------|-------|--------|
...
## Anbefalte neste steg
- [ ] Kjør /architect:dpia AI Act Art. 13/14 er nå input
- [ ] Kjør /architect:ros AI Act-krav i dimensjon 6 (juridisk/regulatorisk)
- [ ] [Evt. /architect:frimpact for offentlig sektor]
```
**KB-routing:**
- Primary: `skills/ms-ai-governance/references/responsible-ai/` (alle 7 nye filer + eksisterende 2)
- Secondary: `skills/ms-ai-governance/` (øvrige governance-filer)
---
### STEG 3: Opprett 5 nye commands
#### 3a. `commands/architect-classify.md`
```yaml
name: architect:classify
description: Klassifiser AI-system mot EU AI Act (Annex II/III), tildel risikonivå
```
Prompt-struktur:
1. Be bruker om: systemnavn, formål, målgrupper, teknologi, sektortilhørighet
2. Kjør ai-act-assessor agent
3. Output: Klassifiseringsrapport med risikonivå og umiddelbare forpliktelser
#### 3b. `commands/architect-requirements.md`
```yaml
name: architect:requirements
description: Hent konkrete AI Act-krav basert på risikonivå og sektortilhørighet
```
Bruker oppgir: risikonivå, rolle (provider/deployer), sektor
Output: Prioritert kravliste med artikkelreferanser og Microsoft-verktøy-mapping
#### 3c. `commands/architect-transparency.md`
```yaml
name: architect:transparency
description: Generer Art. 13/52 transparensnotis for AI-system
```
Input: Systembeskrivelse, brukergrupper, risikoklasse
Output: Ferdig transparensnotis på norsk/bokmål, klar for publisering
#### 3d. `commands/architect-frimpact.md`
```yaml
name: architect:frimpact
description: Fundamental Rights Impact Assessment (Art. 27) obligatorisk for offentlig sektor
```
Workflow: Strukturert intervju → FRIA-rapport med risikovurdering per rettighet
Merk: Skal normalt kjøres ETTER /architect:classify bekrefter høyrisiko
#### 3e. `commands/architect-conformity.md`
```yaml
name: architect:conformity
description: Samsvarsvurdering (Art. 43) for høyrisiko AI-systemer sjekkliste og EU-deklarasjon
```
Output: Annex IV teknisk dokumentasjon sjekkliste + mal for EU-samsvarserklæring
---
### STEG 4: Oppdater eksisterende agenter
#### 4a. `agents/dpia-agent.md`
Legg til i agent-instruksjonene:
```
Hvis AI Act-klassifisering er utført (sjekk om bruker har output fra /architect:classify):
- Integrer Art. 13 (transparens) og Art. 14 (menneskelig tilsyn) som eksplisitte DPIA-tiltak
- Referér AI Act-klassifisering i DPIA-rapporten under "Tilknyttede rammeverk"
- Høyrisiko-klassifisering skjerper terskelen for "høy risiko" i DPIA-forstand
Hvis AI Act-klassifisering IKKE er utført:
- Spør om systemet er vurdert mot AI Act (kan være relevant)
- Fortsett DPIA uavhengig de er separate rettslige krav
```
#### 4b. `agents/ros-analysis-agent.md`
I dimensjon 6 (Juridisk og regulatorisk risiko), legg til:
```
EU AI Act spesifikke trusler:
- T6.4: Feilklassifisering av AI-system (feil risikonivå → manglende compliance)
- T6.5: Manglende teknisk dokumentasjon (Art. 11/Annex IV)
- T6.6: Utilstrekkelig logging og hendelsesregistrering (Art. 12/26)
- T6.7: Manglende FRIA for offentlig sektor (Art. 27)
- T6.8: Overskridelse av compliance-frister (2026-08-02, 2027-08-02)
- T6.9: Ulovlig AI-praksis iht. Art. 5 (forbud)
Sanksjonsnivåer (skjerper alvorlighetsgrad):
- Art. 5-brudd: Inntil 35 MEUR eller 7% av global omsetning
- Høyrisiko-brudd: Inntil 15 MEUR eller 3%
- Øvrige brudd: Inntil 7.5 MEUR eller 1%
```
#### 4c. `agents/architecture-review-agent.md`
Legg til i review-sjekklisten:
```
EU AI Act Conformity Check (kjøres automatisk hvis systemet er AI-basert):
□ Er systemet klassifisert mot Annex III?
□ Er SVVs rolle (provider/deployer) avklart?
□ Er teknisk dokumentasjon (Annex IV) påbegynt?
□ Er Art. 14 menneskelig tilsyn implementert i arkitekturen?
□ Er logging (Art. 12/26) designet inn ikke ettermontering?
□ Er FRIA planlagt (offentlig sektor, høyrisiko)?
□ Er transparensnotis (Art. 13) planlagt for brukergrensesnitt?
```
---
### STEG 5: Oppdater CLAUDE.md
Gjør følgende endringer i `CLAUDE.md`:
**A. Legg til i innledningsavsnittet** (etter "Tilbyr strukturert arkitekturveiledning..."):
```markdown
## Regulatorisk arbeidsflyt
Alltid i denne rekkefølgen:
1. **EU AI Act-klassifisering** (`/architect:classify`) fastslår risikonivå og forpliktelser
2. **DPIA** (`/architect:dpia`) hvis systemet behandler persondata; AI Act Art. 13/14 er input
3. **ROS-analyse** (`/architect:ros`) alltid for høyrisiko-systemer; AI Act dimensjon 6 er input
Grunnen: AI Act-klassifisering påvirker omfanget av både DPIA og ROS.
```
**B. Oppdater kommandotabellen** legg til 5 nye kommandoer:
| Kommando | Beskrivelse |
|----------|-------------|
| `/architect:classify` | EU AI Act-klassifisering: Fastslå risikonivå (forbudt/høyrisiko/begrenset/minimal) |
| `/architect:requirements` | Hent konkrete AI Act-krav basert på risikonivå og rolle |
| `/architect:transparency` | Generer Art. 13/52 transparensnotis på norsk |
| `/architect:frimpact` | Fundamental Rights Impact Assessment (obligatorisk offentlig sektor) |
| `/architect:conformity` | Samsvarsvurdering (Art. 43) sjekkliste og EU-samsvarserklæring |
**C. Oppdater agenttabellen** legg til ny agent:
| Agent | Formål | Modell |
|-------|--------|--------|
| `ai-act-assessor` | EU AI Act-klassifisering og compliance-vurdering | sonnet |
**D. Oppdater skills-tabellen** ms-ai-governance: 71 → 78 referansefiler
**E. Legg til seksjon "Viktige frister"** nederst i CLAUDE.md:
```markdown
## Viktige frister (EU AI Act)
| Dato | Krav |
|------|------|
| 2026-02-02 | Forbudt AI-praksis (Art. 5) i kraft |
| 2026-08-02 | GPAI-modell-krav i kraft |
| 2027-08-02 | Høyrisiko-krav (Annex III) i kraft |
| 2030-08-02 | Overgangsperiode for eksisterende systemer utløper |
Tilsynsmyndighet Norge: Nkom (koordinerende), Datatilsynet (personvern), sektorspesifikke myndigheter.
```
---
### STEG 6: Oppdater hooks
#### 6a. `hooks/session-start-context.mjs`
Legg til AI Act-fristsjekk i SessionStart-hook:
```javascript
// AI Act deadline warning
const today = new Date();
const deadline1 = new Date('2026-08-02');
const daysToDeadline1 = Math.ceil((deadline1 - today) / (1000 * 60 * 60 * 24));
if (daysToDeadline1 > 0 && daysToDeadline1 <= 180) {
console.log(`⚠️ EU AI Act: ${daysToDeadline1} dager til høyrisiko-krav (2026-08-02)`);
}
```
#### 6b. `hooks/stop-assessment-reminder.mjs`
Legg til i Stop-hook (assessment reminder):
```javascript
// Sjekk om AI Act-vurdering bør kjøres
const aiActKeywords = ['AI-system', 'agent', 'copilot', 'modell', 'prediksjon', 'automatisering'];
const hasAiContext = aiActKeywords.some(kw => conversationContext.includes(kw));
if (hasAiContext && !conversationContext.includes('AI Act')) {
console.log('💡 Tips: Vurdere /architect:classify for EU AI Act-klassifisering?');
}
```
---
### STEG 7: Oppdater playground
Fil: `playground/azure-ai-playground.html`
I steg 3 (Konfigurer) legg til ny seksjon "Regulatory Compliance":
```html
<div class="compliance-section">
<h4>EU AI Act</h4>
<label>
<input type="checkbox" id="ai-act-classify">
Klassifiser mot Annex III (kjør /architect:classify)
</label>
<label>
<input type="checkbox" id="ai-act-fria">
FRIA obligatorisk (offentlig sektor + høyrisiko)
</label>
<label>
<input type="checkbox" id="ai-act-transparency">
Transparensnotis (Art. 13/52)
</label>
</div>
```
I eksport-formater (steg 5) legg til AI Act-output alternativ:
- "AI Act Assessment Report (Markdown)"
- "Conformity Assessment Record (JSON)"
---
### STEG 8: Opprett tester
#### 8a. `tests/fixtures/ai-act/fixture.md`
Test-case: Fiktivt AI-system hos SVV
```markdown
# Test-system: FartsPrediksjonsagent
Formål: Predikere trafikkfart på E6 ved hjelp av historisk og sanntids-data
Teknologi: Azure Machine Learning, python-modell, REST API
Brukere: Intern trafikkovervåking, ingen direkte borgerinteraksjon
Data: GPS-data fra biler, kameraer, sensorer (anonymisert)
Sektor: Transport og infrastruktur
```
Forventet output: Klassifisert som "Begrenset/Minimal" (ikke Annex III, ikke direkte borgerimpakt)
#### 8b. `tests/fixtures/ai-act/fixture-high-risk.md`
Test-case: Høyrisiko-system
```markdown
# Test-system: AutomatiskSaksbehandler
Formål: Automatisk vurdering av dispensasjonssøknader (kjøretillatelser)
Teknologi: Azure OpenAI GPT-4, Copilot Studio
Brukere: Borgere sender søknad, AI gir innstilling til saksbehandler
Data: Persondata, helseopplysninger (ved dispensasjon)
Sektor: Offentlig forvaltning
```
Forventet output: Høyrisiko (Annex III, kategori 5: offentlige tjenester og ytelser)
#### 8c. `tests/test-ai-act-output.sh`
```bash
#!/bin/bash
# Test EU AI Act assessment output quality
echo "=== AI Act Output Test ==="
# Test 1: Klassifisering minimal risiko
echo "Test 1: Minimal risiko-klassifisering..."
# [implementer test]
# Test 2: Klassifisering høyrisiko
echo "Test 2: Høyrisiko-klassifisering..."
# [implementer test]
# Test 3: FRIA-trigger ved høyrisiko + offentlig sektor
echo "Test 3: FRIA-trigger..."
# [implementer test]
echo "=== Done ==="
```
#### 8d. Oppdater `tests/run-e2e.sh`
Legg til AI Act test-suite som del av end-to-end:
```bash
echo "Running AI Act assessment suite..."
bash tests/test-ai-act-output.sh
```
---
### STEG 9: Kjør validate-plugin.sh
```bash
cd <plugin-root>
bash tests/validate-plugin.sh
```
Forventede advarsler (akseptable):
- Nye commands mangler i CLAUDE.md kommandotabell INNTIL steg 5 er fullført
---
### STEG 10: Kjør run-e2e.sh
```bash
bash tests/run-e2e.sh
```
Verifiser at alle eksisterende tester fortsatt passerer.
---
## Kritiske hensyn
1. **Sekvens er uforanderlig**: AI Act → DPIA → ROS. Aldri omgå dette.
2. **SVV er typisk deployer**, ikke provider. Men ved intern utvikling (Copilot Studio-agenter bygget internt): provider-rolle. Agenten skal avklare dette eksplisitt.
3. **FRIA er obligatorisk for offentlig sektor** ved høyrisiko-systemer. Ikke valgfritt.
4. **Fristen 2026-08-02 er 162 dager unna** (per 2026-02-22). SVV må ha klassifisert alle høyrisiko-systemer og ha GPAI-compliance på plass innen da.
5. **Ikke overskriv eksisterende KB-filer**: `ai-act-compliance-guide.md` og `ai-act-annex-iii-checklist.md` er komplette. Referer til dem, ikke erstatt dem.
6. **ms-ai-governance skills** skal oppgraderes: Oppdater manifest/teller fra 71 til 78 referansefiler etter at 7 nye filer er opprettet.
7. **Norsk språk**: All output til sluttbrukere skal være på norsk/bokmål. Interne agent-instruksjoner kan være på engelsk.
---
## Referanser
- EU AI Act (Regulation 2024/1689): https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32024R1689
- Nkom norsk tilsynsmyndighet: https://www.nkom.no/aktuelt/nyheter/nkom-koordinerer-eu-ai-act-i-norge
- Datatilsynet AI Act-veileder: https://www.datatilsynet.no/regelverk-og-verktoy/veiledere/kunstig-intelligens/
- Microsoft AI Act: https://learn.microsoft.com/en-us/azure/compliance/offerings/offering-eu-ai-act
- Purview Compliance Manager AI Act template: https://learn.microsoft.com/en-us/purview/compliance-manager-templates-list
---
*Handover opprettet: 2026-02-22 av Claude Sonnet 4.6 i Claude.ai Desktop*
*Plugin-versjon: Se CHANGELOG.md*