Files
HealthLog/scripts/bench/results/v1.45.0-fan-out.md
T
Marc-André Bombeck a451a114a2 docs(bench): record the boot profile and the runtime results
The profile section in docs/contributing/benchmarks.md says how to run
scripts/bench/boot-profile.ts, what the profile of the v1.44 runtime
found (the worker graph as one 753 ms block, a live heap of about
165 MB of which the query compiler holds 50 and the catalogs 33) and what
changed. scripts/bench/results/v1.45.0-*.md hold the before and after
numbers per area, from back-to-back runs on the same machine. The size
baselines take the lowered numbers.
2026-10-22 09:10:14 +02:00

1.1 KiB

v1.45.0: request fan-out

Same runs as v1.45.0-read-path.md.

request statements before statements after p50 ms before / after
/api/auth/me 19 14 9 / 8
day view, cold 49 48 77 / 68
  • /api/auth/me read the AppSettings singleton six times (MFA policy, Assistant switches, module availability, provider presence, AI usage bounds, reasoning controls); one memoised read per request now serves all six (src/lib/settings/operator-row.ts). On the small budget fixture it went from 18 to 13 statements. The remaining reads are the session, the grant, cycle profile, onboarding, consent, coach usage and five user reads with different column sets.
  • The day view's record sections run six at a time instead of about twenty-five at once, so one day never holds more than a third of the pool. The statement count is the same; what changes is the peak of connections.
  • Keyset pagination for /api/measurements was not done: a cursor needs a new request parameter and a response field, a contract change for the native client.