Saltar a contenido

ADR-001 — Bucketing de chances a sorteo por ventana de emisión

  • Status: accepted (D1 del BRIEF, aceptada por el operador — no re-litigar)
  • Context: Cada sorteo semanal debe saber qué chances le pertenecen. Los clientes pueden guardar vouchers y registrarlos tarde.
  • Alternatives: por fecha de registración (abre el hueco de guardar vouchers para la semana "conveniente"); por ventana de emisión (elegida).
  • Decision: Cada sorteo toma las chances con fecha de emisión en [fecha_sorteo_anterior, fecha_sorteo_actual). El primer semanal toma desde el inicio de vigencia. Lo emitido tras el último semanal cae en el sorteo de cierre.
  • Consequences: El query de elegibles del acta es determinista y auditable; un voucher registrado tarde participa del sorteo de su semana de emisión si este no se ejecutó aún, o del siguiente que lo capture por ventana.

Implementation Plan

  • Query de elegibles en el motor de sorteo (backend): filtro por chance.fecha_emision contra la ventana del sorteo + exclusión ADR-003.
  • La ventana se congela en el snapshot del acta (filtros).

Verification

  • [ ] Test: chance emitida lunes 08/09 y registrada el 16/09 entra al sorteo del 21/09 (ventana [14/09, 21/09)), no al del 14/09.
  • [ ] Test: chance emitida después del 05/10 cae en el sorteo de cierre.
  • [ ] El acta persiste la ventana usada en filtros.