Skip to content

[r2cn] 实现 Mega 系统 Bot 身份模型 #1951

Description

@benjamin-747

[任务] 实现 Mega 系统 Bot 身份模型

[任务分值] 20 分

[背景描述]

随着 Mega 系统功能复杂化,需要支持自动化操作、持续集成、事件处理等功能。现有系统中缺乏对 Bot(自动化身份) 的原生支持,导致:

  1. 无法区分 Human 用户和 Bot
  • Bot 与普通用户操作混合,审计和日志追踪困难
  1. 权限管理不独立
  • Bot 操作无法限定权限范围
  • 无法单独审计或控制
  1. 集成自动化受限
  • 无法生成独立 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 绑定与权限管理

[代码标准]

  1. 所有 PR 提交必须签署 Signed-off-by 和 使用 GPG 签名,即提交代码时(使用 git commit 命令时)至少使用 -s -S 两个参数,参考 Contributing Guide
  2. 所有 PR 提交必须通过 GitHub Actions 自动化测试,提交 PR 后请关注 GitHub Actions 结果;
  3. 代码注释均需要使用英文;

[PR 提交地址] 提交到 mega 仓库的 main 分支 `` 目录;

[开发指导]

  1. 认领任务参考 r2cn 开源实习计划 - 任务认领与确认;

[导师及邮箱] 请申请此题目的同学使用邮件联系导师,或加入到 R2CN Discord 后在 #p-meta 频道和导师交流。

  1. Quanyi Ma genedna@gmail.com
  2. Tianxing Ye yetianxing2014@gmail.com

[备注]

  1. 认领实习任务的同学,必须完成测试任务和注册流程,请参考: r2cn 开源实习计划 - 测试任务r2cn 开源实习计划 - 学生注册与审核

Metadata

Metadata

Assignees

Type

Fields

No fields configured for Task.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions