研发阶段、命名规范与新材料实践对照
V10 更新:team / domain研发阶段、GitLab 命名与按类型推进的规范建议
更新日期:2026-11-08。以下为可评审的公司规范建议,不是已部署的 GitLab 配置。 继承已有 Git 分支、Tag、MR 规范及用户确认的 GitLab SSOT、Multica 过程记录方式。 参考用户提供的两份 PDF、固定版本的 mattpocock/skills,以及 AWS/Kiro 官方原文。
先区分四件事
类型表示交付什么,阶段表示当前在哪一步,状态表示产物是否有效,版本表示依据哪一份内容。
PRD 是类型,不是所有 Issue 必须经历的阶段;accepted 是文档状态,不代表已经生产上线。
Issue/MR 的分类使用 Labels;Git Tag 用于标记代码发布版本,不能用 prd、review 之类的 Tag 表示流程。
建议统一阶段语义、证据和接口,允许团队裁剪路径。下面是端到端研发的常见活动, 不是要求每个任务依次走完的瀑布流程;设计、验证策划和实现可按依赖交错,失败可回到前序活动。
端到端阶段与退出条件
| 阶段 | 建议标签 | 典型工作项 | 进入下一阶段的依据 |
|---|---|---|---|
| 受理与分诊 | phase:triage |
FEATURE / BUG / INCIDENT | 问题、来源、归属、责任人、紧急程度明确;去重后决定受理、拒绝或调查 |
| 探索与澄清 | phase:discovery |
RESEARCH / DECISION / MAP | 关键未知、术语、选项和证据明确;关键决策有人确认,剩余未知有边界 |
| 需求定义 | phase:definition |
PRD / FEATURE | 目标、非目标、业务规则、验收标准、约束与当前基线明确 |
| 交互与技术设计 | phase:design |
DESIGN / TECH | 关键路径、接口/数据、兼容性、风险、测试与回退策略经过适当评审 |
| 拆解与准备 | phase:planning |
FEATURE / DEV / VERIFY | 拆成可验证增量,依赖、执行权限、环境、测试数据及完成条件明确 |
| 实现与开发自验 | phase:implementation |
DEV / BUG | 实现和适用单元/集成/契约/E2E 自验完成,形成候选 SHA 与真实结果 |
| 独立验证 | phase:verification |
VERIFY / DEV | 必需行为与负向样例有证据;CI 扫描/测试结果有效,缺口和阻塞明确 |
| 评审与接受 | phase:review |
文档类 / DEV / BUG | 文档类完成相应内容评审;代码类完成规定的独立评审和 MR 条件 |
| 发布准备与上线 | phase:release |
RELEASE | 版本组合、发布/回退计划、责任和批准齐备;生产发布按既有人工流程执行 |
| 运行观察与学习 | phase:observation |
RELEASE / INCIDENT / FEATURE | 目标版本运行效果得到确认;遗留问题有去向,需长期保留的经验进入知识/测试/规则 |
关闭用 GitLab 原生 open/closed,不再额外维护 phase:closed。
关闭时保留最后阶段和结束原因,便于区分“方案评审完成”与“运行观察完成”。
若部署已有满足这些语义的原生状态/看板,映射使用即可,避免另维护一套冲突状态。
阶段标签代表工作项当前的主活动,不是所有历史活动的标签集合。 一个 FEATURE 的阶段由整体验收责任人或受控聚合逻辑判断,不能把某个 DEV 的阶段自动复制给父任务。 阶段变化不等于通过验收;任务必须保留对应证据和判定结果。
最小标签体系:先实施少量稳定字段
所有名称为建议,优先映射公司已有标签。使用普通单冒号标签即可,不依赖特定付费功能。
| 维度 | 基数与范围 | 示例 | 用途 |
|---|---|---|---|
kind: |
每个 Issue 一个主类型 | feature / prd / design / tech / dev / verify / bug / release / incident |
选择模板、技能和完成条件 |
phase: |
每个活动 Issue 一个当前阶段 | discovery / implementation / review |
看板、路由与阶段耗时 |
state: |
仅文档/决策产物,一个当前状态 | draft / in-review / accepted / superseded / rejected |
延续前章文档状态,决定该产物能否作为输入 |
risk: |
正式执行前按范围评估;一个值 | low / medium / high |
确定验证强度、权限与人审责任;不从任务大小猜风险 |
blocked |
按需添加,可叠加 | 配合正文说明阻塞方和解除条件 | 表示执行受阻,保留原 phase,不另造阶段 |
team: |
一个主责团队;协作团队记关联或正文 | team:paas |
谁负责推动与验收,优先复用项目登记信息 |
domain: |
一个主要领域;确有跨域影响时可多个 | domain:permission、domain:metadata |
涉及什么业务或平台能力,用于检索、影响分析和跨团队协作 |
初期只强制 kind、phase,文档再要求 state;风险作为接单合同必填字段,是否投影为标签由集成决定。
优先级沿用现有公司规则。缺陷严重度与业务优先级不是同一个量,不为了看板整齐混成一个 P0。
里程碑用 GitLab Milestone,责任人用 Assignee,版本与环境用结构化字段/证据,
不把人员、SHA、每次 run 或自由文本都制造成标签。
普通标签本身不提供互斥或门禁。建议由模板和受控集成校验单值维度只有一个当前值; 转换前读取最新内容,并发冲突时保留他人改动、重新计算,避免旧事件覆盖新状态。 自动化可在既有授权范围更新进展,业务意图、风险例外和生产发布仍由对应责任机制处理。
team 与 domain:组织责任和领域语义分开
本文将此前表示业务/能力领域的 area: 调整为 domain:,与 ai-wiki 的领域知识概念对应。
team 回答“哪个团队主责”,domain 回答“涉及哪个领域”,两者是多对多关系。
团队调整不应导致领域 ID 改名;一个领域也不必等于一个仓库、一个微服务或一个 DDD 限界上下文。
建议示例为 team:paas + domain:permission,或 team:crm-sfa + domain:customer。
示例 slug 需先与实际团队、领域词汇表核对,本文未声称这些标签已经在 GitLab 创建。
跨域 FEATURE 可标多个领域;影响独立交付时拆子 Issue,分别指定主责团队,并保留父任务整体责任。
前端、后端、Android、iOS 是技术侧分类,可在需要路由时用 stack:web、stack:java、
stack:android、stack:ios;开发、测试、产品、运维等岗位使用能力目录中的 role,
不混入 domain。repo/服务映射优先查询项目目录,避免复制出多套容易漂移的标签事实。
领域目录建议登记稳定 ID、中文名、边界、同义词、知识入口、关联仓库与主责/协作团队。
标签只引用该 ID;现有 domains/<group>/<repo> 是知识来源路径,不因改用 domain 标签而搬目录。
一个逻辑领域可以索引多个仓库目录,领域规则仍按明确 scope 与强制等级裁决,
不能因为添加了某个 domain 标签就自动获得写权限或覆盖公司规范。
如果已有 area:*,先盘点其语义:领域类映射到 domain:*,技术类映射到 stack 或项目元数据,
混合项人工拆分。逐项更新看板、搜索、订阅和自动路由后,再停止写入旧标签。
过渡期读端可识别旧别名,写端只维护新标签;没有历史消费者时直接采用新命名。
Issue、MR、分支与 Tag 的命名
Issue 标题:类型稳定,描述交付结果
格式:[TYPE] 业务主题 — 具体交付或待解决问题。
TYPE 采用统一大写词,正文可以中文;不要把“进行中/完成”、人员名或易变版本状态塞进标题。
同类型 Issue 允许多份,身份是实例/project/IID,不能把标题当数据库主键。
| 示例标题 | 主类型标签 | 说明 |
|---|---|---|
[FEATURE] 字段权限 — 支持按角色控制可见性 |
kind:feature |
目标、整体验收与当前产物索引 |
[PRD] 字段权限 — 角色与字段授权规则 |
kind:prd |
需求正文、场景、验收标准;可以是独立交付 |
[DESIGN] 字段权限 — 配置页及无权限状态 |
kind:design |
交互/视觉/体验设计与资产版本 |
[TECH] 字段权限 — 鉴权接口与缓存失效方案 |
kind:tech |
技术方案、取舍、测试与回退设计 |
[DEV] 字段权限 — 实现后端权限校验 |
kind:dev |
有界实现、测试和 MR |
[VERIFY] 字段权限 — 验证跨租户与跨端行为 |
kind:verify |
真实验证工作,结论可能是 FAIL |
[BUG] 字段权限 — 缓存命中时漏检角色权限 |
kind:bug |
复现、期望/实际、影响、回归与修复证据 |
[RELEASE] 字段权限 — 发布已验收的多服务版本组合 |
kind:release |
制品矩阵、发布/回退及观察结果 |
对高不确定性工作可选 [MAP]、[DECISION]、[RESEARCH],分别对应决策地图、待裁决问题和事实调查。
不要让一个类型同时表示需求正文、执行步骤和调度状态。
正式可独立验收的工作用 Issue;纯执行步骤留 Multica,避免三处重复维护 tasks。
MR 标题:沿用当前仓库规范
本项目现行《Git 分支规范》要求 MR 标题遵循提交日志格式,示例 feat(cart): 购物车结算优化。
建议继续使用 feat(permission): 增加字段级权限校验、fix(permission): 修复缓存路径漏检,
不把 Issue 的 [PRD] 分类前缀强加给代码 MR。
MR 描述保留目的/原因、实现范围、风险、测试与扫描结果、关联 Issue/验收标准、当前 SHA 和证据链接。 文档型 Issue 本身不要求 MR;若需要更新仓库里的 ADR、契约或长期文档,则对应变更仍走仓库 MR 流程。 不把未通过必需检查的变更伪装成可合并状态。
分支与 Git Tag:继承已有治理,不另起一套
代码分支沿用项目适用的 feature/、fix/、hotfix/ 等类型前缀及现有基线规则。
在项目规则允许时,可用 feature/123-field-permission 把 Issue IID 加进可读名称;
跨仓身份在 MR 正文用完整引用,不依赖分支里的数字。文档型 Issue 不必建分支。
现行 Tag 规范采用 vMAJOR.MINOR.PATCH,如 v26.10.2,发布 Tag 不可删除、复用或重新指向。
本建议不改动现有打 Tag 时机、责任或分支策略。kind:prd、phase:review 是 Labels,绝不是 Git Tag。
多仓发布用 RELEASE Issue 记录 repo → tag/SHA → 制品摘要 → 环境的版本矩阵。
本轮规范读取快照为 ai-wiki ef46c42925d44bb3e733cb12fb09def189451926,
区别于报告早期调研快照。
现行 Git 分支、Tag 与 MR 规范
及Git Group 与仓库治理规范
是本节继承的公司基线,Issue 新标签/类型为建议增补。
当前规范既有“只基于 main 的 tag 发布”,也有“存量分支发布逐步迁移”的表述; 执行时按仓库适用 profile 和现行授权核验,不在此宣称所有工程已完成 Tag 发布改造。 现行 MR 描述还提及 TAPD story/bug;保留这些来源关联,当前任务权威入口按用户确认使用 GitLab Issue。
按类型选择路径,不强制所有 Issue 走满十个阶段
| 任务类型 | 示例路径 | 正常结束条件 |
|---|---|---|
| 独立 PRD | definition → review → closed | 当前文档获接受,state:accepted;没有代码要求 |
| 独立 DESIGN / TECH | discovery(按需)→ design → review → closed | 设计/方案评审完成,约定内容交付 |
| 普通 DEV | planning → implementation ↔ verification → review → closed | 达成项目代码交付合同;若定义为合并完成则在合并后关闭 |
| 可复现 BUG | triage → implementation ↔ verification → review → closed | 复现与回归有效、修复满足合同;未知根因先 discovery |
| VERIFY | planning → verification → closed | 验证工作和报告交付完成;verdict 单独记录,FAIL 不给父任务放行 |
| RELEASE | planning → release → observation → closed | 约定版本完成发布并满足观察条件 |
| INCIDENT | triage → discovery → observation → closed | 恢复与故障关闭条件满足,修复 DEV/BUG 另关联 |
完整 FEATURE 按已选交付集合验收;只要求设计交付的 FEATURE 不必等上线, 要求生产效果的 FEATURE 则不能在代码合并时关闭。 事故的缓解动作可能先于完整 RCA,不能把上表当作阻止紧急响应的串行门槛。 紧急修复可以压缩沟通环节,但关键验证、生产权限与事后记录按既有政策执行。
Issue 模板与阶段回写契约
所有类型最小共享模板:
类型与本次交付:
目标 / 待回答的问题:
范围与非目标:
约束、风险与责任人:
当前采用输入:Issue/文档链接 + 版本或内容摘要
验收 / 完成条件:
依赖与阻塞:
当前结论、未决项和产物引用:
Multica issue / topic / run:
证据与变更记录:
PRD 补场景和 验收标准;DESIGN 补关键状态与设计版本;TECH 补接口/数据、选项取舍、测试及回退; DEV/BUG 补复现或适用 验收标准、改动边界和验证矩阵;VERIFY 补版本/环境/数据与 verdict; RELEASE 补制品矩阵、执行责任、批准和回退/观察标准。
阶段回写建议格式:[阶段] 结论|输入版本|产物与证据|缺口/下一步|Multica 过程链接。
重大范围变化更新当前正文,评论只保存摘要和审计,不能把关键决定埋在历史回复里。
同一事件回写要去重;回写失败应显示待同步,不能把平台执行完成当作 GitLab 合同已更新。
Wayfinder 与 grill 技能:实际实现和适配边界
核对仓库 mattpocock/skills,固定提交:
4ae2317ddb22b046e26455e4f9c9b3aaaf62212d。
本次找到当前技能名 grill-with-docs,而非同名 grill-me-with-docs;以下仅依据已读版本。
已核实的上游做法
wayfinder默认解决决策问题,先得到可实施路线,不默认执行整个项目。- 地图是
wayfinder:mapIssue,只存目标、使用说明、已决策摘要/指针、尚未细化问题和范围外事项。 - 子 Issue 是决策问题,类型为
wayfinder:research、prototype、grilling、task。 研究可独立执行,grilling/prototype 要真人参与;不能由 Agent 自问自答冒充人的决策。 - 先读取地图,再按需读取当前可处理的问题;关闭问题时写 resolution comment 并回填地图摘要。
- GitLab 适配明确 issues/specs 存 GitLab,使用关联 Issue 和
Part of表达归属; 原生阻塞能力不可用时以正文Blocked by约定回退。上游另有 GitHub 和本地 Markdown 适配。 grill-with-docs调用 grilling 与 domain-modeling;后者将术语和重要 ADR 写入仓库文件, 并非把所有内容存 GitLab。ADR 只用于有真实取舍、难逆转、缺背景会令人困惑的重要决定。
结合公司环境后的建议
| 上游做法 | 公司采用方式 | 需要补充的约束 |
|---|---|---|
| 地图只是摘要索引 | FEATURE 索引正式产物;复杂探索另用 MAP,二者按需关联 | 不把所有项目都变成必须建 MAP 的流程 |
| 决策票不同于开发票 | RESEARCH/DECISION 支撑 PRD/TECH;明确后再交 DEV | 决策完成不等于代码完成 |
| resolution 在评论 | 保留讨论/结论原位置,Issue 正文指向当前有效结论及版本 | 与公司正文 SSOT 对齐,不让使用者翻所有评论 |
| assignee 表示领取 | 人的责任人与执行 run 显式关联,调度层负责排他领取和过期回收 | assignee 不是原子锁;并发 Agent 不能都据此认领成功 |
| blocker closed 即解除 | 检查依赖的验收结果与版本,而不只看 closed | 被拒绝/取消/替代的前置问题不能无条件解锁开发 |
| 更新或删除失效问题 | 用 superseded/cancelled 记录替代,默认保留决策历史 | 失效同步到当前产物索引和 Agent 工作集 |
| 只用 wayfinder 标签 | 原样运行时保留其原生标签,适配层映射公司类型/阶段 | 上游明令决策票不加实现就绪类标签,不能不改契约就混用 |
这些是适配建议,未安装运行上游技能、未验证其 CLI 命令在公司 GitLab 的执行结果。 上游维护说明也指出主要使用 GitHub;GitLab 模板存在不等于你们部署的全部功能已验收。
来源:
《Vibe 时代的软件工程》如何改变我们的工程约定
用户提供材料共 39 个 PDF 页面,封面标“2026 年·初版”。以下页码均为 PDF 页面序号, 不是正文印刷页码。重点核对了成本/验证鸿沟、核心循环、模块化、安全网和规模化相关页面。 书中案例和概率数字是材料的论证或示例,不作为公司实测收益或实际可靠率。
| 材料观点与页码 | 公司落地方式 | 在哪个阶段验收 |
|---|---|---|
| 验证鸿沟、整体瓶颈,p7–8、34–36 | 限制待验证/待评审工作量;按队列和 CI 容量控制 Agent 并发,度量返工、评审等待、有效交付 | planning 与全流程容量治理 |
| 目标、约束、上下文、验收四要素,p17–18 | 写入 Issue 共享模板和 Multica 接单合同,缺关键条件先澄清 | definition / planning |
| 能验证多大就委托多大,p19 | DEV 按可验证增量拆分;验收方式缺失时先做可验证性改造 | planning |
| 机器先行,读 diff 先范围再接口后实现,p19–21 | lint/编译/扫描/测试先运行;人工与独立评审关注范围、接口、授权与关键行为 | verification / review |
| 模块边界与上下文局部性,p25–26 | TECH 给出接口和改动边界;任务只装载目标模块与必要契约 | design / implementation |
| 测试是规格,警惕镜像实现与空断言,p28–30 | 复用 IDP 反恒真检查、Egress 真实证据校验;从 验收标准、缺陷和不变量推导测试 | definition / verification |
| 属性测试与小步检查点,p30–32 | Java 试点权限/租户/序列化等不变量;记录已验证的 commit,跨 runtime 交接需要可取回的远端 SHA | implementation |
| 独立评审与并发的三个前提,p36 | 可切分任务、隔离工作区、合并纪律;验证上下文由合同/证据构成,不只继承开发总结 | planning / review |
| 文档、ADR 与纠偏沉淀,p37 | 复发问题转成回归、门禁、Skill 或审定知识;避免把每次临时修正都塞进根 AGENTS | observation |
| 保持理解与判断力,p39 | 人负责目标、接口、判定基准、风险和接管;用事故演练/关键 diff 评审校准能力 | 全流程 |
书中的若干表述需要结合你们规模适配:
- “两次修不好就回滚重来”取其有界重试与清理上下文的原则,具体次数按风险和团队合同配置; 先保留失败证据和已有有效工作,不对共享分支或他人改动执行无条件 reset。
- “不许改测试”应落实为本轮验收基准受保护,基准变更需独立确认; 不能禁止正常维护测试,也不能要求 250 人逐条人工重读所有低风险自动生成断言。
- “模型没有跨会话记忆”针对模型自身;Multica、GitLab、知识库和 harness 可以提供持久记忆, 关键是来源、权限、版本、过期和可恢复,而不是把所有历史重新注入上下文。
- 独立概率相乘、贝叶斯示例和编码占比 40% 的加速上限依赖假设, 检查器可能共享盲区,不能把这些数字直接转为公司的通过概率或收益承诺。
- 分支/worktree 隔离的是工作副本,不是进程、凭据和网络安全边界;运行权限沿用部门 VM 的隔离合同。
AWS 材料:系统规格、任务规格与知识回流
用户提供的《AWS案例_知识库在软件研发全流程中的应用》共 10 页, 材料标注 2026-10、部分来源为脱敏内部资料,最后一页也说明对纷享现状的推断需确认。 本报告将其作为用户提供的研究材料,不把其中内部数值或产品清单当成本轮独立核实的 AWS 官方事实。
最有用的组织方式是 p6 的两类规格:
| 类别 | 回答的问题 | 本公司对应落点 | 更新与验收 |
|---|---|---|---|
| System spec:系统规格 | 指定版本的系统现在是什么 | 业务仓中的接口/schema/状态机/维护文档,repo-wiki 萃取并经 wiki-bot 汇聚;稳定跨域知识在 ai-wiki | 随实现变更更新,带源码版本;未部署不能声称是生产现状 |
| Task spec:任务规格 | 这次准备改什么,怎样验收 | GitLab PRD/DESIGN/TECH 等 Issue、FEATURE 当前产物索引;Multica 留过程 | 固定本轮输入,完成后历史化,提炼变化进入系统规格/测试 |
报告其余可采用做法:p4 的先接现有来源、限制默认工具与上下文预算; p7 的从需求/不变量形成验证基准;p8 的复盘行动转成上线检查和技能; p9–10 的来源、加工、存储、访问、消费者链路,以及知识效果用任务成功率/返工衡量。 对应公司就是 code-search + ai-wiki + fs-ai-hub + Multica + repo-wiki 增量更新, 不因参考 AWS 就要求迁云或新增同功能平台。
材料所述个人身份工具访问不能直接照搬到部门长期无人值守 Agent; 已有凭据网关与服务身份应显式区分人的授权、runtime 权限和审计主体。 材料的“≤4 个默认工具”、各项提效数字只作为其建议/案例,不能替代你们按任务测得的工具预算与收益基线。
本轮另核对两份一手资料:
- AWS AI-DLC: 提出 Inception、Construction、Operations 三大阶段,AI 规划并请求关键澄清、人参与重要决策; 原文将 plans/requirements/design 保存于项目仓库。这与本文的 GitLab 文档 Issue 落点不同, 我们借鉴活动和上下文连续性,通过显式引用/快照适配,不宣称 AWS 采用本公司的 Issue 存储路线。
- Kiro Specs: 明确 requirements/bugfix、design、tasks 文件和三阶段工作流; 可以映射到本公司 PRD/BUG、TECH、执行任务,但使用文件型工具时须定义输入快照和状态回写, 避免 GitLab、Multica、tasks.md 三套活动状态同时维护。
AWS 的三大阶段适合管理层总览;本章的十种 phase 用于工程活动与路由。 不能机械一一对应:技术设计在 AI-DLC Construction 中也可能发生,文档评审可早于编码。
建议先在一个团队验证的最小闭环
选一项真实小需求、一项只交付技术方案的任务、一项可复现 Bug: 确认类型与完成条件 → 当前输入可定位 → Multica 按类型执行 → GitLab 留结论和证据 → 按合同收尾。 验收至少覆盖:文档不误建代码任务;取消的依赖不误解锁;旧版 PRD 不继续指挥新 run; VERIFY 完成但 FAIL 不让 FEATURE 通过;MR 不误关文档;发布版本与实际运行一致。
推广到更多团队前,再用相同标签字典/模板做映射,保留团队 profile 差异。 本轮未创建 Issue、标签或 MR,也未修改 CI、运行平台或分享原始 PDF。