tinyhumansai/openhuman · error
step `{label}` failed (status {}): {tail}
Error message
step `{label}` failed (status {}): {tail} What it means
A Kompress provisioning python step exited non-zero; the message embeds the exit status and the last 800 chars of its stderr, which names the actual failure (pip resolution error, OOM, model download failure).
Source
Thrown at src/openhuman/runtime/python_server/kompress.rs:280
// suppress the Windows conhost flash here too (GH-4814).
crate::openhuman::inference::local::process_util::apply_no_window(&mut cmd);
let output = match tokio::time::timeout(timeout, cmd.output()).await {
Ok(Ok(o)) => o,
Ok(Err(e)) => return Err(e).with_context(|| format!("spawning step `{label}`")),
Err(_) => bail!("step `{label}` timed out after {:?}", timeout),
};
if !output.status.success() {
let stderr = String::from_utf8_lossy(&output.stderr);
let tail: String = stderr
.chars()
.rev()
.take(800)
.collect::<String>()
.chars()
.rev()
.collect();
bail!("step `{label}` failed (status {}): {tail}", output.status);
}
Ok(())
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn venv_python_path_is_platform_specific() {
let p = venv_python_path(Path::new("/tmp/venv"));
if cfg!(windows) {
assert!(p.ends_with("Scripts/python.exe") || p.ends_with("Scripts\\python.exe"));
} else {
assert_eq!(p, PathBuf::from("/tmp/venv/bin/python"));
}
}
View on GitHub (pinned to 7491200858)
Solutions
- Read the embedded stderr tail to identify the failing step
- Fix the named cause (network, disk space, dependency conflict) and re-run provisioning
- Clear the partial venv so provisioning starts clean
Defensive patterns
Strategy: retry
When it happens
Trigger: Thrown at src/openhuman/runtime/python_server/kompress.rs:280 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17).
Data as JSON: /api/errors/e09a7c0c6b059704.
Report an issue: GitHub.