@startuml uml-state-caso-soporte-abierto !include _style.iuml title 11. State machine — Caso de soporte break-glass (Zero Trust) [*] --> abierto : abrir(motivo, agente, pin_id) [PIN del cliente vigente] abierto --> expirado : expirar() [timer 4h automatico] abierto --> cerrado_manualmente : cerrar_manual(agente, motivo_cierre, notas) expirado --> [*] cerrado_manualmente --> [*] note right of abierto Estado inicial al redimir el PIN del cliente. expira_en = NOW() + INTERVAL '4 hours' por DEFAULT (003_pins_soporte_cliente.sql:31). end note note right of expirado Timer automatico: si cerrado_en IS NULL y NOW() > expira_en, el caso pierde scope. Cumple Zero Trust: minima ventana de acceso. end note note left of cerrado_manualmente Cierre voluntario antes del TTL. Recomendado: agente cierra apenas termina la atencion. Queda en logs_auditoria. end note footer Fuente: tabla casos_soporte_abiertos 003_pins_soporte_cliente.sql:25 | TTL 4h DEFAULT linea 31 | flujo break-glass Zero Trust @enduml