M-CHAT-A5 P2 | MaterialReaderView parentKnowledgeBaseId 为 nil #59

Closed
opened 2026-06-06 17:52:50 +08:00 by wangdl · 2 comments
Owner

发现

MaterialReaderView 工具栏 AI 入口传 material scope 但 parentKnowledgeBaseId = nil:

ChatEntryContext(scopeType: .material, scopeId: vm.materialId, 
                 scopeName: title, parentKnowledgeBaseId: nil, ...)

后端 loadContextByScope 需要 kbId 来限定 material 检索范围。没有 parentKnowledgeBaseId,material scope 检索退化为空或全库检索。

修复方案

MaterialReaderView 需要传入 knowledgeBaseId:

  1. Route.materialReader 增加 knowledgeBaseId 参数
  2. 或 ViewModel 从 API 查询 source → knowledgeBaseId

涉及文件

文件 变更
Route.swift materialReader 加 knowledgeBaseId
MaterialReaderView.swift 传入 parentKnowledgeBaseId
## 发现 MaterialReaderView 工具栏 AI 入口传 material scope 但 parentKnowledgeBaseId = nil: ```swift ChatEntryContext(scopeType: .material, scopeId: vm.materialId, scopeName: title, parentKnowledgeBaseId: nil, ...) ``` 后端 loadContextByScope 需要 kbId 来限定 material 检索范围。没有 parentKnowledgeBaseId,material scope 检索退化为空或全库检索。 ### 修复方案 MaterialReaderView 需要传入 knowledgeBaseId: 1. Route.materialReader 增加 knowledgeBaseId 参数 2. 或 ViewModel 从 API 查询 source → knowledgeBaseId ### 涉及文件 | 文件 | 变更 | |------|------| | Route.swift | materialReader 加 knowledgeBaseId | | MaterialReaderView.swift | 传入 parentKnowledgeBaseId |
wangdl added this to the M-CHAT:AI 会话 Scope 系统重构(iOS 侧) milestone 2026-06-06 17:52:50 +08:00
Author
Owner

处理

MaterialReaderView 没有 knowledgeBaseId,因为 Route.materialReader 未包含此参数。

需要改动 Route + 所有调用点,后续统一处理。

## 处理 MaterialReaderView 没有 knowledgeBaseId,因为 Route.materialReader 未包含此参数。 需要改动 Route + 所有调用点,后续统一处理。
Author
Owner

修复

Route.materialReader 新增 knowledgeBaseId + title 参数。
MaterialReaderView 接收并传入 ChatEntryContext。

涉及: Route.swift + MaterialReaderView.swift

## 修复 Route.materialReader 新增 knowledgeBaseId + title 参数。 MaterialReaderView 接收并传入 ChatEntryContext。 涉及: Route.swift + MaterialReaderView.swift
Sign in to join this conversation.
No description provided.