Changes

Summary

  1. fix:内存问题修复测试 (details)
  2. fix:内存问题修复测试 (details)
  3. perf: OGM精细碰撞采样点分级去重, 控制序列化体积 (details)
  4. fix: Guardian锁站区域退出改为锚定车尾(带挂取挂车尾), 途径点单点前后扩展近似锁站区间, 防止车尾未过锁站障碍物提前退出 (details)
  5. fix: Align FSM超距退出3/4阶段时更新need_spreader_align_计数, 防止重回3阶段 (details)
  6. perf: OGM精细碰撞采样点分级去重, 控制序列化体积 (details)
  7. fix: Guardian锁站区域退出改为锚定车尾(带挂取挂车尾), 途径点单点前后扩展近似锁站区间, 防止车尾未过锁站障碍物提前退出 (details)
  8. fix: 恢复union region异步计算, latch结果消费即释放治理内存驻留 (details)
  9. perf: 回放同帧降频节流, 暂停/停在末帧时避免循环满频重复计算, 改参数仍0.5s内重算生效 (details)
  10. fix: 远程单次直线步进END后不退出循环重回MOVE (details)
  11. feat: 走廊边界按gap端点来源差异化内缩(corridor_buffer_*), 钳制保DP路径可行 (details)
  12. fix: park子状态机收普通任务卡死PARK_MOVE无法退出 (details)
Commit f2465adad2f30214486ed6c3cc446b6e77660e9f by haoxiangtao
fix:内存问题修复测试
The file was modifieddata/map/envelop/map_envelops.cpp
Commit 8d8fc8fe71f58f96d192b653849d57121839fec6 by haoxiangtao
fix:内存问题修复测试
The file was modifieddata/map/envelop/map_envelops.cpp
Commit 4f361ae47bc58a4dca72f5bed937aac4e62e5974 by wuyanjun110
perf: OGM精细碰撞采样点分级去重, 控制序列化体积

精细碰撞开启时采样点不再全量保留:
- 引导线路径带(半径12m, 1m粗块掩码)内按1/4 cell子格去重,
  位置误差上界约3.5cm, 每cell至多16点
- 路径带外及无引导线时退化为每cell仅保留首点(等同旧抽稀密度)
- 栅格写入逻辑不变, 仅瘦身采样点集; 精细开关关闭时行为不变
- 顺手收拢龙须/上下层四处重复写入分支为AddPoint
The file was modifiedplan/prepare/prepare_ogm.hpp
The file was modifiedplan/prepare/prepare_ogm.cpp
Commit 41119aa52d08f3d36a58e0f0bd5bd9e77c269c67 by wuyanjun110
fix: Guardian锁站区域退出改为锚定车尾(带挂取挂车尾), 途径点单点前后扩展近似锁站区间, 防止车尾未过锁站障碍物提前退出
The file was modifieddata/vehicle/lock_station_data.cpp
Commit 211ee4a470c1d5d83dafe07ea65bb65fef432a7d by wuyanjun110
fix: Align FSM超距退出3/4阶段时更新need_spreader_align_计数, 防止重回3阶段
The file was modifieddata/app/fsm/task_fsm/task_align_fsm/task_align_fsm.cpp
Commit 037d24ad730656b6b84ce85ecd9ff179d1e6286f by wuyanjun110
perf: OGM精细碰撞采样点分级去重, 控制序列化体积

精细碰撞开启时采样点不再全量保留:
- 引导线路径带(半径12m, 1m粗块掩码)内按1/4 cell子格去重,
  位置误差上界约3.5cm, 每cell至多16点
- 路径带外及无引导线时退化为每cell仅保留首点(等同旧抽稀密度)
- 栅格写入逻辑不变, 仅瘦身采样点集; 精细开关关闭时行为不变
- 顺手收拢龙须/上下层四处重复写入分支为AddPoint
The file was modifiedplan/prepare/prepare_ogm.cpp
The file was modifiedplan/prepare/prepare_ogm.hpp
Commit 50a557ba5ed0e80690bfb2284a4aed695e47745e by wuyanjun110
fix: Guardian锁站区域退出改为锚定车尾(带挂取挂车尾), 途径点单点前后扩展近似锁站区间, 防止车尾未过锁站障碍物提前退出
The file was modifieddata/vehicle/lock_station_data.cpp
Commit c3d8a6c116c0a9e8f4ff69bf5904033acab647a1 by wuyanjun110
fix: 恢复union region异步计算, latch结果消费即释放治理内存驻留

