Skip to content

test(research): observe dual-axis WindTerm resize and replay it in core - #316

Merged
JavaZeroo merged 6 commits into
mainfrom
agent/r29-dual-axis/record-hidden-retention-2e7373117ea0
Nov 5, 2026
Merged

JavaZeroo merged 6 commits into
mainfrom
agent/r29-dual-axis/record-hidden-retention-2e7373117ea0

Conversation

@JavaZeroo-Bot

@JavaZeroo-Bot JavaZeroo-Bot commented Nov 4, 2026 •

Copy link
Copy Markdown
Collaborator

背景

#27/#29 仍缺“主屏同一窗口动作同时缩宽+缩高后视口/滚动选择与后续 CUP/DSR”的原版证据;只缩宽(#309)、顺序宽高组合(#308)与隐藏帧七阶段(#315)都不足以决定该场景。本 PR 新增一个预先冻结的最小探针,完成一次授权原版观察,并据此增加当前核心的有界工程回放。

改动

  • 新增 resize_dual_axis_reference(探针 + 控制器 + 严格导出器 + 离线测试;CMake/CTest 注册):
    • 固定三阶段:91×20 正文 → 一次窗口动作 61×14 → 固定 CUP(7;2)+"DQ"+DSR → 一次窗口动作恢复 91×20 + DSR。
    • 只保存实际 NAWS 事件数/顺序,不假定单窗口请求在传输层原子;每个稳定端点先记录实际几何/NAWS/capacity 再断言固定预测。
  • 新结果与严格公开件:README、strict-export.json(SHA256 95ad9c5b…)、validation.json。计划 3beabf9a…、单次 .attempted 标记、参考 EXE 7b10531d…/4047 清单 e459adf2… 均由严格出口核验。
  • 新增 resize_dual_axis_core 工程回放(11 项检查):保留行在双轴事务后仍完整;固定写后该编辑行按当前 61 列足迹物化为记录中的 DQ+58 空格+w(62 字符);DSR 在写后与恢复后均为 7;4。未修改生产实现。
  • 更新 FEATURES/EVIDENCE;严格导出器接受本轮观测到的有界裁剪/写入行形态,不放宽旧断言。首次严格导出曾因白名单拒绝实际裁剪/写入行(失败保留);修正仅限离线白名单/导出器,复用同一原始录制/计划/.attempted,未重跑原版。

身份分层

身份 内容
冻结原版运行源 提交 dee3c78…;10 个执行源哈希与严格出口的 execution_source_files_sha256 一致;计划/attempted 见上
离线严格出口 提交 2fc3f25… 的导出器/白名单;严格出口 offline_export_source_files_sha256 已核对,未倒填为原运行源
核心回放/本地测试源 同一提交 2fc3f25… 的 resize_dual_axis_test.cpp 与 CMake 注册;不是原版运行源
文档 早期报告 1e41fc7…;本次边界修正 aed6333…/e3296fc…

实测(一次原版运行,写后端点)

阶段 窗口 NAWS 事件数 DSR scroll 文档行 11
initial 1360×749 91×20 1 19;7 0 89 空格+uvw(92)
缩放 + CUP(7;2)+DQ 后 1000×569 61×14 2 7;4 5 DQ+58 空格+w(62)
恢复 + DSR 1360×749 91×20 3 7;4 5 同上(62)

证据边界:阶段 1 的正文端点是“缩放后又执行 CUP+写入”之后的结果;录制中没有“缩放后、写入前”的原版正文端点,因此无法判断裁剪/物化发生在 resize、CUP 还是写入。pre-write 保留完整 92 字符只是 TermForge 核心工程不变量,不是已验证的原版差异。#308 顺序样本没有同样的后续写入干预,不能作为裁剪差异对照;不据此裁决双轴与顺序 resize 的裁剪差异,也不证明宽高交换律。

本地验证

  • 双轴离线测试:Python 28 项 OK(普通/-O 由 CTest 注册)、Node controller 13/13 通过、0 原版/0 socket。
  • 核心:resize_dual_axis_core 1/1(11 断言),默认核心 CTest 38/38 通过。
  • 严格导出成功,公共件哈希与计划/attempted/来源身份一致;新 head 另有 CI 结果。

边界

JavaZeroo-Bot and others added 3 commits November 5, 2026 03:04
Add a new independent probe for the missing #27/#29 original observation:
one window action simultaneously narrows 91x20 to 61x14, then a fixed
CUP(7;2)+"DQ" write and DSR are sent, and a second window action restores
91x20 before the final DSR. The controller records actual NAWS event count
and order instead of assuming an atomic two-axis transport event, and the
strict exporter accepts only finite source-derived ASCII lines with one
bounded write line.

The old combined/height/width probes and their frozen records are unchanged.
Offline Python and Node controllers pass; no original run has happened yet.

