mirror of
https://github.com/MBombeck/HealthLog.git
synced 2026-11-11 22:02:16 +00:00
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.
1.1 KiB
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/meread 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/measurementswas not done: a cursor needs a new request parameter and a response field, a contract change for the native client.