03a1e70df3
fix(deploy): correct HTTPRoute parentRefs, cert-manager annotation, imagePullSecrets
...
Release / release (push) Failing after 56s
- httproute.yaml: name=default namespace=nginx-gateway (was: itsh-gateway, no namespace)
- httproute.yaml: add cert-manager.io/cluster-issuer annotation for TLS cert issuance
- httproute.yaml: parameterise sectionNames and parentRefs through values
- deployment.yaml: render imagePullSecrets from values (itsh-registry pull secret)
- values.yaml: add parentRefs, annotations, httpRedirectSectionName, imagePullSecrets
v0.1.0
2026-04-29 21:24:13 +02:00
Claude
e01f7808a0
Overhaul build pipeline: pnpm, non-root image, Helm chart, CI+release workflows
...
CI / test (push) Failing after 1m35s
CI / test (pull_request) Failing after 1m34s
- db.rs: fix fresh-PVC startup crash by using SqliteConnectOptions with
create_if_missing(true) and foreign_keys(true); drops after_connect
- Dockerfile: switch to Node 22 + pnpm (corepack), run pnpm check before
build, copy backend/demo/ for TT_TEST_MODE support, non-root app user,
add HEALTHCHECK, remove baked-in JWT_SECRET
- .dockerignore: exclude node_modules, build artifacts, data/, logs
- deploy/: new Helm chart replacing k8s/ — Deployment, Service, HTTPRoute
(Gateway API), PVC (hcloud-volumes), CronJob backup, ServiceAccount, VPA;
JWT_SECRET sourced from pre-provisioned K8s Secret
- k8s/: removed (superseded by deploy/)
- ci.yml: replaces test.yml — Node 20->22, same test steps, adds no-push
Docker build; triggers on non-main pushes and PRs
- release.yml: new tag-driven workflow (v*.*.*) — runs tests, pushes image
to registry.itsh.dev/s0wlz/tutortool, deploys via helm upgrade
https://claude.ai/code/session_01N1kWaQJkz1fC7mUippdQR5
2026-04-29 19:11:29 +00:00
0b806b59be
feat: add implementation plans for room editor refactor (core and visualization)
Test / test (push) Failing after 1m40s
2026-04-29 05:36:44 +02:00
7212e982ef
docs: update GEMINI.md with project-specific conventions and conductor references
Test / test (push) Failing after 1m39s
2026-04-29 05:24:03 +02:00
75203bd796
fix: resolve test pipeline migration conflicts and sync demo layout with frontend
2026-04-29 05:23:42 +02:00
276b367530
docs: track design handoff, plans, specs, and conductor notes
Test / test (push) Failing after 2m12s
2026-04-29 04:38:26 +02:00
bbcdbf957e
feat: add IF NOT EXISTS to migrations, add courses nav item, lock playwright deps
2026-04-29 04:38:20 +02:00
7a0f6aa0a7
chore: gitignore server.log and start_backend.sh
2026-04-29 04:38:14 +02:00
f3f570a63e
docs: update CLAUDE.md, GEMINI.md, add README
...
- Add test-* and seed-demo Make targets to command reference
- Document TT_TEST_MODE, /health route, test_reset route module
- Expand admin subroutes list, add Testing and CI sections
- Fix SQLx contradiction (runtime queries, no DATABASE_URL needed)
- Rewrite GEMINI.md with full Claude parity
- Add root README.md with quickstart, stack, and doc links
2026-04-29 04:35:51 +02:00
3d91017d78
docs: add docs/testing.md and refine gitignore (track project docs, ignore local reference)
2026-04-29 04:25:24 +02:00
4d337064af
feat(ci): add Gitea Actions test workflow
2026-04-29 04:22:43 +02:00
8ea3d57239
feat(tests): add playwright config, globalSetup, reset fixture, migrate superadmin spec
2026-04-29 04:22:11 +02:00
412dc01ac2
feat(tests): add make test-up/down/reset/rebuild/e2e targets
2026-04-29 04:13:59 +02:00
205c871d31
feat(tests): add /__test__/reset endpoint and /health route (gated on TT_TEST_MODE)
2026-04-29 04:08:31 +02:00
4dce11dd26
feat(tests): add test-env.sh, gitignore updates, package.json scripts
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.
2026-04-29 02:48:43 +02:00
e222085a72
fix: frontend type errors and add k8s manifests
2026-04-29 02:43:23 +02:00
8a45f6a06e
feat: implement superadmin CRUD for courses and tutors
2026-04-29 02:42:33 +02:00
e1d7c20354
fix: restore original migration checksums, seed-demo now starts fresh
2026-04-29 02:10:37 +02:00
38fdf42408
feat: merge feature/demo-seed — configurable port and improved seed target
2026-04-29 02:06:23 +02:00
755c084f5e
chore: ignore .playwright-mcp/ and refresh GEMINI.md
2026-04-29 02:06:01 +02:00
4aea0f4427
chore: clean up repo state and improve dev tooling
...
- Add IF NOT EXISTS to all migration DDL for idempotency
- Support PORT env var in backend (for compose flexibility)
- Support HOST_PORT env var in docker-compose
- Improve seed-demo to apply migrations before seeding
- Gitignore .claude/ session cache
2026-04-29 01:39:00 +02:00
b252128c37
docs: update CLAUDE.md for pnpm and corrected route paths
2026-04-29 01:32:15 +02:00
d6ccdaff1e
feat(frontend): merge paper/notebook design overhaul
...
Complete redesign of the SvelteKit frontend with a paper/notebook
aesthetic: design tokens, Google Fonts, 10 new components, responsive
student check-in, live seat map, and redesigned admin pages.
2026-04-29 01:27:55 +02:00
d8869a441c
fix(frontend): correct checkin API paths (remove duplicate /api/ prefix)
2026-04-29 01:20:26 +02:00
dd71202969
feat: support configurable ports for parallel development
2026-04-29 01:03:40 +02:00
0c5afb7e29
fix(frontend): render login page when unauthenticated
2026-04-28 23:58:57 +02:00
28c41042eb
fix: docker build process and compose environment variables
2026-04-28 23:42:26 +02:00
316b7defb8
feat: add demo seed data, update Makefile, and fix .gitignore
2026-04-28 21:39:17 +02:00
19f2b5ae7f
fix(frontend): fix slot deprecation and a11y label warnings
2026-04-28 19:22:30 +02:00
74255f23ac
chore(frontend): delete obsolete login and notes routes
2026-04-28 19:16:06 +02:00
0298e03781
feat(frontend): redesign sessions, courses, live view, and student check-in
2026-04-28 19:15:39 +02:00
60c871dec0
feat(frontend): redesign dashboard, attendance, students, login with paper aesthetic
2026-04-28 18:55:44 +02:00
bbccef4436
feat(frontend): route migration - add /admin/login, /admin/students, /admin/live/[slotId], rooms/[roomId]
2026-04-28 17:46:50 +02:00
7e326153a8
feat(frontend): add TutorShell sidebar layout and NoteEditor with auto-save
2026-04-28 15:39:28 +02:00
7da7c1e1d0
feat(frontend): add SeatMap component (tutor/student/student-self variants)
2026-04-28 15:13:35 +02:00
04155c182a
feat(frontend): add primitive UI components (Icon, StatusPill, UnderlineStroke, StatCard, Tally, Field)
2026-04-28 15:08:50 +02:00
97a3c2196b
feat(frontend): add paper design tokens and Google Fonts
2026-04-28 15:01:22 +02:00
c0c0c220ef
chore: some repo cleanup
2026-04-28 14:29:20 +02:00
0d86cd0ed6
chore: setup project meta and ignore docs
2026-04-28 05:58:04 +02:00
01ff815efa
docs: fix CLAUDE.md inaccuracies and Dockerfile Rust version
2026-04-28 05:46:31 +02:00
7ff129189b
docs: move plan, spec, and design handoff from FPTutor repo
2026-04-28 05:35:41 +02:00
d37853e1a6
feat(ops): add Makefile, Dockerfile, and K8s manifests
2026-04-28 05:19:53 +02:00
c7ab5d8689
feat(frontend): implement all views using Svelte 5 runes and TS 7.0
2026-04-28 05:19:30 +02:00
f9c721d841
feat(frontend): scaffold SvelteKit with TS 7.0 (native-preview) and tsgo
2026-04-28 05:16:19 +02:00
943463fff4
feat(backend): complete attendance, notes, and export APIs
2026-04-28 05:11:33 +02:00
e3561b731d
fix(attendance): propagate cookie header errors, guard missing room in checkin
2026-04-28 03:55:54 +02:00
116de5aead
fix(attendance): reject seat_id on room-less slots
2026-04-28 03:49:30 +02:00
3629cc3769
feat(attendance): student check-in API with FCFS seat locking
2026-04-28 03:43:56 +02:00
e75a2bccb8
fix(attendance): correct course_id column in slot queries, add patch_json helper
2026-04-28 03:29:13 +02:00