What: After docker_client.start() returns, lifecycle.py writes "running" to the DB. But Docker start returns once the container process is launched, not when the JVM is up.
Why: Operators see a green "running" pill instantly even though the server can't accept connections for many seconds. Confusing during start-stop cycles.
Approach: After start(), re-read the container's actual Docker state (and ideally probe RCON or the listener port) before writing to the DB. The lifecycle poller would correct it within a tick anyway, but the user-facing transition should be honest.
What: After
docker_client.start()returns,lifecycle.pywrites"running"to the DB. But Dockerstartreturns once the container process is launched, not when the JVM is up.Why: Operators see a green "running" pill instantly even though the server can't accept connections for many seconds. Confusing during start-stop cycles.
Approach: After
start(), re-read the container's actual Docker state (and ideally probe RCON or the listener port) before writing to the DB. The lifecycle poller would correct it within a tick anyway, but the user-facing transition should be honest.