|
|
de78d60959
|
Merge pull request 'refactor: 用 Eino 框架重构编排层' (#133) from develop into v2
Deploy / deploy (push) Successful in 2m4s
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/133
|
2026-06-20 12:01:03 +08:00 |
|
|
|
93d5a90495
|
Merge pull request 'ci: deploy 工作流增加 main 分支触发' (#132) from fix/redis-use into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/132
|
2026-06-20 11:59:35 +08:00 |
|
|
|
5910e02a66
|
ci: deploy 工作流增加 main 分支触发
|
2026-06-20 11:59:07 +08:00 |
|
|
|
88ee1e2548
|
Merge pull request 'fix: 修复 TieredManager 创建 session 时 L1/L2 ID 不一致导致 Redis 写入失败的问题' (#131) from fix/redis-use into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/131
|
2026-06-20 11:55:43 +08:00 |
|
|
|
b8fd6a9330
|
fix: 修复 TieredManager 创建 session 时 L1/L2 ID 不一致导致 Redis 写入失败的问题
|
2026-06-20 11:54:21 +08:00 |
|
|
|
c2c9a6d392
|
Merge pull request 'fix: 统一 docker-compose 环境变量注入方式,修复 postgres/redis 配置读取问题' (#130) from feature/add-redis-docker into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/130
|
2026-06-20 00:28:18 +08:00 |
|
|
|
795ace75d6
|
Merge pull request 'fix: 统一 docker-compose 环境变量注入方式,修复 postgres/redis 配置读取问题' (#129) from feature/add-redis-docker into v2
Deploy / deploy (push) Successful in 16s
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/129
|
2026-06-20 00:27:20 +08:00 |
|
|
|
dd846876ba
|
fix: 统一 docker-compose 环境变量注入方式,修复 postgres/redis 配置读取问题
- postgres 和 redis 服务添加 env_file,统一从 /opt/camtalk/.env 读取配置
- 移除 postgres 中多余的 ${POSTGRES_USER/PASSWORD} 透传(env_file 已直接注入)
- 移除 backend 中多余的 CAMTALK_STORAGE_DSN 和 CAMTALK_REDIS_PASSWORD 透传
- postgres healthcheck 改用 $$POSTGRES_USER(容器内 shell 变量)替代 ${POSTGRES_USER}(compose 变量替换)
- 根本原因:environment 中的 ${VAR} 在 compose 解析时读取 shell 环境,为空时会覆盖 env_file 的值
|
2026-06-20 00:26:03 +08:00 |
|
|
|
898d1474ec
|
Merge pull request 'feat: 重构用eino框架' (#128) from fea/newcode into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/128
|
2026-06-19 23:28:55 +08:00 |
|
|
|
582f68f68b
|
Merge pull request 'fix: 修复 Dockerfile 运行阶段缺少 config.yaml 导致容器启动 panic' (#127) from develop into v2
Deploy / deploy (push) Successful in 15s
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/127
|
2026-06-19 23:24:45 +08:00 |
|
|
|
7d328f2552
|
Merge pull request 'fix: 修复 Dockerfile 运行阶段缺少 config.yaml 导致容器启动 panic' (#126) from feature/add-redis-docker into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/126
|
2026-06-19 23:24:29 +08:00 |
|
|
|
eb1b90445f
|
fix: 修复 Eino Graph 类型不匹配和多模态消息问题
- 添加 msg2str 转换节点解决 ChatModel 输出 *schema.Message 与 Splitter 期望 string 的类型不匹配
- 将多模态图片内容从 system 消息移到 user 消息(DashScope API 仅支持 user/tool 角色的多模态内容)
- 修复 Content 和 UserInputMultiContent 不能同时设置的问题
- Splitter 输出改为 StreamReader[string](单句),TTS 改为 TransformableLambda 流式消费
- 修复 .env 中 PostgreSQL DSN 和 Redis ADDR 的 http:// 前缀问题
|
2026-06-19 23:24:01 +08:00 |
|
|
|
e5537aaa1e
|
fix: 修复 Dockerfile 运行阶段缺少 config.yaml 导致容器启动 panic
|
2026-06-19 23:23:30 +08:00 |
|
|
|
556666c046
|
Merge pull request 'fix: 修复 Redis 密码为空时容器启动失败的问题' (#125) from develop into v2
Deploy / deploy (push) Successful in 21s
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/125
|
2026-06-19 23:19:23 +08:00 |
|
|
|
4235c5cae0
|
Merge pull request 'fix: 修复 Redis 密码为空时容器启动失败的问题' (#124) from feature/add-redis-docker into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/124
|
2026-06-19 23:19:01 +08:00 |
|
|
|
41f393c09d
|
fix: 修复 Redis 密码为空时容器启动失败的问题
当 CAMTALK_REDIS_PASSWORD 为空时,--requirepass 缺少参数导致
Redis 解析失败退出,healthcheck 无法执行,后端依赖启动失败。
改为 shell 脚本根据密码是否为空动态决定是否启用认证。
|
2026-06-19 23:18:30 +08:00 |
|
|
|
04dac0b673
|
Merge pull request 'feat: 添加 Redis Docker 容器编排及三级存储架构' (#123) from develop into v2
Deploy / deploy (push) Failing after 5m12s
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/123
|
2026-06-19 23:09:39 +08:00 |
|
|
|
4c7430d6f4
|
Merge pull request 'feat: 添加 Redis Docker 容器编排及三级存储架构' (#122) from feature/add-redis-docker into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/122
|
2026-06-19 23:08:12 +08:00 |
|
|
|
765cb34019
|
feat: 添加 Redis Docker 容器编排及三级存储架构
- docker-compose.yml 新增 Redis 服务及 camtalk-net 桥接网络
- 实现 TieredManager 三级存储(L1 内存 → L2 Redis → L3 PostgreSQL)
- config.go 新增 Redis/Persistence 配置类型及环境变量绑定
- 修复 CAMTALK_REDIS_ADDR 环境变量未被 Viper 绑定的问题
- .env.example 更新为三级存储配置并标注开发/部署地址差异
|
2026-06-19 22:53:06 +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 |
|
|
|
4ffd84510e
|
refactor: 清理旧编排代码,新增 eino 包单元测试
删除旧代码:
- orchestrator/pipeline.go: 旧 STT→LLM→TTS 手写 goroutine 管道
- orchestrator/splitter.go: 旧句子切分器
- orchestrator/pipeline_test.go: 旧 Pipeline 测试
- ai/llm/openai.go: 旧 LLM OpenAI 实现(被 eino-ext ChatModel 替代)
- ai/llm/openai_test.go: 旧 LLM 测试
保留的接口和工具:
- orchestrator/orchestrator.go: Orchestrator 接口(ws/handler 依赖)
- orchestrator/sender.go: Sender 接口(eino/callback 依赖)
- ai/llm/llm.go: Request/Chunk/TokenUsage 类型定义
- ai/llm/prompt.go: BuildSystemPrompt(eino/nodes_history 依赖)
- ai/llm/scenarios.go: GetScenarioPrompt(eino/nodes_history 依赖)
新增测试:
- eino/graph_test.go: 13 个测试覆盖类型构建、State 并发安全、
Context 注入、延迟计算、接口实现检查等
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-06-19 22:04:39 +08:00 |
|
|
|
4b731b5ac0
|
feat: 实现 Eino Graph 构建与 Orchestrator 适配器,切换 main.go
- graph.go: 构建 Graph 拓扑 START→STT→History→ChatModel→Splitter→TTS→Done→END
- 创建 eino-ext ChatModel 对接 DashScope OpenAI 兼容接口
- 统一使用值类型(PipelineInput/PipelineOutput)
- Callback 在运行时通过 Stream option 传入
- adapter.go: EinoOrchestrator 实现 orchestrator.Orchestrator 接口
- 解码 base64 音频/图片,注入 context 值
- 调用 Graph.Stream() 触发惰性执行并消费输出
- 追加用户/助手消息到历史
- main.go: 移除旧 llmService + orchestrator.New()
替换为 eino.NewPipelineGraph() + eino.NewEinoOrchestrator()
- 各节点统一使用值类型,State 传递请求元数据
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-06-19 21:58:17 +08:00 |
|
|
|
fd5c7712f8
|
feat: 引入 Eino 框架并实现 AI 编排层基础设施与节点
- 引入 cloudwego/eino v0.9.9 和 eino-ext/components/model/openai v0.1.13
- 新增 internal/eino/ 包:
- types.go: PipelineInput/Output、STTOutput、TokenUsage 类型定义
- state.go: PipelineState 跨节点状态收集(线程安全)
- callback.go: ChatModel OnEndWithStreamOutput 回调,逐 token 推送 llm_chunk
- nodes_stt.go: STT Lambda,支持文本/语音输入模式
- nodes_history.go: 历史组装 Lambda,含多模态图片支持
- nodes_splitter.go: 句子分割 Transform Lambda
- nodes_tts.go: TTS Lambda,逐句合成推送音频
- nodes_done.go: Done Lambda,发送 llm_done 并追加历史
Co-Authored-By: Claude <noreply@anthropic.com>
|
2026-06-19 21:49:28 +08:00 |
|
|
|
f38fbf0527
|
Merge pull request 'refactor: 统一配置文件系统并重构项目设计文档' (#121) from develop into v2
Deploy / deploy (push) Successful in 11s
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/121
|
2026-06-19 19:46:06 +08:00 |
|
|
|
b10a508356
|
Merge pull request 'refactor: 统一配置文件系统并重构项目设计文档' (#120) from docs/complete-doc into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/120
|
2026-06-19 19:43:02 +08:00 |
|
|
|
c0b4eeda46
|
refactor: 统一配置文件系统
- 补全 backend/config.yaml 所有非敏感配置项并添加中文注释
- 重写 config.go:Load(workDir) 显式传参,BindEnv 绑定敏感字段,删除 AutomaticEnv
- setDefaults 默认值与 config.yaml 保持一致(mimo/dashscope)
- backend/.env.example 重写为纯敏感信息模板
- .env 固定在 /opt/camtalk/.env,docker-compose 通过绝对路径加载
- deploy.sh 统一使用 --env-file,移除硬编码 IP
- deploy.yml 删除 CI 写入 .env 的步骤
- Dockerfile 移除 COPY config.yaml
- 修复 deploy.yml 中 POSTGRES_PASSWORD 的 &{{ 拼写错误
|
2026-06-19 18:41:35 +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 |
|
|
|
dbfdf3c3e5
|
docs: README
Deploy / deploy (push) Successful in 19s
|
2026-06-14 23:58:41 +08:00 |
|
|
|
54454ae2d7
|
Merge pull request '部署优化' (#119) from develop into main
Deploy / deploy (push) Successful in 35s
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/119
|
2026-06-14 21:33:01 +08:00 |
|
|
|
720c2e2b5b
|
Merge pull request 'feat:部署优化' (#118) from feat/build into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/118
|
2026-06-14 21:29:04 +08:00 |
|
|
|
c2bae4e3b7
|
feat:部署优化
|
2026-06-14 21:28:18 +08:00 |
|
|
|
838493145f
|
Merge pull request '部署' (#117) from develop into main
Deploy / deploy (push) Failing after 17s
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/117
|
2026-06-14 21:25:32 +08:00 |
|
|
|
943f36e9ec
|
Merge pull request '部署优化' (#116) from feat/build into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/116
|
2026-06-14 21:25:06 +08:00 |
|
|
|
083ede8b6d
|
feat: 部署优化
|
2026-06-14 21:24:11 +08:00 |
|
|
|
14242eb896
|
Merge pull request 'fix: 修复 Docker Compose 环境下 PostgreSQL 连接失败' (#115) from develop into main
Deploy / deploy (push) Successful in 1m30s
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/115
|
2026-06-14 20:50:31 +08:00 |
|
|
|
6db5bef519
|
Merge pull request 'fix: 修复 Docker Compose 环境下 PostgreSQL 连接失败' (#114) from fix/actions into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/114
|
2026-06-14 20:48:31 +08:00 |
|
|
|
1ddd75d34f
|
fix: 修复 Docker Compose 环境下 PostgreSQL 连接失败
|
2026-06-14 20:47:00 +08:00 |
|
|
|
7ea6c0d4f2
|
Merge pull request '版本升级' (#113) from develop into main
Deploy / deploy (push) Successful in 1m36s
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/113
|
2026-06-14 20:44:51 +08:00 |
|
|
|
97357013bb
|
Merge pull request 'feat:添加对话情景功能' (#112) from feat/optimize into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/112
|
2026-06-14 20:41:50 +08:00 |
|
|
|
057a226610
|
Merge remote-tracking branch 'origin/develop' into feat/optimize
# Conflicts:
# frontend/src/lib/errors.ts
|
2026-06-14 20:40:05 +08:00 |
|
|
|
b60e513317
|
feat:添加对话情景功能
|
2026-06-14 20:32:30 +08:00 |
|
|
|
638a387550
|
Merge pull request 'fix: 修复 ChatPanel vadError 属性类型不匹配导致构建失败' (#110) from develop into main
Deploy / deploy (push) Successful in 1m30s
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/110
|
2026-06-14 20:11:19 +08:00 |
|
|
|
9dc9025d10
|
Merge pull request 'fix: 修复 ChatPanel vadError 属性类型不匹配导致构建失败' (#109) from fix/frontend into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/109
|
2026-06-14 20:10:59 +08:00 |
|
|
|
92e47718bc
|
fix: 修复 ChatPanel vadError 属性类型不匹配导致构建失败
|
2026-06-14 20:10:31 +08:00 |
|
|
|
6ce36e3ed8
|
Merge pull request 'fix: 更换 PostgreSQL 镜像源' (#108) from develop into main
Deploy / deploy (push) Failing after 1m22s
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/108
|
2026-06-14 20:00:02 +08:00 |
|
|
|
6032608e49
|
Merge pull request 'fix: 更换 PostgreSQL 镜像源' (#107) from fix/actions into develop
Reviewed-on: http://8.161.227.145:3000/XEngineers/CamTalk/pulls/107
|
2026-06-14 19:59:41 +08:00 |
|