Co-authored-by: JavaZeroo <[email protected]>
Publish the one authorized dual-axis original capture and its strict export:
one window action 91x20 -> 61x14 followed by CUP(7;2)+"DQ"+DSR, then restore
to 91x20. The capture recorded NAWS 1->2, scroll 5, DSR 7;4 before and after
the restore, and a 62-character written row " DQ"+58 spaces+"w".

Add resize_dual_axis_core: the retained row is still full before the fixed
write, the edited row materializes to the observed 62-character form, and the
protocol DSR is 7;4 at both points. The old six-stage B/CD native-sync failure
is not explained or relaxed, and no production behavior was changed.

Update EVIDENCE/FEATURES and accept the bounded clipped/write form in the
dual-axis strict exporter.

Co-authored-by: JavaZeroo <[email protected]>
Record that the first strict export refused the observed clipped/write row
before writing mechanics-check.json. The correction stayed offline (document
line whitelist/exporter) and reused the same raw recording, plan and
.attempted marker; the original was not rerun.

Co-authored-by: JavaZeroo <[email protected]>
@JavaZeroo

Copy link
Copy Markdown
Owner

@JavaZeroo-Bot 本轮交付核验暂不合并 #316。请在原 ticket 2e7373117ea0e21d783b8ef977a13581 修正下列证据边界,保持单 worker、Flash 优先。允许修改报告/身份记录、必要离线验证并推送新 head;本轮不是要求重跑原版或接管实现,不触发 Codex review。

  1. 不能将写后结果归因为 resize 本身裁剪。 当前 strict-export.json 的三个正文观测端点为 initial-body、dual-shrunk-with-write、dual-restored-unmodified;阶段1已执行 CUP(7;2)+DQ,尚未看到“缩放后、写入前”的原版正文观测。与此同时核心回放明确记录 resize_preserving 后保留完整92字符、直到固定写入才物化为62字符。因此 README 中“原版此处已裁剪/滚动”以及“同一动作同时缩宽缩高却得到裁剪行,与顺序#308不同”等表述超出了当前证据:顺序样本没有相同的后续写入干预,不能据此裁决双轴 resize 与顺序 resize 的裁剪差异。

请逐处核对 PR正文、README、FEATURES/EVIDENCE、validation与测试合同说明,将已观测事实限定为“缩放+后续CUP写入后的行/DSR/scroll结果”;明确裁剪/物化发生在resize、CUP或写入哪个时点未知,pre-write保留检查目前只属于产品工程不变量,不是已验证的原版差异。若原始冻结录制确实已有独立pre-write正文观察,可只读提取并给出精确来源;没有则保持缺口,不篡改旧录制、不通过重新解释最终结果补造中间态。原版实际NAWS/CUP/DSR/写后文本及现有11项核心工程测试仍可交付,不需丢弃。

  1. 精确区分取证源与离线出口/回放源。 validation.json 当前 source_commit=dee3c78 且 source_binding称严格出口与core replay使用该committed source;但提交历史显示离线白名单/导出器修正和core replay是在2fc3f25添加。请分别记录冻结运行源、实际离线出口文件哈希及适用提交、核心回放/本地测试源码身份、文档提交;不能将后加代码绑定到原运行基点。已有 strict-export.offline_export_source_files_sha256 可用来核对,不要把新环境倒填为旧provenance。保留第一次严格导出失败与仅离线修正事实。

出口:修正后新的head、准确的观测/工程/未知分界与身份说明,必要定向检查及属于新head的CI。此处未批准任何新产品行为或取消原版差异,#27/#29仍OPEN。调度者读回核验后再合并。若仍缺来源而不能交付,明确阻塞及解除条件,不无限重试。

@JavaZeroo-Bot

Copy link
Copy Markdown
Collaborator Author

On it: correcting #316's evidence boundaries without rerunning the original. I will limit the claimed facts to the post-resize CUP/write endpoint, mark clipping attribution and the #308 comparison as unknown, and split the frozen run source from the later offline-export/core-replay source identities in validation and reports.

JavaZeroo-Bot and others added 3 commits November 5, 2026 05:55
Limit the recorded fact to the post-resize CUP+write endpoint: no original
pre-write body observation exists, so clipping/materialization cannot be
attributed to resize, CUP or the write, and the sequential #308 sample is not
a comparable control. Pre-write full-row retention remains only the core
engineering invariant.

Split the frozen original-run source identity from the later offline exporter
and core-replay source identities in validation, and record the offline export
correction without rerunning the original.

Co-authored-by: JavaZeroo <[email protected]>
Set the validation documentation identity to the correction commit without
changing the frozen run, plan or .attempted marker.

Co-authored-by: JavaZeroo <[email protected]>
Record the attribution correction and the validation/identity correction as
separate documentation commits; neither reran the original or changed the
frozen source/plan/attempt identity.

Co-authored-by: JavaZeroo <[email protected]>
@JavaZeroo
JavaZeroo merged commit 8b9c977 into main Nov 5, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants