Files
MABEA/DEVLOG.md
T
patrickandClaude Sonnet 5 c68d39b45f
CI / backend-tests (push) Successful in 1m5s
CI / frontend-build (push) Successful in 22s
Flutter: Offline-Queue für Kontroll-Erfassung (Prompt 17-Härtung)
lib/offline/queue.dart (sqflite) analog zur React-PWA-Queue: enqueue statt
Direkt-Senden, Status wartet/wird_uebertragen/fehler, Idempotenz, Sync bei
Reconnect (connectivity_plus) + periodisch alle 15s. KontrollScreen gleicht
per 2s-Reconciliation-Loop den Anzeigezustand ab, "Kein Netz"-Banner.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CVgbozhYmuEhiEJHffRXCV
2026-09-04 18:36:10 +02:00

2786 lines
103 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 ++++++++++
---
## 2026-09-04 00:13 00:16 (3m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- f2ca0ed Sprint 8: Excel-Import-Skript + CI Frontend-Build-Job
### Geänderte Dateien
- .gitea/workflows/ci.yml | 16 ++++++
- DEVLOG.md | 38 +++++++++++++++
- backend/scripts/__init__.py | 0
- backend/scripts/import_excel.py | 230 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- ergebnisse/testphasen.md | 1 +
---
## 2026-09-04 00:16 00:17 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitea/workflows/ci.yml | 16 ++++++
- DEVLOG.md | 38 +++++++++++++++
- backend/scripts/__init__.py | 0
- backend/scripts/import_excel.py | 230 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- ergebnisse/testphasen.md | 1 +
---
## 2026-09-04 00:17 00:17 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitea/workflows/ci.yml | 16 ++++++
- DEVLOG.md | 38 +++++++++++++++
- backend/scripts/__init__.py | 0
- backend/scripts/import_excel.py | 230 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- ergebnisse/testphasen.md | 1 +
---
## 2026-09-04 00:17 00:17 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitea/workflows/ci.yml | 16 ++++++
- DEVLOG.md | 38 +++++++++++++++
- backend/scripts/__init__.py | 0
- backend/scripts/import_excel.py | 230 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- ergebnisse/testphasen.md | 1 +
---
## 2026-09-04 00:17 00:17 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitea/workflows/ci.yml | 16 ++++++
- DEVLOG.md | 38 +++++++++++++++
- backend/scripts/__init__.py | 0
- backend/scripts/import_excel.py | 230 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- ergebnisse/testphasen.md | 1 +
---
## 2026-09-04 00:18 00:19 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitea/workflows/ci.yml | 16 ++++++
- DEVLOG.md | 38 +++++++++++++++
- backend/scripts/__init__.py | 0
- backend/scripts/import_excel.py | 230 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- ergebnisse/testphasen.md | 1 +
---
## 2026-09-04 00:19 00:19 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitea/workflows/ci.yml | 16 ++++++
- DEVLOG.md | 38 +++++++++++++++
- backend/scripts/__init__.py | 0
- backend/scripts/import_excel.py | 230 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- ergebnisse/testphasen.md | 1 +
---
## 2026-09-04 00:19 00:19 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitea/workflows/ci.yml | 16 ++++++
- DEVLOG.md | 38 +++++++++++++++
- backend/scripts/__init__.py | 0
- backend/scripts/import_excel.py | 230 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- ergebnisse/testphasen.md | 1 +
---
## 2026-09-04 00:21 00:22 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- .gitea/workflows/ci.yml | 16 ++++++
- DEVLOG.md | 38 +++++++++++++++
- backend/scripts/__init__.py | 0
- backend/scripts/import_excel.py | 230 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- ergebnisse/testphasen.md | 1 +
---
## 2026-09-04 00:22 00:25 (2m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 3ecca4c deploy: nginx liefert React-PWA-Build statt Backend-Proxy auf /
### Geänderte Dateien
- deploy/nginx_mabea.conf.template | 11 ++++++++++-
---
## 2026-09-04 00:25 00:28 (2m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 8943e36 fix(import): nicht-numerische Menge überspringen statt Import abzubrechen
- 6503beb fix(import): Mengen zusammenführen bei Mehrfach-Fach desselben Materials
- f4c1124 Sprint 8: Admin-Seed-Skript für Erstinbetriebnahme
### Geänderte Dateien
- backend/scripts/import_excel.py | 11 ++++++++++-
---
## 2026-09-04 00:30 00:31 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- backend/scripts/import_excel.py | 11 ++++++++++-
---
## 2026-09-04 00:30 00:31 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- frontend/src/App.tsx | 20 ++++++++++++
- frontend/src/api/types.ts | 21 +++++++++++++
- frontend/src/auth/AuthContext.tsx | 20 ++++++++++--
- frontend/src/pages/AdminPage.tsx | 135 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/ObjektListPage.tsx | 7 +++++
---
## 2026-09-04 00:33 00:33 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- frontend/src/App.tsx | 20 ++++++++++++
- frontend/src/api/types.ts | 21 +++++++++++++
- frontend/src/auth/AuthContext.tsx | 20 ++++++++++--
- frontend/src/pages/AdminPage.tsx | 135 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/ObjektListPage.tsx | 7 +++++
---
## 2026-09-04 00:34 00:34 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- frontend/src/App.tsx | 20 ++++++++++++
- frontend/src/api/types.ts | 21 +++++++++++++
- frontend/src/auth/AuthContext.tsx | 20 ++++++++++--
- frontend/src/pages/AdminPage.tsx | 135 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/ObjektListPage.tsx | 7 +++++
---
## 2026-09-04 00:35 00:38 (2m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- e3ed5e0 Sprint 8: modernes Design-System für die React-PWA
### Geänderte Dateien
- frontend/src/App.tsx | 5 +-
- frontend/src/components/AppShell.tsx | 39 ++++++++++
- frontend/src/main.tsx | 1 +
- frontend/src/pages/AdminPage.tsx | 166 +++++++++++++++++++++++++++++------------
- frontend/src/pages/KontrollPage.tsx | 107 ++++++++++++++-------------
- frontend/src/pages/LoginPage.tsx | 66 +++++++++--------
- frontend/src/pages/ObjektListPage.tsx | 47 ++++++------
- frontend/src/styles/global.css | 323 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-04 00:38 00:38 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- frontend/src/App.tsx | 5 +-
- frontend/src/components/AppShell.tsx | 39 ++++++++++
- frontend/src/main.tsx | 1 +
- frontend/src/pages/AdminPage.tsx | 166 +++++++++++++++++++++++++++++------------
- frontend/src/pages/KontrollPage.tsx | 107 ++++++++++++++-------------
- frontend/src/pages/LoginPage.tsx | 66 +++++++++--------
- frontend/src/pages/ObjektListPage.tsx | 47 ++++++------
- frontend/src/styles/global.css | 323 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-04 00:39 00:40 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 08b10c7 Sprint 8: Material anlegen/bearbeiten im Admin-Portal
### Geänderte Dateien
- frontend/src/api/types.ts | 7 ++++
- frontend/src/pages/AdminPage.tsx | 160 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----
---
## 2026-09-04 00:41 00:45 (4m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- f6084e2 Refactor: große Dateien in kleinere Module/Komponenten aufgeteilt
### Geänderte Dateien
- DEVLOG.md | 263 +++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/services/kontrolle/__init__.py | 30 ++++++
- backend/app/services/kontrolle/erfassung.py | 153 ++++++++++++++++++++++++++++
- backend/app/services/kontrolle/exceptions.py | 17 ++++
- backend/app/services/{kontrolle.py => kontrolle/lifecycle.py} | 162 +----------------------------
- frontend/src/pages/AdminPage.tsx | 309 +++-----------------------------------------------------
- frontend/src/pages/KontrollPage.tsx | 240 ++++++-------------------------------------
- frontend/src/pages/admin/MaterialSection.tsx | 146 ++++++++++++++++++++++++++
- frontend/src/pages/admin/ObjektSection.tsx | 112 ++++++++++++++++++++
- frontend/src/pages/admin/StandortSection.tsx | 56 ++++++++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 52 ++++++++++
- frontend/src/pages/kontrolle/StatusBadge.tsx | 14 +++
- frontend/src/pages/kontrolle/types.ts | 17 ++++
- frontend/src/pages/kontrolle/useKontrolle.ts | 171 +++++++++++++++++++++++++++++++
---
## 2026-09-04 00:45 00:45 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 263 +++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/services/kontrolle/__init__.py | 30 ++++++
- backend/app/services/kontrolle/erfassung.py | 153 ++++++++++++++++++++++++++++
- backend/app/services/kontrolle/exceptions.py | 17 ++++
- backend/app/services/{kontrolle.py => kontrolle/lifecycle.py} | 162 +----------------------------
- frontend/src/pages/AdminPage.tsx | 309 +++-----------------------------------------------------
- frontend/src/pages/KontrollPage.tsx | 240 ++++++-------------------------------------
- frontend/src/pages/admin/MaterialSection.tsx | 146 ++++++++++++++++++++++++++
- frontend/src/pages/admin/ObjektSection.tsx | 112 ++++++++++++++++++++
- frontend/src/pages/admin/StandortSection.tsx | 56 ++++++++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 52 ++++++++++
- frontend/src/pages/kontrolle/StatusBadge.tsx | 14 +++
- frontend/src/pages/kontrolle/types.ts | 17 ++++
- frontend/src/pages/kontrolle/useKontrolle.ts | 171 +++++++++++++++++++++++++++++++
---
## 2026-09-04 00:47 00:47 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 263 +++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/services/kontrolle/__init__.py | 30 ++++++
- backend/app/services/kontrolle/erfassung.py | 153 ++++++++++++++++++++++++++++
- backend/app/services/kontrolle/exceptions.py | 17 ++++
- backend/app/services/{kontrolle.py => kontrolle/lifecycle.py} | 162 +----------------------------
- frontend/src/pages/AdminPage.tsx | 309 +++-----------------------------------------------------
- frontend/src/pages/KontrollPage.tsx | 240 ++++++-------------------------------------
- frontend/src/pages/admin/MaterialSection.tsx | 146 ++++++++++++++++++++++++++
- frontend/src/pages/admin/ObjektSection.tsx | 112 ++++++++++++++++++++
- frontend/src/pages/admin/StandortSection.tsx | 56 ++++++++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 52 ++++++++++
- frontend/src/pages/kontrolle/StatusBadge.tsx | 14 +++
- frontend/src/pages/kontrolle/types.ts | 17 ++++
- frontend/src/pages/kontrolle/useKontrolle.ts | 171 +++++++++++++++++++++++++++++++
---
## 2026-09-04 00:47 00:48 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 263 +++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/services/kontrolle/__init__.py | 30 ++++++
- backend/app/services/kontrolle/erfassung.py | 153 ++++++++++++++++++++++++++++
- backend/app/services/kontrolle/exceptions.py | 17 ++++
- backend/app/services/{kontrolle.py => kontrolle/lifecycle.py} | 162 +----------------------------
- frontend/src/pages/AdminPage.tsx | 309 +++-----------------------------------------------------
- frontend/src/pages/KontrollPage.tsx | 240 ++++++-------------------------------------
- frontend/src/pages/admin/MaterialSection.tsx | 146 ++++++++++++++++++++++++++
- frontend/src/pages/admin/ObjektSection.tsx | 112 ++++++++++++++++++++
- frontend/src/pages/admin/StandortSection.tsx | 56 ++++++++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 52 ++++++++++
- frontend/src/pages/kontrolle/StatusBadge.tsx | 14 +++
- frontend/src/pages/kontrolle/types.ts | 17 ++++
- frontend/src/pages/kontrolle/useKontrolle.ts | 171 +++++++++++++++++++++++++++++++
---
## 2026-09-04 00:48 00:49 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 263 +++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/services/kontrolle/__init__.py | 30 ++++++
- backend/app/services/kontrolle/erfassung.py | 153 ++++++++++++++++++++++++++++
- backend/app/services/kontrolle/exceptions.py | 17 ++++
- backend/app/services/{kontrolle.py => kontrolle/lifecycle.py} | 162 +----------------------------
- frontend/src/pages/AdminPage.tsx | 309 +++-----------------------------------------------------
- frontend/src/pages/KontrollPage.tsx | 240 ++++++-------------------------------------
- frontend/src/pages/admin/MaterialSection.tsx | 146 ++++++++++++++++++++++++++
- frontend/src/pages/admin/ObjektSection.tsx | 112 ++++++++++++++++++++
- frontend/src/pages/admin/StandortSection.tsx | 56 ++++++++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 52 ++++++++++
- frontend/src/pages/kontrolle/StatusBadge.tsx | 14 +++
- frontend/src/pages/kontrolle/types.ts | 17 ++++
- frontend/src/pages/kontrolle/useKontrolle.ts | 171 +++++++++++++++++++++++++++++++
---
## 2026-09-04 00:49 00:50 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 569f58b Sprint 8: PWA-Icons ergänzt (bisher im Manifest referenziert, aber nicht vorhanden)
### Geänderte Dateien
- frontend/public/icon-192.png | Bin 0 -> 1997 bytes
- frontend/public/icon-512.png | Bin 0 -> 5853 bytes
---
## 2026-09-04 00:51 00:53 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- dcc75dd Sprint 8: Bereich/Kategorie/Objekttyp/Vorlage-CRUD im Admin-Portal
### Geänderte Dateien
- frontend/src/api/types.ts | 20 +++++++++++
- frontend/src/pages/AdminPage.tsx | 52 ++++++++++++++++++++-------
- frontend/src/pages/admin/BereichSection.tsx | 51 +++++++++++++++++++++++++++
- frontend/src/pages/admin/KategorieSection.tsx | 76 ++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/admin/ObjekttypSection.tsx | 86 +++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/admin/VorlageSection.tsx | 137 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-04 00:53 00:54 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- frontend/src/api/types.ts | 20 +++++++++++
- frontend/src/pages/AdminPage.tsx | 52 ++++++++++++++++++++-------
- frontend/src/pages/admin/BereichSection.tsx | 51 +++++++++++++++++++++++++++
- frontend/src/pages/admin/KategorieSection.tsx | 76 ++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/admin/ObjekttypSection.tsx | 86 +++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/admin/VorlageSection.tsx | 137 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-04 00:55 01:00 (4m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- f47cefc fix(import): Spalte D ist Ablaufdatum-Hinweis, keine Artikelnummer
### Geänderte Dateien
- backend/scripts/import_excel.py | 60 +++++++++++++++++++++++++++++++++++++++++-------------------
- ergebnisse/testphasen.md | 14 +++++++-------
---
## 2026-09-04 01:02 01:04 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- a6e68b0 Sprint 8: Ablaufdatum/Chargennummer/Seriennummer im Admin-Portal pflegbar
### Geänderte Dateien
- frontend/src/pages/AdminPage.tsx | 1 +
- frontend/src/pages/admin/ObjektPositionenPanel.tsx | 133 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/admin/ObjektSection.tsx | 27 +++++++++++---
---
## 2026-09-04 01:08 01:11 (3m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 0988f8d Ablauf/Charge/SN gehören zur Kontroll-Erfassung, nicht nur zur Admin-Pflege
### Geänderte Dateien
- backend/app/api/v1/endpoints/kontrollen.py | 3 +++
- backend/app/schemas/kontrolle.py | 10 +++++++++-
- backend/app/services/kontrolle/erfassung.py | 20 ++++++++++++++++++--
- backend/tests/test_kontrolle.py | 30 ++++++++++++++++++++++++++++++
- frontend/src/offline/queue.ts | 26 +++++++++++++++++++++++---
- frontend/src/pages/kontrolle/PositionCard.tsx | 45 +++++++++++++++++++++++++++++++++++++++------
- frontend/src/pages/kontrolle/types.ts | 3 +++
- frontend/src/pages/kontrolle/useKontrolle.ts | 19 +++++++++++++------
---
## 2026-09-04 01:11 01:11 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- backend/app/api/v1/endpoints/kontrollen.py | 3 +++
- backend/app/schemas/kontrolle.py | 10 +++++++++-
- backend/app/services/kontrolle/erfassung.py | 20 ++++++++++++++++++--
- backend/tests/test_kontrolle.py | 30 ++++++++++++++++++++++++++++++
- frontend/src/offline/queue.ts | 26 +++++++++++++++++++++++---
- frontend/src/pages/kontrolle/PositionCard.tsx | 45 +++++++++++++++++++++++++++++++++++++++------
- frontend/src/pages/kontrolle/types.ts | 3 +++
- frontend/src/pages/kontrolle/useKontrolle.ts | 19 +++++++++++++------
---
## 2026-09-04 01:12 01:12 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- backend/app/api/v1/endpoints/kontrollen.py | 3 +++
- backend/app/schemas/kontrolle.py | 10 +++++++++-
- backend/app/services/kontrolle/erfassung.py | 20 ++++++++++++++++++--
- backend/tests/test_kontrolle.py | 30 ++++++++++++++++++++++++++++++
- frontend/src/offline/queue.ts | 26 +++++++++++++++++++++++---
- frontend/src/pages/kontrolle/PositionCard.tsx | 45 +++++++++++++++++++++++++++++++++++++++------
- frontend/src/pages/kontrolle/types.ts | 3 +++
- frontend/src/pages/kontrolle/useKontrolle.ts | 19 +++++++++++++------
---
## 2026-09-04 01:12 01:13 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- backend/app/api/v1/endpoints/kontrollen.py | 3 +++
- backend/app/schemas/kontrolle.py | 10 +++++++++-
- backend/app/services/kontrolle/erfassung.py | 20 ++++++++++++++++++--
- backend/tests/test_kontrolle.py | 30 ++++++++++++++++++++++++++++++
- frontend/src/offline/queue.ts | 26 +++++++++++++++++++++++---
- frontend/src/pages/kontrolle/PositionCard.tsx | 45 +++++++++++++++++++++++++++++++++++++++------
- frontend/src/pages/kontrolle/types.ts | 3 +++
- frontend/src/pages/kontrolle/useKontrolle.ts | 19 +++++++++++++------
---
## 2026-09-04 08:45 08:45 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- backend/app/api/v1/endpoints/kontrollen.py | 3 +++
- backend/app/schemas/kontrolle.py | 10 +++++++++-
- backend/app/services/kontrolle/erfassung.py | 20 ++++++++++++++++++--
- backend/tests/test_kontrolle.py | 30 ++++++++++++++++++++++++++++++
- frontend/src/offline/queue.ts | 26 +++++++++++++++++++++++---
- frontend/src/pages/kontrolle/PositionCard.tsx | 45 +++++++++++++++++++++++++++++++++++++++------
- frontend/src/pages/kontrolle/types.ts | 3 +++
- frontend/src/pages/kontrolle/useKontrolle.ts | 19 +++++++++++++------
---
## 2026-09-04 08:53 08:54 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- db245c5 PWA: Passt-Button, Fortschrittsanzeige, Ablaufdatum-Farbcodierung in Kontrolle
### Geänderte Dateien
- DEVLOG.md | 279 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/KontrollPage.tsx | 19 +++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 14 +++-
---
## 2026-09-04 08:54 08:55 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 279 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/KontrollPage.tsx | 19 +++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 14 +++-
---
## 2026-09-04 08:55 08:55 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 279 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/KontrollPage.tsx | 19 +++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 14 +++-
---
## 2026-09-04 08:55 08:59 (3m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 279 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/KontrollPage.tsx | 19 +++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 14 +++-
---
## 2026-09-04 08:55 08:59 (3m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 279 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/KontrollPage.tsx | 19 +++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 14 +++-
---
## 2026-09-04 09:01 09:04 (3m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- d70558f Inline-Nachfüll-Dialog nach Abweichung in der Kontrolle (Karte 07)
### Geänderte Dateien
- DEVLOG.md | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/offline/queue.ts | 18 +++++++++++++++++-
- frontend/src/pages/KontrollPage.tsx | 29 ++++++++++++++++++++++-------
- frontend/src/pages/kontrolle/NachfuellDialog.tsx | 36 ++++++++++++++++++++++++++++++++++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 4 ++--
- frontend/src/pages/kontrolle/useKontrolle.ts | 32 +++++++++++++++++++++++++++++++-
---
## 2026-09-04 09:05 09:05 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/offline/queue.ts | 18 +++++++++++++++++-
- frontend/src/pages/KontrollPage.tsx | 29 ++++++++++++++++++++++-------
- frontend/src/pages/kontrolle/NachfuellDialog.tsx | 36 ++++++++++++++++++++++++++++++++++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 4 ++--
- frontend/src/pages/kontrolle/useKontrolle.ts | 32 +++++++++++++++++++++++++++++++-
---
## 2026-09-04 09:11 09:11 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/offline/queue.ts | 18 +++++++++++++++++-
- frontend/src/pages/KontrollPage.tsx | 29 ++++++++++++++++++++++-------
- frontend/src/pages/kontrolle/NachfuellDialog.tsx | 36 ++++++++++++++++++++++++++++++++++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 4 ++--
- frontend/src/pages/kontrolle/useKontrolle.ts | 32 +++++++++++++++++++++++++++++++-
---
## 2026-09-04 09:11 09:11 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/offline/queue.ts | 18 +++++++++++++++++-
- frontend/src/pages/KontrollPage.tsx | 29 ++++++++++++++++++++++-------
- frontend/src/pages/kontrolle/NachfuellDialog.tsx | 36 ++++++++++++++++++++++++++++++++++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 4 ++--
- frontend/src/pages/kontrolle/useKontrolle.ts | 32 +++++++++++++++++++++++++++++++-
---
## 2026-09-04 09:11 09:12 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 65 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/offline/queue.ts | 18 +++++++++++++++++-
- frontend/src/pages/KontrollPage.tsx | 29 ++++++++++++++++++++++-------
- frontend/src/pages/kontrolle/NachfuellDialog.tsx | 36 ++++++++++++++++++++++++++++++++++++
- frontend/src/pages/kontrolle/PositionCard.tsx | 4 ++--
- frontend/src/pages/kontrolle/useKontrolle.ts | 32 +++++++++++++++++++++++++++++++-
---
## 2026-09-04 09:12 09:14 (2m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 032126c fix(kontrolle): Abbruch löscht bereits nachgefüllten Fehlbestand nicht mehr
### Geänderte Dateien
- backend/app/services/kontrolle/lifecycle.py | 8 +++++++-
- backend/tests/test_kontrolle.py | 40 ++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-04 09:21 09:21 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- backend/app/services/kontrolle/lifecycle.py | 8 +++++++-
- backend/tests/test_kontrolle.py | 40 ++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-04 09:21 09:22 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- backend/app/services/kontrolle/lifecycle.py | 8 +++++++-
- backend/tests/test_kontrolle.py | 40 ++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-04 09:23 09:23 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- backend/app/services/kontrolle/lifecycle.py | 8 +++++++-
- backend/tests/test_kontrolle.py | 40 ++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-04 09:26 09:26 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- backend/app/services/kontrolle/lifecycle.py | 8 +++++++-
- backend/tests/test_kontrolle.py | 40 ++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-04 09:29 09:30 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 2c9ca3e Admin-Portal: Tab-Menü statt einer langen Scroll-Seite
### Geänderte Dateien
- frontend/src/pages/AdminPage.tsx | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------
---
## 2026-09-04 09:38 09:38 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- frontend/src/pages/AdminPage.tsx | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------
---
## 2026-09-04 09:43 09:43 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- frontend/src/pages/AdminPage.tsx | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-------------------------
---
## 2026-09-04 09:43 09:44 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 1987818 Admin-Portal: Benutzerverwaltung (anlegen, Rollen, aktivieren/deaktivieren)
### Geänderte Dateien
- frontend/src/api/types.ts | 11 +++++++
- frontend/src/pages/AdminPage.tsx | 14 +++++++--
- frontend/src/pages/admin/BenutzerSection.tsx | 117 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-04 09:44 09:45 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- frontend/src/api/types.ts | 11 +++++++
- frontend/src/pages/AdminPage.tsx | 14 +++++++--
- frontend/src/pages/admin/BenutzerSection.tsx | 117 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-04 09:47 09:47 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- frontend/src/api/types.ts | 11 +++++++
- frontend/src/pages/AdminPage.tsx | 14 +++++++--
- frontend/src/pages/admin/BenutzerSection.tsx | 117 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
---
## 2026-09-04 09:51 09:56 (4m)
**Beschreibung:** Claude Code Session
**Projekt:** backend
### Commits
- 2f11011 Admin-Portal: Bearbeiten für Bereich/Kategorie/Objekttyp/Standort/Benutzer, Vorlagen-Versionierung und Objekt-Duplizieren im Frontend nachgerüstet
### Geänderte Dateien
- DEVLOG.md | 212 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/api/v1/endpoints/stammdaten.py | 68 +++++++++++++++++++++++
- backend/app/schemas/stammdaten.py | 22 ++++++++
- backend/tests/test_stammdaten.py | 62 +++++++++++++++++++++
- frontend/src/api/types.ts | 9 ++++
- frontend/src/pages/admin/BenutzerSection.tsx | 92 ++++++++++++++++++++++++++++---
- frontend/src/pages/admin/BereichSection.tsx | 42 ++++++++++++++-
- frontend/src/pages/admin/KategorieSection.tsx | 43 ++++++++++++++-
- frontend/src/pages/admin/ObjektSection.tsx | 79 ++++++++++++++++++++++++---
- frontend/src/pages/admin/ObjekttypSection.tsx | 42 ++++++++++++++-
- frontend/src/pages/admin/StandortSection.tsx | 40 +++++++++++++-
- frontend/src/pages/admin/VorlageSection.tsx | 99 ++++++++++++++++++++++++++++++++--
---
## 2026-09-04 09:57 09:58 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 212 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/api/v1/endpoints/stammdaten.py | 68 +++++++++++++++++++++++
- backend/app/schemas/stammdaten.py | 22 ++++++++
- backend/tests/test_stammdaten.py | 62 +++++++++++++++++++++
- frontend/src/api/types.ts | 9 ++++
- frontend/src/pages/admin/BenutzerSection.tsx | 92 ++++++++++++++++++++++++++++---
- frontend/src/pages/admin/BereichSection.tsx | 42 ++++++++++++++-
- frontend/src/pages/admin/KategorieSection.tsx | 43 ++++++++++++++-
- frontend/src/pages/admin/ObjektSection.tsx | 79 ++++++++++++++++++++++++---
- frontend/src/pages/admin/ObjekttypSection.tsx | 42 ++++++++++++++-
- frontend/src/pages/admin/StandortSection.tsx | 40 +++++++++++++-
- frontend/src/pages/admin/VorlageSection.tsx | 99 ++++++++++++++++++++++++++++++++--
---
## 2026-09-04 10:14 10:14 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 212 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/api/v1/endpoints/stammdaten.py | 68 +++++++++++++++++++++++
- backend/app/schemas/stammdaten.py | 22 ++++++++
- backend/tests/test_stammdaten.py | 62 +++++++++++++++++++++
- frontend/src/api/types.ts | 9 ++++
- frontend/src/pages/admin/BenutzerSection.tsx | 92 ++++++++++++++++++++++++++++---
- frontend/src/pages/admin/BereichSection.tsx | 42 ++++++++++++++-
- frontend/src/pages/admin/KategorieSection.tsx | 43 ++++++++++++++-
- frontend/src/pages/admin/ObjektSection.tsx | 79 ++++++++++++++++++++++++---
- frontend/src/pages/admin/ObjekttypSection.tsx | 42 ++++++++++++++-
- frontend/src/pages/admin/StandortSection.tsx | 40 +++++++++++++-
- frontend/src/pages/admin/VorlageSection.tsx | 99 ++++++++++++++++++++++++++++++++--
---
## 2026-09-04 10:15 10:15 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 212 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/api/v1/endpoints/stammdaten.py | 68 +++++++++++++++++++++++
- backend/app/schemas/stammdaten.py | 22 ++++++++
- backend/tests/test_stammdaten.py | 62 +++++++++++++++++++++
- frontend/src/api/types.ts | 9 ++++
- frontend/src/pages/admin/BenutzerSection.tsx | 92 ++++++++++++++++++++++++++++---
- frontend/src/pages/admin/BereichSection.tsx | 42 ++++++++++++++-
- frontend/src/pages/admin/KategorieSection.tsx | 43 ++++++++++++++-
- frontend/src/pages/admin/ObjektSection.tsx | 79 ++++++++++++++++++++++++---
- frontend/src/pages/admin/ObjekttypSection.tsx | 42 ++++++++++++++-
- frontend/src/pages/admin/StandortSection.tsx | 40 +++++++++++++-
- frontend/src/pages/admin/VorlageSection.tsx | 99 ++++++++++++++++++++++++++++++++--
---
## 2026-09-04 10:15 10:15 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 212 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/api/v1/endpoints/stammdaten.py | 68 +++++++++++++++++++++++
- backend/app/schemas/stammdaten.py | 22 ++++++++
- backend/tests/test_stammdaten.py | 62 +++++++++++++++++++++
- frontend/src/api/types.ts | 9 ++++
- frontend/src/pages/admin/BenutzerSection.tsx | 92 ++++++++++++++++++++++++++++---
- frontend/src/pages/admin/BereichSection.tsx | 42 ++++++++++++++-
- frontend/src/pages/admin/KategorieSection.tsx | 43 ++++++++++++++-
- frontend/src/pages/admin/ObjektSection.tsx | 79 ++++++++++++++++++++++++---
- frontend/src/pages/admin/ObjekttypSection.tsx | 42 ++++++++++++++-
- frontend/src/pages/admin/StandortSection.tsx | 40 +++++++++++++-
- frontend/src/pages/admin/VorlageSection.tsx | 99 ++++++++++++++++++++++++++++++++--
---
## 2026-09-04 10:17 10:17 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 212 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/app/api/v1/endpoints/stammdaten.py | 68 +++++++++++++++++++++++
- backend/app/schemas/stammdaten.py | 22 ++++++++
- backend/tests/test_stammdaten.py | 62 +++++++++++++++++++++
- frontend/src/api/types.ts | 9 ++++
- frontend/src/pages/admin/BenutzerSection.tsx | 92 ++++++++++++++++++++++++++++---
- frontend/src/pages/admin/BereichSection.tsx | 42 ++++++++++++++-
- frontend/src/pages/admin/KategorieSection.tsx | 43 ++++++++++++++-
- frontend/src/pages/admin/ObjektSection.tsx | 79 ++++++++++++++++++++++++---
- frontend/src/pages/admin/ObjekttypSection.tsx | 42 ++++++++++++++-
- frontend/src/pages/admin/StandortSection.tsx | 40 +++++++++++++-
- frontend/src/pages/admin/VorlageSection.tsx | 99 ++++++++++++++++++++++++++++++++--
---
## 2026-09-04 10:21 10:24 (3m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- a2877f5 Feste Fächer-Liste je Objekttyp (Vorlagen-Positionen: Dropdown + Sonstiges)
### Geänderte Dateien
- DEVLOG.md | 132 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/alembic/versions/0004_add_fach.py | 36 ++++++++++++++++++++
- backend/app/api/v1/endpoints/stammdaten.py | 56 ++++++++++++++++++++++++++++++-
- backend/app/models/stammdaten.py | 13 ++++++++
- backend/app/schemas/stammdaten.py | 16 +++++++++
- backend/tests/test_stammdaten.py | 56 +++++++++++++++++++++++++++++++
- frontend/src/api/types.ts | 7 ++++
- frontend/src/pages/AdminPage.tsx | 15 +++++++--
- frontend/src/pages/admin/FachAuswahl.tsx | 54 ++++++++++++++++++++++++++++++
- frontend/src/pages/admin/FachSection.tsx | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/admin/VorlageSection.tsx | 26 +++++++--------
---
## 2026-09-04 10:24 10:25 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 132 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/alembic/versions/0004_add_fach.py | 36 ++++++++++++++++++++
- backend/app/api/v1/endpoints/stammdaten.py | 56 ++++++++++++++++++++++++++++++-
- backend/app/models/stammdaten.py | 13 ++++++++
- backend/app/schemas/stammdaten.py | 16 +++++++++
- backend/tests/test_stammdaten.py | 56 +++++++++++++++++++++++++++++++
- frontend/src/api/types.ts | 7 ++++
- frontend/src/pages/AdminPage.tsx | 15 +++++++--
- frontend/src/pages/admin/FachAuswahl.tsx | 54 ++++++++++++++++++++++++++++++
- frontend/src/pages/admin/FachSection.tsx | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/admin/VorlageSection.tsx | 26 +++++++--------
---
## 2026-09-04 10:31 10:32 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 132 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
- backend/alembic/versions/0004_add_fach.py | 36 ++++++++++++++++++++
- backend/app/api/v1/endpoints/stammdaten.py | 56 ++++++++++++++++++++++++++++++-
- backend/app/models/stammdaten.py | 13 ++++++++
- backend/app/schemas/stammdaten.py | 16 +++++++++
- backend/tests/test_stammdaten.py | 56 +++++++++++++++++++++++++++++++
- frontend/src/api/types.ts | 7 ++++
- frontend/src/pages/AdminPage.tsx | 15 +++++++--
- frontend/src/pages/admin/FachAuswahl.tsx | 54 ++++++++++++++++++++++++++++++
- frontend/src/pages/admin/FachSection.tsx | 99 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
- frontend/src/pages/admin/VorlageSection.tsx | 26 +++++++--------
---
## 2026-09-04 16:59 16:59 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 132 ++++++++++++++++++++++++++++
- backend/alembic/versions/0004_add_fach.py | 36 ++++++++
- backend/app/api/v1/endpoints/stammdaten.py | 56 +++++++++++-
- backend/app/models/stammdaten.py | 13 +++
- backend/app/schemas/stammdaten.py | 16 ++++
- backend/tests/test_stammdaten.py | 56 ++++++++++++
- frontend/src/api/types.ts | 7 ++
- frontend/src/pages/AdminPage.tsx | 15 +++-
- frontend/src/pages/admin/FachAuswahl.tsx | 54 ++++++++++++
- frontend/src/pages/admin/FachSection.tsx | 99 +++++++++++++++++++++
- frontend/src/pages/admin/VorlageSection.tsx | 26 +++---
---
## 2026-09-04 17:01 17:01 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** backend
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 132 ++++++++++++++++++++++++++++
- backend/alembic/versions/0004_add_fach.py | 36 ++++++++
- backend/app/api/v1/endpoints/stammdaten.py | 56 +++++++++++-
- backend/app/models/stammdaten.py | 13 +++
- backend/app/schemas/stammdaten.py | 16 ++++
- backend/tests/test_stammdaten.py | 56 ++++++++++++
- frontend/src/api/types.ts | 7 ++
- frontend/src/pages/AdminPage.tsx | 15 +++-
- frontend/src/pages/admin/FachAuswahl.tsx | 54 ++++++++++++
- frontend/src/pages/admin/FachSection.tsx | 99 +++++++++++++++++++++
- frontend/src/pages/admin/VorlageSection.tsx | 26 +++---
---
## 2026-09-04 17:03 17:29 (25m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 132 ++++++++++++++++++++++++++++
- backend/alembic/versions/0004_add_fach.py | 36 ++++++++
- backend/app/api/v1/endpoints/stammdaten.py | 56 +++++++++++-
- backend/app/models/stammdaten.py | 13 +++
- backend/app/schemas/stammdaten.py | 16 ++++
- backend/tests/test_stammdaten.py | 56 ++++++++++++
- frontend/src/api/types.ts | 7 ++
- frontend/src/pages/AdminPage.tsx | 15 +++-
- frontend/src/pages/admin/FachAuswahl.tsx | 54 ++++++++++++
- frontend/src/pages/admin/FachSection.tsx | 99 +++++++++++++++++++++
- frontend/src/pages/admin/VorlageSection.tsx | 26 +++---
---
## 2026-09-04 17:33 17:33 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** backend
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 132 ++++++++++++++++++++++++++++
- backend/alembic/versions/0004_add_fach.py | 36 ++++++++
- backend/app/api/v1/endpoints/stammdaten.py | 56 +++++++++++-
- backend/app/models/stammdaten.py | 13 +++
- backend/app/schemas/stammdaten.py | 16 ++++
- backend/tests/test_stammdaten.py | 56 ++++++++++++
- frontend/src/api/types.ts | 7 ++
- frontend/src/pages/AdminPage.tsx | 15 +++-
- frontend/src/pages/admin/FachAuswahl.tsx | 54 ++++++++++++
- frontend/src/pages/admin/FachSection.tsx | 99 +++++++++++++++++++++
- frontend/src/pages/admin/VorlageSection.tsx | 26 +++---
---
## 2026-09-04 17:35 17:35 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 69e7d0c Karte 10: Geräte-Code für Objektpositionen (Code128-Vorbereitung) + Code-Vorschlag
### Geänderte Dateien
- DEVLOG.md | 147 +++++++++++++++++++++
- backend/DEVLOG.md | 78 +++++++++++
- .../versions/0005_add_objektposition_code.py | 32 +++++
- backend/app/api/v1/endpoints/objekte.py | 58 +++++++-
- backend/app/models/objektposition.py | 4 +
- backend/app/schemas/objekt.py | 2 +
- backend/app/services/objekte.py | 21 +++
- backend/tests/test_objekte.py | 83 ++++++++++++
---
## 2026-09-04 17:35 17:35 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 147 +++++++++++++++++++++
- backend/DEVLOG.md | 78 +++++++++++
- .../versions/0005_add_objektposition_code.py | 32 +++++
- backend/app/api/v1/endpoints/objekte.py | 58 +++++++-
- backend/app/models/objektposition.py | 4 +
- backend/app/schemas/objekt.py | 2 +
- backend/app/services/objekte.py | 21 +++
- backend/tests/test_objekte.py | 83 ++++++++++++
---
## 2026-09-04 17:37 17:37 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** frontend
### Commits
- f06d704 Frontend: Code-Vorschlag beim Objekt-Anlegen/Duplizieren einbinden
### Geänderte Dateien
- DEVLOG.md | 36 +++++++++++++++++++
- frontend/DEVLOG.md | 20 +++++++++++
- frontend/src/pages/admin/ObjektSection.tsx | 58 +++++++++++++++++++++++++++++-
---
## 2026-09-04 17:39 17:39 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** frontend
### Commits
- 6cf28cc Karte 10: Kamera-Scan im Frontend (Objekt-Code, Scan-First-Einstieg)
### Geänderte Dateien
- DEVLOG.md | 13 ++++++
- frontend/DEVLOG.md | 13 ++++++
- frontend/package.json | 1 +
- frontend/src/components/BarcodeScanner.tsx | 64 ++++++++++++++++++++++++++++++
- frontend/src/pages/ObjektListPage.tsx | 48 ++++++++++++++++------
- frontend/src/styles/global.css | 24 +++++++++++
---
## 2026-09-04 17:57 17:57 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** flutter_app
### Commits
- d8d2816 Karte 10: Kamera-Scan in Flutter-App (Objekt-Code, Scan-First-Einstieg)
### Geänderte Dateien
- DEVLOG.md | 16 +++++++
- flutter_app/DEVLOG.md | 18 ++++++++
- flutter_app/README.md | 18 +++++++-
- flutter_app/lib/screens/objekt_list_screen.dart | 59 ++++++++++++++++++++++---
- flutter_app/lib/screens/scanner_screen.dart | 33 ++++++++++++++
- flutter_app/pubspec.yaml | 1 +
---
## 2026-09-04 17:59 17:59 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** backend
### Commits
- 66757e4 Karte 10: Code128-Label als PDF (Objekt + Geräte-Exemplar)
### Geänderte Dateien
- DEVLOG.md | 16 +++++++++
- backend/DEVLOG.md | 16 +++++++++
- backend/app/api/v1/endpoints/objekte.py | 40 ++++++++++++++++++++++-
- backend/app/services/label.py | 57 +++++++++++++++++++++++++++++++++
- backend/pyproject.toml | 2 ++
- backend/tests/test_objekte.py | 49 ++++++++++++++++++++++++++++
---
## 2026-09-04 18:00 18:01 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 16 +++++++++
- backend/DEVLOG.md | 16 +++++++++
- backend/app/api/v1/endpoints/objekte.py | 40 ++++++++++++++++++++++-
- backend/app/services/label.py | 57 +++++++++++++++++++++++++++++++++
- backend/pyproject.toml | 2 ++
- backend/tests/test_objekte.py | 49 ++++++++++++++++++++++++++++
---
## 2026-09-04 18:01 18:01 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- 7f06d1c Karte 10: Test-Label-Skript + Druck-/Scan-Testcheckliste
### Geänderte Dateien
- DEVLOG.md | 32 ++++++++++++++++++++++++++++++++
- arbeitskarten/10_qr_barcode.md | 15 +++++++++++++++
- backend/scripts/test_label_erzeugen.py | 34 ++++++++++++++++++++++++++++++++++
---
## 2026-09-04 18:04 18:04 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** backend
### Commits
- fb676a4 Karte 12: Eskalationslogik für lange offene Fehlbestände
### Geänderte Dateien
- DEVLOG.md | 13 +++
- arbeitskarten/12_eskalation.md | 5 ++
- backend/DEVLOG.md | 13 +++
- .../alembic/versions/0006_add_eskalation_felder.py | 50 +++++++++++
- backend/app/api/v1/api.py | 2 +
- backend/app/api/v1/endpoints/eskalation.py | 47 +++++++++++
- backend/app/models/__init__.py | 2 +
- backend/app/models/eskalation.py | 16 ++++
- backend/app/models/fehlbestand.py | 4 +
- backend/app/schemas/eskalation.py | 17 ++++
- backend/app/services/eskalation.py | 98 ++++++++++++++++++++++
- backend/tests/test_eskalation.py | 73 ++++++++++++++++
---
## 2026-09-04 18:07 18:08 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** frontend
### Commits
- e0cbf4b Playwright-E2E-Tests für die PWA (Login, Sperrlogik, Fortschritt, Offline-Queue)
### Geänderte Dateien
- DEVLOG.md | 22 +++++++++
- frontend/.gitignore | 3 ++
- frontend/DEVLOG.md | 22 +++++++++
- frontend/README.md | 18 +++++--
- frontend/e2e/fortschritt.spec.ts | 41 ++++++++++++++++
- frontend/e2e/login.spec.ts | 30 ++++++++++++
- frontend/e2e/mockApi.ts | 98 ++++++++++++++++++++++++++++++++++++++
- frontend/e2e/offline-queue.spec.ts | 65 +++++++++++++++++++++++++
- frontend/e2e/sperrlogik.spec.ts | 34 +++++++++++++
- frontend/package.json | 5 +-
- frontend/playwright.config.ts | 21 ++++++++
---
## 2026-09-04 18:15 18:20 (5m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 22 +++++++++
- frontend/.gitignore | 3 ++
- frontend/DEVLOG.md | 22 +++++++++
- frontend/README.md | 18 +++++--
- frontend/e2e/fortschritt.spec.ts | 41 ++++++++++++++++
- frontend/e2e/login.spec.ts | 30 ++++++++++++
- frontend/e2e/mockApi.ts | 98 ++++++++++++++++++++++++++++++++++++++
- frontend/e2e/offline-queue.spec.ts | 65 +++++++++++++++++++++++++
- frontend/e2e/sperrlogik.spec.ts | 34 +++++++++++++
- frontend/package.json | 5 +-
- frontend/playwright.config.ts | 21 ++++++++
---
## 2026-09-04 18:27 18:27 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 22 +++++++++
- frontend/.gitignore | 3 ++
- frontend/DEVLOG.md | 22 +++++++++
- frontend/README.md | 18 +++++--
- frontend/e2e/fortschritt.spec.ts | 41 ++++++++++++++++
- frontend/e2e/login.spec.ts | 30 ++++++++++++
- frontend/e2e/mockApi.ts | 98 ++++++++++++++++++++++++++++++++++++++
- frontend/e2e/offline-queue.spec.ts | 65 +++++++++++++++++++++++++
- frontend/e2e/sperrlogik.spec.ts | 34 +++++++++++++
- frontend/package.json | 5 +-
- frontend/playwright.config.ts | 21 ++++++++
---
## 2026-09-04 18:27 18:29 (1m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
- c71df1a Karte 12: systemd-Timer für den täglichen Eskalations-Prüflauf
### Geänderte Dateien
- DEVLOG.md | 63 ++++++++++++++++++++++++++++++++
- backend/scripts/eskalation_pruefen.py | 37 +++++++++++++++++++
- deploy/README.md | 16 ++++++++
- deploy/mabea-eskalation.service.template | 17 +++++++++
- deploy/mabea-eskalation.timer.template | 12 ++++++
---
## 2026-09-04 18:33 18:33 (0m)
**Beschreibung:** Claude Code Session
**Projekt:** asb-material
### Commits
Keine Commits in dieser Session.
### Geänderte Dateien
- DEVLOG.md | 63 ++++++++++++++++++++++++++++++++
- backend/scripts/eskalation_pruefen.py | 37 +++++++++++++++++++
- deploy/README.md | 16 ++++++++
- deploy/mabea-eskalation.service.template | 17 +++++++++
- deploy/mabea-eskalation.timer.template | 12 ++++++
---