Sprint 09
Table of Contents
This page documents a sprint (Sprint 09) 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
Originally implement data management infrastructure. Delivered:
stood up Data Quality as a first-class subsystem (ores.dq) end to
end — concept model, domain types + FpML, ER refactor, breaking
protocol bump, Data Librarian UI, publication workflow, validated
against a fake-world dataset. Around it: connection management (so the
multi-environment agent workflow stops being painful), database
naming made component-explicit, a dedicated security module, and CLI
coverage of the entities that landed in earlier sprints.
Status
| Field | Value |
|---|---|
| State | DONE |
| Parent version | Version 0 |
| Previous | Sprint 08 |
| Start | 2026-01-11 |
| End (expected) | 2026-01-20 |
| Now | Sprint closed 2026-01-20. Two items carry forward: the per-entity documentation refactor (already mostly absorbed into v2) and the party-table groundwork. |
| Waiting on | Nothing. |
| Next | Sprint 10 |
| Release Notes | Release notes |
| Last touched | 2026-01-20 |
Achievements
- Data Quality subsystem and Data Librarian established as flagship features.
- ores.security module introduced with RAII OpenSSL.
- Connection management (ores.connections) live with Connection Browser MDI.
- Database renamed ores.risk → ores.refdata; consistent component_entity naming enforced.
- CLI list/delete coverage extended to five entities.
- Qt icon-enum and theme refactored for consistent visual identity.
Stories
For the definitions of the themes see Themes.
Infrastructure
| Story | State | Start | End | Description |
|---|---|---|---|---|
| Engineering hygiene | DONE | 2026-01-14 | model refresh + pr-manager skill + valgrind fixes; documentation refactor postponed. | |
| Security module | DONE | 2026-01-13 | ores.security with RAII OpenSSL. | |
| Connection management | DONE | 2026-01-15 | ores.connections + Connection Browser MDI + modernised login dialog. | |
| Database naming refactor | DONE | 2026-01-14 | ores.risk → ores.refdata; <component>_<entity>_<suffix> across the schema. |
Product
| Story | State | Start | End | Description |
|---|---|---|---|---|
| Data Quality subsystem and Data Librarian | DONE | 2026-01-20 | the flagship of the sprint. | |
| Qt visual refresh | DONE | 2026-01-20 | icon-enum + theme refactor. | |
| Party database groundwork | BACKLOG | table structure only; postponed. |
Tooling
| Story | State | Start | End | Description |
|---|---|---|---|---|
| CLI entity coverage | DONE | 2026-01-12 | list/delete commands for the five entities the CLI was missing; helper-driven refactor. |
Agile
| Story | State | Start | End | Description |
|---|---|---|---|---|
| Sprint 09 housekeeping | DONE | 2026-01-20 | backlog + OCR. |
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
What went well
- Data Quality landed as a coherent subsystem rather than piecemeal: concept first, then domain types + FpML, then ER refactor, messaging, UI, publication, and finally a fake-world validation pass.
- Connection management unblocked the multi-environment agent workflow the project has been operating under for the last few sprints.
- Two big refactors — rename risk→refdata and the schema-wide naming pass — landed cleanly thanks to the prefix pattern being mechanical.
- The DQ subsystem migration of change-management messages out of IAM forced a circular-dependency fix that improved layering more broadly.
What hurt
- The DQ protocol bump (21.3 → 22.0) is genuinely breaking; the cost is paid up-front while client count is small, but it's still a cost.
- Documentation-refactor scope overlapped substantially with v2; we ended up postponing the v0 task because doing both would have been duplicate work.
- Boost.Graph as a build-time dependency is heavy for the one topological-sort we need today; justified by the more-graphs-coming argument but worth revisiting if that doesn't materialise.
What changed
ores.securityis now the only place that knows about OpenSSL primitives;ores.iamandores.connectionsconsume it.ores.riskis gone —ores.refdatareplaces it everywhere.- Schema-wide
<component>_<entity>_<suffix>naming is now the rule; new entities follow it by default. ores.dqis the home of data-quality and change-management machinery; messaging migrated accordingly.- Connection bookmarks live on the client (SQLite + AES-256-GCM) rather than mixed into the server schema.