Files
KDL_WORK/working2/04-任务矩阵.md
2026-06-28 20:58:18 +08:00

89 lines
8.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 04-任务矩阵
版本0.1
日期2026-06-28
## 1. 状态定义
| 状态 | 含义 |
| --- | --- |
| Todo | 尚未开始实现。 |
| Doing | 正在执行。 |
| Blocked | 被依赖、环境或设计问题阻塞。 |
| Review | 已实现,等待复核或补证据。 |
| Done | 已实现且验收证据完整。 |
## 2. 任务总表
| 编号 | 任务 | 状态 | 依赖 | 验收标准 |
| --- | --- | --- | --- | --- |
| W2-SPEC-000 | 创建 working2 任务文档 | Done | 无 | README、功能、步骤、台账、矩阵、证据、决策、manifest 均存在。 |
| W2-SPEC-001 | 语法规范覆盖矩阵 | Done | W2-SPEC-000 | 规范章节 4 到 25 已映射到 Runtime/Static/Post 覆盖项。 |
| W2-SPEC-002 | 执行边界分类 | Done | W2-SPEC-001 | 每项语义已标明虚拟执行、静态诊断或后处理验收方式。 |
| W2-PROG-001 | 建立 spec-programs 目录 | Done | W2-SPEC-001 | runtime/static/error/post/expected 目录和 `manifest.json` 可被测试读取。 |
| W2-PROG-010 | Runtime 覆盖项 12 个 | Done | W2-PROG-001 | `W2_00``W2_99` happy path 和 `W2_E50` runtime timeout 可 parse、compile、load。 |
| W2-PROG-020 | Static/error 程序 5 类 | Done | W2-PROG-001 | 4 类 static diagnostic 和 1 类 runtime timeout 输出 stable diagnostic 证据。 |
| W2-PROG-030 | Post/import 程序 3 个 | Done | W2-PROG-001 | 三品牌输出和 roundtrip 差异可验证。 |
| W2-RUN-001 | ABB120 spec suite runner | Done | W2-PROG-010 | `npm run suite:abb120-spec` 输出 `W2-JOB-*` 证据目录。 |
| W2-RUN-010 | 编译链路证据 | Done | W2-RUN-001 | AST/IR 摘要、source map、diagnostics 产物完整。 |
| W2-RUN-020 | ABB120 KDL 检查 | Done | W2-RUN-001 | limit、reachability/边界和 planner request 结果可审计;真实 KDL 由既有 ABB120 集成测试覆盖。 |
| W2-RUN-030 | 虚拟控制器状态机覆盖 | Done | W2-RUN-010 | load/start/step/hold/resume/stepMotion/stop/resetFault 均有命令记录。 |
| W2-RUN-040 | Motion Queue 和轨迹证据 | Done | W2-RUN-020, W2-RUN-030 | queue、activeIndex、duration、trajectory、planner diagnostics 完整Runtime 轨迹产物包含逐帧 joints[6] 和 TCP position/quaternion。 |
| W2-RUN-050 | IO/wait/pulse/alarm 执行 | Done | W2-RUN-030 | wait satisfied/timeout、pulse reset、边沿检测和报警可验证。 |
| W2-RUN-060 | 流程控制和调用栈执行 | Done | W2-RUN-030 | if/while/for/switch/call/return/out/inout 有编译和 runtime trace 证据。 |
| W2-POST-010 | 三品牌后处理 | Done | W2-PROG-030, W2-RUN-010 | ABB/FANUC/KUKA 输出和 post report 完整。 |
| W2-POST-020 | 品牌导入回读 | Done | W2-POST-010 | roundtrip diff 记录等价和不可逆项。 |
| W2-UI-010 | HTML 虚拟控制器加载 W2 job | Done | W2-RUN-001 | 页面从 demo-manifest 读取 19 个 W2 程序,支持 Program 下拉切换,并展示 suite/job、program、queue、trace、IO、diagnostics、report。 |
| W2-UI-020 | HTML 截图和交互验证 | Done | W2-UI-010 | desktop/mobile 截图、evidence.json、无横向溢出。 |
| W2-UI-030 | HTML 逐帧 TCP/关节展示 | Done | W2-RUN-040, W2-UI-010 | `Trajectory Frames` 表格展示当前程序每帧 time、motion、target、TCP XYZ、TCP Q 和 J1-J6Run/Step/Frame slider 可切换当前帧。 |
| W2-DEPLOY-001 | 服务器演示包 manifest | Done | W2-RUN-001, W2-UI-020 | 已生成 `demo-manifest.json`,包含 release_id、job_id、19 个程序、报告、截图和文档入口,路径均为相对 URL。 |
| W2-DEPLOY-010 | 演示包文件收集 | Done | W2-DEPLOY-001 | 已包含 app、spec-programs、latest job、virtual-controller screenshots、Word 手册、测试文档和首页。 |
| W2-DEPLOY-020 | 演示包 zip 和校验 | Done | W2-DEPLOY-010 | 已生成并校验 `kdl-olp-demo-20260628-164048-W2-JOB-20260628082622-51484d62.zip`,解压后 19 个 `.grl``report.json`、逐帧轨迹、截图、文档均存在。 |
| W2-DEPLOY-030 | 上传服务器并切换 current | Done | W2-DEPLOY-020 | 服务器 `/opt/kdl-olp-demo/8095/current` 已指向最新 releaseHTTPS 服务读取新包。 |
| W2-DEPLOY-040 | HTTPS 远程页面验证 | Done | W2-DEPLOY-030 | `https://82.156.24.101:8095/``demo-manifest.json``virtual-controller.html``report.json`、截图均返回 200。 |
| W2-DEPLOY-050 | 远程 smoke test 证据 | Done | W2-DEPLOY-040 | 远程验证结果已写入 `working2/05-验收证据.md``program_count=19``fail=0`。 |
| W2-DEPLOY-060 | 发布回滚机制 | Done | W2-DEPLOY-030 | 服务器保留 previous release 指针,最终部署前一版为 `20260628-163458-W2-JOB-20260628082622-51484d62`。 |
| W2-CI-900 | 全量 CI 验收 | Done | W2-RUN-060, W2-POST-020, W2-UI-020 | typecheck、test、verify 全部通过WASM build 未执行,沿用既有可选边界。 |
## 3. Runtime 程序子任务
| 子任务 | 程序 | 覆盖章节 | 状态 | 验收 |
| --- | --- | --- | --- | --- |
| W2-PROG-010.1 | `W2_00_MinimalModule.grl` | 4、5、6、9、10、23 | Done | 最小 movej 可执行。 |
| W2-PROG-010.2 | `W2_10_DataTargetToolFrame.grl` | 6、8、9 | Done | tool/frame/target 编译为 IR。 |
| W2-PROG-010.3 | `W2_20_ExpressionMath.grl` | 7 | Done | 表达式折叠结果进入 speed/zone/pose/wait。 |
| W2-PROG-010.4 | `W2_30_MotionAllTypes.grl` | 10 | Done | movej/movel/movec 和 set_* 执行。 |
| W2-PROG-010.5 | `W2_40_PathEvents.grl` | 11 | Done | before/after/at distance event 进入 trace。 |
| W2-PROG-010.6 | `W2_50_OperationProcess.grl` | 12 | Done | operation 展开为 start/path/end。 |
| W2-PROG-010.7 | `W2_60_IOWaitPulse.grl` | 13 | Done | IO、wait、pulse、边沿检测执行。 |
| W2-PROG-010.8 | `W2_70_ControlFlow.grl` | 14 | Done | 分支、循环、switch 状态正确。 |
| W2-PROG-010.9 | `W2_80_ProcFuncCall.grl` | 15 | Done | 参数方向、call stack、return 正确。 |
| W2-PROG-010.10 | `W2_90_ExceptionAlarm.grl` | 16 | Done | alarm/raise/try/catch/finally trace 正确trap/task 为 P1 warning。 |
| W2-PROG-010.11 | `W2_99_FullSpecExample.grl` | 24 | Done | 完整示例 path/operation/proc/run_operation 可执行并输出 queue 证据。 |
## 4. Static/Post 子任务
| 子任务 | 程序 | 层级 | 状态 | 验收 |
| --- | --- | --- | --- | --- |
| W2-PROG-020.1 | `W2_E10_ExpressionDiagnostics.grl` | Static | Done | 表达式 diagnostic 覆盖。 |
| W2-PROG-020.2 | `W2_E20_SemanticDiagnostics.grl` | Static | Done | 语义检查 diagnostic 覆盖。 |
| W2-PROG-020.3 | `W2_E30_MotionDiagnostics.grl` | Static/KDL | Done | 限位、不可达、空 path 诊断稳定。 |
| W2-PROG-020.4 | `W2_E40_ControlFlowDiagnostics.grl` | Static | Done | 非法控制流诊断稳定。 |
| W2-PROG-020.5 | `W2_E50_RuntimeTimeout.grl` | Runtime error | Done | wait timeout 和 on_timeout 证据完整。 |
| W2-PROG-030.1 | `W2_P10_BrandHints.grl` | Post | Done | post_hint 进入 report`@brand.*` 为后续 parser 扩展边界。 |
| W2-PROG-030.2 | `W2_P20_CrossBrandMotion.grl` | Post | Done | 三品牌 motion/IO/wait 输出完整。 |
| W2-PROG-030.3 | `W2_P30_Roundtrip.grl` | Post | Done | 导入回读结构等价或 diff 明确。 |
## 5. 服务器演示子任务
| 子任务 | 内容 | 状态 | 验收 |
| --- | --- | --- | --- |
| W2-DEPLOY-001.1 | 定义 `demo-manifest.json` schema | Done | schema 能表达 release、suite、job、program、report、screenshot、doc。 |
| W2-DEPLOY-001.2 | 生成首页 `index.html` | Done | 首页可跳转虚拟控制器、报告、程序清单、截图和文档。 |
| W2-DEPLOY-010.1 | 收集 19 个 GRL 程序 | Done | zip 内 `spec-programs` 与 manifest 数量一致。 |
| W2-DEPLOY-010.2 | 收集最新 W2 job | Done | zip 内存在 `job.json``report.json``programs/<id>/*.json`。 |
| W2-DEPLOY-010.3 | 收集截图和 Word 文档 | Done | zip 内存在 2 张截图和 2 份 Word 文档。 |
| W2-DEPLOY-040.1 | 浏览器人工验证 | Done | 远程首页、虚拟控制器入口、报告、截图和程序清单均可打开。 |
| W2-DEPLOY-050.1 | curl 自动 smoke test | Done | 关键 URL 返回 200report fail=0。 |
| W2-DEPLOY-050.2 | 逐帧轨迹远程抽查 | Done | `W2_30_MotionAllTypes``W2_60_IOWaitPulse``W2_99_FullSpecExample` 的远程 `trajectory.json` 均返回 frames、joints 和 TCP。 |