目录
目录readme.md

BOT目标

监控项目中的 Issue 并确保参与者得到及时回应和关注;这个Bot可以帮助项目团队更好地管理Issue,确保及时回应和解决问题。通过自动提醒和激励,它有助于保持开发社区的活跃度,并鼓励参与者积极参与讨论和解决问题,从而提升项目的质量和开发效率。

BOT功能

  1. Issue 跟踪与监控:Bot将持续监控项目中创建的Issue,并跟踪它们的状态和活跃度。
  2. 不活跃 Issue 发现:当某个 Issue 长时间未得到回应或者处于不活跃状态时,Bot将识别这些情况。
  3. 自动评论与提醒:Bot会在对应的不活跃的 Issue 页面进行自动评论,提醒相关团队成员或项目核心开发者关注这个不活跃的 Issue,并鼓励他们提供反馈或解决方案。
  4. 定期提醒与激励:如果 Issue 仍然处于不活跃状态,Bot会定期通过邮件向各位参与该项目的开发人员发送提醒消息,鼓励团队成员参与讨论、提供帮助或解决问题。
  5. 关注度分析与统计:Bot能够收集并分析 Issue 的响应时间、解决率等数据,为项目团队提供洞察,并可能展示在指定的仪表盘上。
  6. 定制设置与扩展功能:允许设置 Issue 不活跃的时间阈值,同时还可以扩展功能以适应特定项目的需求。

    监控issue所要执行的具体操作

    issue中被监控的属性

    检测issue的相关信息,发现应监控的属性包括如下:
  • 自定义的状态信息(1 表示该 Issue 已完成 2 表示该 Issue 未处理)
  • 标题
  • 状态
  • 负责人
  • 优先级
  • 标记
  • 里程碑
  • 关联分支
  • 创建时间
  • 评论

监控issue的人员

我们将监控issue的人员定为在该项目中的成员(项目开发人员)–包括管理员 开发者 报告者 暂定监控issue的人员为youngll,SongJieyahoo,LZHty666 (issue定义的负责人?)

定义issue不活跃的条件

  • issue存在
  • 状态需要满足“正在解决”或“新增”
  • 当前时间距离上次更新时间超过两小时

    反馈给开发人员的方法

    在issue中进行自动评论提醒,邮箱反馈(暂定:微信发送消息提醒)

    BOT自动提出解决不活跃 Issue 的方法

展示关注度的方式以及仪表盘的设计

定义对 Issue 进行操作的行为

如果最近有项目开发人员对该 Issue 进行了这些行为,则认为该其不属于不活跃状态

  • 项目开发人员进行评论√
  • 项目开发人员对评论进行删除、修改和回复操作√
  • 项目开发人员对该issue进行了修改标题和描述这一操作√
  • 项目开发人员删除了该issue–无法webhook,issue一般不会被删除
  • 项目开发人员进行声明–无法webhook,更改声明也无法webhook,取消声明也无法webhook
  • 项目开发人员修改了负责人√
  • 项目开发人员修改了状态√
  • 项目开发人员修改了优先级√
  • 项目开发人员修改了标记√
  • 项目开发人员修改了里程碑√
  • 项目开发人员修改了关联分支(若该issue有对应的关联分支,则会查看该分支最新提交时间来判断该issue的活跃状态)
  • 项目开发人员修改了开始日期√
  • 项目开发人员修改了结束日期√

    测试关联Issue

    暂无法解决关联issue的问题

目前阶段

已完成基本功能

开发遇到困难

  • 不能找到webhook能发送的合适url,目前使用ngrok进行url对接
  • https的配置出现问题,因此使用http未能保证webhook传递信息的安全
  • 在github和gitee仓库中,issue的操作日志可以记录pr分支关联操作,该操作也可视作对该issue进行了处理,但在gitlink中未找到关联方法,因此对issue的操作中考虑不了pr分支关联处理
  • 对commons中authUtil和config中botConfig以及jobs中tasks的执行功能不明确
  • gitlink中API文档未提供登录,因此无法通过apiutil中的login_post获得开发人员的token,运行该bot需要将开发人员保持登陆状态,并修改config中的cookies

之后计划

  • 加入邮箱通知功能,通过邮箱发送通知开发人员
  • 加入接口,能智能化回答issue中的问题并提供解决方案

相关资料

关于

这是一个实验性质的项目,主要是构建了一个SoftBot智能机器人,该Bot主要监听项目创建的各个PR的状态,当一个PR长期未得到响应而处于不活跃状态时,Bot会及时进行自动评论提醒,以提醒项目核心团队关注该PR及时给予反馈,从而达到激发外围贡献者的开发积极性与热情的目的。

147.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

©Copyright 2023 CCF 开源发展委员会
Powered by Trustie& IntelliDE 京ICP备13000930号