startup-plan/技术设计/capi-error-codes-and-status-enums.md
WangDL 0eb5f53873 docs: iOS integration audit report + 5 CAPI docs + nginx fix
- iOS integration readiness audit (blocker list, module map, deployment check)
- CAPI contract for iOS (15 modules, 80+ endpoints)
- CAPI error codes and status enums
- iOS auth flow, file upload import flow, learning review flow
- Web product page nginx fix (reenable longde.cloud)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-25 16:55:22 +08:00

3.8 KiB
Raw Permalink Blame History

CAPI 错误码与状态枚举

版本0.1.0 | 更新2026-05-24

HTTP 错误码

HTTP message 触发场景
200 成功
201 创建成功
400 请求参数校验失败DTO validation
401 "请先登录" 未携带 Token
401 "登录已过期,请重新登录" Token 过期或无效
401 "账号已被禁用" 用户 status ≠ active
401 "账号不存在或已注销" 用户不存在或 deletedAt 不为空
401 "无效的访问令牌" 管理员 Token 访问 CAPI
401 "Apple 登录未配置,请联系管理员" Apple 登录未配置
401 "刷新令牌无效或已过期" Refresh Token 无效
401 "账号已注销" 刷新时发现用户已注销
403 "dev-login is disabled in production" 生产环境尝试 dev-login
404 "资源不存在" 资源未找到
500 服务器内部错误

模型状态枚举

User

字段 可选值
status active, disabled
role USER, ADMIN

KnowledgeBase

字段 可选值
status active, archived, deleted

KnowledgeItem

字段 可选值
status active, archived
itemType note, flashcard, concept

KnowledgeSource

字段 可选值
parseStatus pending, parsing, completed, failed
indexStatus pending, indexing, completed, failed
learningStatus pending, learning, completed, skipped
type file, link, manual, paste

DocumentImport

字段 可选值
status QUEUED, CLAIMED, DOWNLOADING, PARSING, OCR_PROCESSING, VISION_PROCESSING, CLEANING, CHUNKING, EMBEDDING, INDEXING, GENERATING_CANDIDATES, COMPLETED, FAILED, FAILED_FINAL

ImportCandidate

字段 可选值
status PENDING, ACCEPTED, REJECTED

LearningSession

字段 可选值
status active, completed, cancelled
mode active_recall, feynman, review, reading

AiAnalysisJob

字段 可选值
status pending, processing, completed, failed
jobType active_recall_analysis, feynman_evaluation

ReviewCard

字段 可选值
status active, completed, archived
scheduleState new, learning, review, relearning
difficulty 数值0.01.0SM-2 算法)

ReviewPlan

字段 可选值
status active, completed, skipped

FocusItem

字段 可选值
status open, completed
priority high, normal, low

Feedback

字段 可选值
type bug, feature, general
status pending, reviewed, resolved, closed

Notification

字段 可选值
scope user, admin

iOS 处理建议

状态优先级

  1. UI 关心的状态子集:
模块 展示用状态 说明
DocumentImport QUEUEDPROCESSING(any intermediate) → COMPLETED / FAILED 中间态统一显示为"处理中"
ReviewCard new / learning / review / relearning scheduleState 比 status 更有用
FocusItem open / completed 简单二态
LearningSession active / completed
  1. 轮询策略:

    • DocumentImport 状态:初始 2s后续 5s
    • AI 分析作业2s 间隔
    • 最多轮询 5 分钟,超时提示用户
  2. 错误本地化:

    • 后端返回中文错误消息
    • 建议 iOS 端做本地化映射(中 → 英/其他语言)