3.5 KiB
3.5 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 | DONE | 2026-08-03 | 17 | a63bdb8 |
task/t-002-client-skeleton | false | false |
|
问题 / 背景
仓库尚无 client/requirements.txt 和可运行的采购工具代码,init.ps1 因此按预期以退出码 3 停止。没有稳定的 Python 包、测试入口、日志与产物策略,后续 ADB/uiautomator2 真机取证无法开始。
关联需求与交互
- 功能:Phase 0 工程地基,不实现采购执行流程。
- 用户故事 / 交互:不适用,本任务只建立应用骨架,不实现已确认原型的生产界面。
- 架构 / API:遵循 docs/03-tech-stack.md 与 TaskSource / ResultSink 边界;不新增跨端接口。
方案
- 在 client/ 建立 Python 3.11+ 包、requirements.txt、应用入口和最小测试结构。
- 声明既定 PySide6 / uiautomator2 依赖,但基础单元测试不得要求连接真机。
- 建立日志和运行产物目录策略;本地虚拟环境与运行产物必须被 client 范围内的忽略规则排除,日志不得记录 token、地址、手机号或支付信息。
- 保证 python -m unittest discover -s tests -t . 与 python -m compileall -q src tests 可运行。
- T-001 关闭前不修改共享文档。先在 Vikunja 评论记录已验证的 client 命令;T-001 完成后由任务所有者先提交 write_paths 扩展,再更新共享文档并关闭 T-002。
验收要点
- client/requirements.txt、src 包、应用入口和 tests 存在。
- unittest 与 compileall 在 client/ 通过,且不需要真机。
- 日志 / 产物路径和脱敏边界有测试或可验证配置。
- 不包含拼多多页面判据、真机自动化实现、下单或付款代码。
- 关闭 T-002 前,共享文档中的 client 占位命令已由扩展后的独占 write_paths 更新为实际命令。
执行记录
2026-08-03T10:30:56Z · ila
主 agent 终审通过:采购工具 Python 3.11+ 骨架、PySide6 最小入口、运行目录和敏感日志脱敏策略均已落成;无真机、页面判据、下单或付款逻辑。 独立验证:6 项 unittest 通过;compileall 通过;wheel 构建及 requirements.txt→Requires-Dist 元数据核对通过;Python 3.12 editable install 通过;离屏窗口构造通过;采购服务 race/vet/build 回归及 agent-context 门禁通过。 共享文档已更新为 T-002 完成快照,并如实保留 init.ps1 默认 Python 3.10 风险给 T-003。
边界
- 不实现拼多多页面判据、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;凭据和敏感信息不得进入日志。