/ ISO Compliance Report — AAMOS Platform

Wavult Group AB  ·  Konfidentiellt — Intern användning

2026-05-02 Genererad: 14:22 UTC
System: bernt.wavult.com (16.170.83.169)
Klassificering: INTERN — Pre-Assessment Grade

Executive Summary

⚠️ Övergripande bedömning: INTE REDO FÖR EXTERN CERTIFIERINGSANSÖKAN
ISO 42001 visar 29% compliant controls (11/38). ISO 9001 saknar formellt QMS helt (31% composite). Två aktiva kritiska fynd: JWT fallback-secret hårdkodat i källkod + AAMOS microservices kör fortfarande som root. pre-assessment rekommenderas Q3 2026 under förutsättning att samtliga P0-åtgärder slutförs senast maj 2026.
47%
ISO 42001:2023
11/38 compliant · 14 gap · 13 ej startade
31%
ISO 9001:2015
4 compliant · 10 gap · 9 ej startade
67%
SOC 2 Type II
8/12 pass · 4 partial
60%
ISO 27001:2022
6/10 pass · 4 partial
90%
GDPR
Stark grund, minor gaps
67%
EU AI Act
4/6 pass · 2 partial
2
Kritiska fynd (aktiva)
JWT fallback-secret · Root-processer
Q3
Pre-Assessment
Target 2026-Q3 (ISO 42001)

🎯 Certifieringspipeline

StandardNulägeTargetETA
ISO 4200147%90%Q3 2026 pre-assess
ISO 900131%70%Q1 2027
SOC 2 Type II67%100%Q4 2026
ISO 2700160%100%Q1 2027
EU AI Act67%82%Q3 2026
GDPR90%100%Q2 2026

🔴 Aktiva P0-blockers

C1 — JWT Fallback-Secret i källkod
'amos-fallback-secret' hårdkodat på 3 ställen i auth-routes.js (rad 19, 156, 2114). Alla tokens förfalskningsbara om AMOS_JWT_SECRET ej satt i env.
C2 — AAMOS microservices kör som root
5 av 7 tjänster (operations, analytics, commerce, cto, people) kör som root. Huvud server.mjs: dubbel process (root + amos). SOC2 CC6.1-blockare.

Säkerhetsstatus — Live 2026-05-02

✅ Åtgärdat sedan senaste audit (2026-04-27)
Port 3100: stängd externt (UFW DENY Anywhere) · Nginx security headers tillagda (HSTS max-age=63072000, X-Frame-Options SAMEORIGIN, X-Content-Type-Options nosniff, Referrer-Policy strict-origin-when-cross-origin) · Redis kör som amos-user
KontrollKategoriStatusDetalj
JWT Fallback-SecretAutentisering 🔴 KRITISK || 'amos-fallback-secret' rad 19, 156, 2114 — produktions-JWT kan signeras med känd nyckel om env-var saknas
Root-processer (microservices)Process Isolation 🔴 KRITISK operations, analytics, commerce, cto, people-service kör som root. server.mjs: dubbel process root + amos
Port 3100 externNätverk ✅ FIXAD UFW: 3100/tcp DENY Anywhere · Lyssnar 127.0.0.1:3100 only
HSTSTLS/Headers ✅ PASS max-age=63072000; includeSubDomains (wavult-headers.conf)
X-Frame-OptionsHeaders ✅ PASS SAMEORIGIN på alla vhosts
X-Content-Type-OptionsHeaders ✅ PASS nosniff aktivt
Referrer-PolicyHeaders ✅ PASS strict-origin-when-cross-origin (wavult-headers.conf)
Content-Security-PolicyHeaders ❌ SAKNAS CSP ej konfigurerat i nginx på någon vhost. Krävs SOC2 + TÜV.
Vyra-backend testerTest Coverage ❌ SAKNAS Noll test-filer i vyra-backend repo (db/, infra/, schemas/, services/, shared/ — ingen *.test.*). ISO 9001 §8.3 + §8.6 blockare.
Audit events persistensAudit Trail ⚠️ DELVIS In-memory only, försvinner vid restart. Ingen audit_events-tabell i PostgreSQL. SOC2 PI1.1 FAIL.
TLS 1.3Kryptering ✅ PASS TLS_AES_256_GCM_SHA384 — starkaste möjliga
SSH HardeningÅtkomstkontroll ✅ PASS PermitRootLogin=no, PasswordAuth=no, MaxAuthTries=3, AllowUsers=bernt
Rate Limiting (API)Tillgänglighet ✅ PASS TOO_MANY_ATTEMPTS aktiveras vid request 6+ mot login-endpoint
Prompt InjectionAI-säkerhet ⚠️ WARN Injection blockeras men intern arkitekturinfo (Kafka, Redis, BullMQ) läcker i svar. Output-filtering saknas.
# ─── P0 FIX 1: JWT Fallback-Secret (auth-routes.js rad 19, 156, 2114) ──────────
sed -i "s/ || 'amos-fallback-secret'//g" /opt/amos/api/auth-routes.js
grep "AMOS_JWT_SECRET" /opt/amos/.env || echo "⚠️ SAKNAS — lägg till AMOS_JWT_SECRET i .env omedelbart"
grep "amos-fallback-secret" /opt/amos/api/auth-routes.js && echo "FORTFARANDE KVAR" || echo "✅ Borttaget"

