Files
wyndham-ARR/.project-docs/60-reflection/cases/2026-07-30-current-projection-must-exclude-fixtures.md
2026-07-31 15:11:42 +08:00

47 lines
1.8 KiB
Markdown

# Reflection: Current projections must exclude fixtures
## Trigger
Real daily uploads and automatic monthly publication were enabled while the database acceptance fixture remained in
`finance.current_daily_versions`, causing correct aggregation of non-business test data.
## Expected Behavior
The transition from schema acceptance to business-facing use should retire all fixture pins and verify that every
current Finance source has operational provenance.
## Actual Behavior
The fixture's immutable version and current pointer were both retained. Later features validated formulas, lineage,
downloads and max-ARRIVAL consistency against a structurally valid but contaminated snapshot.
## Root Cause
- Weak gate
- Unclear ownership
The handoff documented synthetic-data cleanup as a production gate, but no executable readiness check owned it.
## Evidence
- Current version 2: run `mvp-v1-fixture-20260727`, `synthetic.xml`, provider `local_fixture`.
- [Channel BI contamination evidence](../../50-evidence/topics/2026-07-30-channel-bi-post-update-data-contamination.md)
- `DATABASE_ARCHITECTURE_REASSESSMENT_V2.md` already required synthetic cleanup before production.
## Lesson
Structural reconciliation proves that downstream outputs match current facts; it does not prove those facts are
operational. Before business-facing acceptance, assert provenance as well as counts, hashes and formulas.
## Action
- Add check/eval
- Update gate
Future deployment/readiness work should fail when a current Finance version uses `local_fixture` or another explicitly
non-operational source. Cleanup must preserve immutable history while removing the fixture from the current projection.
## Promotion
Promote this to a deployment/data-readiness gate and automated acceptance check when remediation is implemented.