Contents

Execution-instruction delivery

Operator instructions combine workflow/project scope with delivery settings. workflow.execution_instruction.create, .update, and .set_scope accept before_creation, on_every_read, when_entering_stage booleans and a stage_buckets list. Omitted fields retain stored settings on edits; creation and existing rows default to Before creation + On every read, with no stage targets.

At least one delivery point must be selected. When entering stage requires at least one bucket: idea, planning, refined, implementing, reviewing, implemented, or release. Invalid selections refuse with delivery_invalid and name the selection to correct; invalid bucket names refuse as payload_invalid. Targets come from the item's pinned workflow definition's board_bucket, so custom stage ids work without being added to a separate instruction map.

workflow.execution_instruction.list returns delivery_options beside the rows: stage_buckets (the bucket vocabulary above) and defaults (the new-instruction delivery), both read from the server's delivery model.

In the dashboard's Workflows page, the Execution instructions panel shows each instruction's delivery points and selected stage buckets beneath its scope. Choose New instruction or Edit to change the three delivery checkboxes and stage-bucket checkboxes. The bucket list and new-instruction defaults come from the list's delivery_options, so the panel holds no copy; a serving build that omits them disables New instruction and Edit and shows delivery_options_unavailable with the recovery. New instructions select Before creation + On every read. Bucket controls are disabled until When entering stage is selected; toggling it off keeps the draft's bucket choices. Saving requires at least one delivery point and, for stage delivery, at least one bucket. An invalid draft shows the required correction in the editor before any write is sent.

Before filing, read yoke workflow execution-instruction resolve --workflow W --project P --full. Its default delivery point is before_creation; the --execution-instructions-considered attestation covers only those instructions. Creation receipts describe that same set. The web form uses the same resolver.

Item reads resolve On every read instructions plus stage-entry instructions targeting the live bucket. Full item reads print one full copy; narrow field, section and Progress Log reads print one line naming the applicable rules and the exact full-read command. Work-claim acquisition delivers the full instructions for the item; composed worker launch mandates omit them. Delivery is stateless, tied to these existing events; no session tracking is added. JSON reads retain the complete instruction facts. A successful lifecycle.transition.execute returns execution_instructions containing stage-entry instructions for its entered bucket. Failed transitions return none. Instructions remain separate from item content and never round-trip into it.

The resolve function also accepts delivery_point and stage_bucket. To inspect stage delivery directly, run yoke workflow execution-instruction resolve --workflow W --project P --delivery-point when_entering_stage --stage-bucket reviewing --full; stage-entry resolution requires a bucket. on_every_read includes stage targets when a bucket is supplied. Summary descriptors retain the selection in their full-read command.

CLI writes expose --before-creation / --no-before-creation, --on-every-read / --no-on-every-read, and --when-entering-stage / --no-when-entering-stage. Repeat --stage-bucket BUCKET to replace the target list; --clear-stage-buckets clears it. Disable stage delivery in the same edit when clearing an enabled target.

yoke workflow execution-instruction create --content "Run implementation checks." --no-before-creation --no-on-every-read --when-entering-stage --stage-bucket implementing
yoke workflow execution-instruction set-scope {instruction_id} --all-workflows --all-projects
yoke workflow execution-instruction update {instruction_id} --content "Run review checks." --stage-bucket reviewing

Read each operation's --help before changing scope or delivery. Delivery and scope edits are validated together before replacing bindings; prose-only and scope-only edits preserve the instruction's delivery settings.

The delivery columns converge additively on boot. Existing instruction rows retain their prose and scope and acquire defaults; no data rewrite or separate migration entry is required.

Keep portable guidance in shipped homes

Before adding an instruction, classify its clauses by audience and authority:

Clause Maintained home Instruction appearance
Portable product rule or recipe Public concept page or agent operation home Concise action and exact installed or web pointer
Project policy, installation topology, credentials or current operator state Its authorized project/private owner Only the scoped facts the receiving actor needs
Source-contributor procedure The repository's contributor documentation A pointer only for contributors with that source

The teaching standard owns how guidance is written; operation homes own agent procedures. A public rule does not inherit an installation's release policy, account choices or current holds. Source-contributor maps and generated research views do not become an installed project's requirements.

To extract reusable guidance from an existing private instruction or strategy document, read it through its registered list/get/resolve command into private scratch. Inventory every clause and old pointer; record only neutral summaries, classifications and canonical destinations in shared evidence. Keep full text, secrets, account details and current operator state out of public repositories and logs. Verify delivery in the actual receiving context before replacing the private copy with its concise pointer. Immediately before an authorized source replacement, re-read the private record and save fresh durable private rollback evidence; an earlier planning capture is not that rollback.

Inside an installed project, point at .yoke/docs/<concept>/<page>.md from the matching release. Outside a project, use the corresponding https://upyoke.com/docs/<concept>/<page> route and label its service identity; a global session cannot assume this directory contains .yoke/docs. Preserve the instruction's scope and delivery settings. A pointer alone does not prove that a main agent or worker received the required guidance before acting.

Execution instructions ยท Yoke