Troubleshooting
Self-diagnosis
Section titled “Self-diagnosis”docker info | grep -i 'server version\|host' # daemon reachable, host-net modedocker compose version --short # Compose v2 installedadb version && adb devices # ADB on PATH + emulator onlinewhich adb # actual binary usedTypical failures:
- Docker daemon unreachable — Docker Desktop closed or WSL2 backend asleep (Windows).
- Host networking off — enable Settings → Resources → Network in Docker Desktop (macOS / Windows).
adbnot onPATH— install Platform Tools and add toPATH.- No online device — enable BlueStacks ADB, then
adb kill-server&&adb start-server.
Inspecting a running stack
Section titled “Inspecting a running stack”docker compose -f docker-compose.prod.yml ps # service status + healthchecksdocker compose -f docker-compose.prod.yml logs -f bot # worker logsdocker compose -f docker-compose.prod.yml exec bot adb devices # ADB visibility from inside the bot containerCommon symptoms
Section titled “Common symptoms”| Symptom | Likely cause | Where to look |
|---|---|---|
| Bot UI loads, no work runs | All instances paused=1 / auto_paused=1 in Redis | docker compose … logs bot — the game_health_watchdog line shows why. Usually no ADB device online. |
tap_* scenarios stall on “waiting for approval” | click_approval mode left on with the approvals page closed | Open Click approvals in the Web UI (/approvals), or unset wos:ui:click_approval:enabled:<inst> in Redis. |
| Bot can’t see the emulator inside the container | network_mode: host not active | Docker Desktop → enable Host networking (see Images & networking). |
| OCR returns garbage / empty text | Wrong emulator resolution or DPI | Verify Emulator setup — must be 720 × 1280 @ 320 DPI, English. |
Startup blocked with validation acknowledged via WOS_VALIDATION_ACK prompt | Mismatch between area.json / analyze/*.yaml / scenarios/*.yaml | The error message names the file + key. Set WOS_VALIDATION_ACK=1 only as a temporary unblock — fix the YAML and remove the env var afterwards. |