From 1dc83086a0623a29e135cff6f8f7b31d24c5ebf3 Mon Sep 17 00:00:00 2001 From: QiuSW <105186638@qq.com> Date: Tue, 4 Aug 2026 09:51:00 +0800 Subject: [PATCH] docs(tasks): complete T-102 product link validation --- docs/03-tech-stack.md | 5 +++-- docs/current-state.md | 16 ++++++++-------- docs/tasks/T-102.md | 8 ++++++-- 3 files changed, 17 insertions(+), 12 deletions(-) diff --git a/docs/03-tech-stack.md b/docs/03-tech-stack.md index 19315b4..603926f 100644 --- a/docs/03-tech-stack.md +++ b/docs/03-tech-stack.md @@ -103,7 +103,7 @@ D:\Portable\adb\adb.exe devices -l 和哈希,不得把原始证据提交 Git。USB 与 WiFi 已分别由人完成取证和隐私检查,设备型号、Android、 拼多多版本、产物路径及 SHA-256 已记录到 T-101;上述命令保留用于可审计的复现与排障。 -### T-102 按链接打开商品取证(离线实现已通过,等待人工真机验收) +### T-102 按链接打开商品取证(2026-08-04 已完成人工真机验收) `client/scripts/capture_product_open.py` 只接受 `https://mobile.yangkeduo.com/goods.html?goods_id=<纯数字>` 的唯一 canonical 表示。解析后由 @@ -122,7 +122,8 @@ D:\Portable\adb\adb.exe devices -l 声称已到详情页。成功目录以原子方式发布,manifest 仅记录 `goods_id`、canonical URL、 设备/App 非敏感元数据、受限命令摘要、文件路径和 SHA-256,不含原始 serial、Activity 或页面正文。 必须由人本地确认截图对应目标商品并检查截图/XML 无地址、手机号、支付信息或其他无关隐私;原始 -证据不得提交 Git,人工确认前 T-102 保持 `DOING`。 +证据不得提交 Git。T-102 已由人确认 goods_id `958756616606` 对应目标商品并完成截图/XML 隐私检查, +设备、版本、证据路径与 SHA-256 已记录到任务执行记录。 Windows 的标准入口是仓库根 `./init.ps1`。它要求 Go、两端目录及其哨兵文件存在;已有合规 `client/.venv` 时,所有采购工具检查与 validator 都使用该解释器。只有 venv 不存在时,才从 `py -0p` diff --git a/docs/current-state.md b/docs/current-state.md index 424af1e..d8af8fc 100644 --- a/docs/current-state.md +++ b/docs/current-state.md @@ -12,7 +12,7 @@ ## 当前快照 - 日期:2026-08-04 -- 阶段:**Phase 1 · 真机可行性(T-101 已完成,T-102 离线实现已通过,等待人工真机验收)** +- 阶段:**Phase 1 · 真机可行性(T-101、T-102 已完成人工真机验收,下一步 T-103)** - MVP 形态:手工填链接建单 → 批量开始试选 → 定时轮询 → **第一趟试选** → 人工确认 → **第二趟下单** → 待付款 - 技术栈:已定。采购服务(`admin/`)使用 Go 1.23+ / gin / SQLite;采购工具(`client/`) 使用 Python 3.11+ / uiautomator2 / PySide6。 @@ -28,15 +28,15 @@ 并且不覆盖低版本环境;成功后打印真实启动命令。 - 标准验证路径:`./init.ps1` 已实际跑通 admin 的 mod download / test / vet / build、client 的 editable install / 包导入 / unittest / compileall,以及仓库上下文校验。可单独运行两端命令诊断。 -- 当前 blocker:T-102 离线代码与构建门禁已通过,等待人使用明确的 canonical 商品链接执行真机取证, - 确认截图对应目标商品并完成隐私检查。T-102 在人工验收前保持 `DOING`;T-103 与 Phase 2 均不能抢跑。 +- 当前 blocker:无外部 blocker。T-102 已证明 canonical 链接可在拼多多 8.17.0 打开到目标商品并完成 + 人工隐私验收;下一步落成 T-103 的规格面板证据与试选验证。T-103 通过前 Phase 2 仍不能抢跑。 ## 当前目录要点 | 路径 | 状态 | 说明 | | --- | --- | --- | | `docs/` | 已有 | 项目规范化文档,本次已完整生成 | -| `docs/tasks/` | 已有(T-001~T-004、T-005~T-009、T-101~T-102) | T-001~T-004、T-101 已完成;T-102 正在人工验收 | +| `docs/tasks/` | 已有(T-001~T-004、T-005~T-009、T-101~T-102) | T-001~T-004、T-101~T-102 已完成;下一任务为 T-103 | | `docs/design/` | 已有(6 个原型) | web 登录 / 建单 / 工作台 / 详情,desk 采购执行 / 配置;均已人工确认 | | `scripts/` | 已有 | 上下文门禁、Vikunja 单向导出与 MCP 启动包装 | | `admin/` | 已初始化 | Go 1.23+ / gin / SQLite,含核心模型、迁移与状态机;无真机采购执行 | @@ -51,9 +51,9 @@ 源码目录契约)、T-008(Vikunja 任务权威与单向导出)、T-009(MVP 关键路径与并行波次), 以及 T-001(采购服务 Go 骨架)。 - 已完成:T-002(采购工具 Python 骨架)、T-003(双端统一初始化与验证入口)、 - T-004(核心数据模型)、T-101(真机环境盘点与 USB/WiFi 双通道人工验收)。T-102 离线实现 - 已通过,等待人工真机验收;通过后推进 T-103。 -- T-102 → T-103 是当前最高优先级和 MVP 生死线。T-103 通过前不开发依赖真机可读字段的 + T-004(核心数据模型)、T-101(真机环境盘点与 USB/WiFi 双通道人工验收)、T-102(canonical + 链接打开与目标商品/隐私人工验收)。下一步推进 T-103。 +- T-103 是当前最高优先级和 MVP 生死线。通过前不开发依赖真机可读字段的 Phase 2 生产页面。 - 已确认原型继续只作信息架构依据;原型假数据不调用真实接口、不驱动真机。真机结论改变 可读字段时必须先回修原型与交互清单。 @@ -131,7 +131,7 @@ D:\Portable\adb\adb.exe devices -l 它不点击、滑动、输入或判断商品页节点,也不打开规格、读取价格、进入下单或支付。运行拼多多版本必须精确为 `8.17.0`,否则在 intent 前停止。成功后由人本地查看截图/XML,确认页面确为该 `goods_id` 对应商品并 检查无地址、手机号、支付信息或其他无关隐私;只回报 manifest 路径及截图/XML SHA-256,原始证据 -不得提交 Git。人工确认前 T-102 必须保持 `DOING`。 +不得提交 Git。T-102 已由人确认 goods_id `958756616606` 的目标商品及截图/XML 隐私,并完成验收。 ## 关键背景 diff --git a/docs/tasks/T-102.md b/docs/tasks/T-102.md index 6ddfa43..a0be120 100644 --- a/docs/tasks/T-102.md +++ b/docs/tasks/T-102.md @@ -3,7 +3,7 @@ id: T-102 title: 验证按链接打开商品详情页 phase: 1 deps: [T-101] -status: DOING +status: DONE created: 2026-08-04 vikunja_task_id: 22 context_ref: 393f26d @@ -22,7 +22,7 @@ write_paths: - docs/current-state.md --- - + ## 问题 / 背景 T-101 已证明同一台 PKG110(Android 16、拼多多 8.17.0)可通过 USB/WiFi 显式 serial 完成只读截图与完整 XML 取证。MVP 下一风险是任务自带的合法拼多多链接能否由 Android intent 打开到对应商品详情页。此前项目和旧文档不能证明当前 App 的行为;若先写详情页判据,会把未经本项目真机验证的假设带入 T-103。 @@ -74,6 +74,10 @@ T-101 已证明同一台 PKG110(Android 16、拼多多 8.17.0)可通过 USB/ ### 2026-08-04T01:46:35Z · ila 2026-08-04 人工真机重跑已成功:人先退出到拼多多首页,再用 WiFi serial `192.168.0.173:5555`、goods_id `958756616606` 执行同一命令,证据原子发布到 `C:\Users\ila20\AppData\Local\cmbuyer\artifacts\T-102\product-open-958756616606`。manifest 记录 PKG110 / Android 16 / PDD 8.17.0 / current package `com.xunmeng.pinduoduo` / intent status ok;截图 SHA-256 `be9ea1f53b13fec82fd716875567870132ef0a1480cfbec5ad603436d774d81c`,XML SHA-256 `1449e78a154fddf7108e63a14a2e85bf74f162f4689c1fe95f2cb67fdb7b4fc5`。主 agent 只读取 manifest 并重新计算哈希,二者均匹配;未打开原始截图/XML。仍等待人明确确认截图对应目标商品且截图/XML 无地址、手机号、支付信息或其他无关隐私,确认前 T-102 保持 DOING。 + +### 2026-08-04T01:49:55Z · ila + +2026-08-04 人工最终验收:人已查看本地 screenshot.png,确认对应 goods_id 958756616606;并确认截图与 hierarchy.xml 不含地址、手机号、支付信息或其他无关隐私。T-102 的 canonical 链接打开、PDD 8.17.0 前台 package、证据原子发布与人工页面对应性验收全部通过,允许关闭。 ## 边界