simulation: revert latch-only refresh (e682d16, 36eac713)

No reachable path leaves a stale latch (Grok review): initialize and
_recompile recompute it, and post-init removal of a translating circle
cannot commit. simulation.py is back to b448bc3f; the latch-only test is
dropped. The recompile, close-retry and tightened after-close tests stay.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
ClaudeandClaude Opus 5.5 committed 2026-10-30 06:57:02 +00:00
1 parent 71c12aedce
commit e1ed27b438
2 files changed
+4 -23

No files matched your search

-10
View File
@@ -258,16 +258,6 @@ def test_recompile_installs_a_guarded_stepper(monkeypatch):
assert sim.stepper.step_count == 7
def test_stepper_latch_follows_moving_bodies(monkeypatch):
sim = routed_simulation(monkeypatch)
still = sim.add_body("circle", (100., 40.), 5.)
assert sim.stepper.blocked is None
moving = sim.add_body("circle", (50., 40.), 10., translation=Translation((0., 0., -1., 1.), .1))
assert sim.stepper.blocked is not None
sim.remove_body(moving) # removing the last translating circle clears the latch
assert sim.stepper.blocked is None and sim.bodies.get(still).motion is None
def validate(monkeypatch, objects, flags=None, **cfg):
sim = routed_simulation(monkeypatch)
for obj in objects: