← Todos los proyectos

Nota de ingeniería / Caso documentado

Un pipeline puede ejecutarse bien y publicar datos equivocados.

En chile-hub, la pregunta no era cuántos datasets podíamos publicar. Era cómo evitar que un archivo aparentemente correcto introdujera un error difícil de detectar.

Código públicoContratos verificablesLimitaciones documentadas

01 / El riesgo concreto

El cero que desaparece

En Chile, el código territorial de Iquique es 01101. Si alguien lo convierte en número, se vuelve 1101. Ambos valores parecen razonables en una tabla, pero ya no son la misma clave.

Identificador correcto01101
Después de convertirlo a entero1101
raw = "01101"
wrong = str(int(raw))  # "1101"
assert raw != wrong

Reproducción mínima de una clase de error; no es el registro de un incidente en producción.

Consecuencia: cruces entre fuentes pueden omitir filas sin que falle la consulta. Un reporte termina siendo convincente, pero incompleto.

02 / Decisión de arquitectura

La validación decide si algo se publica

El flujo separa obtención, construcción, verificación y publicación. Los contratos, la procedencia y los criterios de publicación no son adornos del README: son controles del sistema.

  1. 01

    Extraer

    Obtener datos y registrar su origen.

  2. 02

    Construir

    Normalizar claves y formatos sin perder información.

  3. 03

    Verificar

    Comprobar esquema, cobertura y reglas del dataset.

  4. 04

    Publicar

    Liberar solo lo que supera la política aplicable.

03 / Decisiones comprobables

Tres decisiones que hacen al sistema auditable

Claves como texto de ancho fijo

Los códigos CUT se conservan como cadenas para evitar la pérdida de ceros iniciales.

Ver ADR de códigos CUT ↗

Contratos ejecutables

Cada conjunto de datos declara restricciones verificables; los cambios de formato no deben pasar inadvertidos.

Inspeccionar contratos ↗

Publicación por madurez

Las fuentes frágiles o con licencias pendientes no se presentan automáticamente como estables y publicables.

Ver criterios de inclusión ↗

04 / Lo que no voy a ocultar

La confiabilidad también implica decir «todavía no»

Las fuentes externas cambian, se caen y a veces bloquean la automatización. chile-hub documenta esas restricciones y distingue las fuentes estables de las candidatas. Un snapshot declarado no equivale a datos recién obtenidos.

Este caso demuestra decisiones e implementación inspeccionables; no es una auditoría externa ni garantiza ausencia absoluta de errores. No equiparo descargas de PyPI con usuarios o instalaciones.

05 / Verificación independiente

No tienes que confiar en esta página

La explicación está conectada con el código y los documentos públicos. Abre cualquier evidencia y evalúa si las decisiones tienen sentido.

01Código y trazabilidadRepositorio abierto y mantenido02Control de publicaciónScript de verificación del pipeline03Documento de ingenieríaCaso técnico original, decisiones y limitaciones04Citación persistenteRegistro DOI del proyecto en Zenodo

06 / Aplicación fuera de chile-hub

¿Qué tiene que ver esto con tu automatización?

Un proceso que consolida reportes, descarga permisos o sincroniza carpetas necesita principios parecidos: entradas verificadas, salidas deterministas, control de ejecuciones repetidas y fallos visibles. No es el mismo sistema, pero sí la misma disciplina.

Ver cómo trabajo con pipelines Python →