Files
MABEA/DEVLOG.md
T
patrickandClaude Sonnet 5 f2ca0ed905
CI / backend-tests (push) Successful in 53s
CI / frontend-build (push) Successful in 5m7s
Sprint 8: Excel-Import-Skript + CI Frontend-Build-Job
Import-Skript (backend/scripts/import_excel.py) liest die drei Ist-Listen
per stdlib zipfile/ElementTree (kein openpyxl), erzeugt idempotent
Objekttyp+Beladungsvorlage+Vorlagenpositionen je Datei, Material-Abgleich
über Artikelnummer. Rohdaten-Check bestätigt Mapping D=Artikelnummer
(testphasen.md ergänzt). Ausführung nur auf Zielsystem (Deployment-Regel).

CI: neuer frontend-build-Job (npm install + tsc --noEmit + vite build),
da React-PWA/Flutter bisher unabhängig von der Test-Pipeline waren.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L85hmKbvX7Cqkq47KnQhFt
2026-09-04 00:16:33 +02:00

1447 lines
50 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 +++++++++++++++++++++++++++++++
---
## 2026-09-04 00:00 00:10 (10m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 564e98e Sprint 7: React-PWA-Frontend (Offline-Härtung) + Flutter-Android-Grundgerüst
### Geänderte Dateien
- DEVLOG.md | 56 +++++++++++++++
- flutter_app/.gitignore | 8 +++
- flutter_app/README.md | 40 +++++++++++
- flutter_app/analysis_options.yaml | 1 +
- flutter_app/lib/api/api_client.dart | 101 ++++++++++++++++++++++++++
- flutter_app/lib/main.dart | 45 ++++++++++++
- flutter_app/lib/screens/kontroll_screen.dart | 276 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- flutter_app/lib/screens/login_screen.dart | 75 +++++++++++++++++++
- flutter_app/lib/screens/objekt_list_screen.dart | 82 +++++++++++++++++++++
- flutter_app/pubspec.yaml | 21 ++++++
- frontend/.gitignore | 5 ++
- frontend/README.md | 44 ++++++++++++
- frontend/example.env | 1 +
- frontend/index.html | 13 ++++
- frontend/package.json | 25 +++++++
- frontend/src/App.tsx | 42 +++++++++++
- frontend/src/api/client.ts | 79 ++++++++++++++++++++
- frontend/src/api/types.ts | 49 +++++++++++++
- frontend/src/auth/AuthContext.tsx | 41 +++++++++++
- frontend/src/main.tsx | 13 ++++
- frontend/src/offline/queue.ts | 114 +++++++++++++++++++++++++++++
- frontend/src/offline/useOnlineStatus.ts | 37 ++++++++++
- frontend/src/pages/KontrollPage.tsx | 271 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/LoginPage.tsx | 62 ++++++++++++++++
- frontend/src/pages/ObjektListPage.tsx | 59 +++++++++++++++
- frontend/src/vite-env.d.ts | 9 +++
- frontend/tsconfig.json | 19 +++++
- frontend/vite.config.ts | 36 ++++++++++
---