AGPL-3.0-or-later · forever.

the language

skip

Swallow the error and let the DAG continue · the task produces no output, and the original error stays readable at `tasks.<id>.error`. Exactly one of `recover` · `skip` · `fail_workflow`. One of 62 words the served contract declares, projected from workflow.schema.json, the same file your editor validates against.

  • 1surfaceon_error
  • optionaleverywherea choice, never a miss
  • booleantypethe declared shape
  • schemathe sourcenever prose

the contract

1 declaration

the failure grammar · this word only ever speaks inside the recovery block, so meeting it means you are reading what happens when something breaks

Descriptions are the schema's own; the deeper invariants (value languages and regexes) ride the same projection. A miss is a nika check finding before anything runs.

on_error
booleanSwallow the error and let the DAG continue · the task produces no output, and the original error stays readable at `tasks.<id>.error`. Exactly one of `recover` · `skip` · `fail_workflow`.inside on_error:

in a real file

a crafted check-green file
emit.nika.yaml
  announce:    on_error:      skip: true    invoke:      tool: "nika:emit"      args:        event_type: "deploy.finished"        payload: { env: "prod", ok: true }

a verbatim slice, real line numbers from emit.nika.yaml, nika check green; the drift gate re-proves this copy on every test run.

cross-references

no skeleton carries it and no registered code names it; the schema row is the whole story today.

defined by

the block it lives in

on_error: inside on_error:

The whole grammar in one place: the four verbs · the standard library · the spec. Try it in the playground. Read the reference →