zeroclaw-labs/zeroclaw · error · anyhow::Error
Slack reactions.add failed: {err}
Error message
Slack reactions.add failed: {err} What it means
Error "Slack reactions.add failed: {err}" thrown in zeroclaw-labs/zeroclaw.
Source
Thrown at crates/zeroclaw-channels/src/slack.rs:5518
.send()
.await?;
let status = resp.status();
let text = resp.text().await.unwrap_or_default();
if !status.is_success() {
let sanitized = zeroclaw_providers::sanitize_api_error(&text);
anyhow::bail!("Slack reactions.add failed ({status}): {sanitized}");
}
let parsed: serde_json::Value = serde_json::from_str(&text).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");
if err != "already_reacted" {
anyhow::bail!("Slack reactions.add failed: {err}");
}
}
Ok(())
}
async fn remove_reaction(
&self,
channel_id: &str,
message_id: &str,
emoji: &str,
) -> anyhow::Result<()> {
let ts = extract_slack_ts(message_id);
let name = unicode_emoji_to_slack_name(emoji);
let body = serde_json::json!({
"channel": channel_id,
"timestamp": ts,View on GitHub (pinned to 88bb9c8533)
Solutions
- Check network connectivity and the underlying error; verify the Slack token.
When it happens
Trigger: Thrown at crates/zeroclaw-channels/src/slack.rs:5518 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/795fed1177f883e4.
Report an issue: GitHub.