101 lines
5.2 KiB
Markdown
101 lines
5.2 KiB
Markdown
---
|
||
id: T-202
|
||
title: 生成并确认 P0 Web/App 低保真原型
|
||
phase: 2
|
||
deps:
|
||
- T-104
|
||
status: DONE
|
||
created: 2026-07-25
|
||
context_ref: ab21219a07630b705f3eb681d32b97d9ab49188b
|
||
work_branch: main
|
||
write_paths:
|
||
- docs/design/**
|
||
- docs/08-interaction-checklist.md
|
||
- docs/routes.md
|
||
- docs/current-state.md
|
||
- docs/00-ai-start-here.md
|
||
- docs/tasks/T-202.md
|
||
- progress.md
|
||
---
|
||
|
||
## 问题 / 背景
|
||
|
||
Android 已验证到人工确认点,Go-Gin 后端骨架也已建立,但管理 Web 与采购 App 的
|
||
P0 页面还没有经过人工确认。若直接实现正式 UI,页面区块、控件集合、状态反馈和
|
||
主要动作可能在开发期间反复变化,并增加 T-203、T-204 和 T-206 的返工。
|
||
|
||
## 关联需求与交互
|
||
|
||
- 功能:F-001 至 F-007。
|
||
- 用户故事:US-001 至 US-007。
|
||
- 交互:IX-001 至 IX-008。
|
||
- 页面:管理 Web 4 条 P0 路由;Android 7 个 P0 逻辑目的地。
|
||
- 架构/API:`docs/routes.md`、`docs/api.md`、`docs/04-architecture.md`。
|
||
|
||
## 方案
|
||
|
||
1. 在 `docs/design/` 生成零构建依赖、可独立打开的 HTML 原型,使用完全脱敏的假数据。
|
||
2. 管理 Web 覆盖登录、任务列表、新建任务和任务详情;Android 覆盖登录、任务主页、
|
||
任务预览、执行、候选确认、结果和设置。
|
||
3. 原型提供可点击的主要命令和状态切换,用于确认区块、控件、文案和安全边界,不连接
|
||
API、不读取本地私有样本,也不作为正式 UI 代码复用。
|
||
4. 使用 Playwright 在桌面和手机视口验证页面可打开、关键交互可触发、无水平溢出或
|
||
明显遮挡。
|
||
5. 用户实际查看并明确确认后,才把本任务改为 `DONE`、同步 IX 原型链接并提交 Git。
|
||
|
||
## 验收要点
|
||
|
||
- [x] 4 个管理 Web P0 路由均有可独立打开的原型页面。
|
||
- [x] 7 个 Android P0 逻辑目的地均在手机尺寸原型中可到达。
|
||
- [x] IX-001 至 IX-008 的正常路径、关键异常和主要命令可被确认。
|
||
- [x] 所有页面固定显示“仅供确认”的原型标记,且不含真实订单、账号、图片或路径。
|
||
- [x] 任务执行页没有虚假百分比;安全错误不提供自动继续。
|
||
- [x] 候选确认页明确展示 `order_submitted=false` 对应的人类文案。
|
||
- [x] 桌面和移动视口无水平溢出、控件遮挡或不可达主要操作。
|
||
- [x] 用户已人工确认页面区块、控件集合、文案和主要动作。
|
||
|
||
## 边界
|
||
|
||
- 不实现正式 Web 框架、Compose/Fragment 页面或任何 API 对接。
|
||
- 不修改 Android 自动化、VLM、后端业务表、鉴权或任务接口。
|
||
- 不使用真实商品、订单、店铺、账号、设备标识、token 或生产 URL。
|
||
- 不在人工确认前标记完成或提交 Git。
|
||
|
||
## 执行记录
|
||
|
||
### 2026-07-25:任务开始
|
||
|
||
- 基于提交 `ab21219` 开始。
|
||
- 已核对 `docs/routes.md` 的 4 个管理 Web 路由、7 个 Android 目的地,以及
|
||
IX-001 至 IX-008 的正常、异常与可访问性要求。
|
||
- 当前先生成原型和自动化验证;人工确认是完成本任务的硬门禁。
|
||
|
||
### 2026-07-25:原型生成与自动验收
|
||
|
||
- 生成 `docs/design/index.html`、4 个管理 Web 页面和 7 个 Android 页面;每个实际
|
||
页面均可通过 `file://` 独立打开,CSS/JS 全内联且没有外部依赖。
|
||
- Web 覆盖登录、任务创建、列表/详情、加载/空/失败/权限、取消二次确认、证据失败
|
||
和“验证完成,未提交订单”;Android 覆盖登录绑定、手动领取、预览、执行、安全
|
||
停止、人工结论、终态、待同步和设备设置。
|
||
- 需求审计确认 11 个逻辑页面均已覆盖,并发现 `docs/02-requirements.md` 的 F-001
|
||
至 F-003 单任务验收引用存在 3 处历史编号错误;该文件不在本任务写入边界,本次
|
||
不越界修改。
|
||
- 静态审计:12 个 HTML 均只有 1 个固定原型标记、1 个内联 style、0 个外部 script、
|
||
0 个 HTTP URL,未命中本机绝对路径、生产地址、令牌、密钥或私有样本关键词。
|
||
- Playwright 依次以 1440×900、390×844、360×800 打开 12 个页面,共 36 个
|
||
页面/视口组合:文档横向溢出 0、console error 0、page error 0、外部请求 0;
|
||
Android 可见按钮、链接、输入、选择和文本域小于 44px 的数量为 0。
|
||
- Playwright 交互验证通过:Web 首错焦点、通用登录错误、数量默认 1、未提交离开
|
||
和取消二次确认默认焦点;App 缺权限/已有任务/租约释放、安全错误无自动继续、
|
||
停止确认默认焦点、超预算禁用接受、无候选动作约束、人员结论回传、结果待同步及
|
||
活跃任务禁止退出。
|
||
- 实际截图复核索引、管理详情、候选确认、安全错误和设备设置;修复任务详情成功态
|
||
被 CSS 错误显示取消命令与证据错误占位的问题,复核后两者均不可见。
|
||
|
||
### 2026-07-26:人工确认与完成
|
||
|
||
- 用户在对话中明确回复“确认 T-202 原型”,确认当前页面区块、控件集合、文案和
|
||
主要动作可作为后续正式 UI 的实现输入。
|
||
- 最后一项人工门禁已满足,任务状态改为 `DONE`;后续显著改变布局或控件集合时,
|
||
必须按 `docs/design/README.md` 重新生成整页并再次确认。
|