Skip to content

fix(homeboy): give the daemon the bridge session sender so cook notifications deliver - #717

Merged
chubes4 merged 1 commit into
mainfrom
fix/issue-715-wp-coding-agents
Oct 10, 2026
Merged

chubes4 merged 1 commit into
mainfrom
fix/issue-715-wp-coding-agents

Conversation

@chubes4

@chubes4 chubes4 commented Oct 10, 2026

Copy link
Copy Markdown
Member

Summary

homeboy-daemon.service drains Homeboy's notification outbox, but it had neither a session sender nor Discord REST credentials. Every cook notification failed with Configure exactly one auth mode, and 366 are sitting in the dead-letter outbox on extrachill.com. Closes #715.

Changes

  • bridges/_dispatch.sh: documents the optional bridge_session_sender_command hook.
  • bridges/roadie.sh: Roadie implements bridge_session_sender_command as <roadie_bin> send. It also adds bridge_session_sender_env, which provides ROADIE_SERVICE_TOKEN_FILE and ROADIE_LOCK_PORT when it is set.
  • services/homeboy-daemon.sh: the unit renders HOMEBOY_SESSION_SEND_COMMAND plus the sender env only when a bridge provides the hook, and adds the sender's directory to PATH. Reconcile restarts the daemon on a changed unit only when it is idle; otherwise it warns. The file names no bridge, and the gate greps for that.
  • tests/homeboy-daemon-service.sh: covers rendering with the Roadie bridge (sender, token file, PATH) and without any bridge (no sender).

Evidence

I dry-ran the Discord transport with the daemon's exact environment:

  • as-is: failed: Configure exactly one auth mode
  • with HOMEBOY_SESSION_SEND_COMMAND=".../roadie send": {"status":"dry_run","delivery":{"mode":"session","destination":"session_thread"}}

Tests

tests/homeboy-daemon-service.sh, tests/bridge-render.sh and tests/bridge-service-adapters.sh pass, and services/homeboy-daemon.sh contains no roadie literal.

AI assistance

  • AI assistance: Yes
  • Tool(s): Homeboy cook (OpenCode, anthropic/claude-sonnet-5); the diagnosis, review, local gate run and PR were done by Extra Chill Bot via Roadie.
  • Used for: Implementation and tests.

…ications deliver

homeboy-daemon.service drains the notification outbox but had neither a
session sender nor Discord REST credentials, so every cook notification
dead-lettered with 'Configure exactly one auth mode'.

Bridges now expose an optional bridge_session_sender_command (and
bridge_session_sender_env) hook. The daemon unit renders
HOMEBOY_SESSION_SEND_COMMAND and the sender's env only when the hook yields
a value, puts the sender on PATH, and restarts the daemon on a changed unit
only when idle. services/homeboy-daemon.sh names no bridge.

Closes #715
@chubes4
chubes4 merged commit dace7e8 into main Oct 10, 2026
86 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

homeboy-daemon.service lacks the bridge session sender, so cook notifications dead-letter

1 participant