SpecialX
a48e7d0e27
feat(ai): add chart renderer, floating ball hook, and provider updates
...
- Add ai-chart-renderer for rendering charts in AI responses
- Add use-floating-ball hook for draggable AI assistant widget
- Update ai-assistant-widget, ai-chat-panel, ai-markdown-renderer, ai-provider-selector
- Update use-ai-chat-stream hook and prompt-templates service
2026-06-24 12:02:29 +08:00
SpecialX
696346dc08
fix(ai): V3 长期问题修复+规则合规+竞品对标
...
## P1 安全加固
- 原子化每日限额(tryConsumeDailyQuota)解决 TOCTOU 竞态
- 流式端点补齐 Zod 校验 + rate limit + 服务端强制 systemPrompt
- 配额回退机制(refundDailyQuota):过滤/失败不扣配额
- PII 最小化:移除 AI prompt 中的学生姓名
## P1 数据一致性
- 修复 capability 埋点缺失 child_summary/study_path 类型
- 创建 data-access.ts:真实统计聚合替代硬编码零
- 修复 generateChildSummary/recommendStudyPath 的 capability 标记
## P2 可靠性
- AI 调用重试机制(withRetry 指数退避,429/5xx,2 次重试)
- 30s 超时配置
- 流式 controller 安全 enqueue(防已关闭抛错)
- localStorage 防抖持久化(500ms,流式过程中跳过)
## P2 TypeScript/规则合规
- 移除 as 断言(VariantType 类型守卫、Permission 类型、StreamErrorKey)
- 补齐返回类型标注(POST/getStatusFromError/DashboardLayout)
- 拆分 use-ai-chat-stream hook(190→107 行,函数体≤80 行)
- 抽取 stream-utils.ts(SSE 解析/错误映射/消息工具)
- Tailwind 任意值添加注释说明(max-w-[80%] 聊天气泡)
## P3 竞品对标
- 苏格拉底式辅导强化(对标 Khanmigo):
- SOCRATIC_TUTOR_SYSTEM_PROMPT 3 级提示升级
- 强化 STUDENT_BLOCKED_PATTERNS 正则(中英文答案拦截)
- validateSocraticOutput 服务端校验(问号结尾+连续陈述句限制)
- socratic_warning SSE 事件类型
- 知识图谱集成(对标 Squirrel AI):
- StudyPathInput 新增 knowledgeGraph/textbookId 字段
- recommendStudyPathAction 自动从 textbooks 模块获取图谱+掌握度
- STUDY_PATH_SYSTEM_PROMPT 增加前置依赖链规则
- WEAKNESS_ANALYSIS_SYSTEM_PROMPT 增加 rootCause 字段
## 架构文档同步
- 004 更新 AI 模块章节(V3 标记/新导出/依赖关系/安全机制/文件清单)
- 005 更新 modules.ai 节点(dependsOn/exports/dataAccess/streamUtils/dependencyMatrix)
2026-06-23 09:39:18 +08:00
SpecialX
4da9194a5e
feat(ai): V2 深度增强 — SSE 流式/全局助手/内容安全/多角色覆盖
...
对标 Khanmigo/Duolingo Max/Squirrel AI/Century Tech 实现:
- SSE 流式响应:createAiChatCompletionStream AsyncGenerator + /api/ai/chat/stream SSE 端点 + useAiChatStream hook(AbortController 停止生成 + localStorage 持久化)
- Markdown 渲染:AiMarkdownRenderer(react-markdown + remark-gfm + 代码块/表格/列表 + hover 复制按钮)
- 全局 AI 助手:AiAssistantWidget 浮动按钮 + Sheet 侧抽屉 + usePathname 路由推断上下文(7 类场景系统提示)+ dashboard layout 全局注入 AiClientProvider
- 内容安全:content-safety.ts 多层过滤(输入/输出安全过滤 + 每日限制 student 50/teacher 200/parent 30/admin 500 + 学生苏格拉底模式),COPPA/FERPA K12 合规
- 多角色 AI 覆盖:家长端 AiChildSummary(学情摘要)+ 管理员端 AiUsageDashboard(使用监控)+ 学生端 AiStudyPath(个性化学习路径)
- i18n 修复:8 处错误键引用 + zh-CN/en ai.json 全面扩展
- 架构文档 004/005 同步更新
2026-06-23 01:34:37 +08:00
SpecialX
21c5eba96c
feat(ai): 新增 AI 模块并集成至备课/错题集/试卷/改题四大业务场景
...
- 新增 src/modules/ai 独立模块,遵循三层架构(actions → services → shared/lib/ai)
- 通过 AiClientProvider + useAiClient 实现 React Context 依赖注入,业务组件零直接 import
- 6 个 Server Actions 均调用 requirePermission() 权限校验,返回 ActionState<T>
- withAiTracking 统一埋点,覆盖 chat/similar_question/grading_assist/lesson_content/question_variant/weakness_analysis
- 集成场景:作业批改 AiGradingAssist、错题集 AiErrorBookAnalysis、备课 AiLessonContentGenerator、试卷 AiQuestionVariantGenerator
- 全量 i18n(en/zh-CN ai.json),Error Boundary + Skeleton 边界处理
- 同步架构图 004/005,新增审计报告 ai-module-audit-report.md
2026-06-23 00:52:39 +08:00