Story: Add entity groups and finish the remaining codegen work

Table of Contents

This page documents a story in Sprint 28. It captures the goal, current status, acceptance criteria, and the tasks that compose it.

1. Goal

Add an entity group annotation to the model and a group flag to codegen, and finish the remaining codegen work: the model drift fixes, the counterparty logo picker and the tenor convention messaging layer under codegen, and the literate template split.

2. Status

Field Value
State DONE
Parent sprint Sprint 28
Now Nothing.
Waiting on Nothing.
Next Nothing.
Last touched 2026-10-24

3. Acceptance

The story closes on the tasks it finished:

  • Make the umbrella header a permanent artefact.
  • Mop up the codegen snags the parts guard left.

4. Tasks

Task State Start End Description
Make the umbrella header a permanent artefact DONE   2026-10-16 Salvaged from the retired branch feature/codegen-improvements: land the umbrella-header restructure, which already exists as a clean cherry-pick of 875df5ff79 on branch feature/codegen-umbrella-headers. The umbrella header sits in the disabled ores.cpp.scaffold facet, so no regeneration emits it and no gate covers it; 46 copies survive in the tree, stale.
Mop up the codegen snags the parts guard left DONE 2026-10-16 2026-10-17 The parts now generate their presence files, but not their CMake: generate.py holds the graph off every ores.cmake.* facet for a sub-component project, because 93 of the 94 checked-in src/CMakeLists.txt diverge from the template baseline and regenerating one deletes behaviour. The same shape leaves ores.geo's hand-migrated CMake and ores.history/api's hand-written header-only INTERFACE library reconciling against templates that no longer match them. Sources: the captures bring-the-part-cmake-link-lists-under-the-model and reconcile-the-generated-files-main-hand-edited.

5. Decisions

6. Out of scope

Emacs 29.3 (Org mode 9.6.15)