- Anchor file becomes temp/.active_project.<host pid>: dies with the GA process,
so closing GA auto-deactivates; re-activation requires user confirmation per SOP
- Multiple GA instances each keep their own active project, no cross-talk
- Startup sweep removes only legacy unsuffixed anchors and own-pid leftovers
(pid reuse); anchors of other pids are never touched — deliberately no
liveness probe, because os.kill(pid, 0) on Windows terminates the process