This website requires JavaScript.
8c7678d06a
feat: implement dual-token JWT auth, Argon2id migration, and zero-warnings quality mandate
main
v0.1.16
s0wlz (Matthias Puchstein)
2026-05-03 00:41:50 +02:00
840fbb1cdd
chore: add verify-all target and mandate local verification in GEMINI.md
s0wlz (Matthias Puchstein)
2026-05-02 23:29:40 +02:00
a281d227c9
chore: move cargo audit ignore to explicit command-line flag
v0.1.15
s0wlz (Matthias Puchstein)
2026-05-02 21:55:18 +02:00
20b3364786
chore: ignore RUSTSEC-2023-0071 in cargo audit (no fixed upgrade available)
v0.1.14
s0wlz (Matthias Puchstein)
2026-05-02 21:15:43 +02:00
968f7d0691
fix: resolve cargo audit command failure in CI/CD pipelines
v0.1.13
s0wlz (Matthias Puchstein)
2026-05-02 21:10:34 +02:00
6ca42d10e6
fix: resolve unit test failures caused by rate limiting and fix mod.rs router passing
v0.1.12
s0wlz (Matthias Puchstein)
2026-05-02 21:04:31 +02:00
32e7dc5ac1
deploy: bump image tag to v0.1.11
v0.1.11
s0wlz (Matthias Puchstein)
2026-05-02 20:56:22 +02:00
6ca852117d
chore: update frontend dependencies to latest stable versions and sync lockfile
s0wlz (Matthias Puchstein)
2026-05-02 20:56:03 +02:00
dec92509ff
deploy: bump image tag to v0.1.10
v0.1.10
s0wlz (Matthias Puchstein)
2026-05-02 20:48:56 +02:00
31f8ef74fe
chore: remediate code audit findings and fix CI pipeline failures
s0wlz (Matthias Puchstein)
2026-05-02 20:40:05 +02:00
536638b594
deploy: bump image tag to v0.1.9
v0.1.9
s0wlz (Matthias Puchstein)
2026-05-02 05:28:30 +02:00
6cb5968b7b
fix: resolve Docker build failure and E2E authentication race conditions
s0wlz (Matthias Puchstein)
2026-05-02 05:25:04 +02:00
66eed29c71
deploy: bump image tag to v0.1.8
v0.1.8
s0wlz (Matthias Puchstein)
2026-05-02 03:22:29 +02:00
ff5ad26cfc
feat: harden security with httpOnly cookies and modernize frontend with Svelte 5 runes
s0wlz (Matthias Puchstein)
2026-05-02 03:16:33 +02:00
7cafc7e119
deploy: pin image tag to v0.1.7
s0wlz (Matthias Puchstein)
2026-05-01 18:41:21 +02:00
0e7df590ca
tutortool: set successfulJobsHistoryLimit=1 on backup CronJob
s0wlz (Matthias Puchstein)
2026-05-01 18:39:25 +02:00
e05cebc10c
chore: ignore AI artefacts and log files
s0wlz (Matthias Puchstein)
2026-04-30 01:04:43 +02:00
a2b41b5131
feat: enable DEMO seed via values_override
v0.1.7
s0wlz (Matthias Puchstein)
2026-04-30 00:50:17 +02:00
cffb97ff76
fix: use Recreate strategy so SQLite + RWO PVC redeploy fits tenant CPU quota
v0.1.6
s0wlz (Matthias Puchstein)
2026-04-30 00:42:55 +02:00
58248897db
fix: lower CPU limit to 200m to fit rolling update within tenant quota
v0.1.5
s0wlz (Matthias Puchstein)
2026-04-30 00:19:18 +02:00
b42ded93f6
feat: add DEMO env var to seed demo data on startup
v0.1.4
s0wlz (Matthias Puchstein)
2026-04-29 23:05:05 +02:00
dcb4a92afd
fix(deploy): use generic 'http' sectionName for HTTP→HTTPS redirect route
s0wlz (Matthias Puchstein)
2026-04-29 22:19:51 +02:00
6b296460dd
fix(ci): add context: . to Docker build-push step in release workflow
v0.1.3
s0wlz (Matthias Puchstein)
2026-04-29 21:48:06 +02:00
ee98d6844a
fix(frontend): add @types/node, fix Playwright base.extend type in fixtures
v0.1.2
s0wlz (Matthias Puchstein)
2026-04-29 21:42:32 +02:00
bae4ff24ea
fix(ci): run svelte-kit sync before pnpm check to generate .svelte-kit/tsconfig.json
v0.1.1
s0wlz (Matthias Puchstein)
2026-04-29 21:28:21 +02:00
03a1e70df3
fix(deploy): correct HTTPRoute parentRefs, cert-manager annotation, imagePullSecrets
v0.1.0
s0wlz (Matthias Puchstein)
2026-04-29 21:24:13 +02:00
e01f7808a0
Overhaul build pipeline: pnpm, non-root image, Helm chart, CI+release workflows
pipeline-overhaul
Claude
2026-04-29 18:57:52 +00:00
0b806b59be
feat: add implementation plans for room editor refactor (core and visualization)
s0wlz (Matthias Puchstein)
2026-04-29 05:36:44 +02:00
7212e982ef
docs: update GEMINI.md with project-specific conventions and conductor references
s0wlz (Matthias Puchstein)
2026-04-29 05:24:03 +02:00
75203bd796
fix: resolve test pipeline migration conflicts and sync demo layout with frontend
s0wlz (Matthias Puchstein)
2026-04-29 05:23:42 +02:00
276b367530
docs: track design handoff, plans, specs, and conductor notes
s0wlz (Matthias Puchstein)
2026-04-29 04:38:26 +02:00
bbcdbf957e
feat: add IF NOT EXISTS to migrations, add courses nav item, lock playwright deps
s0wlz (Matthias Puchstein)
2026-04-29 04:38:20 +02:00
7a0f6aa0a7
chore: gitignore server.log and start_backend.sh
s0wlz (Matthias Puchstein)
2026-04-29 04:38:14 +02:00
f3f570a63e
docs: update CLAUDE.md, GEMINI.md, add README
s0wlz (Matthias Puchstein)
2026-04-29 04:35:51 +02:00
3d91017d78
docs: add docs/testing.md and refine gitignore (track project docs, ignore local reference)
s0wlz (Matthias Puchstein)
2026-04-29 04:25:24 +02:00
4d337064af
feat(ci): add Gitea Actions test workflow
s0wlz (Matthias Puchstein)
2026-04-29 04:22:43 +02:00
8ea3d57239
feat(tests): add playwright config, globalSetup, reset fixture, migrate superadmin spec
s0wlz (Matthias Puchstein)
2026-04-29 04:22:11 +02:00
412dc01ac2
feat(tests): add make test-up/down/reset/rebuild/e2e targets
s0wlz (Matthias Puchstein)
2026-04-29 04:13:59 +02:00
205c871d31
feat(tests): add /__test__/reset endpoint and /health route (gated on TT_TEST_MODE)
s0wlz (Matthias Puchstein)
2026-04-29 04:08:31 +02:00
4dce11dd26
feat(tests): add test-env.sh, gitignore updates, package.json scripts
s0wlz (Matthias Puchstein)
2026-04-29 04:03:14 +02:00
279c60a5eb
Merge branch 'feature-superadmin-crud' # Please enter a commit message to explain why this merge is necessary, # especially if it merges an updated upstream into a topic branch. # # Lines starting with '#' will be ignored, and an empty message aborts # the commit.
s0wlz (Matthias Puchstein)
2026-04-29 02:48:43 +02:00
e222085a72
fix: frontend type errors and add k8s manifests
s0wlz (Matthias Puchstein)
2026-04-29 02:43:23 +02:00
8a45f6a06e
feat: implement superadmin CRUD for courses and tutors
s0wlz (Matthias Puchstein)
2026-04-29 02:42:33 +02:00
e1d7c20354
fix: restore original migration checksums, seed-demo now starts fresh
s0wlz (Matthias Puchstein)
2026-04-29 02:10:37 +02:00
38fdf42408
feat: merge feature/demo-seed — configurable port and improved seed target
s0wlz (Matthias Puchstein)
2026-04-29 02:06:23 +02:00
755c084f5e
chore: ignore .playwright-mcp/ and refresh GEMINI.md
s0wlz (Matthias Puchstein)
2026-04-29 02:06:01 +02:00
4aea0f4427
chore: clean up repo state and improve dev tooling
s0wlz (Matthias Puchstein)
2026-04-29 01:39:00 +02:00
b252128c37
docs: update CLAUDE.md for pnpm and corrected route paths
s0wlz (Matthias Puchstein)
2026-04-29 01:32:15 +02:00
d6ccdaff1e
feat(frontend): merge paper/notebook design overhaul
s0wlz (Matthias Puchstein)
2026-04-29 01:27:55 +02:00
d8869a441c
fix(frontend): correct checkin API paths (remove duplicate /api/ prefix)
s0wlz (Matthias Puchstein)
2026-04-29 01:20:26 +02:00
dd71202969
feat: support configurable ports for parallel development
s0wlz (Matthias Puchstein)
2026-04-29 01:03:40 +02:00
0c5afb7e29
fix(frontend): render login page when unauthenticated
s0wlz (Matthias Puchstein)
2026-04-28 23:58:57 +02:00
28c41042eb
fix: docker build process and compose environment variables
s0wlz (Matthias Puchstein)
2026-04-28 23:42:26 +02:00
316b7defb8
feat: add demo seed data, update Makefile, and fix .gitignore
s0wlz (Matthias Puchstein)
2026-04-28 21:39:17 +02:00
19f2b5ae7f
fix(frontend): fix slot deprecation and a11y label warnings
s0wlz (Matthias Puchstein)
2026-04-28 19:22:30 +02:00
74255f23ac
chore(frontend): delete obsolete login and notes routes
s0wlz (Matthias Puchstein)
2026-04-28 19:16:06 +02:00
0298e03781
feat(frontend): redesign sessions, courses, live view, and student check-in
s0wlz (Matthias Puchstein)
2026-04-28 19:15:39 +02:00
60c871dec0
feat(frontend): redesign dashboard, attendance, students, login with paper aesthetic
s0wlz (Matthias Puchstein)
2026-04-28 18:55:44 +02:00
bbccef4436
feat(frontend): route migration - add /admin/login, /admin/students, /admin/live/[slotId], rooms/[roomId]
s0wlz (Matthias Puchstein)
2026-04-28 17:46:50 +02:00
7e326153a8
feat(frontend): add TutorShell sidebar layout and NoteEditor with auto-save
s0wlz (Matthias Puchstein)
2026-04-28 15:39:28 +02:00
7da7c1e1d0
feat(frontend): add SeatMap component (tutor/student/student-self variants)
s0wlz (Matthias Puchstein)
2026-04-28 15:13:35 +02:00
04155c182a
feat(frontend): add primitive UI components (Icon, StatusPill, UnderlineStroke, StatCard, Tally, Field)
s0wlz (Matthias Puchstein)
2026-04-28 15:08:50 +02:00
97a3c2196b
feat(frontend): add paper design tokens and Google Fonts
s0wlz (Matthias Puchstein)
2026-04-28 15:01:22 +02:00
c0c0c220ef
chore: some repo cleanup
s0wlz (Matthias Puchstein)
2026-04-28 14:29:20 +02:00
0d86cd0ed6
chore: setup project meta and ignore docs
s0wlz (Matthias Puchstein)
2026-04-28 05:58:04 +02:00
01ff815efa
docs: fix CLAUDE.md inaccuracies and Dockerfile Rust version
s0wlz (Matthias Puchstein)
2026-04-28 05:46:31 +02:00
7ff129189b
docs: move plan, spec, and design handoff from FPTutor repo
s0wlz (Matthias Puchstein)
2026-04-28 05:35:41 +02:00
d37853e1a6
feat(ops): add Makefile, Dockerfile, and K8s manifests
s0wlz (Matthias Puchstein)
2026-04-28 05:19:53 +02:00
c7ab5d8689
feat(frontend): implement all views using Svelte 5 runes and TS 7.0
s0wlz (Matthias Puchstein)
2026-04-28 05:19:30 +02:00
f9c721d841
feat(frontend): scaffold SvelteKit with TS 7.0 (native-preview) and tsgo
s0wlz (Matthias Puchstein)
2026-04-28 05:16:19 +02:00
943463fff4
feat(backend): complete attendance, notes, and export APIs
s0wlz (Matthias Puchstein)
2026-04-28 05:11:33 +02:00
e3561b731d
fix(attendance): propagate cookie header errors, guard missing room in checkin
s0wlz (Matthias Puchstein)
2026-04-28 03:55:54 +02:00
116de5aead
fix(attendance): reject seat_id on room-less slots
s0wlz (Matthias Puchstein)
2026-04-28 03:49:30 +02:00
3629cc3769
feat(attendance): student check-in API with FCFS seat locking
s0wlz (Matthias Puchstein)
2026-04-28 03:43:56 +02:00
e75a2bccb8
fix(attendance): correct course_id column in slot queries, add patch_json helper
s0wlz (Matthias Puchstein)
2026-04-28 03:29:13 +02:00
797ccacbb2
feat(attendance): sessions/slots CRUD with atomic code generation
s0wlz (Matthias Puchstein)
2026-04-28 03:24:36 +02:00
fcf2787bcc
fix(attendance): add empty layout/label validation and put_json test helper
s0wlz (Matthias Puchstein)
2026-04-28 03:18:56 +02:00
84f5788363
test(attendance): add negative geometry validation test for rooms layout
s0wlz (Matthias Puchstein)
2026-04-28 03:11:10 +02:00
5743808265
feat: rooms CRUD with layout validation
s0wlz (Matthias Puchstein)
2026-04-28 03:07:40 +02:00
4aef2f70df
fix: per-course auth guard, filter courses by tutor, CSV fixes, cascade check
s0wlz (Matthias Puchstein)
2026-04-28 03:05:49 +02:00
abf0ebcce2
feat: courses and students CRUD endpoints
s0wlz (Matthias Puchstein)
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
s0wlz (Matthias Puchstein)
2026-04-28 01:36:22 +02:00
83b25b1693
feat: JWT auth, login endpoint, and test helpers
s0wlz (Matthias Puchstein)
2026-04-28 01:33:14 +02:00
0da5dc5674
feat: add data models and request types
s0wlz (Matthias Puchstein)
2026-04-28 01:20:44 +02:00
24acc54ceb
fix: NOT NULL on tutor_courses FKs, status CHECK, time format CHECK, add indexes
s0wlz (Matthias Puchstein)
2026-04-28 01:19:59 +02:00
d6f9d593ed
feat: SQLite migrations and db pool with FK pragma
s0wlz (Matthias Puchstein)
2026-04-28 01:14:20 +02:00
83ebff3b3e
chore: edition 2024, rust 1.95.0, bump all deps to latest stable
s0wlz (Matthias Puchstein)
2026-04-28 01:12:16 +02:00
fbd697759d
fix: bump thiserror to v2, rand to v0.9, improve error logging
s0wlz (Matthias Puchstein)
2026-04-28 01:06:55 +02:00
dd18f385a2
chore: add backend .gitignore, untrack target/
s0wlz (Matthias Puchstein)
2026-04-28 00:56:53 +02:00
42465839d0
feat: scaffold Rust/Axum backend
s0wlz (Matthias Puchstein)
2026-04-28 00:55:36 +02:00
acfecf617c
chore: ignore .worktrees/
s0wlz (Matthias Puchstein)
2026-04-27 23:29:43 +02:00
947d25acb0
chore: initial commit
s0wlz (Matthias Puchstein)
2026-04-27 23:29:23 +02:00