This commit is contained in:
firestar5683
2026-04-16 13:49:18 -05:00
parent 828460f729
commit d0630df075
2 changed files with 25 additions and 19 deletions
@@ -87,15 +87,6 @@ def test_starpilot_planner_updates_cem_with_current_frame_state(monkeypatch):
planner.starpilot_following.following_lead = False
planner.starpilot_following.slower_lead = False
sm = {
"radarState": SimpleNamespace(leadOne=SimpleNamespace(status=True, dRel=25.0, vLead=0.5)),
"selfdriveState": SimpleNamespace(enabled=True),
"carState": SimpleNamespace(vCruise=50.0, vEgo=20.0, standstill=False, leftBlinker=False, rightBlinker=False),
"controlsState": SimpleNamespace(curvature=0.02),
"modelV2": SimpleNamespace(position=SimpleNamespace(x=[0.0, 30.0]), laneLines=[None] * 4, roadEdges=[None] * 2),
"starpilotCarState": SimpleNamespace(pauseLateral=False),
planner.gps_location_service: SimpleNamespace(latitude=1.0, longitude=1.0, bearingDeg=90.0),
}
starpilot_toggles = SimpleNamespace(
set_speed_offset=0,
conditional_experimental_mode=True,
@@ -106,15 +97,28 @@ def test_starpilot_planner_updates_cem_with_current_frame_state(monkeypatch):
weather_presets=False,
)
planner.update(0.0, False, sm, starpilot_toggles)
for controls_enabled, aol_enabled in ((True, False), (False, True)):
seen.clear()
assert seen == {
"tracking_lead": True,
"following_lead": True,
"slower_lead": True,
"model_length": 30.0,
"driving_in_curve": True,
"road_curvature_detected": True,
}
sm = {
"radarState": SimpleNamespace(leadOne=SimpleNamespace(status=True, dRel=25.0, vLead=0.5)),
"selfdriveState": SimpleNamespace(enabled=controls_enabled),
"carState": SimpleNamespace(vCruise=50.0, vEgo=20.0, standstill=False, leftBlinker=False, rightBlinker=False),
"controlsState": SimpleNamespace(curvature=0.02),
"modelV2": SimpleNamespace(position=SimpleNamespace(x=[0.0, 30.0]), laneLines=[None] * 4, roadEdges=[None] * 2),
"starpilotCarState": SimpleNamespace(pauseLateral=False, alwaysOnLateralEnabled=aol_enabled),
planner.gps_location_service: SimpleNamespace(latitude=1.0, longitude=1.0, bearingDeg=90.0),
}
planner.update(0.0, False, sm, starpilot_toggles)
assert seen == {
"tracking_lead": True,
"following_lead": True,
"slower_lead": True,
"model_length": 30.0,
"driving_in_curve": True,
"road_curvature_detected": True,
}
finally:
planner.shutdown()
+3 -1
View File
@@ -124,7 +124,9 @@ class StarPilotPlanner:
self.starpilot_following.update(controls_enabled, v_ego, sm, starpilot_toggles)
if controls_enabled and starpilot_toggles.conditional_experimental_mode:
cem_tracking_active = controls_enabled or sm["starpilotCarState"].alwaysOnLateralEnabled
if cem_tracking_active and starpilot_toggles.conditional_experimental_mode:
# Keep CEM's filters warm in AOL so engagement can inherit the current scene.
self.starpilot_cem.update(v_ego, sm, starpilot_toggles)
else:
self.starpilot_cem.curve_detected = False