-- ═══════════════════════════════════════════════════════════════════════
-- 2026-10-22_08 · Contingencia automática
-- ═══════════════════════════════════════════════════════════════════════
-- Si una transmisión falla sin respuesta, se anota por qué (factura.falla_transmision:
-- 'internet' = no se pudo conectar; 'hacienda' = Hacienda no respondió o respondió
-- con error). TareasFrecuentes (cada 10 min, en la navegación) manda el evento de
-- contingencia (tipo 3 o 1) cuando Hacienda vuelve a responder y transmite esos
-- documentos como diferidos. Se puede apagar (facturacion_emisor.contingencia_automatica).
--
-- Respaldo previo: backups/tinsa_db_pre-contingencia-auto_2026-10-22.sql
-- Reversa: database/rollback/2026-10-22_08_contingencia_automatica.sql
-- ═══════════════════════════════════════════════════════════════════════

USE tinsa_db;

ALTER TABLE factura
  ADD COLUMN falla_transmision ENUM('internet','hacienda') DEFAULT NULL COMMENT 'por qué no se pudo transmitir (sin respuesta)' AFTER intentos_transmision;
ALTER TABLE facturacion_emisor
  ADD COLUMN contingencia_automatica TINYINT(1) NOT NULL DEFAULT 1 AFTER transmitir_al_emitir;
