Commit Graph

73 Commits

Author SHA1 Message Date
d0d25d9e17 fix: expand ai request log text fields 2026-07-10 18:46:41 +08:00
b3cb4a1ca9 fix: add chat session summary migration 2026-07-10 18:34:08 +08:00
5844741f24 fix: Vite HMR WebSocket 通过 nginx 代理,修复域名访问时的 ws 连接失败 2026-07-10 18:01:08 +08:00
d9a8f42522 docs: 完成登录页设计验收记录 2026-07-10 17:21:37 +08:00
dc4b1bfce9 fix: 恢复登录手机号和短信倒计时 2026-07-10 17:13:21 +08:00
fc8a593393 fix: 修复登录表单移动端横向溢出 2026-07-10 17:11:22 +08:00
2e274dea51 feat: 重构用户端手机号验证码登录页 2026-07-10 17:08:31 +08:00
808ba74fc5 feat: 支持按需触发短信图形验证 2026-07-10 17:02:50 +08:00
851c2a532a Revert "feat: 重构学员端登录页面——专业移动端H5登录体验"
This reverts commit b82a5a464f.
2026-07-10 14:35:53 +08:00
b82a5a464f feat: 重构学员端登录页面——专业移动端H5登录体验
LoginPanel.vue 完全重写:
- 品牌标题区:绿色圆角图标+主标题+副标题+装饰盾牌
- 表单卡片:白色圆角卡片承载手机号+短信验证码
- 图形验证码按需弹出:点击发送验证码时弹出模态弹窗
- 用户协议:自定义checkbox+协议弹窗(Tab切换)
- 倒计时持久化:localStorage按手机号存储,刷新不重置
- Toast提示:发送成功/失败/登录错误
- 辅助入口:收不到验证码/登录遇到问题弹窗
- 底部安全说明:盾牌图标+信任提示
- 输入过滤:只允许数字,16px字号防iOS缩放
- 响应式:最大420px居中,safe-area适配

styles.css:移除旧登录样式,保留全局基础
2026-07-10 14:34:11 +08:00
5ead280df0 fix: Vite dev server 配置 API 代理,解决 405 Method Not Allowed 2026-07-10 14:23:57 +08:00
83f67936c8 feat: 学员端短信验证码发送增加60秒倒计时 2026-07-10 13:51:44 +08:00
6d164a77fe refactor: 拆分后台系统配置定义 2026-07-10 12:16:01 +08:00
d7d9514348 feat: 增加结构化日志和服务就绪检查 2026-07-10 12:14:19 +08:00
076fcb9f02 refactor: 拆分后台登录页面职责 2026-07-10 11:55:48 +08:00
7f835ec699 test: 补齐上线关键链路自动验证 2026-07-10 11:54:49 +08:00
fb39c9c543 feat: 增加生产环境容器编排 2026-07-10 11:50:45 +08:00
9fb3dad5bd feat: 加密并隐藏系统敏感配置 2026-07-10 11:49:21 +08:00
aedecb3aab feat: 增加登录限流和跨进程退出机制 2026-07-10 11:47:28 +08:00
5aca872129 fix: 修复聊天排队和每日额度重置 2026-07-10 11:45:37 +08:00
ef24868105 fix: 移除后台登录默认凭据 2026-07-09 16:45:09 +08:00
53febbbf91 docs: 记录后台登录上线安全要求 2026-07-09 16:38:35 +08:00
7587da6d18 Add single domain gateway routing 2026-07-09 16:03:29 +08:00
e661e53d0b ui: 学员端登录页删除logo 2026-07-09 15:16:48 +08:00
769bd2b7b4 Replace dashboard date range picker 2026-07-09 15:11:24 +08:00
34e740bbda Replace record audit date picker controls 2026-07-09 15:06:26 +08:00
0ea75dea1d feat: 看板优化——中文标题+Token消耗+时间段筛选+品牌名统一
- 学员端:LoginPanel/App.vue 描述文案优化,去掉生硬表述
- 后台品牌统一:index.html/App.vue 标题改为'大本营千问千答'
- 看板tab:Dashboard -> 数据看板
- 看板新增:输入Token、输出Token、总Token 统计
- 看板支持按时间段筛选:后端API增加start/end参数,前端加日期选择器
- stats-grid布局从5列调整为4列,响应式改为2列
2026-07-09 14:58:45 +08:00
facb3a6a56 Rename product to Dabenying QA assistant 2026-07-09 12:28:55 +08:00
cde7da572b Store login verification codes in Redis 2026-07-09 12:16:21 +08:00
c56a4b49e1 Show dialog for user SMS login errors 2026-07-09 12:12:15 +08:00
34d6dd01c7 Add graphic captcha before user SMS login 2026-07-09 12:09:10 +08:00
c86b517063 Add Aliyun SMS settings and refresh admin login 2026-07-09 11:02:26 +08:00
e1a130177c Add AI request audit detail drawer 2026-07-09 10:44:52 +08:00
f39e51a4d4 Show retrieved knowledge chunks in audit logs 2026-07-09 10:29:58 +08:00
1c73e8dee6 ui: 知识库导入区域增加间距样式 2026-07-09 10:19:21 +08:00
67048a14e8 feat: 简化知识库导入——只输入NodeToken,自动获取标题和SpaceID
- admin_knowledge.py: /knowledge/import 改为单条导入,自动获取 title+space_id
- feishu_service.py: 新增 get_node_info() 公开方法
- App.vue: 简化 UI,只保留 NodeToken 输入框和导入按钮
- api.ts: 更新类型定义
2026-07-09 10:13:09 +08:00
76da6dd65a feat: 递归导入只需输入NodeToken,自动获取SpaceID
- feishu_service.py: import_nodes_from_parent 去掉 space_id 参数,
  通过 get_node_info 自动获取 space_id
