The list, ListAgents, was not empty and lacked a known peer, and the hook, which matched only “No reachable agents”, stayed silent. The missing peer was a known one: list_sessions found it (isRunning: false) and send_message woke it at once.

What the hook was asked to do

The ask was for the hook to fire when a non-empty ListAgents lacks a known peer, naming the missing ones, and to stay advisory.

What the replay showed

The replay covered the 75 results with a titled self: 39 would fire, 36 stayed silent, and a separate per-line presence check disagreed on 0.