Changes

Summary

  1. fix: 定位航向入口归一化、VehicleInfo.timestamp_ns 透传并补充定位诊断日志 (details)
Commit 9b73c19b34a810df398ab56c9a20b83d8af394d3 by taoge
fix: 定位航向入口归一化、VehicleInfo.timestamp_ns 透传并补充定位诊断日志

问题:编队两车在同一弯道先后出现 HMI 自车与他车消失、后车 PNC 丢失前车,出弯恢复。
排查确认 /vehicle/localization.rotation_angle.z 在该路段未通过 ±180 门禁
(可能越界或 NaN),导致自车定位 valid=false、相对位置清空、PBSMex 航向字段缺失,
后车 VehicleInfo 无 VALID_ORIENTATION。

- Router 入口对 heading 做 std::remainder(yaw, 360) 归一化,不再依赖上游角度表示;
  Validator/LocalSnapshot 航向范围放宽到 ±360 作为对端旧版本兼容下限
- 自车位姿有效性判定统一为 selfPoseIssue(),SelfLocalization 新增 invalid_reason
  并随 HMI localization 下发
- VehicleInfo.timestamp_ns 透传前车 /vehicle/localization.header.stamp:
  发送端写入 pose.stamp.sample_time_unix_ns(不再被 roll/pitch 合并逻辑清除),
  接收端直接转发、缺失为 0,删除 motion/底盘/发送时间回退链
- 新增仅在状态变化时打印的诊断日志:航向异常/恢复(含 NaN)、自车位姿不可用原因、
  远端车辆跳过原因(含位置在但航向缺失)、VehicleInfo valid_fields 变化、
  HMI 下发定位有效性变化
The file was modifiedsrc/ros/RosTraffic.cpp
The file was modifieddocs/data_mapping.md
The file was modifiedsrc/hmi/HmiStatePublisher.cpp
The file was modifiedinclude/ros/RosTraffic.hpp
The file was modifiedinclude/router/RouterTypes.hpp
The file was modifiedsrc/hmi/HmiStatePublisher.hpp
The file was modifiedprotocol/platoon/v1/private_extensions.proto
The file was modifiedsrc/router/Router.cpp
The file was modifiedcommon/protobuf/src/Validator.cpp
The file was modifiedsrc/router/LocalSnapshot.cpp
The file was modifiedinclude/router/Router.hpp