Skip to main content

KNOWN_ACTION_NAMES

Constant KNOWN_ACTION_NAMES 

Source
pub const KNOWN_ACTION_NAMES: &[&str];
Expand description

Canonical names of every action in the SysKnife catalogue.

This is the single source of truth for “is this string a valid action name?” — kept in sysknife-types (not sysknife-brain) so every crate that validates an action name (the daemon’s policy::min_role_for_action, the CLI’s approval flow, the proto bridge) sees the same list without depending on the brain.

Note: RequestEnvelope::action_name itself is a plain String — it is not validated against this list at deserialization time; that would require a custom Deserialize impl this type does not have. Validation happens downstream, via ActionName::parse against the value once it has been pulled out of the envelope (the daemon does this before acting on a request).

Cross-module invariant: sysknife_brain::propose_plan::KNOWN_ACTIONS (which pairs each name with an LLM-facing description) MUST list every name that appears here, in either order. The brain has a unit test (every_known_action_name_is_in_types) that pins this — adding an action requires a coordinated update to both lists.