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_tier captures what currency_type was conflating.

Out of scope

  • Migration of historical free-text data to the new taxonomy.

See also

None.

Emacs 29.1 (Org mode 9.6.6)