[Epic] Client 拼多多任务采集与采购客户端 #1

Open
opened 2026-08-24 11:24:52 +08:00 by ila · 33 comments
Owner

背景

当前 Client 已完成需求、架构、数据模型、Admin 接口、界面和质量安全基线文档,需要按这些基线逐步实现一个由初级程序员可维护的 Windows 桌面客户端。

目标

实现基于 Python 3.10、PyQt5、Qt Widgets 和 PyQt-Fluent-Widgets 的 Client,支持:

  • 从 Admin 领取拼多多采集任务和采购任务;
  • 使用 uiautomator2 执行采集或演练/受控采购流程;
  • 将已领取任务、执行记录和待提交结果可靠保存到本地 SQLite;
  • 通过 Outbox 幂等提交结果;
  • 提供“PDD 任务”和“设置”两个顶级模块;
  • 满足真实下单安全门禁、崩溃恢复、线程和凭据保护要求。

非目标

  • 不实现 Admin 服务端;
  • 不绕过验证码、登录或平台风控;
  • 不自动付款;
  • 未通过安全门禁前不启用真实下单。

范围与架构决策

  • 长期基线以 docs/client/ 为准;
  • UI、事件、应用服务、领域模型、Gateway、Repository 和 PDD 适配层分离;
  • QWidget 仅在主线程访问,阻塞操���统一使用 QObject + moveToThread;
  • 本地数据先写 SQLite,再通过 Outbox 提交 Admin;
  • 顶级模块固定为“PDD 任务”和“设置”。

阶段路线

  1. Client 工程与 UI 骨架
  2. SQLite、Repository 与任务列表
  3. Admin Mock/Gateway 与领取提交闭环
  4. PDD 采集流程
  5. 采购演练、恢复与安全门禁
  6. 集成、打包和 MVP 验收

子工单

  • #2 Client 可运行任务闭环(MVP)

  • #3 拆分 PDD 与设置页面 UI 模块

  • #4 实现 PDD 任务列表 UI

  • #5 实现设置页设备管理 UI 与事件接口

  • #6 为当前设备增加保存与设备号生成

  • #7 实现 SQLite 初始化与 v1 迁移

  • #8 定义任务数据模型与 SQLite Repository

  • #9 PDD 任务列表接入 SQLite Repository

  • #10 定义 Admin Gateway 并实现 Mock 契约

  • #11 保存当前设备并登记 Client

  • #21 实现 Android 设备搜索

  • #22 保存当前使用的 Android 设备

  • #25 将勾选的 USB Android 设备转为 Wi-Fi ADB

  • #26 启动时自动恢复已保存的 Android 设备

  • #27 修复 Wi-Fi ADB 拔线后刷新丢失

  • #28 实现 uiautomator2 设备连接与 PDD 商品采集基础服务

  • #30 Client:领取 Admin 创建的采集任务

  • #32 Client:执行采集任务,把结果提交给 Admin

  • #29 设置页显示 PDD 安装状态并调整设备提示布局

  • #12 Admin�����新���幂等 Client 登记接口

  • #13 优化 Admin Windows 启动脚本并增加热重载

  • #44 优化 PDD 颜色采集等待时间

  • #45 让获取任务按钮支持持续自动运行和安全停止

依赖、风险与回退

  • Admin 未完成期间使用 Mock,不臆造正式响应。
  • 真实设备页面结构可能变化,解析必须使用脱敏 XML 固件回归验证。
  • 采购流程存在不可逆风险,默认演练模式并遵守项目红线。
  • 单元任务按独立提交回退,不混入无关修改。

最终验收标准

  • MVP 工单范围全部完成并通过集成验收;

  • PDD 任务与设置页面符合界面基线;

  • 采集任务形成领取、执行、持久化、提交闭环;

  • 采购流程在演练模式完成,真实下单安全门禁单独验收;

  • Windows 干净环境可安装、启动和运行;

  • 所有完成工单已在 docs/task 归档。

  • #63 为选中的采集任务增加重新执行入口

  • #66 修复旧 Wi-Fi 设备恢复失败时无法搜索 USB 设备

  • #70 允许等待重试的采集任务手动重新执行

  • #71 实���采购任���演练执行与结果回传

  • #72 安全领取并分派 Admin 采购任务

  • #73 完善采购任务崩溃恢复与安全门禁验证

  • #75 接入正式 uiautomator2 采购演练 Adapter

  • #82 优化重新执行提示、弹窗与取消交互

  • #84 采集采购前检��������� Android 设备连接�������态

  • #87 任务错误提示调整为窗口顶部居中

  • #89 PDD 任务表增加批量勾选和重新上报

  • #91 修复重新上报导致任务状态与 Outbox 不一致

  • #92 Client:建立 Windows 打包与发布清单基础

  • #93 Client:实现安全的在线检查、下载和下次启动更新

  • #94 Client:增加认证更新配置与启动自动检查

真实下单范围(2026-08-10)

真实下单(只创建未付款订单)不并入原 dry_run MVP,由跨项目 #96 和 #97 独立跟踪;未完成其安全门禁前,本工单继续保持 dry_run。

  • #102 Client:统一发布产物命名并生成固定清单

  • #103 Client:启动检查到新版本时提醒参数设置导航

