Command reference
oko defects repaired
Measures the declared whole-repair condition at the committed revision before accepting a repair; publication still closes it separately.
Invocation#
oko defects repaired <id> --revision <repository>@<commit> --detail TEXT [--evidence REPORT_PATH] [--json]Inputs and options#
- The immutable repository commit and what changed, after `shape-review` at that same revision. A single defect also needs --evidence naming a retained real-journey JSON report. Its defectId and criterion must match this record, sourceRevision must match the commit, result must be passed, binarySha256 and testSha256 identify executed artifacts, and commands must have successful exits and observedFinalState. A class instead reruns its declared product inventory at the commit.
Output and state effect#
- Re-reads the registered same-shape siblings, consolidation links and literal source paths at the proposed revision; a stale review refuses before a claim is written. A passed source-bound report or empty successful class inventory on main stores the repair revision. A partial class repair, missing report, failed command, mismatched source or absent final-state observation retains the attempted revision as an open claim with its actual diagnostic. The report path is rechecked on later reads; losing it takes the repair back to claimed.
- Either way the repair is recorded as a claim of class `repair` about the defect at that revision in the claim register (`oko claims`), including the mechanism review and author session, so its verdicts — a real test, and for a build-first item an adversarial reviewer — are recorded with `oko claims verify`; a broken verdict takes the repair back.
Refusals and safe exits#
- A missing or stale shape review refuses with the revision or changed inventory. A missing criterion or report refuses a single repair with the required path. An unreadable or malformed report names the file and cause; a non-passing command names its executable, exit and stderr. A failed inventory retains its actual program, arguments, exit, stdout and stderr; remaining instances are listed. These claims stay in `list --unrepaired`.
- Unknown, unordered or same-as-found revisions, missing plan, closed defects and concurrently changed declarations refuse with the specific cause.