Files
timemaster/frontend/DEVLOG.md
T
patrick 0f83d13c0c feat(kiosk): Stufe 2 – Ed25519-Auth, CLI-Tool, neue KioskDevicesPage
2A – Backend Ed25519-Verifizierung:
- app/core/kiosk_security.py (NEU): verify_kiosk_request() Dependency
  - Timestamp-Check (30s Drift), Nonce-Cache (Redis/In-Memory), IP-Whitelist
  - Ed25519-Signatur über METHOD+PATH+TIMESTAMP+NONCE+sha256(BODY)
  - PEM + OpenSSH Key-Format unterstützt
- app/routers/kiosk.py: approve/revoke Endpunkte, POST /heartbeat (Ed25519-signiert)
- app/services/kiosk_service.py: token-basierte Methoden entfernt, approve/revoke/heartbeat
- app/schemas/kiosk.py: KioskDeviceOut mit heartbeat_status, HeartbeatRequest/Response

2B – CLI-Tool:
- cli.py (NEU, 529 Zeilen): Typer-CLI mit kiosk add/list/approve/revoke/info
  - Public-Key-Fingerprint (SHA256), Rich-Tabellen, CIDR-Validierung
  - Direkter DB-Zugriff mit RLS-Bypass

2C – Frontend:
- KioskDevicesPage.tsx: Zwei-Tab-Layout (Wartet/Aktiv), Status-Ampel,
  Auto-Refresh 30s, Ed25519-Workflow (kein Token mehr)
- Layout.tsx: KioskHealthBadge (online/total, 30s Refresh, nur COMPANY_ADMIN)

requirements.txt: typer>=0.12.0, rich>=13.7.0

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-24 12:13:46 +02:00

9.2 KiB
Raw Blame History

frontend Dev Log

2026-03-28 22:34 22:34 (0m)

Beschreibung: Claude Code Session Projekt: archivmail

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-28 22:42 23:11 (28m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-28 23:13 23:18 (5m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-28 23:18 23:19 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-28 23:20 23:21 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-28 23:28 23:32 (3m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-28 23:32 23:35 (2m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-28 23:37 23:38 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-28 23:44 23:44 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-28 23:50 23:52 (1m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-28 23:55 23:55 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-28 23:56 23:58 (1m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-29 00:13 00:14 (1m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-29 00:14 00:25 (10m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-29 00:27 00:28 (1m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-03-29 00:29 00:29 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-04-06 23:38 23:43 (5m)

Beschreibung: Claude Code Session Projekt: timemaster

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-04-06 23:44 23:44 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-05 19:54 22:28 (2h 33m)

Beschreibung: Claude Code Session Projekt: timemaster

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-06 10:25 10:27 (2m)

Beschreibung: Claude Code Session Projekt: timemaster

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-06 10:28 10:29 (1m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-06 10:35 10:37 (1m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-06 10:39 10:41 (1m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-06 11:20 11:21 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-06 12:47 12:47 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-06 12:47 15:57 (3h 09m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-06 15:58 16:00 (2m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-06 23:13 23:16 (2m)

Beschreibung: Claude Code Session Projekt: timemaster

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-06 23:19 23:19 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-06 23:25 23:25 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-07 00:21 00:22 (1m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-07 00:24 00:24 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-07 00:24 00:25 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-07 00:27 00:27 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-07 10:06 10:07 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-11 22:48 22:56 (7m)

Beschreibung: Claude Code Session Projekt: timemaster

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-23 19:22 19:39 (17m)

Beschreibung: Claude Code Session Projekt: timemaster

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-23 19:56 19:58 (2m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-23 20:00 20:00 (0m)

Beschreibung: Claude Code Session Projekt: frontend

Commits

Keine Commits in dieser Session.

Geänderte Dateien

Keine Änderungen ermittelbar.


2026-05-23 22:38 22:42 (3m)

Beschreibung: Claude Code Session Projekt: timemaster

Commits

Keine Commits in dieser Session.

Geänderte Dateien

  • DEVLOG.md | 16 ++
  • backend/app/routers/absences.py | 10 -
  • backend/app/routers/caldav.py | 2 -
  • backend/app/routers/kiosk.py | 3 -
  • backend/app/routers/ldap.py | 2 -
  • backend/app/routers/projects.py | 2 -
  • backend/app/routers/smtp.py | 1 -
  • backend/app/routers/time_entries.py | 10 -
  • backend/migrations/env.py | 4 -
  • .../migrations/versions/0024_row_level_security.py | 223 +++++----------------
  • backend/tests/conftest.py | 48 +++++
  • backend/tests/test_rls.py | 190 ++++++++++++++++++

2026-05-24 11:59 12:01 (2m)

Beschreibung: Claude Code Session Projekt: timemaster

Commits

  • 62ef6c2 feat: Live-Stempel-Uhr, Break-UI, Balance-Widget, Approval-Queue + PDF-Export (WeasyPrint)

Geänderte Dateien

  • DEVLOG.md | 128 +++++++
  • backend/app/routers/absence.py | 159 +++++++++
  • backend/app/routers/absence_service.py | 615 ++++++++++++++++++++++++++++++++
  • backend/requirements.txt | 1 +
  • backend/tests/test_reports.py | 44 +++
  • frontend/src/pages/TimeTrackingPage.tsx | 521 +++++++++++++++++++--------