Commit graph

64 commits

Author SHA1 Message Date
f16e279f58 35 - Add prod image SPA serving, health endpoint, and Forgejo CI
All checks were successful
CI / backend (push) Successful in 20m34s
CI / frontend (push) Successful in 1m2s
CI / e2e (push) Successful in 21m57s
2026-06-30 21:07:45 +02:00
196cbfbb69 62 - Close coverage gaps, enable TS strict, add coverage thresholds 2026-06-28 23:26:24 +02:00
5ed9fc8fb7 52 - Fix frontend healthcheck to probe 127.0.0.1 (localhost resolves to IPv6) 2026-06-28 18:44:59 +02:00
b518dbeb1f 52 - Pin npm via single NPM_VERSION env + dev Dockerfiles, gate e2e on healthcheck 2026-06-28 18:29:11 +02:00
2e1af9d186 52 - Adjust auth form spacing 2026-06-28 18:28:07 +02:00
fa3732a0ac 52 - Pin npm to 11.17.0 and gate e2e on frontend healthcheck 2026-06-28 18:18:01 +02:00
314a977ced 52 - Add dev-e2e and dev-check shell helpers 2026-06-28 18:04:19 +02:00
a71276cb16 52 - Add Playwright e2e auth smoke test (containerized) 2026-06-28 18:04:02 +02:00
f761f4a791 52 - Add logout with split authed/guest layouts 2026-06-28 17:11:50 +02:00
bc4483821c 52 - Add navigation links between login and register 2026-06-28 16:39:14 +02:00
4d641cae7f 52 - Add register screen with shared field-error parsing 2026-06-28 16:33:32 +02:00
fa7a7f9a2d 52 - Add login screen with data-router refactor and auth-module split 2026-06-28 15:02:07 +02:00
2d5f7d074a 52 - Add frontend dev-fe-* helpers to shell.nix 2026-06-28 14:31:48 +02:00
7143e16bf9 52 - Add auth context, route guards, and router wiring 2026-06-28 14:31:38 +02:00
244f9ec314 52 - Add application/json auth call path to api client 2026-06-28 13:51:01 +02:00
20c41c7a65 52 - Set up Vitest + RTL + MSW frontend test harness 2026-06-28 13:50:47 +02:00
5777946faf 52 - Add POST /api/register endpoint with validation 2026-06-28 13:29:36 +02:00
f76c7b9ecd 33 - Use theme tokens in primitives and replace template boilerplate 2026-06-28 11:03:16 +02:00
79367b3de0 33 - Add cookie-session API client for the dev proxy 2026-06-28 02:32:39 +02:00
28757d1e6b 33 - Add terminal UI primitives and base layout 2026-06-28 02:22:07 +02:00
d72b672b23 33 - Add Tailwind 4 and port the 80s terminal theme 2026-06-28 02:16:41 +02:00
4ac02d1ee9 33 - Add Prettier to the frontend 2026-06-28 02:11:14 +02:00
41bcc1b905 33 - Scaffold Vite + React + TS frontend and add compose node service 2026-06-28 02:06:56 +02:00
1e9abf884b 57 - Tighten foreign-scenario docblocks to the locked 400 decision 2026-06-27 23:34:20 +02:00
cb4af693b1 57 - Add DELETE to the Bucket API 2026-06-27 20:03:54 +02:00
b932228759 57 - Add partial-update PATCH to the Bucket API with priority-uniqueness validation 2026-06-27 17:33:25 +02:00
e563816cb3 61 - Remove unused distribution_mode field from Scenario 2026-06-27 12:33:30 +02:00
e0e2f255ac 58 - Pin scenario create-from-UI contract with create→show round-trip and optional description 2026-06-27 08:30:32 +02:00
473b88b54e 50 - Scope streams to the owner transitively via scenario 2026-06-27 00:35:07 +02:00
6dd8e2207f 50 - Scope Bucket reads to the owning Scenario's owner 2026-06-27 00:35:07 +02:00
064805eb09 50 - Scope Scenario reads to the authenticated owner 2026-06-27 00:35:07 +02:00
e4b1506ac5 50 - Stamp authenticated user as Scenario owner on write 2026-06-27 00:35:07 +02:00
468f60da7f 32 - Expose stateless distribution preview endpoint 2026-06-27 00:32:44 +02:00
d6f47dea66 32 - Expose stateless distribution preview endpoint 2026-06-22 18:55:02 +02:00
5c5369328a 32 - Add ProjectionPreviewOutput DTO with fromResult mapping 2026-06-22 00:54:23 +02:00
af467de439 32 - Add AllocateIncome action for phased income
distribution
2026-06-21 23:58:45 +02:00
556f45146c 32 - Add EvenSplitter for even distribution with redistribute 2026-06-21 11:40:41 +02:00
d7af49cf8e 32 - Fix buffer-stage room and unify cap clamping 2026-06-21 11:08:46 +02:00
d64e7ce1ef 32 - Add BucketRoomCalculator with FillStage 2026-06-20 23:51:56 +02:00
d19154af31 32 - Add dev-coverage shell helper 2026-06-20 23:51:13 +02:00
bebc0427b9 31 - Add required-field validation 2026-06-20 10:15:31 +02:00
1a90a18b49 31 - Expose Bucket and Stream via API 2026-06-20 10:00:54 +02:00
e4ae6dabf6 31 - Expose Scenario via API with ROLE_USER gating 2026-06-20 09:34:07 +02:00
a2663be938 31 - Add buffer multiplier validation 2026-06-20 00:53:29 +02:00
3163a95f37 31 - Add single-overflow-per-scenario invariant 2026-06-20 00:28:29 +02:00
7855e41e84 31 - Add allocation-type invariant 2026-06-19 23:38:24 +02:00
a2d36eb4da 31 - Add Stream entity with frequency and optional bucket link 2026-06-19 20:11:13 +02:00
016d4f497e 31 - Add Bucket entity with scenario relation and priority constraint 2026-06-19 01:04:38 +02:00
7b87c6d665 31 - Add Scenario entity, migration and repository 2026-06-18 23:49:24 +02:00
cda83371c4 31 - Add dev-migrate shell helpers 2026-06-18 23:48:27 +02:00