# ─── P0 FIX 2: Microservices som amos-user (systemd overrides) ──────────────────
for svc in operations analytics commerce cto people; do
  mkdir -p /etc/systemd/system/amos-${svc}.service.d/
  cat > /etc/systemd/system/amos-${svc}.service.d/override.conf << EOF
[Service]
User=amos
Group=amos
NoNewPrivileges=true
ProtectSystem=strict
PrivateTmp=true
EOF
done
systemctl daemon-reload
systemctl restart amos-operations amos-analytics amos-commerce amos-cto amos-people
ps aux | grep "amos-" | grep -v grep | awk '{print $1, $NF}'

# ─── P1 FIX: Content-Security-Policy i nginx ────────────────────────────────────
echo 'add_header Content-Security-Policy "default-src '"'"'self'"'"'; script-src '"'"'self'"'"' '"'"'unsafe-inline'"'"'; style-src '"'"'self'"'"' '"'"'unsafe-inline'"'"'; img-src '"'"'self'"'"' data: https:; connect-src '"'"'self'"'"' https://api.wavult.com; frame-ancestors '"'"'none'"'"'" always;' \
  >> /etc/nginx/conf.d/wavult-headers.conf
nginx -t && systemctl reload nginx && echo "✅ CSP aktivt"

ISO 42001:2023 — Kontrollstatus (Live API 2026-05-02)

Datakälla: GET /api/aamos/iso/controls · 2026-05-02 14:19 UTC
38 kontroller · 11 compliant · 14 gap · 13 ej startade
Composite: (11×1.0 + 14×0.5) / 38 = 47.4%
Target för pre-assessment Q3 2026: 80% (≥30/38 pass/partial)
Gap: 32.6 procentenheter · 19 kontroller behöver adresseras
Kritiska kategorier: A.6 Lifecycle (5 not started), A.7 Data (4 not started)
Kontroll-IDKategoriTitelStatusÄgare
A.2 — Policies
A.2.2PoliciesAI Policy✅ CompliantErik
A.2.3PoliciesAlignment with Other Policies✅ CompliantErik
A.3 — Internal Organization
A.3.2Internal OrganizationAI Roles and Responsibilities✅ CompliantErik
A.3.3Internal OrganizationReporting of Concerns✅ CompliantDennis
A.5 — AI Impact Assessment
A.5.2Impact AssessmentImpact Assessment Process⚠️ GapDennis
A.5.3Impact AssessmentDocumentation of Impact Assessment⚠️ GapDennis
A.5.4Impact AssessmentReview of Impact Assessment⬜ Not StartedDennis
A.6 — AI System Lifecycle
A.6.1LifecycleLifecycle Management⚠️ GapJohan
A.6.2LifecycleAI System Requirements✅ CompliantJohan
A.6.3LifecycleAI System Design⚠️ GapJohan
A.6.4LifecycleData Acquisition and Preparation⬜ Not StartedJohan
A.6.5LifecycleAI Model Development⚠️ GapJohan
A.6.6LifecycleAI Model Verification⬜ Not StartedJohan
A.6.7LifecycleAI System Verification⬜ Not StartedJohan
A.6.8LifecycleAI System Integration✅ CompliantJohan
A.6.9LifecycleAI System Operation✅ CompliantBernt
A.6.10LifecycleAI System Monitoring⚠️ GapBernt
A.7 — Data for AI Systems
A.7.2DataData Management⚠️ GapJohan
A.7.3DataData Preparation⬜ Not StartedJohan
A.7.4DataData Quality⬜ Not StartedJohan
A.7.5DataData Lineage⬜ Not StartedJohan
A.7.6DataData Provenance⬜ Not StartedJohan
A.8 — Information for Users
A.8.2User InfoInformation to Users⚠️ GapErik
A.8.3User InfoInstructions for Use⬜ Not StartedErik
A.8.4User InfoTransparency Communication⚠️ GapErik
A.9 — Human Oversight
A.9.2OversightHuman Oversight Measures✅ CompliantErik
A.9.3OversightOversight Responsibilities✅ CompliantErik
A.10 — Testing
A.10.2TestingTesting for AI Systems⚠️ GapJohan
A.10.3TestingTest Documentation⬜ Not StartedJohan
A.11 — Documentation
A.11.2DocumentationAI System Documentation✅ CompliantBernt
A.11.3DocumentationRecord Keeping⚠️ GapBernt
A.12 — Incident Management
A.12.2IncidentsAI Incident Handling✅ CompliantDennis
A.12.3IncidentsIncident Learning⚠️ GapDennis
A.13 — Third-party AI
A.13.2Third-partyThird-party AI Governance⚠️ GapJohan
A.13.3Third-partyThird-party Assessment⬜ Not StartedJohan
A.13.4Third-partyThird-party Contracts⬜ Not StartedErik
A.14 — Continual Improvement
A.14.2ImprovementImprovement Process⚠️ GapErik
A.14.3ImprovementAI Management System Review⬜ Not StartedErik

ISO 9001:2015 — Quality Management System

ℹ️ Varför ISO 9001 stärker ISO 42001-ansökan
ISO 9001 är inte ett krav för ISO 42001-certifiering, men ett implementerat QMS stärker pre-assessment avsevärt. TÜV-granskare letar efter dokumenterade processer, testrutiner och ändringshantering — allt som ISO 9001 formaliserar. Tre direkta synergiområden: (1) §8.3 Design & Development → ISO 42001 A.6 Lifecycle, (2) §8.6 Release criteria → A.10 Testing, (3) §9.2 Internal audit → A.11.3 Record Keeping. En organisation med fungerande ISO 9001 QMS reducerar TÜV-granskningstid med uppskattningsvis 30%.
ISO 9001 Scorecard — Initial Gap Assessment 2026-05-02
✅ Compliant
4 / 23
⚠️ Gap
10 / 23
⬜ Ej startad
9 / 23
Composite: (4×1.0 + 10×0.5) / 23 = 31%
ISO 9001 → ISO 42001 direkt synergi
ISO 9001 klausulStärker ISO 42001Värde
§4.1 KontextA.5 Impact AssessmentHög
§6.1 RiskhanteringA.5 + RiskregisterHög
§7.5 Dok. informationA.11.3 Record KeepingKritisk
§8.3 Design & DevA.6.1–A.6.7 LifecycleKritisk
§8.5.6 Change controlA.6.1 Lifecycle MgmtHög
§8.6 Release criteriaA.10 TestingKritisk
§9.2 Intern revisionA.14.3 AIMS ReviewHög
§10.2 Korrigerande åt.A.12.3 Incident LearningMedium
KlausulTitelStatusGap-beskrivning / BevisÄgare
4 — Kontextförståelse (Understanding the Organization)
4.1Organisationens kontext ✅ Compliant WAVULT_TRUTH.md dokumenterar fullständig kontext: marknad, konkurrenter, bolagsstruktur, 7 intelligens-lager, go-to-market Erik
4.2Intressenters behov och förväntningar ⚠️ Gap Inget formellt stakeholder-register. Kunder, investerare, TÜV, regulatorer kartlagda informellt men ej per ISO 9001-krav (behov, förväntning, relevans) Dennis
4.3QMS scope (tillämpningsområde) ⬜ Ej startad Inget formellt QMS scope-dokument existerar. Ingångsdokument för certifiering — krävs på dag 1 av TÜV-granskning Erik
4.4QMS-processer och deras interaktioner ⬜ Ej startad Ingen processkarta (swimlane/SIPOC) för: mjukvaruutveckling, release, incident, leverantörsstyrning, onboarding Johan
5 — Ledarskap (Leadership)
5.1Ledarskap och åtagande ✅ Compliant AMOS_CONSTITUTION med Erik som System Owner och godkännare. SYSTEM_DEFINITION.md: formell ägarskaps-deklaration med signatur. Erik
5.2Kvalitetspolicy ⚠️ Gap AI_POLICY.md i amos-regulatory-kb täcker AI-specifika aspekter. Saknar: formell Quality Policy med kvalitetsåtaganden, kundorientering, kontinuerlig förbättring — signeras av Erik Erik
5.3Roller, ansvar och befogenheter ✅ Compliant SYSTEM_DEFINITION.md §2 + WAVULT_TRUTH §3: tydliga roller (Erik=SystemOwner, Johan=TechLead, Dennis=Legal/Compliance, Bernt=AILead) Erik
6 — Planering (Planning)
6.1Åtgärder för att hantera risker och möjligheter ✅ Compliant RISK_MANAGEMENT_PROCEDURE.md med riskregister (10 risker), sannolikhet × konsekvens, mitigering, ägare, kvartalsvis genomgång Erik
6.2Kvalitetsmål och planering ⚠️ Gap KPI-tracker + /api/eval finns (uptime, memory, cost). Saknar: SMART kvalitetsmål per produkt — defect rate, test coverage target (>80%), MTTR, DORA metrics (change failure rate, deployment frequency) Johan
6.3Planering av förändringar ⚠️ Gap Golden Path 10-steg dokumenterat i TUV_SYSTEM_ARCHITECTURE.md §7. Steg 2–4 (Lint/SAST/Tests) ej enforced som CI-gates i Gitea Actions. ADR-dokument saknas i repos. Johan
7 — Support (Support)
7.1Resurser (personal, infrastruktur) ⚠️ Gap Teamet dokumenterat (5 personer + Bernt). AWS-infrastruktur dokumenterad. Saknar: resursplan (kapacitet vs backlog), certifieringsbudget Erik
7.2Kompetens ⬜ Ej startad Ingen kompetensmatris. ISO 9001 kräver dokumenterad kompetens per roll med verifiering (utbildning, erfarenhet, intyg) Erik
7.3Medvetenhet (awareness) ⬜ Ej startad Inget awareness-program för kvalitetspolicy. Teammedlemmar måste kunna redovisa kvalitetsmål och sin roll i QMS. Dennis
7.4Kommunikation ⚠️ Gap Telegram + AMOS-alerts fungerar operativt. Saknar: formell kommunikationsplan (vad, till vem, när, kanal, frekvens) per ISO 9001 Dennis
7.5Dokumenterad information (dokumentkontroll) ⚠️ Gap 9 TÜV-dokument finns enbart i /opt/amos/data/ — ej versionshanterade i Git. Inget dokumentkontrollsystem (version, godkännande, distribution, arkivering, retention). Se System Sync Status-sektionen. Bernt
8 — Drift (Operation) — Software-kritiska klausuler
8.1Operationell planering och styrning ⚠️ Gap Deployment sker ad-hoc. Ingen formell sprint/release-planering dokumenterad. Golden Path ej konsekvent följd (steg 2–4 hoppas över). Johan
8.3Design och utveckling ⚡ KRITISK ❌ Kritisk Gap vyra-backend: 0 tester (db/, infra/, schemas/, services/, shared/ — inga *.test.*-filer)
amos-core package.json: "start": "node scripts/server.mjs" — inga test-scripts
ADR-process: Steg 1 dokumenterat men inga ADR-dokument hittade i repos
SAST: Trivy används men ej som CI BLOCK gate i Gitea Actions
ISO 9001 §8.3.4 kräver "design and development controls" — utan testprocesser kan ingen release verifieras som konform
Johan
8.4Styrning av externa leverantörer ⬜ Ej startad OpenAI, Anthropic, AWS, 46elks, ElevenLabs, Cloudflare m.fl. — inga formella leverantörsbedömningar, SLA-uppföljning eller kontrakt­register dokumenterat Johan
8.5Produktion och tjänsteleverans ⚠️ Gap Gitea → CodeBuild → ECS pipeline finns och fungerar. Ej deterministisk: artifact hash saknas, Docker base-images ej pinnade till sha256. Reproducerbarhet ej garanterad. Johan
8.6Frisläppning av produkter ⚡ KRITISK ⬜ Ej startad Inga formella acceptanskriterier för release. Ingen "definition of done". vyra-backend: 0 tester = ingen verifierbar release per ISO 9001. Golden Path Steg 8 (smoke tests) saknar dokumenterade kriterier. Johan
8.7Styrning av avvikande output ⬜ Ej startad Inget NC-hanteringssystem (nonconforming output). När GECL-grade F returneras eller AI-output är felaktig — hur dokumenteras, eskaleras och åtgärdas det formellt? Dennis
9 — Prestationsutvärdering (Performance Evaluation)
9.1Övervakning, mätning och analys ⚠️ Gap Grafana + CloudWatch + /api/eval operativt. Saknar: kundnöjdhet (CSAT), defect rate per sprint, change failure rate (DORA), test coverage % som KPI Bernt
9.2Intern revision ⚡ KRITISK ⬜ Ej startad Noll schemalagda interna revisioner. TÜV-granskare förväntar sig minst 1 intern audit/år med revisionsprotokoll, avvikelselista och uppföljning. Utan detta kan extern certifiering ej beviljas. Dennis
9.3Ledningsgenomgång ⬜ Ej startad Inget dokumenterat management review-protokoll. Krävs: periodisk genomgång av KPIs, incidenter, risker, mål — protokollförd, signerad av Erik Erik
10 — Förbättring (Improvement)
10.2Avvikelse och korrigerande åtgärd (CA) ⚠️ Gap INCIDENT_RESPONSE.md täcker P0–P3 reaktivt. Saknar: formellt CA-system (corrective action tracking med RCA, rotorsaksanalys, effektmätning, stängningstid) Dennis
10.3Kontinuerlig förbättring ⚠️ Gap AMOS_CONSTITUTION §8 definierar månadsvis feedback-analys och varannan-vecka red-teaming. Ej verifierbart implementerat — ingen historik av genomförda förbättringar dokumenterad i systemet Erik

