tinyhumansai/openhuman · error

runtime_python is disabled (set runtime_python.enabled = tru

Error message

runtime_python is disabled (set runtime_python.enabled = true to use Python-backed integrations)

What it means

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.

Source

Thrown at src/openhuman/runtime/python/bootstrap.rs:80

    pub fn try_cached(&self) -> Option<ResolvedPython> {
        self.cached.try_lock().ok().and_then(|g| g.clone())
    }

    /// Resolve a Python 3.12+ interpreter. The first successful result is
    /// memoized for subsequent callers.
    pub async fn resolve(&self) -> Result<ResolvedPython> {
        let mut guard = self.cached.lock().await;
        if let Some(existing) = guard.as_ref() {
            tracing::debug!(
                version = %existing.version,
                source = ?existing.source,
                "[runtime_python::bootstrap] returning cached ResolvedPython"
            );
            return Ok(existing.clone());
        }

        if !self.config.enabled {
            bail!(
                "runtime_python is disabled (set runtime_python.enabled = true to use Python-backed integrations)"
            );
        }

        if self.config.prefer_system {
            if let Some(system) = detect_system_python(
                &self.config.minimum_version,
                empty_to_none(&self.config.preferred_command),
            ) {
                let resolved = resolve_from_system(system);
                *guard = Some(resolved.clone());
                return Ok(resolved);
            }
        }

        let managed = self
            .install_managed_from_api(super::downloader::RELEASES_API)
            .await?;

View on GitHub (pinned to 7491200858)

Solutions

  1. Set runtime_python.enabled = true in config.toml
  2. Skip the Python-backed feature (spaCy extraction, Kompress compression) if Python is intentionally off
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at src/openhuman/runtime/python/bootstrap.rs:80 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/7c6942d13c415ccf. Report an issue: GitHub.