e7eefe8f629f5277062c78b657b7910aeb6097a0
Drives Sessions.tsx and SessionForm.tsx to 100% stmts/branch/funcs/lines. Added gap tests: sessions error state, in-filter empty message, row placeholders (missing worker/activity/type/date), frozen worked-time for a paused active session, edit-form open, and form cancel; SessionForm create/edit validation paths, non-400 error surfacing, null serialization (empty zooltype + notitie, status=active clears end_time), pair/pause floors, and the defensive no-session edit guard. Lifecycle test (Sessions.test.tsx): open create form -> fill a valid manual session -> it appears in the list -> edit the row -> the change persists, driven by a stateful apiFetch mock. Annotated one unreachable branch: localToIso's Number.isNaN guard is c8-ignored (a datetime-local input only yields a valid datetime or empty). No bugs found; no behavior changes.
SoleLog docs
Running the backend (Phase 0)
Local (dev):
yarn install
cp apps/api/.env.example apps/api/.env # edit BETTER_AUTH_SECRET
yarn workspace @solelog/api db:migrate
yarn workspace @solelog/api dev
Docker (whole stack):
docker compose up --build
# health: curl http://localhost:3000/health
Description
Languages
TypeScript
95.3%
CSS
3.8%
Dockerfile
0.7%
HTML
0.2%