Merge system-optimization IR contracts and retire legacy engine adapter

This commit is contained in:
ljz committed 2026-09-10 01:21:53 +08:00
commit 743663e3a6
14 files changed
+3817 -161

No files matched your search

+11 -5
View File
@@ -423,6 +423,8 @@ class GenericSystemXmlSimulationTests(unittest.TestCase):
self.assertEqual(snapshot["result"]["status"], "stopped")
def test_streaming_endpoint_keeps_quiet_solver_connection_alive(self) -> None:
heartbeat_observed = threading.Event()
def delayed_simulation(
_xml_bytes,
progress_callback,
@@ -433,8 +435,10 @@ class GenericSystemXmlSimulationTests(unittest.TestCase):
self.assertIsNotNone(activity_tracker)
activity_tracker.start_integration(0.0)
for trial_time in (0.0487, 0.0488, 0.0489, 0.0490):
heartbeat_observed.clear()
activity_tracker.record_rhs(trial_time)
time.sleep(0.008)
# Wait for the consumer, independent of machine scheduling.
self.assertTrue(heartbeat_observed.wait(timeout=2.0))
return {
"success": True,
"status": "completed",
@@ -449,10 +453,12 @@ class GenericSystemXmlSimulationTests(unittest.TestCase):
side_effect=delayed_simulation,
),
):
events = [
json.loads(line)
for line in simulation_event_stream(b"<System />")
]
events = []
for line in simulation_event_stream(b"<System />"):
event = json.loads(line)
events.append(event)
if event.get("heartbeat"):
heartbeat_observed.set()
heartbeats = [event for event in events if event.get("heartbeat") is True]
self.assertGreaterEqual(len(heartbeats), 1)