SpecGuard
Evidence-first verification for AI-generated software.
An independent verification layer that turns intent into traceable requirements and preserves machine-produced evidence without allowing missing proof or model confidence to masquerade as a pass.
- Status
- IN DEVELOPMENT
- Source
- Private
- Capabilities
The problem
AI coding agents can produce working-looking software quickly, but a confident agent is not evidence that the software does what was asked.
SpecGuard is designed as the independent layer between intent and generated code. It turns intent into traceable requirements and is being built so that only machine-produced evidence can decide a verdict.
The system
Closed truth states
Results use a fixed vocabulary — PASS, FAIL, UNVERIFIED, BLOCKED, INCONCLUSIVE, ERROR, NOT_APPLICABLE, and SKIPPED — that deliberately cannot collapse into yes or no.
Traceable specifications
Text and Markdown sources are stored as immutable, content-hashed versions, with provenance recorded for each requirement.
Requirement review
Draft requirements start in review, must quote their source exactly, and conflicts are surfaced rather than resolved automatically.
Evidence-gated phases
An append-only, hashed evidence store feeds a deterministic gate that passes a criterion only when indexed evidence backs it.
How it was built
A Next.js interface is a client of a Hono control-plane API with sessions, role policy, strict validation, and an audit log, persisted in PostgreSQL.
A shared domain package holds the truth-state vocabulary and trust rules with no I/O. A verification core wraps execution, adapts Vitest and Playwright results, and produces gate verdicts and manifests. Model providers sit behind a provider-neutral gateway.
Interface
- Next.js app
Control plane
- Hono API
- Role policy and audit log
- PostgreSQL
Specification
- Immutable source versions
- Requirement review
Verification
- Execution wrapper
- Vitest and Playwright adapters
- Evidence store
Gate
- Criteria
- Verdict and manifest
Technology
Design decisions
Evidence over confidence
A result that no executed check produced cannot count as a pass, and a model’s opinion alone can never produce one.
Handwritten results never count
Every pass must cite indexed evidence. When a run cited evidence missing from the index, the gate stayed closed and was not changed to let it through.
Honest empty states
Screens say that no verification runs exist yet instead of showing sample counts borrowed from design mockups.
Confidence labelled as inference
Extraction confidence is presented as inference, not verification, and every new requirement stays unverified until evidence exists.
Selected views
Current state
In development. The control plane, specification sources, and requirement review are built, each closed by a machine-produced gate verdict. Verification runs, visual diffs, and evidence exploration are still ahead, so those views are shown as labelled interface direction. The source code is private.



