openFuyao 社区新功能开发流程规范
1. 概述
本文档描述了 openFuyao 社区在增加新功能时,从提案提交到最终代码合入的全过程。社区采用分层决策机制,提案需经过sig组决定评审路径。
2. 版本规划
2.1 需求识别
- 新功能或改进需求首先在相关的 SIG 组内部被识别和讨论。
- SIG 组对需求的合理性、价值和技术可行性进行初步评估。
2.2 需求登记
创建需求 ISSUE
- 在 release-management 仓库创建需求类型的 ISSUE
版本规划例会
- 在 release-management 例会中评审需求
- 根据项目路线图和资源情况确定落地版本
- 记录版本规划决策
进度跟踪
- RM SIG 将跟踪所有已规划到当前版本的需求实现进度。
3. 提案阶段
3.1 提案提交
- 在 ofep 仓库创建新的提案文档 PR
- 使用模板编写提案内容
- 提案应包含:背景、目标、设计方案、影响评估等关键信息
3.2 提案评审路径决策
在提交提案后,需要咨询相关 SIG(Special Interest Group)的 Maintainer,确定评审路径。
4. 评审流程
4.1 TC 例会评审
会前准备
- 提案提交者提前与 TC 例会秘书沟通 ,并将相关信息添加至 TC 例会日程中
例会评审
- 在 TC 例会上进行方案讲解和讨论
- TC 成员对提案进行评审和投票
- 记录评审意见和决策结果
评审结果
- 通过:进入后续流程
- 修改:根据反馈修改后重新评审
- 拒绝:终止流程,归档提案
4.2 SIG 组内评审
会前准备
- 提案提交者提前与 SIG Maintainer 沟通 ,并将相关信息添加至 SIG 例会日程中
SIG 内部评审
- 在相关 SIG 组内进行技术评审
- SIG Maintainer 负责组织评审并做出决策
- 评审通过后由 SIG Maintainer 确认
5. 开发实施
5.1 代码开发
开发准备
- Fork 上游仓库
- 基于目标版本分支创建开发分支
- 遵循社区代码规范进行开发
PR 提交
- 开发完成后提交 Pull Request
- 按照 PR 模板要求填写相关信息
- 关联相关 ISSUE 和提案
5.2 代码评审
SIG 组内评审
- 相关 SIG 的 Maintainer 和 Committer 进行代码评审
- 确保代码质量和规范符合要求
测试验证
- 通过 CI/CD 流水线自动化测试
- 必要时进行手动验证和集成测试
6. 合入与发布
6.1 代码合入
- 评审通过后由 Maintainer 合入代码
- 合入到规划的目标版本分支
6.2 需求完成确认
- 当代码合入、相关测试和文档工作全部完成后,该需求的状态将被提交至 RM 例会进行最终评审。
- RM SIG 根据预定义标准(如功能完整、测试通过、文档就绪)确认需求是否“满足发布条件”。
6.3 版本发布
- 按照社区发布流程进行版本发布
- 更新相关文档和发布说明
7. 注意事项
沟通协作
- 及时在相关社区频道同步进展
- 重要决策在邮件列表中进行沟通
文档维护
- 及时更新相关设计文档和用户文档
- 保证文档与代码实现的一致性
变更管理
- 如开发过程中需要变更设计方案,需重新评估影响
- 重大变更需要重新进行评审流程
8. 联系信息
- 社区官网:https://openfuyao.cn
- SIG 信息:参见官网 SIG 中心
本文档会根据社区发展持续更新,最新版本请以社区官网文档为准。