{"record":{"id":"7c6942d13c415ccf","repo":"tinyhumansai/openhuman","slug":"runtime-python-is-disabled-set-runtime-python-ena","errorCode":null,"errorMessage":"runtime_python is disabled (set runtime_python.enabled = true to use Python-backed integrations)","messagePattern":"runtime_python is disabled \\(set runtime_python\\.enabled = true to use Python-backed integrations\\)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"src/openhuman/runtime/python/bootstrap.rs","lineNumber":80,"sourceCode":"    pub fn try_cached(&self) -> Option<ResolvedPython> {\n        self.cached.try_lock().ok().and_then(|g| g.clone())\n    }\n\n    /// Resolve a Python 3.12+ interpreter. The first successful result is\n    /// memoized for subsequent callers.\n    pub async fn resolve(&self) -> Result<ResolvedPython> {\n        let mut guard = self.cached.lock().await;\n        if let Some(existing) = guard.as_ref() {\n            tracing::debug!(\n                version = %existing.version,\n                source = ?existing.source,\n                \"[runtime_python::bootstrap] returning cached ResolvedPython\"\n            );\n            return Ok(existing.clone());\n        }\n\n        if !self.config.enabled {\n            bail!(\n                \"runtime_python is disabled (set runtime_python.enabled = true to use Python-backed integrations)\"\n            );\n        }\n\n        if self.config.prefer_system {\n            if let Some(system) = detect_system_python(\n                &self.config.minimum_version,\n                empty_to_none(&self.config.preferred_command),\n            ) {\n                let resolved = resolve_from_system(system);\n                *guard = Some(resolved.clone());\n                return Ok(resolved);\n            }\n        }\n\n        let managed = self\n            .install_managed_from_api(super::downloader::RELEASES_API)\n            .await?;","sourceCodeStart":62,"sourceCodeEnd":98,"githubUrl":"https://github.com/tinyhumansai/openhuman/blob/749120085864ce16e0f273c7b86fac7740b39c5b/src/openhuman/runtime/python/bootstrap.rs#L62-L98","documentation":"PythonBootstrap::resolve (or its callers) hit the config gate: runtime_python.enabled is false, so the Python 3.12+ toolchain is never resolved or downloaded. Same shape as the Node gate — a deliberate opt-out, not an environment failure.","triggerScenarios":"Thrown at src/openhuman/runtime/python/bootstrap.rs:80 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set runtime_python.enabled = true in config.toml","Skip the Python-backed feature (spaCy extraction, Kompress compression) if Python is intentionally off"],"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"}