Sprint 7: React-PWA-Frontend (Offline-Härtung) + Flutter-Android-Grundgerüst
CI / backend-tests (push) Successful in 54s
CI / backend-tests (push) Successful in 54s
React/Vite-PWA (frontend/):
- Login, Objektliste (Prompt 11 Screen 1), Kontroll-Screen (Screens 2-6 kompakt:
Start/Objekt-Sperre-Übernahme, Positionserfassung, Abschluss/Abbruch)
- Offline-Härtung (Prompt 17): IndexedDB-Queue (src/offline/queue.ts) puffert
Positions-PUTs lokal, automatische Übertragung bei Reconnect + periodischem
Sync-Versuch, Statusanzeige je Position (nicht gespeichert/wird übertragen/
gespeichert/Fehler), Abschluss-Button bleibt gesperrt bis alles gespeichert
- Nutzt aus, dass PUT /kontrollen/{id}/positionen/{material_id} backend-seitig
idempotent ist (Upsert) - Queue kann beliebig oft retryen ohne Duplikate
- Service Worker via vite-plugin-pwa für App-Shell-Caching (Start im Feld ohne
Cold-Load); PWA-Icons als TODO vermerkt (noch keine echten Bilddateien)
- Client-Fehler (4xx) werden nicht automatisch wiederholt, nur Netzwerkfehler
Flutter-Android-Grundgerüst (flutter_app/), auf Nutzerwunsch parallel begonnen:
- Gleiche API als zweiter Client (Prompt 19 API-first), Login/Objektliste/
Kontroll-Screen als Dart-Äquivalent zur PWA
- Bewusst OHNE Offline-Queue in dieser ersten Fassung (siehe flutter_app/README.md)
- Plattform-Ordner (android/, ios/) nicht von Hand erzeugt - müssen auf dem
Zielsystem per `flutter create .` nachgezogen werden, sonst zu fehleranfällig
ohne Testlauf
Offen: Playwright-E2E (Testphase 4), Praktiker-Session, PWA-Icons, Flutter-
Offline-Queue - brauchen laufendes Deployment bzw. sind kein reiner Code-Schritt.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L85hmKbvX7Cqkq47KnQhFt
This commit is contained in:
@@ -1350,3 +1350,59 @@ Keine Commits in dieser Session.
|
||||
- backend/tests/test_mindermenge.py | 187 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
|
||||
---
|
||||
## 2026-09-03 23:53 – 23:59 (6m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** asb-material
|
||||
|
||||
### Commits
|
||||
- aba991b Sprint 6: Dashboard-Kennzahlen, Ablaufdaten-Warnungen, E-Mail-Benachrichtigung
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 46 +++++++++++++++++++++
|
||||
- backend/alembic/versions/0003_add_benutzer_email.py | 26 ++++++++++++
|
||||
- backend/app/api/v1/api.py | 2 +
|
||||
- backend/app/api/v1/endpoints/benutzer.py | 3 ++
|
||||
- backend/app/api/v1/endpoints/dashboard.py | 27 ++++++++++++
|
||||
- backend/app/api/v1/endpoints/fehlbestaende.py | 20 ++++++++-
|
||||
- backend/app/core/app_settings.py | 10 +++++
|
||||
- backend/app/core/email.py | 35 ++++++++++++++++
|
||||
- backend/app/models/auth.py | 1 +
|
||||
- backend/app/schemas/benutzer.py | 4 ++
|
||||
- backend/app/schemas/dashboard.py | 20 +++++++++
|
||||
- backend/app/services/benachrichtigung.py | 59 +++++++++++++++++++++++++++
|
||||
- backend/app/services/dashboard.py | 91 +++++++++++++++++++++++++++++++++++++++++
|
||||
- backend/app/services/kontrolle.py | 2 +
|
||||
- backend/pyproject.toml | 1 +
|
||||
- backend/tests/conftest.py | 1 +
|
||||
- backend/tests/test_dashboard.py | 147 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
- backend/tests/test_email.py | 68 +++++++++++++++++++++++++++++++
|
||||
|
||||
---
|
||||
## 2026-09-03 23:59 – 23:59 (0m)
|
||||
**Beschreibung:** Claude Code Session
|
||||
**Projekt:** asb-material
|
||||
|
||||
### Commits
|
||||
Keine Commits in dieser Session.
|
||||
|
||||
### Geänderte Dateien
|
||||
- DEVLOG.md | 46 +++++++++++++++++++++
|
||||
- backend/alembic/versions/0003_add_benutzer_email.py | 26 ++++++++++++
|
||||
- backend/app/api/v1/api.py | 2 +
|
||||
- backend/app/api/v1/endpoints/benutzer.py | 3 ++
|
||||
- backend/app/api/v1/endpoints/dashboard.py | 27 ++++++++++++
|
||||
- backend/app/api/v1/endpoints/fehlbestaende.py | 20 ++++++++-
|
||||
- backend/app/core/app_settings.py | 10 +++++
|
||||
- backend/app/core/email.py | 35 ++++++++++++++++
|
||||
- backend/app/models/auth.py | 1 +
|
||||
- backend/app/schemas/benutzer.py | 4 ++
|
||||
- backend/app/schemas/dashboard.py | 20 +++++++++
|
||||
- backend/app/services/benachrichtigung.py | 59 +++++++++++++++++++++++++++
|
||||
- backend/app/services/dashboard.py | 91 +++++++++++++++++++++++++++++++++++++++++
|
||||
- backend/app/services/kontrolle.py | 2 +
|
||||
- backend/pyproject.toml | 1 +
|
||||
- backend/tests/conftest.py | 1 +
|
||||
- backend/tests/test_dashboard.py | 147 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
- backend/tests/test_email.py | 68 +++++++++++++++++++++++++++++++
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user