diff --git a/docs/task/264-兼容纵向颜色规格列表并安全选择目标.md b/docs/task/264-兼容纵向颜色规格列表并安全选择目标.md index 3fab6b0..c207caa 100644 --- a/docs/task/264-兼容纵向颜色规格列表并安全选择目标.md +++ b/docs/task/264-兼容纵向颜色规格列表并安全选择目标.md @@ -16,6 +16,9 @@ cg52 的 PDD 颜色规格使用单列纵向滚动列表,目标位于首屏以 ## 最终方案 - 根据同一滚动区域内可点击候选的左上角分布判断单列纵向或单行横向布局。 +- 方向证据只读取边界对应滚动容器的后代节点,并要求候选完整落在容器内; + 排除跨越容器的大面积父节点和容器外悬浮控件。 +- 颜色标题优先在同一滚动容器内定位,避免商品页背景中的同名文字干扰。 - 多行网格只在容器长宽给出强证据时确定方向;正方形等证据不足的网格不滑动、 不点击。 - 纵向列表从颜色列表起点向下有界扫描;横向列表继续先归左、再向右扫描。 @@ -24,8 +27,10 @@ cg52 的 PDD 颜色规格使用单列纵向滚动列表,目标位于首屏以 不使用近似颜色代替任务规格。 - 不修改任务原始规格、AI 解析、数据库、Admin 接口及任何不可逆下单门禁。 -实现与建单方案一致。真实 cg52 控件树只读判定为纵向;没有把包含商品原文的 -诊断文件提交 Git,自动化测试使用结构等价的脱敏模拟数据。 +首次实现后,用户真机验收发现方向判断混入了规格容器外的悬浮控件和大面积 +clickable 父节点,导致方向返回不明确。修订后把候选和标题证据收窄到同一滚动 +容器,真实 cg52 控件树只读判定从 `None` 变为 `vertical`。没有把包含商品原文的 +诊断文件提交 Git,自动化测试使用带外部悬浮控件的结构等价脱敏数据。 ## 改了哪些 @@ -44,7 +49,7 @@ cg52 的 PDD 颜色规格使用单列纵向滚动列表,目标位于首屏以 | 方向不明时不滑动、不点击 | 通过 | | 到达边界仍不存在目标时不选择近似颜色 | 通过 | | 现有繁简匹配、重复候选和选中确认安全规则保持 | 通过 | -| cg52 当前控件树能只读判断为纵向 | 通过 | +| cg52 当前控件树能排除外部控件并只读判断为纵向 | 通过 | | 不改变不可逆标记、提交订单及付款门禁 | 通过 | ## 测试 @@ -55,7 +60,7 @@ cg52 的 PDD 颜色规格使用单列纵向滚动列表,目标位于首屏以 - `C:/Python310/python.exe -m pytest -q test` - 设置 `QT_QPA_PLATFORM=offscreen` 后实例化 `MainWindow` - `git diff --check` -- 结果:定向测试 74 项全部通过;离屏界面冒烟输出 `OK`;全量测试 518 项通过、 +- 结果:修订后定向测试 75 项全部通过;离屏界面冒烟输出 `OK`;全量测试 519 项通过、 2 项失败。两项失败均为工作区既有版本号 `0.1.2` 与测试固定期望 `0.1.0` 不一致,与本任务无关。 - **没验证到的部分**:没有让真机 cg52 自动点击目标颜色、继续选择尺码或提交订单; @@ -64,3 +69,4 @@ cg52 的 PDD 颜色规格使用单列纵向滚动列表,目标位于首屏以 ## 相关提交 - `d69c9cc` 修复颜色布局方向判断和纵向扫描 +- `2e40bc6` 收窄方向和标题证据,排除容器外控件污染