chore: save current workspace progress
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
# CoarsePath README 结构化重构设计
|
||||
|
||||
## 目标
|
||||
|
||||
将 `ClumsyPilot/ParkrobTrajplanner/CoarsePath/README.md` 重构为与 `Map/README.md` 一致的说明风格,使调用者能够从模块职责、文件位置和数据流开始,逐步理解粗路径的调用、状态处理、P1 手动测试与明确的非目标。
|
||||
|
||||
本次只重构文档内容与现有文档检查;不改变 `Map`、`CoarsePath`、P1 UI 或任何测试场景的运行行为。
|
||||
|
||||
## 当前事实
|
||||
|
||||
- `Map` 负责障碍物来源、栅格化、不可变 `PlanningGridMap` 与缓存;它是粗路径的输入依赖。
|
||||
- `CoarsePath` 已具备 P0 核心:车辆扩大足迹碰撞、前进/倒车原语、Dijkstra 启发式、Hybrid A*、路径回溯、最终复核与业务门面。
|
||||
- P1 已具备:六个固定场景、AMR 位姿与手动终点空图演示、后台取消、Painter 结果可视化与 UI 结构检查。
|
||||
- 尚不包含平滑、速度/时间轨迹、底盘控制、实时重规划、真实作业障碍物接入与 Release 基准。
|
||||
|
||||
## README 目标结构
|
||||
|
||||
1. **模块说明**:定义 `CoarsePath` 的输入、输出、唯一业务入口与职责边界。
|
||||
2. **文件结构**:按 `Contracts`、`Vehicle`、`Search`、`Output`、`Facade`、`Test` 列出实际文件及职责。
|
||||
3. **规划数据流**:说明 `CoarsePathPlanningJob` 经服务、Map 快照、Hybrid A* 到 `PlanningResult` 的固定路径;明确地图失败不会启动搜索。
|
||||
4. **状态、单位与安全边界**:集中说明 mm/m、deg/rad、车辆安全外扩、取消/超时和“非成功不发布部分路径”。
|
||||
5. **最小调用示例**:沿用现有可编译门面调用,展示成功、地图失败和规划失败的处理方式。
|
||||
6. **缓存与 SourceVersion**:解释长期持有服务、`Input`/`Occupancy`/`None` 缓存层级及版本递增责任。
|
||||
7. **详细使用指南**:依次说明长期服务、准备地图请求、车辆和搜索参数、调用门面、消费路径与方向段。
|
||||
8. **P1 测试与调试**:集中说明七个 MovementTest、AMR 手动终点单位边界、后台停止和 Painter 图例。
|
||||
9. **常见错误**:用“现象 / 原因 / 处理”表格覆盖单位混用、遗漏 `SourceVersion`、隐式空图、错误处理失败结果、将粗路径当作控制轨迹等问题。
|
||||
10. **第一版限制**:保留不属于 P0/P1 的能力清单。
|
||||
|
||||
## 内容约束
|
||||
|
||||
- 仅记录已实现且已验证的行为;不把 P1 计划或人工验收说成已完成能力。
|
||||
- 固定使用 `CoarsePathPlanningService.Plan(job, cancellationToken)` 作为唯一业务调用示例;不鼓励 UI 直接组装搜索组件。
|
||||
- 保留 `Map/README.md` 链接,避免复制地图障碍物和栅格化的详细说明。
|
||||
- P1 手动终点必须明确是显式空图演示,不能代表现场无障碍;当前 AMR 位姿为车辆几何中心,输入在 UI 边界从 mm/deg 转为 m/rad。
|
||||
- 使用中文说明、目录树、数据流图、参数表、代码示例和常见错误表,保持 Map README 的信息密度与顺序。
|
||||
|
||||
## 验证
|
||||
|
||||
- 扩展 `ClumsyPilot/tests/verify_coarse_path_ui.ps1`,以 ASCII 稳定标识检查 README 含有新的主要章节、核心门面、数据流、P1 入口、单位、停止语义、非部分路径和限制边界。
|
||||
- 运行 README 的 P1 UI 检查,以及现有 Debug 构建和粗路径集成检查;文档改动不应影响生产代码或 P0 行为。
|
||||
|
||||
## 非目标
|
||||
|
||||
- 不重写或迁移 `Map/README.md`。
|
||||
- 不新增、删除或改名 C# 类型、场景、MovementTest 或测试脚本。
|
||||
- 不恢复、清理或迁移 TrapMap 及其旧验证脚本。
|
||||
Reference in New Issue
Block a user