PDD 任务列表交互完善(2026-08-10)

  • #107 领取任务后立即刷新列表并调整任务栏布局
  • #108 安全移除勾选的本地任务记录
  • #131 PDD 任务表增加全选和反选并移除详情列
  • #136 PDD 任务列表显示店铺名和最新执行用时

跨任务 uiautomator2 会话性能优化(2026-08-10)

本阶段属于 MVP 后续性能优化,不纳入 #2 或 #97。先由 #109 建�����分阶段耗时基线并完成低风险去重;只有数据达到工单内 Go/No-Go 门槛后,才实施 #110 的持久设备工作线程。会话复用不得跨线程共享 Device,也不得改变真实下单安全门禁。

  • #109 量化领取到商品页耗时并消除重复设备检查
  • #110 使用持久设备工作线程跨任务复用 uiautomator2 会话

PDD 商品链接失效识别(2026-08-10)

  • #111 识别失效 PDD 商品链接返回首页并安全终止当前任务

PDD 页面等待稳定性(2026-08-10)

  • #115 修复慢速前台查询导致 PDD 页面和规格面板误超时

设置页紧凑布局(2026-08-10)

  • #116 Client:压缩设置页布局并在启动时登记上线

#116 保持 #114 已删除的真实采购授权组件不再出现,重排当前设备和软件更新区域,并在已有 Client 身份时启动后异步调用现有登记接口一次,让 Admin 立即刷新上线时间;不新增心跳。更新密码按最新红线使用源码公开默认值 chengma,其他凭据保护边界不变。

采购数量输入法安全(2026-08-10)

  • #117 安全设置采购数量并关闭输入法遮挡

PDD 通用链接诊断(2026-08-10)

  • #118 增加 PDD 通用商品链接首页跳转诊断脚本

下单后自动核单闭环(2026-08-10)

  • #119 ���单后等待5秒自动进入只读核单闭环

采购状态读取性能(2026-08-10)

  • #120 减少采购流程重复前台查询并补充分段耗时

只读核单多视口证据合并(2026-08-10)

  • #122 修复只读核单前台误判并合并订单详情多视口字段

微信中间页返回后的只读核单稳定性(2026-08-10)

  • #124 等待微信中间页返回并准确报告只读核单失败

待付款订单最简核单(2026-08-10)

  • #126 简化待付款订单核单为编号和时间唯一匹配

设置页管理端地址与紧凑布局(2026-08-11)

  • #130 Client:紧凑排列设置字段并支持管理端地址统一切换

PDD 规格面板标题兼容(2026-08-11)

  • #137 修复带数量规格标题导致面板误报超时

PDD 批量人工执行(2026-08-11)

  • #138 批量重新采集并拆分任务执行按钮
  • #139 增加不可逆门禁保护的批量重新采购
  • #143 批量重新采集采购时实时刷新当前任务状态

历史采���链路验收补录(2026-08-11)

  • #35 修复 PDD 商品页误判与失败响应
  • #36 商品页就绪后立即进入规格面板
  • #37 规格面板蛇形逐色采价与尺码采集
  • #39 PDD 任务详情窗口与颜色价格展示
  • #40 商品详情页滚���采���评���数���和店铺�������������������������������������������������
  • #42 允许颜色缺价并继续采集尺码

PDD 任务详情复制(2026-08-11)

  • #145 任务详情字段支持双击复制

Client 窗口启动体验(2026-08-11)

  • #147 Client 启动时默认最大化主窗口

Client 正式地址与内置 ADB(2026-08-11)

  • #148 Client:将管理端默认地址切换为正式 HTTPS 地址
  • #149 Client:内置指定 ADB 并统一运行路径和缺失提示

PDD 非滚动规格面板兼容(2026-08-11)

  • #154 Client:兼容不暴露滚动属性的 PDD 规格面板

PDD 非滚动规格面板颜色节点兼容(2026-08-11)

  • #155 Client:兼容非滚动规格面板的颜色节点定位

PDD 售罄页识别(2026-08-11)

  • #159 Client:修复售罄推荐页误识别为规格面板

PDD 默认尺码与商品页补采优化(2026-08-11)

  • #160 Client:安全点击图片型颜色并取消默认尺码
  • #161 Client:商品详情补采最大滑动次数调整为6次

PDD 规格面板瞬态空树稳定性(2026-08-11)

  • #162 Client:规格面板临时空控件树稳定读取

PDD 补采速度与任务订单可读性(2026-08-11)

  • #163 Client:商品详情补采最大滑动次数调整为3次
  • #164 Client:任务列表展示PDD商品ID和订单信息

PDD 款式与套餐规格兼容(2026-08-11)

  • #166 Client:兼容款式与套餐规格分组

PDD 第二规格完整遍历(2026-08-11)

  • #167 Client:完整遍历尺码与套餐第二规格

PDD 纵向第二规格续页

  • #168 兼容纵向套餐标题滑出后的续页采集

自动任务失败后继续队列

  • #170 任务失败不自动重试并继续下一条

安全与诊断规则

  • #171 明确无障碍控件树 XML 的读取与隐私边界

  • #173 正式采购下单前更新地址采购编号标记

  • #175 兼容底部提交提示的非滚动规格面板

PDD 任务当前行快捷操作(2026-08-12)

  • #176 重新采集和重新采购支持当前行兜底

