Shipped as v0.62.0 (PR #138, merged 673365f, tag v0.62.0). The world clock now runs at exactly WORLD_TIME_SCALE = 24 while any plane is flying or in repair and stays frozen when the whole fleet is grounded — regardless of legacy stored timeScale values.
Root cause of the live ×1000: production docker-compose.yml set FLIGHT_TEST_HOOKS: "1" (which also enabled the /api/test/* hooks in prod) AND a pre-v0.52.0 save held timeScale: 1000, which the hook path honored. Fix: env gate in lib/sim/engine.ts tickOnce — scale = FLIGHT_TEST_HOOKS === '1' ? sim.timeScale : WORLD_TIME_SCALE; removed FLIGHT_TEST_HOOKS from prod compose (CI's docker-compose.ci.yml sets it itself, so e2e is unaffected). No DB migration needed. Unit tests pin both rate branches; e2e pins the exact freeze and exact clock equality across container restarts. CI green (run 190), deployed to prod, verified /api/version = 0.62.0.
Shipped as v0.62.0 (PR #138, merged 673365f, tag v0.62.0). The world clock now runs at exactly WORLD_TIME_SCALE = 24 while any plane is flying or in repair and stays frozen when the whole fleet is grounded — regardless of legacy stored timeScale values.
Root cause of the live ×1000: production `docker-compose.yml` set `FLIGHT_TEST_HOOKS: "1"` (which also enabled the /api/test/* hooks in prod) AND a pre-v0.52.0 save held `timeScale: 1000`, which the hook path honored. Fix: env gate in `lib/sim/engine.ts` tickOnce — `scale = FLIGHT_TEST_HOOKS === '1' ? sim.timeScale : WORLD_TIME_SCALE`; removed FLIGHT_TEST_HOOKS from prod compose (CI's docker-compose.ci.yml sets it itself, so e2e is unaffected). No DB migration needed. Unit tests pin both rate branches; e2e pins the exact freeze and exact clock equality across container restarts. CI green (run 190), deployed to prod, verified /api/version = 0.62.0.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Shipped as v0.62.0 (PR #138, merged
673365f, tag v0.62.0). The world clock now runs at exactly WORLD_TIME_SCALE = 24 while any plane is flying or in repair and stays frozen when the whole fleet is grounded — regardless of legacy stored timeScale values.Root cause of the live ×1000: production
docker-compose.ymlsetFLIGHT_TEST_HOOKS: "1"(which also enabled the /api/test/* hooks in prod) AND a pre-v0.52.0 save heldtimeScale: 1000, which the hook path honored. Fix: env gate inlib/sim/engine.tstickOnce —scale = FLIGHT_TEST_HOOKS === '1' ? sim.timeScale : WORLD_TIME_SCALE; removed FLIGHT_TEST_HOOKS from prod compose (CI's docker-compose.ci.yml sets it itself, so e2e is unaffected). No DB migration needed. Unit tests pin both rate branches; e2e pins the exact freeze and exact clock equality across container restarts. CI green (run 190), deployed to prod, verified /api/version = 0.62.0.