block/buzz · error · io::Error (Unsupported)

Pi launch overrides are unsupported on this platform

Error message

Pi launch overrides are unsupported on this platform

What it means

Raised in launcher_script's cfg(not(any(unix, windows))) fallback: the host platform is neither Unix nor Windows, so no launcher-script backend (POSIX sh script or Windows batch file) exists for Pi launch overrides. This is a compile-time-selected sentinel returning io::ErrorKind::Unsupported — it fires on exotic targets (e.g. wasm, other embedded OSes) when a Pi agent launch override is requested.

Source

Thrown at crates/buzz-acp/src/pi_launcher.rs:232

        "@echo off\r\n\"{}\"{} --skill \"{}\" %*\r\nexit /b %ERRORLEVEL%\r\n",
        batch_escape(pi_command),
        system_prompt_arg,
        batch_escape(managed_skills_dir),
    ))
}

#[cfg(windows)]
fn batch_escape(value: &str) -> String {
    value.replace('%', "%%").replace('"', "\"\"")
}

#[cfg(not(any(unix, windows)))]
fn launcher_script(
    _pi_command: &str,
    _prompt_path: Option<&Path>,
    _managed_skills_dir: &Path,
) -> io::Result<String> {
    Err(io::Error::new(
        io::ErrorKind::Unsupported,
        "Pi launch overrides are unsupported on this platform",
    ))
}

#[cfg(test)]
mod tests {
    use super::*;

    #[test]
    fn non_pi_adapter_keeps_base_prompt_for_acp_delivery() {
        let base = Some("Buzz base".to_string());
        let (prepared, remaining) =
            PiLaunchOverride::prepare("goose", base.clone(), Path::new("/unused/skills"), true)
                .expect("prepare");
        assert!(prepared.is_none());
        assert_eq!(remaining, base);
    }

View on GitHub (pinned to dad5a33865)

Solutions

  1. Run the managed Pi agent on a supported platform (Unix or Windows)
  2. Remove/disable the Pi launch override (adapter) on unsupported targets so the plain ACP launch path is used
  3. Contribute a launcher backend for the target platform in crates/buzz-acp/src/pi_launcher.rs
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at crates/buzz-acp/src/pi_launcher.rs:232 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of block/buzz@dad5a33865 (2026-09-05). Data as JSON: /api/errors/347be00825eb082e. Report an issue: GitHub.