缺陷:地址已保存含任务后缀仍被误判为回读不一致 #152

Closed
opened 2026-08-29 14:37:56 +08:00 by ila · 6 comments
Owner

来源与现场确认

用户于 2026-08-29 执行 live 采购任务 #17(地址后缀 _cg17),Agent 0.9.22 上报 PURCHASE_ADDRESS_UPDATE_FAILED / 地址保存后回读不一致,未创建订单。数据库确认 irreversible_at、order_submitted_at 均为空。

用户随后人工查看 PDD 地址,明确确认修改后的地址实际包含 _cg17。因此保存动作成功,属于 Agent 保存后证据处理假失败。

根因

PurchaseLiveAutomation.editAndVerifyAddress 在编辑框内已逐字验证输入并点击唯一保存按钮,但后续存在两处过严校验:

  1. 地址页若已显示完整新地址,返回订单确认页后代码覆盖该快照,丢失已取得的保存后证据;
  2. 保存后及最终确认均要求某一个可见节点完整包含整条 expectedAddress。PDD 可能把地址正文、区域和任务后缀拆成多个无障碍节点,因此实际可见 _cg17 仍被判为不一致。

目标

  1. 保存后必须在非编辑态取得唯一地址证据,排除仍停留在编辑框的假阳性。
  2. 唯一收货地址上下文中允许完整地址被拆成多个节点;任务后缀必须完整、唯一可见。
  3. 从地址页返回订单页时保留已取得的保存证据。
  4. 最终创建订单前仍重新验证 PDD 页面、唯一收货地址上下文、任务后缀、规格、数量、价格及唯一提交目标。
  5. 看不到任务后缀、多个独立地址候选、页面变化或证据不唯一时继续失败关闭。

非目标

  • 不修改 Admin 规则、服务端、数据库或接口。
  • 不放宽到仅凭“提交订单”按钮判断保存成功。
  • 不接受只显示旧地址、后缀缺失或歧义地址。
  • 不自动重试任务,不修改地址,不创建订单,不支付。
  • 不保存地址、控件树或截图,不把地址写入日志。

方案

  • 增加仅在内存运行的 hasSavedAddressEvidence:
    • 必须为 PDD 页面;
    • 必须已离开详细地址编辑态;
    • 接受单节点包含完整规范化地址;或
    • 在唯一收货地址上下文中,接受唯一、完整的任务后缀节点,即使正文与后缀分属多个节点;
    • 合并近重叠无障碍重复节点,但多个独立后缀候选失败。
  • 保存后等待该地址证据,不再把出现提交按钮本身当作成功。
  • 若证据在地址页取得,返回订单页时保留该证明;最终确认页再使用同一安全规则验证当前后缀。
  • 增加地址拆分节点成功、编辑页不得冒充保存成功、后缀缺失/重复失败及既有订单安全回归测试。
  • Agent 提升版本,构建并安装当前唯一 ADB 设备。

设计证据

恢复既有地址后缀验证行为,不新增 UI 或交互,无需原型。

验收

  • 地址保存且 _cgN 位于独立节点时不再假失败。
  • 保存前编辑框含后缀不能冒充保存后证据。
  • 地址页取得的保存证据返回订单页后不会丢失。
  • 最终确认仍要求唯一地址上下文和唯一完整任务后缀。
  • 后缀缺失、多个独立后缀、非 PDD 页面均失败且不创建订单。
  • Android 全量测试及 Debug/Release APK 构建通过。
  • APK 安装到一加 PKG110并回读版本;不自动执行 live 任务。
  • 提交推送并回写证据,保持待验收。

文档影响

仅修复已确认地址保存后置条件的实现偏差,不改变长期业务规则、安全边界、接口或运维方式;无长期文档影响,跳过 Wiki 更新与同步。

## 来源与现场确认 用户于 2026-08-29 执行 live 采购任务 #17(地址后缀 `_cg17`),Agent 0.9.22 上报 `PURCHASE_ADDRESS_UPDATE_FAILED / 地址保存后回读不一致,未创建订单`。数据库确认 `irreversible_at`、`order_submitted_at` 均为空。 用户随后人工查看 PDD 地址,明确确认修改后的地址实际包含 `_cg17`。因此保存动作成功,属于 Agent 保存后证据处理假失败。 ## 根因 `PurchaseLiveAutomation.editAndVerifyAddress` 在编辑框内已逐字验证输入并点击唯一保存按钮,但后续存在两处过严校验: 1. 地址页若已显示完整新地址,返回订单确认页后代码覆盖该快照,丢失已取得的保存后证据; 2. 保存后及最终确认均要求某一个可见节点完整包含整条 `expectedAddress`。PDD 可能把地址正文、区域和任务后缀拆成多个无障碍节点,因此实际可见 `_cg17` 仍被判为不一致。 ## 目标 1. 保存后必须在非编辑态取得唯一地址证据,排除仍停留在编辑框的假阳性。 2. 唯一收货地址上下文中允许完整地址被拆成多个节点;任务后缀必须完整、唯一可见。 3. 从地址页返回订单页时保留已取得的保存证据。 4. 最终创建订单前仍重新验证 PDD 页面、唯一收货地址上下文、任务后缀、规格、数量、价格及唯一提交目标。 5. 看不到任务后缀、多个独立地址候选、页面变化或证据不唯一时继续失败关闭。 ## 非目标 - 不修改 Admin 规则、服务端、数据库或接口。 - 不放宽到仅凭“提交订单”按钮判断保存成功。 - 不接受只显示旧地址、后缀缺失或歧义地址。 - 不自动重试任务,不修改地址,不创建订单,不支付。 - 不保存地址、控件树或截图,不把地址写入日志。 ## 方案 - 增加仅在内存运行的 `hasSavedAddressEvidence`: - 必须为 PDD 页面; - 必须已离开详细地址编辑态; - 接受单节点包含完整规范化地址;或 - 在唯一收货地址上下文中,接受唯一、完整的任务后缀节点,即使正文与后缀分属多个节点; - 合并近重叠无障碍重复节点,但多个独立后缀候选失败。 - 保存后等待该地址证据,不再把出现提交按钮本身当作成功。 - 若证据在地址页取得,返回订单页时保留该证明;最终确认页再使用同一安全规则验证当前后缀。 - 增加地址拆分节点成功、编辑页不得冒充保存成功、后缀缺失/重复失败及既有订单安全回归测试。 - Agent 提升版本,构建并安装当前唯一 ADB 设备。 ## 设计证据 恢复既有地址后缀验证行为,不新增 UI 或交互,无需原型。 ## 验收 - [ ] 地址保存且 `_cgN` 位于独立节点时不再假失败。 - [ ] 保存前编辑框含后缀不能冒充保存后证据。 - [ ] 地址页取得的保存证据返回订单页后不会丢失。 - [ ] 最终确认仍要求唯一地址上下文和唯一完整任务后缀。 - [ ] 后缀缺失、多个独立后缀、非 PDD 页面均失败且不创建订单。 - [ ] Android 全量测试及 Debug/Release APK 构建通过。 - [ ] APK 安装到一加 PKG110并回读版本;不自动执行 live 任务。 - [ ] 提交推送并回写证据,保持待验收。 ## 文档影响 仅修复已确认地址保存后置条件的实现偏差,不改变长期业务规则、安全边界、接口或运维方式;无长期文档影响,跳过 Wiki 更新与同步。
Author
Owner

实施、构建与安装完成,待用户真机验收

