Saltar a contenido

ADR-008 — Estado terminal NO_OTORGADO

  • Status: accepted (D8 del BRIEF)
  • Context: Tras el cierre de campaña ya no hay "próximos sorteos" a los que devolver una unidad no entregada. La máquina de estados quedaba abierta.
  • Alternatives: devolver a Disponible para siempre (stock fantasma post-campaña); estado terminal explícito (elegida).
  • Decision: NO_OTORGADO como estado terminal, distinto de Disponible, con motivo (suplentes agotados | plazo de retiro vencido) + auditoría completa.
  • Consequences: El inventario de la campaña cierra exacto: cada unidad termina en Otorgado o NO_OTORGADO; la rendición ante Caracol es un COUNT.

Implementation Plan

  • Transición Sorteado → NO_OTORGADO (y Disponible → NO_OTORGADO al cierre para remanentes) con EventoPremio obligatorio (motivo, usuario, fecha).
  • Pantalla de ganadores: acción explícita del operador, nunca automática.

Verification

  • [ ] Test: unidad con suplentes agotados pasa a NO_OTORGADO con motivo y evento.
  • [ ] Test: NO_OTORGADO no cuenta en stock_disponible ni es asignable.
  • [ ] Test: transición sin motivo → rechazada.