# 04 任务矩阵

生成日期：2026-06-26

状态取值：

- `done`：已完成并有证据。
- `in_progress`：正在做。
- `todo`：未开始。
- `blocked`：被外部条件阻塞。
- `deferred`：暂缓，不影响当前阶段验收。

## 1. 文档任务

| 任务编号 | 状态 | 任务 | 产物 | 验收标准 |
| --- | --- | --- | --- | --- |
| W4-D01 | done | 建立 working4 文档索引 | `README.md` | 列出 01-07 文档和后续维护入口。 |
| W4-D02 | done | 编写功能内容文档 | `01-function-content.md` | 覆盖目标、现状、working3 新价值、功能包、不做事项、成功定义。 |
| W4-D03 | done | 编写开发步骤文档 | `02-program-development-steps.md` | 按阶段列出应改文件、步骤、命令、验收标准。 |
| W4-D04 | done | 建立推进台账 | `03-progress-ledger.md` | 包含 W4-DOC-001 和后续追加模板。 |
| W4-D05 | done | 建立任务矩阵 | `04-task-matrix.md` | 所有后续任务有编号、状态、验收标准。 |
| W4-D06 | done | 建立验收证据文档 | `05-acceptance-evidence.md` | 记录现有证据、实际 QA 证据和验收边界。 |
| W4-D07 | done | 建立决策记录 | `06-decision-records.md` | 记录边界、技术路线、验收策略。 |
| W4-D08 | done | 收口 working4 状态文档 | `README.md`、`01-function-content.md`、`02-program-development-steps.md`、`05-acceptance-evidence.md` | 规划口径与已完成实施、QA 证据和验收边界一致。 |
| W4-D09 | done | 建立最终收口说明 | `07-final-closure.md` | 汇总完成结论、最终证据、保留边界和后续变更规则。 |

## 2. 资料和资产任务

| 任务编号 | 状态 | 任务 | 主要文件 | 验收标准 |
| --- | --- | --- | --- | --- |
| W4-A01 | done | 建立 gmoccapy_XYZAB reference 文档 | `web-rtcp-5axis-sim-plan/docs/gmoccapy-xyzab-reference.md` | 文档覆盖 native 启动、NML、HAL、postgui、互锁、按钮控制逻辑。 |
| W4-A02 | done | 生成按钮图标 JSON manifest | `app/src/ui-reference/gmoccapy-button-icons.json` | JSON 可解析，记录 211 行清单并保留来源路径。 |
| W4-A03 | done | 复制核心 gmoccapy 图标到 app assets | `app/src/assets/gmoccapy-icons/` | 已复制 112 个图标，覆盖主状态栏、底部栏、Auto 栏、spindle/coolant、preview。 |
| W4-A04 | done | 更新追溯矩阵 | `docs/traceability-matrix.md` | 新增 gmoccapy_XYZAB、button icon manifest、communication model、HAL diagnostics 追溯项。 |

## 3. Profile 和 runtime model 任务

| 任务编号 | 状态 | 任务 | 主要文件 | 验收标准 |
| --- | --- | --- | --- | --- |
| W4-P01 | done | 新增 `gmoccapy-xyzab` profile | `app/src/profiles/gmoccapy-xyzab.js`、`app/src/profiles/index.js` | profile 可选择，坐标为 XYZAB，标记 `trivkins`、`tcpCapable=false` 和 `rtcpProof=false`。 |
| W4-P02 | done | 新增 XYZAB source reference map | `app/src/profiles/source-reference-map.js` | 包含 `gmoccapy_XYZAB.ini`、`core_sim_XYZAB.hal`、`spindle_sim.hal`、`simulated_home.hal`、`gmoccapy_postgui.hal`。 |
| W4-P03 | done | 新增 gmoccapy communication model | `app/src/runtime/gmoccapy-communication-model.js` | 能列出 native NML command/status/error、HAL pin、Web runtime 映射。 |
| W4-P04 | done | 新增 gmoccapy HAL model | `app/src/runtime/gmoccapy-hal-model.js` | 能列出关键 `gmoccapy.*` pins 和 postgui nets。 |

## 4. UI 和按钮任务