提交:e188fec fix(#152): verify split saved address evidence,已推送 main。

修复

  • 保存后不再把“出现提交订单按钮”本身当作地址保存成功。
  • 保存成功证据必须来自 PDD 非编辑态的唯一收货地址上下文:
    • 单节点包含完整规范化地址;或
    • 地址正文与任务后缀分属多个节点,但唯一完整 _cgN 后缀可见。
  • 近乎重叠的无障碍重复节点按一个候选合并;多个独立后缀候选继续失败。
  • 后缀采用数字边界校验,_cg17 不会错误接受 _cg170。
  • 地址页取得的保存后证据在返回订单页时不再被覆盖丢失。
  • 最终确认页仍重新要求 PDD、唯一地址上下文、唯一完整任务后缀、唯一提交目标、规格、数量和价格全部成立。
  • 编辑框仍含后缀、后缀缺失、后缀重复或非 PDD 页面均在创建订单前失败。
  • Agent 提升为 0.9.23 (36)。

验证

  • 定向 PurchaseLiveAutomationTest:通过。
  • 新增覆盖:
    • 订单页地址正文与后缀拆分仍正确确认;
    • 编辑页输入框不能冒充保存后证据;
    • 后缀缺失失败关闭;
    • 多个独立后缀失败关闭。
  • .\scripts\verify.ps1 -Component android:Debug/Release 全量单元测试与 Debug APK 构建通过。
  • 最终代码再次执行定向测试、assembleDebug assembleRelease:通过。
  • git diff --check:通过。

APK 与手机

  • Debug APK:0.9.23 (36),SHA-256 BFBC8E5C9DCBDAC0925D405124CD6B67B8E09C9ED0B9E59F8DC7BD1D98DB7281。
  • Release unsigned APK:0.9.23 (36),SHA-256 6334909D798380E4938549EA87C58B730BD8113F735BE3E4EFA5E49767CD89E5。
  • 一加 PKG110 覆盖安装:Success。
  • 手机回读:versionName=0.9.23、versionCode=36。

安全与未执行

未自动重试任务 #17,未再次修改地址,未创建订单,未支付。下一次 live 采购必须由用户按既有高风险门禁发起。

文档

仅恢复既有地址保存后置条件,无新的长期事实,跳过 Wiki 更新与同步。未修改既有未跟踪文件。

状态:实现与安装完成,等待用户真机验收。

## 实施、构建与安装完成,待用户真机验收 提交:`e188fec fix(#152): verify split saved address evidence`,已推送 `main`。 ### 修复 - 保存后不再把“出现提交订单按钮”本身当作地址保存成功。 - 保存成功证据必须来自 PDD 非编辑态的唯一收货地址上下文: - 单节点包含完整规范化地址;或 - 地址正文与任务后缀分属多个节点,但唯一完整 `_cgN` 后缀可见。 - 近乎重叠的无障碍重复节点按一个候选合并;多个独立后缀候选继续失败。 - 后缀采用数字边界校验,`_cg17` 不会错误接受 `_cg170`。 - 地址页取得的保存后证据在返回订单页时不再被覆盖丢失。 - 最终确认页仍重新要求 PDD、唯一地址上下文、唯一完整任务后缀、唯一提交目标、规格、数量和价格全部成立。 - 编辑框仍含后缀、后缀缺失、后缀重复或非 PDD 页面均在创建订单前失败。 - Agent 提升为 `0.9.23 (36)`。 ### 验证 - 定向 `PurchaseLiveAutomationTest`:通过。 - 新增覆盖: - 订单页地址正文与后缀拆分仍正确确认; - 编辑页输入框不能冒充保存后证据; - 后缀缺失失败关闭; - 多个独立后缀失败关闭。 - `.\scripts\verify.ps1 -Component android`:Debug/Release 全量单元测试与 Debug APK 构建通过。 - 最终代码再次执行定向测试、`assembleDebug assembleRelease`:通过。 - `git diff --check`:通过。 ### APK 与手机 - Debug APK:`0.9.23 (36)`,SHA-256 `BFBC8E5C9DCBDAC0925D405124CD6B67B8E09C9ED0B9E59F8DC7BD1D98DB7281`。 - Release unsigned APK:`0.9.23 (36)`,SHA-256 `6334909D798380E4938549EA87C58B730BD8113F735BE3E4EFA5E49767CD89E5`。 - 一加 PKG110 覆盖安装:`Success`。 - 手机回读:`versionName=0.9.23`、`versionCode=36`。 ### 安全与未执行 未自动重试任务 #17,未再次修改地址,未创建订单,未支付。下一次 live 采购必须由用户按既有高风险门禁发起。 ### 文档 仅恢复既有地址保存后置条件,无新的长期事实,跳过 Wiki 更新与同步。未修改既有未跟踪文件。 状态:实现与安装完成,等待用户真机验收。
Author
Owner

2026-08-29 真机复测未通过(0.9.23 / versionCode 36)

用户在同一台一加 PKG110 上复测后确认:

  • Agent 点击重试时先显示“无法重试采购”,具体客户端异常包含 unexpected end of stream on;数秒后前台服务仍领取新任务并打开商品链接进入 PDD。数据库只读核对确认服务端实际已依次创建 CG-18、CG-19、CG-20,说明重试请求已提交成功,客户端仅因响应流中断把“结果未知”误显示成“服务端拒绝”。这是独立的重试结果对账缺陷,不在本工单直接混改。
  • CG-18、CG-19、CG-20 均完成规格选择和地址修改,随后约 25 秒失败为 PURCHASE_ADDRESS_SAVE_TIMEOUT / 地址保存超时,未创建订单。
  • 三个任务的 irreversible_at、order_submitted_at 均为空,确认没有进入创建订单边界。

结论:#152 v1 的“保存后证据”判断仍未覆盖该真机 PDD 页面形态,验收不通过,工单继续保持打开。下一版应将“保存动作完成证据”和“最终订单页复核证据”分层:保存阶段只在 PDD、编辑控件已消失、唯一任务后缀连续稳定出现时确认保存成功;随后返回/等待订单确认页,并再次要求唯一地址后缀、唯一创建订单目标及既有规格/价格/数量校验。不得仅延长超时,也不得降低最终创建订单门禁。

本次只读取结构化任务状态和错误,不保存控件树或截图;未再次重试、未修改地址、未创建订单、未付款。

## 2026-08-29 真机复测未通过(0.9.23 / versionCode 36) 用户在同一台一加 PKG110 上复测后确认: - Agent 点击重试时先显示“无法重试采购”,具体客户端异常包含 `unexpected end of stream on`;数秒后前台服务仍领取新任务并打开商品链接进入 PDD。数据库只读核对确认服务端实际已依次创建 CG-18、CG-19、CG-20,说明重试请求已提交成功,客户端仅因响应流中断把“结果未知”误显示成“服务端拒绝”。这是独立的重试结果对账缺陷,不在本工单直接混改。 - CG-18、CG-19、CG-20 均完成规格选择和地址修改,随后约 25 秒失败为 `PURCHASE_ADDRESS_SAVE_TIMEOUT / 地址保存超时,未创建订单`。 - 三个任务的 `irreversible_at`、`order_submitted_at` 均为空,确认没有进入创建订单边界。 结论:#152 v1 的“保存后证据”判断仍未覆盖该真机 PDD 页面形态,验收不通过,工单继续保持打开。下一版应将“保存动作完成证据”和“最终订单页复核证据”分层:保存阶段只在 PDD、编辑控件已消失、唯一任务后缀连续稳定出现时确认保存成功;随后返回/等待订单确认页,并再次要求唯一地址后缀、唯一创建订单目标及既有规格/价格/数量校验。不得仅延长超时,也不得降低最终创建订单门禁。 本次只读取结构化任务状态和错误,不保存控件树或截图;未再次重试、未修改地址、未创建订单、未付款。
Author
Owner

#152 v2 实施、推送与安装完成,待真机验收

Gitea MCP 当前会话不可用,本次状态回写按仓库规则回退项目配置的 Gitea API。

提交:7fddd18 fix(#152): separate address save and final proof,已推送 main。

v2 修复

  • 将地址保存动作证据与最终订单确认页证据分层:
    • 保存阶段要求 PDD 页面、详细地址编辑控件已消失、唯一完整 _cgN 后缀连续两个快照可见;不再依赖旧版精确“收货地址”标题、旧版掩码手机号或提交按钮。
    • 若保存证据出现在地址过渡/列表页,只执行一次安全返回并等待订单确认页。
    • 订单确认页独立要求唯一任务后缀和唯一创建订单目标;随后既有规格、数量、价格及页面校验保持不变。
  • 编辑页仍含后缀、后缀缺失、多个独立后缀、非 PDD 页面均失败关闭。
  • Agent 提升为 0.9.24 (37)。

验证

  • 定向 PurchaseLiveAutomationTest:通过(11 项)。
  • 新增“保存后过渡页没有旧版标题/手机号但唯一后缀稳定可见”覆盖,并验证返回订单页后再次通过最终门禁。
  • .\scripts\verify.ps1 -Component android:Debug/Release 全量单元测试和 Debug APK 构建通过。
  • assembleDebug assembleRelease:通过。
  • git diff --check:通过。

APK 与手机

  • Debug APK SHA-256:EB4BF9645374E8F1B69D3ED6F0C59311196E31DF95E6C43FFBA92E2750BECF90
  • Release unsigned APK SHA-256:8335954DDB3C5030586F3DC4A4C07DF9442BF0A16C8FC28AAAAC5F703E168B96
  • 一加 PKG110(3B65BD02H7F00000)覆盖安装成功。
  • 手机回读:versionName=0.9.24、versionCode=37。

安全与未执行

未自动重试 CG-17~CG-20 或创建新任务,未再次修改真实地址,未进入创建订单边界,未创建订单,未付款。真机 live 采购仍需用户按高风险门禁明确发起。

关联缺陷

重试请求响应断流误报已独立建立 #153,本提交未混入该问题。

文档

本次恢复既有地址保存与最终确认安全语义,不改变共享接口、长期业务规则或安全边界;无长期文档影响,跳过 Wiki 更新与同步。

## #152 v2 实施、推送与安装完成,待真机验收 Gitea MCP 当前会话不可用,本次状态回写按仓库规则回退项目配置的 Gitea API。 提交:`7fddd18 fix(#152): separate address save and final proof`,已推送 `main`。 ### v2 修复 - 将地址保存动作证据与最终订单确认页证据分层: - 保存阶段要求 PDD 页面、详细地址编辑控件已消失、唯一完整 `_cgN` 后缀连续两个快照可见;不再依赖旧版精确“收货地址”标题、旧版掩码手机号或提交按钮。 - 若保存证据出现在地址过渡/列表页,只执行一次安全返回并等待订单确认页。 - 订单确认页独立要求唯一任务后缀和唯一创建订单目标;随后既有规格、数量、价格及页面校验保持不变。 - 编辑页仍含后缀、后缀缺失、多个独立后缀、非 PDD 页面均失败关闭。 - Agent 提升为 `0.9.24 (37)`。 ### 验证 - 定向 `PurchaseLiveAutomationTest`:通过(11 项)。 - 新增“保存后过渡页没有旧版标题/手机号但唯一后缀稳定可见”覆盖,并验证返回订单页后再次通过最终门禁。 - `.\scripts\verify.ps1 -Component android`:Debug/Release 全量单元测试和 Debug APK 构建通过。 - `assembleDebug assembleRelease`:通过。 - `git diff --check`:通过。 ### APK 与手机 - Debug APK SHA-256:`EB4BF9645374E8F1B69D3ED6F0C59311196E31DF95E6C43FFBA92E2750BECF90` - Release unsigned APK SHA-256:`8335954DDB3C5030586F3DC4A4C07DF9442BF0A16C8FC28AAAAC5F703E168B96` - 一加 PKG110(`3B65BD02H7F00000`)覆盖安装成功。 - 手机回读:`versionName=0.9.24`、`versionCode=37`。 ### 安全与未执行 未自动重试 CG-17~CG-20 或创建新任务,未再次修改真实地址,未进入创建订单边界,未创建订单,未付款。真机 live 采购仍需用户按高风险门禁明确发起。 ### 关联缺陷 重试请求响应断流误报已独立建立 #153,本提交未混入该问题。 ### 文档 本次恢复既有地址保存与最终确认安全语义,不改变共享接口、长期业务规则或安全边界;无长期文档影响,跳过 Wiki 更新与同步。
Author
Owner

2026-08-29 v2 真机复测仍未通过(CG-21)

用户确认地址修改后 PDD 仍停留在地址面板并最终失败,询问系统无障碍悬浮图标是否遮挡操作。

只读核对结果:

  • 手机已安装 0.9.24 (37);CG-21 最终为 PURCHASE_ADDRESS_SAVE_TIMEOUT / 地址保存超时,未创建订单,总历时 36 秒。
  • irreversible_at、order_submitted_at 均为空,未进入创建订单边界。
  • 系统存在 FloatingMenu,触摸区域约为屏幕右侧 x=936–1080、y=553–697;但修改和保存使用 AccessibilityNodeInfo.ACTION_CLICK 作用于重新定位的唯一节点,不是坐标手势,因此该悬浮层不会拦截这两个动作。现场地址已经修改也反证点击成功。
  • v2 在保存点击后先等待“非编辑态 + 唯一 _cg21 后缀连续两个快照可见”,满足后才会返回订单页。当前错误文案是“地址保存超时”而不是“地址保存后无法返回订单页面”,说明代码尚未执行返回,失败点是 PDD 地址面板没有把肉眼可见后缀作为符合条件的可见无障碍文本暴露(可能截断、折行或虚拟渲染)。

结论:不是悬浮图标挡住修改;#152 v2 的保存阶段证据仍过严。建议 v3 分层为:

  1. 编辑阶段继续要求唯一详细地址输入框精确回读完整 expectedAddress;
  2. 唯一保存节点 ACTION_CLICK 成功后,只要求 PDD 页面且详细地址编辑控件连续消失,作为“已离开编辑态”的导航证据;
  3. 如果仍在地址面板,执行一次安全返回,进入订单确认页;
  4. 最终创建订单前仍必须重新满足唯一完整任务后缀、唯一创建订单目标、规格、数量、价格与 PDD 页面校验,任何一项缺失均失败关闭;
  5. 不得仅凭编辑页消失直接创建订单,也不得降低最终门禁。

本次未抓取或保存控件树/截图,未再次触发采购,未修改地址,未创建订单,未付款。工单继续保持打开。

## 2026-08-29 v2 真机复测仍未通过(CG-21) 用户确认地址修改后 PDD 仍停留在地址面板并最终失败,询问系统无障碍悬浮图标是否遮挡操作。 只读核对结果: - 手机已安装 `0.9.24 (37)`;CG-21 最终为 `PURCHASE_ADDRESS_SAVE_TIMEOUT / 地址保存超时,未创建订单`,总历时 36 秒。 - `irreversible_at`、`order_submitted_at` 均为空,未进入创建订单边界。 - 系统存在 `FloatingMenu`,触摸区域约为屏幕右侧 `x=936–1080、y=553–697`;但修改和保存使用 `AccessibilityNodeInfo.ACTION_CLICK` 作用于重新定位的唯一节点,不是坐标手势,因此该悬浮层不会拦截这两个动作。现场地址已经修改也反证点击成功。 - v2 在保存点击后先等待“非编辑态 + 唯一 `_cg21` 后缀连续两个快照可见”,满足后才会返回订单页。当前错误文案是“地址保存超时”而不是“地址保存后无法返回订单页面”,说明代码尚未执行返回,失败点是 PDD 地址面板没有把肉眼可见后缀作为符合条件的可见无障碍文本暴露(可能截断、折行或虚拟渲染)。 结论:不是悬浮图标挡住修改;#152 v2 的保存阶段证据仍过严。建议 v3 分层为: 1. 编辑阶段继续要求唯一详细地址输入框精确回读完整 `expectedAddress`; 2. 唯一保存节点 `ACTION_CLICK` 成功后,只要求 PDD 页面且详细地址编辑控件连续消失,作为“已离开编辑态”的导航证据; 3. 如果仍在地址面板,执行一次安全返回,进入订单确认页; 4. 最终创建订单前仍必须重新满足唯一完整任务后缀、唯一创建订单目标、规格、数量、价格与 PDD 页面校验,任何一项缺失均失败关闭; 5. 不得仅凭编辑页消失直接创建订单,也不得降低最终门禁。 本次未抓取或保存控件树/截图,未再次触发采购,未修改地址,未创建订单,未付款。工单继续保持打开。
Author
Owner

#152 v3 实施、推送与安装完成,待真机验收

提交:19fa1c7 fix(#152): leave saved address panel safely,已推送 main。

v3 修复

  • 保存前继续要求唯一详细地址输入框精确回读完整 expectedAddress,再点击唯一保存节点。
  • 保存后不再要求地址面板必须向无障碍树暴露 _cgN;改为要求 PDD 页面且详细地址编辑控件连续两个快照消失,确认已经离开编辑态。
  • 若当前尚不是订单确认页,只执行一次系统安全返回,再等待严格订单页证据。
  • 最终订单确认门禁未放宽:仍要求 PDD、唯一完整任务后缀、唯一创建订单目标、规格、数量和价格全部成立;任何一项缺失均失败且不创建订单。
  • Agent 提升为 0.9.25 (38)。

验证

  • 定向 PurchaseLiveAutomationTest:11 项通过。
  • 新增/调整覆盖:保存后地址过渡面板不暴露后缀时仍可安全返回;订单确认页随后必须再次验证后缀。
  • 编辑页仍存在时不能冒充保存完成;最终后缀缺失或多个独立后缀均失败关闭。
  • .\scripts\verify.ps1 -Component android:Debug/Release 全量单元测试与 Debug APK 构建通过。
  • assembleDebug assembleRelease:通过。
  • git diff --check:通过。

APK 与手机

  • Debug APK SHA-256:222161AF15F1C23522B840F4D662A4298EB324300F987CB99EE99FD3ADE6D58A
  • Release unsigned APK SHA-256:E7BB929648E9C2AC992E57F533F125C4690EDFAF9613C48BE368E5C96931EBD9
  • 一加 PKG110(3B65BD02H7F00000)覆盖安装成功。
  • 手机回读:versionName=0.9.25、versionCode=38。

安全与未执行

未自动创建或重试采购任务,未修改真实地址,未创建订单,未付款。下一次 live 真机任务仍由用户按高风险门禁明确发起。

文档

仅修复保存后安全返回的实现偏差,不改变共享 API、长期业务规则或安全边界;无长期文档影响,跳过 Wiki 更新与同步。

## #152 v3 实施、推送与安装完成,待真机验收 提交:`19fa1c7 fix(#152): leave saved address panel safely`,已推送 `main`。 ### v3 修复 - 保存前继续要求唯一详细地址输入框精确回读完整 `expectedAddress`,再点击唯一保存节点。 - 保存后不再要求地址面板必须向无障碍树暴露 `_cgN`;改为要求 PDD 页面且详细地址编辑控件连续两个快照消失,确认已经离开编辑态。 - 若当前尚不是订单确认页,只执行一次系统安全返回,再等待严格订单页证据。 - 最终订单确认门禁未放宽:仍要求 PDD、唯一完整任务后缀、唯一创建订单目标、规格、数量和价格全部成立;任何一项缺失均失败且不创建订单。 - Agent 提升为 `0.9.25 (38)`。 ### 验证 - 定向 `PurchaseLiveAutomationTest`:11 项通过。 - 新增/调整覆盖:保存后地址过渡面板不暴露后缀时仍可安全返回;订单确认页随后必须再次验证后缀。 - 编辑页仍存在时不能冒充保存完成;最终后缀缺失或多个独立后缀均失败关闭。 - `.\scripts\verify.ps1 -Component android`:Debug/Release 全量单元测试与 Debug APK 构建通过。 - `assembleDebug assembleRelease`:通过。 - `git diff --check`:通过。 ### APK 与手机 - Debug APK SHA-256:`222161AF15F1C23522B840F4D662A4298EB324300F987CB99EE99FD3ADE6D58A` - Release unsigned APK SHA-256:`E7BB929648E9C2AC992E57F533F125C4690EDFAF9613C48BE368E5C96931EBD9` - 一加 PKG110(`3B65BD02H7F00000`)覆盖安装成功。 - 手机回读:`versionName=0.9.25`、`versionCode=38`。 ### 安全与未执行 未自动创建或重试采购任务,未修改真实地址,未创建订单,未付款。下一次 live 真机任务仍由用户按高风险门禁明确发起。 ### 文档 仅修复保存后安全返回的实现偏差,不改变共享 API、长期业务规则或安全边界;无长期文档影响,跳过 Wiki 更新与同步。
Author
Owner

用户于 2026-08-29 明确确认本工单通过验收。验收结论已记录,现关闭工单。没有新的长期事实变化,本次不重复同步 Wiki。

用户于 2026-08-29 明确确认本工单通过验收。验收结论已记录,现关闭工单。没有新的长期事实变化,本次不重复同步 Wiki。
ila closed this issue 2026-08-29 20:44:25 +08:00
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: OPC/goauto#152