Command reference
oko defects classes open
Opens the class of one shape: one class defect that takes its open instances over.
Invocation#
oko defects classes open --shape SHAPE --by SESSION [--product PRODUCT] [--json]Inputs and options#
- A shape is a class once it has as many open instances as the level Oko declares beside its source (2, in the words it was declared in, which every refusal quotes). An instance is a defect recorded with the shape that is not a class itself; whitespace and case do not make two shapes different. The class governing a shape is its open class, else the closed class that took its instances over: an open instance of a closed class's shape is a recurrence, which reopens that class (`oko defects reopen`), never a second class.
- The class belongs to PRODUCT, else to the product its instances share, else to the product holding most of them (the first by name among equals). Its title is the shape; its evidence lists every instance with its product and title; its completion probe is `oko defects classes remaining --shape SHAPE --after {reference}`, run by the oko this machine has installed (the copy Stado installs under `~/.stado/bin`, else the one on PATH on a machine Stado does not manage), which a later install replaces in place.
Output and state effect#
- Records the class (`class: true`, the shape), notes each open instance `taken over by class <id>: its repair is the class's mechanisms; it closes once they stand`, notes the class `opened by <session> as the class of <n> instances`, and prints `opened class <short id> of <product>: <shape>`, followed by `placement pending (the task graph retries it; the class is recorded): <pending>` while Brama has not placed it in the task graph; --json prints `{class, shape, product, instances, placement}`, placement being that pending placement, if any. The record is written whether or not Brama judges it; a missing judgment is marked on the defect, never assumed.
Refusals and safe exits#
- `the shape "<shape>" has <n> open instance(s) [<ids>]; a class is opened at <level> ("<words>"); `oko defects classes` lists the shapes that reached it`.
- `class <id> already holds the shape "<shape>"; put an instance in it with `oko defects classes join <defect> --class <id> --by <session>``; `class <id> held the shape "<shape>" and is closed; an instance of it recorded since is a recurrence: reopen the class with `oko defects reopen <id> --reason <the instance and what let it through>``.
- `oko defects classes requires --shape <text>` and the same for --by (exit 2); `the class of "<shape>" needs the installed oko to run its completion probe: <cause>` when no installed oko can be named; every refusal `oko defects record` gives a new defect.