IOS-INFO-001 P0 | 定义 ReadingMaterialContext 【审计: 不存在,需新建】 #67

Closed
opened 2026-06-07 11:55:21 +08:00 by wangdl · 1 comment
Owner

审查

ReadingMaterialContext 不存在。Rust 只知道 materialId,API 需要 readingTargetType+materialId。iOS 必须补充。

模型

struct ReadingMaterialContext: Codable, Equatable {
    let readingTargetType: ReadingTargetType
    let materialId: String
    let knowledgeBaseId: String?
    let title: String?
    let localFileURL: URL?
    let materialType: MaterialType?
    let previewMode: PreviewMode?
}
## 审查 ReadingMaterialContext 不存在。Rust 只知道 materialId,API 需要 readingTargetType+materialId。iOS 必须补充。 ## 模型 ```swift struct ReadingMaterialContext: Codable, Equatable { let readingTargetType: ReadingTargetType let materialId: String let knowledgeBaseId: String? let title: String? let localFileURL: URL? let materialType: MaterialType? let previewMode: PreviewMode? } ```
wangdl added this to the M-IOS-INFO:学习信息采集、上传、继续学习与基础分析闭环 milestone 2026-06-07 11:55:21 +08:00
wangdl changed title from IOS-INFO-001 P0 | 定义 ReadingMaterialContext to IOS-INFO-001 P0 | 定义 ReadingMaterialContext 【审计: 不存在,需新建】 2026-06-07 12:10:01 +08:00
Author
Owner

完成报告

交付

Core/Models/ReadingMaterialContext.swift:

enum ReadingTargetType: String, Codable, Equatable {
    case knowledgeSource = "knowledge_source"
    case temporaryFile = "temporary_file"
}

struct ReadingMaterialContext: Codable, Equatable {
    let readingTargetType: ReadingTargetType
    let materialId: String
    let knowledgeBaseId: String?
    let title: String?
    let materialType: MaterialType       // Rust detect_material_type
    let previewMode: PreviewMode         // Rust preview_mode()
    let fileSize: UInt64
}

用途: iOS 在打开阅读页时构造此 context,Rust 只知道 materialId,iOS 在上传到 API 时补充 readingTargetType + knowledgeBaseId 等字段。

## 完成报告 ### 交付 `Core/Models/ReadingMaterialContext.swift`: ```swift enum ReadingTargetType: String, Codable, Equatable { case knowledgeSource = "knowledge_source" case temporaryFile = "temporary_file" } struct ReadingMaterialContext: Codable, Equatable { let readingTargetType: ReadingTargetType let materialId: String let knowledgeBaseId: String? let title: String? let materialType: MaterialType // Rust detect_material_type let previewMode: PreviewMode // Rust preview_mode() let fileSize: UInt64 } ``` **用途:** iOS 在打开阅读页时构造此 context,Rust 只知道 materialId,iOS 在上传到 API 时补充 readingTargetType + knowledgeBaseId 等字段。
Sign in to join this conversation.
No description provided.