6.3 KiB
决策记录
D01 / 2026-09-17 / 几何参数唯一入口
INI 文件内容是几何输入来源,Worker 再次解析文件后传入已有 WASM ABI。移除生产加载链路的固定 offsets,避免界面、预览和执行各自持有参数。
D02 / 2026-09-17 / 保持原生参数含义
XYZAC 不支持 x-offset,XYZBC 不支持 y-offset。六项都可见,但不支持项禁用且不允许非零值。三个 rot-point 在 WASM 已有支持;原 Vismach 不支持不构成本次 Web 参数化的限制。新需求覆盖旧设计文档中不得开放 rot-point 编辑的历史约束。
D03 / 2026-09-17 / 配置更改采用重载
先做关机、空闲状态下的完整重载,不在运行中热修改几何。重建配置、重新解析当前程序并重新回零,以免旧轨迹或回零结果与新结构混用。参数变化改变机器解,编程坐标的路径允许保持相同。
D04 / 2026-09-17 / 文件保存边界
浏览器应用到 Worker 只修改虚拟配置,不冒充宿主文件已保存。采用显式文件导入和保存/导出;直接修改仓库 INI 后重新读取也应生效。静态部署无需增加写磁盘服务。
D05 / 2026-09-17 / 证据与范围
本专项不改历史发布 gate 或 context lock,不宣称全 LinuxCNC 对等。每轮以任务矩阵和实测证据接续,未运行验证标为待办。保留工作区已有改动。
D06 / 2026-09-17 / 图形变换与原生方程一致
转台层级采用旋转中心平移、轴间偏置平移、倾转、反向偏置、C 旋转及编程原点回移。XYZBC 的 90 度铸件朝向与 B 倾转坐标系分开;原生 xyzbc-trt-gui.py 的 yslide 基准是 150 mm。用 WASM 逆解输出驱动模型,在四种姿态验证模型上的编程点与刀尖重合,不在 JavaScript 中复制逆解方程。
D07 / 2026-09-17 / 恢复与文件能力边界
参数改变后旧 checkpoint/trace 不得恢复到新几何,恢复前检查机型及六项几何值。完整恢复状态精度另由 TRT-R01 跟踪。INI 读取支持现有 include/引用解析;单文件编辑导出不支持把分散在 include 中的参数打包,界面对此明确报错,需修改实际包含文件后重新读取。
D08 / 2026-09-17 / 异步界面状态
机型选择在 Worker 成功载入后提交;重新读取期间锁定主界面加载动作。参数应用成功但当前程序解析失败时,保留已生效参数并显示程序解析错误,旧路径已清理;不声称整笔操作回滚成功。
D09 / 2026-09-17 / Jog 停止保持坐标系
JOG_STOP/abort 停止运动不能隐式执行 M429。保留停止姿态对应的运动学模式,只清理待执行段和历史 ID 映射;重新初始化使用原有 reset 路径。Jog 的 native tag 是段 ID,与运动学模式不同,必须关联本段入队时的当前模式,不能沿用同编号的历史程序行。
RTCP 的判据为:旋转 Jog 时刀尖在工件坐标中的 XYZ 不变,机器 XYZ 按 WASM 逆解联动;Three.js 用相同关节投影。若刀尖恰好在 C 旋转轴上,单独转 C 可没有 XYZ 位移,这属于正确几何行为;验收特意先移动 X/Y 离开旋转中心。
D10 / 2026-09-18 / 硬编码清理的确认范围
用户确认:项目自有代码中的机床参数、轴配置、路径和可调界面设置使用配置;保留数学常量、协议定义和上游 LinuxCNC。代码资产的固定网格拓扑、CSS/图标、测试输入和生成来源索引不通过机械替换数字来“清零”。配置改动必须能改变真实行为,不能只迁移到另一个常量表。
INI 是机床物理参数来源;JSON 是 Web 行为、资源注册和外观配置来源。图形外观参数不参与逆解。必需 INI 参数缺失即报错;可选原生规划策略/仿真 IO 参数使用有名称的配置默认值。
D11 / 2026-09-18 / 完整运行配置和恢复
区分 AXIS 和 JOINT 限位,逐轴配置动力学;全局加速度上限以及轴上限均取约束较小者。新 C setter 是兼容增量导出;公开旧 ABI 函数签名保持,WASM 与前端应同时重新构建。
TASK/伺服周期必须为整数倍,IO/device-IO 按实际调度的 task 周期推进,避免模拟时钟分叉。恢复除几何外,还比较运行配置 hash;旧无 hash 的存档明确拒绝,不猜测它对应哪套限位和速度。
D12 / 2026-09-18 / 验收与遗留项
配置专项的通过与全仓历史验收区分。三轴综合脚本的状态流程/工具门控列 CFG-R01;TP 恢复精度仍是 TRT-R01。保留真实失败信息。本轮新回归证据归档到 coverage/configuration,保留旧目录的原报告,以维持历史哈希可核验。
D13 / 2026-09-18 / 原生恢复不重建剩余轨迹
只保存段端点/最终位置不能恢复 TP 的积分、混合、优化、队列进度。采用原生 TP/TC 快照,并保存解释器 side table、调用栈、HAL 内部状态及 Worker 的交接信息。TP 队列和程序缓冲区指针去除后重新绑定,用不同堆布局验证;源码/编译环境指纹限制跨构建读取。旧的缺失原生状态记录明确拒绝。
保存主程序及子程序输入闭包,恢复先在临时程序实例中验证后替换;不会因工作区子程序后来修改而改变已保存任务。机床配置 hash 包含解析 INI 的完整 hash,回零参数等变化同样使旧记录失效。
D14 / 2026-09-18 / 恢复的传输与幂等边界
精确恢复和后续命令执行分开:TRT 不再静默忽略 checkpoint 后事件。新会话可重设传输序号并续跑;既有会话不能以公开 RECOVER 改写更晚的历史 tick,需新建传输会话。恢复操作回执用于阻止重复副作用,去掉回执中递归嵌套的 checkpoint/UI 大对象;重复操作投影当前机床状态。
D15 / 2026-09-18 / 浏览器自动恢复
按机型分开保存,只在冷启动自动使用匹配配置和构建的记录。显式配置重载、机型切换以本次输入为准。不兼容缓存不删除,提示按当前配置初始化。
关机记录省去可由 WASM 重建的预览,并校验重建 hash;前端保持恢复出的程序文本和路径,不再次用默认示例覆盖。存储容量边界仍保留,过大记录须报告 quota,不声明已保存。运动增量投影直接使用当前规划器关节样本,避免 identity 模式下的最后一个采样滞后。