mirror of
https://github.com/jmcorgan/fips.git
synced 2026-08-12 01:27:32 +00:00
Wire exit detection for the four directly-observable optional children so the supervisor FSM's ChildExited edge fires at runtime. A runtime child-liveness mpsc channel carries a Child on exit: the DNS task and the two TUN threads self-report when their body returns, and a 2s poll monitor reports mDNS and Nostr via new is_finished accessors. The rx_loop gains a select arm that steps the FSM and republishes health (Degraded, since a running node always has at least one transport up). Transports and worker pools expose no runtime-exit signal and are left for a follow-up. Adds LanRendezvous::is_finished and NostrRendezvous::is_finished; the latter treats a shutdown-taken connect_task as finished so the monitor terminates after a stop instead of polling forever.