Repository navigation
fix(input): preserve activation and navigation semantics across input sequences - #727
Closed
lanyue-llk wants to merge 1 commit into
Closed
lanyue-llk wants to merge 1 commit into
lanyue-llk wants to merge 1 commit into
Conversation
lanyue-llk
force-pushed
the
codex/input-activation-lifecycle
branch
from
September 22, 2026 04:23
1fb7c73 to
a25a2c7
Compare
lanyue-llk
changed the base branch from
codex/browser-engineering-reliability
to
codex/layout-geometry-visibility
September 22, 2026 04:23
Contributor
Author
|
由 #736 替代:基于 main@2793b2407,PR 作者和所有新增提交的 GitHub author/committer 已核验关联 lanyue-llk。原分支、提交和本 PR 的讨论保留;这里只关闭被替代的 PR,不删除分支。新的 CI 与逐 case 验收记录归属替代 PR,旧版本测试结果不冒认为新版本结果。 |
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.
Enter 已送达输入框却没有触发表单默认提交,或者按键/点击触发导航后,收尾事件被错误地当作失败。WebDriver 还需要与原生输入共享焦点、命中和默认激活语义。
修复机制
将协议转换留在适配边界,核心输入层负责焦点和默认激活;输入阶段使用事件类型表达。点击预检验证遮挡与 frame 祖先关系,导航切换后的收尾按所属生命周期处理,不吞掉无关错误。
ClassicClickPreparation在协议边界将动态值转换为Dom/Pointer { point, viewport },使指针路径所需数据随状态一起携带;这符合 Rust API Guidelines 的类型表达语义原则。以上图片为原报告中的机制示意,非本 PR 的实测截图,也不代表本 PR 已通过验收。来源:五方法报告解读。图片链接固定到证据提交,避免报告更新改变 PR 内容。
对应验收
历史 1.1.9 失败 case:
274、465、731额外回归验收:
386(1.1.9 通过,在 main@de109 的完整基线中因 Enter 与导航切换冲突失败;不计入历史 34 个失败 case)。这些编号描述验收责任,不代表已证明本 PR 独立修复。原大 PR 的历史 90/90 不作为本 PR 的测试结果。
功能回归覆盖:Enter/换行、焦点、取消默认动作、遮挡、跨 frame、默认 Mock 和真实布局、导航前后输入失败边界。
原报告对应 Enter 默认提交及导航收尾错误;本轮 main 完整基线中
274、465、731、386均失败。独立分区不借用组合版本的通过结果。a25a2c7b63242ebd→ #725 ·f13e9f42→ main72413280后续真实任务仅针对历史失败集合,保留固定动作与评分规则。功能验收范围为原 1.1.9 的 34 题加 1.1.8 已失败的
386,共 35 题;历史67的传输超时另存证据,不归因本 PR 修复。原 11 类分组与原测试改名/替代对应可供审查。范围与依赖
从 #640 拆出,原 PR 和原分支保留。本 PR 依赖布局 #726,并以其分支为目标;diff 只展示输入层修改。几何查询必须反映 DOM 和样式变化,输入层的点击预检依赖 #726 提供的通用布局快照失效机制。
独立 CI 已揭示该依赖:旧输入 HEAD
1fb7c73f在插入遮挡 iframe 后仍允许点击、隐藏遮挡层后仍拒绝点击,两项测试均失败。现保留测试与输入修改不变(rebase 前后 patch-id 相同),将基线改为布局分区;新 HEAD 的 CI 和真实 4 题验收确认修复结果。未加入 iframe 特例。完整对应关系:拆分 PR 索引、逐 case 历史失败及归属。