ISO 9001 — Prioriterade åtgärder (väg till 70%)

PrioÅtgärdKlausulInsatsÄgareETA
P0Skapa QMS Scope-dokument (1–2 sidor, formell avgränsning)§4.32hErikMaj 2026
P0Testsuite för vyra-backend (Jest/Vitest, happy-path + error-path)§8.3, §8.61 dagJohanMaj 2026
P0Aktivera Golden Path CI gates i Gitea Actions (lint + SAST + unit test = BLOCK)§8.3, §6.31 dagJohanMaj 2026
P1Quality Policy dokument (1 sida, signeras av Erik)§5.21hErikJuni 2026
P1Kompetensmatris (person × kompetens × verifiering × datum)§7.22hErik/DennisJuni 2026
P1Schemalägg intern ISO 9001-revision Q3 2026 (Dennis som intern revisor)§9.24h prepDennisQ3 2026
P1DORA-metriker i Grafana (change failure rate, deployment frequency, MTTR)§9.10.5 dagBernt/JohanJuni 2026
P1Management Review-protokoll kvartal (mall + kalender)§9.31hErikQ3 2026
P2Leverantörsregister med SLA-uppföljning (AWS, OpenAI, Anthropic, 46elks)§8.43hJohanJuli 2026
P2NC-hanteringsprocess (GECL grade F + incidents → CA-register)§8.7, §10.22hDennisJuli 2026
P2Pin Docker base-images till sha256 i alla Dockerfiles§8.50.5 dagJohanJuli 2026

