| uid | 9d2b71fc | |||||
|---|---|---|---|---|---|---|
| name | completion-report | |||||
| type | capsule-definition | |||||
| extends | core | |||||
| version | 1.0 | |||||
| tier | os | |||||
| author | argus | |||||
| created | 2026-05-31 | |||||
| modified | 2026-05-31 | |||||
| modified_by | argus-a89 | |||||
| created_by | argus-a89 | |||||
| status | active | |||||
| schema_version | 2 | |||||
| extraction_scope | ship | |||||
| ships_in_v | v1.62.0 | |||||
| governed_by | 8dd772a0 | |||||
| member_of |
|
|||||
| composes_with |
|
The typed schema for the human-readable completion report rendered at every pipeline-end. The F4 instrument from cdc1615e: v1.60/v1.61 read "done" on every board while their cascades were hollow, because nothing surfaced the per-step verdict — a human had to ask. This report makes the verdict visible by construction.
At the end of every pipeline run, the engine (pipeline-runtime.py render_completion_report(), v1.62 Lane B7) renders a completion report from run.jsonl — the canonical event log of the run. The report is the human surface over the verification the engine already performed: every step, its verdict, its per-criterion breakdown, and any notes/dispositions. It composes with the Workbench-Surface-Visibility doctrine and is the artifact Po (the presentation lane) translates for the principal.
The data already exists in run.jsonl. This capsule governs the shape of the rendered report so it is consistent, machine-checkable, and Po-presentable across every pipeline-end.
- Rendered to the run's workspace:
<run-folder>/completion-report.md(one per run, overwritten on re-render; the run.jsonl is the source of truth). - Optionally surfaced as a
type: completion-reportvault entry when a cycle wants the report graph-walkable (e.g., linked from the release entry); the run-folder file is the floor, the vault entry is opt-in.
| Field | Type | Meaning |
|---|---|---|
type |
string | completion-report |
run_uid |
string (8-hex) | The pipeline-run this report renders |
pipeline_uid |
string (8-hex) | The pipeline definition |
overall_verdict |
enum | complete / complete-with-authorized-skips / incomplete-gaps / blocked |
rendered_at |
ISO date | When the report was rendered |
rendered_by |
string | pipeline-runtime (engine) or the rendering agent |
- §Overall Verdict — the run's terminal state + a one-line summary (e.g., "BLOCKED — close-cycle: doc/test runs not retired").
- §Per-Step Table — one row per step:
step name | step_owner_role | verdict (PASS/FAIL/SKIP/BLOCKED) | criteria checked (N/M passed) | notes. The verdict mirrors the engine'sverification_receipt/ natural-output verdict for that step. - §Per-Criterion Breakdown — for any step with
exit_criteria, each criterion + its individual verdict + the substrate it resolved against. This is the anti-hollowness surface: a reader sees exactly which assertions held. - §Notes / Findings / Dispositions — authorized skips (with authorizer), gaps, waivers-on-record, and any sentinel (sa.criteria-reviewer) flags carried forward.
- Rendered from
run.jsonl, never hand-authored. The report is a projection of the event log. A hand-edited completion report is a Rule-1 violation (it reintroduces the self-attestation the gate removed). Re-render from the log instead of editing. - One report per pipeline-end, every run — no exceptions. A run that completes (or blocks) without a rendered report is itself an incomplete cascade (the F4 failure). The engine renders unconditionally.
- The overall_verdict mirrors the engine, not the agent.
completerequiresassert_all_steps_verifiedto have passed (pipeline.capsule Rule 11). The report cannot claimcompletewhile any step verdict is FAIL/BLOCKED.
type: completion-report;run_uid+pipeline_uidresolve.overall_verdict∈ enum.- Body contains §Overall Verdict, §Per-Step Table, §Per-Criterion Breakdown, §Notes in order.
overall_verdict == completeis INVALID if any §Per-Step Table row carries verdict FAIL or BLOCKED (mirrors Rule 11 + release.capsule v3.10 Rule 17).
- pipeline-run.capsule (5a8f3b2c) — the report renders from the run's
run.jsonlevent sequence (verification_receipt + step_completed + workflow_complete events). - pipeline.capsule (e4c8a6b2) — per-step verdicts are the Rule 11 gate outcomes made visible.
- release.capsule v3.10 Rule 17 — a release cannot ship
status: donewhile its cascade runs are active; the completion report is where that is read. - Po (presentation lane) — Po translates the report for the principal (v1.62 Lane P1).
completion-report.capsule | UID 9d2b71fc | v1.0 | Argus A89 2026-05-31 | v1.62 spine component C — the F4 instrument | "the verdict was always in the log; this makes it visible"