Task: Investigate Valgrind leaks
Table of Contents
This page documents a task in the Logging and observability story. It captures the goal, current status, acceptance, and any notes or results.
Goal
Triage the leaks Valgrind reports during the test run: classify each as a real leak or a benign third-party allocation that warrants a suppression rather than a fix.
Status
| Field | Value |
|---|---|
| State | DONE |
| Parent story | Logging and observability |
| Now | Completed 2025-12-30. |
| Waiting on | None. |
| Next | None. |
| Last touched | 2025-12-30 |
Acceptance
- Each Valgrind-reported leak triaged to real or suppressible.
- Real leaks fixed; suppressible ones recorded with a documented reason.
Notes
- Total time spent in v0: ~0:51 (plus subsequent work in the OpenSSL carry-over).
- Sample trace shown in v0: 32 bytes still reachable via OpenSSL
ossl_init_config→CRYPTO_THREAD_run_onceduringRAND_bytes_ex, triggered byores::accounts::security::password_manager::create_password_hash. - Conclusion: all flagged leaks originate in OpenSSL initialisation. Followed up with a Gemini-assisted suppression set; remaining OpenSSL items carry over as a BLOCKED follow-up to a successor sprint.
Result
Project-side leaks resolved; OpenSSL-induced leaks suppressed; remaining OpenSSL items isolated and tracked as carry-over.