            if once:
                # --once drains: wait for pulled work to finish before exit
                # so smoke tests observe real terminal states.
                deadline = time.monotonic() + 600
                while (executor.running_ids() or executor.held_ids()) and time.monotonic() < deadline:
                    executor.retry_reports(limit=1)
                    time.sleep(1.0)
                from inmotion_cloud.agent.minecraft_player_dispatch import dispatcher

                if not dispatcher.drain(max(0.0, deadline - time.monotonic())):
                    log.warning("minecraft_player_reports_pending")
                result_outbox.flush(limit=1)
                if result_outbox.pending_ids():
                    log.warning("terminal_reports_pending", count=len(result_outbox.pending_ids()))
                return
