Skip to main content

Agent on a Git Repo: Test Results

All 46 checks passed at commit f271e6c6b005 on 2026-10-03.

These are the results of the two suites behind An Agent on a Git Repo. The page is written by tests/network/agent-git-landing/report.py from a real run; it is not edited by hand.

SuiteWhat it checksChecksPassedFailed
Contract proofsThe rules and witness model under theory v2 and v3, commit by commit770
End-to-end runA local hub, a bare origin, five keys, and modal-git doing each step39390

Contract proofs​

landing_tests in rust/modality-common reads the example's own model/default.modality and rules.txt. Each case runs under theory v2 and again under v3.

CaseResult
Sets from writes the value accepted at another pathPass
The landing rules hold for the witnessPass
A replacement model cannot drop the pathPass
A clean change lands along the pathPass
A protected change needs a review of that shaPass
A land without the right evidence is refusedPass
The agent cannot write evidence or change the contractPass

End-to-end run​

tests/network/agent-git-landing/test.sh. A check that something is refused passes when it is refused. For the forged land, the run also checks that the hub's refusal names the rule it breaks.

StageCheckResult
SetupShould create steward's passfilePass
SetupShould create agent's passfilePass
SetupShould create ci's passfilePass
SetupShould create reviewer's passfilePass
SetupShould create mallory's passfilePass
SetupThe hub should listen on 18571Pass
SetupThe steward bootstraps the contract and the origin hookPass
Editing and local commits are freeThe agent commits locally with no contract stepPass
Editing and local commits are freePushing main straight to the origin is refusedPass
A clean change lands along the pathA key that is not an agent's cannot proposePass
A clean change lands along the pathThe agent proposes its commitPass
A clean change lands along the pathLanding before any attestation is refusedPass
A clean change lands along the pathThe agent cannot attest its own changePass
A clean change lands along the pathThe runner attestsPass
A clean change lands along the pathThe attestation: tests pass, nothing protectedPass
A clean change lands along the pathThe runner cannot landPass
A clean change lands along the pathThe agent landsPass
A clean change lands along the pathThe origin's main is the landed shaPass
A protected change needs a review of that shaThe agent proposes a change to the testsPass
A protected change needs a review of that shaThe runner attestsPass
A protected change needs a review of that shaThe attestation marks it protectedPass
A protected change needs a review of that shaLanding a protected change without a review is refusedPass
A protected change needs a review of that shaThe agent cannot review its own changePass
A protected change needs a review of that shaThe reviewer approves that shaPass
A protected change needs a review of that shaThe reviewed change landsPass
A protected change needs a review of that shaThe origin's main is the reviewed shaPass
A failing change does not landThe agent proposes a breaking changePass
A failing change does not landThe runner attestsPass
A failing change does not landThe attestation records the failurePass
A failing change does not landA failed run is refusedPass
A failing change does not landThe origin refuses the unlanded shaPass
A failing change does not landStatus names what is missingPass
A client that skips local verify is refused by the hubA client that skips the rules signs a head writePass
A client that skips local verify is refused by the hubThe hub refuses the forged landPass
A client that skips local verify is refused by the hubThe hub's refusal names the rules it breaksPass
A client that skips local verify is refused by the hubThe origin still refuses the unlanded shaPass
Audit: the log, the evidence, and the origin agreeThe audit replays the log and finds no problemsPass
Audit: the log, the evidence, and the origin agreeThe audit lists both landsPass
Audit: the log, the evidence, and the origin agreeThe audit catches a main the contract did not acceptPass

Run it yourself​

# Both suites, and this page
python3 tests/network/agent-git-landing/report.py

# Or each on its own
(cd rust && cargo test -p modality-common --features model-governance --lib landing_tests)
tests/network/agent-git-landing/test.sh