Task: Apply the same shape to the curve configuration document

Table of Contents

This page documents a task in the Refactor conventions onto families and bundles — the remaining work story. It captures the goal, current status, acceptance, and any notes or results.

1. Goal

The curve configuration document gets the treatment the conventions document got. It stops being one value carrying every curve family, and the operations that write and read it stop reaching every family from one translation unit.

2. Status

Field Value
State BACKLOG
Parent story Refactor conventions onto families and bundles — the remaining work
Now Not started. The conventions half is the pattern this task follows.
Waiting on Task 1, whose deletion is the precedent.
Next Agree who holds the protocol split, then move the curve families off the document.
Last touched 2026-10-18

3. Acceptance

  • The curve configuration document is split by family, and no type in refdata carries every curve family.
  • The protocol and handler are split so that each translation unit reaches one family, following the measurement in Fix the tenor basis swap convention model and the document TU.
  • The import applies the families as a bundle in one unit of work, as the conventions import does.
  • The curve configuration document the ORE path writes and reads is the same document before and after, proven by importing and exporting a sample unchanged.

4. Plan

Follow the conventions half. Agree who owns the protocol split with the tenor basis swap story, then move the families off the document, then the protocol and handler, then the ORE path.

5. Measurements

Every number this task claims about a tree, with the command that produced it and the commit it was measured at. A number without both is not a measurement, because a clean-up record describes a tree and trunk moves under a branch: a consumer count, a gate's component count and a suite's size all change with no code changing, and the reader of a bare number cannot tell which tree it came from. Where the raw output matters, put it in an evidence/ file beside the task and name that file in the Command column.

What Value Command Commit
       

6. Notes

  • This ground is shared. The story Fix the tenor basis swap convention model and the document TU owns the task to split the configuration document protocol by family, and it covers the curve configuration half as well as the conventions half. Agree which environment holds the protocol split before either starts, or both will rewrite the same header.
  • The curve configuration document is now the only document riding in configuration_document_handler.cpp. The conventions operations left that unit when the conventions import moved to the bundle, so the handler is a curve handler in all but its name.

7. Test Scenarios

Manual QA scenarios (scaffolded via compass add test_scenario) that verify this task. Link new ones here as they're created; the scenario doc itself links back via its "Verifies task" field.

Scenario State Notes
     

8. PRs

PR Title
#3476 [agile] File the curve configuration task

9. Review

Comment summary File Decision Notes
       

10. Result

Emacs 29.3 (Org mode 9.6.15)