mirror of
https://github.com/jcreek/CosmicClash.git
synced 2026-09-10 16:04:04 +00:00
46fe696a58
run_ci_host_check asserted input reached the server by comparing each bot ship's position against one recorded before the check forced a goal. But a goal's kickoff teleports every ship back to spawn (_begin_kickoff -> reset_ships), so that comparison measured only the distance covered since the last reset — a window whose length depends on when the sample lands relative to the kickoff rather than on whether input was flowing at all. It failed on master with peers at 0.51m and 0.23m against a 0.5m threshold: one passed by a centimetre, the other failed, with both connected, neither stalled, and every other assertion in the run green. The commit it failed on touches only training JSON, and the push two minutes earlier passed on identical game code. Accumulate per-tick path length in _await_recording_score instead, discarding any single-frame step over 2.0m as a teleport — Ship.max_speed (35 m/s) is hard-clamped each tick in _integrate_forces, so 60Hz caps legitimate travel at ~0.58m. Same 0.5m threshold now reads 28-75m across runs, and it is strictly stronger than before: it asserts input kept arriving for the whole wait rather than that the ship merely ended up somewhere else.