1.6 KiB
1.6 KiB
F-144 — Documenter evidence
Scope of documentation change
F-144 is schema-only (DB columns). It does not change the reporting API surface or any user-facing behavior: GET /reporting/filters/schema and GET /reporting/filters/validate (F-143) are unchanged, and no new route is added.
What was already documented (no update needed)
docs/reporting/REPORTING_ARCHITECTURE.md §5 ya describe los snapshots requeridos y el riesgo:
- §5.1 (p.22):
orders_orders"No tienestore_iddirecto" → cubierto por F-144 (ahorastore_id). - §5.2 / §5.9 (p.23):
orders_items"No guardacost_at_sale, tipo de IVA, marca/categoría snapshot" → F-144 añadecost_at_sale_cents+vat_rate(marca/categoría postergados a F-145/F-146). - §5.6 (p.83-88): "Ventas netas sin portes" / "IVA por tipo" / "Margen histórico" → F-144 añade
shipping_centsseparado + snapshots de coste/IVA (nulos hasta F-146). - SQL esperado (p.97-98, 101-102, 194, 198):
store_idNOT NULL + index,cost_at_sale_cents/vat_ratenullable,shipping_cents. Todo implementado tal cual. - dataAvailability sigue siendo metadata-only (F-138 §4 / F-143 §4): valores nulos se exponen como
unavailable, NUNCA como 0 → invariante preservada.
Decision
No se requiere update de docs/API/contracts/user-facing notes. El document stage se marca completo con este registro de alcance cero, consistente con el gate document (optional) de harness/workflow.stages.yml. La evasión intencional del ADD CONSTRAINT IF NOT EXISTS (no soportado por PG16) hacia el DO $$ guard quedó registrada en architect.md §Consequences y en work/artifacts/F-144/implementer.md.