| 任务编号 | 状态 | 任务 | 主要文件 | 验收标准 |
| --- | --- | --- | --- | --- |
| W4-U01 | done | 建立 icon registry | `app/src/ui/gmoccapy-icon-registry.js` | `getGmoccapyIcon(buttonId, variant)` 可返回 icon path/name/fallback。 |
| W4-U02 | done | 右侧主状态栏接入 icon | `app/src/ui/gmoccapy-shell.js`、`app/src/styles/gmoccapy.css` | estop/power/manual/mdi/auto/settings/user tabs 有 active/inactive 图标。 |
| W4-U03 | done | 底部和 Auto 控制栏接入 icon | `gmoccapy-shell.js`、`gmoccapy.css` | open/reload/run/stop/pause/step/home/tool/touch/fullscreen 有图标和 aria-label。 |
| W4-U04 | done | spindle/coolant/preview 接入 icon | `gmoccapy-shell.js`、`gmoccapy.css` | spindle forward/reverse/stop、flood/mist、view/zoom/toolpath/dimensions 有图标或 fallback。 |
| W4-U05 | done | 信息面板展示 communication/HAL diagnostics | `gmoccapy-shell.js` | UI 可见 NML/HAL/Web runtime 边界和 postgui 顺序。 |

## 5. Gate 和业务语义任务

| 任务编号 | 状态 | 任务 | 主要文件 | 验收标准 |
| --- | --- | --- | --- | --- |
| W4-G01 | done | RUN gate 对齐 gmoccapy_XYZAB | `app/src/state/linuxcnc-task-policy.js`、`store.js` | 覆盖 INI、machine-file、estop、power、home、auto、interp idle、runtime ready。 |
| W4-G02 | done | MDI gate 对齐 gmoccapy_XYZAB | `linuxcnc-task-policy.js`、`store.js` | 未上电、未回零、运行中等状态有明确 blocked reason。 |
| W4-G03 | done | JOG/HOME gate 对齐 gmoccapy_XYZAB | `linuxcnc-task-policy.js`、`store.js` | manual/on/not-running 状态规则可测。 |
| W4-G04 | done | spindle/coolant/override gate 对齐 gmoccapy_XYZAB | `linuxcnc-task-policy.js`、`gmoccapy-shell.js` | 急停/下电禁用，运行中限制手动主轴方向覆盖。 |
| W4-G05 | done | Stop/Abort 清理 UI 状态 | `store.js`、`gmoccapy-shell.js` | Stop 后 pause/start_line/active run state 清理，browser 可测。 |

## 6. 测试和证据任务

| 任务编号 | 状态 | 任务 | 主要文件 | 验收标准 |
| --- | --- | --- | --- | --- |
| W4-T01 | done | 新增 XYZAB profile Node 测试 | `tests/node/verify_gmoccapy_xyzab_profile.mjs` | 断言坐标、HALFILE、POSTGUI、trivkins、boundary。 |
| W4-T02 | done | 新增 icon manifest Node 测试 | `tests/node/verify_gmoccapy_icon_manifest.mjs` | manifest 可解析，核心按钮均有 icon 或 fallback。 |
| W4-T03 | done | 新增 communication model Node 测试 | `tests/node/verify_gmoccapy_communication_model.mjs` | NML/HAL/Web 映射完整。 |
| W4-T04 | done | 新增 HAL model Node 测试 | `tests/node/verify_gmoccapy_hal_model.mjs` | 关键 pins 和 postgui nets 存在。 |
| W4-T05 | done | 新增 gate Node 测试 | `tests/node/verify_gmoccapy_xyzab_gates.mjs` | RUN/MDI/JOG/HOME/SPINDLE/COOLANT 合法和非法状态均覆盖。 |
| W4-T06 | done | 更新 browser smoke | `tests/browser/gmoccapy_shell_smoke.html` | 覆盖 profile 切换、icon active、blocked reason、HAL diagnostics。 |
| W4-T07 | done | 新增 QA 截图和报告脚本 | `qa/web-rtcp-5axis-site-test/capture-gmoccapy-xyzab-function-cases.mjs` | 输出 JSON、PDF 和截图。 |
| W4-T08 | done | 更新验收证据文档 | `work/working4/05-acceptance-evidence.md` | 追加实际命令、JSON、PDF、截图和资产路径。 |

## 7. 全局验收任务

| 任务编号 | 状态 | 任务 | 命令 | 验收标准 |
| --- | --- | --- | --- | --- |
| W4-V01 | done | 静态构建 | `npm --prefix web-rtcp-5axis-sim-plan/app run build` | 返回 0。 |
| W4-V02 | done | Node smoke | `npm --prefix web-rtcp-5axis-sim-plan/app run smoke:node` | 返回 0，原有测试不回归。 |
| W4-V03 | done | Browser smoke | `bash web-rtcp-5axis-sim-plan/tests/browser/verify_gmoccapy_shell_browser.sh` | 返回 0，页面非空，canvas 非空。 |
| W4-V04 | done | Dist browser smoke | `bash web-rtcp-5axis-sim-plan/tests/browser/verify_gmoccapy_dist_browser.sh` | 返回 0。 |
| W4-V05 | done | 文档和空白检查 | `git diff --check -- web-rtcp-5axis-sim-plan qa/web-rtcp-5axis-site-test work/working4` | 返回 0。 |
