pbakaus/impeccable · error
Poll failed: {}
Error message
Poll failed: {}
What it means
handle_poll_error maps PollError::Other(m) to `Poll failed: <m>` and exits with code 1. This is the fallback arm for any poll failure that is not Auth, ConnRefused, or AckTimeout, carrying the underlying message in `m`.
Source
Thrown at crates/live/src/live_poll.rs:658
"Try restarting: {} stop && {}\n",
script_cmd(&env, &cwd, "live-server"),
script_cmd(&env, &cwd, "live")
));
1
}
PollError::ConnRefused => {
io.err(&format!(
"Live server not running. Start one with: {}\n",
script_cmd(&env, &cwd, "live")
));
1
}
PollError::AckTimeout(m) => {
io.err(&format!("{}\n", m));
1
}
PollError::Other(m) => {
io.err(&format!("Poll failed: {}\n", m));
1
}
}
}
fn arg_value_int(args: &[String], prefix: &str, default: i64) -> i64 {
match args.iter().find(|a| a.starts_with(prefix)) {
Some(a) => {
let raw = a.splitn(2, '=').nth(1).unwrap_or("");
let n = impeccable_core::js::parse_int(raw, 10);
if n.is_nan() {
i64::MIN
} else {
n as i64
}
}
None => default,
}View on GitHub (pinned to 2bc2879276)
Solutions
- Read the interpolated `m` after 'Poll failed:' — it contains the actual cause.
- Restart both ends to rule out version/protocol drift: `<live-server> stop && <live>`.
- If it persists, rebuild the engine from source and re-run with IMPECCABLE_BIN pointing at the fresh binary, then report with the full message.
Defensive patterns
Strategy: try-catch
Try / catch
const res = await poll().catch(e => e);
if (res && res.kind === 'other') {
console.error(`Poll failed: ${res.message} — restarting live session`);
await exec('impeccable live-server stop && impeccable live');
} Prevention
- Keep poller and live-server on the same engine build to avoid protocol drift.
- Log the full `Poll failed: <m>` message verbatim for bug reports.
- Disable localhost-interfering proxies/AV for the live port range.
When it happens
Trigger: Any unexpected error during the live poll loop — malformed server response, protocol mismatch between client and server versions, I/O error reading the socket, or server-side panic surfaced as an error string.
Common situations: Engine binary version mismatch between poller and live-server (protocol drift); proxy or antivirus interfering with localhost sockets; corrupted state files yielding invalid requests.
Related errors
- Authentication failed. The server token may have changed.
- Live server not running. Start one with: {cmd}
- {}
- No running live server found. Start one with: {cmd}
- concept-seed: --candidate-count must be an integer from 5 to
AI-assisted analysis of pbakaus/impeccable@2bc2879276 (2026-09-08).
Data as JSON: /api/errors/063a942ca5871eaa.
Report an issue: GitHub.