feat: advance TSN drift and ordered pair evidence
This commit is contained in:
@@ -1961,3 +1961,27 @@ recovery 进程从两段 open-wire Sketch 启动 Pad,首次接受捕获 `Input
|
||||
活动队列已机器前移为 119 completed、1 in_progress、367 pending,唯一下一项为 `TSN-DRIFT-002`,即只解释 `partdesign-reverse` 的恢复命名演进。`EX-TSN-04` 仍为 in_progress:11 个 PartDesign case/28 个恢复命名阶段中已关闭 2 个 case/4 个阶段,剩余 9/24,系统 exact 与模块等级均不提升。
|
||||
|
||||
本轮聚焦分类、30-case composite、TSN correlation、exact history、执行计划与队列门禁均通过;完整 `./npmw run verify` 以退出码 0 完成,包含 199 项 Facade 测试、生产构建、79 个签名发布文件、34 模块 release closure 和 Ed25519 验签。验证后 `git diff --check`、310 个 JSON 解析与发布产物一致性复核再次通过。
|
||||
|
||||
## 251. 2026-08-15 计划重审与 TSN-DRIFT-002 Reverse Pad 恢复命名分类
|
||||
|
||||
执行总计划新增可机器核对的完成度仪表盘,重申 83/83 兼容实现不等于 exact;当前 exact 仍为 5/52,34 模块仍为 0 exact、26 compatible、5 proxy、3 development。TSN 恢复漂移队列已将 11 个 PartDesign case 全部锁定到具体 target property、before/edited/restored 值、drift ordinal 和阶段数;每个 case 再按 contract、独立复跑、三摘要指纹、几何恢复、持久化和唯一决策拆为 A-F 六个最小检查点。
|
||||
|
||||
`partdesign-reverse` 在锁定 FreeCAD 1.1.1 中编辑 `Pad12.Length`,属性轨迹为 `5 -> 5.75 -> 5`。第二个独立原生进程再次完成 30/30 case;Body12 与 Pad12 的 geometry digest 在恢复后与 before 精确一致,relation/semantic-name digest 则演进到 restored/nominal 状态。锁定参考与独立复跑的 before/edited/restored 三相指纹逐字段一致,且演进值在 save/reopen/resave 三态中不再变化。
|
||||
|
||||
该差异因此唯一分类为 `allowed_evolution`,`implementationDefect=false`。分类账本现包含连续前缀 `TSN-DRIFT-000..002`,共 3 case/6 stage,剩余 8 case/22 stage。队列生成器已自动前移为 120 completed、1 in_progress、366 pending,唯一后继为 `TSN-DRIFT-003 partdesign-taper`;系统 exact 与模块等级均不提升。
|
||||
|
||||
## 252. 2026-08-15 TSN-DRIFT-003 Tapered Pad 恢复命名分类
|
||||
|
||||
`partdesign-taper` 在锁定 FreeCAD 1.1.1 中编辑 `Pad13.Length`,属性轨迹为 `6 -> 6.75 -> 6`。第二个独立原生进程再次完成 30/30 case;Body13 与 Pad13 的 geometry digest 在恢复后与 before 精确一致,relation/semantic-name digest 则演进到 restored/nominal 状态。锁定参考与独立复跑的 before/edited/restored 三相指纹逐字段一致,且演进值在 save/reopen/resave 三态中不再变化。
|
||||
|
||||
该差异因此唯一分类为 `allowed_evolution`,`implementationDefect=false`。分类账本现包含连续前缀 `TSN-DRIFT-000..003`,共 4 case/8 stage,剩余 7 case/20 stage。队列生成器已自动前移为 121 completed、1 in_progress、365 pending,唯一后继为 `TSN-DRIFT-004 partdesign-twoside`;`EX-TSN-04` 仍为 in_progress,系统 exact 与模块等级均不提升。
|
||||
|
||||
本轮聚焦 composite、TSN correlation、exact history、生产命名与 199 项 Facade 测试均通过;完整 `./npmw run verify` 以退出码 0 完成,包含 5000 个确定性 fuzz 样本、生产构建、79 个签名发布文件、34 模块 release closure 和 Ed25519 验签。
|
||||
|
||||
## 253. 2026-08-15 TSN-PAIR fuse->rotate 跨族分类
|
||||
|
||||
有序操作对执行器已从 Boolean 后继扩展到单输入 Rotate。第二阶段直接调用生产 OCCT WASM 的 `rotateHistoryFromStep`,报告锁定 `historyProvider=occt-native`、`builder=BRepBuilderAPI_Transform` 与 `inputCount=1`;Rotate 名义态采集 187 条 transform history,分类为 11 个稳定结果与 49 个歧义结果,上游 Fuse 的候选 provenance 通过生产 `nativeNamingAbi` 路径继续传播。
|
||||
|
||||
Rotate 使用只编辑第二操作的角度轨迹 `15 -> 22.5 -> 15`。22.5 度阶段改变包围盒,恢复后 Shape 摘要、原生 history SHA-256 与语义命名 SHA-256 精确回到 15 度基线;最终 Shape 和 23836 字节命名证据在 FreeCAD 1.1.1 的 save/reopen/resave 三态保持稳定。检查器同时锁定执行器自身、命名矩阵、FCStd resave harness 与三项 OCCT 产物的 bytes/SHA-256,防止旧报告通过。
|
||||
|
||||
`fuse->rotate` 因此以 accepted 关闭。TSN correlation 当前覆盖 8/361 对,剩余 353 对;活动队列为 134 completed、1 in_progress、352 pending,唯一下一项为 `TSN-PAIR-fuse-pad`。这条独立 Rotate 变异证据不等于全局注册 rotate mutation family 已关闭,`EX-TSN-04` 继续保持 in_progress。
|
||||
|
||||
@@ -77,7 +77,7 @@ EX-DOC-01 -> EX-DOC-03 ---------^
|
||||
|
||||
### P0-B:关闭跨特征拓扑命名
|
||||
|
||||
对应 `EX-KER-01`、`EX-TSN-04`。锁定 30-case corpus 已按 `9 Boolean + 11 PartDesign + 6 复合 Boolean + 4 dress-up` 逐案例执行原生属性编辑,30/30 都传播到最终 Shape,219/219 阶段几何恢复,657 条 before/edited/restored 阶段记录完成 fail-closed 对账;恢复状态再保存、重开、二次保存后的错误绑定、未解释关系和名称漂移均为零。FreeCAD 重算使 11 个 PartDesign 案例的 28 个 mutation 恢复阶段产生原生命名摘要演进;其中 `partdesign-plain` 与 `partdesign-midplane` 的 Body/Pad 共 4 个阶段已用第二次独立原生复跑分类为允许演进,恢复几何与初值一致且演进命名在 save/reopen/resave 后稳定,剩余 9 个案例/24 个阶段待解释。生产 Worker 五阶段链另有 5/5 几何编辑恢复,但顺序链只有 2/5 原生 builder,3/5 为通用 Shape 代理,rotate 缺少原生 mutation family,2/5 恢复用例的 5 个下游语义拓扑摘要发生变化,19 类生产操作的 361 个有序组合仅分类回放 4 个,因此门禁继续 fail-closed。
|
||||
对应 `EX-KER-01`、`EX-TSN-04`。锁定 30-case corpus 已按 `9 Boolean + 11 PartDesign + 6 复合 Boolean + 4 dress-up` 逐案例执行原生属性编辑,30/30 都传播到最终 Shape,219/219 阶段几何恢复,657 条 before/edited/restored 阶段记录完成 fail-closed 对账;恢复状态再保存、重开、二次保存后的错误绑定、未解释关系和名称漂移均为零。11 个 PartDesign 案例/28 个恢复命名阶段与生产链 2 个恢复拓扑案例/5 个下游阶段均已通过独立原生复跑分类为允许演进,恢复几何与初值一致且演进命名在 save/reopen/resave 后稳定。生产 Worker 五阶段顺序链仍只有 2/5 原生 builder,3/5 为通用 Shape 代理,rotate 仍缺注册 mutation family;19 类生产操作的 361 个有序组合现覆盖回放 8 个,其中 `fuse->rotate` 使用单输入 `BRepBuilderAPI_Transform` 和 15→22.5→15 独立角度变异,因此门禁继续 fail-closed。
|
||||
|
||||
### P0-C:关闭 App 文档语义
|
||||
|
||||
@@ -101,8 +101,8 @@ P1/P2 的 GUI 全量对标、其他工作台、代理模块和跨浏览器发布
|
||||
| --- | --- | --- | --- | --- |
|
||||
| M0 | 收口当前工作树 | `completed` | 将 TSN、Property、CAM/LinuxCNC 三组已有增量分别核对证据和边界,不再混入新功能 | 聚焦门禁、完整 `verify`、`git diff --check`、全部 JSON 解析通过;计划与报告无陈旧哈希 |
|
||||
| M1 | `EX-ORA-01` 运行时清册闭合 | `in_progress` | 对 352 个注册对象、1111 个启动 GUI command、19 个 source-only command、2 个 context-only command 和 GUI 工作流状态生成差异账本 | 每个候选均为 runtime-backed 或有机器可读排除原因;成功/禁用/失败/取消/恢复工作流未知项为零 |
|
||||
| M2 | `EX-TSN-04A` 漂移判定 | `in_progress` | 逐项解释 11 个 PartDesign case 的 28 个恢复命名摘要演进,以及五阶段链的 5 个恢复拓扑变化 | 每个差异都有 FreeCAD 复跑证据并被判定为稳定语义、允许演进或实现缺陷;未知项为零,缺陷有回归测试 |
|
||||
| M3 | `EX-TSN-04B` 转换矩阵闭合 | `after-M2` | 将 19×19 的 361 个有序操作对按原生输入/输出类型分类;原生允许的组合使用真实 builder 回放,原生拒绝的组合保存失败 oracle | 361/361 已分类;可执行组合的 history/naming/mutation/resave 通过;不可执行组合的原生错误可复现;不再用通用 Shape 代理冒充 feature builder |
|
||||
| M2 | `EX-TSN-04A` 漂移判定 | `completed` | 逐项解释 11 个 PartDesign case 的 28 个恢复命名摘要演进,以及五阶段链的 5 个恢复拓扑变化 | 每个差异都有 FreeCAD 复跑证据并被判定为稳定语义、允许演进或实现缺陷;未知项为零,缺陷有回归测试 |
|
||||
| M3 | `EX-TSN-04B` 转换矩阵闭合 | `in_progress` | 将 19×19 的 361 个有序操作对按原生输入/输出类型分类;原生允许的组合使用真实 builder 回放,原生拒绝的组合保存失败 oracle | 361/361 已分类;可执行组合的 history/naming/mutation/resave 通过;不可执行组合的原生错误可复现;不再用通用 Shape 代理冒充 feature builder |
|
||||
| M4 | `EX-DOC-01` Property 批次 | `after-M1` | 先做高复用 App 类型与链接/列表类型,再处理 Material、File、PythonObject 等带安全或工作台边界的类型 | 每批均具备原生值/状态/editor oracle、Facade codec、FCStd reopen/resave、Undo/Redo 和 Chrome 证据;opaque 数量只按机器报告下降 |
|
||||
| M5 | `EX-DOC-02/03` 文档闭环 | `after-M3+M4` | observer 顺序、事务 abort、局部重算失败、Extension、FeaturePython、copy/clone/delete/relink | 原生与浏览器事件序列一致;失败不污染最后有效状态;资源归零;随后再推进 `EX-DOC-04` |
|
||||
| M6 | `EX-ORA-02/KER/PART/PD/SK` 纵向切片 | `after-M2+M5` | 由 oracle 差异报告选择一个特征族,一次完成参数、失败、恢复、history、命名、FCStd 和 UI Task 生命周期 | 单特征全部证据通过后才选择下一族;不按整个工作台批量提升 exact |
|
||||
@@ -113,18 +113,18 @@ M3 不要求把 FreeCAD 本身拒绝的组合强行实现为顺序特征链。
|
||||
|
||||
### 6.1 微任务队列
|
||||
|
||||
机器真值为 `config/freecad-active-work-queue.json`,由 `generate:freecad-active-work-queue` 从原生报告生成,并由 `check:freecad-active-work-queue` fail-closed 校验。当前共 487 个微任务:119 `completed`、1 `in_progress`、367 `pending`;`maxInProgress=1`,唯一下一任务是 `TSN-DRIFT-002`。
|
||||
机器真值为 `config/freecad-active-work-queue.json`,由 `generate:freecad-active-work-queue` 从原生报告生成,并由 `check:freecad-active-work-queue` fail-closed 校验。当前共 487 个微任务:134 `completed`、1 `in_progress`、352 `pending`;`maxInProgress=1`,唯一下一任务是 `TSN-PAIR-fuse-pad`。
|
||||
|
||||
| 微里程碑 | 任务粒度 | 数量 | 状态 | 下一退出条件 |
|
||||
| --- | --- | ---: | --- | --- |
|
||||
| `ORA-GUI-BASELINE` | 1 个配置边界或 1 个 GUI 命令分片 | 106 | 106 completed | 已关闭:100/100 分片、1111/1111 命令状态、2 个上下文延迟命令均有证据 |
|
||||
| `ORA-GUI-WORKFLOWS` | 1 个命令族的 1 种工作流状态 | 7 | 7 completed | `PartDesign_Pad` 五态原生工作流、聚焦断言和 exact blocker 更新已关闭 |
|
||||
| `TSN-RECOVERY-DRIFT` | 1 个原生 case 或 1 个生产 mutation | 13 | 2 completed / 1 in_progress / 10 pending | `partdesign-plain` 与 `partdesign-midplane` 已分类为允许演进;当前只解释 `partdesign-reverse` |
|
||||
| `TSN-ORDERED-PAIRS` | 1 个有序操作对 | 361 | 4 completed / 357 pending | 每次只分类并回放一个 `from->to`,不按特征族批量关闭 |
|
||||
| `TSN-RECOVERY-DRIFT` | 1 个原生 case 或 1 个生产 mutation | 13 | 13 completed | 11 个 PartDesign case 与生产 `cut`/`rotate` 漂移均已分类为允许演进 |
|
||||
| `TSN-ORDERED-PAIRS` | 1 个有序操作对 | 361 | 8 completed / 1 in_progress / 352 pending | `fuse->rotate` 已关闭;当前只分类 `fuse->pad` |
|
||||
|
||||
`ORA-GUI-WORKFLOWS` 已按七步关闭:选定命令族、成功、禁用、失败、取消、恢复、更新 blocker/门禁。一步只新增一种原生状态证据,前一步未通过时不启动后一步。
|
||||
|
||||
`TSN-RECOVERY-DRIFT` 的 13 个独立任务按以下顺序执行:`partdesign-plain`(已完成,允许演进)、`partdesign-midplane`(已完成,允许演进)、`partdesign-reverse`(当前)、`partdesign-taper`、`partdesign-twoside`、`partdesign-pocket`、`partdesign-pocket-through`、`partdesign-pocket-midplane`、`partdesign-pocket-twoside`、`partdesign-pocket-taper`、`partdesign-pocket-up-to-face`、生产 `cut`、生产 `rotate`。每个任务只允许一种结论:稳定语义、允许演进或实现缺陷;不得以几何恢复代替命名解释。分类账本为 `config/freecad-recovered-naming-classification.json`,其原生 harness 哈希、两次运行一致性和持久化稳定性由 `check:freecad-recovered-naming-classification` 校验。
|
||||
`TSN-RECOVERY-DRIFT` 的 13 个独立任务已全部关闭;11 个 PartDesign case 记录在 `config/freecad-recovered-naming-classification.json`,生产 `cut`/`rotate` 记录在 `config/freecad-production-drift-classification.json`。两类 checker 都锁定原生 harness 哈希、两次运行一致性和持久化稳定性,且每项只有稳定语义、允许演进或实现缺陷一种结论。
|
||||
|
||||
100 个 GUI 分片分别对应 `ORA-GUI-SHARD-000..099`,每片覆盖排序命令全集中的 11 或 12 个命令。每片有独立报告、SHA-256、起止索引和退出条件;合并器要求 100 个区间连续、1111 个 ID 唯一且全集哈希一致。
|
||||
|
||||
|
||||
@@ -48,13 +48,32 @@
|
||||
- Oracle:352 个注册对象、348 个可实例化对象、4 个不可实例化对象、1111 个启动 GUI command、19 个 source-only command 和 2 个 context-only command 已分类;命令族的成功、禁用、失败、取消、恢复流程仍未穷尽。
|
||||
- Property:85 种运行时类型、5510 条记录中,22 种/4304 条为通用原生 codec,5 种/683 条为专用 codec,58 种/523 条仍为 opaque proxy。
|
||||
- Property status:15 类已观察状态均已进入类型化 Facade 行为;`LockDynamic` 和 `PartialTrigger` 已有原生事务证据,但完整 observer 与局部重算序列未关闭。
|
||||
- TSN:30/30 原生 mutation、219/219 几何阶段恢复通过;`partdesign-plain` 与 `partdesign-midplane` 的 4 个恢复命名阶段已通过第二次独立原生复跑分类为允许演进,剩余 9 个 PartDesign case/24 个阶段待解释。
|
||||
- 生产命名链:五阶段 5/5 几何恢复,但仍有 3/5 通用 Shape 代理、缺 rotate mutation family、5 个下游语义拓扑恢复漂移。
|
||||
- 有序操作:19×19 共 361 对,仅 4 对已有分类回放,357 对待原生接受/拒绝判定。
|
||||
- TSN:30/30 原生 mutation、219/219 几何阶段恢复通过;11 个 PartDesign case/28 个恢复命名阶段均已通过第二次独立原生复跑分类为允许演进。
|
||||
- 生产命名链:五阶段 5/5 几何恢复,2 个恢复拓扑 case/5 个下游阶段已分类为允许演进;仍有 3/5 通用 Shape 代理并缺注册 rotate mutation family。
|
||||
- 有序操作:19×19 共 361 对,8 对已有分类回放,353 对待原生接受/拒绝判定。
|
||||
- FCStd:支持的原生 codec 与未知资源保留已有证据,但所有对象/属性/Extension/Shape/ElementMap2/StringHasher 的 FreeCAD-Web-FreeCAD 双向变异未穷尽。
|
||||
- GUI:应用壳和代表性工作流已有浏览器证据,但动态命令、Task、对话框、焦点、上下文和逐工作台流程没有完整原生对照。
|
||||
- 发布:系统级 exact 为 false,`EX-REL-01` 为 pending,跨浏览器、长期运行和全模块 exact promotion 尚未开始。
|
||||
|
||||
### 2.4 可机器核对的完成度仪表盘
|
||||
|
||||
| 范围 | 当前值 | 已完成代表什么 | 下一个可关闭单元 |
|
||||
| --- | --- | --- | --- |
|
||||
| 兼容实现计划 | 83/83 completed | 已有可运行 Web 实现、门禁和能力边界 | 不再用该数字表示 exact 进度 |
|
||||
| exact 计划 | 5/52 completed,36 in_progress,11 pending | 仅 `EX-TSN-00..03` 与 `EX-PD-02` 达到自身验收范围 | `EX-TSN-04` 的恢复漂移与有序组合 |
|
||||
| 模块能力 | 0 exact / 26 compatible / 5 proxy / 3 development | 34 模块均有明确对外等级,无 unexplained | 任一模块提升前必须关闭其 exact task |
|
||||
| 原生 GUI 清册 | 1111 runtime / 19 source-only / 2 context-only | 命令 ID 和三种激活上下文已分类 | 选择下一命令族并逐个关闭五态 |
|
||||
| Pad GUI 工作流 | 7/7 completed | success/disabled/failure/cancel/recovery 和 blocker 已对齐 | 不因单命令族完成而关闭 `EX-ORA-01` |
|
||||
| TSN 30-case corpus | 30/30 mutation,219/219 几何恢复 | 几何传播与恢复已闭环 | 逐 case 解释 11 个命名漂移 |
|
||||
| TSN 恢复命名 | 11/11 case,28/28 stage 已分类 | 全部具备第二次原生复跑与稳定 resave | 已关闭该队列,保持分类门禁 |
|
||||
| 生产五阶段链 | 5/5 几何恢复,2/2 漂移 case 已分类,2/5 原生 builder | 漂移已解释且不错绑 | 逐 stage 去代理并补 rotate mutation family |
|
||||
| 19x19 有序组合 | 8/361 已分类回放 | 4 条五阶段转换与 4 条 `fuse->*` 已覆盖 | `TSN-PAIR-fuse-pad` |
|
||||
| Property codec | 27/85 类原生 codec,58 类 opaque | 4987/5510 记录可结构化处理 | 按 M04 顺序一次关闭 1 类 |
|
||||
| FCStd | 23 个往返场景,未知差异 0 | 已支持范围内的当前样本稳定 | 对每种对象/Property/资源做双向 mutation |
|
||||
| 活动微任务 | 487 项:134 completed / 1 in_progress / 352 pending | 队列满足 `maxInProgress=1` | 只允许执行 `TSN-PAIR-fuse-pad` |
|
||||
|
||||
仪表盘的任何数字变化都必须由配置/报告生成器证明;文档不能单独改变状态。
|
||||
|
||||
## 3. 目标架构和不可破坏边界
|
||||
|
||||
```text
|
||||
@@ -120,29 +139,42 @@ FCStd / STEP / IGES / mesh / CAM / engineering resources
|
||||
- `ORA-GUI-WF-005`:失败后在同一 Task 内修复 profile、提交、Undo/Redo、保存重开和二次保存,已完成。
|
||||
- `ORA-GUI-WF-006`:exact blocker、聚焦门禁和后继 TSN 队列已更新,已完成。
|
||||
|
||||
### 5.3 TSN 恢复漂移,13 项,执行中
|
||||
### 5.3 TSN 恢复漂移,13 项,已完成
|
||||
|
||||
按以下顺序一次解释一个 case:
|
||||
|
||||
1. `partdesign-plain`,已完成,分类为允许演进
|
||||
2. `partdesign-midplane`,已完成,分类为允许演进
|
||||
3. `partdesign-reverse`,当前唯一执行项
|
||||
4. `partdesign-taper`
|
||||
5. `partdesign-twoside`
|
||||
6. `partdesign-pocket`
|
||||
7. `partdesign-pocket-through`
|
||||
8. `partdesign-pocket-midplane`
|
||||
9. `partdesign-pocket-twoside`
|
||||
10. `partdesign-pocket-taper`
|
||||
11. `partdesign-pocket-up-to-face`
|
||||
12. 生产 `cut`
|
||||
13. 生产 `rotate`
|
||||
| 队列 ID | case | 唯一 mutation 轨迹 | 漂移 ordinal | 阶段数 | 状态 |
|
||||
| --- | --- | --- | --- | ---: | --- |
|
||||
| `TSN-DRIFT-000` | `partdesign-plain` | `Pad10.Length: 7 -> 7.75 -> 7` | `0,9` | 2 | completed / allowed_evolution |
|
||||
| `TSN-DRIFT-001` | `partdesign-midplane` | `Pad11.Length: 8 -> 8.75 -> 8` | `0,9` | 2 | completed / allowed_evolution |
|
||||
| `TSN-DRIFT-002` | `partdesign-reverse` | `Pad12.Length: 5 -> 5.75 -> 5` | `0,9` | 2 | completed / allowed_evolution |
|
||||
| `TSN-DRIFT-003` | `partdesign-taper` | `Pad13.Length: 6 -> 6.75 -> 6` | `0,9` | 2 | completed / allowed_evolution |
|
||||
| `TSN-DRIFT-004` | `partdesign-twoside` | `Pad14.Length: 7 -> 7.75 -> 7` | `0,9` | 2 | completed / allowed_evolution |
|
||||
| `TSN-DRIFT-005` | `partdesign-pocket` | `Pad15.Length: 8 -> 8.75 -> 8` | `0,9,11` | 3 | completed / allowed_evolution |
|
||||
| `TSN-DRIFT-006` | `partdesign-pocket-through` | `Pad16.Length: 5 -> 5.75 -> 5` | `0,9,11` | 3 | completed / allowed_evolution |
|
||||
| `TSN-DRIFT-007` | `partdesign-pocket-midplane` | `Pad17.Length: 6 -> 6.75 -> 6` | `0,9,11` | 3 | completed / allowed_evolution |
|
||||
| `TSN-DRIFT-008` | `partdesign-pocket-twoside` | `Pad18.Length: 7 -> 7.75 -> 7` | `0,9,11` | 3 | completed / allowed_evolution |
|
||||
| `TSN-DRIFT-009` | `partdesign-pocket-taper` | `Pad19.Length: 8 -> 8.75 -> 8` | `0,9,11` | 3 | completed / allowed_evolution |
|
||||
| `TSN-DRIFT-010` | `partdesign-pocket-up-to-face` | `Pad20.Length: 5 -> 5.75 -> 5` | `0,9,11` | 3 | completed / allowed_evolution |
|
||||
| `TSN-PROD-DRIFT-000` | 生产 `cut` | 五阶段链 cut 参数编辑/恢复 | 由生产报告锁定 | - | completed / allowed_evolution |
|
||||
| `TSN-PROD-DRIFT-001` | 生产 `rotate` | 五阶段链 rotate 参数编辑/恢复 | 由生产报告锁定 | - | completed / allowed_evolution |
|
||||
|
||||
每项必须得到且只能得到一种结论:FreeCAD 稳定语义、允许的命名演进、实现缺陷。实现缺陷必须增加回归测试;未知不能作为结论。
|
||||
|
||||
每个 case 再拆成六个不可合并的最小检查点:先锁定属性、初值/编辑值/恢复值和漂移 ordinal;再执行第二次独立 FreeCAD 1.1.1 探针;然后逐阶段比较 geometry/relation/semantic-name 三摘要;接着验证恢复阶段与保存前 nominal 一致;再验证 save/reopen/resave 三态不继续漂移;最后写入分类账本、运行聚焦 checker 并只推进一个队列项。任一检查点失败时,当前任务保持 `in_progress`,不得领取下一 case。
|
||||
每个 case 再拆成六个不计入 487 项队列总数、但必须依次完成的最小检查点:
|
||||
|
||||
### 5.4 TSN 有序操作对,361 项,4 完成/357 待办
|
||||
| 检查点 | 唯一产物 | fail-closed 验收 |
|
||||
| --- | --- | --- |
|
||||
| `-A-contract` | case id、target object/type、property path/type、before/edited/restored、drift ordinal | 与锁定 30-case oracle 一致,属性确实可编辑 |
|
||||
| `-B-replay` | 第二个独立 FreeCAD 1.1.1 进程报告 | 版本、commit、harness SHA-256 和运行状态锁定 |
|
||||
| `-C-fingerprint` | 每个漂移阶段的 geometry/relation/semantic-name 三相摘要 | 参考与复跑的 before/edited/restored 逐字段一致 |
|
||||
| `-D-restore` | property 恢复、geometry 恢复、restored-to-nominal 结论 | 任一阶段几何未恢复即停止并调查缺陷 |
|
||||
| `-E-persistence` | initial/reopened/resaved 命名摘要 | roundtrip/resave drift 为 0,且三态与 restored 一致 |
|
||||
| `-F-decision` | stable_semantics / allowed_evolution / implementation_defect 唯一分类 | 决策进入连续前缀账本,checker 通过,只推进直接后继 |
|
||||
|
||||
任一检查点失败时,当前任务保持 `in_progress`,不得领取下一 case。如果分类为 `implementation_defect`,还必须在同一队列项内完成最小修复、回归测试、原生/Web 对照和资源释放,不另行跳过。
|
||||
|
||||
### 5.4 TSN 有序操作对,361 项,8 完成/1 进行中/352 待办
|
||||
|
||||
操作全集为 Fuse、Cut、Common、Rotate、Pad、Pocket、Loft、Pipe、Revolution、Groove、Fillet、Chamfer、Hole、Draft、Thickness、LinearPattern、PolarPattern、Mirrored、MultiTransform。
|
||||
|
||||
@@ -157,7 +189,7 @@ FCStd / STEP / IGES / mesh / CAM / engineering resources
|
||||
7. 在生产 Worker 回放并检查释放。
|
||||
8. 拒绝时固定原生错误类型和文档未污染证据。
|
||||
|
||||
已覆盖的四对为 `cut->rotate`、`rotate->fillet`、`fillet->mirrored`、`mirrored->linear-pattern`。其余严格按机器队列逐对领取。
|
||||
已覆盖的八对为 `cut->rotate`、`rotate->fillet`、`fillet->mirrored`、`mirrored->linear-pattern`、`fuse->fuse`、`fuse->cut`、`fuse->common`、`fuse->rotate`。当前只处理 `fuse->pad`,其余严格按机器队列逐对领取。
|
||||
|
||||
## 6. 后续关键路径微里程碑
|
||||
|
||||
@@ -183,11 +215,11 @@ FCStd / STEP / IGES / mesh / CAM / engineering resources
|
||||
|
||||
### M02 `EX-TSN-04A` 恢复漂移闭合
|
||||
|
||||
状态:`TSN-DRIFT-000..001` 已完成,执行 `TSN-DRIFT-002`。
|
||||
状态:13/13 已完成;11 个 PartDesign case/28 个阶段及 2 个生产 case/5 个阶段均完成独立复跑分类。
|
||||
|
||||
- M02.1-M02.11:11 个 PartDesign case,逐 case 解释 28 个命名摘要演进;当前完成 2/11 case、4/28 阶段,剩余 9/11 case、24/28 阶段。
|
||||
- M02.12:生产 Cut 恢复拓扑漂移。
|
||||
- M02.13:生产 Rotate 恢复拓扑漂移。
|
||||
- M02.1-M02.11:11 个 PartDesign case/28 个命名摘要演进已全部分类为允许演进。
|
||||
- M02.12:生产 Cut 恢复拓扑漂移已分类为允许演进。
|
||||
- M02.13:生产 Rotate 恢复拓扑漂移已分类为允许演进。
|
||||
- M02.14:若发现实现缺陷,只修改一个 operation/case 并补回归。
|
||||
- M02.15:汇总 zero-unknown drift gate,不直接提升系统 exact。
|
||||
|
||||
@@ -195,7 +227,7 @@ FCStd / STEP / IGES / mesh / CAM / engineering resources
|
||||
|
||||
### M03 `EX-TSN-04B` builder 与 19×19 转换矩阵
|
||||
|
||||
状态:等待 M02。
|
||||
状态:`in_progress`;已覆盖 8/361 对,当前执行 `TSN-PAIR-fuse-pad`。
|
||||
|
||||
- M03.1:用真实 builder 替换五阶段链中 Cut 之后的通用 Shape 代理,一次替换一个 stage。
|
||||
- M03.2:增加 Rotate 原生 mutation family。
|
||||
@@ -241,7 +273,7 @@ FCStd / STEP / IGES / mesh / CAM / engineering resources
|
||||
|
||||
### M06 `EX-KER-01/ORA-02` 内核纵向切片
|
||||
|
||||
状态:等待 M02+M05 的可消费证据。
|
||||
状态:M02 证据已可消费,等待 M05 文档闭环。
|
||||
|
||||
按一个 builder/参数分支执行 A-I:Box、Cylinder、Cone、Sphere、Torus、Prism、Wedge、Helix、Ellipsoid;Extrusion、Revolution、Loft、Sweep;Fuse、Cut、Common;Fillet、Chamfer;随后是 tolerance、healing、validation 和失败诊断。
|
||||
|
||||
@@ -386,4 +418,10 @@ M00
|
||||
|
||||
`TSN-DRIFT-001` 已完成:`partdesign-midplane` 的 `Length 8 -> 8.75 -> 8` 在 Body11 和 Pad11 两个阶段恢复相同几何,关系与语义命名摘要演进为新的稳定历史。锁定报告与第二次独立 FreeCAD 1.1.1 复跑的逐阶段摘要一致,演进值在 save/reopen/resave 中保持,因此同样分类为 `allowed_evolution`,不是 Web 实现缺陷。
|
||||
|
||||
当前唯一下一任务为 `TSN-DRIFT-002`:只解释 `partdesign-reverse` 的恢复命名阶段。退出条件仍是第二次原生复跑一致、恢复几何一致、持久化稳定,并且在稳定语义、允许演进、实现缺陷三者中得到唯一机器可读结论。
|
||||
`TSN-DRIFT-002` 已完成:`partdesign-reverse` 的 `Length 5 -> 5.75 -> 5` 在 Body12 和 Pad12 两个阶段恢复相同几何,关系与语义命名摘要演进为新的稳定历史。锁定报告与第二次独立 FreeCAD 1.1.1 复跑的逐阶段摘要一致,演进值在 save/reopen/resave 中保持,因此同样分类为 `allowed_evolution`,不是 Web 实现缺陷。
|
||||
|
||||
`TSN-DRIFT-003` 已完成:`partdesign-taper` 的 `Length 6 -> 6.75 -> 6` 在 Body13 和 Pad13 两个阶段恢复相同几何,关系与语义命名摘要演进为新的稳定历史。锁定报告与第二次独立 FreeCAD 1.1.1 复跑的逐阶段摘要一致,演进值在 save/reopen/resave 中保持,因此同样分类为 `allowed_evolution`,不是 Web 实现缺陷。
|
||||
|
||||
`TSN-DRIFT-004..010` 与生产 `cut`/`rotate` 漂移均已完成独立复跑,并唯一分类为 `allowed_evolution`;恢复漂移队列因此以 13/13 关闭。`fuse->fuse`、`fuse->cut`、`fuse->common`、`fuse->rotate` 的新增分类与既有五阶段四条转换合计覆盖 8/361 对。
|
||||
|
||||
当前唯一下一任务为 `TSN-PAIR-fuse-pad`。退出条件是记录原生接受或拒绝;接受时必须具备真实 builder、mutation/restore、history/naming 与 FreeCAD save/reopen/resave 证据,拒绝时必须固定原生错误与无文档污染证据。
|
||||
|
||||
Reference in New Issue
Block a user