Skip to content

AI software verification

Build at AI speed. Keep your tools. Let policy, not an agent, clear the change.

You do not have to replace your test runners, scanners or coding agents. Keep them and add The Warden: each verifier submits evidence for the exact build, and a deterministic policy decides whether their combined proof is enough. AI may help explain a decision; it never makes one.

Evidence from CI, a scanner and a reviewer is stopped at the gate while a change is HELD. Fresh passing evidence for a new build crosses it and the change is CLEARED, with the earlier decision preserved.
Change setacme/checkout-service · PR #418 · staging
Exact targetpinned
9f3c2a1build 4821

Evidence for any other build does not count toward this decision.

Evidence receipts
  • Run 8841 announced. No evidence yet for build 4821.
Quality decision · build 4821VERIFYING

The Warden is still verifying.

  • Complete automated test run for this build
  • Evidence is current (under 24 hours)

Run 8841 announced. No evidence yet for build 4821.

Decision history · append-only
  1. No decision recorded yet.

Build. A change arrives as an exact commit and build: 9f3c2a1, build 4821. CI announces run 8841. An announcement is never evidence.

Illustrative example: fictional repository, tests and counts.
Read this scene as text
  1. Build. A change arrives as an exact commit and build: 9f3c2a1, build 4821. CI announces run 8841. An announcement is never evidence.
  2. Evidence. The test run reports in. It becomes a receipt attributed to its producer (ci, github-actions, run 8841) and tied to this exact build.
  3. Contract. The Warden evaluates the receipts against Contract v1: a complete, current test run for this build. A passing scanner report is recorded, but it cannot satisfy that requirement.
  4. Held. One required test failed, so the decision is HELD with a readable reason and the next action. Policy decides; no tool score can override it.
  5. Fresh proof. A fix lands as commit c41e8d7, build 4822. Only fresh evidence for that exact build counts, and the HELD decision stays on record.
  6. Cleared. The new run passes under the same policy, so build 4822 is CLEARED. Decision 1 is preserved beside decision 2, never rewritten.

The problem

Your agents can build the software. They should not certify themselves.

A coding agent that writes the change, writes the tests, runs them and reports success has verified consistency with itself. Letting that loop also declare the change ready makes every other gate negotiable.

What TestWarden enforces

  • Producer identity is recorded. Evidence carries a declared producer type (ci, agent, scanner, code_reviewer or visual_agent), a name, a source system and a run ID. Agent observations cannot satisfy the requirement for a complete CI test run.
  • Tokens stay with CI. Only your CI holds credentials to submit evidence or announce a run; coding agents never do. An announcement is never evidence.
  • No caller selects a state. Payloads containing a state, progression flag or approval are rejected.
  • NEEDS APPROVAL waits for a human. No agent can clear it.

How it works

Evidence in. Deterministic policy. Explainable decision.

  1. 01

    Change Set

    Identified by repository, commit, build and environment, never by title matching. The verification target only moves forward; a submission for an older build is history and never clears.

  2. 02

    Evidence

    JUnit XML, SARIF 2.1.0 and provider-neutral JSON from CI, runners, scanners, reviewers and agents, each tied to the exact build and stored immutably with a content digest.

  3. 03

    Contract and policy

    A versioned Verification Contract states what must be proven. Today the default contract requires a complete, current-build automated test run no older than 24 hours with no failed, error or skipped observations.

  4. 04

    Decision

    CLEARED, VERIFYING, HELD, NEEDS APPROVAL or INCOMPLETE, with fixed reason codes and next actions. Append-only: fresh evidence for a new build produces a new decision and never rewrites an earlier one.

CLEAREDVERIFYINGHELDNEEDS APPROVALINCOMPLETE

Keep your tools

Compatible reports today. Connectors under acceptance.

TestWarden does not ship first-party adapters for Playwright, Cypress, Semgrep, Sonar or any other named tool. Read-only connectors for test-management platforms are described on Integrations, with their real status. What it accepts is a report format your tool can already produce, delivered from CI over the Forge App REST API. The CI recipes are in the CI evidence docs.

Report formats The Warden accepts and what each source is compatible with
SourceWhat you submitStatus
Playwright, Cypress and other test runnersEmit a complete JUnit XML report from the CI job and submit it. Any failed, error or skipped observation prevents a pass.Compatible report. Not a Playwright or Cypress adapter.
Semgrep and other scannersSubmit a SARIF 2.1.0 report from the scan step. It is recorded as scanner evidence and cannot satisfy the test-run obligation.Compatible report. Not a Semgrep adapter.
AIO Tests, Xray, Zephyr Scale, TestRail and Azure DevOpsToday, a complete JUnit XML report that your CI produces. Read-only connectors that fetch results from these platforms are in source and under acceptance.Connectors are not live. See Integrations.
Anything elseSend a provider-neutral JSON envelope of 1 to 20 observations with a declared producer type, name, source system and run ID.Compatible format. Not a vendor integration.

An external tool's green result, approval or score is evidence, never CLEARED. A scanner or reviewer pass cannot satisfy the test obligation. Limits: 256 KiB per request, 1 to 20 observations, and a gzip-base64 JUnit wrapper up to 2 MiB raw.

Policy and AI

Deterministic policy owns clearance. AI assists explanation only.

The same evidence under the same contract and policy version produces the same decision today and in a year, which is what makes decisions replayable in an audit and safe to enforce at a merge or deploy boundary. The Marketplace version ships no user-facing AI and declares no external egress.

The developer pilot lane

Beyond the Marketplace version, a developer pilot lane adds a Developer API, a PowerShell client, an MCP server with six typed tools and a GitHub Action preview, so a developer or agent can ask what is obligated, why a change is HELD. Approved rerun requests are not available yet: no dispatcher is installed and the service answers 503. Optional AI explanation is admin-enabled, consented, budget-capped and off by default; it never sets or overrides a decision, and the deterministic facts are returned with it off. The developer-preview lane is not included in the publicly listed Marketplace V1; see Developers.

What developers get

Clear obligations. Actionable HELD reasons. An exact-build decision.

A failing JUnit run holds the change with evidence_failed and names up to 10 failing tests in report order. The CI gate script exits 0 only for CLEARED on the exact repository, commit, build and environment, and history is preserved for the next change.

Prefer one system? TestWarden also includes native Jira test management and a Migration Center. Read why coding agents should not certify their own changes, see pricing, or start with the documentation.

From the blog

Reading on verification in the agent era

All articles →
  • Independent verificationOctober 6, 20265 min read

    What is independent software verification?

    A working definition of independent software verification, the five duties that must be separated, how it applies when AI agents write the code, and a rubric for judging whether a tool is genuinely independent.

  • Agentic developmentOctober 6, 20265 min read

    Why coding agents should not certify their own changes

    For engineering leaders adopting coding agents: an interactive workflow of self-validation versus independent verification, why agent-written tests are useful but not clearance, and an honest account of what independence cannot catch.

Now available on Atlassian Marketplace

Proof before progress.

TestWarden is listed on the Atlassian Marketplace for Jira Cloud. Keep your existing test-management and CI tools, and add The Warden's independent verification layer—or use TestWarden's built-in Jira test management. Visit the Marketplace to get started; we're here if you want guided setup or migration help.