Files
gaokao-volunteer-system/TASK_BREAKDOWN_INDEX_2026-07-02.md
Frontend Developer fa7c22e8ed chore(s1): monorepo skeleton + 30-file prototype first commit
Sprint 1 G0 闸门通过 (pnpm install / typecheck / lint / build / turbo 全部 exit 0)

实际完成:
- T-A-01 monorepo 根骨架: pnpm-workspace.yaml + turbo.json + 根 package.json
- T-A-02 收编原型: apps/web/ 30 个 src/ 文件 (4948 行) 首次入库
- T-A-03 lint/format: eslint flat config (根 + apps/web) + prettier
- T-A-23 web-ci.yml: GitHub Actions 4-step CI (typecheck/lint/build/bundle)

勘误 (前置假设错误):
- 原型 4948 行 (不是 4114 行)
- 原型含 33 个 any + 16 个未用变量 (Sprint 2 修)
- 原型从未 commit, 用 cp -r + git add, 不是 git mv

推迟到 Sprint 2+:
- T-A-04/05 tsconfig packages 抽离
- T-A-06/07/08 design tokens 抽离
- T-A-09~13 5 基础组件

依赖隔离:
- .gitignore 加 11 行 monorepo 规则
- apps/web/.gitignore 补 .npm-cache/next-dev.log
- 删除 apps/web 内嵌 .git/ (cp -r 复制时携带)

验证:
- pnpm install: 1m55s, 456 packages
- typecheck: 0 errors
- lint: 0 errors, 49 warnings (any + unused)
- next build: 8 routes compiled, 9/9 static pages
- turbo run build: 1 successful, 12.9s
2026-07-03 09:22:03 +08:00

6.6 KiB
Raw Blame History

任务拆解总索引 V2按 0.25 人天粒度)

前端开发工程师 · 2026-07-02 23:00 上游:FRONTEND_TASK_LIST_2026-07-02_V2.md136 任务 / 92 人天) 方法:将 136 主任务拆为 497 个子任务,平均 3.65 子任务/主任务 精度:所有工时取 0.25 整数倍0.25 / 0.5 / 0.75 / 1.0...

0. 拆解原则

维度 规则 示例
粒度 每个子任务 ≤ 0.5 人天 T-A-09 Button 拆 4 子任务props/types/单测/Story
可执行 子任务可在半天内独立完成 / PR T-B-17 不拆成"前端代码"和"后端代码"两个
可验证 每个子任务有 1 条可勾选的验收 "render 错误码 E03001 时显示"信息验证失败""
可测 涉及 UI/逻辑的子任务带 1 条测试要求 单测/e2e/Storybook
依赖明确 子任务 ID 形如 ST-{Sprint}-{Task}.{n} ST-S1-09.2 = Sprint1 / T-A-09 / 子任务 2

1. Sprint 切片8 Sprint × 16 周)

Sprint 文件 任务数 子任务数 人天
S1 W1 SPRINT_1_S1_FOUNDATION.md 14 62 11.0
S2 W2-3 SPRINT_2_S2_API_HOOKS.md 15 58 18.0
S3 W4-5 SPRINT_3_S3_NEW_MODULES.md 16 70 22.0
S4 W6-7 SPRINT_4_S4_PERF_OPS.md 14 50 14.0
S5 W8-9 SPRINT_5_S5_COMPONENTS.md 16 52 12.0
S6 W10-11 SPRINT_6_S6_QUERY_REVIEW.md 16 55 11.0
S7 W12-13 SPRINT_7_S7_A11Y_PORTAL.md 14 52 10.0
S8 W14-16 SPRINT_8_S8_ADMIN_POLICY.md 16 48 8.0
缓冲 W14-16 含在 S8 内 - - 14.0 (内含)
合计 16 周 8 文件 136 497 92.0

缓冲区S8 内部含 14d 缓冲(占 11d 工时 + 3d 应急 / 整改预留)

2. 主任务 → Sprint 映射

Sprint 1W1 · 11 人天)—— 基础设施前半

  • A.1 T-A-01 / T-A-02 / T-A-03
  • A.2 T-A-04 / T-A-05
  • A.3 T-A-06 / T-A-07 / T-A-08
  • A.4 T-A-09 / T-A-10 / T-A-11 / T-A-12 / T-A-135 基础组件)
  • A.8 T-A-23CI 提前到 S1 末)

Sprint 2W2-3 · 18 人天)—— 后端类型 + 后端对接前半

  • A.5 T-A-14 / T-A-15 / T-A-16 / T-A-17
  • A.6 T-A-18 / T-A-19 / T-A-20
  • A.7 T-A-21 / T-A-22
  • B.1 T-B-01 / T-B-02 / T-B-03 / T-B-04 / T-B-055 端点)

Sprint 3W4-5 · 22 人天)—— B 主体 + 5 大 V2 新模块

  • B.1 T-B-22 / T-B-23 / T-B-24 / T-B-25 / T-B-26 / T-B-27 / T-B-28 / T-B-29 / T-B-30 / T-B-31 / T-B-32 / T-B-33 / T-B-34 / T-B-3514 V2 端点)
  • B.2 T-B-12 / T-B-13 / T-B-14 / T-B-15 / T-B-36 / T-B-37 / T-B-38 / T-B-398 hook
  • B.3 T-B-16 / T-B-17useProfile + useAudit LLM 增强)

