{"record":{"id":"627765c4afc19cdc","repo":"tinyhumansai/openhuman","slug":"failed-to-spawn-jailed-process-e","errorCode":null,"errorMessage":"Failed to spawn jailed process: {e}","messagePattern":"Failed to spawn jailed process: (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/openhuman/sandbox/ops.rs","lineNumber":291,"sourceCode":"            let stderr_content = std::fs::read_to_string(&stderr_path).unwrap_or_default();\n            let _ = std::fs::remove_file(&stdout_path);\n            let _ = std::fs::remove_file(&stderr_path);\n\n            Ok(SandboxExecResult {\n                exit_code: wait_result.0,\n                stdout,\n                stderr: if wait_result.1 {\n                    format!(\"Command timed out after {}s\", timeout.as_secs())\n                } else {\n                    stderr_content\n                },\n                timed_out: wait_result.1,\n            })\n        }\n        Err(e) => {\n            let _ = std::fs::remove_file(&stdout_path);\n            let _ = std::fs::remove_file(&stderr_path);\n            anyhow::bail!(\"Failed to spawn jailed process: {e}\")\n        }\n    }\n}\n\n/// Check whether a tool operation is an elevated op that must run on the\n/// host even when the session is sandboxed.\npub fn is_elevated_op(tool_name: &str) -> bool {\n    ELEVATED_TOOLS.contains(&tool_name)\n}\n\n/// Build an `ElevatedOp` for audit logging when a tool bypasses the sandbox.\npub fn build_elevated_op(tool_name: &str, command: &str, reason: &str) -> ElevatedOp {\n    tracing::info!(\n        tool = tool_name,\n        reason = reason,\n        \"[sandbox] elevated host operation\"\n    );\n    ElevatedOp {","sourceCodeStart":273,"sourceCodeEnd":309,"githubUrl":"https://github.com/tinyhumansai/openhuman/blob/749120085864ce16e0f273c7b86fac7740b39c5b/src/openhuman/sandbox/ops.rs#L273-L309","documentation":"execute_local_jail failed to spawn the jailed helper process — the OS rejected the spawn itself (helper binary missing, exec permission, resource limits). Stdout/stderr file redirection was set up but the process never ran.","triggerScenarios":"Thrown at src/openhuman/sandbox/ops.rs:291 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Verify the jail helper binary ships with the install and is executable","Check {e} for the OS errno (ENOENT, EACCES, resource limits)","Fall back to unsandboxed execution if the policy tier allows"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"749120085864ce16e0f273c7b86fac7740b39c5b","analyzedAt":"2026-08-17T21:21:45.363Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}