System Sync Status — Dokumentmatris

⚠️ Kritisk finding: TÜV-dokumentation existerar ENDAST i /opt/amos/data/
9 av 14 primära TÜV/ISO-dokument finns enbart på AMOS-servern (single point of failure). Varken versionshanterade i Git, indexerade i Intelligence eller speglade i RDS. Om bernt-server förlorar data försvinner hela TÜV-dokumentationsbasen. Detta är ett SOC2 A1.2-fynd (availability) och en ISO 9001 §7.5-brist (dokumentkontroll).
Dokument AMOS KB
/opt/amos/data/
Git amos-core
/var/git/repos/…
Git amos-regulatory-kb
/var/git/repos/…
Git wavult-compliance
/var/git/repos/…
Intelligence Index
/opt/aamos-intelligence/
identity-core RDS
PostgreSQL
TUV_AUDIT_READINESS.md
TUV_GAP_ANALYSIS.md
TUV_AUDIT_REPORT_2026-04-27.md
TUV_INVESTOR_AUDIT_2026-04-27.md
TUV_SYSTEM_ARCHITECTURE.md
(AMOS-ARCH-001)
AMOS_CONSTITUTION.md
RISK_MANAGEMENT_PROCEDURE.md
INCIDENT_RESPONSE.md
SYSTEM_DEFINITION.md
AMOS_KNOWLEDGE.md data/ 🔶 152 chunks (GDPR/compliance code indexed)
AI-POLICY.md (via CONSTITUTION) tuv-certification/
TUV-AI-CERTIFICATION-ROADMAP.md tuv-certification/
ISO-standards-matrix.md iso/
SOC2-TypeII-guide.md iso/
WAVULT_TRUTH.md 🔶 indexed i chunks 🔶 indexed
ISO 42001 Controls (live state) 🔶 In-memory API, ej persistent
Audit Events (/api/audit/events) In-memory, ingen tabell

Förklaring: ✅ Finns och synkad · 🔶 Delvis (chunks/indirekt) · — Saknas helt

Konkreta sync-kommandon

source /home/bernt/.openclaw/secrets/credentials.env
GITEA_HOST="wavult-api-alb-2055020040.eu-north-1.elb.amazonaws.com"
GITEA_H="Host: git.wavult.com"
REPO="wavult-group/amos-regulatory-kb"

