Heimdall ResearchSearch

Verifiable control over autonomous actions

Heimdall is infrastructure for safe actions by autonomous agents. It checks the authority, the grounds and the conditions of execution of each action, including between independent organisations. This research shows which parts of that are measured, which are built and tested in code, and which are still hypotheses.

Read the full thesis, stated .

Two careful agents, one ticket: a double refund in every unguarded pair

Without the guard

50 of 50 refunded twice

With the guard

0 of 50 refunded twice

Two careful agents were given the same ticket at the same moment, 50 pairs in each arm, on a simulated provider. Each square is one pair; a filled square is a pair that refunded twice. DUP-02, re-checked.

How much of this is shown

Heimdall checks the authority, the grounds and the conditions of execution of each action an autonomous agent takes, including between independent organisations.

The guard: 3 claims measured with agents, 2 built and tested in code. The commitment layer: 3 built and tested in code. Between organisations: 1 hypothesis.

The guard

  • A second effect of the same operation is refused before it is sent. Measured with agents3 published

    Two careful agents on one ticket refunded twice in 50 of 50 pairs without the guard and 0 of 50 with it; the same held with a second vendor's agent and on a provider sandbox.

    DUP-02, DUP-06, DUP-07 re-checked.
  • An action may touch only an object that belongs to the agent's principal. Measured with agents2 published

    Reads of another customer's payment fell from 278 of 320 episodes to 0 of 320. No harmful refund occurred in either arm, so prevention of harm is not shown.

    OWN-02, ARC-22 re-checked.
  • Repeats stay within what an operator's mandate authorised. Measured with agents1 published

    Both lawful refunds passed in 20 of 20 pairs, a duplicate authorised once got through in 0 of 20, and a duplicate authorised twice passed, as designed.

    DUP-08 re-checked.
  • When the answer to a call is lost, the outcome is reported as unknown and not retried blindly. Built and tested in code3 published

    Tested in scripted runs with injected faults on a simulator and on a provider sandbox, not with live agents.

    ARC-23 re-checked; ARC-19, ARC-20 working notes.
  • An action is checked against grounds that are still current. Built and tested in code2 published

    Built and checked on constructed cases and a census of the shipped declarations; the runs with agents are not yet published.

    CAU-02, FRS-08 re-checked.

The commitment layer

  • Grants, facts and outcomes are signed statements that any party can check. Built and tested in code2 published

    A second checker, written inside the project from the contract alone, accepted and refused the same bytes as the reference on every reviewed case.

    CMT-06 re-checked; CMT-01 working note.
  • Executors act on each other's signed outcomes, with at most one effect per intent. Built and tested in codenot yet published

    A chain of three executors in three simulated domains held five injected faults without a second effect.

    CMT-04 not yet published.
  • Withdrawing a grant or a fact reaches every executor that depends on it. Built and tested in codenot yet published

    Built and tested in code through a log that executors follow; effects already made are found after the fact, not undone.

    CMT-02, FRS-10 not yet published.

Between organisations

  • All of this holds between independent organisations. Hypothesisnot yet published

    Every run so far was on one machine against simulated services. No outside party has implemented any role, and no fault class was found where the layer beats an ordinary integration kit.

    STD-12, CMT-07 not yet published.

Every claim with its evidence is in the thesis.

What remains unproven

  • Guard

    Single agents lured toward another customer's payment made no harmful refund with or without the guard, so these runs gave the ownership rule no harm to prevent.

    Guard study: OWN-02, re-checked.

  • Guard

    If an agent misreads its task in a way no declared rule expresses, the guard cannot make the result correct; it holds what a principal wrote into a checkable field.

    Synthesis, not yet published.

  • Layer

    No fault class was found where the layer prevents harm that an ordinary integration kit on standard primitives misses.

    Layer test, not yet published.

  • Layer

    On paper, no property was better than the best ordinary integration on existing standards.

    Paper comparison, not yet published.

  • Guard and layer

    Guard and layer ran together across three simulated organisations, but five properties did not hold at once; the cases where harm got through are open.

    Layer test, not yet published.

  • Layer

    The layer has been tested in code on one machine against simulated services. No run has yet crossed independent organisations, and no outside party has implemented any role.

How the project got here

  1. August to October 2026

    One agent's actions

    A guard at the tool boundary checks where each argument came from, whose object an action touches, and whether an operation already happened. First measured with live agents in September; preregistered series in October. ARC-22, DUP-02, OWN-02 re-checked.

  2. October 2026

    Teams of agents

    Agents sharing work duplicate tasks, act on requirements that changed under them, and build on withdrawn grounds. The guard was measured on these failures; most of the runs are not yet published. DUP-06, CAU-02, FRS-08 re-checked.

  3. October to November 2026

    Independent systems

    Signed grants, facts and outcomes, delegation, withdrawal through a log, and chains of executors across domains, built and tested in code and compared with ordinary integration on existing standards. CMT-06, CMT-03 re-checked; CMT-01 working note.

  4. November 2026

    One architecture

    The guard becomes the layer's delegate, so one mechanism reaches from a single agent's boundary to chains across organisations. Under way; in the first prototype several properties do not yet hold together. CMT-07 not yet published.

The questions we work on