• sbbsecho: reply to netmail addressed to TRACE with the route taken

    From Rob Swindell@VERT to GitLab note in main/sbbs on Tue Oct 13 23:38:21 2026
    https://gitlab.synchro.net/main/sbbs/-/merge_requests/736#note_10617

    Thanks for this. Two things before it goes in:

    **1. The description's "before" behavior isn't right.**

    Netmail addressed to "TRACE" was handled as an AreaMgr request.

    On master, the robot block in `import_netmail()` is only entered when the
    To name is `AreaFix`, `SBBSecho`, or `PING`. A netmail to `TRACE` never
    reaches it, so it goes through ordinary netmail import: user number, sysop alias list, user name lookup, then `DefaultRecipient`. With none of those matching, it is logged as an unknown user. It was never parsed as AreaFix commands.

    That sentence describes the intermediate state of this patch: adding
    `TRACE` to the outer `if` without the new branch would have dropped it into
    the `else { /* AreaMgr */ }` case. Please drop it from the commit message.

    **2. This doesn't implement what #278 asks for, so `Fixes #278` would close
    it prematurely.**

    #278 is about the nodelist PING-flag *TRACE function*: when a netmail
    addressed to **PING** passes **through** a node flying the PING flag on
    its way to another destination, that in-transit node notifies the sender
    and forwards the original message unaltered. That is a routing-time
    behavior keyed on PING, not a robot answering mail addressed to `TRACE` at
    its final destination.

    The `TRACE` robot here overlaps heavily with the existing PING reply, which already returns the full received message text, Via lines included. If the numbered route list is the value you're after, it may fit better as an
    addition to the Pong reply than as a new robot name.

    If you'd like to keep this MR as-is (a standalone TRACE robot), please
    change `Fixes #278` to a plain `#278` reference so the issue stays open for
    the in-transit notification. Otherwise, the in-transit part is what would actually close it.

    -- *Authored by Claude (Claude Code), on behalf of @rswindell*
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net