fix(ms-ai-architect): #7d privat-sektor-paritet — sektor-parametrisering + onboarding-forgrening + 2 nye kommandoer (audit §5)
Audit §161-185: kjerne-dybden var sektor-agnostisk, men entry-points/kalibrering/ navigasjon var systematisk offentlig-sektor-først. Operatørvalg: full audit (kjerne + begge nye kommandoer). Telling 27→29 kommandoer. Ingen versjonsbump (→ #9-release). Mekanisk kjerne: - Sektor parametrisert i 6 kmd (classify/dpia/ros/review default nøytral m/offentlig- spesialisering; utredning beholder utredningsinstruksen + peker privat til :design; review får privat/regulert-gren DORA/Finanstilsynet). frontmatter-desc for review synket i CLAUDE/help. - FRIA-scope KORRIGERT (verifisert mot AI Act Art. 27(1), WebSearch 2026-06-18): obligatorisk for (a) offentligrettslige organer, (b) private som leverer offentlige tjenester, (c) private deployere i kredittscoring (UNNTATT svindeldeteksjon) + livs-/helseforsikringsprising. Ikke lenger feilrådet som rent offentlig-verktøy. - onboarding-agent forgrenet: sektortype (offentlig/privat) → private sektor-valg + privat reg-sett (DORA/Finansforetaksloven/IKT-forskrift/Verdipapirhandelloven); stiller ALDRI private om Offentleglova/Arkivloven. Sektortype skrevet til org-fil. - requirements detekterer finans → DORA/Finanstilsynet (betinget §3-sjekkliste). Nye kommandoer (refererer kun eksisterende kjerne-KB → ingen nye orphans): - /architect:design — sektor-nøytralt Solution Architecture Document (mellombane mellom samtale og full utredning). - /architect:vendor — tredjeparts/SaaS due diligence (dataresidens, sub-prosessorer, DPA, Schrems II/EDPB-TIA, AI Act-deployer). Navigasjon/wiring: - README: privat-enterprise-arbeidsflyt (eksempel 5) + DORA/FRIA-nyanse + design/vendor i tabeller + "Beyond Public Sector"-note. - help.md: privat-bane i arbeidsflyt + design/vendor + manglende kb-update lagt til. - CLAUDE.md-tabell: design/vendor + synket review/frimpact-desc. - playground: katalog-oppføringer (produces_report:false), SHARED.sector utvidet med private sektorer, 2 privat-seeds (fraud-detection FRIA-unntatt + kredittscoring FRIA-pliktig). Telling 25/27→29 i playground/docs/README/test. Tester: validate 239 PASS · playground v3 223 static / 390 kombinert · kb-integrity 115/115 · run-e2e alle suiter — 0 FAIL. CHANGELOG-«24 commands» bevart (historiske notater). 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:
parent
20c1be6531
commit
6e1fc6d37c
16 changed files with 291 additions and 33 deletions
|
|
@ -805,7 +805,7 @@
|
|||
// COMMAND CATALOG (Step 4)
|
||||
// ============================================================
|
||||
//
|
||||
// Kanonisk single-source-of-truth for alle 25 commands. Driver:
|
||||
// Kanonisk single-source-of-truth for alle 29 commands. Driver:
|
||||
// - Step 5/8: skjema-render via input_fields[]
|
||||
// - Step 9: katalog-UI gruppert på category
|
||||
// - Step 11: parser-routing via report_archetype
|
||||
|
|
@ -834,7 +834,7 @@
|
|||
// som bruker det.
|
||||
const SHARED = {
|
||||
organisation_name: { id: 'organisation_name', label: 'Virksomhet', type: 'text', from: 'shared', shared_path: 'organization.name' },
|
||||
sector: { id: 'sector', label: 'Sektor', type: 'select', from: 'shared', shared_path: 'organization.sector', options: ['Statlig', 'Kommunal', 'Fylkeskommune', 'Helseforetak', 'Undervisning', 'Annet'] },
|
||||
sector: { id: 'sector', label: 'Sektor', type: 'select', from: 'shared', shared_path: 'organization.sector', options: ['Statlig', 'Kommunal', 'Fylkeskommune', 'Helseforetak', 'Undervisning', 'Finans', 'Industri', 'Handel', 'Energi', 'Telekom', 'Annet'] },
|
||||
regulatory_requirements: { id: 'regulatory_requirements', label: 'Regulatoriske krav', type: 'multiSelect', from: 'shared', shared_path: 'organization.regulatory_requirements', options: ['Personopplysningsloven/GDPR', 'Sikkerhetsloven', 'Arkivloven', 'Forvaltningsloven', 'Offentleglova', 'Helseregisterloven', 'Annet'] },
|
||||
cloud_platform: { id: 'cloud_platform', label: 'Skyplattform', type: 'multiSelect', from: 'shared', shared_path: 'technology.cloud_platform', options: ['Azure', 'M365', 'Power Platform', 'On-prem', 'Hybrid', 'Annet'] },
|
||||
license_type: { id: 'license_type', label: 'Lisenstype', type: 'select', from: 'shared', shared_path: 'technology.license_type', options: ['E3', 'E5', 'F1/F3', 'A3/A5', 'G3/G5', 'Annet'] },
|
||||
|
|
@ -1125,7 +1125,7 @@
|
|||
]
|
||||
},
|
||||
|
||||
// ===== DOCUMENTATION (7) =====
|
||||
// ===== DOCUMENTATION (9) =====
|
||||
{
|
||||
id: 'anskaffelse',
|
||||
category: 'documentation',
|
||||
|
|
@ -1267,8 +1267,50 @@
|
|||
{ id: 'use_case', label: 'Use case', type: 'textarea', from: 'local' }
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 'design',
|
||||
category: 'documentation',
|
||||
label: 'Solution Architecture Document (SAD)',
|
||||
description: 'Sektor-nøytralt arkitekturdokument: kontekst, krav/NFR, alternativer, valgt design, risiko, veikart.',
|
||||
argument_hint: '[løsningsnavn] for [bruksscenario]',
|
||||
calls_agent: null,
|
||||
kb_files: ['decision-trees.md', 'security.md', 'cost-models.md'],
|
||||
produces_report: false,
|
||||
report_archetype: null,
|
||||
report_root_class: null,
|
||||
renderer: null,
|
||||
input_fields: [
|
||||
SHARED.organisation_name,
|
||||
SHARED.sector,
|
||||
{ id: 'solution_name', label: 'Løsningsnavn', type: 'text', from: 'local' },
|
||||
{ id: 'use_case', label: 'Bruksscenario', type: 'textarea', from: 'local' },
|
||||
{ id: 'nfr', label: 'Ikke-funksjonelle krav (NFR)', type: 'textarea', from: 'local' },
|
||||
{ id: 'constraints', label: 'Begrensninger', type: 'textarea', from: 'local' }
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 'vendor',
|
||||
category: 'documentation',
|
||||
label: 'Leverandørvurdering (tredjepart/SaaS)',
|
||||
description: 'Due diligence for ekstern SaaS/AI-leverandør: dataresidens, sub-prosessorer, DPA, Schrems II, AI Act-deployer.',
|
||||
argument_hint: '[leverandør/tjeneste] for [bruksscenario]',
|
||||
calls_agent: null,
|
||||
kb_files: ['data-residency-audit-monitoring.md', 'ai-act-deployer-obligations.md', 'security.md'],
|
||||
produces_report: false,
|
||||
report_archetype: null,
|
||||
report_root_class: null,
|
||||
renderer: null,
|
||||
input_fields: [
|
||||
SHARED.organisation_name,
|
||||
SHARED.sector,
|
||||
{ id: 'vendor_name', label: 'Leverandør/tjeneste', type: 'text', from: 'local' },
|
||||
{ id: 'use_case', label: 'Bruksscenario', type: 'textarea', from: 'local' },
|
||||
{ id: 'data_to_vendor', label: 'Data som flyter til leverandøren', type: 'textarea', from: 'local' },
|
||||
{ id: 'deployment_model', label: 'Driftsmodell', type: 'select', from: 'local', options: ['SaaS (multi-tenant)', 'Dedikert', 'Hybrid', 'On-prem'] }
|
||||
]
|
||||
},
|
||||
|
||||
// ===== TOOL (7) — ingen rapport, kun skjema + output-kopiering =====
|
||||
// ===== TOOL (8) — ingen rapport, kun skjema + output-kopiering =====
|
||||
{
|
||||
id: 'architect',
|
||||
category: 'tool',
|
||||
|
|
@ -1856,7 +1898,7 @@
|
|||
'<button type="button" class="tracks__card tracks__card--expert" data-action="goto-catalog">' +
|
||||
'<span class="tracks__card-icon" aria-hidden="true">◇</span>' +
|
||||
'<h3 class="tracks__card-title">Command-katalog</h3>' +
|
||||
'<p class="tracks__card-desc">Bla i alle 25 commands gruppert på kategori. Generer pipeline-strenger uten et prosjekt.</p>' +
|
||||
'<p class="tracks__card-desc">Bla i alle 29 commands gruppert på kategori. Generer pipeline-strenger uten et prosjekt.</p>' +
|
||||
'<span class="tracks__card-meta"><span>' + CATALOG.commands.length + ' commands</span><span class="tracks__card-cta">Bla →</span></span>' +
|
||||
'</button>' +
|
||||
'</div>'
|
||||
|
|
@ -1967,7 +2009,9 @@
|
|||
{ id: 'copilot-extension', name: 'Copilot-utvidelse for M365' },
|
||||
{ id: 'customer-service', name: 'Kundeservice-chatbot' },
|
||||
{ id: 'intelligent-search', name: 'Intelligent søk på tvers av fagsystemer' },
|
||||
{ id: 'reporting', name: 'AI-assistert rapportering' }
|
||||
{ id: 'reporting', name: 'AI-assistert rapportering' },
|
||||
{ id: 'fraud-detection', name: 'Bank fraud-detection (finans, DORA — FRIA-unntatt)' },
|
||||
{ id: 'credit-scoring', name: 'Kredittscoring (finans, FRIA-pliktig privat deployer)' }
|
||||
];
|
||||
|
||||
// v1.15.0: currentProjectTab beholdes som zombie for ACTIONS['project-tab']-
|
||||
|
|
@ -2116,7 +2160,7 @@
|
|||
// CATALOG SURFACE (Step 9)
|
||||
// ============================================================
|
||||
//
|
||||
// 25 commands gruppert i 5 .expansion-grupper (CATALOG.categories) med
|
||||
// 29 commands gruppert i 5 .expansion-grupper (CATALOG.categories) med
|
||||
// søke-input som filtrerer på id+label+description+argument_hint.
|
||||
// Hver kategori-expansion rendrer en .catalog-cards-grid med kort.
|
||||
// "Åpne skjema" på et kort åpner renderCommandForm() i modal.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue