Commit Graph
45 Commits
Author SHA1 Message Date
qian 637948eea0 fix(relay):修复ctx错误导致钱包计费失败 2026-09-04 01:02:27 +08:00
qian 15ec726f68 improve(log):优化渠道日志揭露,方便排查问题 2026-09-01 00:11:32 +08:00
qian a2beb8230a fix(relay):修复转换层层数据断层导致连接中断没有正确计费的问题 2026-08-31 22:19:35 +08:00
qian ebb4b2d96f fix(relay):优化协议支持不足的提示信息 2026-08-20 22:11:13 +08:00
chengqian 6a49559147 fix(model):修复大模型接口把关键信息泄露给用户的问题 2026-08-20 14:29:57 +08:00
qian 40e91d9450 feat(channel):新增渠道调试日志功能 2026-08-20 10:34:15 +08:00
qian add95ca5ab feat(model):模型定价分时功能 2026-08-20 01:03:47 +08:00
chengqian 922003e758 feat(model):claude模型5m/1h缓存收费 2026-08-17 17:37:23 +08:00
qian 6696b417ad fix(log):token用量转换问题 2026-08-17 10:01:04 +08:00
qian 5d25673c06 feat(relay):完善responses协议 2026-08-16 19:58:20 +08:00
chengqian bf7123148e feat(model):responses协议和chat的优化处理 2026-08-14 18:14:11 +08:00
chengqian b5a1770018 feat(model):支持responses协议 2026-08-14 16:24:58 +08:00
qian d622237048 improve(playground):根据key的能力显示可用模型 2026-08-08 10:05:24 +08:00
chengqian 908dce79f7 fix(relay): preserve literal models with effort suffixes 2026-08-07 14:08:34 +08:00
qian 2c53aa2576 feat(relay):限流等错误情况不计入请求记录中 2026-08-05 00:50:20 +08:00
chengqian 8cb93d897e improve: 优化高并发下的性能问题 2026-08-03 14:55:06 +08:00
chengqian 2491182939 improve: 优化高并发下的异常报错问题 2026-08-03 12:21:47 +08:00
qian 60373a373d fix(relay): 修复客户端断开时误伤渠道健康评分问题
客户端断开连接(context.Canceled / DeadlineExceeded)时,原来的行为:
1. MaterializeSelection 调用 getChannelKey(ctx, ...) 因 ctx 已取消而失败
2. 失败被包装为 ErrChannelUnavailable(掩盖真实原因)
3. reportMaterializeFailure 对渠道记了一次健康分惩罚

实际上渠道本身完全正常,是客户端主动断开导致的。

修复:
- MaterializeSelection:key 查询前后各加一次 ctx.Err() 检查,
  有 ctx 错误时直接返回 ctx.Err() 而非 ErrChannelUnavailable
- relay_handler.go 调度循环:MaterializeSelection 返回 context 错误时
  静默退出(不记 channelErrors、不调 reportMaterializeFailure),
  用 context.WithoutCancel 退还预扣款项后直接返回,渠道健康分不受影响
2026-08-03 00:00:17 +08:00
qian d7b034c50e improve(log):优化日志打印 2026-08-02 15:45:07 +08:00
qian 27d3cae94e chore:修改relay层注释为中文 2026-08-02 13:40:26 +08:00
Qian 2ef5a40c26 新的调度方式 (#14)
重构模型渠道调度系统
2026-08-01 22:55:08 +08:00
martin 0f87322f49 fix: 修复 P1 功能正确性问题 2026-07-26 11:03:22 +08:00
martin 6665b1e113 refactor:重构渠道调度功能 2026-07-25 20:48:15 +08:00
chengqian 108078614d fix: 金额 float64 → decimal 全链路迁移,消除浮点累积漂移
将全库资金金额从 float64 迁移到 shopspring/decimal,落定边界架构:
入口 NewFromFloat → 内部多步运算全程 decimal → 出口 InexactFloat64;
DB NUMERIC(20,10) 走 driver.Valuer 精确直传,Redis 钱包用整数 micro-USD,
CNY→USD 换汇仅在 payment.FulfillOrder recharge 分支。

- money.go 重写为 decimal 原生(运算/收敛/比较/边界/micro 工具)
- billing/tenant/admin/payment/open/task 各层金额运算 decimal 化
- entity/do 资金列重生成为 decimal.Decimal(可空列 *decimal.Decimal)
- 000013 迁移:非金额 NUMERIC 列 → double precision(5 表 13 列)
- Res 出口 .InexactFloat64() 收敛,JSONB 快照缝隙显式转 float64
- CLAUDE.md 新增 decimal 强约束;补充迁移基线/完成总结文档
2026-07-23 22:08:54 +08:00
Qianandchengqian be9e707bfd 修复异步图片导致的多个问题 (#12)
* fix:修复响应污染问题

* fix:修改存储相关文件为中文注释

* fix:修复二次退款问题

* fix:修复多个考虑不全面问题
1.误删用户数据
2.R2存储默认区域
3.删除失败导致孤儿记录
4.网络抖动事变时重试
5.前端无限次请求获取图片
6.文件管理权限

* fix:修复字符串截断异常问题和文件下载超时问题

* fix:修复多图问题

* fix:异步生成图片时未配置oss提示错误信息

* fix:修复关闭异步后同步生成出错问题

* feat:新增文件存储测试功能,防止设置后不生效

* fix:修复同步图片转异步后计费错误

* fix:修复无下限扣款问题

* fix:修复结算重复扣款问题

* fix:修复计费出错导致的0费用结算

* fix:修复回调双重履约

* fix:修复预扣事务

* fix:修复费用字段类型问题

* fix:修复缓存问题

* fix:修复安全问题

* fix:修复数据库操作事务问题

* refactor:重构事务使用方式,改为官方推荐的dao形式

* fix:修复余额更新隐患

* fix:修复N+1查询问题

* fix:修复密钥安全问题

* fix:结算失败时打印错误日志

* improve:优化扣款

* fix:修复用户接口越权

---------

Co-authored-by: chengqian <wuchengqian@kkidc.com>
2026-07-22 17:53:18 +08:00
fa053529af 图片请求统一异步处理 (#11)
* fix:未导入unicode包

* feat:图片异步转换

* feat:添加R2支持

* feat:新增文件管理

* fix:修复错误信息双写导致响应异常

* chore:渠道列表中添加快捷启用停止按钮

* fix:修复模型异常终端导致报错的问题

* improve:优化无可用渠道的日志打印,减少日志污染

* fix:在线体验出错缺少提示信息

* fix:修复日志库问题,只有请求日志保存到独立的库中

* feat:新增阿里图片模型说明文档

* fix:阿里千问图片生成

* fix:修复图片异步控制无效问题

* improve:优化文件展示,支持缩略图查看

* feat:实时监控中添加图片异步转换池状态信息

* improve:优化在线体验页面布局

* fix:修复异步任务状态显示异常问题

* feat:图片异步任务停止时等待任务完成后再退出程序

* chore:调整存储路径

---------

Co-authored-by: qian <wuchengqian5@163.com>
Co-authored-by: chengqian <wuchengqian@kkidc.com>
2026-07-18 00:26:13 +08:00
22ee0aa112 修复安全问题 (#9)
* fix:修复权限问题

* fix:修复项目key类型错误问题

* fix:修复rbac权限问题

* fix:修复api密钥未及时失效的问题

* improve:优化渠道调度稳定性

* improve:优化路由

* fix:修复项目预算控制缺陷

* fix:加强限流等安全措施

* feat:添加限流相关字段的前端展示及接口字段

* improve:优化注册时密码要求,只需要字母和数字即可

* feat(setting):添加注册限流设置

* improve:优化前端数字类型转换

* chore:rbac权限放行

---------

Co-authored-by: chengqian <wuchengqian@kkidc.com>
Co-authored-by: qian <wuchengqian5@163.com>
2026-06-23 22:47:54 +08:00
qian 6809081f37 feat(model):veo视频模型适配 2026-06-13 09:26:37 +08:00
qian 9c32da15f0 refactor(playground):在线体验功能改为走通用API接口 2026-06-06 12:44:28 +08:00
chengqian ccf457592b fix(relay):修复多个并发问题 2026-06-03 17:03:09 +08:00
qian 7c281743ff fix(model):成员只能看见自己能调用的模型 2026-05-29 07:50:09 +08:00
chengqian d82c6c8a23 refactor(relay):拆分代码,提升可读性 2026-05-28 19:44:51 +08:00
qian 4b544d7069 debug(relay):添加调试信息 2026-05-23 18:29:56 +08:00
qian f0160c57d8 feat(monitor):添加模型渠道监控 2026-05-23 13:33:29 +08:00
qian e251787051 fix(bill):修复并发扣费问题 2026-05-22 00:01:48 +08:00
qian e4ec55ccf2 refactor(wallet):重构钱包功能,支持查看冻结信息 2026-05-20 12:42:13 +08:00
qian b04e656667 Merge branch 'feat/video' into dev 2026-05-20 00:40:51 +08:00
qian d7ef88fa6e feat(model):添加对阿里万象和可灵模型的支持 2026-05-20 00:24:25 +08:00
qian 5084406687 feat(model):添加对火山视频模型的支持 2026-05-19 23:28:54 +08:00
qian ef2845af3a feat(model):新增视频类型的大模型支持 2026-05-19 00:33:02 +08:00
qian e34681a911 feat(model):seedance 2.0计费优化 2026-05-17 22:09:07 +08:00
qian 42f2b2e1c0 feat(model):阿里模型添加异步支持 2026-05-17 15:59:08 +08:00
qian 78cfd8aaef fix(relay):余额不足不应该出现报错日志 2026-05-16 21:54:18 +08:00
qian e1aa0a68b1 refactor(project):重构项目模型权限控制功能 2026-05-15 16:03:32 +08:00
qian 3405280224 后端功能首次提交 2026-05-10 12:21:27 +08:00