How it works

A small, deterministic core, and a hard boundary around it.

Verify is built around one idea: separate the question "what does the evidence show" from the question "who gets to act on it". The first question can be answered by a small, auditable core. The second question deliberately cannot — it belongs to whoever holds real authority over the system in question.

01 The chain

From bytes to an effect, or none.

Everything to the left evaluates. Everything to the right decides and acts. Verify never crosses this line.

01 Artifact Inside Verify

Something concrete arrives: a file, a build, a bundle. Not its name, not its version label, not the branch it came from. The bytes.

What this step does not mean

A filename is not an artifact. Two files called the same thing are not the same thing.

02 The core is small on purpose

You could read the whole thing in an afternoon.

The deciding core is 1,060 non-blank, non-comment lines across six files, with no third-party dependencies.

V Verified against source bytes Where this comes from
Source file
06_REFERENCE_IMPLEMENTATION/TCB-METRICS.json
Section
total_nonblank_noncomment_loc
File digest
5508c2eebf8d2da5d44dd804c59fb2420c2347781100169c0834fb639421ed5f
Verbatim quote
"total_nonblank_noncomment_loc": 1060

Line counts and per-file digests were recomputed in this workspace and matched the declared values exactly.

The deciding core reads no disk, no network, no clock and no environment. What it did not receive, it cannot consult.

V Verified against source bytes Where this comes from
Source file
01_WHY/02-DESIGN-GOALS.md
Section
Objetivos de diseño
File digest
28c436dd8a55b52ece319f4451755af972a3d2194cb8042184e63ff4e073994d
Verbatim quote
**Sin ambient authority:** el kernel no lee disco, red, reloj ni entorno.

Verified by reading the kernel sources: the only imports are base64, re, datetime, typing, hashlib, json, unicodedata, dataclasses and enum. No os, subprocess, socket, open, eval or exec.

Rules are a small fixed set of operations. A submitted record cannot carry code for the core to run.

V Verified against source bytes Where this comes from
Source file
01_WHY/02-DESIGN-GOALS.md
Section
Objetivos de diseño
File digest
28c436dd8a55b52ece319f4451755af972a3d2194cb8042184e63ff4e073994d
Verbatim quote
**Reglas finitas:** sin `eval`, `exec` ni código aportado por expediente.

Confirmed by source reading: no eval or exec appears anywhere in the kernel.

The assurance kernel never returns release authority. It reports an assessment and stops there.

V Verified against source bytes Where this comes from
Source file
03_ARCHITECTURE/00-ARCHITECTURE-OVERVIEW.md
Section
4. Principio GM-01 preservado
File digest
78c19b5bae12a001f385a6f2d1afb22ed507f72d019f806beebf73a466e01c8c
Verbatim quote
El kernel nunca devuelve `release_authority=true`.

Independently observed across all 15 recorded kernel fixtures: release_authority is false in every one.

03 Evidence

Evidence is a graph, not a pile.

Evidence nodes declare what they measure, which run produced them, when, and by whom — and they relate to each other through exactly five relations. There is deliberately no sixth one meaning "authorises".

Open the evidence graph →
04 Policy is enforced, not decorative

A field nobody reads is a field nobody enforces.

A field nobody reads is a field nobody enforces. Unrecognised authority or policy fields are rejected rather than ignored.

V Verified against source bytes Where this comes from
Source file
03_ARCHITECTURE/05-AUTHORITY-AND-POLICY.md
Section
Regla anti-policy-decorativa
File digest
db24aa133903c4e27d4b4d1546ad72f9fe8067174931585256638393633cc680
Verbatim quote
Campos desconocidos de Authority o Policy se rechazan.

Named in the source as the fix for a historical class of failure: declaring security in a field the executable never consumes.

When the evidence does not reach far enough to answer, Verify says so. Absence never becomes a pass.

V Verified against source bytes Where this comes from
Source file
01_WHY/02-DESIGN-GOALS.md
Section
Objetivos de diseño
File digest
28c436dd8a55b52ece319f4451755af972a3d2194cb8042184e63ff4e073994d
Verbatim quote
**NO_CONSTA fail-closed:** ausencia/insuficiencia no produce PASS.

Recorded fixtures MISSING_FACT, MISSING_EVIDENCE_OPEN, STALE_EVIDENCE and INSUFFICIENT_INDEPENDENCE all return NO_CONSTA.

Evidence that is present but out of date is reported as out of date, not invented as missing and not accepted as current.

V Verified against source bytes Where this comes from
Source file
03_ARCHITECTURE/04-EVIDENCE-GRAPH.md
Section
Completeness
File digest
4f8633072bb085f39eab245f274b3c9c4e30e46b52621a0c1c8d536ce16046dc
Verbatim quote
presente pero stale/untimely → NO_CONSTA, no “missing” fabricado

Recorded fixtures STALE_EVIDENCE and UNTIMELY_EVIDENCE both return NO_CONSTA.

Evidence from one run cannot be quietly borrowed to support another. A pass earned elsewhere stays there.

V Verified against source bytes Where this comes from
Source file
03_ARCHITECTURE/04-EVIDENCE-GRAPH.md
Section
Reglas
File digest
4f8633072bb085f39eab245f274b3c9c4e30e46b52621a0c1c8d536ce16046dc
Verbatim quote
evidence de otro run no puede prestarse silenciosamente

Recorded fixture BORROWED_RUN_EVIDENCE returns record_valid=false with CLAIM_CROSS_RUN_BORROWING.

05 Why it is shaped this way

Reading the chain, and what it buys you.

How this works

  1. 01

    The first five steps are Verify working

    Artifact, identity, evidence, policy, assessment. All of it happens inside a core that reads nothing but what it was handed.

  2. 02

    The boundary is a real stop, not a handover

    The chain does not continue across it. The core returns a result and ends; it has no mechanism for granting permission even to itself.

  3. 03

    The last two steps belong to someone else

    An external authority reads the assessment and decides. Only after that does anything happen — and often nothing does, which is a correct outcome.