Shutdown now: stops background fight loop, waits up to 15s for active fights to drain (polling every 500ms), clears human + poll pending challenges, clears bet escrow. Added clearEscrow() to betting.ts and 5 tests verifying cleanup functions and correct shutdown order. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>