Hmbown/CodeWhale · error · anyhow::Error
unsupported permission posture {value:?}; expected ask, auto
Error message
unsupported permission posture {value:?}; expected ask, auto-review, or full-access What it means
RuntimePolicy::from_request rejected the permission posture string: it matches none of ask, auto-review, or full-access after mode parsing succeeded.
Source
Thrown at crates/tui/src/runtime_policy.rs:57
Self {
mode: visible_mode(parsed_mode),
permission,
}
}
/// Validate and normalize a new Runtime request. Legacy aliases are
/// accepted as one-way inputs, but only current values are persisted.
pub(crate) fn from_request(
mode: &str,
permission_posture: Option<&str>,
auto_approve: Option<bool>,
) -> Result<Self> {
let parsed_mode = parse_runtime_mode(mode).ok_or_else(|| {
anyhow::anyhow!("unsupported Runtime mode {mode:?}; expected plan, act, or operate")
})?;
let permission = match permission_posture {
Some(value) => ApprovalMode::from_config_value(value).ok_or_else(|| {
anyhow::anyhow!(
"unsupported permission posture {value:?}; expected ask, auto-review, or full-access"
)
})?,
None if parsed_mode == AppMode::Yolo || auto_approve.unwrap_or(false) => {
ApprovalMode::Bypass
}
None => ApprovalMode::Suggest,
};
if permission == ApprovalMode::Never {
bail!("permission posture 'never' is not part of the Runtime product contract");
}
Ok(Self {
mode: visible_mode(parsed_mode),
permission,
})
}
#[must_use]View on GitHub (pinned to 0c42157ee5)
Solutions
- Use ask, auto-review, or full-access
- Fix the posture string sent by the requesting client
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at crates/tui/src/runtime_policy.rs:57 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of Hmbown/CodeWhale@0c42157ee5 (2026-08-20).
Data as JSON: /api/errors/511047dbb5a50cd0.
Report an issue: GitHub.