PDD 非滚动尺码采集兼容(2026-08-12)

  • #177 兼容非滚动规格面板的静态尺码采集

PDD 非滚动图片颜色采购兼容(2026-08-12)

  • #178 兼容非滚动图片颜���卡片的采购选择

PDD 收货地址编辑页稳定导航(2026-08-12)

  • #179 稳定进入收货地址编辑页并限制修改重试

PDD 地址保存与系统浮层兼容(2026-08-12)

  • #180 修复地址后缀分割并兼容保存后的 ColorOS 浮层

PDD 多地址面板兼容(2026-08-12)

  • #187 多地址面板只修改已设默认地址

PDD 多地址异步加载稳定性(2026-08-12)

  • #189 等待多地址列表稳定后再修改默认地址

PDD 快速购买确认页兼容(2026-08-12)

  • #190 兼容快速购买确认页进入规格选择面板

PDD 地址保存点击稳定性(2026-08-12)

  • #191 稳定地址表单后单次点击保存

PDD 地址操作稳定等待(2026-08-14)

  • #221 Client:地址流程关键操作后增加1秒稳定等待

PDD 采购规格面板顶部归位(2026-08-14)

  • #230 Client:采购规格面板选择颜色前先归位到顶部

PDD 采购规格繁简体安全匹配(2026-08-17)

  • #251 Client:安全兼容采购规格繁简体唯一匹配

采购运行时真机尺码纠偏(2026-08-17)

跨端 MVP #253 的 Client 范围只在正确商品、颜色已选、尺码完整遍历且目标不可见时采集候选,并在 Admin 返回白名单决策后重新读取页面、精确验证再继续。安全点击缺失、候选不完整、响应不确定或不可逆阶段均停止,不自动重新采购。详见 #256、#257。

  • #256 Client:采购尺码不匹配时完整采集真机候选

  • #257 Client:安全应用 Admin 规格解析结果并继续采购

  • #265 售罄临时页仅下拉刷新一次并重新识别商品

  • #266 修正规格候选遍历后的颜色复核顺序

  • #267 AI 规格返回后先选尺码再核对完整组合

  • #268 兼容无维度名摘要的纵向颜色列表归位

