From 8c7d9bbeea8d62c7a913411938f4006dfed9b557 Mon Sep 17 00:00:00 2001 From: Shane Smiskol Date: Thu, 16 May 2024 14:59:44 -0700 Subject: [PATCH] need to migrate initialized --- selfdrive/test/process_replay/migration.py | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/selfdrive/test/process_replay/migration.py b/selfdrive/test/process_replay/migration.py index 152f281948..b22a63a1ca 100644 --- a/selfdrive/test/process_replay/migration.py +++ b/selfdrive/test/process_replay/migration.py @@ -1,12 +1,14 @@ from collections import defaultdict -from cereal import messaging +from cereal import car, messaging from openpilot.selfdrive.car.fingerprints import MIGRATION from openpilot.selfdrive.test.process_replay.vision_meta import meta_from_encode_index from openpilot.selfdrive.car.toyota.values import EPS_SCALE from openpilot.selfdrive.manager.process_config import managed_processes from panda import Panda +EventName = car.CarEvent.EventName + # TODO: message migration should happen in-place def migrate_all(lr, old_logtime=False, manager_states=False, panda_states=False, camera_states=False): @@ -14,6 +16,7 @@ def migrate_all(lr, old_logtime=False, manager_states=False, panda_states=False, msgs = migrate_carParams(msgs, old_logtime) msgs = migrate_gpsLocation(msgs) msgs = migrate_deviceState(msgs) + msgs = migrate_controlsState(msgs) if manager_states: msgs = migrate_managerState(msgs) if panda_states: @@ -69,6 +72,21 @@ def migrate_deviceState(lr): return all_msgs +def migrate_controlsState(lr): + all_msgs = [] + events = None + for msg in lr: + if msg.which() == 'onroadEvents': + events = msg.onroadEvents + elif msg.which() == 'controlsState': + cs = msg.as_builder() + cs.controlsState.initialized = events is not None and not any(EventName.controlsInitializing == e.name for e in events) + all_msgs.append(cs.as_reader()) + else: + all_msgs.append(msg) + return all_msgs + + def migrate_pandaStates(lr): all_msgs = [] # TODO: safety param migration should be handled automatically