Files
MABEA/DEVLOG.md
T
patrickandClaude Sonnet 5 564e98e5c6
CI / backend-tests (push) Successful in 54s
Sprint 7: React-PWA-Frontend (Offline-Härtung) + Flutter-Android-Grundgerüst
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
2026-09-04 00:10:26 +02:00

1409 lines
47 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# asb-material Dev Log
## 2026-09-03 00:16 00:16 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:24 01:25 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:25 01:25 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:26 01:26 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:26 01:28 (2m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:29 01:38 (9m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:42 01:42 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:42 01:42 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:43 01:44 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:46 01:46 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:51 01:53 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:53 01:54 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:56 01:57 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:57 01:58 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** timemaster
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:57 01:58 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** timemaster
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 01:59 02:00 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 02:00 02:01 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 02:02 02:03 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:02 14:02 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:05 14:05 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:05 14:05 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:07 14:07 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:08 14:09 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:12 14:13 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:13 14:14 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:24 14:25 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:25 14:25 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:26 14:26 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:27 14:27 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:32 14:33 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:33 14:33 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:34 14:34 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:45 14:45 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:46 14:46 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:48 14:48 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:50 14:50 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:51 14:52 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 14:52 14:56 (3m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 15:37 15:37 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 15:38 15:39 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 15:39 15:40 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 15:40 15:41 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 15:41 15:42 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 15:43 15:46 (2m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 15:47 15:47 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 15:48 15:48 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 15:50 15:50 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 15:58 16:03 (5m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 16:04 16:06 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 16:06 16:06 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 16:08 16:11 (3m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 16:12 16:13 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 16:14 16:14 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 16:46 16:49 (3m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 17:00 17:01 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 17:01 17:01 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 17:03 17:03 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 17:19 17:19 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 17:19 17:19 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 17:21 17:21 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 17:40 17:41 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 21:29 21:30 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 21:34 21:35 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 7c68eb8 Initiale fachliche Konzeption MABEA (Prompts 01-23, Arbeitskarten 01-13)
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 21:35 21:35 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 21:36 21:36 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 21:40 21:40 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 21:42 21:43 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
Keine Änderungen ermittelbar.
---
## 2026-09-03 21:43 21:44 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 10fcf1f Duplikate der flachen Gitea-Web-Uploads entfernen, organisierte Struktur beibehalten
- dc39adf Merge remote Gitea-Uploads, lokale Struktur beibehalten
### Geänderte Dateien
- 00_index.md | 23 -------
- 01_anforderungsanalyse.md | 72 --------------------
- 01_rollen_zuordnung.md | 14 ----
- 02_prozess_kontrolle.md | 69 -------------------
- 02_rechte_stammdaten.md | 10 ---
- 03_fehlbestandsmanagement.md | 62 -----------------
- 03_sollmengen_recht.md | 11 ---
- 04_mindermengen.md | 38 -----------
- 05_benachrichtigungen.md | 15 -----
- 05_rollen_rechte.md | 50 --------------
- 06_datenmodell.md | 117 --------------------------------
- 06_geraet_pc_mobil.md | 11 ---
- 07_materialstamm.md | 67 ------------------
- 07_sofort_nachfuellung.md | 10 ---
- 08_beladungsvorlagen.md | 37 ----------
- 08_mindermenge_gueltigkeit.md | 11 ---
- 09_authentifizierung.md | 10 ---
- 09_duplizieren.md | 38 -----------
- 10_individuelle_beladung.md | 34 ----------
- 10_qr_barcode.md | 27 --------
- 11_kontroll_ui.md | 57 ----------------
- 11_systemumfang_ressourcenmanagement.md | 18 -----
- 12_eskalation.md | 17 -----
- 12_verantwortlichen_dashboard.md | 49 --------------
- 13_historie_audit.md | 45 -------------
- 13_satelliten_server.md | 37 ----------
- 14_ablaufdaten.md | 34 ----------
- 15_lager.md | 26 -------
- 16_kontrollabschluss.md | 39 -----------
- 17_mobile_offline.md | 44 ------------
- 18_version_1.md | 53 ---------------
- 19_technische_architektur.md | 85 -----------------------
- 20_datenbank_schema.md | 288 ------------------------------------------------------------------------------
- 21_api.md | 107 -----------------------------
- 22_testkonzept.md | 97 --------------------------
- 23_papieraloesung.md | 35 ----------
---
## 2026-09-03 21:55 21:57 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- d9ef67c Testphasen-Plan ergänzen (Phase 0-5 + Phase S Satelliten-PoC, Excel-Import-Mapping)
### Geänderte Dateien
- DEVLOG.md | 102 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- GESAMTDOKUMENT.md | 153 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
- ergebnisse/testphasen.md | 146 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-03 22:09 22:13 (3m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 87df725 Letzte offene fachliche Fragen klären: keine Kontrollintervall-Fälligkeit (nur Ablaufdatum), Zuständigkeit vererbt sich vom Standort, Zuweisung ist reine Sichtbarkeit; Kleinigkeiten (Überbestand-Regel, Signatur-Vermerk, Server-Seed) dokumentiert
### Geänderte Dateien
- DEVLOG.md | 13 +++++++++++++
- GESAMTDOKUMENT.md | 31 ++++++++++++++++++-------------
- arbeitskarten/01_rollen_zuordnung.md | 4 ++--
- arbeitskarten/04_organisationsstruktur.md | 8 ++++----
- ergebnisse/01_anforderungsanalyse.md | 8 ++++----
- ergebnisse/12_verantwortlichen_dashboard.md | 3 +++
- ergebnisse/16_kontrollabschluss.md | 5 +++--
- ergebnisse/21_api.md | 2 +-
- ergebnisse/testphasen.md | 1 +
---
## 2026-09-03 22:20 22:21 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 3219145 Prompt 12 Nummerierung korrigieren (6/7 statt 6/6a), Verweis in Prompt 16 anpassen
### Geänderte Dateien
- DEVLOG.md | 19 +++++++++++++++++++
- GESAMTDOKUMENT.md | 8 ++++----
- ergebnisse/12_verantwortlichen_dashboard.md | 6 +++---
- ergebnisse/16_kontrollabschluss.md | 2 +-
---
## 2026-09-03 22:25 22:26 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- e4ee4e5 Sprintplan MVP ergänzen (Sprints 0-8, E1-E6 fixierte Entscheidungen, Abnahmekriterien)
### Geänderte Dateien
- DEVLOG.md | 14 ++++++++++++++
- GESAMTDOKUMENT.md | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- ergebnisse/sprintplan.md | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-03 22:37 22:39 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitea/workflows/ci.yml | 52 ++++++++++++
- DEVLOG.md | 13 +++
- backend/.gitignore | 9 +++
- backend/README.md | 35 +++++++++
- backend/alembic.ini | 38 +++++++++
- backend/alembic/env.py | 51 ++++++++++++
- backend/alembic/script.py.mako | 26 ++++++
- backend/alembic/versions/0001_initial_schema.py | 291 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/alembic/versions/0002_seed_hauptserver.py | 25 ++++++
- backend/app/__init__.py | 0
- backend/app/api/__init__.py | 0
- backend/app/api/deps.py | 52 ++++++++++++
- backend/app/api/v1/__init__.py | 0
- backend/app/api/v1/api.py | 7 ++
- backend/app/api/v1/endpoints/__init__.py | 0
- backend/app/api/v1/endpoints/auth.py | 55 +++++++++++++
- backend/app/api/v1/endpoints/health.py | 19 +++++
- backend/app/core/__init__.py | 0
- backend/app/core/app_settings.py | 18 +++++
- backend/app/core/security.py | 33 ++++++++
- backend/app/db/__init__.py | 0
- backend/app/db/base.py | 5 ++
- backend/app/db/session.py | 13 +++
- backend/app/main.py | 6 ++
- backend/app/models/__init__.py | 3 +
- backend/app/models/auth.py | 60 ++++++++++++++
- backend/example.env | 9 +++
- backend/pyproject.toml | 31 ++++++++
- backend/pytest.ini | 4 +
- backend/tests/__init__.py | 0
- backend/tests/conftest.py | 70 +++++++++++++++++
- backend/tests/test_auth.py | 45 +++++++++++
- backend/tests/test_health.py | 8 ++
- backend/tests/test_roles.py | 28 +++++++
---
## 2026-09-03 22:37 22:39 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitea/workflows/ci.yml | 52 ++++++++++++
- DEVLOG.md | 13 +++
- backend/.gitignore | 9 +++
- backend/README.md | 35 +++++++++
- backend/alembic.ini | 38 +++++++++
- backend/alembic/env.py | 51 ++++++++++++
- backend/alembic/script.py.mako | 26 ++++++
- backend/alembic/versions/0001_initial_schema.py | 291 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/alembic/versions/0002_seed_hauptserver.py | 25 ++++++
- backend/app/__init__.py | 0
- backend/app/api/__init__.py | 0
- backend/app/api/deps.py | 52 ++++++++++++
- backend/app/api/v1/__init__.py | 0
- backend/app/api/v1/api.py | 7 ++
- backend/app/api/v1/endpoints/__init__.py | 0
- backend/app/api/v1/endpoints/auth.py | 55 +++++++++++++
- backend/app/api/v1/endpoints/health.py | 19 +++++
- backend/app/core/__init__.py | 0
- backend/app/core/app_settings.py | 18 +++++
- backend/app/core/security.py | 33 ++++++++
- backend/app/db/__init__.py | 0
- backend/app/db/base.py | 5 ++
- backend/app/db/session.py | 13 +++
- backend/app/main.py | 6 ++
- backend/app/models/__init__.py | 3 +
- backend/app/models/auth.py | 60 ++++++++++++++
- backend/example.env | 9 +++
- backend/pyproject.toml | 31 ++++++++
- backend/pytest.ini | 4 +
- backend/tests/__init__.py | 0
- backend/tests/conftest.py | 70 +++++++++++++++++
- backend/tests/test_auth.py | 45 +++++++++++
- backend/tests/test_health.py | 8 ++
- backend/tests/test_roles.py | 28 +++++++
---
## 2026-09-03 22:37 22:39 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitea/workflows/ci.yml | 52 ++++++++++++
- DEVLOG.md | 13 +++
- backend/.gitignore | 9 +++
- backend/README.md | 35 +++++++++
- backend/alembic.ini | 38 +++++++++
- backend/alembic/env.py | 51 ++++++++++++
- backend/alembic/script.py.mako | 26 ++++++
- backend/alembic/versions/0001_initial_schema.py | 291 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/alembic/versions/0002_seed_hauptserver.py | 25 ++++++
- backend/app/__init__.py | 0
- backend/app/api/__init__.py | 0
- backend/app/api/deps.py | 52 ++++++++++++
- backend/app/api/v1/__init__.py | 0
- backend/app/api/v1/api.py | 7 ++
- backend/app/api/v1/endpoints/__init__.py | 0
- backend/app/api/v1/endpoints/auth.py | 55 +++++++++++++
- backend/app/api/v1/endpoints/health.py | 19 +++++
- backend/app/core/__init__.py | 0
- backend/app/core/app_settings.py | 18 +++++
- backend/app/core/security.py | 33 ++++++++
- backend/app/db/__init__.py | 0
- backend/app/db/base.py | 5 ++
- backend/app/db/session.py | 13 +++
- backend/app/main.py | 6 ++
- backend/app/models/__init__.py | 3 +
- backend/app/models/auth.py | 60 ++++++++++++++
- backend/example.env | 9 +++
- backend/pyproject.toml | 31 ++++++++
- backend/pytest.ini | 4 +
- backend/tests/__init__.py | 0
- backend/tests/conftest.py | 70 +++++++++++++++++
- backend/tests/test_auth.py | 45 +++++++++++
- backend/tests/test_health.py | 8 ++
- backend/tests/test_roles.py | 28 +++++++
---
## 2026-09-03 22:37 22:39 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitea/workflows/ci.yml | 52 ++++++++++++
- DEVLOG.md | 13 +++
- backend/.gitignore | 9 +++
- backend/README.md | 35 +++++++++
- backend/alembic.ini | 38 +++++++++
- backend/alembic/env.py | 51 ++++++++++++
- backend/alembic/script.py.mako | 26 ++++++
- backend/alembic/versions/0001_initial_schema.py | 291 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/alembic/versions/0002_seed_hauptserver.py | 25 ++++++
- backend/app/__init__.py | 0
- backend/app/api/__init__.py | 0
- backend/app/api/deps.py | 52 ++++++++++++
- backend/app/api/v1/__init__.py | 0
- backend/app/api/v1/api.py | 7 ++
- backend/app/api/v1/endpoints/__init__.py | 0
- backend/app/api/v1/endpoints/auth.py | 55 +++++++++++++
- backend/app/api/v1/endpoints/health.py | 19 +++++
- backend/app/core/__init__.py | 0
- backend/app/core/app_settings.py | 18 +++++
- backend/app/core/security.py | 33 ++++++++
- backend/app/db/__init__.py | 0
- backend/app/db/base.py | 5 ++
- backend/app/db/session.py | 13 +++
- backend/app/main.py | 6 ++
- backend/app/models/__init__.py | 3 +
- backend/app/models/auth.py | 60 ++++++++++++++
- backend/example.env | 9 +++
- backend/pyproject.toml | 31 ++++++++
- backend/pytest.ini | 4 +
- backend/tests/__init__.py | 0
- backend/tests/conftest.py | 70 +++++++++++++++++
- backend/tests/test_auth.py | 45 +++++++++++
- backend/tests/test_health.py | 8 ++
- backend/tests/test_roles.py | 28 +++++++
---
## 2026-09-03 22:53 22:54 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitea/workflows/ci.yml | 52 ++++++++++++
- DEVLOG.md | 13 +++
- backend/.gitignore | 9 +++
- backend/README.md | 35 +++++++++
- backend/alembic.ini | 38 +++++++++
- backend/alembic/env.py | 51 ++++++++++++
- backend/alembic/script.py.mako | 26 ++++++
- backend/alembic/versions/0001_initial_schema.py | 291 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/alembic/versions/0002_seed_hauptserver.py | 25 ++++++
- backend/app/__init__.py | 0
- backend/app/api/__init__.py | 0
- backend/app/api/deps.py | 52 ++++++++++++
- backend/app/api/v1/__init__.py | 0
- backend/app/api/v1/api.py | 7 ++
- backend/app/api/v1/endpoints/__init__.py | 0
- backend/app/api/v1/endpoints/auth.py | 55 +++++++++++++
- backend/app/api/v1/endpoints/health.py | 19 +++++
- backend/app/core/__init__.py | 0
- backend/app/core/app_settings.py | 18 +++++
- backend/app/core/security.py | 33 ++++++++
- backend/app/db/__init__.py | 0
- backend/app/db/base.py | 5 ++
- backend/app/db/session.py | 13 +++
- backend/app/main.py | 6 ++
- backend/app/models/__init__.py | 3 +
- backend/app/models/auth.py | 60 ++++++++++++++
- backend/example.env | 9 +++
- backend/pyproject.toml | 31 ++++++++
- backend/pytest.ini | 4 +
- backend/tests/__init__.py | 0
- backend/tests/conftest.py | 70 +++++++++++++++++
- backend/tests/test_auth.py | 45 +++++++++++
- backend/tests/test_health.py | 8 ++
- backend/tests/test_roles.py | 28 +++++++
---
## 2026-09-03 22:54 22:55 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitea/workflows/ci.yml | 52 ++++++++++++
- DEVLOG.md | 13 +++
- backend/.gitignore | 9 +++
- backend/README.md | 35 +++++++++
- backend/alembic.ini | 38 +++++++++
- backend/alembic/env.py | 51 ++++++++++++
- backend/alembic/script.py.mako | 26 ++++++
- backend/alembic/versions/0001_initial_schema.py | 291 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/alembic/versions/0002_seed_hauptserver.py | 25 ++++++
- backend/app/__init__.py | 0
- backend/app/api/__init__.py | 0
- backend/app/api/deps.py | 52 ++++++++++++
- backend/app/api/v1/__init__.py | 0
- backend/app/api/v1/api.py | 7 ++
- backend/app/api/v1/endpoints/__init__.py | 0
- backend/app/api/v1/endpoints/auth.py | 55 +++++++++++++
- backend/app/api/v1/endpoints/health.py | 19 +++++
- backend/app/core/__init__.py | 0
- backend/app/core/app_settings.py | 18 +++++
- backend/app/core/security.py | 33 ++++++++
- backend/app/db/__init__.py | 0
- backend/app/db/base.py | 5 ++
- backend/app/db/session.py | 13 +++
- backend/app/main.py | 6 ++
- backend/app/models/__init__.py | 3 +
- backend/app/models/auth.py | 60 ++++++++++++++
- backend/example.env | 9 +++
- backend/pyproject.toml | 31 ++++++++
- backend/pytest.ini | 4 +
- backend/tests/__init__.py | 0
- backend/tests/conftest.py | 70 +++++++++++++++++
- backend/tests/test_auth.py | 45 +++++++++++
- backend/tests/test_health.py | 8 ++
- backend/tests/test_roles.py | 28 +++++++
---
## 2026-09-03 22:55 23:04 (9m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- b5c46cf Installer-Bugfix: sudo-Abhängigkeit entfernt, SQL-Ausführung über stdin statt su-Argument
- 446e4f9 Deployment-Setup (PostgreSQL+nginx-Installer) + Sprint-0-Fixes aus Subagenten-Reviews
### Geänderte Dateien
- deploy/install_server.sh | 21 +++++++++++++++------
---
## 2026-09-03 23:04 23:07 (2m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 035b22f Migration-Bugfix: DDL statementweise statt als Multi-Statement-Block ausführen
### Geänderte Dateien
- DEVLOG.md | 12 ++++++++++++
- backend/alembic/versions/0001_initial_schema.py | 16 ++++++++++++++--
---
## 2026-09-03 23:07 23:13 (5m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- b9cf195 Sprint 1: Stammdaten-Modelle/-Endpunkte, Admin-Benutzerverwaltung, Zuständigkeits-Vererbung (E2)
### Geänderte Dateien
- DEVLOG.md | 12 ++++++
- backend/app/api/v1/api.py | 5 ++-
- backend/app/api/v1/endpoints/benutzer.py | 70 +++++++++++++++++++++++++++++++
- backend/app/api/v1/endpoints/stammdaten.py | 161 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/api/v1/endpoints/zustaendigkeit.py | 89 +++++++++++++++++++++++++++++++++++++++
- backend/app/models/__init__.py | 21 +++++++++-
- backend/app/models/objekt.py | 35 ++++++++++++++++
- backend/app/models/stammdaten.py | 66 +++++++++++++++++++++++++++++
- backend/app/models/zustaendigkeit.py | 37 +++++++++++++++++
- backend/app/schemas/__init__.py | 0
- backend/app/schemas/benutzer.py | 35 ++++++++++++++++
- backend/app/schemas/stammdaten.py | 76 ++++++++++++++++++++++++++++++++++
- backend/app/schemas/zustaendigkeit.py | 45 ++++++++++++++++++++
- backend/app/services/__init__.py | 0
- backend/app/services/zustaendigkeit.py | 28 +++++++++++++
- backend/tests/conftest.py | 61 +++++++++++++++++++++++++++
- backend/tests/test_benutzer_admin.py | 56 +++++++++++++++++++++++++
- backend/tests/test_stammdaten.py | 62 +++++++++++++++++++++++++++
- backend/tests/test_zustaendigkeit.py | 80 +++++++++++++++++++++++++++++++++++
---
## 2026-09-03 23:13 23:31 (18m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- fdcac2f Sprint 2: Beladungsvorlagen (Versionierung), Objekte anlegen/duplizieren, Override-Logik
- 67cebbb Test-Engine pro Test statt Modul-Global erzeugen (echter Fix für Event-Loop-Konflikt)
- 8f9bd57 CI-Bugfixes aus erstem echten Testlauf: bcrypt-Pin, pytest-asyncio Loop-Scope
- d7d61f2 CI umgebaut: Host-Runner ohne Docker statt Service-Container
### Geänderte Dateien
- backend/app/api/v1/api.py | 4 +-
- backend/app/api/v1/endpoints/objekte.py | 222 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/api/v1/endpoints/vorlagen.py | 78 +++++++++++++++++++++++++++
- backend/app/main.py | 3 ++
- backend/app/models/__init__.py | 7 +++
- backend/tests/conftest.py | 31 ++++++++++-
- backend/tests/test_objekte.py | 168 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/tests/test_vorlagen.py | 34 ++++++++++++
---
## 2026-09-03 23:31 23:31 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- backend/app/api/v1/api.py | 4 +-
- backend/app/api/v1/endpoints/objekte.py | 222 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/api/v1/endpoints/vorlagen.py | 78 +++++++++++++++++++++++++++
- backend/app/main.py | 3 ++
- backend/app/models/__init__.py | 7 +++
- backend/tests/conftest.py | 31 ++++++++++-
- backend/tests/test_objekte.py | 168 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/tests/test_vorlagen.py | 34 ++++++++++++
---
## 2026-09-03 23:34 23:40 (6m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 8fd507c Sprint 3: Kontroll-Kern (Statusmaschine, Objekt-Sperre, automatische Fehlbestand-Erzeugung)
### Geänderte Dateien
- DEVLOG.md | 39 +++++++++++++
- backend/app/api/v1/api.py | 3 +-
- backend/app/api/v1/endpoints/kontrollen.py | 171 +++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/models/__init__.py | 9 +++
- backend/app/models/fehlbestand.py | 47 +++++++++++++++
- backend/app/models/historie.py | 27 +++++++++
- backend/app/models/kontrolle.py | 53 +++++++++++++++++
- backend/app/schemas/kontrolle.py | 47 +++++++++++++++
- backend/app/services/kontrolle.py | 240 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/tests/conftest.py | 52 +++++++++++++++++
- backend/tests/test_kontrolle.py | 238 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-03 23:40 23:40 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 39 +++++++++++++
- backend/app/api/v1/api.py | 3 +-
- backend/app/api/v1/endpoints/kontrollen.py | 171 +++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/models/__init__.py | 9 +++
- backend/app/models/fehlbestand.py | 47 +++++++++++++++
- backend/app/models/historie.py | 27 +++++++++
- backend/app/models/kontrolle.py | 53 +++++++++++++++++
- backend/app/schemas/kontrolle.py | 47 +++++++++++++++
- backend/app/services/kontrolle.py | 240 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/tests/conftest.py | 52 +++++++++++++++++
- backend/tests/test_kontrolle.py | 238 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-03 23:41 23:46 (5m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 18fba28 Sprint 4: Fehlbestand-Statusmaschine komplett, Nachfüllung sofort/später/teilweise
### Geänderte Dateien
- DEVLOG.md | 42 ++++++++++++++++++++++
- backend/app/api/v1/api.py | 13 ++++++-
- backend/app/api/v1/endpoints/fehlbestaende.py | 86 +++++++++++++++++++++++++++++++++++++++++++++
- backend/app/api/v1/endpoints/kontrollen.py | 13 +++++--
- backend/app/models/__init__.py | 2 ++
- backend/app/models/nachfuellung.py | 26 ++++++++++++++
- backend/app/schemas/fehlbestand.py | 46 ++++++++++++++++++++++++
- backend/app/schemas/kontrolle.py | 1 +
- backend/app/services/fehlbestand.py | 69 ++++++++++++++++++++++++++++++++++++
- backend/app/services/kontrolle.py | 42 ++++++++++++----------
- backend/tests/test_fehlbestand.py | 138 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-03 23:46 23:46 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 42 ++++++++++++++++++++++
- backend/app/api/v1/api.py | 13 ++++++-
- backend/app/api/v1/endpoints/fehlbestaende.py | 86 +++++++++++++++++++++++++++++++++++++++++++++
- backend/app/api/v1/endpoints/kontrollen.py | 13 +++++--
- backend/app/models/__init__.py | 2 ++
- backend/app/models/nachfuellung.py | 26 ++++++++++++++
- backend/app/schemas/fehlbestand.py | 46 ++++++++++++++++++++++++
- backend/app/schemas/kontrolle.py | 1 +
- backend/app/services/fehlbestand.py | 69 ++++++++++++++++++++++++++++++++++++
- backend/app/services/kontrolle.py | 42 ++++++++++++----------
- backend/tests/test_fehlbestand.py | 138 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-03 23:47 23:47 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 42 ++++++++++++++++++++++
- backend/app/api/v1/api.py | 13 ++++++-
- backend/app/api/v1/endpoints/fehlbestaende.py | 86 +++++++++++++++++++++++++++++++++++++++++++++
- backend/app/api/v1/endpoints/kontrollen.py | 13 +++++--
- backend/app/models/__init__.py | 2 ++
- backend/app/models/nachfuellung.py | 26 ++++++++++++++
- backend/app/schemas/fehlbestand.py | 46 ++++++++++++++++++++++++
- backend/app/schemas/kontrolle.py | 1 +
- backend/app/services/fehlbestand.py | 69 ++++++++++++++++++++++++++++++++++++
- backend/app/services/kontrolle.py | 42 ++++++++++++----------
- backend/tests/test_fehlbestand.py | 138 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-03 23:47 23:53 (5m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 1e9012c Sprint 5: Mindermengen-Genehmigung + automatischer Ablauf, Historie für Kernkette
### Geänderte Dateien
- DEVLOG.md | 63 ++++++++++++++++++++++++
- backend/app/api/v1/endpoints/fehlbestaende.py | 56 +++++++++++++++++++++-
- backend/app/api/v1/endpoints/kontrollen.py | 8 +++-
- backend/app/models/__init__.py | 3 ++
- backend/app/models/mindermenge.py | 45 ++++++++++++++++++
- backend/app/schemas/mindermenge.py | 23 +++++++++
- backend/app/services/fehlbestand.py | 55 ++++++++++++++++++++-
- backend/app/services/historie.py | 37 +++++++++++++++
- backend/app/services/kontrolle.py | 116 +++++++++++++++++++++++++++++++++++++++------
- backend/app/services/mindermenge.py | 67 ++++++++++++++++++++++++++
- backend/tests/conftest.py | 15 ++++++
- backend/tests/test_historie.py | 62 ++++++++++++++++++++++++
- backend/tests/test_mindermenge.py | 187 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-03 23:53 23:53 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 63 ++++++++++++++++++++++++
- backend/app/api/v1/endpoints/fehlbestaende.py | 56 +++++++++++++++++++++-
- backend/app/api/v1/endpoints/kontrollen.py | 8 +++-
- backend/app/models/__init__.py | 3 ++
- backend/app/models/mindermenge.py | 45 ++++++++++++++++++
- backend/app/schemas/mindermenge.py | 23 +++++++++
- backend/app/services/fehlbestand.py | 55 ++++++++++++++++++++-
- backend/app/services/historie.py | 37 +++++++++++++++
- backend/app/services/kontrolle.py | 116 +++++++++++++++++++++++++++++++++++++++------
- backend/app/services/mindermenge.py | 67 ++++++++++++++++++++++++++
- backend/tests/conftest.py | 15 ++++++
- backend/tests/test_historie.py | 62 ++++++++++++++++++++++++
- 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 +++++++++++++++++++++++++++++++
---