From 8ba9b231f47a6177e061cc9dd44fa357843ebfe2 Mon Sep 17 00:00:00 2001 From: QiuSW <105186638@qq.com> Date: Tue, 4 Aug 2026 15:53:16 +0800 Subject: [PATCH] docs(tasks): start single-pass purchase redesign --- docs/tasks/T-103.md | 10 ++++-- docs/tasks/T-111.md | 74 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 81 insertions(+), 3 deletions(-) create mode 100644 docs/tasks/T-111.md diff --git a/docs/tasks/T-103.md b/docs/tasks/T-103.md index 2398464..5cac5fc 100644 --- a/docs/tasks/T-103.md +++ b/docs/tasks/T-103.md @@ -2,8 +2,8 @@ id: T-103 title: 验证规格面板精确选择与 SKU 单价 phase: 1 -deps: [T-102, T-110] -status: DOING +deps: [T-102, T-110, T-111] +status: BLOCKED created: 2026-08-04 vikunja_task_id: 23 context_ref: 1dc8308 @@ -25,7 +25,7 @@ write_paths: - docs/current-state.md --- - + ## 问题 / 背景 T-102 已证明 canonical 链接可进入目标商品。T-103 在 PKG110 / Android 16 / 拼多多 8.17.0、goods_id `937122477375` 上确认:规格面板只能由详情页精确唯一的“快要抢光”打开;T-110 已把该入口批准为可逆、能力受限的第一趟导航。面板刚打开时目标颜色“黑色CHA(纯棉)”和尺码“M(建议100-115)”自动选中。 @@ -164,6 +164,10 @@ T-103 sanitizer v2 坐标修正与主审:提交 44c027a 将 screenshot space ### 2026-08-04T07:45:57Z · ila 2026-08-04 最终范围澄清:上一条“正式截图仍需脱敏/裁剪”的记录已被项目所有者新决定取代。cmbuyer 是内部系统,正式第一趟允许把包含页面已显示地址/手机号的原始截图上传采购服务,不做遮罩或裁剪;T-204 负责设备鉴权上传、SHA-256 校验与管理员会话访问。完整 XML、普通日志、Git、Vikunja 和支付凭据仍不接收。T-103 立即停止遮罩开发,继续受控规格选择与 SKU 读价,任务保持 Doing。 + +### 2026-08-04T07:52:38Z · ila + +2026-08-04:项目所有者确认管理员点击“开始采购”即授权创建待付款订单,MVP 从两趟人工确认改为单趟采购。T-103 暂停,等待 T-111 先重写状态机、授权、价格闸门与任务依赖;暂停期间不得继续实现 TrialSkuFlow 或任何数量/确认页/提交代码。T-103 仍为未完成任务。 ## 边界 diff --git a/docs/tasks/T-111.md b/docs/tasks/T-111.md new file mode 100644 index 0000000..5c13586 --- /dev/null +++ b/docs/tasks/T-111.md @@ -0,0 +1,74 @@ +--- +id: T-111 +title: 调整为开始采购授权的单趟流程 +phase: 1 +deps: [T-004, T-010, T-110] +status: DOING +created: 2026-08-04 +vikunja_task_id: 28 +context_ref: efeb2d9 +work_branch: task/t-111-single-pass +needs_device: false +needs_human_review: false +write_paths: + - AGENTS.md + - README.md + - docs/00-ai-start-here.md + - docs/01-vision.md + - docs/02-requirements.md + - docs/03-tech-stack.md + - docs/04-architecture.md + - docs/05-coding-rules.md + - docs/06-tasks.md + - docs/07-user-stories.md + - docs/08-interaction-checklist.md + - docs/api.md + - docs/current-state.md + - docs/routes.md + - docs/tasks/T-103.md + - docs/tasks/T-111.md +--- + + +## 问题 / 背景 + +项目原设计为两趟:先试选并等待管理员确认,再重新进入商品创建待付款订单。项目所有者为加快内部采购,决定取消试选后的人工确认;管理员在任务列表勾选并点击“开始采购”即明确授权采购工具创建一笔待付款订单。系统仍绝不自动付款。 + +## 关联需求与交互 + +- 重写 MVP 主流程、状态机、价格闸门、授权与提交围栏。 +- 同步需求、用户故事、交互、路由、API、任务路线图与当前状态。 +- T-103 暂停并改为单趟流程的规格选择/读价前置;T-202 只建 DRAFT,不受影响;T-203 起按新流程重排。 + +## 方案 + +1. DRAFT 任务只有管理员勾选并点击“开始采购(只创建待付款订单)”后才能进入设备队列;该动作在服务端事务中创建一次性授权,锁定任务版本、goods_id、颜色、尺码、数量和最高总价。 +2. 采购工具领取后同一趟完成:打开商品、受控打开规格面板、精确选规格、闸门一读价并校验上限、设置及复核数量、闸门二重读同价与选中态、进入确认页、闸门三核对实付款、服务端原子提交围栏、只点击一次“提交订单”。 +3. 删除 WAITING_CONFIRMATION、人工“机器选对了吗”、授权锁定试选价和第二次重新打开商品;截图改为内部审计证据,不作为下单前人工审批。 +4. 授权在围栏前失败/过期可回到 DRAFT 等管理员重新开始;围栏建立后只能调和同一提交,禁止重试、释放或签发第二笔。 +5. 不付款、提交四条件、精确规格、数量复核、价格只读规格面板/订单确认页、外部支付/安全校验停止等红线不放宽。 +6. 先提交文档契约,再恢复客户端或新增生产代码。 + +## 验收要点 + +- 所有活跃文档只描述单趟采购,不再把两趟或 WAITING_CONFIRMATION 当作 MVP 现实。 +- “开始采购”与一次性授权、批量原子性、价格闸门、提交围栏和一次点击的关系明确。 +- API/状态机/数据模型/任务路线图一致,截图为内部证据而非审批前置。 +- T-103 新边界继续禁止数量、确认页和提交代码,直到后续任务按新依赖实现;不得借架构调整提前触碰真机不可逆动作。 +- Vikunja 导出、agent-context、diff-check 与完整双端门禁通过。 + +## 执行记录 + +(暂无) + + +## 边界 + +- 管理员点击“开始采购(只创建待付款订单)”是进入设备队列前唯一的人类授权动作;创建 `DRAFT` + 本身不得触发设备领取、创建授权、提交订单或付款。 +- 单趟流程仍必须保留规格精确匹配、数量读回复核、规格面板两次同价校验、订单确认页金额上限、 + 服务端提交围栏、提交控件唯一和点击一次;不得以“提速”为由删除或弱化任一项。 +- 系统只创建待付款订单,任何路径都不自动付款,不点击支付、免密支付、先用后付或扣款控件。 +- 围栏前失败或授权过期可以回到 `DRAFT` 等管理员重新授权;围栏建立后只能调和同一提交记录, + 不得释放、重领、重试点击或签发第二笔。 +- 本任务只修改文档契约和任务依赖,不修改 `admin/`、`client/`、数据库 migration 或生产代码。