Commit Graph

18 Commits

Author SHA1 Message Date
e75a2bccb8 fix(attendance): correct course_id column in slot queries, add patch_json helper 2026-04-28 03:29:13 +02:00
797ccacbb2 feat(attendance): sessions/slots CRUD with atomic code generation 2026-04-28 03:24:36 +02:00
fcf2787bcc fix(attendance): add empty layout/label validation and put_json test helper 2026-04-28 03:18:56 +02:00
84f5788363 test(attendance): add negative geometry validation test for rooms layout 2026-04-28 03:11:10 +02:00
5743808265 feat: rooms CRUD with layout validation 2026-04-28 03:07:40 +02:00
4aef2f70df fix: per-course auth guard, filter courses by tutor, CSV fixes, cascade check 2026-04-28 03:05:49 +02:00
abf0ebcce2 feat: courses and students CRUD endpoints 2026-04-28 01:42:22 +02:00
a351c442d3 fix: secret() error propagation, exp as u64, bcrypt cost 4 in tests, skip empty auth header 2026-04-28 01:36:22 +02:00
83b25b1693 feat: JWT auth, login endpoint, and test helpers 2026-04-28 01:33:14 +02:00
0da5dc5674 feat: add data models and request types 2026-04-28 01:20:44 +02:00
24acc54ceb fix: NOT NULL on tutor_courses FKs, status CHECK, time format CHECK, add indexes 2026-04-28 01:19:59 +02:00
d6f9d593ed feat: SQLite migrations and db pool with FK pragma 2026-04-28 01:14:20 +02:00
83ebff3b3e chore: edition 2024, rust 1.95.0, bump all deps to latest stable 2026-04-28 01:12:16 +02:00
fbd697759d fix: bump thiserror to v2, rand to v0.9, improve error logging 2026-04-28 01:06:55 +02:00
dd18f385a2 chore: add backend .gitignore, untrack target/ 2026-04-28 00:56:53 +02:00
42465839d0 feat: scaffold Rust/Axum backend 2026-04-28 00:55:36 +02:00
acfecf617c chore: ignore .worktrees/ 2026-04-27 23:29:43 +02:00
947d25acb0 chore: initial commit 2026-04-27 23:29:23 +02:00