Sprint 02
Table of Contents
This page documents a sprint (Sprint 02) of ORE Studio v0. It captures the sprint's mission, current status, and the stories that compose it. For the surrounding context — version goals, sprint order, and product identity — see Version 0.
Mission
Lay the foundations for a client/server architecture and modernise the project's serialisation and storage paths.
(Synthesised from the v0 mission: "Create basic project infrastructure" plus "Add client and server support". The serialisation and storage work was the largest single thread by time, so it is reflected in the mission explicitly.)
Status
| Field | Value |
|---|---|
| State | DONE |
| Parent version | Version 0 |
| Previous | Sprint 01 |
| Start | 2025-02-02 |
| End (expected) | 2025-10-23 |
| Now | Nothing. |
| Waiting on | Nothing. |
| Next | Sprint 03 |
| Release Notes | Release notes |
| Last touched | 2025-10-23 |
Achievements
- Client/server foundations established.
- Serialisation and storage modernised.
- Risk module extracted.
Stories
For the definitions of the themes see Themes.
Infrastructure
| Story | State | Start | End | Description |
|---|---|---|---|---|
| Build stabilisation | DONE | 2025-10-23 | Windows/macOS builds, vcpkg caching, Valgrind suppressions, broken-build firefighting. | |
| Client/server foundations | DONE | 2025-10-15 | cobalt-based server and client, comms library, messaging for risk. Records the GRPC and 0MQ experiments that were abandoned along the way. |
|
| Modernise serialisation and storage | DONE | 2025-10-10 | adopt reflect-cpp for JSON, replace XML parsing with reflect-cpp, use sqlgen for Postgres. |
Product
| Story | State | Start | End | Description |
|---|---|---|---|---|
| Currencies temporal and export | DONE | 2025-09-30 | temporal support for currencies, CLI dump command, a containing structure for ORE example data. | |
| Risk module extraction | DONE | 2025-10-05 | rename core to risk and refactor the contents accordingly. |
Tooling
| Story | State | Start | End | Description |
|---|---|---|---|---|
| CLI refactor and test | DONE | 2025-10-10 | restructure the CLI to follow the new project layout and add tests to the CLI parser. |
Agile
| Story | State | Start | End | Description |
|---|---|---|---|---|
| Sprint 02 housekeeping | DONE | 2025-10-23 | sprint refinement, whiteboarding for the new architecture, dev-environment fixes, Gemini action. |
Charts
Charts generated via sprint_charts cmake target.
PRs & Commits per Day
Dual-axis bar chart. PRs (left axis) and commits (right axis) per day. A high commits-to-PR ratio may indicate scope creep.
Daily Line Churn
Lines added (green) and deleted (red) per day. Building work produces mostly additions; refactoring produces a mix. Days with no churn may indicate blockers.
Cumulative Stories Done
Line chart tracking stories marked DONE during the sprint. Steady upward slope is healthy; plateauing signals a stall.
Retrospective
Filled in retrospect, from the v0 record:
- What worked
- the whiteboard-first approach to the client/server architecture paid off — once the picture was clear, the cobalt implementation came together quickly. Reflect-cpp dramatically reduced serialisation boilerplate.
- What did not
- significant time was spent firefighting Windows and macOS build issues. The GRPC and 0MQ experiments were worthwhile architectural exploration but cost ~10 hours that produced no merged code.
- Carry forward to v2
- the cancelled experiments are recorded as
ABANDONEDtasks rather than deleted — they document why we are not using GRPC or 0MQ. This is exactly the kind of provenance that is missing in the v0 model.