Hmbown/CodeWhale · error · std::io::Error
goal snapshot has unsupported status '{other}'
Error message
goal snapshot has unsupported status '{other}' What it means
Status enum guard in SessionGoalState::from_runtime: the snapshot's status string, after trimming, does not match any supported SessionGoalStatus value (e.g. not "active", "paused", "none"), so the durable state cannot represent it.
Source
Thrown at crates/tui/src/session_manager.rs:570
pub fn from_runtime(snapshot: &GoalSnapshot) -> io::Result<Option<Self>> {
if snapshot.objective.is_none() && snapshot.status.trim() == "none" {
return Ok(None);
}
let objective = snapshot
.objective
.as_deref()
.map(str::trim)
.filter(|objective| !objective.is_empty())
.ok_or_else(|| {
io::Error::new(io::ErrorKind::InvalidData, "goal snapshot has no objective")
})?;
let status = match snapshot.status.trim() {
"active" => SessionGoalStatus::Active,
"paused" => SessionGoalStatus::Paused,
"complete" => SessionGoalStatus::Complete,
"blocked" => SessionGoalStatus::Blocked,
other => {
return Err(io::Error::new(
io::ErrorKind::InvalidData,
format!("goal snapshot has unsupported status '{other}'"),
));
}
};
let state = Self {
schema_version: CURRENT_SESSION_GOAL_SCHEMA_VERSION,
objective: objective.to_string(),
status,
token_budget: snapshot.token_budget,
tokens_used: snapshot.tokens_used,
time_used_seconds: snapshot.time_used_seconds,
continuation_count: snapshot.continuation_count,
elapsed_seconds: snapshot.elapsed_seconds.unwrap_or_default(),
pause_reason: snapshot.pause_reason,
};
state.validate()?;
Ok(Some(state))View on GitHub (pinned to 0c42157ee5)
Solutions
- Use one of the supported status strings understood by SessionGoalStatus.
- Add a mapping arm in from_runtime if a new status is intentionally introduced.
- Check the producer of GoalSnapshot for casing or spelling errors in the status.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at crates/tui/src/session_manager.rs:570 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/e869e576e58e695f.
Report an issue: GitHub.