2026-10-08 · Authorization invariant discovery

<aside> 🔒

EXECUTED REFERENCE MODEL · 16/16 PASS

Discovery date: October 8, 2026. A privileged action is authorized only when authority is bound to the requesting principal, task, tool, exact arguments, validity window, and a fresh one-shot nonce. A successful ALLOW consumes the nonce.

</aside>

$$ \mathrm{Invoke}\Rightarrow \mathrm{BoundPrincipal}\land \mathrm{BoundTask}\land \mathrm{BoundTool}\land \mathrm{BoundArgs}\land \mathrm{Fresh}\land \mathrm{ActivePrincipal}. $$

Consequences: cross-principal reuse, cross-task reuse, tool substitution, argument/content substitution, expired or pre-issued use, inactive-principal use, and replay are rejected. A valid signature observes a grant; it does not itself authorize invocation.

Confused-deputy closure: a persisted prefix, cached approval, or reusable allow rule cannot by itself authorize a later request in a new requester/task context.

Executable and formal routes: auth-kernel validation · auth-kernel theorem · Mathematical City security record · public page

Upstream evidence boundary: OpenAI Codex public source inspected on 2026-10-08 contains persist_execpolicy_amendment, documented to persist an approved prefix for future commands. Sovereign Veritas issue #4 records the earlier sv.gate/0 authorization/evidence-binding defects and proposed additive repair. NVIDIA NeMo direct upstream regression remains incomplete in this execution record.


Surfaces

Judgment

Invoke requires Candidate, the syntactic gate, a live nonce, and an active subject.

A valid signature observes. It does not invoke.

ALLOW spends one nonce. Refusal does not write.

The issue record stores the canonical JSON body, including arguments. ALLOW re-verifies HMAC-SHA256, then claims the nonce under a lock.

Main text

Invoke := Candidate ∧ G_syn ∧ X ∧ Active(subj(d))
G_syn := Issued ∧ InWindow ∧ ToolOk ∧ ArgsOk
X := Bound ∧ Fresh_Σ
Bound(d) ⇔ Active(subj(d))

¬Active(subj(d)) ⊢ ¬Invoke
ValidSig(d) ⊢ V_obs(d)
ValidSig(d) ⊬ Invoke

Σ ; Γ ⊢ ALLOW ▷ Σ[x.nonce ↦ SPENT] if Invoke

Code file auth_kernel.py is on GitHub and Drive. Notion attachment follows on this page.