docs: MkDocs, SDK-Flow und Tests fuer 6 Dokumentations-Module aktualisieren

MkDocs:
- Neue Dokumentationsseite: docs-src/services/sdk-modules/dokumentations-module.md
  Beschreibt alle 6 Module (VVT, Source Policy, Document Generator,
  Audit Checklist, Audit Report, Training Engine) mit API-Endpoints,
  DB-Tabellen, Datenmodell und Besonderheiten
- mkdocs.yml: Neuen Eintrag "Dokumentations-Module (Paket 3+)" ergaenzt

SDK Flow (flow-data.ts):
- VVT: dbTables korrigiert ([] → compliance_vvt_organization/activities/audit_log),
  dbMode: none → read/write, descriptionLong auf Backend-Persistenz aktualisiert
- Training: dbTables ergaenzt (training_modules/assignments/quiz_*/matrix_entries/
  audit_log), dbMode: none → read/write, Beschreibung auf 28 Module aktualisiert
- Source Policy: Tabellennamen korrigiert (compliance_pii_field_rules →
  compliance_pii_rules, compliance_source_policies entfernt,
  compliance_source_operations ergaenzt)
- Document Generator: Beschreibung um PDF-Export (window.print) und
  Fallback-Banner ergaenzt

Tests:
- Neue Datei: tests/test_source_policy_routes.py (35 Tests, alle gruen)
  - Schema-Tests: SourceCreate, SourceUpdate, PIIRuleCreate, PIIRuleUpdate
  - DB-Model-Tests: AllowedSourceDB, PIIRuleDB
  - Filter-Logik: source_type-Filter und category-Filter Unit-Tests
  - Audit-Log-Helper: _log_audit Verhalten verifiziert

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Benjamin Admin
2026-03-02 18:48:55 +01:00
parent ec53ba0350
commit 5c7c0055ff
4 changed files with 677 additions and 11 deletions

View File

