gitcode代码合入如何推动,通知机制是否能优化

问题描述

遇到了和其他伙伴(https://discuss.openubmc.cn/t/topic/3474)相同的问题

PRhttps://gitcode.com/openUBMC/storage/pull/336提起来后过了两个星期没有人提出意见或合入,gitcode上@相应人员和通过微信联系commiter效果不明显(天天微信联系也不合适,这不社区),当前反馈给伙伴PAE单点推动,但是后期其他需求合入时仍然会存在此问题。

我们也并不希望通过拖到后面组件commiter为了关issue倒推伙伴赶着合入。

诉求

参考openUBMC社区提问处理机制,对于gitcode上

1、希望明确PR处理周期,比如不带WIP的新增PR提起后3天内commiter要检视留言。

2、优化gitcode通知机制,能通知到相关人员处理。

1 个赞

答案内容由AI生成,仅供参考:

:pushpin: 总结与行动建议

问题 当前状态 建议动作
PR 长时间无人评审 存在,平台通知不可靠 :white_check_mark: 推动社区制定 PR 审核 SLA
@mention 失效 已确认 GitCode 有 bug :white_check_mark: 引入机器人桥接通知 + 定时提醒
缺乏责任人机制 依赖个人自觉 :white_check_mark: 建立 Committer 轮值制度
紧急需求无绿色通道 :white_check_mark: 设立 Fast-track 标签机制
点击此处查看详细分析解答

关于GitCode代码合入推动及通知机制优化的建议

根据您提出的问题——Pull Request (PR) 提交后长时间无人评审、合入延迟,以及现有通知机制效果不佳——结合 openUBMC 社区当前的流程规范与实践,以下从“问题现状”、“已有机制分析”、“改进建议”三个方面进行系统性回答,并提出可落地的优化方向。


:magnifying_glass_tilted_left: 一、问题现状

您在 openUBMC/storage 仓库提交了 PR https://gitcode.com/openUBMC/storage/pull/336,但两周内未获得 Committer 审阅或反馈。类似情况也出现在其他开发者中(如 discuss.openubmc.cn/t/topic/3474 所述)。

当前依赖人工 @ 提及、微信私聊等方式推动,效率低且不符合开源社区“公开、透明、异步协作”的理念,存在如下痛点:

  • 缺乏明确处理周期承诺:PR 提交后不确定何时会被 Review。
  • 通知机制不可靠@mention 在 GitCode 平台可能无法有效触达 Maintainer/Committer 的邮箱或提醒系统。
  • 责任主体不清晰:当多个 Committer 存在时,易出现“谁都看到了,谁都没动”的情况。

:puzzle_piece: 二、当前社区已有机制分析

1. PR 合入基本流程(来自文档《在社区我们能通过评论让机器人做些什么》)

PR 从提交到合入需经过三道关卡:

flowchart TD
  A([提交 PR]) --> check
  subgraph check[合入检查]
    B[CLA 检查] -->|未通过| B1[签署 CLA 或修改邮箱后评论 /check-cla]
    C[代码审核 /lgtm + /approve] --> A1[PR代码更新] -->|重新审核| C
    D[门禁 CI 通过] -->|未通过| D1[评论 /recheck]
    M["PR需要关联Issue"] -->|未关联| M1[在PR描述中粘贴Issue链接]
  end
  check -->|检查通过| E([合入])

:white_check_mark: 关键点:代码审核阶段需要至少一名 Committer 或 Maintainer 执行 /lgtm/approve 操作。


2. Maintainer 与 Committer 的职责定义(来自 KG 数据与《申请流程》文档)

角色 职责
Committer - 审核 PR 内容
- 分配 Issue 与 PR
- 执行 /lgtm/approve
- 有权限合并代码
Maintainer - 技术路线决策者
- 管理发布计划
- 主持 SIG 会议
- 对项目整体负责

:light_bulb: 根据知识图谱,openUBMC/storage 仓库的维护者(Maintainer)为:

  • @yelvsub
  • @changxingOpenUBMC
  • @xiaoxinglx

贡献者为:@dli_bmc, @wwhh_wwhh
(来源:ID 为 1 的问答中机器人回复)


3. 通知机制现状:存在平台缺陷

在文档 ID 1 的回复中明确指出:

“当前 gitcode 存在一些 bug,机器人的 @ 并未推送到对应的 committer 邮箱”

这说明:

  • GitCode 原生的 @mention 功能在 openUBMC 社区不可靠
  • 需要人工手动通知或使用其他渠道(如微信),违背了自动化与异步协作原则。

:white_check_mark: 三、优化建议与可行性方案

为解决 PR 滞压问题,建议从流程制度技术手段两个层面进行优化:


:white_check_mark: 建议一:建立明确的 PR 处理 SLA(服务级别协议)

参考您提出的诉求,建议社区正式制定 PR 审核响应时间标准(建议写入《社区参与指导手册》)

PR 类型 建议响应时间 执行要求
非 WIP(正常功能/修复)PR 提交后 3 个工作日内必须有初步反馈 首次 review 或标注需补充内容
标记 WIP(Work In Progress)PR 不计入 SLA 待作者标记 ready for review 后开始计时
关键 Bug Fix / 安全补丁 提交后 24 小时内需响应 可发起 @sig/bmc-core 或邮件提醒

执行保障机制

  • 可由 SIG 组长(Maintainer)在月度会议上通报各成员 PR 审核响应情况。
  • 社区机器人可定期扫描“超期未审 PR”并自动 @ 对应 Committer。

:white_check_mark: 建议二:优化通知机制,提升可触达性

方案 A:增强机器人通知能力(技术侧)

  • 引入定时提醒 Bot

    • 当 PR 提交超过 48 小时无评论时,自动在 PR 下方留言提醒:
      ⏰ 提醒:此 PR 已超过 48 小时未被评审。请 @Committer 或 @Maintainer 查看。
      若无异议,将在 3 天后自动标记为“需加速评审”状态。
      
    • 可结合 Discord/钉钉/企业微信 webhook 推送通知。
  • 改进 @mention 触发机制

    • 当前已知 GitCode 的 @mention 不可靠 → 建议 社区自建通知桥接服务(Bridge Service):
      • 监听 GitCode Webhook
      • 将 PR 创建、更新事件转发至邮件列表或即时通讯群组
      • 自动提取 Committer 列表并发送提醒

方案 B:明确责任人轮值制度(管理侧)

  • 在每个 SIG 组内建立 Committer 轮值 Review 制度
    • 每周指定一名 Committer 作为“本周主审人”,负责主动巡查新 PR
    • sig-info.yaml 中配置轮值表(参考 申请流程 文档)
    • 轮值信息在 SIG 主页或 Etherpad 公开,便于追溯

:white_check_mark: 建议三:推动 PR 主动归因与看板管理

  • 在 PR 描述中强制要求填写:
    - 所属 SIG:sig/bmc-core
    - 关联 Issue:https://gitcode.com/openUBMC/storage/issues/xxx
    - 期望合入版本:v26.3.0
    - 是否影响上线:是/否
    
  • 社区可维护一个 “Open PR 看板”(类似 Jira Board),按组件、状态、超时时间分类,便于整体掌控。

:white_check_mark: 建议四:紧急通道机制(针对关键需求)

对于影响上线、客户交付的关键 PR,可设立:

  • “Fast-track PR” 标签机制
    • 提交者可申请加标签 [fast-track]
    • 触发社区机器人发送邮件至 sig-xxx-committers@openubmc.cn
    • 要求 72 小时内完成评审

类似机制已在华为内部多个开源项目中应用,效果显著。


:pushpin: 总结与行动建议

问题 当前状态 建议动作
PR 长时间无人评审 存在,平台通知不可靠 :white_check_mark: 推动社区制定 PR 审核 SLA
@mention 失效 已确认 GitCode 有 bug :white_check_mark: 引入机器人桥接通知 + 定时提醒
缺乏责任人机制 依赖个人自觉 :white_check_mark: 建立 Committer 轮值制度
紧急需求无绿色通道 :white_check_mark: 设立 Fast-track 标签机制

:rocket: 下一步建议

  1. 发起 RFC 提案
    https://discuss.openubmc.cn 创建新主题,标题为:

    【RFC】关于优化 openUBMC 社区 PR 审核响应机制与通知体系的建议

  2. 提交 PR 更新社区文档
    修改 community/sig-template/README.md 或新增 GOVERNANCE.md,加入:

    • PR 审核 SLA 规范
    • Committer 轮值模板
    • Fast-track 流程定义
  3. 联系 Maintainer 推动试点
    可先在 sig/bmc-coreopenUBMC/storage 试点轮值制度和机器人提醒机制。


通过以上系统性改进,可从根本上避免“PR 淹没”现象,提升 openUBMC 社区协作效率与开发者体验,真正实现“公开、高效、可持续”的开源治理模式。

相关MR已处理,收到反馈,关于gitcode合入流程问题会组织相关领域改进。

当前讨论了一下,尝试借用论坛推送机制,通过发帖触发合入检视通知。