MC2: Live-Log-Blick - Worker-Log laufender Ideen im Auftragsbuch aufklappbar machen

Backend:
- backend/services/ideen.py: neue Funktion log_of(task_id)
  - ruft 'hermes kanban log <id>'
  - validiert task_id mit _TASK_ID_RX
  - strippt ANSI-Steuerzeichen (\x1b\[[0-9;]*m)
  - gibt letzte ~120 Zeilen zurück
  - kurzer Cache (~4s)
  - auf Windows/available=False leer zurück, nie crashen
- backend/routers/ideen.py: GET /api/ideen/{id}/log -> ideen.log_of(id)

Frontend:
- frontend/src/views/AuftragsbuchView.tsx: IdeenSection
  - Ideen mit status 'triage' oder 'running' per Klick aufklappbar
  - im aufgeklappten Zustand /api/ideen/{id}/log alle ~4s pollen
  - Log monospace/<pre> in scrollbaren, höhenbegrenztem Kasten
  - vorhandenes api()-Muster + react-query nutzen
- frontend/dist mitgebaut und committet

Branch: feature/live-log-blick
This commit is contained in:
werkstatt
2026-07-13 17:17:16 +02:00
parent 1427048f38
commit 9a41cce99b
26 changed files with 161 additions and 63 deletions
+2 -2
View File
@@ -7,8 +7,8 @@
<link rel="manifest" href="/manifest.webmanifest" />
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
<title>Mission Control 2.0</title>
<script type="module" crossorigin src="/assets/index-D-OYo7d4.js"></script>
<link rel="stylesheet" crossorigin href="/assets/index-CK-hmH9c.css">
<script type="module" crossorigin src="/assets/index-BA3S1mEb.js"></script>
<link rel="stylesheet" crossorigin href="/assets/index-3QhfK8G4.css">
</head>
<body>
<div id="root"></div>