Task: CDM Phase 1: Rates instrument domain model

Table of Contents

This page documents a task in the CDM instrument domain models story. It captures the goal, current status, acceptance, and any notes or results.

Goal

Phase 1 of the CDM-inspired instrument design: rates instruments (Swap, CrossCurrencySwap, CapFloor, Swaption).

Status

Field Value
State DONE
Parent story CDM instrument domain models
Now Completed 2026-03-26.
Waiting on None.
Next None.
Last touched 2026-03-26

Acceptance

  • SQL: ores_trading_instruments_tbl + ores_trading_swap_legs_tbl + notify triggers + drop files; trading_create.sql + populate_trading.sql + seed data.
  • Domain: instrument + swap_leg structs with JSON + table I/O + generator + protocol.
  • Repository: entities + mappers + repositories + services.
  • Server: messaging handler + registrar.
  • Qt UI: ClientInstrumentModel + InstrumentMdiWindow + InstrumentDetailDialog + InstrumentHistoryDialog + InstrumentController + MainWindow integration.
  • CLI commands deferred to a follow-up story.

Plan

Captured during execution; cleared into the parent story on close.

Notes

PR #569. CLI deferred but otherwise complete.

Result

Rates instruments first slice complete.

Emacs 29.1 (Org mode 9.6.6)