829 B
829 B
F-106 — QA gate: APPROVED
Ejecutado
npm run typecheck(backend): OK.npx tsc --noEmit(apps/admin): OK.npm run buildbackend: OK.npm run buildadmin (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}/itemsregistrado;trackingNumberpresente 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.