Sprint 4W6-7 · 14 人天)—— 性能 + 监控 + Poster CLI

  • B.3 T-B-18 / T-B-19 / T-B-20 / T-B-21错误/兜底/离线/防重)
  • B.4 T-B-22 / T-B-23 / T-B-24 / T-B-25 / T-B-26 / T-B-27持久化/e2e/LH/bundle/prefetch/回归)
  • B.4 T-B-40 / T-B-41 / T-B-42 / T-B-43Share 状态/降级/LLM 轮询/Poster 轮询)
  • C.4 T-C-44 / T-C-45Poster CLI 部署 + 集成测试)

Sprint 5W8-9 · 12 人天)—— 部署 + 基础组件

  • C.1 T-C-01 / T-C-02 / T-C-03 / T-C-04 / T-C-05
  • C.2 T-C-06 / T-C-07 / T-C-08 / T-C-09
  • C.3 T-C-10 / T-C-11 / T-C-12 / T-C-13
  • D.1 T-D-01 ~ T-D-1010 基础组件)

Sprint 6W10-11 · 11 人天)—— 业务组件 + DataQuery + Review

  • D.2 T-D-11 / T-D-12 / T-D-13
  • D.3 T-D-14 / T-D-15 / T-D-16 / T-D-17 / T-D-18 / T-D-19 / T-D-207 业务组件)

Sprint 7W12-13 · 10 人天)—— 暗色 + i18n + 性能 + 内部页

  • D.4 T-D-21暗色变体
  • D.5 T-D-22 / T-D-23next-intl + 文案审计)
  • D.6 T-D-24Chromatic + Lighthouse
  • E.1 T-E-01 / T-E-02 / T-E-03 / T-E-04 / T-E-05运营后台 5 页)
  • E.2 T-E-06 / T-E-07 / T-E-08 / T-E-09订单+案例 4 页)

Sprint 8W14-16 · 8 人天)—— 内部页 React 化

  • E.3 T-E-10 / T-E-11 / T-E-12Share 管理 3 页)
  • E.4 T-E-13 / T-E-14 / T-E-15 / T-E-16Data Query 4 页)
  • E.5 T-E-17 / T-E-18Review + LLM 审计 2 页)
  • E.6 T-E-19Policy 中心 1 页)
  • E.7 T-E-20 / T-E-21 / T-E-22 / T-E-23通知+设置 4 页)
  • E.8 T-E-24公共门户 React 化)

3. 子任务编号规则

ST-{Sprint}-{主任务ID}.{n}

示例:
ST-S1-A-09.1  = Sprint 1, T-A-09 Button, 子任务 1props 定义)
ST-S3-B-22.3  = Sprint 3, T-B-22 Share Link 创建, 子任务 3撤销集成

4. 子任务类型分布

类型 数量 占比 工时占比
代码实现 235 47.3% 50%
测试 128 25.8% 25%
Storybook / Chromatic 56 11.3% 10%
配置 / 文档 48 9.6% 10%
E2E 30 6.0% 5%
合计 497 100% 100%

5. 工时校验

阶段 V2 估时 拆解后工时 差异 原因
A 11.0 11.0 0 精确拆分
B 38.0 38.0 0 精确拆分
C 10.0 10.0 0 精确拆分
D 14.0 14.0 0 精确拆分
E 19.0 19.0 0 精确拆分
合计 92.0 92.0 0 -

零工时漂移:每个主任务的子任务工时合计 = 主任务原估时。 验证公式:Σ(ST-*.time) == 原 task.time

6. 风险闸门(不能跳过)

闸门 Sprint 末 验证产物
G1 S2 pnpm typecheck 通过0 个 anyOpenAPI Codegen
G2 S3 LLM fallback 4 模实测可切换
G3 S4 Lighthouse 12 页 P75 ≥ 90
G4 S4 Poster CLI Docker 镜像跑通
G5 S5 18 组件 dark story 全覆盖
G6 S7 axe-core 0 critical

7. Sprint 子表文件清单

文件 大小预估 子任务数
SPRINT_1_S1_FOUNDATION.md ~25 KB 62
SPRINT_2_S2_API_HOOKS.md ~24 KB 58
SPRINT_3_S3_NEW_MODULES.md ~28 KB 70
SPRINT_4_S4_PERF_OPS.md ~20 KB 50
SPRINT_5_S5_COMPONENTS.md ~21 KB 52
SPRINT_6_S6_QUERY_REVIEW.md ~22 KB 55
SPRINT_7_S7_A11Y_PORTAL.md ~21 KB 52
SPRINT_8_S8_ADMIN_POLICY.md ~20 KB 48

8. 立即可启动(本周 5 子任务 / 1.5d

ST-S1-A-01.1  写 pnpm-workspace.yaml           0.25d
ST-S1-A-01.2  写 turbo.json                    0.25d
ST-S1-A-02.1  git mv 前端原型代码 → apps/web   0.25d
ST-S1-A-02.2  修复 import 路径                  0.25d
ST-S1-A-23.1  GitHub Actions 写 web-ci.yml    0.50d
                                      合计  1.50d

Sprint 1 完整内容SPRINT_1_S1_FOUNDATION.md