--- title: "[Tech-Debt/P2] Legacy main_old.py, calculations/ vs data_layer/, Startup-Migration-Hooks" labels: backend, refactoring, maintenance --- ## Kontext Code-Audit 2026-04-04. ## Problemstellung (Bündel) 1. **`backend/main_old.py`**: große, nicht in `main.py` eingebundene Datei – verwirrt Suche, Reviews und Onboarding. 2. **Parallele Metrik-Pfade**: `backend/data_layer/` (Phase 0c) und `backend/calculations/` existieren nebeneinander; `placeholder_resolver.py` importiert z. B. noch `calculations.scores`. 3. **`startup_event` in `main.py`**: zusätzlicher Hook `apply_v9c_migration` neben `db_init` – Legacy-Pfad neben dem Migrations-System. ## Ziele - Single Source of Truth für Metriken (klar dokumentiert: `data_layer` vs. verbleibende Hilfsmodule). - Entfernen oder Archivieren (`docs/archive/` oder Git-History-only) von `main_old.py`, sofern nicht mehr referenziert. 4. Migration-Startup vereinheitlichen (nur `db_init` / nummerierte SQL-Migrationen, sofern v9c-Hook obsolet). ## Akzeptanzkriterien - [ ] Entscheidung dokumentiert: welches Paket autoritativ ist. - [ ] Keine doppelten Implementierungen für dieselbe Metrik ohne Grund. - [ ] `main_old.py` entfernt oder klar als „archived“ markiert und aus IDEs/CI-Suche ausgeschlossen (optional). - [ ] Build/Start ohne v9c-Sonderpfad, falls redundant. ## Betroffene Pfade (Start) - `backend/main_old.py` - `backend/main.py` (startup) - `backend/data_layer/`, `backend/calculations/` - `backend/placeholder_resolver.py`