fix(comms): fail known-dead sends immediately instead of burning Ask timeouts

This commit is contained in:
Joseph Doherty
2026-08-14 19:49:00 -04:00
parent ee193cd2bb
commit c5e66ed4e4
4 changed files with 120 additions and 12 deletions
@@ -24,8 +24,10 @@ public interface ISiteCommandTransport
/// Routes <paramref name="envelope"/>'s message to its site. Any reply the site produces is
/// delivered to <paramref name="replyTo"/> — for an <c>Ask</c> that is the temporary ask actor
/// (completing the caller's task); for a <c>Tell</c>-with-sender (the debug bridge) that is the
/// originating actor. A message with no route (an unknown site) is warned and dropped so the
/// caller's <c>Ask</c> times out — central never buffers for an unreachable site.
/// originating actor. A message with no route (an unknown/unconfigured site) fails fast: a
/// <see cref="Status.Failure"/> is delivered to <paramref name="replyTo"/> immediately instead of
/// letting the caller's <c>Ask</c> burn its full timeout — central still never buffers for an
/// unreachable site.
/// </summary>
/// <param name="envelope">The site-addressed command envelope.</param>
/// <param name="replyTo">Where a reply (or a <see cref="Status.Failure"/>) is delivered.</param>