mirror of
https://github.com/morluto/rea
synced 2026-10-27 14:42:18 -04:00
af42f856ec
* fix(hopper): shut down the Linux demo helper orderly so its X lock is removed Teardown SIGKILLed the helper's process group, so run_launch's finally never ran stop_process on Xvfb and each session orphaned its /tmp/.X<n>-lock. Later startups count orphans as address_collision. Ask the helper to stop first: closing its stdin trips OwnerLifetime, and its finally stops Hopper and Xvfb with SIGTERM, which removes the lock. Anything still alive after the grace period is reaped by the token-verified group cleanup. Fixes #4921 Co-authored-by: Saim Shafique <128062316+sx4im@users.noreply.github.com> * fix(hopper): notice signal-exited demo helpers during orderly shutdown A helper that already died from a signal keeps exitCode null, so the orderly-shutdown path treated it as still running and sat out the full grace period before the group cleanup. Check signalCode alongside exitCode in both the cleanup guard and the exit wait, and add a regression test for an already signal-exited helper. Also hardens the ignored-shutdown test: it now proves the fixture started (waits for its lock), asserts the helper was reaped by the group SIGKILL, and bounds the wait by the configured 500 ms grace instead of a vacuous 30 s ceiling.