17 lines
829 B
Markdown
17 lines
829 B
Markdown
# F-106 — QA gate: APPROVED
|
|
|
|
## Ejecutado
|
|
- `npm run typecheck` (backend): OK.
|
|
- `npx tsc --noEmit` (apps/admin): OK.
|
|
- `npm run build` backend: OK.
|
|
- `npm run build` admin (Next.js): OK.
|
|
- Migración `036_order_tracking_number`: aplicada (`Migrations complete!`), idempotente (`IF NOT EXISTS`).
|
|
- `./scripts/verify.sh`: verde.
|
|
- `monolith.sh prod restart`: backend/frontend/admin/storefront → HTTP 200.
|
|
- OpenAPI: `PUT /orders/{id}/items` registrado; `trackingNumber` presente en esquema de transición admin.
|
|
|
|
## Casos verificados (código + smoke)
|
|
- Transición a SHIPPED sin tracking → 422 TRACKING_NUMBER_REQUIRED.
|
|
- Edición de artículos con variante inexistente → 422 VARIANT_NOT_FOUND; sin precio → 422 PRICE_MISSING.
|
|
- Email sin SMTP configurado → `notified:false` + mensaje, pedido transiciona igualmente.
|