# ─── STEG 1: Klona amos-regulatory-kb och synka TÜV-dokument ───────────────────
GIT_SSL_NO_VERIFY=true git -c "http.extraHeader=${GITEA_H}" \
  clone "https://wavult:${GITEA_PASS}@${GITEA_HOST}/${REPO}.git" /tmp/reg-kb-sync

mkdir -p /tmp/reg-kb-sync/tuv-internal/

# Kopiera alla TÜV-interna dokument
for doc in TUV_AUDIT_READINESS TUV_GAP_ANALYSIS TUV_AUDIT_REPORT_2026-04-27 \
           TUV_INVESTOR_AUDIT_2026-04-27 TUV_SYSTEM_ARCHITECTURE \
           AMOS_CONSTITUTION RISK_MANAGEMENT_PROCEDURE INCIDENT_RESPONSE SYSTEM_DEFINITION; do
  cp /opt/amos/data/${doc}.md /tmp/reg-kb-sync/tuv-internal/
done

# Skapa dokumentkontroll-index (ISO 9001 §7.5)
cat > /tmp/reg-kb-sync/tuv-internal/INDEX.md << 'INDEXEOF'
# Internal Document Register — ISO 9001 §7.5 Document Control
| Dokument | Version | Godkänd av | Datum | Nästa review |
|---|---|---|---|---|
| TUV_AUDIT_READINESS.md | 1.0 | Erik Svensson | 2026-04-27 | 2026-07-27 |
| TUV_GAP_ANALYSIS.md | 1.0 | Erik Svensson | 2026-04-27 | 2026-07-27 |
| TUV_AUDIT_REPORT_2026-04-27.md | 1.0 | Erik Svensson | 2026-04-27 | 2026-07-27 |
| TUV_INVESTOR_AUDIT_2026-04-27.md | 1.0 | Erik Svensson | 2026-04-27 | 2026-10-27 |
| TUV_SYSTEM_ARCHITECTURE.md | 1.0 | Erik Svensson | 2026-04-27 | 2026-07-27 |
| AMOS_CONSTITUTION.md | 1.0 | Erik Svensson | 2026-04-27 | 2026-07-27 |
| RISK_MANAGEMENT_PROCEDURE.md | 1.0 | Erik Svensson | 2026-04-27 | 2026-07-27 |
| INCIDENT_RESPONSE.md | 1.0 | Erik Svensson | 2026-04-27 | 2026-07-27 |
| SYSTEM_DEFINITION.md | 1.0 | Erik Svensson | 2026-04-27 | 2026-07-27 |
INDEXEOF

cd /tmp/reg-kb-sync
git config user.email "bernt@wavult.com" && git config user.name "Bernt"
git add tuv-internal/
git commit -m "docs: sync internal documents from AMOS KB [2026-05-02]

Source: /opt/amos/data/ (bernt.wavult.com)
Standard: ISO 9001 §7.5 Document Control
Reviewed-by: Bernt (AMOS AI Security Agent)"

GIT_SSL_NO_VERIFY=true git -c "http.extraHeader=${GITEA_H}" \
  push "https://wavult:${GITEA_PASS}@${GITEA_HOST}/${REPO}.git" HEAD:main
cd / && rm -rf /tmp/reg-kb-sync

# ─── STEG 2: Kopiera AI-POLICY från regulatory-kb → AMOS KB ────────────────────
git --git-dir=/var/git/repos/wavult-group/amos-regulatory-kb.git \
  show HEAD:tuv-certification/AI-POLICY.md > /opt/amos/data/AI-POLICY.md
git --git-dir=/var/git/repos/wavult-group/amos-regulatory-kb.git \
  show HEAD:tuv-certification/TUV-AI-CERTIFICATION-ROADMAP.md \
  > /opt/amos/data/TUV_CERTIFICATION_ROADMAP.md
echo "Synkat från regulatory-kb: $(ls /opt/amos/data/AI-POLICY.md /opt/amos/data/TUV_CERTIFICATION_ROADMAP.md)"

# ─── STEG 3: Re-indexera TÜV-dokument i AAMOS Intelligence ────────────────────
node /opt/aamos-intelligence/indexer.mjs --source=regulatory-kb --force 2>&1 | tail -10

