Files
cmbuyer/docs/tasks/T-002.md
T

2.9 KiB

id, title, phase, deps, status, created, vikunja_task_id, context_ref, work_branch, needs_device, needs_human_review, write_paths
id title phase deps status created vikunja_task_id context_ref work_branch needs_device needs_human_review write_paths
T-002 初始化采购工具 client Python 骨架 0
DOING 2026-08-03 17 a63bdb8 task/t-002-client-skeleton false false
docs/tasks/T-002.md
client/**
docs/03-tech-stack.md
docs/00-ai-start-here.md
docs/current-state.md

问题 / 背景

仓库尚无 client/requirements.txt 和可运行的采购工具代码,init.ps1 因此按预期以退出码 3 停止。没有稳定的 Python 包、测试入口、日志与产物策略,后续 ADB/uiautomator2 真机取证无法开始。

关联需求与交互

  • 功能:Phase 0 工程地基,不实现采购执行流程。
  • 用户故事 / 交互:不适用,本任务只建立应用骨架,不实现已确认原型的生产界面。
  • 架构 / API:遵循 docs/03-tech-stack.md 与 TaskSource / ResultSink 边界;不新增跨端接口。

方案

  1. 在 client/ 建立 Python 3.11+ 包、requirements.txt、应用入口和最小测试结构。
  2. 声明既定 PySide6 / uiautomator2 依赖,但基础单元测试不得要求连接真机。
  3. 建立日志和运行产物目录策略;本地虚拟环境与运行产物必须被 client 范围内的忽略规则排除,日志不得记录 token、地址、手机号或支付信息。
  4. 保证 python -m unittest discover -s tests -t . 与 python -m compileall -q src tests 可运行。
  5. T-001 关闭前不修改共享文档。先在 Vikunja 评论记录已验证的 client 命令;T-001 完成后由任务所有者先提交 write_paths 扩展,再更新共享文档并关闭 T-002。

验收要点

  • client/requirements.txt、src 包、应用入口和 tests 存在。
  • unittest 与 compileall 在 client/ 通过,且不需要真机。
  • 日志 / 产物路径和脱敏边界有测试或可验证配置。
  • 不包含拼多多页面判据、真机自动化实现、下单或付款代码。
  • 关闭 T-002 前,共享文档中的 client 占位命令已由扩展后的独占 write_paths 更新为实际命令。

执行记录

(暂无)

边界

  • 不实现拼多多页面判据、ADB/uiautomator2 真机流程、采购执行 UI 或任何 Phase 1+ 功能。
  • 不编写任何进入订单确认、提交订单、付款或支付相关代码。
  • 不修改 admin/、docs/api.md、docs/04-architecture.md、需求或交互原型。
  • T-001 为 DOING 时不修改共享文档;先在 Vikunja 记录验证命令。T-001 关闭后,必须先提交 write_paths 扩展,再更新 docs/03-tech-stack.md、docs/00-ai-start-here.md、 docs/current-state.md,不得绕过路径门禁。
  • 本地虚拟环境、缓存、日志和运行产物不得提交 Git;凭据和敏感信息不得进入日志。