## 范围与已确认原因 处理固定候选 .4 × 官方 ConPTY 1.25.260930003 / flags24 的连续 GUI resize stage43。原生 ReadConsoleOutputW 同次采样的行是完整 TF_SIZE_100x28,候选末屏却是 TF_SIZE_100x28OW;原运输与 resize 时序可逐步重放。通用 reflow 在增长时拉回终端历史、跨历史边界合并或移除底行,与原生可见区随后使用的绝对坐标布局不一致。 原诊断由 #55 / PR #64 冻结联合基线,PR #67 提供有界捕获/重放;PR #77 的 eae4b6a 再次复现。旧输入、flags、精确断言、期限和原失败保留;没有删除 OW、改子串、取消 Unicode、清屏或延长期限。 ## 已完成的限定实现 [PR #89](https://github.com/JavaZeroo/termforge/pull/89),产品源 `92eac12d5cd2868b469e8b9a10e68f5e20ee2cb0`,审计证据 `ab360c7aebeb8e9afb5e61d386081abd8e3e8278`,基 `e0b4d67`: - [x] 原 .4 实际重建后 stage43 真红;原9065字节运输/resize完整重放;误用旧mtime造成的错误源码/二进制配对已明确排除。 - [x] 原生快照、真实 child 尺寸 ack、transport、候选和 GUI 分别留证。六组 ASCII 合成用例的原生行/光标是独立预期,同二进制默认策略全部有差异。 - [x] 新增显式 native_viewport,只用于候选/官方窗口;保留历史、逻辑续行、光标、真实空格及底行。默认 reflow_history 不变;版本身份 .5。审查发现的默认空格复制回归已有同输入真红/修后绿。 - [x] 最终原 resize 两轮、resize-close、Unicode 两轮、原捕获重放通过,精确行/位置/历史/Unicode/child ack及Job0/desktop回收保持;Rust 157+2+2+2 单测和1 doc test通过。 - [x] Standards/Spec 实现与最终公开证据均通过;30个公开合成capture与Git字节哈希一致,原GUI原件保留本地。 - [x] PR #89 已按验收 head `259e036` 合入实验父分支,merge `2d69663e314b735897ddfb413667fbd26848fe57`。最终 [Build 40402620914](https://github.com/JavaZeroo/termforge/actions/runs/40402620914) 与 [Candidate 40402620642](https://github.com/JavaZeroo/termforge/actions/runs/40402620642) 均成功;Windows default/system 51/51、271.66s,实际 checkout `ccce9e2c572d64abb91983e03301572132a1b2ed`。候选 CI 旧 .4 预期的真实失败已通过精确 .5 同步修正,本地6/6;不同配置不混算。本项限定关闭,父 PR #50 仍 Draft。 ## 完整回归与限制 最终同源码候选/官方 CTest **54/56、411.59秒、12项内部skip**。#52 Vim stage59与#88第二轮工作区恢复stage1失败;同轮workflow_sessions通过,但之前两次编号半行失败仍由#87处理。#63旧失败原因也不因这次未复现而回填。不能将默认/system CI、独立候选CI及本地官方局部绿拼成完整通过。 [原因与无人值守复现](https://github.com/JavaZeroo/termforge/blob/ab360c7/docs/research/native-viewport-resize.md) · [固定验证/六组公开原件](https://github.com/JavaZeroo/termforge/blob/ab360c7/experiments/conpty/results/2026-10-27-native-viewport-resize/validation.json) 父项 #47。完整 resize/历史/Find/模式交叉归#29,选型归#34,完整R1/R2、真实CF/IME组合、实际呈现及WindTerm等价未验收,presented_done保持null。
Activity