|
|
910e71b6f0
|
docs: 规范文档对跨域处理的介绍
|
2026-06-21 13:10:48 +08:00 |
|
|
|
7ee6918015
|
Merge pull request 'feat: 优化情景切换功能' (#172) from feat/tokentime into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/172
|
2026-06-20 23:26:28 +08:00 |
|
|
|
2fb23852ef
|
feat: 优化情景切换功能
|
2026-06-20 23:24:32 +08:00 |
|
|
|
ed95ce56a8
|
fix: 关闭摄像头后文本输入不再发送图像数据
修复了用户关闭摄像头后,使用文本输入时 AI 仍会分析黑色画面的问题。
变更:
- sendTextMessage: 只在摄像头开启时捕获画面
- 待发消息队列: 根据摄像头状态决定是否携带画面
效果:
- 摄像头关闭时纯文本对话,不提及画面
- 节省 token 消耗和网络带宽
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-20 22:21:03 +08:00 |
|
|
|
159bf278e6
|
Merge pull request 'docs: 添加令牌桶限流模块设计文档' (#158) from feature/ratelimite into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/158
|
2026-06-20 20:36:21 +08:00 |
|
|
|
e56600e408
|
docs:更新文档
|
2026-06-20 20:17:16 +08:00 |
|
|
|
ab07e01adf
|
feat: 优化对话历史功能
|
2026-06-20 19:57:36 +08:00 |
|
|
|
85d47c1fc4
|
docs: 添加令牌桶限流模块设计文档
- 新建 docs/13-令牌桶限流设计.md,覆盖算法原理、内存/Redis 双实现、配置设计、接入点、测试用例等
- 更新 docs/01-架构设计.md Rate Limiter 模块行链接至新文档
- 更新 docs/README.md 文档索引和推荐阅读顺序
|
2026-06-20 17:08:23 +08:00 |
|
|
|
4ff8cec312
|
docs: 添加鉴权体系设计文档,更新认证相关文档
- 新增 12-鉴权体系设计.md,详细描述 JWT 双 token 轮转认证机制
- 更新架构设计文档,补充认证设计章节的安全机制和配置说明
- 更新接口文档,补充 Refresh Token Rotation 安全机制和前端集成示例
- 更新文档索引,添加新文档的推荐阅读顺序
|
2026-06-20 16:51:03 +08:00 |
|
|
|
488b1e62ba
|
docs: 更新前端三态会话模型,新增结束视频保留对话设计文档
|
2026-06-20 14:47:25 +08:00 |
|
|
|
ae9a27c300
|
feat: 结束视频后保留对话,支持继续文字聊天
- useVisionSession 新增 stopVideo 回调(停媒体流,保持连接和消息)
- App.tsx 控制区从二态改为三态(initial/video/textOnly)
- 文字对话态显示「重新开始视频」和「结束会话」按钮
- 新增 CSS 样式(video-ended-hint、btn--outline)
- 新增 i18n key(stopVideo/endSession/resumeVideo/video.ended)
- 新增设计方案文档
|
2026-06-20 13:48:26 +08:00 |
|
|
|
3dc2015a91
|
docs: 更新技术文档,同步 Eino 重构和默认 provider 变更
- 架构设计:更新为 Eino Graph 声明式编排,增加三级存储架构说明
- 接口文档:AI 编排器章节重写为 Eino Graph,更新 LLM 服务接口
- 技术选型:新增 Eino 框架选型章节,修正 STT/LLM/TTS 默认方案
- 语音交互:Pipeline 描述改为 Eino Graph
- 成本控制:模型引用修正为 qwen3-vl-plus
- 技术名词解释:新增 Eino 框架相关术语
- README:增加 10/11/12 Eino 文档索引
- 10-Eino重构方案:状态更新为已实施
- CLAUDE.md:同步所有变更
|
2026-06-20 13:24:53 +08:00 |
|
|
|
9576884619
|
docs: 新增 Eino 框架技术文档和重构实施记录
- docs/11-Eino框架技术文档.md: 框架简介、技术选型对比、核心概念(Lambda/Graph/ChatModel/StreamReader/Callback/State)、CamTalk Graph 设计、目录结构、注意事项
- docs/12-Eino重构实施记录.md: 重构背景、架构变更、四阶段实施详情、代码统计、遗留事项
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-06-19 22:09:07 +08:00 |
|
|
|
e6481e0faa
|
docs: 添加 Eino 重构代码计划文档
|
2026-06-19 17:45:41 +08:00 |
|
|
|
a04275cc76
|
docs: 按功能模块重构文档结构
- 新建 01-架构设计.md:合并项目概述+系统架构+持久化设计,含 Mermaid 架构图、模块图、时序图、ER 图、部署图
- 新建 02-接口文档.md:合并接口文档+持久化 API+用户模块 API,统一格式去重
- 重编号 03~09,去掉状态标注,规划中功能标记为待实现
- 删除 PLAN_BACKEND.md、PLAN_USER_MODULE.md 及冗余文档
|
2026-06-19 15:31:52 +08:00 |
|
|
|
dca37f3e48
|
docs: 同步文档与代码实现状态
- 02-系统架构: Redis/PostgreSQL 标注已实现,模块表新增 Auth/Store/Migrations,更新表设计和前端组件
- 03-接口文档: config 新增 scenario 字段,Manager 接口补全 UpdateTitle/ListByUser,配置结构体同步,扩展接口替换为实际 Repository
- 04-技术选型: 持久化层标注已实现
- 06-语音交互: TTS Voice 更正为 mimo_default
- 11-持久化与用户系统设计: 所有 Phase 标记完成
- PLAN_BACKEND/PLAN_USER_MODULE: 标记完成状态
- README: 新增实现状态总览,补充文档索引
|
2026-06-19 14:58:43 +08:00 |
|
|
|
16302af7d2
|
docs: 添加 Eino 框架参考文档
|
2026-06-19 14:35:06 +08:00 |
|
|
|
5d8cacf16d
|
docs: 更新 README 文档
Deploy / deploy (push) Waiting to run
|
2026-06-14 23:59:00 +08:00 |
|
|
|
b57adf153b
|
docs: 补充用户模块 REST API 接口契约
- PLAN_USER_MODULE.md 新增「前端 API 接口参考」章节
- 03-接口文档.md 同步认证接口、对话接口、WebSocket 认证变更
- 新增错误码 USERNAME_TAKEN / INVALID_CREDENTIALS / INVALID_TOKEN / INVALID_INPUT
- 数据模型补充 User / ConversationSummary / StoredMessage 及对应 TypeScript 类型
- 配置结构体补充 AuthConfig(JWTSecret / AccessTTL / RefreshTTL)
|
2026-06-14 18:05:50 +08:00 |
|
|
|
4b30e67c2e
|
feat: 扩展 Config 结构体,新增 AuthConfig 配置
- 新增 AuthConfig 结构体(JWTSecret, AccessTTL, RefreshTTL)
- 在 Config 中添加 Auth 字段
- 设置默认值:access_ttl=15分钟,refresh_ttl=10080分钟(7天)
- JWTSecret 必须通过环境变量 CAMTALK_AUTH_JWT_SECRET 设置
|
2026-06-14 16:40:06 +08:00 |
|
|
|
da5c727d8c
|
fix: 修复语音与文字不同步的问题,改为句子级流式播放
之前前端 TTSPlayer 攒齐所有音频片段后才播放,导致文字全部显示后才开始语音。
改为后端每句 TTS 发送 is_last: true,前端收到每句即加入播放队列,第一句到达即开始播放。
- 后端 Chunk 结构体新增 Final 字段,区分句子结束和整轮结束
- 前端 TTSPlayer 重写为队列式播放,onended 回调自动衔接下一句
- 同步更新接口文档和测试用例
|
2026-06-14 13:54:49 +08:00 |
|
|
|
dfccc824be
|
Merge pull request '修复对话麦克风问题' (#64) from frontend-10 into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/64
|
2026-06-14 13:08:46 +08:00 |
|
|
|
d8630a8f26
|
refactor: 前端 WebSocket 地址改为动态推导,添加 Vite 开发代理
- websocket.ts: 移除硬编码 localhost:8080,基于 window.location 动态构建 WS URL
- vite.config.ts: 添加 /ws 和 /api 的 server.proxy 配置
- 同步更新 02-系统架构.md 和 03-接口文档.md 中的开发环境说明
|
2026-06-14 13:00:54 +08:00 |
|
|
|
51ed6aa563
|
feat: 添加文字输入对话功能
- 后端 WsQuery 添加 text 字段,支持文本输入模式
- Pipeline 支持文本查询时跳过 STT 直接使用输入文本
- 前端 ChatPanel 添加文字输入框,连接状态下可用
- useVisionSession 添加 sendTextMessage 方法
- 更新接口文档,添加文本输入模式说明
|
2026-06-14 12:52:39 +08:00 |
|
|
|
ca09a1fb72
|
chore: 清理配置文件并移动功能创意文档
- .gitignore 添加 .env,防止密钥泄露
- 删除误提交的 backend/.env
- TTS 模型名修正为 mimo-v2.5-tts
- 功能创意.md 移至 docs/10-功能创意.md
|
2026-06-14 08:53:12 +08:00 |
|
|
|
6e0c67e1cb
|
docs: 文档与代码一致性检查与修复
- 修复心跳 Bug:应用层 ping 不更新 lastPong,60 秒后连接会被错误断开
- 03-接口文档:audio/mpeg→audio/mp3、STTConfig/TTSConfig 补充 Model 字段、
APP_ENV 环境变量名修正、配置搜索路径补充、.env 加载说明、Vite proxy 说明修正
- 02-系统架构:补充 ConfigPanel/Toast 组件、Model Router/Rate Limiter 标注规划中、
补充 Gin 框架、MVP 存储改为 Memory、AI 服务 provider 更新、Orchestrator 伪代码对齐
- 04-技术选型:新增 AI 服务栈选型章节(STT/LLM/TTS)、PostgreSQL 标注规划中
- 06-语音交互:VAD 参数名修正、STT 改为一次性识别描述、音频编码格式补充
- 07-视觉理解:关键帧检测代码改为 TypeScript、分辨率修正、阈值逻辑统一
- 08-成本控制:变量名修正、未实现功能标注规划中、对话历史裁剪策略补充
- CLAUDE.md:同步更新技术栈、模块结构、存储策略描述
|
2026-06-14 08:52:36 +08:00 |
|
|
|
9ce9d8c9f6
|
docs: Phase 8.2 - 同步接口文档与代码实现
修正文档与代码的偏差:
- SessionManager → Manager,补充 GetActiveRequestID/ActiveCount 方法
- Orchestrator 更新为接口 + Sender 抽象模式
- POST /api/sessions 移除未实现的 user_id 字段
- STT 移除未实现的 RecognizeStream 方法
- LLM/TTS 接口名更新为 Service/Request/Chunk/Options
- Message 模型移除 ImageURL/TokensUsed(代码未使用)
- 内存实现 MemoryManager 名称对齐
- WebSocket Handler 集成伪代码更新 ProcessQuery 签名
|
2026-06-13 16:40:29 +08:00 |
|
|
|
991ae4834c
|
docs: Phase 1 移除 CORS 中间件任务
- CORS 由 Nginx 反向代理统一处理,不在后端实现
|
2026-06-13 15:18:11 +08:00 |
|
|
|
2e165a459c
|
docs: 添加后端分阶段实施计划(8 Phase)
从基础设施到集成测试的完整实施路线图,涵盖 Session Manager、AI 服务层、
Orchestrator 编排、WS Handler 接入、REST API、Rate Limiter 等模块。
|
2026-06-13 15:01:38 +08:00 |
|
|
|
0cafe94f3a
|
docs: 补充跨域处理方案(Nginx 同源反代 + Vite proxy)
- 02-系统架构: 部署架构改为 Nginx 同源反代模型,新增完整 Nginx 配置和 Vite proxy 配置
- 03-接口文档: 连接管理新增跨域处理小节(生产 Nginx / 开发 Vite proxy / CheckOrigin 策略)
|
2026-06-13 14:05:57 +08:00 |
|
|
|
360b2a4f50
|
docs: 补充配置管理规范(Viper + 环境变量)
Backend CI / ci (pull_request) Successful in 1m5s
Frontend CI / ci (pull_request) Successful in 1m40s
- 03-接口文档: 新增第六章配置管理(Go 配置结构体、YAML 配置示例、环境变量覆盖规则、Viper 加载代码、启动命令示例)
- 03-接口文档: 原七~九章重新编号为八~十章
- 02-系统架构: 配置管理行补充交叉引用
- README.md: 索引补充配置管理关键词
|
2026-06-13 13:31:48 +08:00 |
|
|
|
ee557eaa3d
|
docs: 补充 Session Manager 接口规范与 Redis 数据结构
- 03-接口文档: 新增第五章 Session Manager(Redis Hash+List 数据结构、TTL 策略、接口定义、Handler 集成、MVP 内存实现)
- 03-接口文档: 原五~八章重新编号为六~九章
- 02-系统架构: Session Manager 行补充 Redis 数据结构说明和交叉引用
- README.md: 索引补充 Session Manager 关键词
|
2026-06-13 13:24:25 +08:00 |
|
|
|
87b6407e2e
|
docs: 补充 AI 编排层接口规范与 tts_audio 音频播放方案
- 03-接口文档: 新增第三章 AI 服务层接口(STT/LLM/TTS 三个 Service interface + 接入约定)
- 03-接口文档: 新增第四章 AI 编排器(句子级流式并行策略、Orchestrator 实现、错误降级表)
- 03-接口文档: 锁定 tts_audio 音频格式为 audio/mpeg(MP3 24kHz),新增前端 AudioPlayer 播放方案
- 02-系统架构: 更新 Orchestrator 代码为句子级流式并行实现
- README.md: 更新 03-接口文档描述,补充 AI 服务层和编排器关键词
|
2026-06-13 13:18:17 +08:00 |
|
|
|
10f676f3b4
|
docs: 扁平化目录结构,优化文档为 Coding Agent 可读格式
- 移除 Obsidian 特有语法(callout、wikilinks、YAML frontmatter)
- 目录结构从 3 层嵌套扁平化为编号文件(01~09)
- 新增 docs/README.md 文档索引与推荐阅读顺序
- 精简冗余解释,保留所有代码块和实现参考
- CLAUDE.md 全面中文化
|
2026-06-12 17:08:20 +08:00 |
|