# 任务 & 任务主版本

类比一下：**任务就像一个微信群**——群里能拉多个 Chat **并行**推进同一个大需求，等所有 Chat 都跑完，再统一把改动合到默认分支。它解决的是 Chat 一次只能盯一件事、多个改动只能串行等的低效问题。

## 何时该用任务

只要满足以下任意一条，建议直接走任务，而不是 Chat：

- 一个大需求，可以拆成多块**同时**推进（任务下 Chat 并行跑）
- 改动跨多个文件 / 多次对话才能完成
- 需要中途暂停（例如等评审、等 PRD 改稿）后再继续
- 想让代码先在"任务主版本"积累，等整体完工再统一上线

如果只是顺手改个文案、调一个常量，用 [Chat](#/chats) 即可。

## 新建任务

1. 进入 [任务列表](#/tasks)
2. 点击右上角 **+ 新建任务**，填写：
   - **标题**：一句话概括，会显示在列表
   - **描述**：详细背景、目标、验收标准
   - **归属应用**：决定 AI 在哪份代码上工作
3. 保存后任务卡片出现在列表，初始状态为「未开始」

## 任务的 4 种状态

| 状态 | 含义 | 触发方式 |
|------|------|----------|
| 未开始 | 创建后还没开跑 | 默认 |
| 进行中 | 任务下有 Chat 正在跑 | 在任务里发起 Chat |
| 已挂起 | 暂停，但保留任务主版本与历史 | 详情页中"挂起" |
| 已结束 | 全部合并完毕、确认上线 | 详情页中"结束任务" |

任务列表可以按状态筛选，找历史任务时勾选「已结束」即可。

## 任务详情页能做什么

点击任务行进入详情页，常见操作：

- **新建 Chat**：在任务范围内发起一次对话；改动会先合并到**任务主版本**而不是应用主版本
- **查看变更**：列出本任务下所有 Chat、每次合并的 commit
- **合并到任务主版本**：把当前 Chat 改动汇入任务长期分支
- **合并到应用主版本**：当任务整体完成时，把任务主版本合回 `main`
- **挂起 / 恢复**：暂停后任务不会自动跑，但保留全部状态

## 任务主版本是什么

任务主版本是**这个任务专属的长期分支**，每次 Chat 完成后会逐步合到这条分支上。

- 它**不影响应用主版本**，所以可以放心反复迭代
- 任务全部做完后，再用 **合并到应用主版本** 一次性上线
- 任务被删除前，可以随时基于任务主版本拉一份代码本地查看

## 任务和 Chat 的关系

```
任务（持有任务主版本）
 ├─ Chat #1 ──► 合并到任务主版本
 ├─ Chat #2 ──► 合并到任务主版本
 └─ Chat #3 ──► 合并到任务主版本
                    │
                    └─► 合并到应用主版本（任务结束时）
```

更详细的对比见 `04-chats.md`。

## 常见疑问

**Q：我能把别人的 Chat 挪到我的任务下吗？**
A：不行，目前任务和 Chat 在创建时就绑定。

**Q：任务可以跨多个应用吗？**
A：不行，一个任务只属于一个应用。

**Q：任务挂起后还能继续吗？**
A：可以，恢复后所有上下文（任务主版本、历史 Chat）都还在。

下一步推荐：`04-chats.md`
