{ "suite": "t2g-seat-frontend-comprehensive-hil", "started_at": "2026-08-07T18:17:38.577477Z", "base_url": "http://127.0.0.1:8003", "vehicle_id": "denza_n7", "conversation_id": "conv-hil-full-20260807181738", "runtime": { "hardware_execution_allowed": true, "firmware_profiles": [ "combined" ] }, "results": [ { "id": "MODE-ROCKING-HORSE-START", "group": "mode", "utterance": "开启木马模式", "started_at": "2026-08-07T18:18:01.681906Z", "status": "passed", "errors": [], "http_status": 201, "request_id": "req-20260807181801-e5096b", "provider_used": "local_rules", "matched_modes": [ "rocking_horse" ], "state_http_status": 200, "physical_state": { "position": { "backrest_recline": { "position_pct": 2, "position_valid": true, "motion_state": "moving", "fault": false, "task_state": 2, "motor_result": 1, "motor_selector": 2, "value_x100": 153, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "02 12 0D 35 00 99 00 5A", "timestamp": 106973.993523, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "legrest_height": { "position_pct": 2, "position_valid": true, "motion_state": "moving", "fault": false, "task_state": 2, "motor_result": 1, "motor_selector": 3, "value_x100": 216, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "03 12 0D 35 00 D8 00 5A", "timestamp": 106974.0196, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "longitudinal": { "position_pct": 2, "position_valid": true, "motion_state": "moving", "fault": false, "task_state": 2, "motor_result": 1, "motor_selector": 0, "value_x100": 240, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "00 12 0D 35 00 F0 00 5A", "timestamp": 106974.045704, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "cushion_tilt": { "position_pct": 6, "position_valid": true, "motion_state": "moving", "fault": false, "task_state": 2, "motor_result": 1, "motor_selector": 1, "value_x100": 588, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "01 12 0D 35 00 4C 02 5A", "timestamp": 106974.072431, "channel": 0, "is_fd": false, "bitrate_switch": false } } }, "ventilation": { "state": "off", "level": 0, "feedback_value": 1, "feedback_frame": { "frame_id": "0x4FA", "payload_size": 8, "data_hex": "09 00 00 00 00 00 00 00", "timestamp": 106974.092381, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "heating": { "state": "off", "level": 0, "feedback_value": 1, "feedback_frame": { "frame_id": "0x4FA", "payload_size": 8, "data_hex": "09 00 00 00 00 00 00 00", "timestamp": 106974.092381, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "captured_at": "2026-08-07T18:18:02.485490Z", "source": "physical_can", "target": { "device": "seat", "zone": "front_right", "instance": "passenger" }, "complete": true, "missing": [] }, "finished_at": "2026-08-07T18:18:02.550409Z", "duration_ms": 869 }, { "id": "MODE-ROCKING-HORSE-STOP", "group": "mode", "utterance": "关闭木马模式", "started_at": "2026-08-07T18:18:02.552655Z", "status": "passed", "errors": [], "http_status": 201, "request_id": "req-20260807181802-7609ee", "provider_used": "local_rules", "matched_modes": [ "rocking_horse" ], "state_http_status": 200, "physical_state": { "position": { "backrest_recline": { "position_pct": 3, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 0, "motor_result": 3, "motor_selector": 2, "value_x100": 338, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "02 30 08 35 00 52 01 00", "timestamp": 106974.915491, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "legrest_height": { "position_pct": 5, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 0, "motor_result": 3, "motor_selector": 3, "value_x100": 541, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "03 30 08 35 00 1D 02 00", "timestamp": 106974.942088, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "longitudinal": { "position_pct": 5, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 0, "motor_result": 3, "motor_selector": 0, "value_x100": 541, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "00 30 08 35 00 1D 02 00", "timestamp": 106974.968094, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "cushion_tilt": { "position_pct": 11, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 0, "motor_result": 3, "motor_selector": 1, "value_x100": 1123, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "01 30 08 35 00 63 04 00", "timestamp": 106974.993545, "channel": 0, "is_fd": false, "bitrate_switch": false } } }, "ventilation": { "state": "off", "level": 0, "feedback_value": 1, "feedback_frame": { "frame_id": "0x4FA", "payload_size": 8, "data_hex": "09 00 00 00 00 00 00 00", "timestamp": 106975.005142, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "heating": { "state": "off", "level": 0, "feedback_value": 1, "feedback_frame": { "frame_id": "0x4FA", "payload_size": 8, "data_hex": "09 00 00 00 00 00 00 00", "timestamp": 106975.005142, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "captured_at": "2026-08-07T18:18:03.397863Z", "source": "physical_can", "target": { "device": "seat", "zone": "front_right", "instance": "passenger" }, "complete": true, "missing": [] }, "finished_at": "2026-08-07T18:18:03.474083Z", "duration_ms": 921 }, { "id": "MODE-DYNAMIC-CRADLE-START", "group": "mode", "utterance": "开启动态摇篮模式", "started_at": "2026-08-07T18:18:03.517741Z", "status": "passed", "errors": [], "http_status": 201, "request_id": "req-20260807181803-e97616", "provider_used": "local_rules", "matched_modes": [ "dynamic_cradle" ], "state_http_status": 200, "physical_state": { "position": { "legrest_height": { "position_pct": 8, "position_valid": true, "motion_state": "moving", "fault": false, "task_state": 2, "motor_result": 1, "motor_selector": 3, "value_x100": 804, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "03 12 0D 38 00 24 03 5A", "timestamp": 106975.856713, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "longitudinal": { "position_pct": 8, "position_valid": true, "motion_state": "moving", "fault": false, "task_state": 2, "motor_result": 1, "motor_selector": 0, "value_x100": 802, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "00 12 0D 38 00 22 03 5A", "timestamp": 106975.881732, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "cushion_tilt": { "position_pct": 17, "position_valid": true, "motion_state": "moving", "fault": false, "task_state": 2, "motor_result": 1, "motor_selector": 1, "value_x100": 1684, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "01 12 0D 38 00 94 06 5A", "timestamp": 106975.907916, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "backrest_recline": { "position_pct": 6, "position_valid": true, "motion_state": "moving", "fault": false, "task_state": 2, "motor_result": 1, "motor_selector": 2, "value_x100": 556, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "02 12 0D 38 00 2C 02 5A", "timestamp": 106975.934169, "channel": 0, "is_fd": false, "bitrate_switch": false } } }, "ventilation": { "state": "off", "level": 0, "feedback_value": 1, "feedback_frame": { "frame_id": "0x4FA", "payload_size": 8, "data_hex": "09 00 00 00 00 00 00 00", "timestamp": 106975.955173, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "heating": { "state": "off", "level": 0, "feedback_value": 1, "feedback_frame": { "frame_id": "0x4FA", "payload_size": 8, "data_hex": "09 00 00 00 00 00 00 00", "timestamp": 106975.955173, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "captured_at": "2026-08-07T18:18:04.348455Z", "source": "physical_can", "target": { "device": "seat", "zone": "front_right", "instance": "passenger" }, "complete": true, "missing": [] }, "finished_at": "2026-08-07T18:18:04.413787Z", "duration_ms": 896 }, { "id": "MODE-DYNAMIC-CRADLE-STOP", "group": "mode", "utterance": "关闭动态摇篮模式", "started_at": "2026-08-07T18:18:04.416034Z", "status": "passed", "errors": [], "http_status": 201, "request_id": "req-20260807181804-bcf153", "provider_used": "local_rules", "matched_modes": [ "dynamic_cradle" ], "state_http_status": 200, "physical_state": { "position": { "longitudinal": { "position_pct": 11, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 0, "motor_result": 3, "motor_selector": 0, "value_x100": 1122, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "00 30 08 38 00 62 04 00", "timestamp": 106976.740494, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "cushion_tilt": { "position_pct": 22, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 0, "motor_result": 3, "motor_selector": 1, "value_x100": 2246, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "01 30 08 38 00 C6 08 00", "timestamp": 106976.76544, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "backrest_recline": { "position_pct": 7, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 0, "motor_result": 3, "motor_selector": 2, "value_x100": 742, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "02 30 08 38 00 E6 02 00", "timestamp": 106976.792049, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "legrest_height": { "position_pct": 11, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 0, "motor_result": 3, "motor_selector": 3, "value_x100": 1144, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "03 30 08 38 00 78 04 00", "timestamp": 106976.817508, "channel": 0, "is_fd": false, "bitrate_switch": false } } }, "ventilation": { "state": "off", "level": 0, "feedback_value": 1, "feedback_frame": { "frame_id": "0x4FA", "payload_size": 8, "data_hex": "09 00 00 00 00 00 00 00", "timestamp": 106976.829112, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "heating": { "state": "off", "level": 0, "feedback_value": 1, "feedback_frame": { "frame_id": "0x4FA", "payload_size": 8, "data_hex": "09 00 00 00 00 00 00 00", "timestamp": 106976.829112, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "captured_at": "2026-08-07T18:18:05.221617Z", "source": "physical_can", "target": { "device": "seat", "zone": "front_right", "instance": "passenger" }, "complete": true, "missing": [] }, "finished_at": "2026-08-07T18:18:05.302650Z", "duration_ms": 887 } ], "position_memory_sync": { "id": "PREFLIGHT-POSITION-MEMORY-SYNC", "group": "preflight", "utterance": "关闭副驾座椅加热和通风,并把水平、坐盆、靠背、腿托四轴归零", "started_at": "2026-08-07T18:17:38.579391Z", "status": "passed", "errors": [], "http_status": 201, "request_id": "req-20260807181738-c1fa94", "provider_used": "local_rules", "matched_modes": [], "state_http_status": 200, "physical_state": { "position": { "backrest_recline": { "position_pct": 0, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 6, "motor_result": 2, "motor_selector": 2, "value_x100": 0, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "02 26 18 31 00 00 00 00", "timestamp": 106973.120321, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "legrest_height": { "position_pct": 0, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 6, "motor_result": 2, "motor_selector": 3, "value_x100": 0, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "03 26 18 32 00 00 00 00", "timestamp": 106973.146175, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "longitudinal": { "position_pct": 0, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 6, "motor_result": 2, "motor_selector": 0, "value_x100": 0, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "00 26 18 2F 00 00 00 00", "timestamp": 106973.171397, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "cushion_tilt": { "position_pct": 0, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 6, "motor_result": 2, "motor_selector": 1, "value_x100": 0, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "01 26 18 30 00 00 00 00", "timestamp": 106973.198366, "channel": 0, "is_fd": false, "bitrate_switch": false } } }, "ventilation": { "state": "off", "level": 0, "feedback_value": 1, "feedback_frame": { "frame_id": "0x4FA", "payload_size": 8, "data_hex": "09 00 00 00 00 00 00 00", "timestamp": 106973.204067, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "heating": { "state": "off", "level": 0, "feedback_value": 1, "feedback_frame": { "frame_id": "0x4FA", "payload_size": 8, "data_hex": "09 00 00 00 00 00 00 00", "timestamp": 106973.204067, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "captured_at": "2026-08-07T18:18:01.596265Z", "source": "physical_can", "target": { "device": "seat", "zone": "front_right", "instance": "passenger" }, "complete": true, "missing": [] }, "finished_at": "2026-08-07T18:18:01.678120Z", "duration_ms": 23099 }, "final_state": { "id": "FINAL-THERMAL-OFF", "group": "cleanup", "utterance": "关闭副驾座椅加热和通风,并把水平、坐盆、靠背、腿托四轴归零", "started_at": "2026-08-07T18:18:05.303817Z", "status": "passed", "errors": [], "http_status": 201, "request_id": "req-20260807181805-8f6d46", "provider_used": "local_rules", "matched_modes": [], "state_http_status": 200, "physical_state": { "position": { "backrest_recline": { "position_pct": 0, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 6, "motor_result": 2, "motor_selector": 2, "value_x100": 0, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "02 26 18 3C 00 00 00 00", "timestamp": 106996.774961, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "legrest_height": { "position_pct": 0, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 6, "motor_result": 2, "motor_selector": 3, "value_x100": 0, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "03 26 18 3D 00 00 00 00", "timestamp": 106996.800164, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "longitudinal": { "position_pct": 0, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 6, "motor_result": 2, "motor_selector": 0, "value_x100": 0, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "00 26 18 3A 00 00 00 00", "timestamp": 106996.826407, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "cushion_tilt": { "position_pct": 0, "position_valid": true, "motion_state": "stopped", "fault": false, "task_state": 6, "motor_result": 2, "motor_selector": 1, "value_x100": 0, "feedback_frame": { "frame_id": "0x302", "payload_size": 8, "data_hex": "01 26 18 3B 00 00 00 00", "timestamp": 106996.852753, "channel": 0, "is_fd": false, "bitrate_switch": false } } }, "ventilation": { "state": "off", "level": 0, "feedback_value": 1, "feedback_frame": { "frame_id": "0x4FA", "payload_size": 8, "data_hex": "09 00 00 00 00 00 00 00", "timestamp": 106996.861946, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "heating": { "state": "off", "level": 0, "feedback_value": 1, "feedback_frame": { "frame_id": "0x4FA", "payload_size": 8, "data_hex": "09 00 00 00 00 00 00 00", "timestamp": 106996.861946, "channel": 0, "is_fd": false, "bitrate_switch": false } }, "captured_at": "2026-08-07T18:18:25.255987Z", "source": "physical_can", "target": { "device": "seat", "zone": "front_right", "instance": "passenger" }, "complete": true, "missing": [] }, "finished_at": "2026-08-07T18:18:25.336490Z", "duration_ms": 20033 }, "finished_at": "2026-08-07T18:18:25.336534Z", "summary": { "total": 4, "passed": 4, "failed": 0, "safety_blocked": 0, "executed": 4, "position_memory_sync_passed": true, "final_state_passed": true } }