diff --git a/docs/design/INDEX.md b/docs/design/INDEX.md index 85f1012..4b1a2dc 100644 --- a/docs/design/INDEX.md +++ b/docs/design/INDEX.md @@ -896,11 +896,22 @@ compatibility this cycle, and still hosts the trace-coupled `summarize`, `RunRep `RunManifest`, and the columnar trace utils. The non-node engine-workspace crates are now `aura-engine` (run loop), `aura-cli` (`aura` binary), `aura-ingest` (ingestion edge), `aura-composites` (composite-builder convenience layer), and `aura-analysis` (post-run -domain reductions). Behaviour-preserving (C1): every serde shape is byte-identical (C18 -goldens green). **Deferred (#136 tail, genuine design forks):** making `RunReport` -generic over the metric type and re-bounding `sweep`/`mc`/`walkforward`; relocating the -`aura-registry` `Metric`/`metric_cmp`/rank vocabulary; relocating the mis-placed -orchestration types `FamilySelection`/`SelectionMode` out of the analysis module. +domain reductions + selection provenance). Behaviour-preserving (C1): every serde shape +is byte-identical (C18 goldens green). +**Realization (cycle 0080, #136 — engine-side extraction complete).** The last +trading-domain types still *defined* in `aura-engine`'s `report` module — the +selection-provenance types `FamilySelection` / `SelectionMode` — also move to +`aura-analysis` (the only non-cyclic home: `RunManifest.selection` needs the type and the +engine already depends on `aura-analysis`; the registry/CLI reach them unchanged via the +re-export). Behaviour-preserving (C1; suite 665/0). **Settled (2026-06-27, user-ratified +in the #136 thread):** the `aura-registry` `Metric` / `metric_cmp` / deflation vocabulary +**stays in the registry by design** — the registry is the trading *selection* layer, not +the domain-free engine, and its deflation statistics branch irreducibly on metric +identity (R-bootstrap vs. `total_pips` dispersion floor); forcing genericity would be a +one-implementor abstraction. **Deferred to the World / C21 layer (explicitly *not* #136):** +making `RunReport` generic over a metric type and turning the orchestration/registry layer +into a reusable domain-agnostic substrate — until then `RunReport` / `RunManifest` / +`summarize` stay trace-coupled in the engine. ### C17 — Authoring surface **Guarantee.** All *logic* — nodes, strategies, **and experiments/harnesses** —