verdict_lookup
The reconciliation layer in one call. Where cross_lens_verify answers
"what is this network destination," verdict_lookup answers a different,
sharper question about a key-addressed ACTOR: does what this key claims
about itself match what the network has seen it do?
It fuses two sides:
claim — what the key can prove about itself: its
attestation_tieracross roots of trust (bare Ed25519 self-attestation → a RATS/EAT hardware/platform attestation). TunnelMind owns no silicon and reads every root; the tier is always measured/anchored, never self-asserted (a token claiming a higher tier than its trust anchor is trusted to assert is capped down).conduct — what the graph has seen the key's subject do (Scry × Sigil × GhostRoute), supplied via the optional
subjectparameter.
The response carries reconciliation.contradictions (e.g. a key that
attests silicon-root but behaves as a low-trust node →
claim_exceeds_conduct; a presented claim that fails to verify →
unverified_claim; claims presented with no proof of key control →
key_control_unproven), a claim_vs_conduct_delta, and a
verdict {tier, reputation, flags, confidence}.
Keys are linked to an identity ONLY when the actor cryptographically proves control — never inferred from behavioral correlation. An EAT that attests a different subject key is rejected, not silently merged.
The verdict is published as a self-verifying receipt: given the receipt
bytes + the witness public keys carried inline, anyone re-derives the
verdict and checks log inclusion OFFLINE with scripts/verify-verdict.mjs
— no call back to TunnelMind. A bare, unattested key still gets a verdict
(at self-asserted tier); attestation is never required to participate.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| eat | No | A RATS/EAT compact JWS (EdDSA) attesting this key, signed by a trusted anchor. | |
| key | Yes | The actor's Ed25519 public key, as hex (64 chars, optional 0x), base64url (43 chars, unpadded), or did:key (did:key:z6Mk…). | |
| sig | No | Base64 Ed25519 signature over `nonce`, proving control of the key. | |
| nonce | No | Binding nonce for a bare-Ed25519 self-attestation (paired with `sig`). | |
| claims | No | URL-encoded JSON array of raw claim objects, e.g. `[{"type":"ed25519-self","signature":"…","nonce":"…"},{"type":"eat","token":"…"}]`. Overrides the `nonce`/`sig`/`eat` convenience params when present. | |
| subject | No | An ip / domain / ASN / entity_slug the key claims to act as. Drives the conduct (graph behavior) side of the reconciliation. Omit for a claim-only verdict. |