# 真机优先与离线飞拍规划改造计划 ## 已实施目标 - 启动及 `/init_mpc_robot` 固定执行“加载模型 → 连接真机 → `EnableRobot(8)`”。 - 模型加载成功但连接或使能失败时进入 `OfflineReady`,HTTP 宿主继续运行。 - 飞拍资产固定保存到 `Config/RobotConfig.json`,上传、列出、删除不依赖模型或真机状态。 - `/save_traj_info/` 只要求模型已加载,返回完整最终发送点列、触发绑定和导出文件绝对路径。 - `/execute_flyshot/` 仍要求 `RealReady`,离线规划不会伪造机器人连接或使能。 - `/debug` 提供模型加载、轨迹上传/选择、离线生成、分页点列和导出路径查看。 ## 状态约定 - `LoadingModel`:正在加载机器人模型。 - `Connecting`:模型已加载,正在连接或使能真机。 - `RealReady`:真机已连接且使能,允许真实运动和 IO。 - `OfflineReady`:模型已加载但真机不可用,允许离线规划。 - `ModelLoadFailed`:机器人模型不可用,禁止规划和执行。 ## HTTP 约定 - 保留 `/setup_robot/`,仅加载模型,不连接、不使能,也不清空飞拍资产。 - 新增 `/init_mpc_robot`,请求体只包含 `robot_name`、`robot_ip`。 - 删除 `/init_mpc_robt`、`/connect_server/`、版本查询、环境文件、TCP 显示、`is_setup` 和仿真控制器切换路由。 - `/upload_flyshot/` 在上传阶段只校验资产结构和有限数值;自由度与模型限制在规划阶段校验。 - `/save_traj_info/` 返回规划摘要、关键/稠密轨迹、最终发送点、ShotEvents、触发绑定和导出路径。 ## 验证 - 核心测试覆盖离线资产生命周期、模型重载保留资产、连接失败降级和完整离线规划结果。 - 集成测试覆盖删除路由 404、新初始化接口、状态快照和 Debug 离线规划页面。 - 最终执行核心测试、集成测试和解决方案构建。