@@ -0,0 +1,104 @@
|
||||
# 项目经理 Agent — 全量任务编排启动
|
||||
|
||||
## 你的角色
|
||||
|
||||
你是项目经理 Agent。你的唯一目标:**将 37 个开发测试任务按依赖关系分发到 3 个工作 pane,协调执行直到全部完成。**
|
||||
|
||||
## 环境
|
||||
|
||||
| Pane | tmux ID | 角色 |
|
||||
|------|---------|------|
|
||||
| 后端 | %12 | 后端开发 + 桌面端开发(14 个任务) |
|
||||
| 前端 | %14 | 前端 UI 开发(14 个任务) |
|
||||
| 测试 | %13 | 测试工程师(9 个任务) |
|
||||
|
||||
- tmux session: `arno-team`
|
||||
- 分发工具: `/workspace/scripts/tmux-send-prompt.sh`
|
||||
- 结果目录: `/workspace/tasks/result/`
|
||||
- 任务文件目录: `/workspace/tasks/`
|
||||
- **任务列表**: 读取 `tasks/pm-task-tables.md` 获取全部任务编号、文件名、模板和依赖
|
||||
|
||||
## 分发协议
|
||||
|
||||
### 发送格式
|
||||
|
||||
每个任务通过以下命令分发:
|
||||
|
||||
```bash
|
||||
/workspace/scripts/tmux-send-prompt.sh <tmux_id> "请读取以下文件并执行任务:
|
||||
1. 任务文件: /workspace/tasks/<任务文件名>
|
||||
2. 模板文件: /workspace/tasks/任务提示词模板-<模板类型>.md
|
||||
按模板骨架+任务文件内容组装后执行。完成后将结果写入 /workspace/tasks/result/<任务编号>.md"
|
||||
```
|
||||
|
||||
### 完成判定
|
||||
|
||||
任务完成的标志: `/workspace/tasks/result/{任务编号}.md` 文件存在且非空。
|
||||
|
||||
### 等待策略
|
||||
|
||||
- 分发后轮询检查结果文件,每 30 秒一次
|
||||
- 如依赖未满足,继续等待;不可跳过依赖
|
||||
- 确保 cc 就绪(提示符可见),否则先 /exit 重启
|
||||
|
||||
---
|
||||
|
||||
## 执行策略
|
||||
|
||||
### 核心规则
|
||||
|
||||
1. **同一 pane 串行**: 后端/前端/测试各自逐个执行,不可并行
|
||||
2. **跨 pane 并行**: 三个 pane 同时工作
|
||||
3. **依赖前置**: 分发前检查所有依赖任务的 `result/*.md` 是否存在
|
||||
4. **按队列顺序**: 每个 pane 内按序号分发,不可跳序(除非依赖阻塞则等待)
|
||||
|
||||
### 执行波次
|
||||
|
||||
| Wave | 触发条件 | 后端(%12) | 前端(%14) | 测试(%13) |
|
||||
|------|---------|-----------|-----------|-----------|
|
||||
| 1 | 启动 | M1-001 | M1-002 | — |
|
||||
| 2 | M1-001完成 | M2-001 | (等M1-002) | M1-003 |
|
||||
| 2 | M1-002完成 | — | M2-002 | — |
|
||||
| 3 | M2-001完成 | M4-001 | (等M2-002) | M2-003 |
|
||||
| 3 | M2-002完成 | — | M3-003 | — |
|
||||
| 4 | M4-001+M2-001完成 | M3-001 | — | — |
|
||||
| 4 | M3-003完成 | — | M3-004 | — |
|
||||
| 5 | M4-001完成 | M4-002 | — | — |
|
||||
| 5 | M3-004完成 | — | M4-003 | — |
|
||||
| 5 | M4-003完成 | — | M4-004, M4-005 | — |
|
||||
| 5 | M3-001+M3-002完成 | — | — | M3-005 |
|
||||
| 5 | M4-001+M4-002完成 | — | — | M4-006 |
|
||||
| 6 | M4-002完成 | M5-001 | — | — |
|
||||
| 6 | M5-001完成 | M5-002 | — | — |
|
||||
| 6 | M4-003完成 | — | M5-003 | — |
|
||||
| 6 | M5-001+M5-002完成 | — | — | M5-004 |
|
||||
| 7 | M5-002完成 | M6-001 | — | — |
|
||||
| 7 | M5-003完成 | — | M6-003 | — |
|
||||
| 7 | M6-001完成 | M6-002 | — | M6-004 |
|
||||
| 7 | M6-001+M6-002+M6-003完成 | — | — | M6-005 |
|
||||
| 8 | M4-002完成 | M7-001 | — | — |
|
||||
| 8 | M3-002完成 | M7-002 | — | — |
|
||||
| 8 | M4-004完成 | — | M7-003 | — |
|
||||
| 8 | M4-003完成 | — | M7-004 | — |
|
||||
| 8 | M3-004完成 | — | M7-005 | — |
|
||||
| 8 | M7-001+M7-002完成 | — | — | M7-006 |
|
||||
| 9 | M5-002完成 | M8-001 | — | — |
|
||||
| 9 | M8-001完成 | M8-002 | — | — |
|
||||
| 9 | M4-003完成 | — | M8-003 | — |
|
||||
| 9 | M8-003完成 | — | M8-004 | — |
|
||||
| 9 | M8-001+M8-002完成 | — | — | M8-005 |
|
||||
|
||||
---
|
||||
|
||||
## 注意事项
|
||||
|
||||
- **禁止新建** tmux session / window / pane,始终复用现有 4 个 pane
|
||||
- 分发前确保目标 pane 的 cc 就绪(提示符可见),否则先 /exit 后重启
|
||||
- 提交使用 **jj**,中文类型(功能、修复、维护...)
|
||||
- 同一文件只允许一个 Agent 修改
|
||||
- 后端: `apps/server/`,桌面端: `apps/desktop/src/`,前端: `apps/desktop/frontend/`,测试: 两侧 `tests/`
|
||||
- 如遇到 cc 崩溃或 pane 无响应:发送 /exit 后重新启动 cc,重新发送当前任务
|
||||
|
||||
## 立即开始
|
||||
|
||||
现在执行 Wave 1:**并行分发 M1-001 到后端(%12)、M1-002 到前端(%14)**。
|
||||
@@ -0,0 +1,55 @@
|
||||
# PM Agent — 任务列表
|
||||
|
||||
> 由 `pm-start-all-tasks.md` 引用。列出 3 个 pane 的全部任务及依赖。
|
||||
|
||||
## 后端 pane (%12) — 14 个任务
|
||||
|
||||
| # | 编号 | 任务文件 | 模板 | 依赖 |
|
||||
|---|------|---------|------|------|
|
||||
| 1 | M1-001 | M1-001-backend-project-scaffold.md | 脚手架搭建 | 无 |
|
||||
| 2 | M2-001 | M2-001-backend-device-management.md | 后端API开发 | M1-001 |
|
||||
| 3 | M4-001 | M4-001-desktop-core-engine.md | 桌面端服务开发 | 无 |
|
||||
| 4 | M3-001 | M3-001-desktop-certificate-service.md | 桌面端服务开发 | M2-001, M4-001 |
|
||||
| 5 | M4-002 | M4-002-desktop-entry-crud.md | 桌面端服务开发 | M4-001 |
|
||||
| 6 | M3-002 | M3-002-desktop-local-auth.md | 桌面端服务开发 | M3-001, M4-001 |
|
||||
| 7 | M5-001 | M5-001-desktop-crdt-engine.md | 桌面端服务开发 | M4-002 |
|
||||
| 8 | M5-002 | M5-002-backend-sync-api.md | 后端API开发 | M5-001 |
|
||||
| 9 | M6-001 | M6-001-backend-docker.md | 部署打包 | M5-002 |
|
||||
| 10 | M6-002 | M6-002-backend-packaging.md | 部署打包 | M6-001 |
|
||||
| 11 | M7-001 | M7-001-desktop-category.md | 桌面端服务开发 | M4-002 |
|
||||
| 12 | M7-002 | M7-002-desktop-recovery.md | 桌面端服务开发 | M3-002 |
|
||||
| 13 | M8-001 | M8-001-backend-logs.md | 后端API开发 | M5-002 |
|
||||
| 14 | M8-002 | M8-002-backend-backup.md | 后端API开发 | M5-002 |
|
||||
|
||||
## 前端 pane (%14) — 14 个任务
|
||||
|
||||
| # | 编号 | 任务文件 | 模板 | 依赖 |
|
||||
|---|------|---------|------|------|
|
||||
| 1 | M1-002 | M1-002-frontend-project-scaffold.md | 脚手架搭建 | 无 |
|
||||
| 2 | M2-002 | M2-002-frontend-device-registration.md | 前端组件开发 | M1-002 |
|
||||
| 3 | M3-003 | M3-003-frontend-init-wizard.md | UI布局和开发 | M2-002 |
|
||||
| 4 | M3-004 | M3-004-frontend-login-lock.md | UI布局和开发 | M3-003 |
|
||||
| 5 | M4-003 | M4-003-frontend-list-detail.md | UI布局和开发 | M3-004 |
|
||||
| 6 | M4-004 | M4-004-frontend-form.md | 前端组件开发 | M4-003 |
|
||||
| 7 | M4-005 | M4-005-frontend-search.md | 前端组件开发 | M4-003 |
|
||||
| 8 | M5-003 | M5-003-frontend-sync-offline.md | 前端组件开发 | M4-003 |
|
||||
| 9 | M6-003 | M6-003-frontend-packaging.md | 部署打包 | M5-003 |
|
||||
| 10 | M7-003 | M7-003-frontend-generator.md | 前端组件开发 | M4-004 |
|
||||
| 11 | M7-004 | M7-004-frontend-category.md | UI布局和开发 | M4-003 |
|
||||
| 12 | M7-005 | M7-005-frontend-recovery.md | 前端组件开发 | M3-004 |
|
||||
| 13 | M8-003 | M8-003-frontend-logs.md | UI布局和开发 | M4-003 |
|
||||
| 14 | M8-004 | M8-004-frontend-reminder.md | 前端组件开发 | M4-003 |
|
||||
|
||||
## 测试 pane (%13) — 9 个任务
|
||||
|
||||
| # | 编号 | 任务文件 | 模板 | 依赖 |
|
||||
|---|------|---------|------|------|
|
||||
| 1 | M1-003 | M1-003-test-infrastructure.md | 脚手架搭建 | M1-001 |
|
||||
| 2 | M2-003 | M2-003-test-device-management.md | 测试编写 | M2-001 |
|
||||
| 3 | M3-005 | M3-005-test-init-auth.md | 测试编写 | M3-001, M3-002 |
|
||||
| 4 | M4-006 | M4-006-test-core-business.md | 测试编写 | M4-001, M4-002 |
|
||||
| 5 | M5-004 | M5-004-test-crdt-sync.md | 测试编写 | M5-001, M5-002 |
|
||||
| 6 | M6-004 | M6-004-test-deployment.md | 测试编写 | M6-001 |
|
||||
| 7 | M6-005 | M6-005-test-e2e.md | E2E测试 | M6-001, M6-002, M6-003 |
|
||||
| 8 | M7-006 | M7-006-test-enhanced.md | 测试编写 | M7-001, M7-002 |
|
||||
| 9 | M8-005 | M8-005-test-ops.md | 测试编写 | M8-001, M8-002 |
|
||||
@@ -0,0 +1,28 @@
|
||||
# {{任务编号}} 执行结果
|
||||
|
||||
## 执行信息
|
||||
| 项目 | 值 |
|
||||
|------|-----|
|
||||
| 任务编号 | {{M{X}-{NNN}}} |
|
||||
| 任务标题 | {{标题}} |
|
||||
| 执行 pane | {{后端/前端/测试}} |
|
||||
| 开始时间 | {{YYYY-MM-DD HH:MM}} |
|
||||
| 结束时间 | {{YYYY-MM-DD HH:MM}} |
|
||||
|
||||
## 产出物清单
|
||||
| 操作 | 文件路径 | 说明 |
|
||||
|------|---------|------|
|
||||
| 新建 | {{path}} | {{描述}} |
|
||||
| 修改 | {{path}} | {{描述}} |
|
||||
|
||||
## 验收结果
|
||||
| 验收项 | 结果 | 备注 |
|
||||
|--------|------|------|
|
||||
| {{检查项}} | PASS/FAIL | {{输出摘要}} |
|
||||
|
||||
## 问题和解决方案
|
||||
{{如无则写"无"}}
|
||||
|
||||
## 未完成项
|
||||
{{如无则写"无"}}
|
||||
- [ ] {{遗留问题描述}}
|
||||
@@ -0,0 +1,199 @@
|
||||
# 开发测试任务提示词构建方法
|
||||
|
||||
**版本**: 1.0.0
|
||||
**最后更新**: 2026-04-18
|
||||
**维护者**: 项目经理 Agent
|
||||
|
||||
---
|
||||
|
||||
## 1. 概述
|
||||
|
||||
本文档说明如何使用 8 类任务模板和任务文件,组装出完整的、可直接执行的提示词。
|
||||
|
||||
### 使用场景
|
||||
|
||||
- `项目` pane 分发任务到 `后端`/`前端`/`测试` pane
|
||||
- 目标 pane 的 Agent 读取模板 + 任务文件,自行拼接为完整提示词执行
|
||||
|
||||
---
|
||||
|
||||
## 2. tmux 执行环境
|
||||
|
||||
### Session 和 Pane 映射
|
||||
|
||||
| Pane | 名称 | 角色 | 模板映射 |
|
||||
|------|------|------|---------|
|
||||
| pane 0 | 项目 | 项目经理 | 分发任务、追踪进度 |
|
||||
| pane 1 | 后端 | 后端 + 桌面端 | 模板 1(后端)、2、3、7 |
|
||||
| pane 2 | 前端 | 前端 | 模板 1(前端)、4、5、7 |
|
||||
| pane 3 | 测试 | 测试 | 模板 1(测试)、6、8 |
|
||||
|
||||
### 环境重置流程
|
||||
|
||||
1. 检查目标 pane 是否为新启动的 `cc` 环境
|
||||
2. 如不是:发送 `/exit`,等待退出,重新启动 `cc`
|
||||
3. 通过 `scripts/tmux-send-prompt.sh` 发送简短提示词到目标 pane
|
||||
|
||||
### 分发示例
|
||||
|
||||
```bash
|
||||
# 分发 M4-001 到后端 pane(桌面端服务开发)
|
||||
scripts/tmux-send-prompt.sh %1 "请读取任务文件 /workspace/tasks/M4-001-desktop-xxx.md,对应模板为 /workspace/tasks/任务提示词模板-桌面端服务开发.md"
|
||||
|
||||
# 分发 M4-003 到前端 pane(UI布局和开发)
|
||||
scripts/tmux-send-prompt.sh %2 "请读取任务文件 /workspace/tasks/M4-003-frontend-xxx.md,对应模板为 /workspace/tasks/任务提示词模板-UI布局和开发.md"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 3. 模板与任务映射
|
||||
|
||||
### 模板文件清单
|
||||
|
||||
| # | 模板类型 | 文件名 | 任务数 |
|
||||
|---|---------|--------|--------|
|
||||
| 1 | 脚手架搭建 | `任务提示词模板-脚手架搭建.md` | 3 |
|
||||
| 2 | 后端API开发 | `任务提示词模板-后端API开发.md` | 4 |
|
||||
| 3 | 桌面端服务开发 | `任务提示词模板-桌面端服务开发.md` | 7 |
|
||||
| 4 | UI布局和开发 | `任务提示词模板-UI布局和开发.md` | 5 |
|
||||
| 5 | 前端组件开发 | `任务提示词模板-前端组件开发.md` | 7 |
|
||||
| 6 | 测试编写 | `任务提示词模板-测试编写.md` | 7 |
|
||||
| 7 | 部署打包 | `任务提示词模板-部署打包.md` | 3 |
|
||||
| 8 | E2E测试 | `任务提示词模板-E2E测试.md` | 1 |
|
||||
|
||||
### 任务→模板映射表
|
||||
|
||||
| 任务编号 | 模板类型 | 执行 pane |
|
||||
|---------|---------|----------|
|
||||
| M1-001 | 脚手架搭建 | 后端 |
|
||||
| M1-002 | 脚手架搭建 | 前端 |
|
||||
| M1-003 | 脚手架搭建 | 测试 |
|
||||
| M2-001 | 后端API开发 | 后端 |
|
||||
| M2-002 | 前端组件开发 | 前端 |
|
||||
| M2-003 | 测试编写 | 测试 |
|
||||
| M3-001 | 桌面端服务开发 | 后端 |
|
||||
| M3-002 | 桌面端服务开发 | 后端 |
|
||||
| M3-003 | UI布局和开发 | 前端 |
|
||||
| M3-004 | UI布局和开发 | 前端 |
|
||||
| M3-005 | 测试编写 | 测试 |
|
||||
| M4-001 | 桌面端服务开发 | 后端 |
|
||||
| M4-002 | 桌面端服务开发 | 后端 |
|
||||
| M4-003 | UI布局和开发 | 前端 |
|
||||
| M4-004 | 前端组件开发 | 前端 |
|
||||
| M4-005 | 前端组件开发 | 前端 |
|
||||
| M4-006 | 测试编写 | 测试 |
|
||||
| M5-001 | 桌面端服务开发 | 后端 |
|
||||
| M5-002 | 后端API开发 | 后端 |
|
||||
| M5-003 | 前端组件开发 | 前端 |
|
||||
| M5-004 | 测试编写 | 测试 |
|
||||
| M6-001 | 部署打包 | 后端 |
|
||||
| M6-002 | 部署打包 | 后端 |
|
||||
| M6-003 | 部署打包 | 前端 |
|
||||
| M6-004 | 测试编写 | 测试 |
|
||||
| M6-005 | E2E测试 | 测试 |
|
||||
| M7-001 | 桌面端服务开发 | 后端 |
|
||||
| M7-002 | 桌面端服务开发 | 后端 |
|
||||
| M7-003 | 前端组件开发 | 前端 |
|
||||
| M7-004 | UI布局和开发 | 前端 |
|
||||
| M7-005 | 前端组件开发 | 前端 |
|
||||
| M7-006 | 测试编写 | 测试 |
|
||||
| M8-001 | 后端API开发 | 后端 |
|
||||
| M8-002 | 后端API开发 | 后端 |
|
||||
| M8-003 | UI布局和开发 | 前端 |
|
||||
| M8-004 | 前端组件开发 | 前端 |
|
||||
| M8-005 | 测试编写 | 测试 |
|
||||
|
||||
---
|
||||
|
||||
## 4. 提示词组装规则
|
||||
|
||||
### 组成关系
|
||||
|
||||
- **模板骨架是「壳」**:提供 tmux 执行协议、前置文档引用、编码规范、验收标准格式、结果报告路径
|
||||
- **任务文件是「内容」**:填充差异段落(概述、功能需求、代码骨架、验证命令)
|
||||
|
||||
### 组装方式
|
||||
|
||||
Agent 在执行时自行拼接,不需要物理合并文件:
|
||||
|
||||
1. 读取对应模板文件 → 获取骨架结构
|
||||
2. 读取任务文件 → 获取差异内容
|
||||
3. 合并:模板的通用段落 + 任务文件的差异段落 = 完整执行提示词
|
||||
|
||||
### 不需要物理合并
|
||||
|
||||
任务文件中已删除 tmux 执行协议段和重复的编码规范段,这些由模板提供。Agent 在执行时按需加载。
|
||||
|
||||
---
|
||||
|
||||
## 5. 前端任务 UI/UX 文档加载规则
|
||||
|
||||
### 通用加载(所有前端任务)
|
||||
|
||||
- `docs/05-设计-UI.md` — 设计系统摘要
|
||||
- `docs/设计-Apple风格.md` — Apple 风格设计令牌
|
||||
- `docs/设计-UX-错误处理.md` — 错误状态处理规范
|
||||
|
||||
### UI布局和开发任务(页面级)
|
||||
|
||||
按任务文件中声明的前置文档列表加载,关注布局网格、导航、路由结构。
|
||||
|
||||
| 任务 | UI 设计文档 | UX 交互文档 | API 契约 |
|
||||
|------|-----------|-----------|---------|
|
||||
| M3-003 | `设计-UI-初始化向导.md` | `设计-UX-用户旅程.md` §2.1, §2.2 + `设计-UX-操作流程.md` §4.1, §4.5 | `09-API契约.md` §5, §9.12~§9.14 |
|
||||
| M3-004 | `设计-UI-认证.md` | `设计-UX-用户旅程.md` §2.3 + `设计-UX-操作流程.md` §4.2 | `09-API契约.md` §9.1, §9.2 |
|
||||
| M4-003 | `设计-UI-主界面.md` | `设计-UX-交互模式.md` + `设计-UX-操作流程.md` §4.3 | `09-API契约.md` §9.3 |
|
||||
| M7-004 | `设计-UI-分类管理.md` | `设计-UX-交互模式.md` §3.4 | `09-API契约.md` §9.8~§9.11 |
|
||||
| M8-003 | `设计-UI-其他.md` | `设计-UX-用户旅程.md` §2.5 + `设计-UX-操作流程.md` §4.6 | `09-API契约.md` §9.20 |
|
||||
|
||||
### 前端组件开发任务(组件级)
|
||||
|
||||
按任务文件中声明的前置文档列表加载,关注交互模式、表单验证、状态管理。
|
||||
|
||||
| 任务 | UI 设计文档 | UX 交互文档 | API 契约 |
|
||||
|------|-----------|-----------|---------|
|
||||
| M2-002 | `设计-UI-初始化向导.md` | `设计-UX-用户旅程.md` §2.1, §2.2 + `设计-UX-操作流程.md` §4.1 | `09-API契约.md` §5 |
|
||||
| M4-004 | `设计-UI-主界面.md` | `设计-UX-交互模式.md` + `设计-UX-操作流程.md` §4.3 | `09-API契约.md` §9.4, §9.5 |
|
||||
| M4-005 | `设计-UI-主界面.md` | `设计-UX-交互模式.md` + `设计-UX-操作流程.md` §4.3 | `09-API契约.md` §9.7 |
|
||||
| M5-003 | `设计-UI-状态组件.md` | `设计-UX-交互模式.md` §3.5, §3.8 | `09-API契约.md` §6, §9.17 |
|
||||
| M7-003 | `设计-UI-主界面.md` | `设计-UX-交互模式.md` + `设计-UX-操作流程.md` §4.3 | — |
|
||||
| M7-005 | `设计-UI-认证.md` | `设计-UX-操作流程.md` §4.2 | `09-API契约.md` §9.16 |
|
||||
| M8-004 | `设计-UI-其他.md` | `设计-UX-用户旅程.md` §2.5 + `设计-UX-操作流程.md` §4.6 | — |
|
||||
|
||||
---
|
||||
|
||||
## 6. 执行流程
|
||||
|
||||
1. `项目` pane 确认任务 → 查 §3 映射表选择对应模板
|
||||
2. 通过 `scripts/tmux-send-prompt.sh` 发送提示词到目标 pane
|
||||
3. 目标 pane 的 Agent 读取模板 + 任务文件(§4 组装规则)
|
||||
4. **前端任务**:Agent 额外读取 §5 中对应的 UI/UX 设计文档
|
||||
5. 执行任务 → 写入结果到 `/workspace/tasks/result/{{任务编号}}.md`
|
||||
6. `项目` pane 确认结果
|
||||
|
||||
---
|
||||
|
||||
## 7. 并行执行约束
|
||||
|
||||
- 同一文件只允许一个 Agent 修改
|
||||
- 后端改 `apps/server/`,桌面端改 `apps/desktop/src/`,前端改 `apps/desktop/frontend/`
|
||||
- 测试可改两侧 `tests/`
|
||||
- 里程碑内并行组参考编排索引 §5
|
||||
|
||||
---
|
||||
|
||||
## 8. 完成报告机制
|
||||
|
||||
任务完成后,将产出物清单写入 `/workspace/tasks/result/{{任务编号}}.md`,格式参照 `tasks/任务执行结果模板.md`。
|
||||
|
||||
### 文件锁规则
|
||||
|
||||
- 任务开始时创建空文件作为锁
|
||||
- 完成时写入完整内容
|
||||
- 一次只能被一个任务编写
|
||||
|
||||
---
|
||||
|
||||
## 版本历史
|
||||
|
||||
- v1.0.0 (2026-04-18): 初始版本
|
||||
@@ -0,0 +1,69 @@
|
||||
# {{任务编号}} E2E测试任务:{{测试标题}}
|
||||
|
||||
## 概述
|
||||
|
||||
{{一段描述:E2E 测试范围、Playwright 配置}}
|
||||
|
||||
**前置依赖**: {{依赖任务列表(通常为全部前置功能)}}
|
||||
|
||||
## tmux 执行协议
|
||||
|
||||
- **Session**: `arno-team`,始终复用 `项目` / `后端` / `前端` / `测试` 四个 pane,禁止新建 tmux session / window / pane
|
||||
- **环境重置**: 开始前确保目标 pane 中是新启动的 `cc` 环境(/exit 后重启,清除遗留上下文)
|
||||
- **分发方式**: 由 `项目` pane 发送简短提示词,让目标 pane 自行读取任务文件
|
||||
|
||||
## 前置文档(必读)
|
||||
|
||||
> E2E 测试覆盖完整用户旅程,执行前需加载以下文档理解界面布局和交互流程。
|
||||
|
||||
### 测试规范
|
||||
- `docs/10-测试-方案.md` §1(测试策略/级别定义)、§4(集成测试)、§5(端到端测试规范、Playwright 配置)
|
||||
- `docs/11-工程规范.md` §6.4(前端开发流程)
|
||||
|
||||
### UI 设计文档
|
||||
- `docs/05-设计-UI.md` — 设计系统摘要(组件结构、设计令牌)
|
||||
|
||||
### UX 交互文档
|
||||
- `docs/设计-UX-用户旅程.md` — 全部用户旅程
|
||||
- `docs/设计-UX-操作流程.md` — 操作流程步骤
|
||||
- `docs/设计-UX-交互模式.md` — 交互模式定义
|
||||
- `docs/设计-UX-错误处理.md` — 错误状态和提示
|
||||
|
||||
### API 契约
|
||||
- `docs/09-API契约.md` — 全部 API 端点定义
|
||||
|
||||
### 数据库
|
||||
- `docs/08-数据库设计.md` §2(服务端表结构)| §3(客户端表结构)
|
||||
|
||||
## 测试场景
|
||||
|
||||
### 1. {{场景名}}
|
||||
|
||||
- 前置条件:{{条件}}
|
||||
- 操作步骤:{{步骤}}
|
||||
- 预期结果:{{结果}}
|
||||
|
||||
## 需要创建的文件
|
||||
|
||||
### 1. `e2e/{{scenario}}.spec.ts` — {{场景名}}
|
||||
|
||||
{{Playwright 测试结构}}
|
||||
|
||||
## 编码规范
|
||||
|
||||
- TypeScript + Playwright
|
||||
- 测试独立、可重复、不依赖执行顺序
|
||||
- 使用 Page Object Model 组织页面对象
|
||||
|
||||
## 验收标准
|
||||
|
||||
- 所有 E2E 场景通过
|
||||
- 无硬编码等待(使用 waitFor)
|
||||
|
||||
## 验证命令
|
||||
|
||||
```bash
|
||||
npx playwright test
|
||||
```
|
||||
|
||||
完成后将产出物清单写入 `/workspace/tasks/result/{{任务编号}}.md`。
|
||||
@@ -0,0 +1,90 @@
|
||||
# {{任务编号}} 前端任务:{{任务标题}}
|
||||
|
||||
## 概述
|
||||
|
||||
{{一段描述:页面级布局目标、导航结构、路由规划}}
|
||||
|
||||
**前置依赖**: {{依赖任务列表}}
|
||||
|
||||
## tmux 执行协议
|
||||
|
||||
- **Session**: `arno-team`,始终复用 `项目` / `后端` / `前端` / `测试` 四个 pane,禁止新建 tmux session / window / pane
|
||||
- **环境重置**: 开始前确保目标 pane 中是新启动的 `cc` 环境(/exit 后重启,清除遗留上下文)
|
||||
- **分发方式**: 由 `项目` pane 发送简短提示词,让目标 pane 自行读取任务文件
|
||||
|
||||
## 前置文档(必读)
|
||||
|
||||
> 执行本任务前必须加载以下文档,作为设计和交互规范。
|
||||
|
||||
### 设计文档(所有 UI 布局任务通用)
|
||||
- `docs/05-设计-UI.md` — 设计系统摘要(页面布局网格、导航模式、响应式断点)
|
||||
- `docs/设计-Apple风格.md` — Apple 风格设计令牌(色彩、排版、间距、阴影体系)
|
||||
- `docs/设计-UX-错误处理.md` — 错误状态处理规范
|
||||
|
||||
### 编码规范(所有 UI 布局任务通用)
|
||||
- `docs/11-工程规范.md` §6(前端开发规范:Svelte 5、组件设计原则、IPC 通信模式)
|
||||
- `team/svelte.md` — Svelte 5 开发完整指南
|
||||
|
||||
### 按任务选取
|
||||
| 任务 | UI 设计文档 | UX 交互文档 | API 契约 |
|
||||
|------|-----------|-----------|---------|
|
||||
| M3-003 | `docs/设计-UI-初始化向导.md` | `docs/设计-UX-用户旅程.md` §2.1, §2.2 + `docs/设计-UX-操作流程.md` §4.1, §4.5 | `docs/09-API契约.md` §5、§9.12~§9.14 |
|
||||
| M3-004 | `docs/设计-UI-认证.md` | `docs/设计-UX-用户旅程.md` §2.3 + `docs/设计-UX-操作流程.md` §4.2 | `docs/09-API契约.md` §9.1、§9.2 |
|
||||
| M4-003 | `docs/设计-UI-主界面.md` | `docs/设计-UX-交互模式.md` + `docs/设计-UX-操作流程.md` §4.3 | `docs/09-API契约.md` §9.3 |
|
||||
| M7-004 | `docs/设计-UI-分类管理.md` | `docs/设计-UX-交互模式.md` §3.4 | `docs/09-API契约.md` §9.8~§9.11 |
|
||||
| M8-003 | `docs/设计-UI-其他.md` | `docs/设计-UX-用户旅程.md` §2.5 + `docs/设计-UX-操作流程.md` §4.6 | `docs/09-API契约.md` §9.20 |
|
||||
|
||||
## 页面结构
|
||||
|
||||
### 1. 路由定义
|
||||
|
||||
{{SvelteKit 路由路径 + layout 结构}}
|
||||
|
||||
### 2. 页面布局
|
||||
|
||||
{{布局容器、导航、侧边栏、内容区域划分}}
|
||||
|
||||
### 3. 子页面/步骤
|
||||
|
||||
{{页面内的子视图、步骤导航、状态管理}}
|
||||
|
||||
## 需要创建的文件
|
||||
|
||||
### 1. `src/routes/{{path}}/+page.svelte` — 页面入口
|
||||
|
||||
{{页面组件结构}}
|
||||
|
||||
### 2. `src/routes/{{path}}/+layout.svelte` — 布局容器(如需要)
|
||||
|
||||
{{布局组件结构}}
|
||||
|
||||
### 3. 子组件和类型定义
|
||||
|
||||
{{附加文件}}
|
||||
|
||||
## 设计系统(Apple 风格)
|
||||
|
||||
| 元素 | 规范 |
|
||||
|------|------|
|
||||
| {{设计令牌}} | {{值}} |
|
||||
|
||||
## 编码规范
|
||||
|
||||
- Svelte 5 runes 语法($state, $derived, $effect, $props)
|
||||
- TypeScript 类型注解,禁止 any
|
||||
- CSS 使用设计令牌,参照 Apple 风格设计系统
|
||||
- 完整指南参考 `team/svelte.md`
|
||||
|
||||
## 验收标准
|
||||
|
||||
- {{逐条检查}}
|
||||
- 无控制台错误
|
||||
|
||||
## 验证命令
|
||||
|
||||
```bash
|
||||
cd apps/desktop/frontend && npx svelte-check --tsconfig ./tsconfig.json
|
||||
cd apps/desktop/frontend && npm run build
|
||||
```
|
||||
|
||||
完成后将产出物清单写入 `/workspace/tasks/result/{{任务编号}}.md`。
|
||||
@@ -0,0 +1,78 @@
|
||||
# {{任务编号}} 前端任务:{{任务标题}}
|
||||
|
||||
## 概述
|
||||
|
||||
{{一段描述:组件级交互目标}}
|
||||
|
||||
**前置依赖**: {{依赖任务列表}}
|
||||
|
||||
## tmux 执行协议
|
||||
|
||||
- **Session**: `arno-team`,始终复用 `项目` / `后端` / `前端` / `测试` 四个 pane,禁止新建 tmux session / window / pane
|
||||
- **环境重置**: 开始前确保目标 pane 中是新启动的 `cc` 环境(/exit 后重启,清除遗留上下文)
|
||||
- **分发方式**: 由 `项目` pane 发送简短提示词,让目标 pane 自行读取任务文件
|
||||
|
||||
## 前置文档(必读)
|
||||
|
||||
> 执行本任务前必须加载以下文档,作为设计和交互规范。
|
||||
|
||||
### 设计文档(所有前端任务通用)
|
||||
- `docs/05-设计-UI.md` — 设计系统摘要(组件结构、设计令牌、色彩/排版/间距体系)
|
||||
- `docs/设计-Apple风格.md` — Apple 风格设计令牌(色彩、排版、组件规范)
|
||||
- `docs/设计-UX-错误处理.md` — 错误状态处理规范(错误提示样式/交互/文案)
|
||||
|
||||
### 编码规范(所有前端任务通用)
|
||||
- `docs/11-工程规范.md` §6(前端开发规范:Svelte 5、组件设计原则、IPC 通信模式)
|
||||
- `team/svelte.md` — Svelte 5 开发完整指南
|
||||
|
||||
### 按任务选取
|
||||
| 任务 | UI 设计文档 | UX 交互文档 | API 契约 |
|
||||
|------|-----------|-----------|---------|
|
||||
| M2-002 | `docs/设计-UI-初始化向导.md` | `docs/设计-UX-用户旅程.md` §2.1, §2.2 + `docs/设计-UX-操作流程.md` §4.1 | `docs/09-API契约.md` §5 |
|
||||
| M4-004 | `docs/设计-UI-主界面.md` | `docs/设计-UX-交互模式.md` + `docs/设计-UX-操作流程.md` §4.3 | `docs/09-API契约.md` §9.4、§9.5 |
|
||||
| M4-005 | `docs/设计-UI-主界面.md` | `docs/设计-UX-交互模式.md` + `docs/设计-UX-操作流程.md` §4.3 | `docs/09-API契约.md` §9.7 |
|
||||
| M5-003 | `docs/设计-UI-状态组件.md` | `docs/设计-UX-交互模式.md` §3.5, §3.8 | `docs/09-API契约.md` §6、§9.17 |
|
||||
| M7-003 | `docs/设计-UI-主界面.md` | `docs/设计-UX-交互模式.md` + `docs/设计-UX-操作流程.md` §4.3 | — |
|
||||
| M7-005 | `docs/设计-UI-认证.md` | `docs/设计-UX-操作流程.md` §4.2 | `docs/09-API契约.md` §9.16 |
|
||||
| M8-004 | `docs/设计-UI-其他.md` | `docs/设计-UX-用户旅程.md` §2.5 + `docs/设计-UX-操作流程.md` §4.6 | — |
|
||||
|
||||
## 功能需求(FR-NNN ~ FR-NNN)
|
||||
|
||||
- {{需求条目}}
|
||||
|
||||
## 需要创建的文件
|
||||
|
||||
### 1. `src/lib/components/{{path}}/{{Component}}.svelte` — {{组件名}}
|
||||
|
||||
{{组件结构骨架(script + markup)}}
|
||||
|
||||
### 2. 其他文件
|
||||
|
||||
{{附加组件/类型定义/Store}}
|
||||
|
||||
## 设计系统(Apple 风格)
|
||||
|
||||
| 元素 | 规范 |
|
||||
|------|------|
|
||||
| {{设计令牌}} | {{值}} |
|
||||
|
||||
## 编码规范
|
||||
|
||||
- Svelte 5 runes 语法($state, $derived, $effect, $props)
|
||||
- TypeScript 类型注解,禁止 any
|
||||
- CSS 使用设计令牌,参照 Apple 风格设计系统
|
||||
- 完整指南参考 `team/svelte.md`
|
||||
|
||||
## 验收标准
|
||||
|
||||
- {{逐条检查}}
|
||||
- 无控制台错误
|
||||
|
||||
## 验证命令
|
||||
|
||||
```bash
|
||||
cd apps/desktop/frontend && npx svelte-check --tsconfig ./tsconfig.json
|
||||
cd apps/desktop/frontend && npm run build
|
||||
```
|
||||
|
||||
完成后将产出物清单写入 `/workspace/tasks/result/{{任务编号}}.md`。
|
||||
@@ -0,0 +1,76 @@
|
||||
# {{任务编号}} 后端任务:{{任务标题}}
|
||||
|
||||
## 概述
|
||||
|
||||
{{一段描述:API 目标}}
|
||||
|
||||
**前置依赖**: {{依赖任务列表}}
|
||||
|
||||
## tmux 执行协议
|
||||
|
||||
- **Session**: `arno-team`,始终复用 `项目` / `后端` / `前端` / `测试` 四个 pane,禁止新建 tmux session / window / pane
|
||||
- **环境重置**: 开始前确保目标 pane 中是新启动的 `cc` 环境(/exit 后重启,清除遗留上下文)
|
||||
- **分发方式**: 由 `项目` pane 发送简短提示词,让目标 pane 自行读取任务文件
|
||||
|
||||
## 前置文档(必读)
|
||||
|
||||
> 执行本任务前必须加载以下文档,作为接口和存储规范。
|
||||
|
||||
### 接口与架构规范(所有后端任务通用)
|
||||
- `docs/09-API契约.md` — 完整 REST API 定义(所有后端任务必须严格遵守)
|
||||
- §1 通用规范(认证方式)| §2 通用响应格式 | §3 HTTP 状态码 | §4 错误码规范
|
||||
- `docs/07-系统架构.md` §2.2(服务端架构)| §7(模块划分)
|
||||
|
||||
### 数据库规范(所有后端任务通用)
|
||||
- `docs/08-数据库设计.md` §2(服务端数据库)
|
||||
- §2.3 索引设计 | §2.5 SQLite DDL 参考
|
||||
- §4 数据版本迁移策略(§4.2 迁移脚本规范、§4.3 迁移执行流程)
|
||||
|
||||
### 工程规范(所有后端任务通用)
|
||||
- `docs/11-工程规范.md` §1.5(术语使用规范)| §2(编码规范)| §5(API 设计规范)
|
||||
|
||||
### 按任务选取
|
||||
| 任务 | API 契约章节 | 数据库章节 |
|
||||
|------|-------------|-----------|
|
||||
| M2-001 | §5(设备注册接口)§7(管理接口 §7.1~§7.5) | §2.2.1 |
|
||||
| M5-002 | §6(同步接口 §6.1~§6.3) | §2.2.2 |
|
||||
| M8-001 | §7.8 GET /api/v1/admin/logs | §2.2.3 |
|
||||
| M8-002 | §7.6 POST /api/v1/admin/backups、§7.7 恢复备份 | §2.2.4 |
|
||||
|
||||
## 功能需求(FR-NNN ~ FR-NNN)
|
||||
|
||||
- {{需求条目列表}}
|
||||
|
||||
## 需要创建的文件
|
||||
|
||||
### 1. `src/{{module_name}}/services/{{service}}.py` — {{服务名}}
|
||||
|
||||
{{类/方法骨架 + 参数说明 + 约束}}
|
||||
|
||||
### 2. `src/{{module_name}}/api/routes/{{route}}.py` — API 路由
|
||||
|
||||
{{端点定义}}
|
||||
|
||||
### 3. `src/{{module_name}}/db/migrations/{{NNNN}}_{{name}}.sql` — 数据库迁移
|
||||
|
||||
{{DDL}}
|
||||
|
||||
## 编码规范
|
||||
|
||||
- Python 3.12+,完整类型注解(mypy strict)
|
||||
- ruff format/check,Google 风格 docstring
|
||||
- 严格遵守 `docs/09-API契约.md`
|
||||
|
||||
## 验收标准
|
||||
|
||||
- {{逐条检查}}
|
||||
- mypy --strict 零错误
|
||||
- ruff check 零告警
|
||||
|
||||
## 验证命令
|
||||
|
||||
```bash
|
||||
{{具体命令}}
|
||||
```
|
||||
|
||||
完成后将产出物清单写入 `/workspace/tasks/result/{{任务编号}}.md`。
|
||||
@@ -0,0 +1,74 @@
|
||||
# {{任务编号}} 桌面端任务:{{任务标题}}
|
||||
|
||||
## 概述
|
||||
|
||||
{{一段描述:服务目标、纯本地服务说明}}
|
||||
|
||||
**前置依赖**: {{依赖任务列表}}
|
||||
|
||||
## tmux 执行协议
|
||||
|
||||
- **Session**: `arno-team`,始终复用 `项目` / `后端` / `前端` / `测试` 四个 pane,禁止新建 tmux session / window / pane
|
||||
- **环境重置**: 开始前确保目标 pane 中是新启动的 `cc` 环境(/exit 后重启,清除遗留上下文)
|
||||
- **分发方式**: 由 `项目` pane 发送简短提示词,让目标 pane 自行读取任务文件
|
||||
|
||||
## 前置文档(必读)
|
||||
|
||||
> 执行本任务前必须加载以下文档,作为接口和存储规范。
|
||||
|
||||
### 接口与架构规范(所有桌面端任务通用)
|
||||
- `docs/09-API契约.md` — 客户端本地接口定义(桌面端需遵守请求/响应格式)
|
||||
- §1 通用规范 | §2 通用响应格式 | §4 错误码规范
|
||||
- §9 客户端本地接口(HTTPS IPC):§9.1~§9.20 全部端点
|
||||
- `docs/07-系统架构.md` §2.1(客户端架构)| §4(CRDT 同步架构)| §5(数据流)
|
||||
|
||||
### 数据库规范(所有桌面端任务通用)
|
||||
- `docs/08-数据库设计.md` §3(客户端本地数据库)
|
||||
- §3.3 索引设计 | §3.5 SQLite DDL 参考
|
||||
- §4 数据版本迁移策略(§4.2 迁移脚本规范)
|
||||
|
||||
### 工程规范(所有桌面端任务通用)
|
||||
- `docs/11-工程规范.md` §1.5(术语使用规范)| §2(编码规范)
|
||||
|
||||
### 按任务选取
|
||||
| 任务 | API 契约章节 | 数据库章节 | 其他参考 |
|
||||
|------|-------------|-----------|---------|
|
||||
| M3-001 | §9.12 证书状态、§9.13 导出、§9.14 导入 | §3.2.5 SyncMeta | — |
|
||||
| M3-002 | §9.1 登录、§9.2 锁定、§9.15 修改密码、§9.16 密码恢复 | §3.2.7 LocalConfig | |
|
||||
| M4-001 | 无直接 API(纯本地服务) | 无直接表操作 | — |
|
||||
| M4-002 | §9.3~§9.7 接口、§9.8~§9.11 分类接口 | §3.2.1、§3.2.3、§3.2.4、§3.2.6 | |
|
||||
| M5-001 | §6 同步接口(push/pull 格式参考) | §3.2.3 CRDTEntry、§3.2.5 SyncMeta | `docs/07-系统架构.md` §4(CRDT 同步架构) |
|
||||
| M7-001 | §9.8~§9.11 分类接口 | §3.2.2 Category | |
|
||||
| M7-002 | §9.16 POST /api/v1/local/password/recover | §3.2.7 LocalConfig | — |
|
||||
|
||||
## 功能需求(FR-NNN ~ FR-NNN)
|
||||
|
||||
- {{需求条目}}
|
||||
|
||||
## 需要创建的文件
|
||||
|
||||
### 1. `src/{{module_name}}/services/{{service}}.py` — {{服务名}}
|
||||
|
||||
{{类/方法骨架}}
|
||||
|
||||
### 2. 其他文件
|
||||
|
||||
{{附加文件}}
|
||||
|
||||
## 编码规范
|
||||
|
||||
- Python 3.12+,mypy strict,禁止 Any
|
||||
- ruff format/check,Google 风格 docstring
|
||||
|
||||
## 验收标准
|
||||
|
||||
- {{逐条检查}}
|
||||
- 模块测试覆盖率 >{{阈值}}%
|
||||
|
||||
## 验证命令
|
||||
|
||||
```bash
|
||||
{{具体命令}}
|
||||
```
|
||||
|
||||
完成后将产出物清单写入 `/workspace/tasks/result/{{任务编号}}.md`。
|
||||
@@ -0,0 +1,70 @@
|
||||
# {{任务编号}} 测试任务:{{测试标题}}
|
||||
|
||||
## 概述
|
||||
|
||||
{{一段描述:测试范围}}
|
||||
|
||||
**前置依赖**: {{依赖任务列表}}
|
||||
|
||||
## tmux 执行协议
|
||||
|
||||
- **Session**: `arno-team`,始终复用 `项目` / `后端` / `前端` / `测试` 四个 pane,禁止新建 tmux session / window / pane
|
||||
- **环境重置**: 开始前确保目标 pane 中是新启动的 `cc` 环境(/exit 后重启,清除遗留上下文)
|
||||
- **分发方式**: 由 `项目` pane 发送简短提示词,让目标 pane 自行读取任务文件
|
||||
|
||||
## 前置文档(必读)
|
||||
|
||||
> 执行本任务前必须加载以下文档,作为测试策略和被测模块规范。
|
||||
|
||||
### 测试规范(所有测试任务通用)
|
||||
- `docs/10-测试-方案.md` §1(测试策略/原则/级别/覆盖率要求)、§2(单元测试:框架/文件组织/Mock 策略/测试执行命令)
|
||||
- `docs/11-工程规范.md` §1.5(术语使用规范)| §2(编码规范)
|
||||
|
||||
### 按任务选取
|
||||
| 任务 | 被测模块文档 | API 契约 | 测试用例参考 |
|
||||
|------|------------|---------|------------|
|
||||
| M2-003 | `docs/08-数据库设计.md` §2.2.1 | `docs/09-API契约.md` §5、§7.1~§7.5 | — |
|
||||
| M3-005 | `docs/08-数据库设计.md` §3.2.5、§3.2.7 | `docs/09-API契约.md` §9.1、§9.2 | — |
|
||||
| M4-006 | `docs/08-数据库设计.md` §3.2.1、§3.2.3 | `docs/09-API契约.md` §9.3~§9.7 | — |
|
||||
| M5-004 | `docs/08-数据库设计.md` §3.2.3、§3.2.5 | `docs/09-API契约.md` §6(同步接口) | — |
|
||||
| M6-004 | `docs/运维-部署实施.md` | `docs/09-API契约.md` §8.1(健康检查) | — |
|
||||
| M7-006 | `docs/08-数据库设计.md` §3.2.2、§3.2.7 | `docs/09-API契约.md` §9.8~§9.11 | — |
|
||||
| M8-005 | `docs/08-数据库设计.md` §2.2.3、§2.2.4、§3.2.6 | `docs/09-API契约.md` §7.6~§7.8 | — |
|
||||
|
||||
## 测试范围
|
||||
|
||||
{{被测模块列表}}
|
||||
|
||||
## 需要创建的文件(覆盖率:{{阈值}})
|
||||
|
||||
### 1. `tests/{{path}}/test_{{module}}.py` — {{测试类名}}
|
||||
|
||||
```python
|
||||
class Test{{ClassName}}:
|
||||
def test_{{功能}}_{{场景}}(self):
|
||||
"""{{描述}}"""
|
||||
```
|
||||
|
||||
### 2. 其他测试文件
|
||||
|
||||
{{附加测试类/方法}}
|
||||
|
||||
## 编码规范
|
||||
|
||||
- Python 3.12+,mypy strict
|
||||
- 测试函数命名:`test_{功能}_{场景}`
|
||||
- 使用真实 SQLite (:memory:),不 mock 数据库
|
||||
- TypeScript 测试使用 vitest
|
||||
|
||||
## 验收标准
|
||||
|
||||
- 所有测试通过(uv run pytest / npx vitest run)
|
||||
- 覆盖率 >= {{阈值}}%
|
||||
|
||||
## 验证命令
|
||||
|
||||
```bash
|
||||
{{具体命令}}
|
||||
```
|
||||
|
||||
完成后将产出物清单写入 `/workspace/tasks/result/{{任务编号}}.md`。
|
||||
@@ -0,0 +1,49 @@
|
||||
# {{任务编号}} {{角色标签}}任务:{{任务标题}}
|
||||
|
||||
## 概述
|
||||
|
||||
{{一段描述:搭建目标、范围、不涉及的内容}}
|
||||
|
||||
## tmux 执行协议
|
||||
|
||||
- **Session**: `arno-team`,始终复用 `项目` / `后端` / `前端` / `测试` 四个 pane,禁止新建 tmux session / window / pane
|
||||
- **环境重置**: 开始前确保目标 pane 中是新启动的 `cc` 环境(/exit 后重启,清除遗留上下文)
|
||||
- **分发方式**: 由 `项目` pane 发送简短提示词,让目标 pane 自行读取任务文件
|
||||
|
||||
## 前置文档(必读)
|
||||
|
||||
> 按任务角色选取对应的文档加载。
|
||||
|
||||
### 通用
|
||||
- `docs/11-工程规范.md` §2(编码规范)、§3(项目目录结构)、§1.7(技术栈)
|
||||
|
||||
### 后端脚手架(M1-001)额外加载
|
||||
- `docs/08-数据库设计.md` §2.2(服务端表结构)、§2.5(SQLite DDL 参考)、§4(迁移脚本规范)
|
||||
- `docs/09-API契约.md` §8.1(GET /api/v1/health 健康检查端点)
|
||||
- `docs/07-系统架构.md` §2.2(服务端架构)
|
||||
|
||||
### 前端脚手架(M1-002)额外加载
|
||||
- `docs/07-系统架构.md` §2.1(客户端架构)
|
||||
- `docs/11-工程规范.md` §6(前端开发规范:Svelte 5、组件设计、IPC 通信)
|
||||
|
||||
### 测试脚手架(M1-003)额外加载
|
||||
- `docs/10-测试-方案.md` §1(测试策略)、§2(单元测试:框架/工具/文件组织/Mock 策略)
|
||||
|
||||
## 目录结构
|
||||
|
||||
{{目标目录树}}
|
||||
|
||||
## 需要创建的文件
|
||||
|
||||
{{每个文件的完整代码骨架或配置内容}}
|
||||
|
||||
## 验收标准
|
||||
|
||||
- {{检查项 1}}
|
||||
- {{检查项 N}}
|
||||
|
||||
## 验证命令
|
||||
|
||||
{{具体的验证命令列表}}
|
||||
|
||||
完成后将产出物清单写入 `/workspace/tasks/result/{{任务编号}}.md`。
|
||||
@@ -0,0 +1,56 @@
|
||||
# {{任务编号}} {{角色标签}}任务:{{部署标题}}
|
||||
|
||||
## 概述
|
||||
|
||||
{{一段描述:部署目标、打包范围}}
|
||||
|
||||
**前置依赖**: {{依赖任务列表}}
|
||||
|
||||
## tmux 执行协议
|
||||
|
||||
- **Session**: `arno-team`,始终复用 `项目` / `后端` / `前端` / `测试` 四个 pane,禁止新建 tmux session / window / pane
|
||||
- **环境重置**: 开始前确保目标 pane 中是新启动的 `cc` 环境(/exit 后重启,清除遗留上下文)
|
||||
- **分发方式**: 由 `项目` pane 发送简短提示词,让目标 pane 自行读取任务文件
|
||||
|
||||
## 前置文档(必读)
|
||||
|
||||
### 部署规范(所有部署任务通用)
|
||||
- `docs/运维-部署实施.md` — 部署实施方案(Dockerfile 规范、docker-compose 配置、生产环境配置)
|
||||
- `docs/07-系统架构.md` §6(部署架构)、§6.1(部署约束)
|
||||
|
||||
### 按任务选取
|
||||
| 任务 | 额外参考 |
|
||||
|------|---------|
|
||||
| M6-001 Docker | `docs/09-API契约.md` §8.1(健康检查)、`docs/运维-故障排除.md`(常见问题) |
|
||||
| M6-002 CLI+PyInstaller | `docs/09-API契约.md` §7(管理接口 CLI 命令参考)、`docs/11-工程规范.md` §1.7(技术栈) |
|
||||
| M6-003 前端打包 | `docs/11-工程规范.md` §6(前端开发规范) |
|
||||
|
||||
## 部署目标
|
||||
|
||||
- {{目标平台/格式}}
|
||||
|
||||
## 需要创建的文件
|
||||
|
||||
### 1. `{{配置文件路径}}`
|
||||
|
||||
{{完整配置内容}}
|
||||
|
||||
### 2. 构建脚本
|
||||
|
||||
{{脚本内容}}
|
||||
|
||||
## 编码规范
|
||||
|
||||
- {{部署特有规范}}
|
||||
|
||||
## 验收标准
|
||||
|
||||
- {{逐条检查:构建成功、运行正确}}
|
||||
|
||||
## 验证命令
|
||||
|
||||
```bash
|
||||
{{具体命令}}
|
||||
```
|
||||
|
||||
完成后将产出物清单写入 `/workspace/tasks/result/{{任务编号}}.md`。
|
||||
@@ -0,0 +1,320 @@
|
||||
# 开发测试任务提示词目录和任务编排
|
||||
|
||||
**版本**: 1.7.0
|
||||
**最后更新**: 2026-04-19
|
||||
**维护者**: 项目经理 Agent
|
||||
|
||||
---
|
||||
|
||||
## 1. 概述
|
||||
|
||||
本文档是 M1~M8 里程碑开发测试任务的**总索引和执行编排**。
|
||||
|
||||
### 1.1 使用方式
|
||||
|
||||
1. **项目经理 Agent** 按里程碑顺序分发任务到对应 tmux pane
|
||||
2. **后端 Agent**(pane 1)执行 `backend` 类型任务
|
||||
3. **前端 Agent**(pane 2)执行 `frontend` 类型任务
|
||||
4. **测试 Agent**(pane 3)执行 `test` 类型任务
|
||||
5. 每个里程碑内按编号顺序执行;同一里程碑内不同角色可并行
|
||||
|
||||
### 1.2 关键约束
|
||||
|
||||
- 每个 task 文件 <=200 行,功能强内聚(**本文档为例外,尽量不超过 400 行**)
|
||||
- 严格遵守 `docs/09-API契约.md`,不可违背
|
||||
- 模块独立:各 `apps/` 子模块禁止跨模块引用
|
||||
- **角色标签约定**:服务端任务使用 `backend`,桌面端任务使用 `desktop`(非后端),前端 UI 任务使用 `frontend`
|
||||
- 提交使用 jj,中文类型(功能、修复、维护...)
|
||||
- **模板化体系**:8 类任务模板提供骨架(tmux 协议、编码规范、文档引用),任务文件保留差异内容(功能需求、代码骨架、验收标准)。详见 `任务提示词构建方法.md`
|
||||
|
||||
### 1.3 tmux 执行环境
|
||||
|
||||
- **Session**: `arno-team`
|
||||
- **始终复用** `项目` / `后端` / `前端` / `测试` 四个 pane,**禁止新建** tmux session / window / pane
|
||||
- **每次任务前**,确保目标 pane 中是新启动的 `cc` 环境(`/exit` 后重启,清除遗留上下文)
|
||||
- **分发方式**:参考 `scripts/tmux-send-prompt.sh`,由 `项目` pane 发送简短提示词,让目标 pane 自行读取任务文件,避免发送过多提示词
|
||||
|
||||
| Pane | 名称 | 角色 | 用途 |
|
||||
|------|------|------|------|
|
||||
| pane 0 | 项目 | 项目经理 | 任务分发、进度追踪 |
|
||||
| pane 1 | 后端 | 后端开发 | 执行 backend 任务 |
|
||||
| pane 2 | 前端 | 前端开发 | 执行 frontend 任务 |
|
||||
| pane 3 | 测试 | 测试工程师 | 执行 test 任务 |
|
||||
|
||||
---
|
||||
|
||||
## 2. 任务总览
|
||||
|
||||
| 里程碑 | 后端 | 桌面端 | 前端 | 测试 | 合计 |
|
||||
|--------|------|--------|------|------|------|
|
||||
| M1 基础架构 | 1 | 0 | 1 | 1 | 3 |
|
||||
| M2 核心功能 | 1 | 0 | 1 | 1 | 3 |
|
||||
| M3 初始化与认证 | 0 | 2 | 2 | 1 | 5 |
|
||||
| M4 核心业务 | 0 | 2 | 3 | 1 | 6 |
|
||||
| M5 数据同步 | 0 | 2 | 1 | 1 | 4 |
|
||||
| M6 部署与打包 | 2 | 0 | 1 | 2 | 5 |
|
||||
| M7 增强功能 | 0 | 2 | 3 | 1 | 6 |
|
||||
| M8 运维功能 | 0 | 2 | 2 | 1 | 5 |
|
||||
| **合计** | **4** | **10** | **14** | **9** | **37** |
|
||||
|
||||
---
|
||||
|
||||
## 3. 里程碑任务清单
|
||||
|
||||
### M1 基础架构 (P1)
|
||||
| 编号 | 角色 | 内容 | 依赖 |
|
||||
|------|------|------|------|
|
||||
| M1-001 | 后端 | FastAPI 项目结构、数据库初始化、健康检查 | 无 |
|
||||
| M1-002 | 前端 | PyWebView + Svelte 5 项目结构 | 无 |
|
||||
| M1-003 | 测试 | pytest/vitest 基础设施、共享 fixture | M1-001 |
|
||||
|
||||
### M2 核心功能 (P1)
|
||||
| 编号 | 角色 | 内容 | 依赖 |
|
||||
|------|------|------|------|
|
||||
| M2-001 | 后端 | 设备注册/审批/禁用 + CLI | M1-001 |
|
||||
| M2-002 | 前端 | 设备注册 UI | M1-002 |
|
||||
| M2-003 | 测试 | 设备管理测试 | M2-001 |
|
||||
|
||||
### M3 初始化与认证 (P1)
|
||||
| 编号 | 角色 | 内容 | 依赖 |
|
||||
|------|------|------|------|
|
||||
| M3-001 | 桌面端 | 数据证书生成/导入/导出 | M2-001, M4-001 |
|
||||
| M3-002 | 桌面端 | 登录/锁定/密码验证 | M3-001, M4-001 |
|
||||
| M3-003 | 前端 | 初始化向导 8 步骤 | M2-002 |
|
||||
| M3-004 | 前端 | 登录/锁定界面 | M3-003 |
|
||||
| M3-005 | 测试 | 初始化与认证测试 | M3-001, M3-002 |
|
||||
|
||||
### M4 核心业务 (P1)
|
||||
| 编号 | 角色 | 内容 | 依赖 |
|
||||
|------|------|------|------|
|
||||
| M4-001 | 桌面端 | 核心引擎/基础设施 | 无 |
|
||||
| M4-002 | 桌面端 | 条目 CRUD + 搜索 | M4-001 |
|
||||
| M4-003 | 前端 | 列表与详情视图 | M3-004 |
|
||||
| M4-004 | 前端 | 添加/编辑表单 | M4-003 |
|
||||
| M4-005 | 前端 | 实时搜索组件 | M4-003 |
|
||||
| M4-006 | 测试 | CRUD+搜索测试 | M4-001, M4-002 |
|
||||
|
||||
### M5 数据同步 (P1)
|
||||
| 编号 | 角色 | 内容 | 依赖 |
|
||||
|------|------|------|------|
|
||||
| M5-001 | 桌面端 | CRDT 合并、Lamport Clock | M4-002 |
|
||||
| M5-002 | 后端/桌面端 | 同步 push/pull/status API(跨模块) | M5-001 |
|
||||
| M5-003 | 前端 | 同步状态 UI、离线模式 | M4-003 |
|
||||
| M5-004 | 测试 | CRDT + 同步测试 | M5-001, M5-002 |
|
||||
|
||||
### M6 部署与打包 (P1)
|
||||
| 编号 | 角色 | 内容 | 依赖 |
|
||||
|------|------|------|------|
|
||||
| M6-001 | 后端 | Dockerfile + docker-compose | M5-002 |
|
||||
| M6-002 | 后端 | CLI 整合 + PyInstaller | M6-001 |
|
||||
| M6-003 | 前端 | SvelteKit 构建 + PyInstaller | M5-003 |
|
||||
| M6-004 | 测试 | Docker + 打包测试 | M6-001 |
|
||||
| M6-005 | 测试 | E2E 集成测试(Playwright) | M6-001~M6-003 |
|
||||
| 编号 | 角色 | 内容 | 依赖 |
|
||||
|------|------|------|------|
|
||||
| M7-001 | 桌面端 | 分类 CRUD + 层级管理 | M4-002 |
|
||||
| M7-002 | 桌面端 | 数据恢复 API | M3-002 |
|
||||
| M7-003 | 前端 | 生成器组件 | M4-004 |
|
||||
| M7-004 | 前端 | 分类管理 UI | M4-003 |
|
||||
| M7-005 | 前端 | 恢复 UI | M3-004 |
|
||||
| M7-006 | 测试 | 增强功能测试 | M7-001, M7-002 |
|
||||
|
||||
### M8 运维功能 (P3)
|
||||
| 编号 | 角色 | 内容 | 依赖 |
|
||||
|------|------|------|------|
|
||||
| M8-001 | 后端 | 日志管理 API | M5-002 |
|
||||
| M8-002 | 后端 | 备份恢复 API | M5-002 |
|
||||
| M8-003 | 前端 | 日志查看 UI | M4-003 |
|
||||
| M8-004 | 前端 | 过期提醒 UI | M4-003 |
|
||||
| M8-005 | 测试 | 运维功能测试 | M8-001, M8-002 |
|
||||
|
||||
---
|
||||
|
||||
## 4. 执行依赖关系图
|
||||
|
||||
> 按角色分色:后端 桌面端 前端 测试
|
||||
|
||||
```mermaid
|
||||
flowchart TB
|
||||
subgraph backend["后端"]
|
||||
M1_001["M1-001<br/>FastAPI 项目结构"]
|
||||
M2_001["M2-001<br/>设备注册/审批/禁用"]
|
||||
M6_001["M6-001<br/>Dockerfile"]
|
||||
M6_002["M6-002<br/>CLI+PyInstaller"]
|
||||
M8_001["M8-001<br/>日志管理 API"]
|
||||
end
|
||||
|
||||
subgraph desktop["桌面端"]
|
||||
M4_001["M4-001<br/>核心引擎"]
|
||||
M3_001["M3-001<br/>数据证书生成"]
|
||||
M3_002["M3-002<br/>登录/锁定/验证"]
|
||||
M4_002["M4-002<br/>条目 CRUD"]
|
||||
M5_001["M5-001<br/>CRDT 合并"]
|
||||
M5_002["M5-002<br/>同步 push/pull"]
|
||||
M7_001["M7-001<br/>分类 CRUD"]
|
||||
M7_002["M7-002<br/>数据恢复"]
|
||||
end
|
||||
|
||||
subgraph frontend["前端"]
|
||||
M1_002["M1-002<br/>PyWebView+Svelte"]
|
||||
M2_002["M2-002<br/>设备注册 UI"]
|
||||
M3_003["M3-003<br/>初始化向导"]
|
||||
M3_004["M3-004<br/>登录/锁定界面"]
|
||||
M4_003["M4-003<br/>列表视图"]
|
||||
M4_004["M4-004<br/>编辑表单"]
|
||||
M4_005["M4-005<br/>实时搜索"]
|
||||
M5_003["M5-003<br/>同步状态 UI"]
|
||||
M6_003["M6-003<br/>SvelteKit 构建"]
|
||||
M7_003["M7-003<br/>生成器"]
|
||||
M7_004["M7-004<br/>分类管理 UI"]
|
||||
M7_005["M7-005<br/>恢复 UI"]
|
||||
M8_003["M8-003<br/>日志查看 UI"]
|
||||
M8_004["M8-004<br/>过期提醒 UI"]
|
||||
end
|
||||
|
||||
subgraph test["测试"]
|
||||
M1_003["M1-003<br/>测试基础设施"]
|
||||
M2_003["M2-003<br/>设备管理测试"]
|
||||
M3_005["M3-005<br/>初始化与认证测试"]
|
||||
M4_006["M4-006<br/>CRUD+搜索测试"]
|
||||
M5_004["M5-004<br/>CRDT+同步测试"]
|
||||
M6_004["M6-004<br/>Docker+打包测试"]
|
||||
M6_005["M6-005<br/>E2E 集成测试"]
|
||||
M7_006["M7-006<br/>增强功能测试"]
|
||||
M8_005["M8-005<br/>运维功能测试"]
|
||||
end
|
||||
|
||||
M1_001 --> M1_003
|
||||
M1_001 --> M2_001
|
||||
M2_001 --> M8_001
|
||||
M2_001 --> M6_001
|
||||
|
||||
M4_001 --> M3_001
|
||||
M2_001 --> M3_001
|
||||
M3_001 --> M3_002
|
||||
M4_001 --> M3_002
|
||||
M3_002 --> M4_002
|
||||
M4_002 --> M5_001
|
||||
M5_001 --> M5_002
|
||||
M4_002 --> M7_001
|
||||
M3_002 --> M7_002
|
||||
|
||||
M1_002 --> M2_002
|
||||
M2_002 --> M3_003
|
||||
M3_003 --> M3_004
|
||||
M3_004 --> M4_003
|
||||
M4_003 --> M4_004
|
||||
M4_003 --> M4_005
|
||||
M4_003 --> M5_003
|
||||
M4_003 --> M7_004
|
||||
M4_003 --> M8_003
|
||||
M4_003 --> M8_004
|
||||
M4_004 --> M7_003
|
||||
M3_004 --> M7_005
|
||||
M5_003 --> M6_003
|
||||
|
||||
M5_002 --> M6_001
|
||||
M6_001 --> M6_002
|
||||
M8_001 --> M8_005
|
||||
|
||||
M2_001 --> M2_003
|
||||
M3_001 --> M3_005
|
||||
M3_002 --> M3_005
|
||||
M4_001 --> M4_006
|
||||
M4_002 --> M4_006
|
||||
M5_001 --> M5_004
|
||||
M5_002 --> M5_004
|
||||
M6_001 --> M6_004
|
||||
M6_001 --> M6_005
|
||||
M6_002 --> M6_005
|
||||
M6_003 --> M6_005
|
||||
M7_001 --> M7_006
|
||||
M7_002 --> M7_006
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 5. 建议执行顺序
|
||||
|
||||
| Phase | 里程碑 | 时间 | 并行组 | 串行步骤 |
|
||||
|-------|--------|------|--------|----------|
|
||||
| 1 | M1 基础架构 | Day 1 | M1-001 + M1-002 | -> M1-003 |
|
||||
| 2 | M2 核心功能 | Day 2-3 | M2-001 + M2-002(mock) | -> M2-003 |
|
||||
| 3 | M3 初始化与认证 | Day 4-6 | M3-001 + M3-003 | -> M3-002 + M3-004 -> M3-005 |
|
||||
| 4 | M4 核心业务 | Day 7-10 | M4-002 + M4-003(在M4-001后) | M4-001 -> M4-004 + M4-005 -> M4-006 |
|
||||
| 5 | M5 同步 | Day 11-14 | M5-002 + M5-003(在M5-001后) | M5-001 -> M5-004 |
|
||||
| 6 | M6 部署 | Day 15-16 | M6-001 + M6-003 | -> M6-002 -> M6-004 |
|
||||
| 7 | M7 增强 | Day 17-20 | M7-001~005 全部并行 | -> M7-006 |
|
||||
| 8 | M8 运维 | Day 21-24 | M8-001~004 全部并行 | -> M8-005 |
|
||||
|
||||
---
|
||||
|
||||
## 6. Agent Teams 任务分发协议
|
||||
|
||||
### 核心约束
|
||||
|
||||
1. **始终复用 `arno-team` session**,复用 `项目`、`后端`、`前端`、`测试` 四个 pane
|
||||
2. **禁止新建** tmux session、window、pane
|
||||
3. **每次任务前**,确保目标 pane 中是新启动的 `cc` 环境(`/exit` 后重启 `cc`,清除遗留上下文)
|
||||
4. **使用 `scripts/tmux-send-prompt.sh`** 发送简短提示词,让目标 pane 自行读取任务文件,避免直接发送长文本
|
||||
|
||||
### 分发流程
|
||||
|
||||
```bash
|
||||
# 步骤1: 确保目标 pane 是新 cc 环境(无遗留上下文)
|
||||
# 检查目标 pane,如不是新 cc 则发送 /exit 后重新启动 cc
|
||||
|
||||
# 步骤2: 通过 tmux-send-prompt.sh 分发任务(发送文件路径,让 cc 自行读取)
|
||||
scripts/tmux-send-prompt.sh {pane_id} /workspace/tasks/{任务文件}
|
||||
```
|
||||
|
||||
### 完成报告
|
||||
|
||||
> 详细的提示词组装规则和模板映射参见 `任务提示词构建方法.md`。
|
||||
|
||||
任务完成后,执行 Agent 将结果写入 `/workspace/tasks/result/{{任务编号}}.md`,格式参见 `任务执行结果模板.md`。
|
||||
|
||||
### 冲突解决
|
||||
|
||||
同一文件只允许一个 Agent 修改;后端改 `apps/server/`,前端改 `apps/desktop/`,测试可改两侧 `tests/`
|
||||
|
||||
---
|
||||
|
||||
## 7. 文档索引
|
||||
|
||||
### 任务文件
|
||||
| 里程碑 | 任务文件 |
|
||||
|--------|---------|
|
||||
| M1 | M1-001, M1-002, M1-003 |
|
||||
| M2 | M2-001, M2-002, M2-003 |
|
||||
| M3 | M3-001, M3-002, M3-003, M3-004, M3-005 |
|
||||
| M4 | M4-001, M4-002, M4-003, M4-004, M4-005, M4-006 |
|
||||
| M5 | M5-001, M5-002, M5-003, M5-004 |
|
||||
| M6 | M6-001, M6-002, M6-003, M6-004, M6-005 |
|
||||
| M7 | M7-001, M7-002, M7-003, M7-004, M7-005, M7-006 |
|
||||
| M8 | M8-001, M8-002, M8-003, M8-004, M8-005 |
|
||||
|
||||
### 模板文件
|
||||
| 模板类型 | 文件 |
|
||||
|---------|------|
|
||||
| 脚手架搭建 | `任务提示词模板-脚手架搭建.md` |
|
||||
| 后端API开发 | `任务提示词模板-后端API开发.md` |
|
||||
| 桌面端服务开发 | `任务提示词模板-桌面端服务开发.md` |
|
||||
| UI布局和开发 | `任务提示词模板-UI布局和开发.md` |
|
||||
| 前端组件开发 | `任务提示词模板-前端组件开发.md` |
|
||||
| 测试编写 | `任务提示词模板-测试编写.md` |
|
||||
| 部署打包 | `任务提示词模板-部署打包.md` |
|
||||
| E2E测试 | `任务提示词模板-E2E测试.md` |
|
||||
|
||||
### 方法与模板
|
||||
| 文件 | 用途 |
|
||||
|------|------|
|
||||
| `任务提示词构建方法.md` | 提示词组装规则、模板映射、执行流程 |
|
||||
| `任务执行结果模板.md` | 任务完成报告格式 |
|
||||
| `result/` | 任务执行结果存储目录 |
|
||||
|
||||
---
|
||||
|
||||
## 版本历史
|
||||
|
||||
- v1.7.0 (2026-04-19): 初始版本
|
||||
Reference in New Issue
Block a user