12 KiB
Gitea offene Issues – Review-Entwurf (Stand Code 2026-04-04)
Zweck: Du kannst diese Datei lesen, anpassen, abstreichen. Nach Freigabe: Kommentare / Schließungen / Konsolidierungen in Gitea umsetzen (manuell oder per
scripts/gitea/gitea_api.py).Sortierung: Nach
created_ataufsteigend (älteste Issues zuerst). Duplikat-Issues mit gleichem Inhalt sind am Ende des Abschnitts „Duplikate“ gebündelt.Legende
Vorschlag:
OFFEN– noch sinnvoll, weiterverfolgenTEILWEISE– Teil umgesetzt, Beschreibung/AC anpassenPRÜFEN– kurzer manueller Test nötigDUPLIKAT– mit anderem Issue zusammenführenDONE?– wirkt im Repo erledigt, ggf. schließen nach deiner Bestätigung
Kurz-Übersicht (28 eindeutige Issue-Nummern, zeitlich älteste zuerst)
| # | Titel (gekürzt) | Vorschlag | Notiz |
|---|---|---|---|
| 14 | Icon Picker Trainingstypen | ERLEDIGT | EmojiIconPicker in AdminTrainingTypesPage.jsx; Gitea #14 geschlossen (2026-04) |
| 15 | Quality-Filter KI & Charts | TEILWEISE | Registry/Charts Confidence, kein durchgängiges Produkt |
| 21 | Universeller CSV-Parser + Mapping | OFFEN | Modul-spezifische Parser |
| 25 | Ziele-System Goals | DONE? | GoalsPage, Router, Focus Areas |
| 26 | Charts erweitern | TEILWEISE | Phase-0c API + History/NutritionCharts |
| 27 | Korrelationen & Insights | TEILWEISE | C-Charts + offene Data-Layer-TODOs |
| 29 | Abilities-Matrix UI | TEILWEISE | Admin/ProfileBuilder, UX offen |
| 30 | Responsive UI Sidebar | TEILWEISE | P1–P6 + P7 Admin-Shell + iOS Bottom-Nav Safe-Area; SSoT-Doku: GUI_IA_ADMIN_NAV_2026-04-05.md; #30 bleibt offen bis P8/Abnahme |
| 32 | Version-System (inkl. ehem. #33) | OFFEN | Gitea: Body/Titel 2026-04-04 aktualisiert; Runner/Build-Git bewusst später |
| 33 | — | GESCHLOSSEN | In #32 konsolidiert (superseded) |
| 34 | External Volumes Doku | PRÜFEN | Gegen Compose abgleichen |
| 35 | subscriptions Tabelle |
PRÜFEN | Schema prüfen |
| 36 | BUG Trainingstyp ISE | PRÜFEN | Logs nötig |
| 37 | Feature Enforcement Activity CSV | OFFEN | Import ohne vorgeschalteten Check |
| 38 | Feature Enforcement Nutrition CSV UI | DONE? / TEILWEISE | Backend-Check da |
| 39 | Usage-Badges Dashboard/Assistent | TEILWEISE | v. a. Gewicht im Dashboard |
| 40 | Logout Header | DONE? | App.jsx LogOut-Button |
| 42 | Enhanced Debug UI | DUPLIKAT | Mit #43 zusammenführen |
| 43 | Enhanced Debug UI | DUPLIKAT | Mit #42 zusammenführen |
| 45 | Prompt-Optimierer | OFFEN | Backlog |
| 46 | Prompt-Ersteller | OFFEN | Backlog |
| 47 | Wertetabelle Optimierung | OFFEN | UX-Feinschliff |
| 49 | Prompt-Zuordnung Verlauf | OFFEN | Kein klarer Treffer |
| 54 | Placeholder Registry … | DUPLIKAT | Wie #55 |
| 55 | Placeholder Registry … | OFFEN / TEILWEISE | validate_all existiert |
| 56–58 | Body Cluster Restarbeiten | DUPLIKAT | Dreimal gleicher Inhalt → ein Issue |
Details je Issue (älteste zuerst)
#14 – [FEAT-001] Icon Picker für Trainingstypen — ERLEDIGT
Code-Stand: AdminTrainingTypesPage.jsx nutzt EmojiIconPicker (frontend/src/components/EmojiIconPicker.jsx) für Neu- und Bearbeiten-Dialoge; Wert bleibt String in training_types.icon.
Gitea: Issue #14 geschlossen (Kommentar + Close, Stand 2026-04).
#15 – [FEAT-002] Quality-Filter für KI-Auswertungen & Charts
Code-Stand: Charts/Data-Layer nutzen Confidence u. a.; Placeholder-Registry hat viele quality_filter_policy / Evidence-Felder (teilweise UNRESOLVED/TO_VERIFY). Ein einheitlicher „Quality-Filter“-Mechanismus über alle KI-Auswertungen ist nicht eindeutig als fertiges Feature erkennbar.
Vorschlag: TEILWEISE – Issue-Text auf konkrete Lücken schärfen (welche Prompts/Charts, welche Schwellen, SSoT Registry?).
Kommentar-Entwurf:
Teilaspekte existieren (z. B. Confidence in Chart-Endpoints, Registry-Felder). Offen: durchgängige KI-/Chart-Quality-Pipeline und Abgleich mit Issue-Zielbild.
#21 – [FEATURE] Universeller CSV-Parser mit lernbarem Feldmapping
Code-Stand: Modulspezifische CSV-Imports (Activity, Nutrition, Vitals, Sleep, …) mit jeweils eigenem Parser; lernbares Mapping stark bei Activity über activity_type_mappings. Kein ein generischer CSV-Engine wie im Issue beschrieben.
Vorschlag: OFFEN – oder Scope reduzieren („pro Modul konsolidieren“).
#25 – [FEAT] Ziele-System (Goals) v9e Kernfeature
Code-Stand: goals-Router, GoalsPage, Focus Areas, Migrationen – laut Projektstand weitgehend implementiert.
Vorschlag: DONE? nach deiner Abnahme – Issue-Body auf verbleibende Teilziele kürzen oder schließen.
Kommentar-Entwurf:
Backend/Frontend Goals + Focus Areas sind im Repo vorhanden. Bitte verbleibende Wünsche als neue Sub-Issues oder AC hier abhaken und schließen.
#26 – [FEAT] Charts & Visualisierungen erweitern
Code-Stand: backend/routers/charts.py (Phase 0c), viele api.get…Chart in api.js; History.jsx + NutritionCharts / RecoveryCharts nutzen Chart-Daten.
Vorschlag: TEILWEISE – Issue auf konkrete fehlende Chart-Typen/UI-Verdrahtung schärfen (falls noch offen).
#27 – [FEAT] Korrelationen & Insights erweitern
Code-Stand: Chart-Endpunkte C1–C4 u. a.; Data-Layer correlations.py mit TODO-Stellen in Teilen.
Vorschlag: TEILWEISE – Liste fehlender Korrelationen/Insights vs. Code ergänzen.
#29 – [FEAT] Abilities-Matrix UI (v9f)
Code-Stand: Training Types mit abilities JSONB, AdminTrainingProfiles, ProfileBuilder – vollständige „5D Matrix“-UX unklar ohne Produktvorgabe.
Vorschlag: TEILWEISE – AC mit aktuellen Screenshots/Flows abgleichen.
#30 – [FEAT] Responsive UI – Desktop Sidebar + 2-spaltig
Code-Stand (2026-04-05): Desktop-Sidebar (DesktopSidebar, config/appNav.js) und Mobile Bottom-Nav mit horizontalem Scroll + Safe Area (app.css); Admin eigener Bereich AdminShell mit Gruppen-Hub wie Analyse (adminNav.js, /admin/g/:groupId, RequireAdmin). Siehe docs/issues/GUI_IA_ADMIN_NAV_2026-04-05.md (Dateipfade, IA, Deploy-Hinweis).
Umsetzungsplan: docs/issues/PHASE_PLAN_RESPONSIVE_UI.md (Phasen P0–P8). P7 Kern umgesetzt; P8 (Regression, finale Abnahme) stehen noch aus – Issue nicht schließen ohne P8-Checkliste.
Vorschlag: TEILWEISE – Gitea-Kommentar mit Link auf die GUI-Doku; Titel/Beschreibung optional um „Admin-Shell / Ziele-Nav / iOS PWA-Leiste“ ergänzen.
#32 – Version-System (inkl. ehem. #33)
Gitea (2026-04-04): #33 geschlossen; Inhalt in #32 zusammengeführt (ein Epic: /api/version, version.js, Settings, main.py-Konsistenz). Automatische Git-/Build-Identität über den Runner: zurückgestellt, geplant als separates Issue nach der Basis.
Code-Stand: backend/version.py vorhanden; GET /api/version fehlt; main.py: Root v9c-dev, FastAPI(..., version="3.0.0").
Vorschlag: OFFEN – Umsetzung laut aktualisiertem Gitea-Issue #32.
#34 – External Volumes dokumentieren (Legacy bodytrack_*)
Vorschlag: PRÜFEN – gegen aktuelle docker-compose/Deploy-Doku im Repo halten; dann schließen oder Aktualisierung kommentieren.
#35 – Deprecated Tabelle subscriptions entfernen
Code-Stand: Im Migrations-Ordner kein aktueller Treffer auf subscriptions (Stichprobe); Membership-System nutzt andere Tabellen.
Vorschlag: PRÜFEN – einmal schema.sql / DB prüfen, ob Tabelle noch existiert. Wenn weg: Issue schließen mit Verweis auf Migration.
#36 – BUG-009: Trainingstyp-Erstellung → Internal Server Error
Code-Stand: TrainingTypeCreate enthält abilities / profile (JSONB). ISE oft durch DB-Constraint, NULL/JSON oder fehlende Spalte – ohne Laufzeit-Log nicht verifiziert.
Vorschlag: PRÜFEN – in Gitea Notiz: aktueller Request-Body + Stacktrace aus docker logs; wenn behoben: schließen.
#37 – Feature-Enforcement Activity CSV-Import
Code-Stand: create_activity nutzt check_feature_access für activity_entries. import_activity_csv startet ohne vorgeschalteten Limit-Check (im gelesenen Abschnitt nur get_pid + Parse) – von Issue #37 noch nicht erfüllt.
Vorschlag: OFFEN – hoch priorisieren; analog Nutrition: ein Check vor Bulk-Import + Zählung.
#38 – Feature-Enforcement Nutrition CSV-Import UI
Code-Stand: import_nutrition_csv ruft check_feature_access für nutrition_entries auf (inkl. Logging).
Vorschlag: TEILWEISE / DONE? – falls UI-Feedback gewünscht, im Issue auf konkrete UI-Lücken eingehen (Banner, Disable Button).
#39 – Usage-Badges im Dashboard-Assistenten
Code-Stand: Dashboard.jsx nutzt getFeatureUsage() für Gewichts-Widget (Limit/Lock). Unklar ob „Assistent“-Modus = gesamtes Dashboard oder separater Guide.
Vorschlag: TEILWEISE – Issue präzisieren, welche Kacheln/Bereiche Badges brauchen.
#40 – Logout-Button im App-Header (neben Avatar)
Code-Stand: App.jsx – Header mit LogOut neben Avatar (Umsetzung vorhanden).
Vorschlag: DONE? – nach kurzem Klicktest schließen.
Kommentar-Entwurf:
In
App.jsxist ein Logout-Button im Header umgesetzt. Bitte in target Umgebung verifizieren und schließen.
#42 / #43 – Enhanced Debug / Prompt Analysis UI (Issue #28 Phase C)
Code-Stand: Analysis.jsx mit Expert-Modus, Platzhalter-Gruppierung – kann Teile von Phase C abdecken.
Vorschlag: DUPLIKAT – ein Issue behalten; anderes schließen mit Verweis. Inhalte zusammenführen.
#45 – KI Prompt-Optimierer
Vorschlag: OFFEN – Backlog, nicht im aktuellen Code sichtbar.
#46 – KI Prompt-Ersteller
Vorschlag: OFFEN – wie #45.
#47 – Wertetabelle Optimierung
Code-Stand: Wertetabelle in Analysis.jsx / Metadata – viele Punkte eher UX/Performance.
Vorschlag: OFFEN – konkrete UI-Schmerzpunkte in Sub-Tasks splitten.
#49 – Prompt-Zuordnung zu Verlaufsseiten
Code-Stand: Kein eindeutiger Treffer zu „History page prompt assignment“ in kurzer Suche.
Vorschlag: OFFEN – kurz präzisieren (Welche Seite, welches Datenmodell).
#54 / #55 – Placeholder Registry UNRESOLVED & TO_VERIFY
Code-Stand: placeholder_registry_export.py liefert validation_report über registry.validate_all() (nicht mehr leer aus dem frühen Issue-Text für Body-Cluster „{}“-Teil). Evidence TO_VERIFY/UNRESOLVED existieren weiter in Registrations.
Vorschlag: #54 und #55 zusammenlegen (gleiches Thema, Titel nur Encoding-Unterschied). Ein Issue offen lassen, Metadaten-Audit fortsetzen.
#56 / #57 / #58 – Body Cluster Restarbeiten & Metadaten-Verifizierung
Inhalt: identische bzw. nahezu identische Langbeschreibung (Metadaten, Layer 2b, Nutrition confidence_logic, Validation Report).
Vorschlag: DUPLIKAT – eines behalten (z. B. niedrigste Nummer oder neueste #58 mit aktualisiertem Stand), andere schließen mit Verweis „Duplicate of #X“. Validation-Teil: Code hat bereits validate_all – Issue-Text Abschnitt „leeres validation_report“ aktualisieren.
Kommentar-Entwurf:
Dreimal dasselbe Issue. Vorschlag: #56/#57 schließen, Tracking nur in #XX.
validation_reportwird ausregistry.validate_all()befüllt; verbleibende Arbeit: TO_VERIFY-Felder Layer 2b + Nutrition confidence_logic laut Checkliste.
Nachbearbeitung in Gitea (Checkliste für dich)
- Duplikate schließen und verlinken (#42/#43, #54/#55, #56–#58).
- „DONE?“-Issues manuell testen (
#25,#38,#40). #37umsetzen oder Kommentar „noch offen“ bestätigen.#32–#33in Gitea zusammengeführt (#33 geschlossen); Umsetzung weiter über #32.- Kommentare aus diesem Dokument kopieren/anpassen.
- Optional: Labels in Gitea setzen (
duplicate,blocked,needs-retest).
Technischer Hinweis (Audit / Security)
Aus dem Code-Audit 2026-04-04: kritische Punkte (get_pid / X-Profile-Id, /api/profiles ohne Admin) sind nicht 1:1 als Gitea-Issues in dieser offenen Liste sichtbar – ggf. separate Security-Issues aus .claude/docs/audit/20260404_code_audit/gitea/ anlegen, falls noch nicht vorhanden.
Erzeugt aus Gitea API (28 offene Issues, sortiert nach created_at) und statischer Code-Analyse im Workspace. Kein Laufzeit-Test auf dem Pi.