# 知识库开放范围变更记录

日期：2026-07-07

## 背景

此前 V2 需求沿用了原始资料包中的“用户-知识库授权”模型：后台需要把知识库精确分配到具体用户，问答检索时只允许使用当前用户已授权且未过期的知识库。

现在底层需求发生调整：知识库权限不再精确到人。只要某个知识库处于开放状态，默认所有用户都能访问；未开放或禁用的知识库不参与用户端问答检索。

## 新口径

1. 知识库是否可见由知识库自身状态控制。
2. 已开放知识库默认对所有用户可见。
3. 用户端问答检索范围为“全部已开放知识库”。
4. 用户管理不再维护单个用户的知识库授权。
5. `sys_user_kb` 暂时不再作为一期主链路依赖；如果未来需要重新做精细权限，可再启用或迁移。

## 对产品功能的影响

### 用户端

- 用户登录后默认可以使用所有已开放知识库。
- 不再展示或依赖“我的已授权知识库”。
- 问答时只过滤禁用或未开放知识库。

### 管理后台

- 知识库管理仍保留新增、编辑、删除、启用/禁用能力。
- 知识库的启用状态就是当前一期的开放控制开关。
- 用户管理移除“知识库权限分配”入口。

### 后端 RAG 链路

- 检索范围从“当前用户授权知识库”改为“全部启用知识库”。
- AI 请求日志仍记录本次实际检索使用的知识库 ID，方便审计。
- 用户状态、有效期、每日额度等用户级限制仍然保留。

## 对既有文档的覆盖说明

原始需求抽取文档 `extracted/` 中仍会出现“用户知识库授权”“批量授权”“仅访问授权知识库”等旧口径。这些文件是原始资料包抽取件，不直接修改。

从 2026-07-07 起，开发和验收以本记录以及更新后的 `development_records/` 文档为准。

## 后续建议

1. 如果后续出现部门、角色或付费套餐差异，再重新设计“用户组/角色/租户级知识库权限”，不要直接回到逐个用户授权。
2. 后台知识库管理可增加“开放/关闭”的更明确文案，避免运营人员把状态理解成单纯数据启停。
3. 测试用例需要同步调整：重点验证启用知识库全员可见、禁用知识库不可检索。
