[任务] 实现 Mega 系统 Bot 身份模型
[任务分值] 20 分
[背景描述]
随着 Mega 系统功能复杂化,需要支持自动化操作、持续集成、事件处理等功能。现有系统中缺乏对 Bot(自动化身份) 的原生支持,导致:
- 无法区分 Human 用户和 Bot
- 权限管理不独立
- 集成自动化受限
- 无法生成独立 token
- 无法在组织或仓库层面进行管理
因此,需要设计并实现 Bot 身份模型,作为后续 Bot 安装、权限管理、Token 机制的基础
[需求描述]
一、目标
1. 支持系统内 Bot 的注册与识别
2. 与 Human 用户区分操作身份
3. 为后续 Bot 安装、权限管理、Token 提供数据基础
二、功能需求
1. Bot 实体设计
• 数据表或对象模型定义 Bot
• 包含字段:
• Bot 名称 / 描述
• 所属组织或团队
• 创建者(Human 用户)
• 状态(启用 / 禁用)
• 权限范围占位字段
2. Human / Bot 区分
• 系统操作记录中标记为 Bot 或 Human
• 前端 / API 可识别身份
3. 审计能力基础
• Bot 创建、修改、删除操作可追溯
• 日志可区分 Human / Bot
4. 扩展能力预留
• 支持安装机制(未来扩展到仓库 / 组织)
• 支持 Token 绑定与权限管理
[代码标准]
- 所有 PR 提交必须签署
Signed-off-by 和 使用 GPG 签名,即提交代码时(使用 git commit 命令时)至少使用 -s -S 两个参数,参考 Contributing Guide;
- 所有 PR 提交必须通过
GitHub Actions 自动化测试,提交 PR 后请关注 GitHub Actions 结果;
- 代码注释均需要使用英文;
[PR 提交地址] 提交到 mega 仓库的 main 分支 `` 目录;
[开发指导]
- 认领任务参考 r2cn 开源实习计划 - 任务认领与确认;
[导师及邮箱] 请申请此题目的同学使用邮件联系导师,或加入到 R2CN Discord 后在 #p-meta 频道和导师交流。
- Quanyi Ma genedna@gmail.com
- Tianxing Ye yetianxing2014@gmail.com
[备注]
- 认领实习任务的同学,必须完成测试任务和注册流程,请参考: r2cn 开源实习计划 - 测试任务 和 r2cn 开源实习计划 - 学生注册与审核
[任务] 实现 Mega 系统 Bot 身份模型
[任务分值] 20 分
[背景描述]
随着 Mega 系统功能复杂化,需要支持自动化操作、持续集成、事件处理等功能。现有系统中缺乏对 Bot(自动化身份) 的原生支持,导致:
因此,需要设计并实现 Bot 身份模型,作为后续 Bot 安装、权限管理、Token 机制的基础
[需求描述]
一、目标
1. 支持系统内 Bot 的注册与识别
2. 与 Human 用户区分操作身份
3. 为后续 Bot 安装、权限管理、Token 提供数据基础
二、功能需求
1. Bot 实体设计
• 数据表或对象模型定义 Bot
• 包含字段:
• Bot 名称 / 描述
• 所属组织或团队
• 创建者(Human 用户)
• 状态(启用 / 禁用)
• 权限范围占位字段
2. Human / Bot 区分
• 系统操作记录中标记为 Bot 或 Human
• 前端 / API 可识别身份
3. 审计能力基础
• Bot 创建、修改、删除操作可追溯
• 日志可区分 Human / Bot
4. 扩展能力预留
• 支持安装机制(未来扩展到仓库 / 组织)
• 支持 Token 绑定与权限管理
[代码标准]
Signed-off-by和 使用GPG签名,即提交代码时(使用git commit命令时)至少使用-s -S两个参数,参考 Contributing Guide;GitHub Actions自动化测试,提交 PR 后请关注GitHub Actions结果;[PR 提交地址] 提交到 mega 仓库的
main分支 `` 目录;[开发指导]
[导师及邮箱] 请申请此题目的同学使用邮件联系导师,或加入到 R2CN Discord 后在
#p-meta频道和导师交流。[备注]