## 背景 当前 Client 已完成需求、架构、数据模型、Admin 接口、界面和质量安全基线文档,需要按这些基线逐步实现一个由初级程序员可维护的 Windows 桌面客户端。 ## 目标 实现基于 Python 3.10、PyQt5、Qt Widgets 和 PyQt-Fluent-Widgets 的 Client,支持: - 从 Admin 领取拼多多采集任务和采购任务; - 使用 uiautomator2 执行采集或演练/受控采购流程; - 将已领取任务、执行记录和待提交结果可靠保存到本地 SQLite; - 通过 Outbox 幂等提交结果; - 提供“PDD 任务”和“设置”两个顶级模块; - 满足真实下单安全门禁、崩溃恢复、线程和凭据保护要求。 ## 非目标 - 不实现 Admin 服务端; - 不绕过验证码、登录或平台风控; - 不自动付款; - 未通过安全门禁前不启用真实下单。 ## 范围与架构决策 - 长期基线以 `docs/client/` 为准; - UI、事件、应用服务、领域模型、Gateway、Repository 和 PDD 适配层分离; - QWidget 仅在主线程访问,阻塞操���统一使用 `QObject + moveToThread`; - 本地数据先写 SQLite,再通过 Outbox 提交 Admin; - 顶级模块固定为“PDD 任务”和“设置”。 ## 阶段路线 1. Client 工程与 UI 骨架 2. SQLite、Repository 与任务列表 3. Admin Mock/Gateway 与领取提交闭环 4. PDD 采集流程 5. 采购演练、恢复与安全门禁 6. 集成、打包和 MVP 验收 ## 子工单 - [ ] #2 Client 可运行任务闭环(MVP) - [x] #3 拆分 PDD 与设置页面 UI 模块 - [x] #4 实现 PDD 任务列表 UI - [x] #5 实现设置页设备管理 UI 与事件接口 - [x] #6 为当前设备增加保存与设备号生成 - [x] #7 实现 SQLite 初始化与 v1 迁移 - [x] #8 定义任务数据模型与 SQLite Repository - [x] #9 PDD 任务列表接入 SQLite Repository - [x] #10 定义 Admin Gateway 并实现 Mock 契约 - [x] #11 保存当前设备并登记 Client - [x] #21 实现 Android 设备搜索 - [x] #22 保存当前使用的 Android 设备 - [x] #25 将勾选的 USB Android 设备转为 Wi-Fi ADB - [x] #26 启动时自动恢复已保存的 Android 设备 - [x] #27 修复 Wi-Fi ADB 拔线后刷新丢失 - [x] #28 实现 uiautomator2 设备连接与 PDD 商品采集基础服务 - [x] #30 Client:领取 Admin 创建的采集任务 - [x] #32 Client:执行采集任务,把结果提交给 Admin - [x] #29 设置页显示 PDD 安装状态并调整设备提示布局 - [x] #12 Admin�����新���幂等 Client 登记接口 - [x] #13 优化 Admin Windows 启动脚本并增加热重载 - [x] #44 优化 PDD 颜色采集等待时间 - [x] #45 让获取任务按钮支持持续自动运行和安全停止 ## 依赖、风险与回退 - Admin 未完成期间使用 Mock,不臆造正式响应。 - 真实设备页面结构可能变化,解析必须使用脱敏 XML 固件回归验证。 - 采购流程存在不可逆风险,默认演练模式并遵守项目红线。 - 单元任务按独立提交回退,不混入无关修改。 ## 最终验收标准 - [ ] MVP 工单范围全部完成并通过集成验收; - [x] PDD 任务与设置页面符合界面基线; - [ ] 采集任务形成领取、执行、持久化、提交闭环; - [ ] 采购流程在演练模式完成,真实下单安全门禁单独验收; - [ ] Windows 干净环境可安装、启动和运行; - [ ] 所有完成工单已在 `docs/task` 归档。 - [x] #63 为选中的采集任务增加重新执行入口 - [x] #66 修复旧 Wi-Fi 设备恢复失败时无法搜索 USB 设备 - [x] #70 允许等待重试的采集任务手动重新执行 - [x] #71 实���采购任���演练执行与结果回传 - [x] #72 安全领取并分派 Admin 采购任务 - [x] #73 完善采购任务崩溃恢复与安全门禁验证 - [x] #75 接入正式 uiautomator2 采购演练 Adapter - [x] #82 优化重新执行提示、弹窗与取消交互 - [x] #84 采集采购前检��������� Android 设备连接�������态 - [x] #87 任务错误提示调整为窗口顶部居中 - [x] #89 PDD 任务表增加批量勾选和重新上报 - [x] #91 修复重新上报导致任务状态与 Outbox 不一致 - [x] #92 Client:建立 Windows 打包与发布清单基础 - [x] #93 Client:实现安全的在线检查、下载和下次启动更新 - [x] #94 Client:增加认证更新配置与启动自动检查 ## 真实下单范围(2026-08-10) 真实下单(只创建未付款订单)不并入原 dry_run MVP,由跨项目 #96 和 #97 独立跟踪;未完成其安全门禁前,本工单继续保持 dry_run。 - [x] #102 Client:统一发布产物命名并生成固定清单 - [x] #103 Client:启动检查到新版本时提醒参数设置导航 ## PDD 任务列表交互完善(2026-08-10) - [x] #107 领取任务后立即刷新列表并调整任务栏布局 - [x] #108 安全移除勾选的本地任务记录 - [x] #131 PDD 任务表增加全选和反选并移除详情列 - [x] #136 PDD 任务列表显示店铺名和最新执行用时 ## 跨任务 uiautomator2 会话性能优化(2026-08-10) 本阶段属于 MVP 后续性能优化,不纳入 #2 或 #97。先由 #109 建�����分阶段耗时基线并完成低风险去重;只有数据达到工单内 Go/No-Go 门槛后,才实施 #110 的持久设备工作线程。会话复用不得跨线程共享 Device,也不得改变真实下单安全门禁。 - [x] #109 量化领取到商品页耗时并消除重复设备检查 - [x] #110 使用持久设备工作线程跨任务复用 uiautomator2 会话 ## PDD 商品链接失效识别(2026-08-10) - [x] #111 识别失效 PDD 商品链接返回首页并安全终止当前任务 ## PDD 页面等待稳定性(2026-08-10) - [x] #115 修复慢速前台查询导致 PDD 页面和规格面板误超时 ## 设置页紧凑布局(2026-08-10) - [ ] #116 Client:压缩设置页布局并在启动时登记上线 #116 保持 #114 已删除的真实采购授权组件不再出现,重排当前设备和软件更新区域,并在已有 Client 身份时启动后异步调用现有登记接口一次,让 Admin 立即刷新上线时间;不新增心跳。更新密码按最新红线使用源码公开默认值 `chengma`,其他凭据保护边界不变。 ## 采购数量输入法安全(2026-08-10) - [x] #117 安全设置采购数量并关闭输入法遮挡 ## PDD 通用链接诊断(2026-08-10) - [x] #118 增加 PDD 通用商品链接首页跳转诊断脚本 ## 下单后自动核单闭环(2026-08-10) - [x] #119 ���单后等待5秒自动进入只读核单闭环 ## 采购状态读取性能(2026-08-10) - [x] #120 减少采购流程重复前台查询并补充分段耗时 ## 只读核单多视口证据合并(2026-08-10) - [x] #122 修复只读核单前台误判并合并订单详情多视口字段 ## 微信中间页返回后的只读核单稳定性(2026-08-10) - [x] #124 等待微信中间页返回并准确报告只读核单失败 ## 待付款订单最简核单(2026-08-10) - [x] #126 简化待付款订单核单为编号和时间唯一匹配 ## 设置页管理端地址与紧凑布局(2026-08-11) - [x] #130 Client:紧凑排列设置字段并支持管理端地址统一切换 ## PDD 规格面板标题兼容(2026-08-11) - [x] #137 修复带数量规格标题导致面板误报超时 ## PDD 批量人工执行(2026-08-11) - [x] #138 批量重新采集并拆分任务执行按钮 - [x] #139 增加不可逆门禁保护的批量重新采购 - [x] #143 批量重新采集采购时实时刷新当前任务状态 ## 历史采���链路验收补录(2026-08-11) - [x] #35 修复 PDD 商品页误判与失败响应 - [x] #36 商品页就绪后立即进入规格面板 - [x] #37 规格面板蛇形逐色采价与尺码采集 - [x] #39 PDD 任务详情窗口与颜色价格展示 - [x] #40 商品详情页滚���采���评���数���和店铺������������������������������������������������� - [x] #42 允许颜色缺价并继续采集尺码 ## PDD 任务详情复制(2026-08-11) - [x] #145 任务详情字段支持双击复制 ## Client 窗口启动体验(2026-08-11) - [x] #147 Client 启动时默认最大化主窗口 ## Client 正式地址与内置 ADB(2026-08-11) - [x] #148 Client:将管理端默认地址切换为正式 HTTPS 地址 - [x] #149 Client:内置指定 ADB 并统一运行路径和缺失提示 ## PDD 非滚动规格面板兼容(2026-08-11) - [x] #154 Client:兼容不暴露滚动属性的 PDD 规格面板 ## PDD 非滚动规格面板颜色节点兼容(2026-08-11) - [x] #155 Client:兼容非滚动规格面板的颜色节点定位 ## PDD 售罄页识别(2026-08-11) - [x] #159 Client:修复售罄推荐页误识别为规格面板 ## PDD 默认尺码与商品页补采优化(2026-08-11) - [x] #160 Client:安全点击图片型颜色并取消默认尺码 - [x] #161 Client:商品详情补采最大滑动次数调整为6次 ## PDD 规格面板瞬态空树稳定性(2026-08-11) - [x] #162 Client:规格面板临时空控件树稳定读取 ## PDD 补采速度与任务订单可读性(2026-08-11) - [x] #163 Client:商品详情补采最大滑动次数调整为3次 - [x] #164 Client:任务列表展示PDD商品ID和订单信息 ### PDD 款式与套餐规格兼容(2026-08-11) - [x] #166 Client:兼容款式与套餐规格分组 ### PDD 第二规格完整遍历(2026-08-11) - [x] #167 Client:完整遍历尺码与套餐第二规格 ### PDD 纵向第二规格续页 - [x] #168 兼容纵向套餐标题滑出后的续页采集 ### 自动任务失败后继续队列 - [x] #170 任务失败不自动重试并继续下一条 ### 安全与诊断规则 - [x] #171 明确无障碍控件树 XML 的读取与隐私边界 - [x] #173 正式采购下单前更新地址采购编号标记 - [x] #175 兼容底部提交提示的非滚动规格面板 ## PDD 任务当前行快捷操作(2026-08-12) - [x] #176 重新采集和重新采购支持当前行兜底 ## PDD 非滚动尺码采集兼容(2026-08-12) - [x] #177 兼容非滚动规格面板的静态尺码采集 ## PDD 非滚动图片颜色采购兼容(2026-08-12) - [x] #178 兼容非滚动图片颜���卡片的采购选择 ## PDD 收货地址编辑页稳定导航(2026-08-12) - [x] #179 稳定进入收货地址编辑页并限制修改重试 ## PDD 地址保存与系统浮层兼容(2026-08-12) - [x] #180 修复地址后缀分割并兼容保存后的 ColorOS 浮层 ## PDD 多地址面板兼容(2026-08-12) - [x] #187 多地址面板只修改已设默认地址 ## PDD 多地址异步加载稳定性(2026-08-12) - [x] #189 等待多地址列表稳定后再修改默认地址 ## PDD 快速购买确认页兼容(2026-08-12) - [x] #190 兼容快速购买确认页进入规格选择面板 ## PDD 地址保存点击稳定性(2026-08-12) - [x] #191 稳定地址表单后单次点击保存 ## PDD 地址操作稳定等待(2026-08-14) - [ ] #221 Client:地址流程关键操作后增加1秒稳定等待 ## PDD 采购规格面板顶部归位(2026-08-14) - [ ] #230 Client:采购规格面板选择颜色前先归位到顶部 ## PDD 采购规格繁简体安全匹配(2026-08-17) - [ ] #251 Client:安全兼容采购规格繁简体唯一匹配 ## 采购运行时真机尺码纠偏(2026-08-17) 跨端 MVP #253 的 Client 范围只在正确商品、颜色已选、尺码完整遍历且目标不可见时采集候选,并在 Admin 返回白名单决策后重新读取页面、精确验证再继续。安全点击缺失、候选不完整、响应不确定或不可逆阶段均停止,不自动重新采购。详见 #256、#257。 - [ ] #256 Client:采购尺码不匹配时完整采集真机候选 - [ ] #257 Client:安全应用 Admin 规格解析结果并继续采购 - [ ] #265 售罄临时页仅下拉刷新一次并重新识别商品 - [ ] #266 修正规格候选遍历后的颜色复核顺序 - [ ] #267 AI 规格返回后先选尺码再核对完整组合 - [ ] #268 兼容无维度名摘要的纵向颜色列表归位
Author
Owner