- admin_knowledge.py: import API 去掉 spaceId 参数
- App.vue: 前端去掉 SpaceID 输入框,只需输入 NodeToken
2026-07-08 18:54:09 +08:00
3598e34819 feat: 知识库递归导入(从指定父节点,不需要空间权限)
- feishu_service.py: import_space_nodes 改为 import_nodes_from_parent
  从指定父节点递归获取子节点,不需要空间级别权限
- admin_knowledge.py: import API 增加 parent_node_token 参数
- api.ts/App.vue: 前端增加父节点 NodeToken 输入框
2026-07-08 18:50:46 +08:00
f4196612d4 ui: 刷新飞书缓存按钮移到知识库管理页面 2026-07-08 18:01:24 +08:00
5dfff52b04 feat: 后台一键刷新飞书缓存
- feishu_service.py: FeishuKnowledgeService 新增 clear_cache() 方法
- admin_settings.py: 新增 POST /admin/feishu/cache/clear API
- api.ts: 前端封装 clearFeishuCache API
- App.vue: Agent管理页面新增'刷新飞书缓存'按钮

管理员更新飞书文档后,点击按钮即可清空服务端内存缓存,
客户端下次提问时会重新读取最新内容。
2026-07-08 17:57:26 +08:00
61db0aa9b8 feat: 对话摘要+段落按需读取+think标签解析修复
- chat.py: ChatSession 新增 summary/summary_up_to_message_id 字段
- rag_service.py: Prompt 支持历史摘要+最近5轮原文拼接
- model_service.py: 新增 summarize() 方法,复用已启用模型生成摘要
- chat_service.py: 集成对话历史传递,8轮后触发摘要生成
- feishu_service.py: 段落级按需读取,按标题匹配+关键词打分+top5文档

摘要策略:
- 保留最近5轮原文保证追问连续性
- 更早历史由模型压缩成摘要(<=300字)
- 摘要失败不阻断主流程

飞书读取优化:
- 每个知识库最多读5个相关文档
- 每文档提取top10相关段落
- 按原文顺序拼接,不截断

Fix: _extract_openai_answer 重命名为 _extract_gemini_answer
避免同名函数覆盖导致MiniMax模型被错误解析为Gemini响应
2026-07-08 17:49:52 +08:00
efd03ff9df Add deployment tuning and chat load test 2026-07-08 17:45:18 +08:00
c68af6f806 Cache Feishu retrieval data in Redis 2026-07-08 17:39:04 +08:00
23d5f42972 Add Redis-backed chat queue 2026-07-08 17:36:20 +08:00
812ae80536 Add async Feishu retrieval for chat RAG 2026-07-08 17:26:10 +08:00
72bd2e1e02 Use async model streaming for chat 2026-07-08 17:20:29 +08:00
465a481e7a Stream chat completions from model providers 2026-07-08 17:13:53 +08:00
6f3bbd3803 Implement chat queue fallback 2026-07-08 16:57:40 +08:00
925ef0238d Support Feishu file node retrieval 2026-07-08 12:29:21 +08:00
13185ab42b Align user chat with agent model flow 2026-07-08 12:18:38 +08:00