Story: Build stabilisation
Table of Contents
This page documents a story in Sprint 02. It captures the goal, current status, acceptance criteria, and the tasks that compose it.
Goal
Bring multi-platform CI back to green and reduce the noise that fills the daily build reports — Valgrind false positives, vcpkg warnings, and the ImGui experiment that had bit-rotted.
Status
| Field | Value |
|---|---|
| State | DONE |
| Parent sprint | Sprint 02 |
| Now | Story closed; Windows and macOS builds green, vcpkg binary caching working, Valgrind suppressions in place, ImGui removed. |
| Waiting on | None. |
| Next | None. |
| Last touched | 2025-10-23 |
Acceptance
- Windows and macOS builds pass on push.
- vcpkg binary caching enabled and working.
- Valgrind output free of known false positives.
- ImGui removed cleanly.
Tasks
| Task | State | Start | End | Description |
|---|---|---|---|---|
| Fix Windows and macOS builds | DONE | 2025-09-15 | 2025-09-25 | Restore green Windows and macOS CI by fixing CMake errors and platform-specific build issues. |
| Fix vcpkg binary caching | DONE | 2025-10-01 | 2025-10-08 | Get vcpkg binary caching working so CI doesn't rebuild every dependency on every push. |
| Add Valgrind suppressions | DONE | 2025-10-10 | 2025-10-15 | Suppress known third-party false positives so Valgrind output highlights real issues. |
Decisions
- Remove ImGui rather than fix it
- ImGui was an experiment for a parallel UI; once the Qt direction was confirmed, the maintenance cost did not justify keeping it.
- Binary caching via GitHub Actions cache
- simpler than self-hosted, sufficient until the project grows further.
Out of scope
- Code signing on Windows (deferred to a later sprint).
- macOS notarisation (deferred).
- Longer-tail Windows / dynamic-library / Valgrind issues — picked up in sprint 03's Build stabilisation 3.
See also
- CMake setup — the vcpkg-caching and Valgrind details this story established.
- How do I build the system? / How do I run the tests? — recipes that exercise the stabilised pipelines.
- Build quality (sprint 01) — predecessor story this builds on.