Client Android 设备阶段的 #21、#22、#25、#26、#27 已由用户验收通过并关闭;本地归档状态更新提交为 a6e3fe0。同时修正 #10 已关闭但父清单未勾选的问题。父工单继续保持开启,后续未拆分工作不受影响。

Client Android 设备阶段的 #21、#22、#25、#26、#27 已由用户验收通过并关闭;本地归档状态更新提交为 `a6e3fe0`。同时修正 #10 已关闭但父清单未勾选的问题。父工单继续保持开启,后续未拆分工作不受影响。
Author
Owner

子工单 #32 已完成代码与文档提交(2d1fdbe、51c2292),Client 采集→SQLite/Outbox→Admin 提交主链已接通;143 项 Client 测试和 Admin 全量测试通过。工单仍 open,等待稳定真机完成最终联调验收。

子工单 #32 已完成代码与文档提交(2d1fdbe、51c2292),Client 采集→SQLite/Outbox→Admin 提交主链已接通;143 项 Client 测试和 Admin 全量测试通过。工单仍 open,等待稳定真机完成最终联调验收。
Author
Owner

新增缺陷子工单 #35:修复 #32 真机联调发现的 PDD 商品页误判超时、失败响应缺少 result_id、超时无 XML 证据及误报 Admin 拒绝。现已开始实施。