@@ -220,7 +220,7 @@ export const SDK_FLOW_STEPS: SDKFlowStep[] = [
inputs: ['modules'],
outputs: ['sourcePolicy'],
prerequisiteSteps: ['modules'],
dbTables: ['compliance_source_policies', 'compliance_allowed_sources', 'compliance_pii_field_rules', 'compliance_source_policy_audit'],
dbTables: ['compliance_allowed_sources', 'compliance_pii_rules', 'compliance_source_operations', 'compliance_source_policy_audit'],
dbMode: 'read/write',
ragCollections: [],
isOptional: false,
@@ -480,14 +480,14 @@ export const SDK_FLOW_STEPS: SDKFlowStep[] = [
checkpointId: 'CP-VVT',
checkpointType: 'REQUIRED',
checkpointReviewer: 'DSB',
description: 'Erstellung des Verzeichnisses aller Verarbeitungstaetigkeiten nach Art. 30 DSGVO.',
descriptionLong: 'Das VVT (Verzeichnis von Verarbeitungstaetigkeiten) ist eine gesetzliche Pflichtdokumentation nach Art. 30 DSGVO. Fuer jede Verarbeitungstaetigkeit wird dokumentiert: Zweck, Rechtsgrundlage, Kategorien betroffener Personen, Datenkategorien, Empfaenger, Drittlandtransfers, Loeschfristen und TOMs. Das VVT wird automatisch aus den vorherigen Schritten zusammengestellt (Module, TOMs, Data Mapping). Der DSB muss das VVT freigeben.',
description: 'Erstellung des Verzeichnisses aller Verarbeitungstaetigkeiten nach Art. 30 DSGVO — vollstaendig backend-persistent.',
descriptionLong: 'Das VVT (Verzeichnis von Verarbeitungstaetigkeiten) ist eine gesetzliche Pflichtdokumentation nach Art. 30 DSGVO. Fuer jede Verarbeitungstaetigkeit wird dokumentiert: Zweck, Rechtsgrundlage, Kategorien betroffener Personen, Datenkategorien, Empfaenger, Drittlandtransfers, Loeschfristen und TOMs. Jede Aktivitaet wird mit einem eindeutigen VVT-ID versehen und in der Datenbank gespeichert (compliance_vvt_activities). Organisationsweite Metadaten (DSB-Kontakt, Branche, Standorte) werden separat verwaltet (compliance_vvt_organization). Alle Aenderungen werden in einem Audit-Log protokolliert (compliance_vvt_audit_log). Das VVT wird via FastAPI-Backend (backend-compliance:8002) persistent gespeichert. Der DSB muss das VVT freigeben.',
legalBasis: 'Art. 30 DSGVO (Verzeichnis von Verarbeitungstaetigkeiten)',
inputs: ['modules', 'toms', 'dataMapping'],
outputs: ['vvt'],
prerequisiteSteps: ['loeschfristen'],
dbTables: [],
dbMode: 'none',
dbTables: ['compliance_vvt_organization', 'compliance_vvt_activities', 'compliance_vvt_audit_log'],
dbMode: 'read/write',
ragCollections: ['bp_compliance_gesetze'],
ragPurpose: 'Art. 30 DSGVO Vorlage',
isOptional: false,
@@ -573,8 +573,8 @@ export const SDK_FLOW_STEPS: SDKFlowStep[] = [
checkpointId: 'CP-DOCGEN',
checkpointType: 'RECOMMENDED',
checkpointReviewer: 'NONE',
description: 'Generierung weiterer rechtlicher Dokumente (Impressum, AVV, Auftragsverarbeitung).',
descriptionLong: 'Der Dokumentengenerator erstellt zusaetzliche rechtliche Dokumente, die ueber die Pflichtdokumente hinausgehen: Impressum (nach TMG/DDG), Auftragsverarbeitungsvertraege (AVV nach Art. 28 DSGVO), Vertraulichkeitsvereinbarungen, Betriebsvereinbarungen zum Datenschutz und Datenschutz-Folgenabschaetzungs-Berichte. Die Templates werden aus bp_legal_templates geladen und mit den unternehmensspezifischen Daten befuellt.',
description: 'Generierung weiterer rechtlicher Dokumente (Impressum, AVV, Auftragsverarbeitung) mit PDF-Export.',
descriptionLong: 'Der Dokumentengenerator erstellt zusaetzliche rechtliche Dokumente, die ueber die Pflichtdokumente hinausgehen: Impressum (nach TMG/DDG), Auftragsverarbeitungsvertraege (AVV nach Art. 28 DSGVO), Vertraulichkeitsvereinbarungen, Betriebsvereinbarungen zum Datenschutz und Datenschutz-Folgenabschaetzungs-Berichte. Die Templates werden aus bp_legal_templates geladen und mit den unternehmensspezifischen Daten befuellt. PDF-Export ist direkt im Browser via window.print() moeglich. Steht der Template-Service (breakpilot-core) nicht bereit, erscheint ein Fallback-Banner mit Hinweis.',
legalBasis: 'Art. 28 DSGVO (Auftragsverarbeitung), DDG § 5 (Impressum)',
inputs: ['companyProfile', 'toms', 'vvt'],
outputs: ['generatedDocuments'],
@@ -790,13 +790,13 @@ export const SDK_FLOW_STEPS: SDKFlowStep[] = [
checkpointId: 'CP-TRAIN',
checkpointType: 'REQUIRED',
checkpointReviewer: 'NONE',
description: 'Durchfuehrung und Tracking von Compliance-Schulungen mit Zertifikaten.',
descriptionLong: 'Die Training Engine setzt den Schulungsplan der Academy um. Sie bietet interaktive Schulungsmodule mit Quizzes, Fallbeispielen und Zertifikaten. Jede abgeschlossene Schulung wird dokumentiert (Teilnehmer, Datum, Ergebnis) und dient als Evidence fuer Audits. Die Engine ueberwacht Faelligkeiten, sendet Erinnerungen bei ausstehenden Pflichtschulungen und generiert Compliance-Reports ueber den Schulungsstand aller Mitarbeiter.',
description: 'Durchfuehrung und Tracking von Compliance-Schulungen mit Quizzes und Zertifikaten — vollstaendig backend-persistent.',
descriptionLong: 'Die Training Engine setzt den Schulungsplan der Academy um. Sie bietet interaktive Schulungsmodule (DSGVO, AI Act, ISO 27001 etc.) mit Quizzes, automatisch generierten Inhalten und Zertifikaten. 28 vordefinierte Schulungsmodule sind hinterlegt. Jede abgeschlossene Schulung wird dokumentiert (Teilnehmer, Datum, Ergebnis, Quiz-Versuch) und dient als Evidence fuer Audits. Die Engine ueberwacht Faelligkeiten, sendet Erinnerungen bei ausstehenden Pflichtschulungen und generiert Compliance-Reports ueber den Schulungsstand aller Mitarbeiter. Backend: ai-compliance-sdk (Go, Port 8093) via /sdk/v1/training/*. Schulungsmatrix ordnet Rollen Pflichtmodulen zu.',
inputs: ['trainingPlan', 'modules'],
outputs: ['trainingContent'],
prerequisiteSteps: ['academy'],
dbTables: [],
dbMode: 'none',
dbTables: ['training_modules', 'training_assignments', 'training_quiz_questions', 'training_quiz_attempts', 'training_matrix_entries', 'training_audit_log'],
dbMode: 'read/write',
ragCollections: [],
isOptional: false,
url: '/sdk/training',