28 lines
905 B
Markdown
28 lines
905 B
Markdown
# Step Result Contract
|
|
|
|
Every pipeline step writes a machine-readable terminal block:
|
|
|
|
```text
|
|
<!-- STEP-RESULT
|
|
project-id: <manifest project_id>
|
|
feature-id: <manifest feature.id>
|
|
manifest-sha256: <hash>
|
|
status: COMPLETE|BLOCKED|ERROR
|
|
verdict: APPROVED|REJECTED|PASS|FAIL
|
|
artifacts:
|
|
- <repository-relative path>
|
|
critical-issues:
|
|
- none|<issue>
|
|
commands:
|
|
- <JSON argv + exit code>
|
|
/STEP-RESULT -->
|
|
```
|
|
|
|
Paths must be inside the manifest artifact namespace or source roots. A consumer rejects blocks
|
|
whose project, feature, manifest hash, artifact path, or trace/run identity does not match current
|
|
context. Missing verdict/evidence is an error, never implicit approval.
|
|
|
|
Agent mapping: SRS `casan.srs`; BD `casan.bd`; spec/plan/tasks/implementation `speckit.*`;
|
|
reviews `casan.reviewspec`, `casan.reviewplan`, `casan.reviewcode`; DD `casan.dd`; tests
|
|
`casan.testkit`; orchestration `casan.pipeline`.
|