Repository navigation
fix(layout): keep on-demand geometry consistent with document changes - #726
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
This was referenced Sep 22, 2026
Contributor
Author
|
由 #735 替代:基于 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.
页面中的元素已经存在,却返回零面积或旧位置,导致可见元素选择和点击无法继续。该修改修复 inline 片段几何与按需布局失效,让几何消费者读取与当前 DOM、样式和布局环境一致的冻结快照。
修复机制
保留 native DOM + Stylo 作为状态来源;输入变化在所属模块标记几何失效,几何请求按需重算并发布冻结结果。片段生成保留空白、block-in-inline 和相对定位的正确包含块语义。默认 Mock 模式不升级为持续布局。
以上图片为原报告中的机制示意,非本 PR 的实测截图,也不代表本 PR 已通过验收。来源:五方法报告解读。图片链接固定到证据提交,避免报告更新改变 PR 内容。
对应验收
历史 1.1.9 失败 case:
29、66、108、156、163、196、314、349、374、389、399、404、415、418、441、448、506、547、576、585、590、595、620、640、645、658、666、714这些编号描述验收责任,不代表已证明本 PR 独立修复。原大 PR 的历史 90/90 不作为本 PR 的测试结果。
五个原有几何测试改名并更新了过时的行为预期:从“必须等待绘制才能读取新几何”改为“首次精确读取刷新、后续干净读取复用”。测试仍验证实际尺寸、文本和缓存复用,未删除对应场景。
功能回归覆盖:几何数值、inline 边界、样式收养/撤销、资源变化、多次读取缓存行为及默认 Mock 策略。
3 个功能见证在未修复的 main 上真实失败:内联碎片、动态 offsetParent/尺寸、rem/rlh;新 HEAD 的完整测试由 CI 执行。
63242ebdf13e9f42;其 main 基线为72413280后续真实任务仅针对历史失败集合,保留固定动作与评分规则。功能验收范围为原 1.1.9 的 34 题加 1.1.8 已失败的
386,共 35 题;历史67的传输超时另存证据,不归因本 PR 修复。原 11 类分组与原测试改名/替代对应可供审查。范围与依赖
从 #640 拆出,原 PR 和原分支保留。本 PR 以工程前置 #725 的分支为目标,因此 diff 只显示本功能分区,其他五个功能分区不是当前代码依赖。已随前置 rebase 到 main@72413280。每个分区独立触发 CI;前置合入后可再将本 PR rebase/retarget 到 main。验收发现功能依赖时,先调整边界或明确依赖,再确认 case 归属。
完整对应关系:拆分 PR 索引、逐 case 历史失败及归属。