新增缺陷子工单 #35:修复 #32 真机联调发现的 PDD 商品页误判超时、失败响应缺少 result_id、超时无 XML 证据及误报 Admin 拒绝。现已开始实施。
Author
Owner

子工单 #35 已完成代码与归档提交(c59b4b0、09b27ce):修复 PDD 页面焦点误判、失败回执缺 result_id、超时无 XML 证据和误报拒绝。Client 150 项及 Admin 全量测试通过;工单保持 open 等待真机验收。

子工单 #35 已完成代码与归档提交(c59b4b0、09b27ce):修复 PDD 页面焦点误判、失败回执缺 result_id、超时无 XML 证据和误报拒绝。Client 150 项及 Admin 全量测试通过;工单保持 open 等待真机验收。
Author
Owner

新增缺陷子工单 #36:参考 demo1/auto_v1.py,把正式采集顺序调整为首页立即点击规格入口,评价/店铺不再阻塞,并增加规格面板打开等待。现已开始实施。

新增缺陷子工单 #36:参考 demo1/auto_v1.py,把正式采集顺序调整为首页立即点击规格入口,评价/店铺不再阻塞,并增加规格面板打开等待。现已开始实施。
Author
Owner

??? #36 ??????????:?????????????????,??????????;153 ?????,?????????????????? e65cc2a,???? e08fd89?????? PDD_DATA_PRICE_MISSING ?????????????????

??? #36 ??????????:?????????????????,??????????;153 ?????,?????????????????? `e65cc2a`,???? `e08fd89`?????? `PDD_DATA_PRICE_MISSING` ?????????????????
Author
Owner

???????????????? #:????????????????,????????????;?????? color,???????#36 ????,??????????????????

???????????????? #:????????????????,????????????;?????? color,???????#36 ????,??????????????????
Author
Owner

更正上一条缺少编号的评论:关联工单已成功创建为 #37。规格面板将按动态行蛇形逐色点击采价,颜色完成后只收集尺码文字;价格粒度保持 color,不按尺码采价。#36 保持开启,等待端到端复验。

更正上一条缺少编号的评论:关联工单已成功创建为 #37。规格面板将按动态行蛇形逐色点击采价,颜色完成后只收集尺码文字;价格粒度保持 color,不按尺码采价。#36 保持开启,等待端到端复验。
Author
Owner

关联工单 #37 已完成代码和自动测试:蛇形逐色采价、同价颜色、空 selected_text 降级、尺码只读及 SQLite/Outbox 顺序均已覆盖,156 项测试通过。实现 9562da9,归档 6c12e05。真机复验被三星支付安全提示阻塞,未绕过安全提示;#36 和 #37 都保持开启等待人工处理提示后验收。

关联工单 #37 已完成代码和自动测试:蛇形逐色采价、同价颜色、空 selected_text 降级、尺码只读及 SQLite/Outbox 顺序均已覆盖,156 项测试通过。实现 9562da9,归档 6c12e05。真机复验被三星支付安全提示阻塞,未绕过安全提示;#36 和 #37 都保持开启等待人工处理提示后验收。
Author
Owner

新增 Client 单元工单 #39:实现只读任务详情窗口,颜色在上并显示逐色价格、尺码在下,连接现有详情/双击/Enter 入口。

新增 Client 单元工单 #39:实现只读任务详情窗口,颜色在上并显示逐色价格、尺码在下,连接现有详情/双击/Enter 入口。
Author
Owner

子工单 #39 已实现并归档,当前等待用户验收。实现提交 cb323d3,归档提交 18770f2;Client 162 项测试全部通过。

子工单 #39 已实现并归档,当前等待用户验收。实现提交 `cb323d3`,归档提交 `18770f2`;Client 162 项测试全部通过。
Author
Owner

新增 MVP 单元工单:- [ ] #40 商品详情页滚动采集评价数量和店铺名。范围限定为首屏采集与规格面板之间的商品元数据补采,不修改标题、规格入口、颜色价格或尺码算法。

新增 MVP 单元工单:- [ ] #40 商品详情页滚动采集评价数量和店铺名。范围限定为首屏采集与规格面板之间的商品元数据补采,不修改标题、规格入口、颜色价格或尺码算法。
Author
Owner

子工单 #40 已实现并归档,等待真机验收。实现提交 9dadac2,归档提交 d199867;Client 166 项测试通过。#39 的当前步骤中文化验收修正也已提交(2f83be5)。

