tinyhumansai/openhuman · error
{} worker protocol authentication failed
Error message
{} worker protocol authentication failed What it means
The worker completed the handshake but failed the token authentication step — the launch token handed to the process was not echoed back correctly, indicating a corrupted or foreign worker binary on the other end of the pipe.
Source
Thrown at src/openhuman/runtime/pool/worker.rs:199
let ready: PoolReadyLine = serde_json::from_str(&ready_line)
.with_context(|| format!("parsing worker ready line: {ready_line}"))?;
if !ready.ready {
bail!(
"{} worker failed to start: {}",
launch.lang.id(),
ready.error.unwrap_or_else(|| "unknown".to_string())
);
}
if ready.protocol != Some(PROTOCOL_VERSION) {
bail!(
"{} worker protocol mismatch: expected {}, got {:?}",
launch.lang.id(),
PROTOCOL_VERSION,
ready.protocol
);
}
if ready.protocol_token != expected_token {
bail!("{} worker protocol authentication failed", launch.lang.id());
}
tracing::info!(lang = launch.lang.id(), "[runtime_pool] worker ready");
Ok(Self {
launch: launch.clone(),
_child: child,
stdin,
responses: lines,
jobs_done: 0,
last_used: Instant::now(),
})
}
/// Submit one job and await its response.
///
/// `hard_timeout` is a **safety net** above the worker's own soft deadline:
/// the worker aborts a job at `req.timeout_ms` and still replies, so this
/// only fires if the worker itself has wedged. On `Err` the caller mustView on GitHub (pinned to 7491200858)
Solutions
- Re-provision the worker runtime (its code may be stale or tampered)
- Check for another process squatting on the spawn path
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at src/openhuman/runtime/pool/worker.rs:199 when the library encounters an invalid state.
Common situations: See trigger scenarios.
Understand the failure class
- Authentication and authorization failures — expired tokens, bad credentials, and missing scopes.
AI-assisted analysis of tinyhumansai/openhuman@7491200858 (2026-08-17).
Data as JSON: /api/errors/9ffc664533b7398d.
Report an issue: GitHub.