Story: Refdata taxonomy work
Table of Contents
This page documents a story in Sprint 13. It captures the goal, current status, acceptance criteria, and the tasks that compose it.
Goal
Three pieces of taxonomy hygiene: promote rounding type from a string to a proper refdata entity; split currency_type into asset_class + market_tier; rename asset-class values to avoid the trading-domain overload.
Status
| Field | Value |
|---|---|
| State | DONE |
| Parent sprint | Sprint 13 |
| Now | Completed 2026-02-24. |
| Waiting on | None. |
| Next | None. |
| Last touched | 2026-02-24 |
Acceptance
- rounding_type a first-class refdata entity end-to-end.
- currency_type retired in favour of asset_class + market_tier (protocol 41.0).
- Asset-class naming pass clearer.
Tasks
| Task | State | Start | End | Description |
|---|---|---|---|---|
| Add rounding type entity | DONE | 2026-05-20 | 2026-02-23 | rounding_type domain entity end-to-end: JSON model, repository, protocol, service, Qt UI (model + MDI + detail + history); CurrencyDetailDialog replaces free-text with combo box (server-populated, tooltips); Data menu restructured (top-level Currencies/Countries; Auxiliary Data submenu); Rounding Types toolbar entry from CurrencyDetail; description SQL enriched with 2-dp examples. |
| Enhance currency taxonomy | DONE | 2026-05-20 | 2026-02-24 | Replace currency_type free-text with structured asset_class (fiat / crypto / commodity / synthetic / supranational) + market_tier (g10 / emerging / exotic / frontier / historical); two new refdata entities currency_asset_class + currency_market_tier (SQL + domain + repo + service + messaging + Qt + Wt + CLI); protocol 41.0 (breaking). |
| Rename currency asset classes | DONE | 2026-05-20 | 2026-02-24 | Avoid 'asset classes' for values that aren't usual asset classes; pick clearer naming. |
Decisions
- Promote free text to refdata
- every promotion adds governance + history + audit.
- Two dimensions, not one
asset_class+market_tiercaptures whatcurrency_typewas conflating.
Out of scope
- Migration of historical free-text data to the new taxonomy.
See also
None.