Kit de evidencias (kit-evidencias/v1.1)¶
La evidencia del checklist se toma durante la revisión, no al final. El cierre produce un paquete verificable que revisa el Peer Review y que respalda el VoBo. El mismo formato lo usan las otras skills de evidencias del laboratorio (Azure DevOps, GCP/GKE, integridad).
Cómo se registra¶
- Cada confirmación que el SCM marca o desmarca se envía al servidor.
- El servidor vuelve a evaluar las reglas del ítem con los datos guardados: el navegador no puede declarar un ítem como válido por su cuenta.
- Cada cambio agrega una fila a una pestaña append-only de la hoja con
quién, cuándo, el valor revisado y un hash encadenado
sha256(hashAnterior + contenido). - Al completar el checklist, el servidor revalida todo y, si algo falla, rechaza el cierre y deja evidencia del rechazo. Si todo está bien, genera el paquete en Drive.
Estructura del paquete¶
<tipo>/<objeto>/<runId>/
├── manifest.json # datos crudos + sha256 de cada archivo (fuente de verdad)
├── reporte.html # reporte legible generado desde el manifest
├── reporte.pdf # el mismo reporte en PDF
├── capturas/
│ ├── validacion-md5.png # validación de artefactos (obligatoria si hay artefactos)
│ ├── 01-reporte.png # captura del reporte (opcional)
│ └── NN-<descripcion>.png # capturas adicionales, desde 02
└── adjuntos/ # snapshot de la nota, logs, artefactos
tipo:checklist,azure-devops,gcp-gkeointegridad.runId: UUID v4 de la ejecución.- El manifest incluye la cadena de eventos y un
integridadManifestcalculado sobre su JSON canónico.
MD5 solo donde corresponde
El MD5 se usa únicamente para los artefactos que valida el SCM (por
ejemplo .yaml o .tar del despliegue) contra el MD5 esperado de la nota,
y queda con una captura PNG de esa validación. La integridad del paquete
(PDF, capturas, notas) es solo SHA-256.
Verificación¶
- En Google: verificación del último paquete de una solicitud y de la cadena completa de la hoja.
- Fuera de Google:
verificar.mjsrecalcula hashes y tamaños, marca archivos que estén en la carpeta pero no en el manifest y comprueba la cadena y elintegridadManifest. Código de salida 0 = íntegro. - Probado: detecta un byte cambiado en un archivo, el manifest alterado y un evento de la cadena alterado.
Un solo documento de cierre¶
El Checklist/VoBo es el único documento de cierre. Los paquetes de otras
skills (por ejemplo, la evidencia de un pipeline de Azure DevOps) quedan como
evidencia independiente y se referencian desde los ítems del checklist con su
integridadManifest. Si alguien altera después uno de esos paquetes, la
verificación del checklist lo detecta.