|
|
08c32bcf0f
|
feat(auth): Story 2.1 — In-Memory Rate-Limiter (pro Key)
|
2026-07-07 22:36:10 +02:00 |
|
|
|
07f1bccff0
|
feat(auth): Story 1.5 — atomare, idempotente Migration Alt-Daten → Admin
|
2026-07-07 22:34:30 +02:00 |
|
|
|
c994dbf3b5
|
feat(auth): Story 1.4 — seedAdmin + Fail-Fast auf ADMIN_EMAIL
|
2026-07-07 22:33:14 +02:00 |
|
|
|
c1fc60cf02
|
feat(auth): Story 1.3 — Sessions (idle+absolut, gedrosselter last_seen, delete)
|
2026-07-07 22:30:54 +02:00 |
|
|
|
fb708912d7
|
feat(auth): Story 1.2 — normalizeEmail + Login-Token (SHA-256, einmalig, 30min)
|
2026-07-07 22:29:03 +02:00 |
|
|
|
b2dbd31b41
|
feat(auth): Story 1.1 — Auth-Schema (users/tokens/sessions/audit) + foreign_keys + audit-Helper
Fuegt users/login_tokens/sessions/audit_log Tabellen + FK-Indizes zu
server/db.js hinzu (foreign_keys=ON fuer CASCADE), plus server/audit.js
(append-only, keine PII). Bestehende documents/history-Tabellen und
exports unveraendert. TDD: server/auth-schema.test.js zuerst rot,
dann gruen; volle Suite (24 Tests) regressionsfrei.
|
2026-07-07 22:21:59 +02:00 |
|
|
|
97e58903b8
|
feat(backend): automatisches taegliches SQLite-Online-Backup
|
2026-07-07 15:50:34 +02:00 |
|
|
|
45503f03ee
|
feat(backend): GET/PUT /api/state mit Dokument-Persistenz
|
2026-07-07 15:46:48 +02:00 |
|
|
|
9714d845bb
|
feat(backend): SQLite-Schicht mit WAL, Dokumenten und Historie
|
2026-07-07 15:43:30 +02:00 |
|
|
|
3b0632c4b9
|
feat(backend): Express-Server liefert statisch + /api/health
|
2026-07-07 15:40:06 +02:00 |
|