Root cause of the gen-0 bootstrap stall: ~2900 leaked Godot processes accumulated
over a long run (one per env reset), until a new spawn hung and training froze.
HarnessClient.shutdown() os.killpg's the whole group, but flatpak/bwrap sandboxes
Godot in its OWN PID namespace that killpg does not reach, so each reset orphaned a
Godot. flatpak run --die-with-parent makes bwrap PR_SET_PDEATHSIG-kill the sandboxed
Godot when its parent dies, so killpg now fully reaps the tree. Essential for any
long/fleet training run.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The clan-conditioning env var was set by the env but not in player-api-server.sh's
export list or the Linux flatpak --env passthrough, so it was silently dropped on the
fleet (only the native macOS path inherits the full env). Add CP_LEARNER_CLAN to both.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>