feat(iace): complete CE risk assessment — LLM tech-file generation, multi-format export, TipTap editor
All checks were successful
CI/CD / go-lint (push) Has been skipped
CI/CD / python-lint (push) Has been skipped
CI/CD / nodejs-lint (push) Has been skipped
CI/CD / test-go-ai-compliance (push) Successful in 36s
CI/CD / test-python-backend-compliance (push) Successful in 33s
CI/CD / test-python-document-crawler (push) Successful in 24s
CI/CD / test-python-dsms-gateway (push) Successful in 21s
CI/CD / validate-canonical-controls (push) Successful in 13s
CI/CD / Deploy (push) Successful in 2s
All checks were successful
CI/CD / go-lint (push) Has been skipped
CI/CD / python-lint (push) Has been skipped
CI/CD / nodejs-lint (push) Has been skipped
CI/CD / test-go-ai-compliance (push) Successful in 36s
CI/CD / test-python-backend-compliance (push) Successful in 33s
CI/CD / test-python-document-crawler (push) Successful in 24s
CI/CD / test-python-dsms-gateway (push) Successful in 21s
CI/CD / validate-canonical-controls (push) Successful in 13s
CI/CD / Deploy (push) Successful in 2s
Phase 1: Fix completeness gates G23 (require verified/rejected mitigations) and G09 (audit trail check) Phase 2: LLM-based tech-file section generation with 19 German prompts and RAG enrichment Phase 3: Multi-format document export (PDF/Excel/DOCX/Markdown/JSON) Phase 4: Company profile → IACE data flow with auto component/classification creation Phase 5: TipTap WYSIWYG editor replacing textarea for tech-file sections Phase 6: User journey tests, developer portal API reference, updated documentation Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -297,9 +297,14 @@ Fuer die Verifikation stehen **50 Nachweistypen** zur Auswahl:
|
||||
| GET | `/sdk/v1/iace/hazard-library` | Alle Gefaehrdungen (150+) |
|
||||
| GET | `/sdk/v1/iace/controls-library` | Alle Controls (200) |
|
||||
| GET | `/sdk/v1/iace/protective-measures-library` | Schutzmassnahmen-Bibliothek (160) |
|
||||
| GET | `/sdk/v1/iace/component-library` | Komponenten-Bibliothek (C001-C120) |
|
||||
| GET | `/sdk/v1/iace/energy-sources` | Energiequellen (EN01-EN20) |
|
||||
| GET | `/sdk/v1/iace/hazard-patterns` | Gefaehrdungs-Patterns (102) |
|
||||
| GET | `/sdk/v1/iace/tags` | Tag-Taxonomie |
|
||||
| GET | `/sdk/v1/iace/lifecycle-phases` | 25 Lebensphasen (DE/EN) |
|
||||
| GET | `/sdk/v1/iace/roles` | 20 betroffene Personengruppen (DE/EN) |
|
||||
| GET | `/sdk/v1/iace/evidence-types` | 50 Nachweistypen in 7 Kategorien |
|
||||
| POST | `/sdk/v1/iace/library-search` | RAG-Bibliothekssuche |
|
||||
|
||||
### Projektmanagement
|
||||
|
||||
@@ -311,12 +316,19 @@ Fuer die Verifikation stehen **50 Nachweistypen** zur Auswahl:
|
||||
| PUT | `/sdk/v1/iace/projects/:id` | Projekt aktualisieren |
|
||||
| DELETE | `/sdk/v1/iace/projects/:id` | Projekt archivieren |
|
||||
|
||||
### Onboarding
|
||||
### Onboarding & Profil-Import
|
||||
|
||||
| Methode | Pfad | Beschreibung |
|
||||
|---------|------|--------------|
|
||||
| POST | `/sdk/v1/iace/projects/:id/init-from-profile` | Projekt aus Company-Profile initialisieren |
|
||||
| POST | `/sdk/v1/iace/projects/:id/completeness-check` | 25-Gates-Pruefung |
|
||||
| POST | `/sdk/v1/iace/projects/:id/completeness-check` | 22-Gates-Pruefung |
|
||||
|
||||
Der `init-from-profile` Endpoint uebernimmt Daten aus dem Company-Profile und Compliance-Scope:
|
||||
|
||||
- **company_profile** → Hersteller-Name, Kontaktdaten
|
||||
- **compliance_scope** → Maschinenname, Typ, Zweckbeschreibung, Software/Firmware/KI-Flags
|
||||
- Erstellt automatisch initiale Komponenten (Software, Firmware, KI-Modell, Netzwerk)
|
||||
- Triggert initiale regulatorische Klassifizierungen fuer anwendbare Verordnungen
|
||||
|
||||
### Komponenten
|
||||
|
||||
@@ -364,9 +376,48 @@ Fuer die Verifikation stehen **50 Nachweistypen** zur Auswahl:
|
||||
| Methode | Pfad | Beschreibung |
|
||||
|---------|------|--------------|
|
||||
| GET | `/sdk/v1/iace/projects/:id/tech-file` | Technische Akte abrufen |
|
||||
| POST | `/sdk/v1/iace/projects/:id/tech-file/generate` | Akte generieren |
|
||||
| GET | `/sdk/v1/iace/projects/:id/tech-file/export` | Akte exportieren (PDF/Markdown) |
|
||||
| PUT | `/sdk/v1/iace/projects/:id/tech-file/sections/:sid` | Abschnitt aktualisieren |
|
||||
| POST | `/sdk/v1/iace/projects/:id/tech-file/generate` | Alle Sektionen generieren (LLM-basiert) |
|
||||
| POST | `/sdk/v1/iace/projects/:id/tech-file/:section/generate` | Einzelne Sektion (re-)generieren (LLM) |
|
||||
| PUT | `/sdk/v1/iace/projects/:id/tech-file/:section` | Abschnitt manuell aktualisieren |
|
||||
| POST | `/sdk/v1/iace/projects/:id/tech-file/:section/approve` | Abschnitt freigeben |
|
||||
| POST | `/sdk/v1/iace/projects/:id/tech-file/:section/enrich` | Abschnitt mit RAG-Kontext anreichern |
|
||||
| GET | `/sdk/v1/iace/projects/:id/tech-file/export?format=` | Akte exportieren (pdf/xlsx/docx/md/json) |
|
||||
|
||||
#### Export-Formate
|
||||
|
||||
| Format | MIME-Type | Inhalt |
|
||||
|--------|-----------|--------|
|
||||
| `pdf` | application/pdf | Vollstaendige CE-Akte mit Deckblatt, Inhaltsverzeichnis, Risikomatrix, Gefaehrdungsprotokoll |
|
||||
| `xlsx` | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet | 5 Worksheets: Uebersicht, Gefaehrdungsprotokoll, Massnahmen, Risikomatrix, Sektionen |
|
||||
| `docx` | application/vnd.openxmlformats-officedocument.wordprocessingml.document | Word-Dokument mit allen Sektionen als formatierte Absaetze |
|
||||
| `md` | text/markdown | Markdown-Dokument mit Projekt-Metadaten und allen Sektionen |
|
||||
| `json` | application/json | JSON-Export mit Projekt, Sektionen, Klassifizierungen, Risikouebersicht |
|
||||
|
||||
#### LLM-basierte Sektionsgenerierung (19 Sektionstypen)
|
||||
|
||||
Die Tech-File-Generierung nutzt LLM (Ollama/Anthropic) mit RAG-Kontext aus dem CE-Corpus:
|
||||
|
||||
| Sektion | Beschreibung |
|
||||
|---------|--------------|
|
||||
| `general_description` | Allgemeine Maschinenbeschreibung |
|
||||
| `risk_assessment_report` | Zusammenfassung der Risikobeurteilung |
|
||||
| `hazard_log_combined` | Tabellarisches Gefaehrdungsprotokoll |
|
||||
| `essential_requirements` | Grundlegende Anforderungen (MVO Anhang III) |
|
||||
| `design_specifications` | Konstruktionsdaten und Zeichnungen |
|
||||
| `test_reports` | Pruefberichte und Verifikationsergebnisse |
|
||||
| `standards_applied` | Angewandte harmonisierte Normen |
|
||||
| `declaration_of_conformity` | EU-Konformitaetserklaerung (MVO Anhang IV) |
|
||||
| `component_list` | Komponentenverzeichnis |
|
||||
| `classification_report` | Regulatorische Klassifikation |
|
||||
| `mitigation_report` | Massnahmen nach 3-Stufen-Hierarchie |
|
||||
| `verification_report` | Verifikationsplan und Ergebnisse |
|
||||
| `evidence_index` | Nachweisdokumenten-Index |
|
||||
| `instructions_for_use` | Sicherheitshinweise / Betriebsanleitung |
|
||||
| `monitoring_plan` | Post-Market Surveillance Plan |
|
||||
| `ai_intended_purpose` | KI: Bestimmungsgemaesser Zweck |
|
||||
| `ai_model_description` | KI: Modellbeschreibung und Trainingsdaten |
|
||||
| `ai_risk_management` | KI: Risikomanagementsystem |
|
||||
| `ai_human_oversight` | KI: Menschliche Aufsicht |
|
||||
|
||||
### Post-Market Monitoring
|
||||
|
||||
@@ -383,40 +434,59 @@ Fuer die Verifikation stehen **50 Nachweistypen** zur Auswahl:
|
||||
|
||||
---
|
||||
|
||||
## Completeness Gates (25)
|
||||
## Completeness Gates (22)
|
||||
|
||||
Das Modul prueft 25 Vollstaendigkeitstore vor dem CE-Export:
|
||||
Das Modul prueft 22 Vollstaendigkeitstore (20 Required, 2 Recommended) vor dem CE-Export:
|
||||
|
||||
| Gate | Kategorie | Pflicht |
|
||||
|------|-----------|---------|
|
||||
| G01 | Projekt-Grunddaten vollstaendig | ✅ Required |
|
||||
| G02 | CE-Markierungsziel definiert | ✅ Required |
|
||||
| G03 | Mind. 1 Komponente erfasst | ✅ Required |
|
||||
| G04 | Regulatorische Klassifizierung abgeschlossen | ✅ Required |
|
||||
| G05 | HARA-Dokument vorhanden (Evidence) | ✅ Required |
|
||||
| G06 | Mind. 1 Gefaehrdung identifiziert | ✅ Required |
|
||||
| G07 | Alle Gefaehrdungen bewertet | ✅ Required |
|
||||
| G08 | Kein Restrisiko > critical ohne Akzeptanz | ✅ Required |
|
||||
| G09 | Mind. 1 Minderungsmassnahme je Gefaehrdung | ✅ Required |
|
||||
| G10 | Minderungsmassnahmen verifiziert | ✅ Required |
|
||||
| G11 | Verifikationsplan vorhanden | ✅ Required |
|
||||
| G12 | SIL/PL-Dokumentation (Evidence) | ✅ Required |
|
||||
| G13 | Technische Akte generiert | ✅ Required |
|
||||
| G14 | Konformitaetserklaerung bereit | ✅ Required |
|
||||
| G15 | Betriebsanleitung vorhanden | ✅ Required |
|
||||
| G16 | Wartungsanleitung vorhanden | Recommended |
|
||||
| G17 | Post-Market Monitoring aktiv | Recommended |
|
||||
| G18 | Cybersecurity-Massnahmen dokumentiert | Recommended |
|
||||
| G19 | AI-spezifische Anforderungen erfuellt | Recommended (bei AI) |
|
||||
| G20 | Kalibrierprotokolle vorhanden | Recommended |
|
||||
| G21 | SBOM generiert | Optional |
|
||||
| G22 | Penetrationstest durchgefuehrt | Optional |
|
||||
| G23 | EMV-Pruefung dokumentiert | Optional |
|
||||
| G24 | Lebenszyklusplan vorhanden | Optional |
|
||||
| G25 | Monitoring-Ereignisse protokolliert | Optional |
|
||||
### Onboarding (G01-G09)
|
||||
|
||||
| Gate | Label | Pflicht |
|
||||
|------|-------|---------|
|
||||
| G01 | Machine identity set | ✅ Required |
|
||||
| G02 | Intended use described | ✅ Required |
|
||||
| G03 | Operating limits defined | ✅ Required |
|
||||
| G04 | Foreseeable misuse documented | ✅ Required |
|
||||
| G05 | Component tree exists | ✅ Required |
|
||||
| G06 | AI classification done (if applicable) | ✅ Required |
|
||||
| G07 | Safety relevance marked | ✅ Required |
|
||||
| G08 | Manufacturer info present | ✅ Required |
|
||||
| G09 | Pattern matching performed | Recommended |
|
||||
|
||||
### Klassifizierung (G10-G13)
|
||||
|
||||
| Gate | Label | Pflicht |
|
||||
|------|-------|---------|
|
||||
| G10 | AI Act classification complete | ✅ Required |
|
||||
| G11 | Machinery Regulation check done | ✅ Required |
|
||||
| G12 | NIS2 check done | ✅ Required |
|
||||
| G13 | CRA check done | ✅ Required |
|
||||
|
||||
### Gefaehrdungen & Risiko (G20-G24)
|
||||
|
||||
| Gate | Label | Pflicht |
|
||||
|------|-------|---------|
|
||||
| G20 | Hazards identified | ✅ Required |
|
||||
| G21 | All hazards assessed | ✅ Required |
|
||||
| G22 | Critical/High risks mitigated | ✅ Required |
|
||||
| G23 | **Mitigations verified** | ✅ Required |
|
||||
| G24 | Residual risk accepted | ✅ Required |
|
||||
|
||||
!!! warning "G23 — Strenge Verifikationspflicht"
|
||||
Alle Mitigations muessen den Status `verified` oder `rejected` haben. Mitigations im Status `planned` oder `implemented` blockieren den Export. Dies stellt sicher, dass keine Massnahme unueberprueft bleibt.
|
||||
|
||||
### Evidence & Tech File (G30, G40-G42)
|
||||
|
||||
| Gate | Label | Pflicht |
|
||||
|------|-------|---------|
|
||||
| G30 | Test evidence linked | Recommended |
|
||||
| G40 | Risk assessment report generated | ✅ Required |
|
||||
| G41 | Hazard log generated | ✅ Required |
|
||||
| G42 | AI documents present (if applicable) | ✅ Required |
|
||||
|
||||
**Completeness Score:** `(passed_required/total_required)*80 + (passed_recommended/total_recommended)*15 + (passed_optional/total_optional)*5`
|
||||
|
||||
**CanExport** ist nur `true`, wenn alle Required-Gates bestanden sind.
|
||||
|
||||
---
|
||||
|
||||
## CE RAG-Corpus
|
||||
|
||||
Reference in New Issue
Block a user