Commit Graph
103 Commits
Author SHA1 Message Date
easyai 7c5a999e32 feat(api): 统一公开接口为 /api/v1 前缀
将通用生成、Gemini、可灵、火山、健康检查与 OpenAPI 的推荐入口统一到 /api/v1,并保留历史路径作为兼容别名。同步更新代理配置、接入文档、接口清单和前缀回归测试。\n\n验证:go vet ./...;go test ./...;pnpm openapi;pnpm lint;pnpm test;pnpm build;公开 OpenAPI 71 个方法与接口清单机器比对一致。
2026-07-22 08:48:32 +08:00
easyai 3d3460ce63 test(kling): 兼容全模态模型展示别名
ci / verify (pull_request) Successful in 11m22s
集成测试通过现有可灵别名归一规则校验解析模型,兼容共享数据库返回 kling-o1 等目录展示名,同时保留任务成功与推断模型类型断言。
2026-07-22 01:48:10 +08:00
easyai 000ee1bbfd fix(kling): 补齐全模态基础视频能力
ci / verify (pull_request) Failing after 4m10s
让 omni_video 模型默认同时注册 video_generate 与 image_to_video,兼容通用视频接口在不显式传 modelType 时的能力推断。

新增迁移同步可灵 O1 与 3.0 Omni 的基础目录、平台映射、能力详情和默认快照;集成测试覆盖两个模型的无 modelType 文生视频与图生视频。
2026-07-22 01:41:23 +08:00
wangbo d7951cfdd2 feat(volces): 接入任务兼容查询与上游取消 2026-07-22 00:25:22 +08:00
wangbo ddd68cfebd feat(seedance): 接入真人资产管理与引用 2026-07-22 00:25:22 +08:00
wangbo 5a71643099 feat(kling): 接入 Omni 视频兼容接口 2026-07-22 00:25:05 +08:00
wangbo 6b675c406e fix(billing): 修正模型计费配置继承优先级 2026-07-22 00:24:36 +08:00
wangbo 56d4a3a6b7 fix(access): 修正 API Key 可分配模型范围 2026-07-22 00:24:36 +08:00
wangbo 276c0612d8 refactor(task): 复用网关任务创建流程 2026-07-22 00:24:36 +08:00
wangbo d818e7947a 调整 Gemini 模型接口路由 2026-07-22 00:24:36 +08:00
easyai 9d4501bc42 feat(kling): 接入O1与3.0 Omni兼容接口
ci / verify (pull_request) Successful in 15m32s
新增中国区可灵 V1 AK/SK Omni 协议与 API 2.0 兼容路径,补齐任务隔离、外部任务幂等、参数校验和 OpenAPI 文档。\n\n验证:O1 与 3.0 Omni 真实 V1 任务成功;Go、前端、依赖审计、迁移及 CI 脚本门禁通过。
2026-07-21 23:47:13 +08:00
chengcheng bfa17a3aba fix(auth): 为登录链路增加有界超时
ci / verify (pull_request) Successful in 11m22s
为 PostgreSQL 连接、就绪检查和本地登录设置分层超时,数据库不可用时返回稳定 503 错误码并记录无凭据的连接池统计。

前端登录在 10 秒后取消请求并兼容调用方 AbortSignal,Nginx 登录精确路由限制上游为 15 秒,同时更新 OpenAPI 和回归测试。
2026-07-21 11:47:09 +08:00
chengcheng 8c38714296 fix(runner): 稳定异步任务重启恢复
ci / verify (pull_request) Successful in 10m32s
避免恢复任务将已到期的 next_run_at 误插入 River scheduled 状态,并使用专用模型隔离重启集成测试。\n\n验证:Go 全量测试、govulncheck、pnpm lint/test/build/audit、Compose、镜像、迁移、流水线及 SemVer 门禁全部通过。
2026-07-21 11:29:56 +08:00
chengcheng 8beb8501fa fix(billing): 封住发布前计费竞态
ci / verify (pull_request) Failing after 8s
阻止上游提交状态不明的任务被租约接管后重复执行,并为人工复核保留可操作的结算记录。

将生产提交绑定到当前估价签名,统一复用预处理快照,并补强规则形状、定点溢出与历史规则兼容校验。

已通过 PostgreSQL 16 集成测试、Go 全量测试与静态检查、前端测试与构建、OpenAPI、依赖审计、镜像、迁移、流水线和 SemVer 门禁。
2026-07-21 10:23:58 +08:00
chengcheng 1362970229 test(billing): 覆盖估价只读与请求重放契约
PostgreSQL HTTP 集成测试验证估价新增字段且不创建任务、冻结余额或写流水,并验证非流式重放只执行一次、异请求冲突及流式重复冲突。
2026-07-21 00:30:44 +08:00
chengcheng 5b2b94b1bd feat(billing): 完成异步结算与请求执行闭环
统一任务成功、Attempt 与结算 Outbox 的事务边界,增加多实例安全结算、人工复核、请求幂等与执行租约。钱包决策使用九位精确金额,并通过审计保护约束保留流水事实;同时补充管理接口、指标与 PostgreSQL 集成测试。
2026-07-21 00:25:53 +08:00
chengcheng 5114686c35 feat(billing): 统一计价与候选冻结估算
新增 effective-pricing-v2、9 位十进制定点计算、显式免费校验和结构化缺价错误。估价与生产预处理覆盖全部可用候选,并按最大候选费用冻结;规则优先级为平台模型、平台、基准模型。\n\n同步计价契约和 OpenAPI,补充 Token 参数别名、视频五秒向上取整及缺价回归测试。\n\n验证:go test ./...、pnpm openapi、Web 测试与构建通过。
2026-07-20 23:22:45 +08:00
chengcheng 4426eeccf7 chore(merge): 整合最新 main 与统一认证变更
ci / verify (pull_request) Successful in 12m18s
合并远端生产 CI、依赖与 API 文档改动,保留统一认证和 SSF 能力。由于远端生产基线已占用 0062,将尚未发布的身份迁移整理为 0063 至 0068 的最终增量 Schema,移除仅用于开发期草稿升级的破坏性迁移步骤。

验证:go test ./...。其余生产门禁在合并提交后继续执行。
2026-07-17 19:06:37 +08:00
chengcheng a312ad880d fix(identity): 完善统一认证配对恢复与安全退役
修复 credentials_saved 状态无法恢复、配对与激活并发冲突,以及 SSF 和身份 Secret 生命周期不完整的问题。新增持久化协调器、取消与清理状态机、事务级并发门禁、受控 SSF 凭据交接、禁用后的延迟 Secret 清理,并对生产环境统一认证及 Discovery 端点强制 HTTPS。

验证:go test ./...;go test -race ./internal/auth ./internal/identity ./internal/identityruntime ./internal/securityevents ./internal/httpapi ./internal/store -count=1;go vet ./...;真实 PostgreSQL 并发及清理成功/冲突回滚测试;pnpm openapi。
2026-07-17 18:31:12 +08:00
wangbo 0d18df54f1 feat: 增加计费预估核对运维流程 2026-07-17 13:57:21 +08:00
wangbo 5ee267ecbd feat: 完善模型请求适配与输出限制 2026-07-17 13:52:00 +08:00
chengcheng cdfca61304 docs(identity): 发布统一认证管理契约
为配对、策略、验证、激活、回滚、禁用和公开运行时接口补充 OpenAPI 注解,并将通用 Identity 类型加入生成范围。生成契约不包含 Exchange Token、Machine Secret 或 Secret 引用。\n\n验证:pnpm openapi;OpenAPI 敏感字段扫描通过
2026-07-17 12:31:11 +08:00
chengcheng a767dc42c0 refactor(identity): 统一网页认证配置来源
移除旧 OIDC_* 与 VITE_OIDC_* 业务配置读取,统一使用数据库 Revision 和 SecretStore 引用构建运行时。同步更新 Compose、示例配置、接入文档及集成测试,并保留数据库、SecretStore 和安全事件健康窗口等部署级参数。\n\n验证:go test ./...;go test -race ./...;go vet ./...;pnpm test;pnpm lint;pnpm build;docker compose config -q
2026-07-17 12:31:00 +08:00
chengcheng 1fce3a535d feat(identity): 增加统一认证管理接口
提供接入码配对、配置查询、本地策略修改、验证、激活、回滚、禁用和公开运行时状态接口。写操作强制 Idempotency-Key 与 If-Match,后台 Exchange 支持重启恢复和过期收敛,并记录脱敏 Trace 与审计。\n\n验证:go test 相关 identity、store、identityruntime、httpapi 包;go vet ./apps/api/...
2026-07-17 12:10:44 +08:00
chengcheng a9e23cb237 feat(identity): 实现统一认证运行时热切换
从 Active Revision 构造并验证 OIDC、BFF Session、Introspection 与 SSF Runtime,在数据库激活成功后原子替换内存引用。请求链路使用不可变快照,失败保留当前运行时,本地管理登录不受影响。\n\n验证:go test ./apps/api/...;go vet ./apps/api/...
2026-07-17 12:05:00 +08:00
chengcheng ffb85b73af feat(ssf): 托管机器凭据并支持动态恢复
Gateway 连接表单接收认证中心一次性交付的 machine Client 凭据,后端立即写入 SecretStore,数据库和公开响应只保留引用及公开 Client ID。SSF 管理 Token、Verification 和 RFC 7662 内省统一从动态凭据读取,支持现有连接无重启修复及进程重启恢复,环境变量仅保留为旧部署回退。\n\n验证:go test ./apps/api/...;pnpm nx test web;真实重启、OIDC 登录与 session-revoked 1.29 秒失效验收。
2026-07-17 09:13:57 +08:00
wangbo a24eb1aeb0 feat: 自托管 AI Gateway 运维管理 SKILL 2026-07-16 23:57:14 +08:00
chengcheng 2ccf041b35 feat(ssf): 增加连接操作审计与追踪证据
安全事件连接的成功和运行时失败现在写入脱敏审计,响应携带 Trace ID 与 Audit ID,管理页面展示最近一次成功操作证据。审计仅记录连接状态、健康模式和错误类别,不采集授权头、Token、Bearer 或 Secret。\n\n验证:HTTP API、Store、Security Events Go 测试以及 Web Vitest、TypeScript 类型检查通过。
2026-07-16 10:55:21 +08:00
chengcheng 9efeb16fd1 feat(ssf): 实现安全事件一键连接与凭据托管
新增数据库驱动的 SecurityEventConnectionManager,复用 RFC 7662 机器 Client,自动完成 Discovery、Push Bearer 生成、Stream 创建、Verification、首次启用、零停机轮换和安全退役。