子工单 #40 已实现并归档,等待真机验收。实现提交 `9dadac2`,归档提交 `d199867`;Client 166 项测试通过。#39 的当前步骤中文化验收修正也已提交(`2f83be5`)。
Author
Owner

新增单元工单 #42:允许颜色缺价并继续采集尺码提交结果。范围仅为解除缺价阻断、补测试与文档;不调整遍历算法和接口结构。

新增单元工单 #42:允许颜色缺价并继续采集尺码提交结果。范围仅为解除缺价阻断、补测试与文档;不调整遍历算法和接口结构。
Author
Owner

单元工单 #42 已实现并完成自动化验证:颜色缺价不再阻断尺码采集和结果提交。提交 5aaf0a9、归档 033bef0;当前等待真机验收,工单保持打开。

单元工单 #42 已实现并完成自动化验证:颜色缺价不再阻断尺码采集和结果提交。提交 `5aaf0a9`、归档 `033bef0`;当前等待真机验收,工单保持打开。
Author
Owner

单元工单 #44 已实现并归档:颜色采价改为状态驱动短间隔等待,水平滑动减少固定等待;31 项专项、172 项 Client 全量测试通过。提交 ed72e62、7b104e3、cbb03fa,当前等待真机耗时与数据完整度验收。

单元工单 #44 已实现并归档:颜色采价改为状态驱动短间隔等待,水平滑动减少固定等待;31 项专项、172 项 Client 全量测试通过。提交 `ed72e62`、`7b104e3`、`cbb03fa`,当前等待真机耗时与数据完整度验收。
Author
Owner

#45 已完成代码实现与本地归档,当前等待用户真机验收。实现提交 5fd7198,归档提交 7fb137f,Client 全量测试 176 项通过。父工单清单暂保持未完成,验收通过后再勾选并关闭 #45。

#45 已完成代码实现与本地归档,当前等待用户真机验收。实现提交 `5fd7198`,归档提交 `7fb137f`,Client 全量测试 176 项通过。父工单清单暂保持未完成,验收通过后再勾选并关闭 #45。
Author
Owner

#116 已按用户最新决定更新:软件更新公开默认密码 chengma 必须写入 Client 源码和 Git。根与 Client 规则增加此唯一例外;其他密码、Token、Cookie 的保护边界不变。

#116 已按用户最新决定更新:软件更新公开默认密码 `chengma` 必须写入 Client 源码和 Git。根与 Client 规则增加此唯一例外;其他密码、Token、Cookie 的保护边界不变。
Author
Owner

PDD 批量人工执行进度(2026-08-11)

  • #138 已实施并归档,状态:待用户真机验收。
  • #139 已实施并归档,状态:待用户按采购安全门禁真机验收。
  • 实现提交:598c808
  • Client 全量 370 项测试通过;两个子工单暂不关闭,清单保持未勾选。
## PDD 批量人工执行进度(2026-08-11) - #138 已实施并归档,状态:待用户真机验收。 - #139 已实施并归档,状态:待用户按采购安全门禁真机验收。 - 实现提交:`598c808` - Client 全量 370 项测试通过;两个子工单暂不关闭,清单保持未勾选。
Author
Owner

Client 工单批量验收同步(2026-08-11)

用户明确验收通过 43 个 Client 单元工单。本地归档状态已更新,验收记录提交为 eca9289,对应单元工单均已关闭。

本父工单中存在的对应清单已更新为完成;此前未进入父清单的历史采集链路 #35、#36、#37、#39、#40、#42 已补录为完成。父工单仍有其他未完成范围,因此保持打开。

## Client 工单批量验收同步(2026-08-11) 用户明确验收通过 43 个 Client 单元工单。本地归档状态已更新,验收记录提交为 `eca9289`,对应单元工单均已关闭。 本父工单中存在的对应清单已更新为完成;此前未进入父清单的历史采集链路 #35、#36、#37、#39、#40、#42 已补录为完成。父工单仍有其他未完成范围,因此保持打开。
Author
Owner

任务进度同步:#103、#136、#143 已由用户验收通过并关闭;父工单清单已更新。验收记录提交:cc595c1。

任务进度同步:#103、#136、#143 已由用户验收通过并关闭;父工单清单已更新。验收记录提交:`cc595c1`。
Author
Owner

PDD 默认尺码与商品页补采优化进度(2026-08-11)

  • #160 已实现并归档,状态:待用户真机验收;实现 2679106,归档 e96cbca。
  • #161 已实现并归档,状态:待用户真机验收;实现 47a59a2,归档 a4f420c。
  • Client 完整回归 407 项通过。

两个父清单暂保持未勾选,用户验收通过后再关闭子工单并同步父工单。

## PDD 默认尺码与商品页补采优化进度(2026-08-11) - #160 已实现并归档,状态:待用户真机验收;实现 `2679106`,归档 `e96cbca`。 - #161 已实现并归档,状态:待用户真机验收;实现 `47a59a2`,归档 `a4f420c`。 - Client 完整回归 407 项通过。 两个父清单暂保持未勾选,用户验收通过后再关闭子工单并同步父工单。
Author
Owner

PDD 规格面板瞬态空树稳定性进度(2026-08-11)