- CreateUnionRegion恢复std::async异步, polygons改move捕获少一份拷贝
- latch结果消费一次即move取走并shrink_to_fit释放, 不再常驻AsyncUnionRegionState
- 重建路径不再预清union_region_/重建async_state, 异步未就绪时沿用上一帧轮廓
The file was modifieddata/map/envelop/map_envelops.cpp
Commit d749b4221ec4750bc1d19a2308f5c31730545b71 by wuyanjun110
perf: 回放同帧降频节流, 暂停/停在末帧时避免循环满频重复计算, 改参数仍0.5s内重算生效
The file was modifiedreplayer/logic.cpp
Commit 46f793d6f300e33aa0d19b0a6c518d26f886bfd1 by wuyanjun110
fix: 远程单次直线步进END后不退出循环重回MOVE

UpdateFSMState 每周期被调两次(pilot_update 一次, 失败 stage 经
ResetSuccessorTasks 仍强制执行的 MOTION_FSM_TASK 一次), fsm_interface
的 last_motion_sub_state_type 被第二次快照拍平, REMOTE_MOVE->REMOTE_END
边沿被吞, is_need_increase_remote_idx_ 永不置位, cur_remote_idx_ 不推进,
finishReqRemoteCtrl 不触发, REMOTE_END 停 remote_align_stop_sec 后经
RemoteInit 无条件重回 REMOTE_MOVE 直至超时.

prepare 改为自持上周期 remote 子状态判 END 进入沿, 不再依赖
fsm_interface 的 last_*; REMOTE_STOP 跳过判断同步替换恢复原语义.
The file was modifiedplan/prepare/prepare_status.cpp
The file was modifieddata/app/fsm/motion_fsm/motion_remote_fsm/motion_remote_state.hpp
The file was modifiedplan/prepare/prepare_status.hpp
Commit 74b035a35b095b2e5650e2eb298b03fd8d46b143 by wuyanjun110
feat: 走廊边界按gap端点来源差异化内缩(corridor_buffer_*), 钳制保DP路径可行

- GenerateBoundary: 选中gap端点按来源查buffer内缩(道路/沟点小, 点云/实体/预测框大),
  钳制到容得下DP路径(车中心±半宽+0.3 slack, 覆盖WBCA Dilated每侧0.2m侵蚀), 只缩不反转;
  贴障/起步时要求的预留自适应压到实际余量, 不做近自车渐变(避免越接近障碍预留越衰减);
  DP无路径降级帧不内缩, 保持原始边界
- 新增raw_path_bound(未内缩原始端点): path_bounds/trailer_path_bounds_decider的
  区域相等性判定(bound==shift宽)改读raw, 防内缩翻转is_in_obstacle_region分支
- cfg_lat_plan新增6个corridor_buffer_*参数(rosparam, 序列化v5), 类内初始化0兜底
  老dump反序列化(v<5跳过字段落0=不内缩=复现老行为)
- BuildGaps拆出BuildGapAt(单gap构建), 免每断面整表分类; 挂车半宽提TrailerAwareHalfWidths
  与GetSpeedLimitsAndDistances共用
The file was modifiedreplayer/replayer_data_process/replayer_data_process.cpp
The file was modifieddata/boundary/driving_corridor.cpp
The file was modifiedtasks/deciders/lat_decider/trailer_side_pass_decider.cpp
The file was modifiedtasks/deciders/lat_decider/side_pass_decider.cpp
The file was modifiedtasks/deciders/lat_decider/trailer_path_bounds_decider.cpp
The file was modifieddata/boundary/driving_corridor.hpp
The file was modifieddata/config/cfg_lat_plan.cpp
The file was modifiedtasks/deciders/lat_decider/path_bounds_decider.cpp
The file was modifieddata/config/cfg_lat_plan.hpp
Commit 8f7e94a46edce22ff96ee1be076fdc8031d6b153 by wuyanjun110
fix: park子状态机收普通任务卡死PARK_MOVE无法退出

bulk分支(FSM_TYPE_B)在PARK_LOCK收到无散货途径点的普通任务时,
Lock2Init/Init2Move仅凭routing标志放行进入PARK_MOVE, 而该态下
Move2Adjust(需bulk_in点)与Park_Bulk2Travel(需bulk_out点)恒假,
只能靠再次取消任务解锁(实车卡死近4小时):
- Lock2Init/Init2Move补散货途径点检查, 普通任务不再进入死区
- Park_Bulk2Travel新增逃生: 新任务无任何散货途径点且地图可用时退回TRAVEL

同修停车场分支(FSM_TYPE_A)同类隐患: Park_Park2Travel对PARK_MOVE
放行新routing逃生, 但带双卡死判据(switch恒KEEP+停留超20s),
正常进位途中刷新停车任务不受影响

另补EnumType2String缺失的E_TASK_FSM/E_MOTION_FSM映射,
日志不再把正常事件误打成E_NO_STATE
The file was modifieddata/app/fsm/task_command_type.cpp
The file was modifieddata/app/fsm/task_fsm/task_park_fsm/park_fsm_transition/bulk_transition.cpp
The file was modifieddata/app/fsm/task_fsm/task_fsm.cpp