docs: Phase A abgeschlossen, Learnings und PLAN.md aktualisiert

- PLAN.md: Phase A alle Tasks als  markiert, Status IN UMSETZUNG
- LEARNINGS.md: 2 neue Learnings
  - .gitignore 'core' Regel trifft Verzeichnisse (Root-relative Fix)
  - Blender HTTP-Service vs. direkter Subprocess (render-worker Pattern)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-06 15:52:35 +01:00
parent 5764118b8e
commit 995339959e
2 changed files with 21 additions and 6 deletions
+6 -6
View File
@@ -940,16 +940,16 @@ chain(
## 7. Phasenplan mit Tasks
### Phase A: Infrastruktur-Cleanup + MinIO (Woche 1-2)
### Phase A: Infrastruktur-Cleanup + MinIO ✅ ABGESCHLOSSEN (2026-03-06)
**A1: Flamenco entfernen**
**A1: Flamenco entfernen**
- `docker-compose.yml` → flamenco-manager, flamenco-worker entfernen
- `flamenco_client.py`, `flamenco_tasks.py` löschen
- `render_dispatcher.py` → vereinfachen (nur Celery-Pfad)
- Migration 032: laufende Flamenco-Jobs auf `cancelled` setzen
- Akzeptanzkriterium: `docker compose up` startet ohne flamenco, alle bestehenden Renders laufen via Celery
**A2: blender-renderer → render-worker Celery-Container (ADR-06 umsetzen)**
**A2: blender-renderer → render-worker Celery-Container (ADR-06 umsetzen)**
- `render-worker/Dockerfile` (neu): Ubuntu + Blender (>= 5.0.1, via `BLENDER_VERSION` Build-Arg) + cadquery + Python-Deps
- `check_version.py` läuft beim Container-Start: prüft Blender >= 5.0.1, Exit 1 wenn nicht erfüllt
- `blender-renderer/blender_render.py``render-worker/scripts/blender_render.py`
@@ -959,13 +959,13 @@ chain(
- `.env.example`: `BLENDER_VERSION=5.0.1` dokumentieren
- Akzeptanzkriterium: Thumbnail via Celery-Task, kein HTTP-Call zu :8100, Version-Check besteht
**A3: threejs-renderer entfernen**
**A3: threejs-renderer entfernen**
- Service entfernen, threejs-Pfad in step_processor.py entfernen
- Batch-Regenerierung aller threejs-Thumbnails (Admin-Funktion)
- ThreeDViewer.tsx (Frontend) bleibt
- Akzeptanzkriterium: Alle Thumbnails Blender-gerendert
**A4: MinIO hinzufügen + Storage-Abstraction**
**A4: MinIO hinzufügen + Storage-Abstraction**
- MinIO Service in `docker-compose.yml`
- `core/storage.py`: `MinIOStorage` + `LocalStorage` (für Dev-Fallback)
- Bestehende Upload-Endpoints: Dateien nach MinIO statt in lokales `/uploads`
@@ -974,7 +974,7 @@ chain(
- `docker-compose.worker.yml` (neu): render-worker für externe Maschinen
- Akzeptanzkriterium: File-Upload → MinIO, Worker-Container läuft auf Maschine B und rendert Jobs
**A5: system_settings → app_config**
**A5: system_settings → app_config**
- Migration 033: `app_config` Tabelle (JSONB-Spalten: render, storage, notifications, worker, billing)
- `core/config_service.py` (neu), `system_settings` Tabelle deprecated
- Migrate bestehende Settings