docs: update blocked EM full-direction phase 02 handoff

This commit is contained in:
梁薄云
2026-08-06 22:04:14 +08:00
parent 51cd206a8b
commit dad4ff4b04
@@ -127,3 +127,27 @@ dotnet run --project ClumsyPilot/tests/EMPlannerVerificationHost/EMPlannerVerifi
安全影响:没有执行器、底盘、转向、制动、电机或档位写入被添加或调用;但在没有严格 candidate 的情况下,完整方向段不得发布为成功。
精确恢复范围:仅在 Phase 02 已授权 Longitudinal 文件内定义一个由完整 `PathSpeedLimit` 与非均匀 `KnotTimes` 联合求解的 deterministic feasibility projection(其输出为严格 `S/U/A/J` reference candidate),再由 schedule/optimizer/validator 共用该结果。该 projection 必须保留 `PathSpeedLimitBuilder` 的既有保守包络契约,不能改为零加速度包络;必须显式携带停车 hold 起点;不得实现 Phase 03 的静止起步、NoProgress 或终端世界位姿门禁。恢复前应先为该 projection 写独立 RED,而不是继续调节现有单相 profile。
## 第四次恢复续行记录:非均匀 projection 仍无严格候选
用户确认恢复后,新增 RED 将微小完整段(`s_end=0.0075m`、`v0=0.05m/s`、`a0=0`、`a_max=1e-6`、`d_max=1`、`j_max=20`)直接送入 full adaptive schedule 和一个立即超时的 fake QP solver。验收要求是:QP 不返回 primal 时,优化器仍可发布严格验证过的 exact-stop fallback。
已完成并验证的最小改动:完整 schedule 现在显式记录 `TerminalHoldStartIndex`constraint/validator/full exact-stop seed 不再从 `OutputTimeStepSeconds` 推断该边界;该 RED 随后推进到真正的 seed 可行性失败。
最新复现命令仍为:
```powershell
dotnet run --project ClumsyPilot/tests/EMPlannerVerificationHost/EMPlannerVerificationHost.csproj -- longitudinal-model
```
首个有效失败:`adaptive schedule creates a strict exact-stop fallback`,结果为 `SolverTimedOut` 而不是 `SuccessWithFallback`,因为没有严格 candidate 可作为 fallback。当前非均匀运动 knot 为:
`0, 0.020599672032065634, 0.06747741703657942, 0.10775263976184658, 0.14254459069441072, 0.1783398120069701, 0.22441002701746862, 0.30000000000000004`hold 从 index 7 开始并延续到 `0.5`。
已排除:
- 仅将 schedule 终端时长提升到 `3 * JerkLimitedStoppingProfile.DurationSeconds = 0.3s`;仍无严格候选。
- 将 `TryCreateExactJerkSeed` 的基线由旧 `CreateApproachSeed` 改为 `KnotSchedule.ReferenceSpeedMetersPerSecond` 驱动的常 jerk积分;仍无严格候选。
- 旧 fixed-grid 对照 `0, 0.1, 0.2, 0.3, 0.4` 可行,说明问题是非均匀 grid 上的约束满足,而不是该车辆状态本身不可停车。
因此下一恢复窗口不得继续调节时长倍率、reference-speed 基线、jerk 搜索采样数或容差。需要明确实现一个真正的 deterministic constrained feasibility projection:直接以 `S/U/A/J` 决策变量、非均匀 exact dynamics、既有保守 PathS speed bounds、初始/终端/hold 等式和 jerk/acceleration bounds求解可行点;不能复用旧的 endpoint-nullspace coordinate-search 作为该 projection。该实现需要一个可审计的 deterministic active-set/投影算法,或用户明确批准将已注入的 QP solver 作为“初始可行性 QP”并相应调整测试 solver 语义。任何选择都必须保持在 Phase 02,不得进入静止起步、NoProgress、终端世界位姿或 UI。