# F-106 — Reviewer gate: APPROVED

## Alcance revisado
- `project/src/modules/orders/api/orders.routes.ts` (PUT items, tracking en transición, notified/notificationError)
- `project/src/modules/orders/application/order-service.ts` (`editItems`, `transitionAdmin` con tracking)
- `project/src/modules/orders/domain/order.ts`, `domain/ports.ts`
- `project/src/modules/orders/infrastructure/pg-order-repository.ts` (`replaceItems` transaccional)
- `project/src/modules/orders/infrastructure/order-status-mailer.ts`
- `project/migrations/036_order_tracking_number.js`
- Admin: `apps/admin/src/app/(dashboard)/orders/[id]/page.tsx`, `lib/api-client.ts`, `types/index.ts`

## Veredicto
- La edición de artículos usa transición explícita con rollback; totales recalculados server-side (el cliente no puede imponer precios).
- Tracking obligatorio para SHIPPED validado en backend (422) y en UI.
- Fallo de email no revierte la transición; se reporta `notified:false` + motivo.
- Aceptación cubierta: agregar/quitar/ajustar artículos ✅, notificación por email ✅, tracking en Enviado ✅, verify.sh verde ✅.
