ForcePilot/REFACTOR.md
Wenjie Zhang c342f3e1ee feat: 收紧用户管理部门隔离并重构知识库共享权限
- 普通管理员创建用户时固定归属本部门,用户列表/访问选项/详情/更新/删除均限制在本部门
- share_config 改为三档:global(全局共享)、department(部门共享)、user(指定人可访问)
- 部门共享必须包含当前用户部门,指定人可访问必须包含当前用户
- 前端 ShareConfigForm 重构为三档卡片选择+下拉菜单选人/选部门
- 补充部门隔离和共享权限过滤的集成测试
2026-05-26 17:39:13 +08:00

2.3 KiB
Raw Blame History

兼容性报告

无法兼容历史的数据库、知识库、配置项,只能重新创建项目

功能性报告

  1. 将 LightRAG 从调用 package 修改为手动实现,不依赖原本仓库,更好管理。
  2. 移除 legacy 参数,简化代码逻辑,减少维护成本。
  3. 权限结构重构

待办事项

  • 移除所有对于 v1 的模型的代码的支持、移除所有对于 legacy 参数的支持
  • 移除 lightrag
  • 新增图谱构建,支持自定义 Schema、支持自定义并发数知识库与向量检索解耦
  • 知识图谱抽取要求支持并发处理

权限部分

  • Agent 的 user_id 使用的有歧义,从数据库表到代码中都修改为统一使用 yuxi_id 来代替
  • 权限新增一个 guest 的预设字段,暂无任何权限
  • department 的 id 也不能使用那个索引的 id 来使用了,应该是一个独立的 dept_id需要确认
  • allow user config skill
  • Config spacy model 的 load
  • 在工作区的文件编辑的时候,保存和取消的按钮应该是悬浮在编辑框的右上角,而不是在 header 上面
  • default enable all build in tools / kbs / skills / mcps / subagents
  • 链接 Notion 和 feishu 目前来看,都是支持的
  • 知识库的权限调整修改为三个等级全局共享、部门共享选择多个部门默认是自己部门且必须包含自己部门、指定人可访问选择多个用户默认是仅自己可以添加其他人。UI 上也需要调整三个卡片不再是等宽而是选中的会宽一点并展示描述以及选择按钮未选中的则是默认宽度仅显示标题。对于选中的卡片除了展示描述、按钮之外还包括“X 个部门可访问”、“X 个用户可访问”的信息展示。全局的就看是所有用户可访问。所以等级的字段配置也要重新设计,不需要考虑兼容,所有知识库都会重新构建。
  • databaseinfo 的重构,在左侧展示那个 tab 标签吧将文件管理filetable以及右侧的那些图谱、检索、检索配置、评估之类的都列为不同的 tab进入之后默认激活的是 filetable。这样页面布局就好的多。作恶侧边栏除了这些 tab 之外,顶部是和 Skill Detail 那里的 header 一样,