完善 working6 gmoccapy 页面诊断边界
This commit is contained in:
64
work/working6/01-项目功能内容.md
Normal file
64
work/working6/01-项目功能内容.md
Normal file
@@ -0,0 +1,64 @@
|
||||
# 01-项目功能内容
|
||||
|
||||
## 目标
|
||||
|
||||
在 `/home/meswork/cnc_wams/web-rtcp-5axis-sim-plan` 中补齐 gmoccapy 文件/宏页面、tool editor 页面、native GTK 未实现页面的诊断边界,让 Web 仿真能够明确表达哪些 gmoccapy 原生页面已经实现、哪些只做诊断映射、哪些因 XYZAB 配置或 Web 仿真边界暂不执行。
|
||||
|
||||
本轮不重复 working5 已完成的 HAL 输入、hard-button、模式门控、换刀回环和低频 HAL pin 工作;本轮聚焦页面级功能边界和可验收诊断。
|
||||
|
||||
## 对标范围
|
||||
|
||||
### gmoccapy 文件页面
|
||||
|
||||
- 对照 `gmoccapy.py` 和 `gmoccapy.glade` 中程序文件加载、最近文件、文件选择器、程序预览和自动运行入口。
|
||||
- 对照 `[DISPLAY] PROGRAM_PREFIX`、默认 NC 文件路径、文件过滤规则和最近文件行为。
|
||||
- Web 侧需要明确:
|
||||
- 当前可加载的演示/机床程序来源。
|
||||
- 文件选择、打开、关闭、最近文件、预览、运行之间的状态边界。
|
||||
- 与 Auto 模式、全轴回零、解释器 idle、运行中禁止切换文件等互锁关系。
|
||||
- 未实现的 native GTK file chooser 行为需要诊断说明,不伪装成完整桌面文件管理器。
|
||||
|
||||
### gmoccapy 宏页面
|
||||
|
||||
- 对照 gmoccapy 原生宏按钮、INI 中 macro 配置、MDI 命令发送路径和敏感状态。
|
||||
- Web 侧需要明确:
|
||||
- 当前 XYZAB 配置是否存在可用宏。
|
||||
- 宏按钮如何映射到 MDI 命令或诊断行。
|
||||
- 未回零、未上电、运行中、解释器非 idle 时宏执行的门控原因。
|
||||
- 未配置宏时应显示明确边界,而不是空白或误导性成功状态。
|
||||
|
||||
### tool editor 页面
|
||||
|
||||
- 对照 gmoccapy tool editor、LinuxCNC tool table、`M6`/`M61`、刀具号、刀补、手动换刀回环的状态显示。
|
||||
- Web 侧需要明确:
|
||||
- 当前 tool table 来源、读取状态、活动刀具、准备刀具、刀补显示。
|
||||
- 可编辑字段与只读诊断字段的边界。
|
||||
- Web 仿真是否允许直接写 tool table;若暂不写文件,需要显示只读/诊断原因。
|
||||
- 与 working5 中 `iocontrol-loopback` 换刀语义保持一致,不重新引入 gmoccapy 手动换刀弹窗。
|
||||
|
||||
### native GTK 未实现页面诊断边界
|
||||
|
||||
- 对照 `gmoccapy.glade` 中原生 notebooks、side buttons、bottom buttons 和 setup/user tabs/tool/touch 等页面。
|
||||
- Web 侧需要明确:
|
||||
- 已实现页面、部分实现页面、诊断-only 页面和未实现页面清单。
|
||||
- hard-button pin 对未实现 native 页面按钮的行为:只能诊断、不能伪装成真实页面动作。
|
||||
- 每个未实现页面的原因、风险和未来补齐入口。
|
||||
- 浏览器 UI 中提供可测试的 `data-*` 诊断节点,便于 smoke 脚本验收。
|
||||
|
||||
## 当前项目入口
|
||||
|
||||
- Web 应用:`/home/meswork/cnc_wams/web-rtcp-5axis-sim-plan/app`
|
||||
- gmoccapy profile:`app/src/profiles/gmoccapy-xyzab.js`
|
||||
- gmoccapy HAL model:`app/src/runtime/gmoccapy-hal-model.js`
|
||||
- gmoccapy communication model:`app/src/runtime/gmoccapy-communication-model.js`
|
||||
- 状态存储:`app/src/state/store.js`
|
||||
- gmoccapy UI shell:`app/src/ui/gmoccapy-shell.js`
|
||||
- Node 验证:`tests/node`
|
||||
- 浏览器验证:`tests/browser`
|
||||
|
||||
## 非目标
|
||||
|
||||
- 不在本轮实现完整桌面 GTK 文件选择器。
|
||||
- 不在本轮引入真实 LinuxCNC 外部进程、真实 HAL pin 写入或真实 tool table 持久化,除非后续任务矩阵明确升级。
|
||||
- 不回退 working5 已完成的 `GMOCAPY_HAL_PIN`、`GMOCAPY_HARDWARE_BUTTON` 和 gmoccapy XYZAB profile 行为。
|
||||
- 不把未实现 native 页面包装成可操作成功路径;必须明确诊断边界。
|
||||
Reference in New Issue
Block a user