Repository navigation
fix(core): keep hidden retained cells across height-only resizes (#27) - #311
Merged
Merged
Conversation
Co-authored-by: JavaZeroo <[email protected]>
resize_preserving fitted the hidden frame to the current protocol width on every height transaction, so a hidden primary that retained a wider source row after an earlier width shrink lost its right tail when only the height changed. Fit the hidden frame only when the width itself changes; keep the separately recorded hidden-width policy unchanged. The engineering test covers hidden live rows, rows appended to primary history and the unchanged hidden-width behavior. It is not an original behavior oracle; the preserved hidden-height recording still fails its strict audit. Co-authored-by: JavaZeroo <[email protected]>
Record the RED/GREEN height-only retention checks, the unchanged combined and transaction results, and the blocked original hidden-height audit so the engineering invariant is not mistaken for original evidence. Co-authored-by: JavaZeroo <[email protected]>
6 of 10 tasks
Open
This was referenced Nov 4, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
背景
继续 #27(接续已合并的 #308/#309/#310)。本轮处理 #27 剩余清单中的「隐藏帧/保存光标交叉」:正式 Qt 路径在 #310 接入
Screen::resize_preserving后,备用屏(TUI)活动期间只调整窗口高度会触发隐藏主屏高度事务。缺陷与修复
修复前,
resize_preserving不论宽度是否变化,都把隐藏帧的 live 行和移入历史的行裁剪到当前协议宽度。隐藏主屏若在先前缩宽后保留了宽于当前宽度的源行(如固定 75 B 样本的 89 空格 +uvw尾),随后仅改变高度就会永久丢失右尾;返回主屏后正文、选择与 Find 源文本随之缺失。该行为与 ADR-0010 已确认的正文保留方向冲突,且在当前正式 Qt 路径可达。修复:隐藏帧只在宽度实际改变时适配到新协议足迹(沿用既有隐藏宽度证据策略);纯高度变化保留隐藏 live 与追加历史的源 Cell。活动帧不受影响。
改动
0f4b4d1:迁移暂停分支的隐藏主屏高度原版探针工具(冻结探针、导出器、离线测试与 CTest 注册;不发布原版结果)。6158f1b:Screen::resize_preserving修复 + 新resize_hidden_height_test(隐藏 live 保留、历史前缀保留、隐藏宽度变化仍适配足迹)+retained_resize_hidden_height_core门禁。df1c32c:结果报告、validation.json、FEATURES/EVIDENCE 更新(同时修正 Qt 已接入保留事务的过期描述)。验证(本工作树实测)
hidden/height-only失败:隐藏 live 行丢失保留尾;返回主屏正文丢失qt_terminal_modes_retained12/12)--resize诊断环境:Windows 11 x64、VS 2022 17.12.6、MSVC 19.42.34433.0、Qt 6.10.3 offscreen、固定 ConPTY 1.25.260930003、Release。身份与哈希见 validation.json。
边界