AGPL-3.0-or-later · forever.

the language

from

REQUIRED for law 'taint', forbidden otherwise · the ONE binding this entry raises (e.g. inputs.p · config.region · tasks.fetch.output) · a dotted value-binding path. One of 59 words the served contract declares, projected from workflow.schema.json, the same file your editor validates against.

  • 1surfacelift
  • optionaleverywherea choice, never a miss
  • stringtypethe declared shape
  • schemathe sourcenever prose

the contract

1 declaration

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.

lift
stringREQUIRED for law 'taint', forbidden otherwise · the ONE binding this entry raises (e.g. inputs.p · config.region · tasks.fetch.output) · a dotted value-binding path.inside a lift entry^[A-Za-z_][A-Za-z0-9_]*(\.[A-Za-z_][A-Za-z0-9_]*)+$

in a real file

a crafted check-green file
convert.nika.yaml
  translate:    invoke:      tool: "nika:convert"      args:        input: '{"name":"nika","verbs":4}'        from: json        to: yaml

a verbatim slice, real line numbers from convert.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

lift: inside a lift entry

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