新增 text14 接续执行计划
This commit is contained in:
221
text14.txt
Normal file
221
text14.txt
Normal file
@@ -0,0 +1,221 @@
|
|||||||
|
项目整体完成情况与后续执行计划
|
||||||
|
|
||||||
|
生成时间:2026-06-15 CST
|
||||||
|
|
||||||
|
本文件接替 `text13.txt`。后续工作按 `text14.txt` 执行;除非明确要求审计旧记录,
|
||||||
|
不要再回到 `text1/text2/text3/text4/text5/text6/text7/text8/text9/text10/text11/text12/text13`
|
||||||
|
扩展进度。`text13.txt` 作为历史归档保留。
|
||||||
|
|
||||||
|
一、第一原则:继续加快实质性推进
|
||||||
|
|
||||||
|
后续批次仍必须以“实质性能力优先”为第一遵守原则。
|
||||||
|
|
||||||
|
1. 优先级从高到低:
|
||||||
|
|
||||||
|
- OPFS/session persistence;
|
||||||
|
- SDK/API surface;
|
||||||
|
- browser/UI workflow;
|
||||||
|
- sim config coverage promotion;
|
||||||
|
- host/runtime boundary proof;
|
||||||
|
- 文档化可执行工作流。
|
||||||
|
|
||||||
|
2. 每批默认应产出至少一种可直接复用的能力:
|
||||||
|
|
||||||
|
- 可调用 helper;
|
||||||
|
- 可复用 API;
|
||||||
|
- 可验证用户流程;
|
||||||
|
- 可执行 gate;
|
||||||
|
- 可提升覆盖面的 runtime boundary proof;
|
||||||
|
- 能直接指导下一步实现的设计/清单。
|
||||||
|
|
||||||
|
3. 暂停低收益推进:
|
||||||
|
|
||||||
|
- 不再把“局部常量化、路径变量收敛、断言分组整理”作为主目标;
|
||||||
|
- 只有当它支撑可复用 workflow/API/gate 时,才允许做测试胶水;
|
||||||
|
- 禁止为了推进而扩大 CNC 语义边界;
|
||||||
|
- 禁止启动性能测试,除非已有明确用户流程需要性能基线。
|
||||||
|
|
||||||
|
4. LinuxCNC 仍是唯一 CNC 语义来源:
|
||||||
|
|
||||||
|
- G-code、remap、tool、parameter、planner、kinematics、user-M、tool DB、Python remap
|
||||||
|
等语义必须来自 LinuxCNC upstream 或 vendored LinuxCNC C/C++/配置/脚本源码;
|
||||||
|
- JS/browser 只允许做 build、source sync、runtime shim、filesystem staging、OPFS、
|
||||||
|
WASM/browser boundary、测试胶水、文档和机器可读 gate/artifact;
|
||||||
|
- 不在 JS 中重写 G-code 或 CNC 语义;
|
||||||
|
- 不修改 vendored LinuxCNC 源文件来让测试通过;
|
||||||
|
- 不把 full-process/HAL/UI/Python/tool DB 依赖伪装成 standalone pass;
|
||||||
|
- 不把 expected failure 硬改成 pass,除非已有 LinuxCNC-owned runtime proof,并且
|
||||||
|
native、Node、browser gate 都按顺序通过;
|
||||||
|
- browser 不能依赖目录枚举。
|
||||||
|
|
||||||
|
二、续接状态与防重规则
|
||||||
|
|
||||||
|
1. 当前续接点。
|
||||||
|
|
||||||
|
`text13.txt` 已推进到:
|
||||||
|
|
||||||
|
```text
|
||||||
|
十九、2026-06-15 继续执行记录:INI panel workflow overview embedding mount render-state
|
||||||
|
```
|
||||||
|
|
||||||
|
本文件从 `text14.txt` 重新开始记录后续进度。
|
||||||
|
|
||||||
|
2. 每轮开始前必须先执行:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git status --short
|
||||||
|
git log -5 --oneline
|
||||||
|
tail -n 120 text14.txt
|
||||||
|
awk '/^[一二三四五六七八九十百]+、/ {print}' text14.txt | sort | uniq -d
|
||||||
|
```
|
||||||
|
|
||||||
|
执行规则:
|
||||||
|
|
||||||
|
- 如果 `git status --short` 是 clean,且最新提交已经包含当前建议工作,不要重复追加记录;
|
||||||
|
- 每轮只追加一个新的中文编号记录;
|
||||||
|
- 提交前再次检查标题唯一性;
|
||||||
|
- `text14.txt` 只记录新的后续进度,不复制 `text13.txt` 的长历史;
|
||||||
|
- 每批完成后,如果要写记录,先写 `text14.txt`,再提交该批代码和记录;
|
||||||
|
- 如果发现重复记录,先做 dedupe 清理并提交,再继续新功能或新 guard;
|
||||||
|
- `text13.txt` 不再追加新进度,除非明确要求审计或修正历史记录。
|
||||||
|
|
||||||
|
三、当前完成情况摘要
|
||||||
|
|
||||||
|
1. 当前工作树状态。
|
||||||
|
|
||||||
|
切换到 `text14.txt` 时工作树为 clean。
|
||||||
|
|
||||||
|
2. 最近提交:
|
||||||
|
|
||||||
|
```text
|
||||||
|
1a863fa 推进 INI 面板 workflow overview embedding mount render state
|
||||||
|
fc9e6a3 推进 INI 面板 workflow overview embedding mount display
|
||||||
|
83df80d 推进 INI 面板 workflow overview embedding mount result
|
||||||
|
75f71c2 推进 INI 面板 workflow overview embedding DOM renderer
|
||||||
|
6856721 推进 INI 面板 workflow overview embedding DOM readiness
|
||||||
|
3cfd4b3 推进 INI 面板 workflow overview embedding DOM contract
|
||||||
|
f70fc09 推进 INI 面板 workflow overview embedding render-state
|
||||||
|
4fdbadd 推进 INI 面板 workflow overview embedding display view-model
|
||||||
|
```
|
||||||
|
|
||||||
|
3. 关键基线保持稳定。
|
||||||
|
|
||||||
|
- `linuxcnc/nc_files` native Layer 1:
|
||||||
|
- `total 107`
|
||||||
|
- `pass 101`
|
||||||
|
- `expected_fail 6`
|
||||||
|
- `unexpected_fail 0`
|
||||||
|
- `linuxcnc/configs/sim` native Layer 2:
|
||||||
|
- `total 159`
|
||||||
|
- `pass 151`
|
||||||
|
- `expected_fail 8`
|
||||||
|
- `unexpected_fail 0`
|
||||||
|
- Node sim-config inventory:
|
||||||
|
- `executed=28`
|
||||||
|
- `passed=28`
|
||||||
|
- `skipped=131`
|
||||||
|
- `unexpected_fail=0`
|
||||||
|
|
||||||
|
4. blocked runtime family 仍未 promotion。
|
||||||
|
|
||||||
|
仍 blocked,不允许 promotion:
|
||||||
|
|
||||||
|
- `L4-USER-M-PROCESS`
|
||||||
|
- `L4-TOOL-DB`
|
||||||
|
- `L4-PYTHON-REMAP`
|
||||||
|
|
||||||
|
当前 host 仍按缺少 LinuxCNC host runtime 处理,不执行任何:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ENABLE_MILLTURN_USER_M_RUNTIME_PROBE=1 bash wasm-port/tests/native/probe_millturn_user_m_runtime.sh
|
||||||
|
ENABLE_TOOL_DB_RUNTIME_PROBE=1 bash wasm-port/tests/native/probe_tool_db_runtime.sh
|
||||||
|
ENABLE_PYTHON_REMAP_RUNTIME_PROBE=1 bash wasm-port/tests/native/probe_python_remap_runtime.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
四、当前实质能力进展
|
||||||
|
|
||||||
|
1. INI panel/UI helper 能力。
|
||||||
|
|
||||||
|
当前 UI helper 已覆盖:
|
||||||
|
|
||||||
|
- run summary;
|
||||||
|
- run workflow;
|
||||||
|
- session snapshot summary;
|
||||||
|
- session load summary;
|
||||||
|
- machine file save/load summary;
|
||||||
|
- panel state summary;
|
||||||
|
- session snapshot save/restore workflow;
|
||||||
|
- entry manifest、launcher link view-model、shell view-model;
|
||||||
|
- read-only control-page controller;
|
||||||
|
- read-only control-page refresh workflow;
|
||||||
|
- read-only control-page session readiness workflow;
|
||||||
|
- shell integration readiness、workflow plan、session handoff summary;
|
||||||
|
- shell session handoff summary schema、compatibility report、display view-model、snapshot;
|
||||||
|
- shell handoff package、package report、package display/render state;
|
||||||
|
- shell handoff package mount state、mount display/render state;
|
||||||
|
- shell handoff mount DOM contract、DOM readiness、renderer、mount workflow;
|
||||||
|
- shell handoff workflow summary、display/render state、DOM contract/readiness、renderer、mount workflow;
|
||||||
|
- workflow overview surface;
|
||||||
|
- workflow overview embedding report、display view-model、render-state;
|
||||||
|
- workflow overview embedding DOM contract、DOM readiness、renderer;
|
||||||
|
- workflow overview embedding mount workflow result、mount display view-model、mount render-state。
|
||||||
|
|
||||||
|
当前聚合验证入口:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
wasm-port/tests/ui/node/verify_ui_node_smokes.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Browser/UI workflow 验证。
|
||||||
|
|
||||||
|
当前 browser INI panel smoke 覆盖真实 OPFS/session persistence workflow、control page、
|
||||||
|
workflow overview surface 与外部 shell workflow:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
SKIP_INI_BUILD=1 SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_ini_panel_browser.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
关键输出:
|
||||||
|
|
||||||
|
```text
|
||||||
|
browser_ini_opfs_smoke=ok
|
||||||
|
browser_ini_control_page_smoke=ok
|
||||||
|
browser_ini_launch_smoke=ok
|
||||||
|
browser_ini_workflow_overview_smoke=ok
|
||||||
|
browser_ini_shell_integration_workflow_smoke=ok
|
||||||
|
```
|
||||||
|
|
||||||
|
五、当前必须保持通过的验证入口
|
||||||
|
|
||||||
|
每批后续改动至少运行:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git diff --check
|
||||||
|
wasm-port/tools/verify_vendor_sync.sh
|
||||||
|
wasm-port/tools/verify_no_standalone_cnc_semantics.sh
|
||||||
|
SKIP_INTERP_BUILD=1 wasm-port/tests/wasm/node/verify_interp_wasm.sh
|
||||||
|
SKIP_INTERP_BUILD=1 wasm-port/tests/wasm/node/verify_sim_configs_inventory_wasm.sh
|
||||||
|
SKIP_INI_BUILD=1 SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_ini_panel_browser.sh
|
||||||
|
wasm-port/tests/ui/node/verify_ui_node_smokes.sh
|
||||||
|
wasm-port/tests/host/verify_host_smokes.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
如果涉及 browser interpreter smoke,再运行:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
SKIP_INI_BUILD=1 SKIP_INTERP_BUILD=1 wasm-port/tests/browser/verify_interp_browser.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
涉及 native baseline 或大范围 source/staging 改动时,再运行:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
wasm-port/tests/native/verify_nc_files.sh
|
||||||
|
wasm-port/tests/native/verify_sim_configs.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
六、下一步建议
|
||||||
|
|
||||||
|
继续推进 browser/UI workflow。下一批建议新增只读
|
||||||
|
`createIniPanelShellWorkflowOverviewEmbeddingMountDomContract()` 或等价 helper,为 mount render-state
|
||||||
|
定义 mount/status/rows selectors、dataset keys 与 render-result fields,给后续 DOM readiness 和 renderer
|
||||||
|
提供稳定契约;仍保持只读,不新增控制按钮,不解析 G-code。
|
||||||
Reference in New Issue
Block a user