From 9e2655bfef410366fbf7f3222baac12fdbfbdc22 Mon Sep 17 00:00:00 2001 From: Benjamin Admin Date: Wed, 17 Jun 2026 00:12:52 +0200 Subject: [PATCH] fix(cra): IACE-Create id-Wrapper + MaschinenVO eigene Sektion MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1) createProject las proj.id, der Create-Response ist aber {project:{id}} → 'Projekt anlegen' war kaputt. Jetzt proj.project?.id. E2E verifiziert (create→put limits_form→get→delete = 200). 2) MaschinenVO-Sicherheitspflichten wurden in die CRA-Cyber-Buckets (Code/Prozess/Doku) gemischt → fehl-kategorisiert (Maschinen-Safety ≠ CRA-Annex-I-Cyber). Jetzt eigene Response-Liste machinery_guideline + eigener Frontend-Abschnitt 'Maschinensicherheit (MaschinenVO 2023/1230)'; geklebtes 'MaschVO'-Badge entfaellt damit. Co-Authored-By: Claude Opus 4.7 --- .../sdk/cra/_components/DatasheetExtract.tsx | 2 +- .../sdk/cra/_components/ReadinessResult.tsx | 23 ++++++++++++++++--- .../compliance/api/cra_assess_routes.py | 10 ++++---- 3 files changed, 27 insertions(+), 8 deletions(-) diff --git a/admin-compliance/app/sdk/cra/_components/DatasheetExtract.tsx b/admin-compliance/app/sdk/cra/_components/DatasheetExtract.tsx index ff69181c..c7c54cad 100644 --- a/admin-compliance/app/sdk/cra/_components/DatasheetExtract.tsx +++ b/admin-compliance/app/sdk/cra/_components/DatasheetExtract.tsx @@ -70,7 +70,7 @@ export function DatasheetExtract() { }) if (!cr.ok) return const proj = await cr.json() - const pid = proj.id || proj.project_id + const pid = proj.project?.id || proj.id || proj.project_id if (!pid) return await fetch(`/api/sdk/v1/iace/projects/${pid}`, { method: 'PUT', headers: { 'Content-Type': 'application/json' }, diff --git a/admin-compliance/app/sdk/cra/_components/ReadinessResult.tsx b/admin-compliance/app/sdk/cra/_components/ReadinessResult.tsx index ab7c97ce..b65cb104 100644 --- a/admin-compliance/app/sdk/cra/_components/ReadinessResult.tsx +++ b/admin-compliance/app/sdk/cra/_components/ReadinessResult.tsx @@ -15,6 +15,7 @@ export interface ReadinessResult { conformity_path_hint: string regulations: string[] guideline: { code: GuidelineItem[]; process: GuidelineItem[]; document: GuidelineItem[] } + machinery_guideline?: GuidelineItem[] counts: { code: number; process: number; document: number } total_effort_days: number deadlines: { date: string; label: string }[] @@ -172,9 +173,6 @@ export function ReadinessResultView({ result, onCreateProject }: { result: Readi