Recipe reference
SCOUT DOCS · REFERENCE / RECIPESRun an embedded recipe with scout run <name> NAME=VALUE.... Every parameter
listed below is required exactly once. Inputs are typed before the plan is
shown, and credential-shaped values are refused; recipes inherit the caller’s
stored authentication instead of accepting credentials as parameters.
Parameter types have these meanings:
identifier— a Scout-safe name, context, or resource identifier;text— a non-secret UTF-8 value;path— a local path, resolved to an absolute path before execution;u16— a decimal integer from 0 through 65535;boolean—trueorfalse.
Scout prints the resolved plan before the first step. A step advances only
after the command returns the named schema and every listed evidence predicate
passes. On failure, no later step runs; correct the named cause and use
scout run --resume in the same context.
bootstrap-network
Section titled “bootstrap-network”Verify a release layout, initialize one root Branch cell, and read its public status evidence.
Parameters
Section titled “Parameters”| Parameter | Type | Purpose |
|---|---|---|
release_root | path | Installed Scout release directory used by the cell. |
root_state | path | Local state directory for the root Branch cell. |
root_bind | text | Bind address for the root Branch Controller. |
root_router_listen | text | TLS listen endpoint for the root Branch Router. |
root_router_advertise | text | Advertised TLS endpoint for the root Branch Router. |
Verified steps
Section titled “Verified steps”| Step | Context | Public command | Evidence required before continuing |
|---|---|---|---|
verify-release | Caller or selected context | scout doctor --artifact-root <release_root> | schema scout.doctor/v1; /dependencies/0/state equals "ready"; /dependencies/1/state equals "ready"; /dependencies/2/state equals "ready"; /dependencies/3/state equals "ready"; /components/1/state equals "ready" |
initialize-root | Caller or selected context | scout init --state-dir <root_state> --artifact-root <release_root> --bind <root_bind> --router-listen <root_router_listen> --router-advertise <root_router_advertise> | schema scout.init/v1; /local_context is a string; /runtime/result exists |
read-root-status | Captured root_context | scout status | schema scout.status/v2; /local_cell/state exists |
add-branch
Section titled “add-branch”Create and activate one direct child Branch, apply its admission Change, and verify both sides.
Parameters
Section titled “Parameters”| Parameter | Type | Purpose |
|---|---|---|
parent_context | identifier | Saved context for the direct parent Branch. |
branch_name | identifier | Name for the direct child Branch. |
description | text | Human-readable description for the child Branch. |
owned_prefix | text | Zenoh key-expression prefix delegated to the child Branch. |
activation_file | path | Path for the child’s one-time activation handoff. |
child_state | path | Local state directory for the child Branch cell. |
release_root | path | Installed Scout release directory used by the cell. |
child_bind | text | Bind address for the child Branch Controller. |
port_offset | u16 | Offset applied to the child cell’s product service ports. |
child_router_listen | text | TLS listen endpoint for the child Branch Router. |
child_router_advertise | text | Advertised TLS endpoint for the child Branch Router. |
Verified steps
Section titled “Verified steps”| Step | Context | Public command | Evidence required before continuing |
|---|---|---|---|
create-child | Parameter parent_context | scout branch add <branch_name> --description <description> --owned-prefix <owned_prefix> --child-delegation-allowed --activation-out <activation_file> | schema scout.branch-add/v1; /branch/branch_id is a string; /activation_handoff/shown_once equals true |
activate-child | Caller or selected context | scout activate <activation_file> --state-dir <child_state> --artifact-root <release_root> --bind <child_bind> --port-offset <port_offset> --router-listen <child_router_listen> --router-advertise <child_router_advertise> | schema scout.child-activation/v2; /local_stage equals "completed"; /parent_state equals "completed"; /controller_sync_admission/change_id is a string; /local_context is a string |
review-admission | Parameter parent_context | scout change review <captured:admission_change_id> | schema scout.change/v1; /resource/status equals "validated" |
stage-admission | Parameter parent_context | scout change stage <captured:admission_change_id> | schema scout.change/v1; /resource/status equals "staged" |
apply-admission | Parameter parent_context | scout change apply <captured:admission_change_id> | schema scout.change/v1; /resource/status equals "applied" |
verify-parent-receipt | Parameter parent_context | scout branch show <captured:child_branch_id> | schema scout.branch/v1; /resource/branch_id is a string |
verify-child-status | Captured child_context | scout status | schema scout.status/v2; /local_cell/state exists |
connect-client
Section titled “connect-client”Register and authenticate one Client, prepare and apply its first local Access Grant, and verify both records.
Parameters
Section titled “Parameters”| Parameter | Type | Purpose |
|---|---|---|
branch_context | identifier | Saved context for the Branch that will own the Client and Grant. |
client_name | identifier | Name for the Client to register. |
action | text | Data-plane action to grant (publish or subscribe). |
area | identifier | Exact Data Area identifier used by the Client Grant. |
Verified steps
Section titled “Verified steps”| Step | Context | Public command | Evidence required before continuing |
|---|---|---|---|
register-client | Parameter branch_context | scout client add <client_name> | schema scout.client-add/v1; /resource/handoff_shown equals true; /resource/resource/client_id is a string; /resource/enrollment_handoff is a string |
authenticate-client | Caller or selected context | scout client auth <captured:enrollment_handoff> | schema scout.client-auth-outcome/v1; /agent_service equals "enabled_running"; /application_configuration equals "written" |
prepare-grant | Parameter branch_context | scout grant allow <client_name> <action> <area> | schema scout.grant-allow/v1; /subject_kind equals "client"; /resource/access_grant_id is a string; /resource/policy_change/change_id is a string |
review-grant | Parameter branch_context | scout change review <captured:grant_change_id> | schema scout.change/v1; /resource/status equals "validated" |
stage-grant | Parameter branch_context | scout change stage <captured:grant_change_id> | schema scout.change/v1; /resource/status equals "staged" |
apply-grant | Parameter branch_context | scout change apply <captured:grant_change_id> | schema scout.change/v1; /resource/status equals "applied" |
verify-client | Parameter branch_context | scout client show <captured:client_id> | schema scout.client/v1; /resource/client_id is a string |
verify-grant | Parameter branch_context | scout grant show <captured:grant_id> | schema scout.grant/v1; /resource/access_grant_id is a string |
share-path
Section titled “share-path”Author and apply every retained side of a Data Area grant across a qualified three-Branch ancestor path.
Parameters
Section titled “Parameters”| Parameter | Type | Purpose |
|---|---|---|
area_owner_context | identifier | Saved context for the Branch that owns the Data Area. |
author_context | identifier | Saved context for the ancestor Branch authoring the path Grant. |
intermediate_context | identifier | Saved context for the middle Branch on the three-Branch path. |
area_id | identifier | Exact Data Area identifier owned by the descendant Branch. |
ancestor_subject | identifier | Ancestor Branch identifier used as the Grant subject. |
action | text | Data-plane action to grant (publish or subscribe). |
Verified steps
Section titled “Verified steps”| Step | Context | Public command | Evidence required before continuing |
|---|---|---|---|
verify-area-owner | Parameter area_owner_context | scout area show <area_id> | schema scout.area/v1; /resource/data_area_id is a string; /resource/key_expression is a string |
verify-author-path | Parameter author_context | scout tree --descendants | schema scout.tree-evidence/v2; /branches exists |
author-path-grant | Parameter author_context | scout grant allow <ancestor_subject> <action> <area_id> | schema scout.grant-allow/v2; /subject_kind equals "branch_path"; /resource/path_grant_id is a string; /resource/local_provenance/materialization/change_id is a string |
review-author-side | Parameter author_context | scout change review <captured:author_change_id> | schema scout.change/v1; /resource/status equals "validated" |
stage-author-side | Parameter author_context | scout change stage <captured:author_change_id> | schema scout.change/v1; /resource/status equals "staged" |
apply-author-side | Parameter author_context | scout change apply <captured:author_change_id> | schema scout.change/v1; /resource/status equals "applied" |
discover-intermediate-side | Parameter intermediate_context | scout grant show <captured:path_grant_id> | schema scout.grant/v2; /resource/local_provenance/materialization/change_id is a string |
review-intermediate-side | Parameter intermediate_context | scout change review <captured:intermediate_change_id> | schema scout.change/v1; /resource/status equals "validated" |
stage-intermediate-side | Parameter intermediate_context | scout change stage <captured:intermediate_change_id> | schema scout.change/v1; /resource/status equals "staged" |
apply-intermediate-side | Parameter intermediate_context | scout change apply <captured:intermediate_change_id> | schema scout.change/v1; /resource/status equals "applied" |
discover-owner-side | Parameter area_owner_context | scout grant show <captured:path_grant_id> | schema scout.grant/v2; /resource/local_provenance/materialization/change_id is a string |
review-owner-side | Parameter area_owner_context | scout change review <captured:owner_change_id> | schema scout.change/v1; /resource/status equals "validated" |
stage-owner-side | Parameter area_owner_context | scout change stage <captured:owner_change_id> | schema scout.change/v1; /resource/status equals "staged" |
apply-owner-side | Parameter area_owner_context | scout change apply <captured:owner_change_id> | schema scout.change/v1; /resource/status equals "applied" |
verify-author-grant | Parameter author_context | scout grant show <captured:path_grant_id> | schema scout.grant/v2; /resource/path_grant_id is a string |
verify-author-status | Parameter author_context | scout status | schema scout.status/v2; /local_cell/state exists |
verify-intermediate-grant | Parameter intermediate_context | scout grant show <captured:path_grant_id> | schema scout.grant/v2; /resource/path_grant_id is a string |
verify-intermediate-status | Parameter intermediate_context | scout status | schema scout.status/v2; /local_cell/state exists |
verify-owner-grant | Parameter area_owner_context | scout grant show <captured:path_grant_id> | schema scout.grant/v2; /resource/path_grant_id is a string |
verify-owner-status | Parameter area_owner_context | scout status | schema scout.status/v2; /local_cell/state exists |