macOS sleep suspends the Docker VM, causing long setTimeout calls to never fire. Replace the one-shot wait with a polling loop that checks getClock every 30s (capped to time-until-open), so the bot resumes promptly after the host wakes. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>