# ─── STEG 4: Skapa audit_events tabell i RDS ────────────────────────────────────
# (ersätt $DATABASE_URL med korrekt DSN från /opt/amos/.env)
source /opt/amos/.env
psql "${DATABASE_URL}" << 'SQLEOF'
CREATE TABLE IF NOT EXISTS audit_events (
  id            UUID         PRIMARY KEY DEFAULT gen_random_uuid(),
  trace_id      UUID         NOT NULL,
  timestamp     TIMESTAMPTZ  NOT NULL DEFAULT now(),
  user_id       TEXT,
  role          TEXT,
  action        TEXT         NOT NULL,
  gecl_grade    CHAR(1),
  policy_result TEXT,
  status        TEXT,
  payload_hash  TEXT,
  artifact_id   TEXT,
  force_majeure BOOLEAN      DEFAULT FALSE,
  created_at    TIMESTAMPTZ  DEFAULT now()
);
CREATE INDEX IF NOT EXISTS idx_audit_trace_id  ON audit_events(trace_id);
CREATE INDEX IF NOT EXISTS idx_audit_timestamp ON audit_events(timestamp DESC);
CREATE INDEX IF NOT EXISTS idx_audit_user_id   ON audit_events(user_id);
COMMENT ON TABLE audit_events IS '5-field audit log — ISO 42001 A.11.3 / SOC2 PI1.1 / ISO 9001 §7.5';
SELECT 'audit_events table ready: ' || COUNT(*) FROM audit_events;
SQLEOF

# ─── VERIFIERING ────────────────────────────────────────────────────────────────
echo "=== Sync-verifiering $(date -u +%Y-%m-%dT%H:%M:%SZ) ==="
git --git-dir=/var/git/repos/wavult-group/amos-regulatory-kb.git \
  ls-tree HEAD tuv-internal/ 2>/dev/null | wc -l | xargs echo "  tuv-internal/ filer:"
ls /opt/amos/data/AI-POLICY.md 2>/dev/null && echo "  AI-POLICY.md: OK" || echo "  AI-POLICY.md: SAKNAS"

Sync gap-matris — prioritering

SystemSaknar (konkret)PrioRisk om ej åtgärdat
amos-regulatory-kb 9 TÜV-dokument i tuv-internal/ + INDEX.md (dokumentkontroll) P0 TÜV-granskare kan ej se ändringshistorik. ISO 9001 §7.5 FAIL. Certifiering blockeras.
identity-core RDS Tabell audit_events saknas. ISO 42001 controls in-memory (försvinner vid restart). P0 SOC2 PI1.1 FAIL · ISO 42001 A.11.3 Gap kräver persistent, querybar audit trail per transaction-ID
AAMOS Intelligence Alla 9 TÜV-interna dokument ej indexerade. 4009 chunks men 0 TÜV-dokumentträffar på direktsökning. P1 AAMOS kan ej svara på TÜV-frågor med GECL grade A (känd källa). Svagar certifieringsposition.
wavult-compliance (Git) Repo innehåller bara README + src/ — noll compliance-dokument trots vilseledande namn P1 Confusion vid TÜV-granskning. Antingen populera eller byt namn till wavult-compliance-placeholder
AMOS KB AI-POLICY.md (i regulatory-kb men ej kopierad) · TUV-CERTIFICATION-ROADMAP.md · ISO-standards-matrix.md P2 AMOS kan ej referera AI-POLICY med GECL grade A vid compliance-frågor

Riskregister — Nuläge 2026-05-02

IDRiskSannolikhetKonsekvensNivåMitigeringStatus
R-001AI-hallucination i kritiskt beslutMediumHögHögGECL F = stopp, kräv källa✅ Mitigerad
R-002Agent med för bred behörighetLågKritiskHögPERMISSION_MATRIX + BLOCK✅ Mitigerad
R-003Prompt injection i repo-dataLågHögMediumvalidateToolCall() 13 patterns⚠️ Delvis
R-004Okontrollerad data exfiltrationLågKritiskHögUFW egress whitelist✅ Mitigerad
R-005Deploy utan godkännandeLågHögMediumGolden Path BLOCK gates⚠️ Delvis — CI gates ej enforced
R-006Föråldrade dependencies (CVE)MediumMediumMediumunattended-upgrades, Trivy⚠️ Delvis
R-007Bias i träningsdataOkändHögHög — ÖPPENBias testing saknas❌ Öppen
R-008Förlust av audit trail (in-memory)MediumKritiskKritiskPostgreSQL audit_events behövs❌ Öppen
R-009 NYJWT Fallback-Secret i källkodHögKritiskKritiskTa bort hårdkodat fallback, kräv env-var❌ NYTT FYND
R-010 NYTÜV-dokument ej versionshanterade (single point of failure)HögHögHögSync till amos-regulatory-kb + Git-historik❌ NYTT FYND

Prioriterad Åtgärdsplan — Väg till Pre-Assessment Q3 2026

