Commit Graph

  • 472fcf82b8 docs: finalize domain-test-checklist + session log + roadmap (test safety net, 100% coverage) main Bas van Rossem 2026-07-23 15:40:49 +02:00
  • a53a253f91 test(admin): cover lib/api fetch wrapper (close Phase C coverage gap) Bas van Rossem 2026-07-23 15:39:25 +02:00
  • a30441b2a2 test(worker): Stopwatch + reconcile — fill gaps + lifecycle test Bas van Rossem 2026-07-23 15:33:03 +02:00
  • 75c5a9f350 test(admin): Activities + app/nav — fill gaps + lifecycle test Bas van Rossem 2026-07-23 15:18:59 +02:00
  • 8a6bc9ea7d test(admin): Users — fill gaps + lifecycle test Bas van Rossem 2026-07-23 15:07:12 +02:00
  • 5aa6febd65 test(admin): Reports + date-range — fill gaps + lifecycle test Bas van Rossem 2026-07-23 14:53:38 +02:00
  • e7eefe8f62 test(admin): Sessions + SessionForm — fill gaps + lifecycle test Bas van Rossem 2026-07-23 14:44:32 +02:00
  • 77db308e41 test(admin): Live view — fill gaps + lifecycle test Bas van Rossem 2026-07-23 14:30:26 +02:00
  • 64911a0052 test(admin): Auth (admin-only gate) — fill gaps + lifecycle test Bas van Rossem 2026-07-23 14:25:04 +02:00
  • e174c29a77 test(worker): lib/api + app/nav — fill gaps + lifecycle test Bas van Rossem 2026-07-23 14:15:48 +02:00
  • 32bdaa3e31 test(worker): Account — fill gaps + lifecycle test Bas van Rossem 2026-07-23 14:07:14 +02:00
  • 13cbc50c4f test(worker): History — fill gaps + lifecycle test Bas van Rossem 2026-07-23 14:03:04 +02:00
  • 36d4754722 test(worker): Auth (context/storage/login) — fill gaps + lifecycle test Bas van Rossem 2026-07-23 13:50:33 +02:00
  • 9c99d56f99 test(api): Admin users — fill gaps + lifecycle test Bas van Rossem 2026-07-23 13:43:59 +02:00
  • 31d13a8381 test(api): Reports + admin export — fill gaps + lifecycle test Bas van Rossem 2026-07-22 13:03:04 +02:00
  • bdf65ae685 test(api): Admin sessions — fill gaps + lifecycle test Bas van Rossem 2026-07-22 12:41:52 +02:00
  • b72076ee15 test(api): Worker export/CSV — fill gaps + lifecycle test Bas van Rossem 2026-07-22 12:24:04 +02:00
  • 9ecbf952d3 test(api): Work-sessions — fill gaps + lifecycle test Bas van Rossem 2026-07-22 12:14:32 +02:00
  • af7251398c test(api): Activities — fill gaps + lifecycle test Bas van Rossem 2026-07-22 12:01:03 +02:00
  • e6e4ca0a1e test(api): Auth & /me — fill gaps + lifecycle test Bas van Rossem 2026-07-22 11:50:32 +02:00
  • 2fa8aa9154 test(api): Infra (health/db/schema/seed/env/migrate) — fill gaps + lifecycle test Bas van Rossem 2026-07-22 11:39:34 +02:00
  • 0564fab1e6 docs: domain-test-checklist skeleton + coverage baseline (Plane SL-70) Bas van Rossem 2026-07-22 11:28:01 +02:00
  • f872daf117 test(api): add resetDb helper + per-test isolation (proof: sessions suite) Bas van Rossem 2026-07-22 11:28:01 +02:00
  • 3c79e51e99 test: add @vitest/coverage-v8 + test:coverage to all workspaces Bas van Rossem 2026-07-22 11:28:01 +02:00
  • 715e3c9e30 docs(plan): per-domain test safety net implementation plan Bas van Rossem 2026-07-22 11:20:02 +02:00
  • 32412fa88b docs(spec): set near-100% per-domain coverage as the working target Bas van Rossem 2026-07-22 11:14:58 +02:00
  • f547cef8e8 docs(spec): per-domain test safety net design Bas van Rossem 2026-07-22 11:12:13 +02:00
  • 37f7bd695c docs: Phase 4 descoped — QR is an external app-URL link, no workbench build Bas van Rossem 2026-07-22 10:51:36 +02:00
  • 8d303dabcb docs: phase 3b.3 user-management session log + roadmap (Phase 3 complete) Bas van Rossem 2026-06-24 23:14:59 +02:00
  • b9aa24c5ae harden(api): adminGuard rejects banned admins; fix mixed-case create + real last-admin guard coverage Bas van Rossem 2026-06-24 23:12:40 +02:00
  • 0f42960f00 feat(admin): Gebruikers screen (list, create, role, password, deactivate) Bas van Rossem 2026-06-24 23:03:34 +02:00
  • 4b80898b0e feat(api): admin reset-password endpoint Bas van Rossem 2026-06-24 22:57:35 +02:00
  • 40977f8abd feat(api): deactivate/reactivate users (ban + revoke sessions) with guards Bas van Rossem 2026-06-24 22:54:02 +02:00
  • 88b7773317 feat(api): set user role with self-demote + last-admin guards Bas van Rossem 2026-06-24 22:50:52 +02:00
  • 2b4b633961 feat(api): admin-users router with enriched roster + user creation Bas van Rossem 2026-06-24 22:46:59 +02:00
  • a32406de69 refactor(api): extract adminGuard + add user-management contracts Bas van Rossem 2026-06-24 22:42:35 +02:00
  • 4463a2e41a docs(plan): phase 3b.3 user management implementation plan Bas van Rossem 2026-06-24 22:39:15 +02:00
  • 6e4ce6b472 docs(spec): phase 3b.3 user management design Bas van Rossem 2026-06-24 22:33:59 +02:00
  • bbf29120ac docs: phase 3b.2 reports/export session log + roadmap note Bas van Rossem 2026-06-24 16:44:17 +02:00
  • 8d75be0462 feat(admin): Rapporten screen with filters, totals, breakdowns + CSV export Bas van Rossem 2026-06-24 16:40:25 +02:00
  • 8ad2e69ec3 feat(admin): reports API client (useReport + downloadExport) Bas van Rossem 2026-06-24 16:33:28 +02:00
  • d33fcb7cce feat(api): admin all-users filtered CSV export Bas van Rossem 2026-06-24 16:30:17 +02:00
  • 4b213e25a8 feat(api): admin report endpoint + ReportResponse contracts Bas van Rossem 2026-06-24 16:25:36 +02:00
  • 01fa18f401 refactor(api): extract buildSessionsCsv shared by worker + admin exports Bas van Rossem 2026-06-24 16:22:06 +02:00
  • eac1eed71a docs(plan): phase 3b.2 reports + all-users export implementation plan Bas van Rossem 2026-06-24 16:18:15 +02:00
  • 3eccdef313 docs(spec): phase 3b.2 reports + all-users export design Bas van Rossem 2026-06-24 15:46:24 +02:00
  • 84677080fc docs: phase 3b.1 manual-sessions session log + roadmap note Bas van Rossem 2026-06-17 22:54:18 +02:00
  • 7d3daaa760 feat(worker): poll + reconcile stopwatch to server (admin stop/cancel) Bas van Rossem 2026-06-17 22:50:31 +02:00
  • f1ec249ee7 feat(admin): stop/cancel an active session from the live view Bas van Rossem 2026-06-17 22:47:05 +02:00
  • 69b46bee04 feat(admin): manual session create/edit form Bas van Rossem 2026-06-17 22:44:06 +02:00
  • b5366413b6 feat(admin): sessions management screen (list + filter + actions) Bas van Rossem 2026-06-17 22:38:28 +02:00
  • 53c66ee144 feat(api): admin manual-session create/edit/stop/discard + users roster Bas van Rossem 2026-06-17 22:32:58 +02:00
  • 7d1e816fe2 feat(ci): set database location to local folder Bas van Rossem 2026-06-17 22:28:55 +02:00
  • 00993c67da feat(shared): manual-session create/update contracts Bas van Rossem 2026-06-17 22:28:02 +02:00
  • 9d21576014 docs: spec + plan for phase 3b.1 manual session entry/edit + admin stop/fix Bas van Rossem 2026-06-17 22:25:28 +02:00
  • 70ac27ec8e style: align oxfmt to trailing-comma 'all' and normalize code Bas van Rossem 2026-06-17 21:36:18 +02:00
  • 1807f2b6d6 docs: pause-accounting + reorder session log Bas van Rossem 2026-06-17 21:24:16 +02:00
  • e48df48376 feat(admin): reorder handelingen with up/down arrows Bas van Rossem 2026-06-17 21:18:07 +02:00
  • 0b0a6bd073 feat(admin): show paused sessions in live view; reset to live on logout Bas van Rossem 2026-06-17 21:14:15 +02:00
  • a7c8925b3c feat(deploy): build + serve worker and admin as static nginx images Bas van Rossem 2026-06-17 21:11:32 +02:00
  • 1765f4036c fix(worker): show paused time in history; reset to stopwatch on logout Bas van Rossem 2026-06-17 21:10:01 +02:00
  • ce396ecf2d feat(worker): server-authoritative pause/resume on the stopwatch Bas van Rossem 2026-06-17 21:06:10 +02:00
  • 56e0162230 feat(api): orderable activities + admin reorder endpoint Bas van Rossem 2026-06-17 20:58:06 +02:00
  • 974ecb120d feat(api): server-authoritative pause/resume + worked-time stop + CSV paused Bas van Rossem 2026-06-17 20:54:42 +02:00
  • 0d82b6efbc feat(shared,api): add pause + sort_order columns and contracts Bas van Rossem 2026-06-17 20:49:56 +02:00
  • eae9a53a26 fix(docker): drop COPY .yarn/ — dir is gitignored, absent in CI builds Bas van Rossem 2026-06-17 20:45:53 +02:00
  • cbfcb4a414 docs: spec + plan for pause accounting, reorder, login-tab fix Bas van Rossem 2026-06-17 20:43:19 +02:00
  • 660cbe50c8 ci(docker): build and push image to Gitea registry on push to main Bas van Rossem 2026-06-17 20:42:58 +02:00
  • 76ad235c9f docs(admin): phase 3a session log + roadmap status Bas van Rossem 2026-06-17 19:17:20 +02:00
  • c0d9d21991 feat(admin): activity management (handelingen CRUD) Bas van Rossem 2026-06-17 19:11:50 +02:00
  • 67dd0d398f feat(admin): live active-work view (5s refresh) Bas van Rossem 2026-06-17 19:07:36 +02:00
  • 286e2d29db feat(admin): sidebar shell + routing Bas van Rossem 2026-06-17 19:03:35 +02:00
  • 77659edf8e feat(admin): bearer auth with admin-only gate + login screen Bas van Rossem 2026-06-17 18:59:43 +02:00
  • 682a9dce44 feat(admin): scaffold Vite+React admin workspace Bas van Rossem 2026-06-17 18:56:28 +02:00
  • 02b7522b87 feat(api): include role in /api/me + allow admin origin in CORS Bas van Rossem 2026-06-17 18:53:39 +02:00
  • bb0a0b2a57 docs(admin): fold admin-origin CORS into phase 3a Task 1 Bas van Rossem 2026-06-17 18:49:16 +02:00
  • 7cdc88e824 docs(admin): phase 3a spec + implementation plan Bas van Rossem 2026-06-17 18:46:11 +02:00
  • 6fce7a7197 docs(roadmap): fold activity-management UI port into Phase 3 scope Bas van Rossem 2026-06-17 18:29:40 +02:00
  • 7d7af335dd docs: log Phase 2 follow-up (worker logout + Account screen) Bas van Rossem 2026-06-17 18:24:07 +02:00
  • 1631c1698d feat(worker): add logout + replace admin-only settings with Account screen Bas van Rossem 2026-06-17 18:23:42 +02:00
  • 3d8524c827 docs: Phase 2 accounts & roles — roadmap, README, session log Bas van Rossem 2026-06-17 18:04:19 +02:00
  • 7d200eb8fc feat(worker): login-only client (admin creates users) Bas van Rossem 2026-06-17 17:53:20 +02:00
  • bd2d859e92 feat(api): seed dev admin + worker via admin createUser Bas van Rossem 2026-06-17 17:50:18 +02:00
  • dc8f550665 feat(api): admin-only cross-user work-session views (/api/admin/sessions) Bas van Rossem 2026-06-17 17:47:17 +02:00
  • f2cc0973c7 feat(api): role-aware session helper + admin-only activity writes Bas van Rossem 2026-06-17 17:43:37 +02:00
  • c73fa0f898 feat(api): add better-auth admin plugin + close public sign-up (migration 0002) Bas van Rossem 2026-06-17 17:36:26 +02:00
  • f6bd8eb036 test(api): centralize auth helpers on server-side createUser Bas van Rossem 2026-06-17 17:29:46 +02:00
  • 8bfdfb736e feat(shared): add Role enum + admin user fields on WorkSession contract Bas van Rossem 2026-06-17 17:23:20 +02:00
  • decb158044 docs: session log for cleanup + Phase 1 (web client) Bas van Rossem 2026-06-17 17:06:28 +02:00
  • ec2bb7eec9 feat(api): seed a dev login account (worker@solelog.local) for testing Bas van Rossem 2026-06-17 17:05:56 +02:00
  • 34c48d6353 feat(api): drive CORS + trusted origins from CORS_ORIGINS env Bas van Rossem 2026-06-17 16:50:21 +02:00
  • bd8e8aff2a docs(worker): run instructions and Phase 1 verification Bas van Rossem 2026-06-17 16:37:28 +02:00
  • 134e01a2e8 feat(worker): Geschiedenis screen with session list and CSV export Bas van Rossem 2026-06-17 16:30:34 +02:00
  • 5af5a9c2bb feat(worker): server-authoritative Stopwatch screen with active-session recovery Bas van Rossem 2026-06-17 16:24:56 +02:00
  • 1ecad6bbb4 feat(worker): Instellingen screen — activities CRUD per zooltype Bas van Rossem 2026-06-17 16:17:37 +02:00
  • 75679256cd feat(worker): auth gate, Dutch login screen, router and 3-tab shell Bas van Rossem 2026-06-17 16:11:18 +02:00
  • 3511fd8a89 feat(worker): scaffold Vite+React PWA with token storage and typed API client Bas van Rossem 2026-06-17 16:03:41 +02:00
  • 35f9aa5574 feat(api): seed reference activities and enable CORS for the worker SPA Bas van Rossem 2026-06-17 15:54:52 +02:00
  • 85184d3287 feat(api): user-scoped CSV export matching legacy format Bas van Rossem 2026-06-17 15:49:20 +02:00
  • b067bb65b0 feat(api): session history and active-session recovery endpoints Bas van Rossem 2026-06-17 15:45:08 +02:00