zeroclaw-labs/zeroclaw · error · anyhow::Error
Slack apps.connections.open failed: {err}
Error message
Slack apps.connections.open failed: {err} What it means
Error "Slack apps.connections.open failed: {err}" thrown in zeroclaw-labs/zeroclaw.
Source
Thrown at crates/zeroclaw-channels/src/slack.rs:4019
let status = resp.status();
let body = resp
.text()
.await
.unwrap_or_else(|e| format!("<failed to read response body: {e}>"));
if !status.is_success() {
let sanitized = zeroclaw_providers::sanitize_api_error(&body);
anyhow::bail!("Slack apps.connections.open failed ({status}): {sanitized}");
}
let parsed: serde_json::Value = serde_json::from_str(&body).unwrap_or_default();
if parsed.get("ok") == Some(&serde_json::Value::Bool(false)) {
let err = parsed
.get("error")
.and_then(|e| e.as_str())
.unwrap_or("unknown");
anyhow::bail!("Slack apps.connections.open failed: {err}");
}
parsed
.get("url")
.and_then(|v| v.as_str())
.map(ToOwned::to_owned)
.ok_or_else(|| {
::zeroclaw_log::record!(
WARN,
::zeroclaw_log::Event::new(module_path!(), ::zeroclaw_log::Action::Reject)
.with_outcome(::zeroclaw_log::EventOutcome::Failure)
.with_attrs(
::serde_json::json!({"field": "url", "api": "apps.connections.open"})
),
"slack: apps.connections.open did not return url"
);
anyhow::Error::msg("Slack apps.connections.open did not return url")
})View on GitHub (pinned to 88bb9c8533)
Solutions
- Check network connectivity and the error detail for the Socket Mode connection request.
When it happens
Trigger: Thrown at crates/zeroclaw-channels/src/slack.rs:4019 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of zeroclaw-labs/zeroclaw@88bb9c8533 (2026-08-23).
Data as JSON: /api/errors/251844ec6285e164.
Report an issue: GitHub.