增加文件与 Kubernetes SecretStore、最小权限 RBAC、动态 Receiver/撤销水位/内省降级,以及系统设置管理页面。已通过全量 Go 测试、go vet、关键包竞态测试、27 个 Web 测试、类型检查、生产构建、Compose 和 Kubernetes dry-run。
2026-07-15 17:25:00 +08:00
chengcheng f30aaeb2d4 feat: 接入 SSF 实时会话撤销 2026-07-14 17:06:41 +08:00
chengcheng dd1ddd6ead refactor: 统一 PKCE 挑战值生成逻辑 2026-07-14 11:11:48 +08:00
chengcheng 85d72a1c8c refactor: 使用 go-oidc 验证 ID Token 2026-07-14 11:11:48 +08:00
chengcheng 053bc260c7 refactor: 使用标准库实现 OIDC 客户端流程 2026-07-14 11:11:48 +08:00
chengcheng 8ca68eb3cd fix: 为失效 OIDC 事务提供安全重试
细分回调事务、状态和授权响应错误,提供脱敏诊断编号与显式重新登录入口,避免失效事务形成重试循环。
2026-07-13 22:50:09 +08:00
chengcheng c5c82bb528 feat: 接入 OIDC 公共客户端登录链路
由 Gateway 服务端完成 PKCE 换码、ID Token 校验、JIT 用户解析和 Session 建立。新增登录、回调、退出与本地会话删除接口,并移除旧的 Access Token Cookie 桥接接口。
2026-07-13 19:09:38 +08:00
chengcheng a81a7b5200 fix: 修复 OIDC 用户预配与跨标签页登录态
增加受控 JIT 本地用户投影,并使用 HttpOnly Cookie 在新标签页恢复认证中心登录态。补充错误语义、安全校验、自动化测试与回滚配置。
2026-07-13 17:07:52 +08:00
wangbo 17b1f77e1d Merge remote-tracking branch 'origin/main' 2026-07-13 13:28:19 +08:00
wangbo 9c300de72c feat(gateway): add Seedream 5.0 Pro 2026-07-13 12:53:48 +08:00
wangbo f8d766b916 feat: enforce OIDC session introspection 2026-07-12 05:44:37 +08:00
wangbo b9c0e1a7a5 feat: add stable OIDC authentication 2026-07-12 05:14:23 +08:00
wangbo 8847d973a8 feat: add Responses API compatibility 2026-07-10 23:33:15 +08:00
wangbo b7351f3b9b feat(runtime): 适配推理模式开关 2026-07-06 02:03:03 +08:00
chensipeng 0dc9df759b feat(system): 完成客户端自定义与系统设置
新增管理端客户端自定义标签页、公开与管理端系统设置接口、文件存储设置持久化、数据库迁移、契约类型和 OpenAPI 文档。
2026-06-30 14:53:29 +08:00
wangbo 24eb68cc09 feat: use message LCP cache affinity keys 2026-06-29 15:47:57 +08:00
wangbo 229ed6a669 Merge remote-tracking branch 'origin/main' 2026-06-28 20:50:27 +08:00
wangbo 0e675e259c feat: add runner failover rules and cache affinity 2026-06-28 20:50:23 +08:00
wangbo 41bb3a6525 修复 Gemini 兼容路由启动失败 2026-06-27 21:46:57 +08:00
chengcheng f4e1db1279 feat(task): 暴露任务取消控制状态 2026-06-25 17:01:32 +08:00
wangbo c15842a94d feat: add Gemini image compatibility 2026-06-24 00:42:49 +08:00
wangbo 7f32446466 feat: support cached input token billing 2026-06-23 17:17:57 +08:00