三角色治理和评审
目的
这套文档不应该由单一角色制定。单一角色会天然偏科:
只有技术负责人 -> 容易变成工程自洽,但产品价值不闭环
只有产品负责人 -> 容易变成流程要求,但工程不可执行
只有平台 / 资深工程师 -> 容易变成工具和模板齐全,但缺少业务拍板
推荐用 3 个角色共同制定、评审和维护:
- 技术负责人。
- 产品负责人。
- 平台 / 资深工程师。
小团队可以一人多职,但评审时必须按这 3 个视角分别过一遍。
三角色和组员在具体工具里的协作步骤见 16-三角色协作流程-three-role-collaboration-flow.md。本文件定义责任边界,16 文件定义执行流程。
角色 1:技术负责人
核心职责
技术负责人是这套工程闭环的总 owner,负责判断规范是否能支撑长期交付。
负责拍板:
- 工程质量底线。
- PR、测试、CI、发布、回滚要求。
- 架构文档和项目级文档要求。
- 高风险变更的技术门禁。
- 技术债、重构、平台化投入的优先级建议。
不应该单独拍板:
- 产品优先级。
- 用户验收结论。
- 业务是否接受风险。
- 对外沟通节奏。
技术负责人评审问题
评审文档时问:
- 新人能不能按文档跑起项目?
- 每个项目是否有
docs/PROJECT.md? - 每类变更要跑什么检查是否清楚?
- 发布失败后是否知道怎么回滚?
- 架构、依赖、运行方式是否能被接手?
- 高风险变更是否有明确 approval?
- 文档是否能在 PR review 中被维护,而不是靠专项运动?
技术负责人主要维护文档
| 文档 | 责任 |
|---|---|
| 31-技术规范-technical-standards.md | 技术底线和仓库基线 |
| 32-PR评审-pr-review.md | PR 和 review 门禁 |
| 33-测试和质量-testing-quality.md | 测试和质量门禁 |
| 41-项目架构文档包-project-architecture-pack.md | 项目架构文档包 |
| 40-项目级闭环-project-level-closure.md | 项目级闭环要求 |
角色 2:产品负责人
核心职责
产品负责人负责保证团队做的是正确的事,而不只是把事情做完。
负责拍板:
- 用户问题是否成立。
- 需求优先级和取舍。
- Scope 和非目标。
- 用户可见功能的验收标准。
- 上线后反馈回流。
- 是否需要灰度、用户通知、客服话术、销售同步。
不应该单独拍板:
- 绕过工程质量门禁。
- 绕过安全、权限、数据、支付 review。
- 要求无回滚方案直接上线。
- 要求工程在 scope 不清时开工。
产品负责人评审问题
评审文档时问:
- 需求入口是否要求写清用户、问题、目标?
- 是否要求记录优先级理由?
- 用户可见功能是否有 Business Approver?
- 验收标准是否能被产品和工程共同判断?
- 发布前是否检查用户影响和沟通对象?
- 上线后是否有反馈入口和观察时间?
- Done 是否包含业务验收或关闭结论?
产品负责人主要维护文档
| 文档 | 责任 |
|---|---|
| 13-工作入口-work-intake.md | 需求入口字段和开发就绪 |
| 21-产品文档和设计-product-docs-and-design.md | 产品文档、设计系统和文案规范 |
| 20-产品闭环-product-closure.md | 产品闭环、验收、反馈回流 |
| templates/功能简报-feature-brief.md | 功能简报模板 |
| templates/产品验收-product-acceptance.md | 产品验收模板 |
角色 3:平台 / 资深工程师
核心职责
平台 / 资深工程师负责把规范做成可执行的东西:命令、模板、CI、脚本、项目入口、默认配置和排障路径。
负责拍板或主导:
- 本地开发环境怎么标准化。
- CI 检查如何落地。
- 模板怎么写得具体可用。
- 发布、监控、日志、排障入口怎么统一。
- 新人第一个 PR 如何走通。
- 哪些重复人工动作应该工具化。
不应该单独拍板:
- 产品优先级。
- 架构方向的最终取舍。
- 业务风险接受。
- 安全例外。
平台 / 资深工程师评审问题
评审文档时问:
- 文档里的命令能不能复制执行?
pnpm check这类命令是否写清楚验证语义?- 不同语言是否有等价命令?
- 新人环境验收是否能半天内完成?
- 项目入口模板是否能让人找到 owner、代码地图、运行方式?
- PR 模板是否能让 reviewer 判断风险?
- 哪些文档字段可以被 CI 或脚本检查?
平台 / 资深工程师主要维护文档
| 文档 | 责任 |
|---|---|
| 51-开发环境-dev-environment.md | 开发环境原则 |
| 43-本地开发-local-development.md | 本地开发和运行手册 |
| 50-发布环境-release-environments.md | 环境模型 |
| 53-可观测性SRE-observability-sre.md | 可观测性和 runbook |
| 52-部署Runbook-deployment-runbook.md | 发布和回滚 |
| templates/项目入口-project-index.md | 项目入口模板 |
三角色分工矩阵
| 事项 | 技术负责人 | 产品负责人 | 平台 / 资深工程师 |
|---|---|---|---|
| 是否进入开发 | 参与 | 拍板用户问题和优先级 | 判断是否具备执行条件 |
| Scope 变更 | 拍板技术风险 | 拍板产品取舍 | 评估实现影响 |
| PR 是否可合并 | 拍板技术质量 | 用户可见功能参与验收 | 确认检查和证据 |
| 是否可发布 | 拍板技术风险 | 拍板用户影响和沟通 | 确认发布、监控、回滚 |
| 事故 action | 拍板技术修复方向 | 拍板用户沟通和补偿 | 补监控、runbook、自动化 |
| 文档更新 | 要求项目级真实 | 要求需求和验收真实 | 让模板和命令可执行 |
| 高风险例外 | 必须参与 | 业务风险必须参与 | 提供可操作保护措施 |
三角色共同评审节奏
不要为文档开大量会议。建议固定一个轻量节奏:
| 频率 | 做什么 | 输出 |
|---|---|---|
| 每周 15 分钟 | 看 L0 指标和卡点 | 1-3 个需要修的流程问题 |
| 每两周 30 分钟 | 抽样 3 个任务、3 个 PR、1 次发布 | 更新模板或创建改进任务 |
| 每月 45 分钟 | 评审项目级文档和新人反馈 | 过期文档清单、项目成熟度变化 |
| 事故后 | 复盘闭环断点 | action items,必须有 Driver |
评审不是为了证明谁没做好,而是找出闭环断在哪里。
冲突处理
产品想快,技术认为风险高
处理方式:
- 产品负责人说明用户影响和业务期限。
- 技术负责人说明风险和最低保护措施。
- 平台 / 资深工程师给出可执行选项:灰度、feature flag、只发部分 scope、补监控、延后 migration。
- 记录最终选择、风险接受人、回滚方式。
不能只用“老板要”或“技术不让”作为结论。
技术想重构,产品认为没价值
处理方式:
- 技术负责人说明不做的风险:故障、交付慢、安全、成本。
- 产品负责人判断是否影响当前目标。
- 平台 / 资深工程师拆成可验证的小任务。
- 如果不做,记录接受的技术债和复查时间。
平台想标准化,团队嫌麻烦
处理方式:
- 平台 / 资深工程师证明能减少哪类重复问题。
- 技术负责人判断是否成为门禁。
- 产品负责人确认是否影响交付节奏。
- 先在一个项目试点,验证有效再推广。
草台团队最小版
如果团队只有 3-8 人,不要建立复杂委员会。直接这样分:
| 角色 | 人选 | 每周只做什么 |
|---|---|---|
| 技术负责人 | 创始 CTO / 技术 leader / 最资深工程师 | 看 PR 证据、发布回滚、项目入口 |
| 产品负责人 | 创始人 / 产品 / 业务负责人 | 看需求是否有用户问题、验收、反馈 |
| 平台 / 资深工程师 | 最熟工具链的人 | 看本地运行、CI、模板、排障是否可执行 |
每周只抽样看:
- 一个新需求。
- 一个已合并 PR。
- 一个发布记录。
- 一个新人或接手项目时遇到的问题。
只要这 4 个样本能闭环,团队就在变好。
评审结论格式
三角色评审结束后,只输出这几项:
本次评审对象:
技术负责人结论:
产品负责人结论:
平台 / 资深工程师结论:
必须修改:
可以延后:
Owner:
截止时间:
不要输出大段会议纪要。评审必须落成任务、模板修改或明确接受风险。
下一步阅读
读完或填完这份文档后,通常继续看:
- 16-三角色协作流程-three-role-collaboration-flow.md:角色边界明确后,继续看三角色如何在工具里协作。