A closed herdr session is not an exited agent, and the `herdr already dead` path ran no check at all, so stop could remove the files of a live claude and then its row. New `python -m lib_py.agents in-use <agent> <uuid> [ws] [--wait s]` gives the purge CLI's own verdict; stop asks it outside the registry lock and, unless it answers free, exits 4 with nothing changed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>