#162 已实现并归档,状态为待用户真机验收。实现提交 bd1d095,归档提交 f859b58,Client 完整 410 项测试通过。父清单暂保持未勾选,验收通过后再关闭并同步。

## PDD 规格面板瞬态空树稳定性进度(2026-08-11) #162 已实现并归档,状态为待用户真机验收。实现提交 `bd1d095`,归档提交 `f859b58`,Client 完整 410 项测试通过。父清单暂保持未勾选,验收通过后再关闭并同步。
Author
Owner

进度更新:#163(商品详情补采最大滑动次数调整为 3 次)和 #164(任务列表展示 PDD 商品 ID、订单号及采购结果)均已完成实现、测试和本地归档,当前等待用户验收;父工单清单暂保持未勾选。

进度更新:#163(商品详情补采最大滑动次数调整为 3 次)和 #164(任务列表展示 PDD 商品 ID、订单号及采购结果)均已完成实现、测试和本地归档,当前等待用户验收;父工单清单暂保持未勾选。
Author
Owner

#166 已完成实现、全量测试和本地归档,当前等待用户用真机商品 757123298435 验收;父工单清单暂保持未勾选。

#166 已完成实现、全量测试和本地归档,当前等待用户用真机商品 `757123298435` 验收;父工单清单暂保持未勾选。
Author
Owner

#167 已完成代码与自动化验证,当前待用户真机验收。实现提交 18678e1,归档提交 6984e06;Client 完整 422 项测试通过。父工单清单暂不勾选,验收通过后再同步关闭。

#167 已完成代码与自动化验证,当前待用户真机验收。实现提交 `18678e1`,归档提交 `6984e06`;Client 完整 422 项测试通过。父工单清单暂不勾选,验收通过后再同步关闭。
Author
Owner

#168 已完成实现和自动化验证,当前待真机验收。实现提交 94793ab,归档提交 1730c57;Client 完整 423 项测试通过。父工单清单暂不勾选,验收通过后再同步关闭。

#168 已完成实现和自动化验证,当前待真机验收。实现提交 `94793ab`,归档提交 `1730c57`;Client 完整 423 项测试通过。父工单清单暂不勾选,验收通过后再同步关闭。
Author
Owner

#168 已根据真机失败 XML 完成第二次修订:6ed2305,归档更新 c61a028。已兼容“套餐名称 + 尾部价格”和接近全宽的长套餐,Client 423 项测试通过,当前再次等待真机验收。

#168 已根据真机失败 XML 完成第二次修订:`6ed2305`,归档更新 `c61a028`。已兼容“套餐名称 + 尾部价格”和接近全宽的长套餐,Client 423 项测试通过,当前再次等待真机验收。
Author
Owner

#170 已完成实现并待验收:任务自身失败上报后继续下一条,不自动重试;全局阻塞仍停止。实现 8b8a542,归档 88d59e4,Client 429 项测试通过。父工单清单暂不勾选。

#170 已完成实现并待验收:任务自身失败上报后继续下一条,不自动重试;全局阻塞仍停止。实现 `8b8a542`,归档 `88d59e4`,Client 429 项测试通过。父工单清单暂不勾选。
Author
Owner

#171 已完成并待验收:根目录规则已明确无障碍 XML 的合规读取、个人数据临时保存和脱敏边界,同时保留不得绕过平台机制的红线。提交 5e81c6a,归档 62f7428。

#171 已完成并待验收:根目录规则已明确无障碍 XML 的合规读取、个人数据临时保存和脱敏边界,同时保留不得绕过平台机制的红线。提交 `5e81c6a`,归档 `62f7428`。
Author
Owner

用户于 2026-08-13 批量验收通过相关单元工单,已关闭并同步勾选:#130、#131、#137、#138、#145、#147、#148、#149、#154、#155、#159、#160、#161、#162、#163、#164、#166、#167、#168、#170、#171、#173、#175、#176、#177、#178、#179、#180、#187、#189、#190、#191。本地归档状态提交:ad44f83。父工单仍按其余未完成范围保持打开。

用户于 2026-08-13 批量验收通过相关单元工单,已关闭并同步勾选:#130、#131、#137、#138、#145、#147、#148、#149、#154、#155、#159、#160、#161、#162、#163、#164、#166、#167、#168、#170、#171、#173、#175、#176、#177、#178、#179、#180、#187、#189、#190、#191。本地归档状态提交:`ad44f83`。父工单仍按其余未完成范围保持打开。
Author
Owner

新增单元工单 #221:在正式采购地址流程六类关键状态改变操作后增加统一 1 秒稳定等待,同时保留页面状态轮询、唯一目标、单次保存和不可逆安全门禁。

新增单元工单 #221:在正式采购地址流程六类关键状态改变操作后增加统一 1 秒稳定等待,同时保留页面状态轮询、唯一目标、单次保存和不可逆安全门禁。
Author
Owner

新增单元工单 #230:采购规格面板打开后,若正式颜色区域不可见,则在可靠容器中有界归位到顶部,再复用现有颜色和尺码选择逻辑。

新增单元工单 #230:采购规格面板打开后,若正式颜色区域不可见,则在可靠容器中有界归位到顶部,再复用现有颜色和尺码选择逻辑。
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: OPC/cmautobuy#1