audit(0073): cycle close — lift tier-2 geometry to ledger, finish VETTED_SYMBOLS, drop ephemera

Cycle-close audit: drift-clean on all load-bearing invariants (C7/C8/C15 hold; geometry stays non-scalar metadata, the Source seam still carries only (Timestamp, Scalar); scope boundary held — no resolver, quote_currency still &'static str, both #124's).

Tidy: completed the VETTED_SYMBOLS consolidation the feat commit over-claimed — migrated the two remaining inline vetted-symbol arrays in the crate-internal unit tests (instrument_spec_pip_value_matches_contract_times_pip, instrument_spec_ids_are_distinct) to the const, so #140 now extends one list.

Ledger: lifted this cycle's durable rationale into the C15 realization note (docs/design/INDEX.md) — the floor now carries tick_size/digits, and the recorded-metadata tier-2 source (instrument_geometry over symbol_meta -> neutral InstrumentGeometry, cross-checked against the authored floor) now exists at the ingestion edge; the tier-composing resolver remains #124.

Drop the ephemeral cycle spec + plan (docs/specs, docs/plans) per the lifecycle convention; durable rationale now in the ledger + the #143 thread.

refs #143
This commit is contained in:
2026-06-25 16:30:46 +02:00
parent 5b7cd5eb2d
commit dda20abc28
4 changed files with 12 additions and 590 deletions
+10 -1
View File
@@ -822,7 +822,16 @@ deploy-grade floor (`instrument_id`, `contract_size`, `pip_value_per_lot`, `min_
permanent authored floor of the override hierarchy (#124), the refuse-don't-guess
arm preserved. NB: `quote_currency` is `&'static str` (keeps the struct `Copy`); how
the #124 resolver's runtime-sourced tier carries currency (a distinct resolved type,
or widening the field) is that cycle's decision — see #124.
or widening the field) is that cycle's decision — see #124. Cycle 0073 (#143)
appended `tick_size` + `digits` (provider price-rounding geometry; still additive and
`Copy`) and surfaced the **recorded-metadata tier-2 source** at the ingestion edge:
`instrument_geometry(server, symbol)`, over data-server's `symbol_meta`, returns
neutral broker-agnostic `InstrumentGeometry` (the raw provider JSON never enters this
repo), and a build/test-time cross-check pins the authored floor against that provider
truth for the vetted set. The geometry is an untrusted input the authored override
supersedes — non-scalar metadata beside the hot path, never a `Source`. The
tier-*composing* resolver, and the `quote_currency` runtime-type transition, remain
#124's.
### C16 — Engine / project separation; three-tier node reuse
**Guarantee.** aura is the reusable **engine**; each research project is a