82c4f70156
Backend's runtime spawns the engine container outside the compose project, so `docker compose down` left a `galaxy-game-…` container running. Add a `stop-engines` target that finds them by their OCI image-title label (set in game/Dockerfile) and remove forcibly; make `down` and `clean` depend on it. `clean` additionally wipes the per-game state directory under /tmp/galaxy-game-state. Add a troubleshooting note for the related symptom: when the browser holds a keypair from a previous DB and `make clean` recreates everything, the lobby renders "no games yet" until the user clears site data or opens an incognito window. The dev user keeps the same email but receives a fresh user_id, which the old keypair cannot authenticate against. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>