61 lines
2.6 KiB
Markdown
61 lines
2.6 KiB
Markdown
# 交付树模型与关联约定
|
||
|
||
## 真相源
|
||
|
||
```text
|
||
需求状态 = 阶段看板唯一真相(分析中/设计中/待开发…)
|
||
【交付】任务 = 该需求的交付容器(每需求最多 1 条)
|
||
【分析】/【设计】 = YunxiaoPMapp 在交付下建的阶段子项
|
||
【开发】/【测试】 = 另属开发 Skill / 测试 Skill,不进本包
|
||
ASSOCIATED = 横向挂钩(【交付】 ↔ 需求)
|
||
SUB / TASK_SUB = 纵向拆解(交付 → 分析/设计)
|
||
```
|
||
|
||
## 关系验收
|
||
|
||
| 关系 | 用在哪里 | 验收 | 优先级 |
|
||
|---|---|---|---|
|
||
| ASSOCIATED | **仅【交付】** ↔ 需求 | 交付详情「关联项」能看到需求(**强制**) | 交付必过 |
|
||
| TASK_SUB | 【分析】/【设计】 → 【交付】 | 交付详情「子项」能看到阶段任务(**强制**) | 阶段任务必过 |
|
||
|
||
建单规则(Cookie 路径 · 同一 create 只能一条 `createWorkitemRelationInfo`):
|
||
|
||
| 对象 | `createWorkitemRelationInfo` | 另写字段 |
|
||
|---|---|---|
|
||
| 【交付】 | `ASSOCIATED` → 需求 | — |
|
||
| 【分析】/【设计】 | `TASK_SUB` → 交付 | `parent` + `parentIdentifier` = 交付 |
|
||
|
||
**禁止**对分析/设计只写 `parentIdentifier` + `ASSOCIATED→需求`:关联项可能有,但交付「子项」仍为空(ONEOS-246/247 已复现)。
|
||
勿用 `PARENT` 冒充关联项。细则见 [live-api.md](live-api.md)。
|
||
|
||
## 禁止
|
||
|
||
| 禁止 | 说明 |
|
||
|---|---|
|
||
| 创建或描述【开发】/【测试】 | 口令与回报均不出现 |
|
||
| 分析/设计未挂成交付子项(无 TASK_SUB) | 交付「子项」为 0,交棒验收失败 |
|
||
| 用任务名称/标题做唯一性或查重 | 不得 `subject` 匹配复用 |
|
||
| 同一需求认定多个交付任务编号 | 列出编号请人合并后再继续 |
|
||
| 功能模块标签用「分析/设计/交付」 | 模块标签打在需求(可选交付)上 |
|
||
|
||
## 任务标题(仅展示)
|
||
|
||
- 【交付】+ 需求标题
|
||
- 【分析】+ 需求标题
|
||
- 【设计】+ 需求标题
|
||
|
||
标题可改,**不参与查重**。
|
||
|
||
## 任务编号唯一性
|
||
|
||
**唯一允许的查重/复用渠道:云效任务编号**(如 `ONEOS-99` / `serialNumber`)。
|
||
|
||
| 场景 | 正确 | 错误 |
|
||
|---|---|---|
|
||
| 首次创建【交付】 | 建单成功后回报并写入「工作项编号(系统)」 | 下次用标题搜 |
|
||
| 复用【交付】 | 口令或编号区块带 `交付任务=ONEOS-xx` | list 后按 subject 相等 |
|
||
| 判断是否已有交付 | 编号区块或交付 ASSOCIATED 编号集合 | 数【交付】开头标题 |
|
||
| 分析/设计幂等 | 仅已登记编号 | 按【分析】+需求标题 |
|
||
|
||
按编号命中则复用;**计划开始已有值禁止改写**。
|