Actualidad · Guía práctica documentada
Una hora repetida necesita algo más que la fecha para identificar un registro
Cómo conservar el instante cuando un reloj local vuelve atrás.
Una hora escrita sin zona puede identificar dos instantes durante el cambio de horario. La documentación de zoneinfo explica cómo las zonas IANA representan transiciones y cómo fold distingue las dos apariciones de una hora ambigua. Para ordenar avisos o registros, una columna con fecha y hora local puede resultar insuficiente aunque todas sus filas parezcan válidas.
Ejemplo editorial ficticio: una recepción anota dos movimientos con la misma hora, antes y después de atrasar el reloj. El informe los considera duplicados porque compara solo el texto mostrado. La decisión elimina un movimiento real del supuesto. La corrección propuesta conserva instante UTC, zona de presentación e identificador del evento por separado; la etiqueta visible deja de ser la clave.
Para reproducir el caso en un sistema propio, crea dos registros a ambos lados de una transición de la zona utilizada. Comprueba que los instantes y sus desplazamientos difieren aunque coincida la hora del reloj. No introduzcas una fecha de transición recordada de otro país: consulta los datos de zona instalados y registra su versión en el expediente de prueba.
Si el archivo original ya perdió el desplazamiento, no es posible reconstruir siempre la secuencia con certeza. Conserva el original y pide otra evidencia, como un contador o registro del servidor. Añadir una zona después no demuestra cuál de las dos apariciones quiso registrar quien escribió la hora. La incertidumbre debe quedar visible en el resultado.
La propuesta es una revisión documental y un diseño de control, sin ensayo de un programa de recepción real. Antes de cambiar una importación, guarda tres resultados: filas originales, filas conservadas y motivo de exclusión. Así puede comprobarse si la deduplicación se apoya en identidad del evento o simplemente en una coincidencia del reloj.