verify hash <file>
SHA-256 real de un fichero real de tu máquina.
$ verify hash ./release.tar.gz
{
"file": "./release.tar.gz",
"bytes": 40412,
"sha256": "9f2c…a41b"
} Un pequeño CLI local. Sin instalación global, sin cuenta, sin llamadas de red. Dos comandos se parecen y no son lo mismo: `demo` lee una respuesta guardada, `kernel-evaluate` ejecuta el kernel ahora. Cada respuesta dice cuál de las dos ocurrió.
demokernel-evaluateCódigos de salida: 0 el expediente era interpretable · 2 no interpretable, o petición rechazada · 3 falló la cadena de identidad del kernel · 1 error de uso. Un 0 no significa que la evaluación fuera favorable — lee security_assessment_status.
# 1. the CLI itself has no runtime dependencies
node cli/bin/verify.mjs --help
node cli/bin/verify.mjs demo --scenario VALID # works right away
# 2. live evaluation additionally needs the Master Front NextGen source,
# which this release deliberately does not redistribute. Supply your
# authorised copy once:
python3 scripts/init_snapshot.py --zip path/to/DSEO-MASTER-FRONT-NEXTGEN.zip
# 3. confirm what your environment can actually do
node cli/bin/verify.mjs doctor
node cli/bin/verify.mjs kernel-evaluate --scenario VALID En ningún momento se descarga nada de la red. El inicializador comprueba ambos digests antes de extraer, rechaza miembros inseguros del archivo, nunca ejecuta nada del archivo, y es idempotente sobre un snapshot ya correcto.
verify hash <file>SHA-256 real de un fichero real de tu máquina.
$ verify hash ./release.tar.gz
{
"file": "./release.tar.gz",
"bytes": 40412,
"sha256": "9f2c…a41b"
} verify inspect <file>Hash más hechos estructurales básicos del fichero.
$ verify inspect ./bundle.json
{
"file": "./bundle.json",
"bytes": 1822,
"sha256": "4a01…9e3f",
"json_parses": true
} verify kernel-evaluate --scenario <id>EJECUTA el kernel ahora, sobre los inputs versionados de ese escenario. Si el kernel no está disponible, falla — nunca cae a una grabación.
$ verify kernel-evaluate --scenario TAMPERED_ARTIFACT --json
{
"envelope": {
"execution_mode": "LIVE_REFERENCE_KERNEL",
"kernel_invoked": true,
"candidate_sha256": "55187fd8…",
"input_bundle_digest": "…",
"snapshot_membership_unchanged": true
},
"result": {
"record_valid": false,
"security_assessment_status": "NO_CONSTA",
"release_authority": false,
"errors": [{ "code": "BUNDLE_PIN_MISMATCH", "...": "..." }]
}
} verify demo --scenario <id>LEE una respuesta grabada. No se ejecuta ningún kernel. Funciona sin snapshot instalado, y lo dice en su salida.
$ verify demo --scenario STALE_EVIDENCE
=== RECORDED_REPLAY — this is a stored answer, not a measurement ===
execution_mode: RECORDED_REPLAY kernel_invoked: false
scenario: STALE_EVIDENCE
recorded_fixture_digest: 0aa98a6a…
record_valid: true
security_assessment_status: NO_CONSTA
release_authority: false
To evaluate this now instead of reading it back:
verify kernel-evaluate --scenario STALE_EVIDENCE verify explain <result.json>Convierte cualquier resultado estructurado de Verify en un párrafo en lenguaje claro.
$ verify explain ./result.json
record_valid=true, security_assessment_status=FAIL.
This record is well formed and interpretable. Its answer is
unfavourable. release_authority is false, as it always is: this
result is not permission to act. verify doctorComprueba tu entorno local: versión de Node, si el snapshot AC7 está presente y coincide byte a byte.
$ verify doctor
node: v24.18.0 (ok)
AC7 snapshot: present
AC7 content_root: matches pinned value
kernel import: ok Ejecuta el kernel de aseguramiento de referencia real de Master Front NextGen sobre un bundle de tu máquina. Antes de importar nada recorre una única cadena de integridad — digest del archivo upstream, manifiesto acreditado, el fichero de métricas probado como miembro del manifiesto, coincidencia de digest a tres bandas en cada fichero del núcleo, pertenencia exacta — y se niega a ejecutar si se rompe cualquier eslabón.
Antes de importar nada rehace el hash de cada fichero del núcleo que decide y lo contrasta con el manifiesto acreditado, el digest del archivo y el content root fijado — 43 eslabones en una cadena.
Si difiere un solo byte, o hay un fichero no acreditado, no se ejecuta nada. No hay paso de reparación ni modo parcial.
Claves duplicadas, floats y valores no finitos los rechaza el parser del propio contrato, en lugar de aceptarlos en silencio como haría un JSON corriente.
Recibes el resultado más execution_mode, kernel_invoked, el digest de la entrada consumida, y si el snapshot cambió durante la ejecución.
Cinco comandos, en orden. Los tres primeros funcionan antes de preparar nada; los dos últimos necesitan el motor.
Abre una terminal en la carpeta del producto y escribe: node cli/bin/verify.mjs --help
Verás una lista de comandos, con los grabados y los en vivo descritos por separado.
Eso significa el CLI funciona. No has instalado nada y nada ha contactado con la red.
Escribe: node cli/bin/verify.mjs demo --scenario VALID
Verás un bloque que empieza por "RECORDED_REPLAY — esto es una respuesta guardada, no una medición".
Eso significa estás leyendo una respuesta grabada antes. Sirve para aprender, pero no acaba de ocurrir.
Prepara el motor una sola vez: python3 scripts/init_snapshot.py
Verás dos digests impresos y luego "snapshot ready".
Eso significa la fuente que necesitaba ya estaba dentro de esta carpeta. No se descargó nada.
Ahora escribe: node cli/bin/verify.mjs kernel-evaluate --scenario VALID
Verás un bloque que empieza por "execution_mode: LIVE_REFERENCE_KERNEL".
Eso significa este sí se ha ejecutado ahora, en tu máquina. Compara la primera línea con el paso B y siempre podrás distinguirlos.
Lee la línea que dice release_authority.
Verás false — en todos los resultados, incluidos los favorables.
Eso significa el motor nunca concede permiso para actuar. Lo que decide publicar, desplegar o aprobar es otra cosa, y es a propósito.
Si no funciona Si un comando termina en "NEEDS_SOURCE", el motor aún no está preparado: ejecuta el paso C. Si termina en "INTEGRITY_FAIL", algo de la copia fue alterado, y se niega a ejecutar en lugar de adivinar. Ninguno es un error: los dos imprimen un código que dice qué hacer.