实现 58a6c1c,Wiki 镜像 7ac1355,分支 fix/238-spec-panel-preswipe 已推送;未合并 main。Android 0.9.60 / 73 APK 已经用户明确授权覆盖安装到 192.168.0.173:42681,版本回读一致;未上传线上,CG68 真机采购未执行。无数据库迁移、线上规则/任务改写或服务重启。下方保留需求、方案与原始验收定义,最终证据见本次交付评论。
2026-09-07 用户反馈线上 CG68 在颜色尺码很少、无需滑动即可全部看到时失败,提示“规则要求的有限滑动失败”。用户确认“按照你的建议建工单,做”。目标:取消采购打开规格面板后的机械预滑动,交由规格探测/精确查找按需有界滚动,不因无必要滚动阻断正常商品。
代码基线 origin/main 9d5242b,Android 0.9.59/72;线上设备及连接手机版本均为 0.9.59。线上部署目录 20260907-29ba16e-236。本次只读核验 CG68 三次 attempt 均 spec_probe/failed,耗时约3.74/4.03/3.26秒,规则哈希相同;主任务 RULE_ACTION_FAILED。 任务快照 openSpecPanel.swipeAfter={direction:up,count:2,durationMs:500,intervalMs:1000}。PurchaseRehearsalExecutor.applyPostAction 在 probeSpecs 前执行该滑动,仅 NON_SCROLLABLE_CONFIRMATION 特判跳过;其他面板无论选项是否可见均滑动。GoAutoAccessibilityService.swipePurchase 从全窗口找滚动控件,返回 false 后统一失败。 事实边界:未获得失败瞬间面板/手势分类日志,不能断言是哪一种底层 false 分支;不保存原始控件树、整屏截图或个人信息。关联 #202 的不可滚动面板兼容,保留 #230/#231 的有界规格查找与面板识别。
Android + 对应共享契约/Wiki;Server/Web 生产代码不变。#202/#230/#231 实现已在基线,无新增实施依赖,不与其他 Android 同文件任务并行。恢复既有采购流程的非 UI 缺陷,不需要交互原型;以上流程为用户已确认建议的具体化。全栈影响:旧 Server/旧快照可向新 APK 下发同一 JSON;旧 APK 保留原行为,必须升级 APK 才生效。
更新 Wiki Business-Rules-and-Glossary、Android-Agent-API-Contract、Architecture-and-Code-Map:说明 openSpecPanel.swipeAfter 从新 APK 起兼容读取但不执行,其他动作不变,按需滚动与脱敏诊断位置。先线上更新/回读 revision,再一次 sync 与 sync --check;不导出工单归档/HTML。 风险:某些旧规则依赖预滑动才能露出规格,须通过现有探测/选择搜索回归验证;未知真机样式继续明确记录。禁止把所有滑动失败一概忽略。 当前未提供 Gitea MCP,回退项目忽略配置的 Gitea API,凭据不输出。本单停在待用户验收,不自动关闭。
按用户确认方案完成最小 Android 修复:openSpecPanel 成功后不再执行规则预滑动,waitAfterMs 保留,旧 swipeAfter 仍解析并校验,不更改任务快照。原 probeSpecs 与 selectSpec 的按需横向/纵向有界滚动保持;不修改面板识别器、规格匹配、地址或订单算法。其他动作的必需滑动继续执行,失败仍 RULE_ACTION_FAILED。
新增固定枚举失败分类:unknown/root_unavailable/no_scrollable/invalid_bounds/gesture_unsupported/gesture_rejected/gesture_cancelled/gesture_timeout;共享 swipeNode 只增加可选分类回调,原布尔结果、目标轨迹和1500ms等待不变。GoAutoPurchasePanel 输出跳过原因/面板枚举或失败分类/动作/方向/次数,日志上下文关联 task、attempt、device 和规则快照哈希;不输出原始树、节点文字、坐标、凭据或个人数据。
代码 58a6c1c;Wiki 镜像 7ac1355;分支 fix/238-spec-panel-preswipe 已推送,未合并 main。根工作区原有改动保持未动。 APK:Android 0.9.60 / versionCode 73;D:/OPC/goauto-worktrees/issue-238/android/app/build/outputs/apk/debug/app-debug.apk。 SHA256:11e9adb7af582dd57dcd9b09e1a8a1a01dadeaef94bfdee86e40fab5bc571c0e。 Wiki-first 显式保留非空标题,在线回读正文/revision后再同步镜像:
安装新APK即可获得本次兼容,不需要迁移、修改线上规则/旧快照或重启Server/Web。当前APK尚未安装或上传线上;安装和CG68同商品采购真机验证待用户明确授权。不能据此宣称CG68已经采购成功。工单保持open,用户验收后再关闭。
用户明确授权安装到 192.168.0.173:42681。安装前设备在线、runtime state=ONLINE,无 current_task_id;原版本0.9.59/72。APK SHA256与交付一致,apksigner校验通过。adb install -r 返回Success,安装后dumpsys回读0.9.60/versionCode73。未卸载、未清数据,未更改服务端配置、规则或任务状态,未主动启动App/重试采购或执行下单。安装完成不等于CG68采购验收通过;工单继续open待验收。无新长期事实变化,不重复同步Wiki。
2026-09-08 按用户明确请求覆盖安装到指定真机。安装前版本 0.9.44/57,无本地 active task;使用已验证 #238 APK(源码 58a6c1c,SHA256 11e9adb7af582dd57dcd9b09e1a8a1a01dadeaef94bfdee86e40fab5bc571c0e),adb install -r 返回 Success;安装后包管理器回读为 0.9.60/versionCode 73。未卸载或清除数据,未启动采集/采购、创建订单或付款。本次只证明安装成功,不替代业务真机验收;工单保持打开。
No dependencies set.
The note is not visible to the blocked user.
当前状态:代码与 APK 已交付,待验收(2026-09-07)
实现 58a6c1c,Wiki 镜像 7ac1355,分支 fix/238-spec-panel-preswipe 已推送;未合并 main。Android 0.9.60 / 73 APK 已经用户明确授权覆盖安装到 192.168.0.173:42681,版本回读一致;未上传线上,CG68 真机采购未执行。无数据库迁移、线上规则/任务改写或服务重启。下方保留需求、方案与原始验收定义,最终证据见本次交付评论。
来源与目标
2026-09-07 用户反馈线上 CG68 在颜色尺码很少、无需滑动即可全部看到时失败,提示“规则要求的有限滑动失败”。用户确认“按照你的建议建工单,做”。目标:取消采购打开规格面板后的机械预滑动,交由规格探测/精确查找按需有界滚动,不因无必要滚动阻断正常商品。
基线与已核实事实
代码基线 origin/main 9d5242b,Android 0.9.59/72;线上设备及连接手机版本均为 0.9.59。线上部署目录 20260907-29ba16e-236。本次只读核验 CG68 三次 attempt 均 spec_probe/failed,耗时约3.74/4.03/3.26秒,规则哈希相同;主任务 RULE_ACTION_FAILED。
任务快照 openSpecPanel.swipeAfter={direction:up,count:2,durationMs:500,intervalMs:1000}。PurchaseRehearsalExecutor.applyPostAction 在 probeSpecs 前执行该滑动,仅 NON_SCROLLABLE_CONFIRMATION 特判跳过;其他面板无论选项是否可见均滑动。GoAutoAccessibilityService.swipePurchase 从全窗口找滚动控件,返回 false 后统一失败。
事实边界:未获得失败瞬间面板/手势分类日志,不能断言是哪一种底层 false 分支;不保存原始控件树、整屏截图或个人信息。关联 #202 的不可滚动面板兼容,保留 #230/#231 的有界规格查找与面板识别。
方案与范围(本单开始实施)
依赖、设计证据与交付单元
Android + 对应共享契约/Wiki;Server/Web 生产代码不变。#202/#230/#231 实现已在基线,无新增实施依赖,不与其他 Android 同文件任务并行。恢复既有采购流程的非 UI 缺陷,不需要交互原型;以上流程为用户已确认建议的具体化。全栈影响:旧 Server/旧快照可向新 APK 下发同一 JSON;旧 APK 保留原行为,必须升级 APK 才生效。
验收与验证
文档影响与风险
更新 Wiki Business-Rules-and-Glossary、Android-Agent-API-Contract、Architecture-and-Code-Map:说明 openSpecPanel.swipeAfter 从新 APK 起兼容读取但不执行,其他动作不变,按需滚动与脱敏诊断位置。先线上更新/回读 revision,再一次 sync 与 sync --check;不导出工单归档/HTML。
风险:某些旧规则依赖预滑动才能露出规格,须通过现有探测/选择搜索回归验证;未知真机样式继续明确记录。禁止把所有滑动失败一概忽略。
当前未提供 Gitea MCP,回退项目忽略配置的 Gitea API,凭据不输出。本单停在待用户验收,不自动关闭。
实现、验证与交付
按用户确认方案完成最小 Android 修复:openSpecPanel 成功后不再执行规则预滑动,waitAfterMs 保留,旧 swipeAfter 仍解析并校验,不更改任务快照。原 probeSpecs 与 selectSpec 的按需横向/纵向有界滚动保持;不修改面板识别器、规格匹配、地址或订单算法。其他动作的必需滑动继续执行,失败仍 RULE_ACTION_FAILED。
新增固定枚举失败分类:unknown/root_unavailable/no_scrollable/invalid_bounds/gesture_unsupported/gesture_rejected/gesture_cancelled/gesture_timeout;共享 swipeNode 只增加可选分类回调,原布尔结果、目标轨迹和1500ms等待不变。GoAutoPurchasePanel 输出跳过原因/面板枚举或失败分类/动作/方向/次数,日志上下文关联 task、attempt、device 和规则快照哈希;不输出原始树、节点文字、坐标、凭据或个人数据。
验证证据
版本与文档
代码 58a6c1c;Wiki 镜像 7ac1355;分支 fix/238-spec-panel-preswipe 已推送,未合并 main。根工作区原有改动保持未动。
APK:Android 0.9.60 / versionCode 73;D:/OPC/goauto-worktrees/issue-238/android/app/build/outputs/apk/debug/app-debug.apk。
SHA256:11e9adb7af582dd57dcd9b09e1a8a1a01dadeaef94bfdee86e40fab5bc571c0e。
Wiki-first 显式保留非空标题,在线回读正文/revision后再同步镜像:
不导出任务归档或原型;Gitea MCP不可用,沿用已记录的项目API回退。
待验收与部署边界
安装新APK即可获得本次兼容,不需要迁移、修改线上规则/旧快照或重启Server/Web。当前APK尚未安装或上传线上;安装和CG68同商品采购真机验证待用户明确授权。不能据此宣称CG68已经采购成功。工单保持open,用户验收后再关闭。
真机覆盖安装完成(2026-09-07)
用户明确授权安装到 192.168.0.173:42681。安装前设备在线、runtime state=ONLINE,无 current_task_id;原版本0.9.59/72。APK SHA256与交付一致,apksigner校验通过。adb install -r 返回Success,安装后dumpsys回读0.9.60/versionCode73。未卸载、未清数据,未更改服务端配置、规则或任务状态,未主动启动App/重试采购或执行下单。安装完成不等于CG68采购验收通过;工单继续open待验收。无新长期事实变化,不重复同步Wiki。
2026-09-08 按用户明确请求覆盖安装到指定真机。安装前版本 0.9.44/57,无本地 active task;使用已验证 #238 APK(源码 58a6c1c,SHA256 11e9adb7af582dd57dcd9b09e1a8a1a01dadeaef94bfdee86e40fab5bc571c0e),adb install -r 返回 Success;安装后包管理器回读为 0.9.60/versionCode 73。未卸载或清除数据,未启动采集/采购、创建订单或付款。本次只证明安装成功,不替代业务真机验收;工单保持打开。