## 用户结果与范围 原八会话 data-only 工作流在输出仍进行时可靠验证替换会话的精确文字、身份与生命周期。处理 #51 修复回归中发现的独立失败;不改原 32000 条/2048000 字节源、4096 字节分块、五轮替换、期限和完整文字断言,不扩大 #53 的已验限定合同。 ## 已观察事实 候选 .5 / 固定官方 ConPTY 1.25.260930003 / flags24,产品源码 57f24f5,shell SHA-256 4e23e277ea7984d85856b713b3af5b0545d68042c2bbd42a8422f8a6b422c28d: - 首次完整 CTest 的 workflow_sessions 失败于 `replacement core payload/role mismatch`;cycle1 F5 的编号127只显示12个点,预期35个点。 - 相同二进制再次完整回归,第一轮通过,第二轮在 cycle2 F5 的同编号/同截断位置失败。 - 两次源文件均已写16384字节,末端输出队列仍有8217字节;观察到的文字是预期文字的精确前缀,不是其他角色的文字。native/transport完整性及后续是否补全尚未直接取证。 - 预先限定的旧 .4 shell和新 .5 shell各一次对照均通过;不能据此证明失败是既有缺陷,也不能宣称新策略不存在回归。 - 源码 `workspace_workflow_scenario.hpp` stage35 仅等待 source≥4096及任意编号前缀,再采集 `cycle-eight`;验证器要求命中的每条编号记录完整。该时序门槛可能采到正常进行中的半行,这是待证伪假设。 原件保持本地;[PR #89 的固定公开记录](https://github.com/JavaZeroo/termforge/blob/ab360c7/experiments/conpty/results/2026-10-27-native-viewport-resize/validation.json)已附白名单状态与哈希。最终产品源92eac12的完整回归中本方法通过,不能解释前两次失败或关闭本项。没有修改 oracle 或靠重跑取绿关闭问题。 ## 交付与验收 - [x] 固定失败 source/binary/源/队列/快照,建立无人值守可真红反馈;区分真实文本损失与过早观测。 - [x] 在原负载与期限内证明半行的去向和完成边界;必要时使用有界源/transport/consumer观测,不操作个人剪贴板/输入桌面。 - [x] 若是观测时机,修正 readiness 并保持所有精确文字/身份断言;若是实际丢失,修产品实现。保留同一输入修前红与修后绿及必要负例。 - [x] 最终同源码两轮原完整八会话、完整声明配置回归与自有 Job/desktop 回收。后续单次未复现不能回填旧原因。 父项 #47;同时关联 #38/#53。本切片已限定交付,不再是 #47 的开放阻塞;完整官方后端仍有其他未完成前置。正式核心/后端决定仍归 #34。 ## 限定结项 [PR #91](https://github.com/JavaZeroo/termforge/pull/91) 已合入实验父分支,产品源码 `c662011`,审查后 head `3a0561c`。受控真实消费链证明旧判据能在半行处采样而红,同 session 后续实际字节补齐;被动等待方案因生产结束而红,未采用。最终使用默认关闭、256B/原70秒有界的 LF 检查点,两个替换会话保持后采样并释放,关闭也解除且拒绝重新启用。 最终同源码两轮原完整八会话 data-only 均通过,各五轮替换仍在输出、Job0/desktopgone;完整官方配置 CTest **56/57、402.66秒、8项内部skip**,唯一失败为 #52 Vim stage59。关闭 guard 有真实修前红/修后绿。两轴审查无阻塞;[固定公开证据](https://github.com/JavaZeroo/termforge/blob/3a0561cc5148ec3c3aaf8f3f9e808b34f416f2e5/experiments/shell/results/2026-10-27-workflow-record-checkpoint/validation.json)及[机制边界](https://github.com/JavaZeroo/termforge/blob/3a0561cc5148ec3c3aaf8f3f9e808b34f416f2e5/docs/research/workflow-record-checkpoint.md)已入库。 历史两份失败缺失的 native 后续不追溯补造;受控新运行的后续 trace 超限只保留前缀,所需补齐字节仍可核对。四次未复现、被否定方案、关闭红例未独立保留 EXE 哈希,以及不同源码的57/57均单列。限定交付不关闭 #52/#63/#47,也不验收真实CF/IME、性能或完整后端。 PR91 head `3a0561c` 的 [Build](https://github.com/JavaZeroo/termforge/actions/runs/40414790308) 和 [External candidate](https://github.com/JavaZeroo/termforge/actions/runs/40414790133) 均通过,实际 checkout `3fdd147`。Windows default/system 52/52、278.50秒;Linux默认33/33、11.02秒;候选的 core+checkpoint Windows/Linux 各2/2。它们不替代本机official结果。合并提交 `44ea45b988b6bb0b72f21cd24597fe54b9b4ec31`,仅限定关闭本项的合成检查点问题,历史未知保留。
Activity
JavaZeroo commentedon Oct 31, 2026
审计说明:本项关闭时没有留下可引用的结论
核对 R2 证据缺口时发现本项:
docs/EVIDENCE.md中没有对应行标题「定位替换会话检查点的编号输出半行失败」描述了一次调查,但仓库里没有保存结论的载体。
影响
与同批关闭的 #88 相同:无法判定是否定位到根因,也无法判断结论在会话/检查点实现演进之后是否仍成立。里程碑审计不能把它计入"已验证"。
建议
同样二选一:在当前 main 上重新取证并落进
docs/EVIDENCE.md,或在正文/评论写明结论已作废及取代者。本评论只记录审计发现,不重开本项。