Checks, completion, and reports
What it is. Three shared contracts every Skill uses at closure:
- the Evidence Contract,
framework/evidence-contract.md(KIYO-VERIFY-001,KIYO-VERIFY-002); - the Definition of Done,
framework/definition-of-done.md(KIYO-DONE-001); - the reporting contract,
framework/reporting-contract.md(KIYO-REPORT-001).
Why it exists. “All tests pass” is the most expensive sentence an agent can say falsely. Kiyo makes every check, including the ones that did not run, an explicit record bound to the state that was actually checked.
Five check statuses
Section titled “Five check statuses”| Status | Meaning |
|---|---|
PASS |
The check actually ran, or the stated manual inspection was actually performed, and the observed evidence met its criterion within the inspected scope |
FAIL |
The performed check did not meet its criterion, including an evidenced baseline failure |
NOT_RUN |
The check was not performed; state why and whether it is still required. A newly written test has no passing result |
NOT_APPLICABLE |
The criterion does not apply to this scoped task, with a concrete reason |
BLOCKED |
An evidenced missing prerequisite, or a denied or unsafe target, prevents the check |
A missing test environment is NOT_RUN or BLOCKED, never NOT_APPLICABLE. A mandatory check stays mandatory when it is inconvenient.
The nine-field check record
Section titled “The nine-field check record”| Field | Content |
|---|---|
| Name | Distinct check name and the behavior or acceptance criterion it addresses |
| Applicability | Required, optional, or not applicable, with reason and source |
| Command/method | Exact command and working context, or a clearly labeled planned method |
| Inspected scope | Files, symbols, behavior, artifact state, environment, and target actually covered |
| Execution status | Exactly one of the five statuses above |
| Observed result | What actually happened; exit codes and counts only when observed |
| Evidence location | An accessible reference or a concise in-conversation observation; never a fabricated log |
| Limitations | Exclusions, partial output, uncertain attribution, untested environments |
| Baseline relation | Existing failure, new regression, environment problem, unresolved, or not applicable, with the comparison source; otherwise Unknown |
Results are bound to state
Section titled “Results are bound to state”KIYO-VERIFY-002 keeps old results honest:
- Results bind to the inspected artifact, configuration, and environment, including uncommitted changes.
- After any further code, test, config, fixture, dependency, or environment change, affected results become
NOT_RUNorBLOCKEDuntil rerun. The earlierPASSstays historical. - Never “all tests pass” while a baseline failure persists, a required check is unrun or blocked, or only a subset ran. The correct phrasing is: “the named focused check passed; the recorded baseline failure remains.”
The three evidence layers never upgrade each other: static inspection, behavioral evaluation, and live host tests. A DOCUMENTED_ONLY research note is not a behavioral PASS.
Four task statuses
Section titled “Four task statuses”| Task status | Use when |
|---|---|
DONE |
The named deliverable and all its mandatory completion criteria are satisfied with current evidence |
PARTIALLY COMPLETE |
Useful scoped work was delivered, but requested work or mandatory evidence remains |
BLOCKED |
A concrete missing prerequisite prevents required progress |
DECISION REQUIRED |
An unresolved material business, scope, or authority choice blocks the next dependent action |
Check statuses and task statuses are separate fields. A bounded review can be DONE with FAIL findings. A test run can be DONE with failing tests if running and reporting was the objective. Requirement readiness (READY_FOR_IMPLEMENTATION, DECISION_REQUIRED, INSUFFICIENT_EVIDENCE) is a third, separate field.
Definition of Done per workflow (summary)
Section titled “Definition of Done per workflow (summary)”| Workflow | Done means | Done does not mean |
|---|---|---|
| Implement | Behavior and acceptance met, approvals still valid, required checks pass on the final state, reviews complete, Memory impact assessed and any mandatory sync done | Production works; all consumers pass |
| Review | Agreed scope inspected; findings, evidence, and limits delivered | The application is bug-free or tests pass |
| Requirement | Deliverable with separated facts, proposals, decisions, and unknowns | Permission to implement |
| Test | assess: analysis delivered · run: actual results reported · write: scoped tests delivered | Tests passed (for write-only delivery) |
| Security | Bounded assessment and required methods completed | “Secure”, certified, or independently audited |
| Architecture | Observed, approved, proposed, and unknown separated; findings delivered | Decision adopted, implemented, or migrated |
| Memory show/check | Records shown or compared; zero writes | Whole-store currency |
| Memory sync/repair, Init | Necessary authorized delta applied, or a real no-op | Native activation or whole-project verification |
The shared report
Section titled “The shared report”Chat is the default output. Every report conveys eight fields; compact answers may combine them:
- **Task/scope:** <requested result, mode, boundary and exclusions>- **Actions/files changed:** <actual changes/inspection; proposed work distinguished>- **Governance/risk rationale:** <brief scope/effect rationale, authority and uncertainties>- **Verification/evidence:** <repeat the nine-field check record below as needed>- **Residual issues:** <failures, untested scope, unknowns or none identified within scope>- **Memory impact:** <one value; reason and actual applied/pending delta>- **Status:** <one task status and its scope; readiness separately if relevant>- **Next required action:** <concrete next step/precondition or none for completed scope>A report file is written only within an authorized output scope. Reports exclude secrets, unnecessary personal data, raw logs, transcripts, and private reasoning. Self-review is labeled as self-review; a Markdown report is not a tamper-proof log.
Related
Section titled “Related”- Guide: Assess, run, and write tests
- Reference: Status vocabulary
- Reference: Templates