tinyhumansai/openhuman · error · anyhow::Error

wait child: {e}

Error message

wait child: {e}

What it means

Waiting for the claude child process to exit (after stdout reached EOF and the parser was ended) failed — the OS wait syscall on the child errored. The turn's output was already consumed; this failure means the exit status is unknown, so the driver cannot distinguish success from a signal.

Source

Thrown at src/openhuman/inference/provider/claude_code/driver.rs:462

                for delta in mapper.handle(ev) {
                    if let Some(tx) = ctx.stream {
                        let _ = tx.send(delta).await;
                    }
                }
            }
        }
        for ev in parser.end() {
            for delta in mapper.handle(ev) {
                if let Some(tx) = ctx.stream {
                    let _ = tx.send(delta).await;
                }
            }
        }

        let status = child
            .wait()
            .await
            .map_err(|e| anyhow::anyhow!("wait child: {e}"))?;
        Ok::<_, anyhow::Error>(status)
    })
    .await;

    let status = match timed {
        Ok(inner) => inner?,
        Err(_elapsed) => {
            log::error!(
                "[claude-code][driver] turn timeout ({TURN_TIMEOUT:?}) exceeded; killing child"
            );
            // kill_on_drop handles cleanup, but explicit kill gives us
            // a chance to collect stderr.
            let _ = child.kill().await;
            anyhow::bail!(
                "[claude-code][driver] turn timed out after {:?}",
                TURN_TIMEOUT
            );
        }

View on GitHub (pinned to 7491200858)

Solutions

  1. Retry the turn
  2. Check for zombie/orphaned claude processes
  3. Investigate OS-level process issues if recurrent
Defensive patterns

Strategy: try-catch

When it happens

Trigger: Thrown at src/openhuman/inference/provider/claude_code/driver.rs:462 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/b4dda4babdd0844d. Report an issue: GitHub.