mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-11-06 05:17:15 +00:00
test_a_killed_owner_takes_the_fetch_helpers_with_it polled the helper with _alive(): signal 0, then /proc/<pid>/stat exists(), then read_text(). Once the owner is killed the helper is an orphan and its reaper can collect it between any two of those steps, so the read raised FileNotFoundError (seen on CI) instead of reporting the exit the test was waiting for. Read once and treat FileNotFoundError / ProcessLookupError as gone. Same check-then-read in iron_proxy._pid_alive: when the proxy exits between the existence probe and the /proc/<pid>/cmdline read, the read was skipped, `ps -p` then failed, and the function fell through to "believe the OS: alive", so a dead proxy blocked start_proxy and showed as running. On Linux a missing /proc entry now means gone. New test is red on base.