docs: sync project documentation

This commit is contained in:
2026-05-21 16:49:28 +02:00
parent d1d7cf5265
commit 9e6e71a87b
2 changed files with 20 additions and 17 deletions
+12 -11
View File
@@ -4,15 +4,16 @@ Items that were out of scope for the initial 6-hour build, with notes on how to
## Features
### User management UI
Currently, users are seeded via Flyway (`V2__seed_demo_data.sql`). A `POST /api/users` endpoint
with a "New User" form in the frontend would complete the CRUD cycle. Straightforward to add
following the same pattern as project creation.
### User creation / deletion UI
Users are seeded via Flyway (`V2__seed_demo_data.sql`) and the selected user's name/default rate can
be edited from the top bar. A `POST /api/users` endpoint with a "New User" form, plus optional delete
support, would complete the CRUD cycle. Straightforward to add following the same pattern as project
creation.
### Edit existing time entry (project-create form was shipped; entry edit is partially done)
The backend `PUT /api/time-entries/{id}` endpoint exists. The frontend `TimeEntryForm` handles
editing when `editEntry` is passed. Wire up the Edit button per entry row in `WeeklyView`
already scaffolded, just needs end-to-end smoke-testing.
### Time entry edit smoke coverage
Editing existing time entries is implemented end-to-end (`PUT /api/time-entries/{id}`, `TimeEntryForm`
edit mode, and the `WeeklyView` Edit button). Add explicit frontend and/or MockMvc smoke coverage for
the edit path so regressions are caught.
### Notes / description field on time entries
Add a `TEXT` column to `time_entries` (new Flyway migration), expose it in the DTOs, and add a
@@ -31,9 +32,9 @@ Add a `GET /api/reports/weekly.csv?userId=&week=` and `/monthly.csv` endpoint th
## Technical quality
### Full backend test pyramid
The current happy-path tests cover the repository date-range query, service cost/budget logic, and
one end-to-end MockMvc flow. Gaps to fill:
- `@WebMvcTest` controller-slice tests for validation error responses (400 on invalid fields).
The current tests cover the repository date-range query, service cost/budget logic, one end-to-end
MockMvc flow, and a few validation cases for user/project updates. Gaps to fill:
- Dedicated `@WebMvcTest` controller-slice tests for validation error responses (400 on invalid fields).
- More `@DataJpaTest` cases (zero entries, multiple users, rate fallback).
- `@SpringBootTest` with Testcontainers so tests do not depend on an externally-running PostgreSQL.