hermes - 💡(How to fix) Fix [Bug]: re-blocking an already-blocked kanban task fires no gateway notification

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Error Message

Additional Logs / Traceback (optional)

Root Cause

Root Cause Analysis (optional)

Fix Action

Fix / Workaround

    1. Create a task and let the dispatcher claim it TASK=$(hermes kanban create "test re-block" --assignee ops --json | jq -r .id)
    1. Dispatcher claims it again; block it a second time hermes kanban block $TASK "still need input: bucket name?"

Code Example

# Run the gateway in order to process subscription
docker run --rm \
  --name hermes-test \
  -v $(pwd)/data:/opt/data \
  nousresearch/hermes-agent:latest \
  gateway run

# Prepare a platform and chat_id in .env
cat > "$DOTENV_PATH" <<EOF
DISCORD_BOT_TOKEN=${DISCORD_BOT_TOKEN}
EOF

# Run the block & unblock
docker exec hermes-test bash -c '
  HERMES=/opt/hermes/.venv/bin/hermes

  TASK=$($HERMES kanban create "re-block test" --assignee ops --json | python3 -c "import sys,json; print(json.load(sys.stdin)[\"id\"])")
  echo "Task: $TASK"

  $HERMES kanban notify-subscribe --platform discord --chat-id ${FIND YOU CHANNEL ID} $TASK

  $HERMES kanban block $TASK "first block"
  echo "--- DB after first block ---"
  sleep 5
  echo "--- DB after wait ---"

  $HERMES kanban unblock $TASK
  $HERMES kanban block $TASK "second block"
  echo "--- DB after second block ---"
  sleep 5
  echo "--- DB after wait ---"
'

# And there is only 'first block' message in platform message.

---

Debug report uploaded:
  Report       https://paste.rs/FCS2G
  agent.log    https://paste.rs/FkYS7
  gateway.log  https://paste.rs/uQsRE

---
RAW_BUFFERClick to expand / collapse

Bug Description

When a Kanban task is already in blocked status and a worker (or a human via CLI) calls kanban_block / hermes kanban block again — e.g. after an unblock-then-re-block cycle — the gateway emits no Telegram / Discord / Slack notification for the second block event.

The first blocked transition correctly triggers a notification. Any subsequent block on the same task is silently swallowed.

Steps to Reproduce

    1. Create a task and let the dispatcher claim it TASK=$(hermes kanban create "test re-block" --assignee ops --json | jq -r .id)
    1. Block it (first time) — gateway notification fires ✓ hermes kanban block $TASK "need input: which S3 bucket?"
    1. Unblock it hermes kanban unblock $TASK
    1. Dispatcher claims it again; block it a second time hermes kanban block $TASK "still need input: bucket name?"
    1. Observe: no Telegram/Discord/Slack notification for step 4

Following is test in docker(just for convenience to use docker):

# Run the gateway in order to process subscription
docker run --rm \
  --name hermes-test \
  -v $(pwd)/data:/opt/data \
  nousresearch/hermes-agent:latest \
  gateway run

# Prepare a platform and chat_id in .env
cat > "$DOTENV_PATH" <<EOF
DISCORD_BOT_TOKEN=${DISCORD_BOT_TOKEN}
EOF

# Run the block & unblock
docker exec hermes-test bash -c '
  HERMES=/opt/hermes/.venv/bin/hermes

  TASK=$($HERMES kanban create "re-block test" --assignee ops --json | python3 -c "import sys,json; print(json.load(sys.stdin)[\"id\"])")
  echo "Task: $TASK"

  $HERMES kanban notify-subscribe --platform discord --chat-id ${FIND YOU CHANNEL ID} $TASK

  $HERMES kanban block $TASK "first block"
  echo "--- DB after first block ---"
  sleep 5
  echo "--- DB after wait ---"

  $HERMES kanban unblock $TASK
  $HERMES kanban block $TASK "second block"
  echo "--- DB after second block ---"
  sleep 5
  echo "--- DB after wait ---"
'

# And there is only 'first block' message in platform message.

Expected Behavior

Every transition into blocked status — regardless of how many times the task has been blocked before — should fire a gateway notification, identical to the one sent on the first block.

Actual Behavior

Only the first blocked transition sends a notification. Subsequent block calls on the same task produce no user-visible signal on any connected platform (Telegram, Discord, Slack). The task event log records the event correctly — the notification layer is the only thing missing.

Affected Component

Gateway (Telegram/Discord/Slack/WhatsApp)

Messaging Platform (if gateway-related)

No response

Debug Report

Debug report uploaded:
  Report       https://paste.rs/FCS2G
  agent.log    https://paste.rs/FkYS7
  gateway.log  https://paste.rs/uQsRE

Operating System

macOS 15.6.1

Python Version

No response

Hermes Version

v0.13.0(v2026.5.7)

Additional Logs / Traceback (optional)

Root Cause Analysis (optional)

No response

Proposed Fix (optional)

No response

Are you willing to submit a PR for this?

  • I'd like to fix this myself and submit a PR

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

hermes - 💡(How to fix) Fix [Bug]: re-blocking an already-blocked kanban task fires no gateway notification