- Poll loop body is now wrapped in outer try/except so UndefinedTable (or any transient DB error) logs a warning and retries after poll_interval instead of killing the worker process. - docker-compose: worker gets `restart: unless-stopped` so Docker recovers it automatically on any unexpected exit. - docker-compose: worker `depends_on` now includes `backend: condition: service_healthy` so it waits for the backend (which runs migrations) to be ready before polling. Fixes DAP-40. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>