DELIVERY RECORD
RUN / 0248Evidence-driven coding agent
A coding agent that has to show its work.
Carthagent turns a software request into an acceptance contract, runs the checks that support it, and keeps the resulting evidence tied to the source that actually passed.
Carthagent is the next identity for the open-source project currently named pi2.
The problem
Generated code is not a delivery. A passing check is not current proof after the source it tested has changed.
Every requirement names the evidence expected to support it.
Before implementation, Carthagent records the goal, artifacts, assumptions, acceptance criteria, and executable checks. The result is a contract that can be inspected instead of an unspoken definition of “done.”
invitation-expiry-testBoundary and elapsed-time behaviorCURRENT / PASSED
browser-invitation-flowReal interaction and browser-error captureCURRENT / PASSED
expired-link-recoveryPrevious result no longer matches current sourceSTALE / RERUN REQUIRED
A visible path from request to handoff.
Carthagent makes the delivery process inspectable. Wrong assumptions revise the plan. Failed checks enter a bounded repair loop. A handoff is verified only when required evidence is fresh.
Inspect
Read the repository, installed APIs, constraints, and existing conventions.
Contract
Map acceptance criteria to concrete checks before editing product files.
Build
Deliver a runnable vertical slice, then complete behavior and failure paths.
Verify
Run declared checks and bind their output to the current workspace fingerprint.
Review
Optionally ask a detached, fresh-context reviewer to inspect the proposed change.
Deliver
Report current evidence, launch instructions, review status, and limitations.
Failed or stale evidence returns to bounded repair and verification
The proof moves with the source—or it expires.
Evidence is associated with the delivery run, contract revision, check definition, and workspace fingerprint. Relevant edits invalidate old results rather than leaving a green check attached to code it never exercised.
- 01Evidence has identity.
A result records which check ran, under which contract revision, against which source fingerprint.
- 02Source changes have consequences.
When covered source changes, previously passing evidence becomes stale and must be rerun.
- 03Repair is bounded.
Failures can return to implementation, but automatic repair nudges and review attempts have explicit limits.
src/invitations/accept.ts +18 −7The acceptance handler changed after the previous browser check passed.
unit-invitationsCURRENTbrowser-invitation-flowSTALElintCURRENTOne delivery discipline, three ways to work.
Terminal console
Run a persistent coding session with visible plan, progress, checks, evidence, and model settings.
CLI runs
Use the same delivery contract in scripts or bounded non-interactive runs with explicit tool and time limits.
Web dashboard
Review the active plan, acceptance mapping, check output, source fingerprint, and handoff state in a browser.
“Verified” is a precise status, not a promise that bugs are impossible.
What it means
Every declared required check has fresh passing evidence for the current delivery contract and source fingerprint.
What it does not mean
The checks are independently complete, every possible defect is excluded, or untrusted code is safely sandboxed. Human judgment still matters.
The next chapter of pi2
Software delivery should leave a record.
Carthagent is taking shape in public. The current implementation, evaluation history, and source remain available under the project’s existing name while the rename is prepared.
Explore pi2 on GitHub Return to top