diff --git a/work/current.md b/work/current.md index 43269d8..85d71cb 100644 --- a/work/current.md +++ b/work/current.md @@ -1,4 +1,12 @@ -# Feature actual: F-143 (Reporting: contracts, filters and RBAC) +# Feature actual: F-145 (Reporting: payment lines and POS cash-safe capture) + +## F-144 cerrada (2026-08-22) — Reporting snapshots: store/VAT/cost/shipping + +- `048_reporting_store_shipping_snapshots.js`: `orders_orders.store_id` (uuid NOT NULL DEFAULT default-store + FK→pos_stores + idx), `orders_orders.shipping_cents` (integer NOT NULL DEFAULT 0), `orders_items.cost_at_sale_cents` (bigint nullable), `orders_items.vat_rate` (text nullable). +- `reporting-snapshots.itest.ts` 3/3 ✅ (DB real, migration 001→048 aplicada). +- tsc 0; boundaries 0 nuevas; verify.sh verde; commit `2ea628f`. +- Gates: reviewer ✅ / security ✅ / qa ✅ / document ✅ / leader-close ✅. +- **Siguiente**: F-145 (Reporting: payment lines and POS cash-safe capture). ## F-138 cerrada (2026-08-22) — auto-seed default price row on variant creation diff --git a/work/history.md b/work/history.md index 328e0e2..fd96062 100644 --- a/work/history.md +++ b/work/history.md @@ -417,3 +417,11 @@ - Tests: SettingsWelcomeMailer.test.ts (5) + orders-index.test.ts (1); tsc --noEmit 0 errors; prettier+eslint clean en archivos tocados; lint:boundaries sin nuevas violaciones (queda solo R1 preexistente security.routes); 197 tests pass; git diff --check clean. - Artefactos: work/artifacts/F-152/ (architect.md, implementer.md, reviewer.json, security.json, qa.json, leader-close.json) - Commits: feat(F-152): completed feature + chore: reset runtime after F-152 (push omitido, sin remote origin) +## F-144 cerrada (2026-08-22) — Reporting snapshots: store/VAT/cost/shipping +- Gates: reviewer APPROVED, security APPROVED, qa APPROVED, verify.sh exit 0 +- Entregable: migración node-pg-migrate 048 (idempotente/reversible) añade `orders_orders.store_id` (uuid NOT NULL DEFAULT default-store + FK→pos_stores(id) + idx), `orders_orders.shipping_cents` (integer NOT NULL DEFAULT 0), `orders_items.cost_at_sale_cents` (bigint nullable), `orders_items.vat_rate` (text nullable) — snapshots; itest `reporting-snapshots.itest.ts` (DB real) 3/3 +- Nota: PG16 no admite `ADD CONSTRAINT IF NOT EXISTS` → FK usa `DO $$` guard (convención 047); el itest usa `INSERT (source) VALUES ('pos')` para satisfacer el CHECK de 047 +- Commit: `2ea628f feat(F-144): completed feature` +- Artefactos: `work/artifacts/F-144/` (architect.md, implementer.md, reviewer.json, security.json, qa.json, documenter.md, leader-close.json) +- Siguiente: F-145 (Reporting: payment lines and POS cash-safe capture) +