[RCA] Ezra and Bezalel do not respond to Gitea @mention tagging #579

Open
opened 2026-04-07 20:29:54 +00:00 by Timmy · 0 comments
Owner

Root Cause Analysis

Reported by: @Rockachopa on the-nexus#1115#issuecomment-36862
Filed by: Timmy
Date: 2026-04-07


What Broke

Tagging @ezra or @bezalel in a Gitea issue comment produces no response. The agents do not pick up the work or acknowledge the mention.


Root Causes (two compounding)

RC-1: Ezra and Bezalel are not in AGENT_USERS

~/.hermes/bin/gitea-event-watcher.py has two sets:

AGENT_USERS = {
    "claude": {"gitea_id": 11},
    "gemini": {"gitea_id": 12},
    "grok":   {"gitea_id": 14},
    "kimi":   {"gitea_id": 5},
}
KNOWN_AGENTS = set(AGENT_USERS) | {"timmy", "ezra", "allegro", "bezalel", ...}

KNOWN_AGENTS is used to detect mentions. AGENT_USERS is used to dispatch work. Ezra (gitea_id=19) and Bezalel (gitea_id=18) are in KNOWN_AGENTS but NOT in AGENT_USERS. When they are tagged, the watcher sees the mention but has no dispatch handler — the event is silently dropped.

RC-2: Dispatch queue is Mac-local, VPS agents have no reader

Even if Ezra/Bezalel were added to AGENT_USERS, the dispatch queue (~/.hermes/burn-logs/dispatch-queue.json) lives on the Mac. The agent loops that consume this queue (claude-loop.sh, gemini-loop.sh, etc.) also run on the Mac. Ezra and Bezalel run hermes gateway on separate VPS boxes (Ezra: 143.198.27.163, Bezalel: 159.203.146.185) — they have no process polling the Mac-local queue.

The Mac webhooks (localhost:864x) confirm this: only port 8642 is active (Timmy's gateway). No webhook listener exists for VPS agents.


Evidence

  • gitea-event-watcher.py AGENT_USERS missing ezra/bezalel
  • lsof shows only port 8642 listening on Mac (Hermes gateway)
  • SSH to Ezra VPS confirms: hermes gateway running but no dispatch consumer for Mac events
  • Bezalel and Ezra gitea IDs confirmed: ezra=19, bezalel=18

Fix

Short-term (get tagging working)

  1. Add to AGENT_USERS in gitea-event-watcher.py:
"ezra":    {"gitea_id": 19},
"bezalel": {"gitea_id": 18},
  1. Add SSH dispatch handler: when ezra/bezalel is queued, SSH into their VPS and run hermes chat -p "<task>" with the issue context.

Proper fix (VPS-native polling)

Implement a heartbeat on each VPS box that polls Gitea for issues/comments mentioning that agent, then dispatches locally via hermes chat. This is the same pattern as the Kimi heartbeat (~/.timmy/uniwizard/kimi-heartbeat.sh) — just on the VPS for Ezra/Bezalel.


Status

  • Add ezra/bezalel to AGENT_USERS
  • Implement SSH dispatch or VPS-native polling heartbeat
  • Smoke test: tag @ezra on an issue, confirm response within 15min
  • Smoke test: tag @bezalel, same
## Root Cause Analysis **Reported by:** @Rockachopa on the-nexus#1115#issuecomment-36862 **Filed by:** Timmy **Date:** 2026-04-07 --- ## What Broke Tagging @ezra or @bezalel in a Gitea issue comment produces no response. The agents do not pick up the work or acknowledge the mention. --- ## Root Causes (two compounding) ### RC-1: Ezra and Bezalel are not in `AGENT_USERS` `~/.hermes/bin/gitea-event-watcher.py` has two sets: ```python AGENT_USERS = { "claude": {"gitea_id": 11}, "gemini": {"gitea_id": 12}, "grok": {"gitea_id": 14}, "kimi": {"gitea_id": 5}, } KNOWN_AGENTS = set(AGENT_USERS) | {"timmy", "ezra", "allegro", "bezalel", ...} ``` `KNOWN_AGENTS` is used to *detect* mentions. `AGENT_USERS` is used to *dispatch* work. Ezra (gitea_id=19) and Bezalel (gitea_id=18) are in `KNOWN_AGENTS` but NOT in `AGENT_USERS`. When they are tagged, the watcher sees the mention but has no dispatch handler — the event is silently dropped. ### RC-2: Dispatch queue is Mac-local, VPS agents have no reader Even if Ezra/Bezalel were added to `AGENT_USERS`, the dispatch queue (`~/.hermes/burn-logs/dispatch-queue.json`) lives on the Mac. The agent loops that consume this queue (claude-loop.sh, gemini-loop.sh, etc.) also run on the Mac. Ezra and Bezalel run `hermes gateway` on separate VPS boxes (Ezra: 143.198.27.163, Bezalel: 159.203.146.185) — they have no process polling the Mac-local queue. The Mac webhooks (localhost:864x) confirm this: only port 8642 is active (Timmy's gateway). No webhook listener exists for VPS agents. --- ## Evidence - `gitea-event-watcher.py` AGENT_USERS missing ezra/bezalel - `lsof` shows only port 8642 listening on Mac (Hermes gateway) - SSH to Ezra VPS confirms: hermes gateway running but no dispatch consumer for Mac events - Bezalel and Ezra gitea IDs confirmed: ezra=19, bezalel=18 --- ## Fix ### Short-term (get tagging working) 1. Add to `AGENT_USERS` in `gitea-event-watcher.py`: ```python "ezra": {"gitea_id": 19}, "bezalel": {"gitea_id": 18}, ``` 2. Add SSH dispatch handler: when ezra/bezalel is queued, SSH into their VPS and run `hermes chat -p "<task>"` with the issue context. ### Proper fix (VPS-native polling) Implement a heartbeat on each VPS box that polls Gitea for issues/comments mentioning that agent, then dispatches locally via `hermes chat`. This is the same pattern as the Kimi heartbeat (`~/.timmy/uniwizard/kimi-heartbeat.sh`) — just on the VPS for Ezra/Bezalel. --- ## Status - [ ] Add ezra/bezalel to AGENT_USERS - [ ] Implement SSH dispatch or VPS-native polling heartbeat - [ ] Smoke test: tag @ezra on an issue, confirm response within 15min - [ ] Smoke test: tag @bezalel, same
ezra was assigned by Timmy 2026-04-08 15:00:30 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Timmy_Foundation/timmy-home#579