Real pilot evidence¶
design-ai review-pilot closes one review-to-implementation pilot without
turning self-reported activity into an adoption or production claim. It reads
three exact JSON sources and returns a design-ai-pilot-evidence v1 artifact.
Inputs¶
design-ai-implementation-evidencev1 fromreview-evidence- The original
design-ai-review-workflowv1 linked by the intake receipt - An operator-authored
design-ai-pilot-recordv1
The workflow is a separate input because later stages preserve its SHA-256 link, not its full source. The pilot record supplies consent, timing, finding decisions, approval events, outcome, and claim classification. It does not replace the machine-derived P6 or P11 evidence.
Pilot record template¶
{
"kind": "design-ai-pilot-record",
"schemaVersion": 1,
"project": {
"name": "Website Console dogfood",
"repositoryUrl": "https://github.com/example/design-ai.git",
"pilotClass": "internal-dogfood"
},
"consent": {
"status": "approved",
"approver": "project-owner",
"identity": "self-declared",
"reference": "task approval record",
"approvedAt": "2026-07-15T00:00:00.000Z",
"evidenceCollection": true,
"targetMutation": true
},
"timeline": {
"pilotStartedAt": "2026-07-15T00:00:00.000Z",
"firstUsefulArtifactAt": "2026-07-15T00:01:00.000Z",
"implementationCompletedAt": "2026-07-15T00:10:00.000Z"
},
"findingDecisions": [
{
"findingId": "finding-id-from-workflow",
"decision": "accepted",
"summary": "The finding was implemented within the approved scope.",
"reference": "review decision record"
}
],
"approvalEvents": [
{
"gateId": "source-inspection",
"status": "approved",
"occurredAt": "2026-07-15T00:02:00.000Z",
"reference": "scope approval record"
}
],
"outcome": {
"implementationStatus": "complete",
"productionStatus": "not-deployed",
"feedback": {
"status": "not-collected",
"summary": "No external user feedback was collected.",
"reference": ""
}
},
"claims": [
{ "class": "real", "statement": "The pilot ran in the named repository.", "reference": "implementation evidence" },
{ "class": "synthetic", "statement": "Package fixtures remain synthetic proof.", "reference": "package smoke" },
{ "class": "inferred", "statement": "The linked chain is reusable by another agent.", "reference": "contract parity" },
{ "class": "unverified", "statement": "External adoption and production outcomes are not established.", "reference": "pilot boundary" }
]
}
Every workflow finding and every scope approval gate must appear once, in source
order. Approved gates require a canonical UTC timestamp. Pending and not-required
gates keep occurredAt empty.
CLI¶
design-ai review-pilot implementation-evidence.json \
--workflow review-workflow.json \
--record pilot-record.json \
--json > pilot-evidence.json
The command reads only those three files. It does not write the output file, change a repository, call a network, or perform a release action; shell redirection above is operator-controlled.
SDK¶
import { readFileSync } from "node:fs";
import { recordPilotEvidence } from "@design-ai/cli/sdk";
const evidence = recordPilotEvidence(
readFileSync("implementation-evidence.json", "utf8"),
readFileSync("review-workflow.json", "utf8"),
readFileSync("pilot-record.json", "utf8"),
{
implementationEvidenceRef: "implementation-evidence.json",
reviewWorkflowRef: "review-workflow.json",
recordRef: "pilot-record.json"
}
);
MCP tool design_ai_review_pilot accepts the same three exact JSON strings and
references. Large chains should set compact: true:
{
"implementationEvidenceSource": "<exact P11 JSON>",
"implementationEvidenceRef": "implementation-evidence.json",
"reviewWorkflowSource": "<exact P6 JSON>",
"reviewWorkflowRef": "review-workflow.json",
"recordSource": "<exact pilot record JSON>",
"recordRef": "pilot-record.json",
"compact": true
}
The compact result has kind design-ai-pilot-evidence-summary. It validates the
full contract first, then omits only the three duplicated source and value
bodies. Source references, SHA-256 digests, byte counts, consent, metrics, claims,
issues, next action, and safety boundaries remain present. The default remains the
full artifact for backward compatibility.
Website Console accepts the resulting full evidence, verifies its source bytes and digests, exports the original bytes unchanged, and restores P11 through P6 when the pilot artifact is cleared.
Reading the result¶
timeToFirstUsefulArtifactis derived from the recorded UTC timeline.findingPrecisionreports accepted, rejected, and unresolved decisions. It is not a general design-quality score.approvalFrictionpreserves approved, not-required, and pending gates.implementationmust agree with P11 evidence status.unresolvedRiskcomes from P11 remaining risks.claimskeeps real, synthetic, inferred, and unverified statements separate.
evidence-complete means the bounded sources agree. It does not independently
verify identity, feedback, adoption, production quality, or business outcomes.
attention-required preserves a source-backed gap. blocked means source or
linkage drift must be repaired before the artifact is used.
Evidence checklist¶
- Owner consent covers evidence collection and target mutation.
- P6 workflow and P11 implementation evidence are exact, unchanged sources.
- Every finding decision and approval gate is recorded in source order.
- Runtime, accessibility, keyboard, and responsive proof remains explicit.
- Real, synthetic, inferred, and unverified claims are separated.
- Commit, push, deployment, and external writes retain their own gates.