Commit
cf9bf06e62975a44420683b8d68b1a1c38d24ebb
by wuyanjun110fix: 恢复union region异步计算, latch结果消费即释放治理内存驻留
- CreateUnionRegion恢复std::async异步, polygons改move捕获少一份拷贝 - latch结果消费一次即move取走并shrink_to_fit释放, 不再常驻AsyncUnionRegionState - 重建路径不再预清union_region_/重建async_state, 异步未就绪时沿用上一帧轮廓
|
 | data/map/envelop/map_envelops.cpp |
Commit
49da4fba25e8910c876f430f1f1b28a8e67e0f63
by wuyanjun110perf: 回放同帧降频节流, 暂停/停在末帧时避免循环满频重复计算, 改参数仍0.5s内重算生效
|
 | replayer/logic.cpp |
Commit
72009854a7c4ddb6758552e58d1be9e0ca3e37d2
by wuyanjun110fix: 远程单次直线步进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 跳过判断同步替换恢复原语义.
|
 | plan/prepare/prepare_status.cpp |
 | plan/prepare/prepare_status.hpp |
 | data/app/fsm/motion_fsm/motion_remote_fsm/motion_remote_state.hpp |
Commit
a5afde418b758301551f63748ff5a58175d144cb
by wuyanjun110fix: 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
|
 | data/app/fsm/task_fsm/task_park_fsm/park_fsm_transition/bulk_transition.cpp |
 | data/app/fsm/task_fsm/task_fsm.cpp |
 | data/app/fsm/task_command_type.cpp |