Story: Atomise every convention onto the central entity — the remaining work
Table of Contents
This page documents a story in Sprint 30, carried unfinished from Sprint 29 at close. It captures the goal, current status, acceptance criteria, and the tasks that compose it.
1. Goal
Tenor basis swap is rebuilt on the central convention row and the composite parent-and-parts pattern, with the family get and put generated. Each remaining convention follows in its own PR, and no convention type or row holds the whole convention.
2. Status
| Field | Value |
|---|---|
| State | BACKLOG |
| Parent sprint | Sprint 30 |
| Now | Not yet started. Split from Atomise every convention onto the central entity — the remaining work, which closed in sprint 29 with its done tasks. |
| Waiting on | Nothing. |
| Next | Triage into a sprint. |
| Last touched | 2026-11-08 |
3. Acceptance
- Tenor basis swap is a central convention row plus tenor_basis_swap_pay_receive and tenor_basis_swap_long_short child entities, with the parent version bumped on any part write.
- The generic put writes the central row and the family put writes the central row and the parts in one transaction, and each family get mirrors its put.
- The nine conventions of the cluster and the other kinds each convert in their own PR, with no aggregate type or nested member left.
- The Windows translation unit pressure is gone, because no unit reflects a wide entity type.
4. Tasks
| Task | State | Start | End | Description |
|---|---|---|---|---|
| Build the composite family get and put | BACKLOG | Generate the family get, get_many, put and put_many for a composite entity, so one round trip reads a central row with its parts at one instant and one transaction writes them together. Prove the generated operations on an existing composite before the convention pilot depends on them. The generic get and put stay as they are, and the family names follow the codegen pattern library. |
5. Decisions
- Split from Atomise every convention onto the central entity — the remaining work on 2026-11-08 at sprint 29 close. The acceptance above is copied from that story; its done tasks are recorded there.