OMEDELBART — Maj 2026, vecka 1–2
P0 — R-009: Ta bort JWT fallback-secret från auth-routes.js
15 minuter · Ägare: Johan/Bernt · Blockerar: SOC2 CC6.2, ISO 27001 A.5.16
OMEDELBART — Maj 2026, vecka 1–2
P0 — R-008: Skapa audit_events tabell i PostgreSQL
1 timme · Ägare: Bernt · Blockerar: SOC2 PI1.1, ISO 42001 A.11.3
OMEDELBART — Maj 2026, vecka 1–2
P0 — R-010: Synka TÜV-dokument till amos-regulatory-kb (Git)
30 minuter · Ägare: Bernt · Blockerar: ISO 9001 §7.5, dokumentkontroll
Maj 2026, vecka 2–3
P0 — Microservices som amos-user (systemd overrides)
2 timmar · Ägare: Johan · Blockerar: SOC2 CC6.1, ISO 42001 §3 process isolation
Maj 2026, vecka 2–3
P0 — ISO 9001 §8.3: Testsuite vyra-backend + Golden Path CI gates
2 dagar · Ägare: Johan · Blockerar: ISO 9001 §8.3, §8.6, ISO 42001 A.10
Maj–Juni 2026
P0 — ISO 42001 A.5.x: Impact Assessment dokumentation (Dennis)
3 dagar · Ägare: Dennis · Blockerar pre-assessment direkt
Maj–Juni 2026
P0 — AAMOS Systems Inc: Slutför bolagsregistrering (Stripe Atlas)
$500 · atlas.stripe.com (wolfoftyreso@gmail.com) · Ägare: Erik · Blockerar IP-skydd för GECL + Series A
Juni 2026
P1 — CSP-header + ISO 9001 Quality Policy + DORA-metriker
Ägare: Bernt (CSP), Erik (Quality Policy), Johan/Bernt (DORA) · 1 dag total
Juni–Juli 2026
P1 — ISO 42001 A.7.x: Data governance (Johan) + A.6 Lifecycle gaps
1 vecka · Ägare: Johan · 5 "Not Started" controls i A.7 är kritiska blocker för certifiering
Q3 2026 — August
P1 — Intern ISO 9001-revision + Management Review (Dennis)
4h + protokoll · Ägare: Dennis · Krävs för ISO 9001 §9.2 compliance
Q3 2026
🎯 Pre-Assessment — ISO 42001
Målscore: 80%+ (≥30/38 compliant/partial) · Nuläge: 47% · Gap: 33 procentenheter
Om P0-åtgärder klar i maj och P1 klar i juli: realistiskt möjligt att nå 75–80% till Q3.

Appendix — Datakällor och metodologi

KällaDataTidsstämpel
GET /api/aamos/iso/statusISO 42001 övergripande status, target, policies_count2026-05-02 14:19 UTC
GET /api/aamos/iso/controls38 ISO 42001 controls med status, category, owner2026-05-02 14:19 UTC
GET /api/aamos/iso/incidents0 aktiva incidenter2026-05-02 14:19 UTC
/opt/amos/api/auth-routes.js (grep)JWT fallback-secret finding, rad 19/156/21142026-05-02 14:20 UTC
ps auxProcesstatus: root/amos/bernt-ägda processer2026-05-02 14:20 UTC
sudo ufw statusNätverksstatus — port 3100 DENY bekräftat2026-05-02 14:20 UTC
grep /etc/nginx/ (rekursivt)Security headers: HSTS ✅ X-Frame ✅ CSP ❌ bekräftat2026-05-02 14:20 UTC
/opt/amos/data/TUV_*.md (6 filer)audit-dokument, audit report, gap analysis, investor audit, system architecture2026-04-27 (senast ändrad)
/var/git/repos/wavult-group/ (ls)41 Git-repos inventerade, amos-regulatory-kb tree-listed2026-05-02 14:21 UTC
/opt/aamos-intelligence/index/ (grep)4009 wavult-chunks — 0 direkta TÜV-dokumentträffar2026-05-02 14:21 UTC (index: 02:56 UTC)
/opt/amos/data/aamos-systems-formation.jsonAAMOS Inc Delaware — status: ready_to_file2026-05-01
ISO 9001:2015 gap-assessmentInitial bedömning baserad på befintlig dokumentation och processer2026-05-02 (denna rapport)
📌 Metodnotering — ISO 9001 Composite Score
ISO 9001-bedömningen är en initial gap assessment baserad på befintlig dokumentation, källkod och processer — inte en formell tredjepartsrevision. Scoring: Compliant=1.0, Gap=0.5, Not Started=0.0. 23 relevanta sub-klausuler bedömda för en SaaS/AI-plattform. Extern revisor kan göra annan viktning.