本页记录了保护 main 分支的推荐仓库设置。这是一份治理参考文档,而非工作流实现文件。
目标#
分支保护应保持 main 的稳定性,同时不阻塞聚焦的贡献者工作。
推荐目标:
- 合并前要求 Pull Request
- 合并前要求 CI 验证通过
- 要求相关 CODEOWNERS 条目的审查
- 限制直接推送到
main - 仅允许明确受信的仓库管理员绕过
- 为发布、安全和运行时变更保留清晰的审计追踪
main 分支的推荐设置#
为 main 配置分支保护规则:
- 合并前要求 Pull Request。
- 要求至少一个批准审查。
- 要求 Code Owners 审查。
- 有新提交推送时撤销过时的批准。
- 合并前要求状态检查通过。
- 在可行的情况下要求分支在合并前保持最新。
- 限制可以推送到匹配分支的人员。
- 不允许强制推送。
- 不允许删除分支。
如果仓库使用合并队列,通过队列设置应用相同的必需检查。
必需检查#
使用现有 CI 工作流作为主要的必需检查。main 保护至少应要求覆盖以下内容的构建/测试任务:
- 解决方案还原
- Release 构建
- Release 测试
- 确定性的
samples/OpenClaw.HelloAgent冒烟运行
NativeAOT 发布检查很有价值,但可以根据运行时可靠性和发布需求保持为独立的必需或建议检查。如果将它们设为必需,请在发布或兼容性文档中记录其失败模式。
CODEOWNERS 关系#
仓库使用 .github/CODEOWNERS 为以下内容路由审查请求:
- 运行时核心
- 网关和安全敏感接口
- 安全和治理文档
- 构建、发布和 CI 文件
- 行业提案和社区文档区域
仅在仓库访问权限、范围和治理期望正式确定后才添加区域维护者。
此文档不授予的权利#
分支保护和 CODEOWNERS 本身不授予维护者身份。
维护者身份仍由持续贡献、信任、技术判断、社区行为和 maintainers.md 中的角色定义决定。
赞助不授予路线图控制权、发布权、维护者身份、独占所有权或 CODEOWNERS 权限。