chengcheng
b51ecc5eed
fix(identity): 拒绝跨站浏览器会话端点
...
统一认证使用 HttpOnly SameSite=Strict 会话 Cookie。配对时若 Public Base 与 Web Base 不属于同一 schemeful site,浏览器回调会丢失事务 Cookie。新增基于 Public Suffix List 的同站校验,并在运行时重建时重复门禁,防止旧持久化数据绕过。
验证:go test ./... -count=1(apps/api)
2026-07-28 05:52:46 +08:00
chengcheng
1b48a91af0
fix(ssf): 允许同一配对恢复未完成连接
...
首次创建 SSF Stream 失败后,恢复管理器会因缺少尚未生成的 Audience 而将同一 Revision 误判为凭据交接冲突。现在仅对同一 owner、Transmitter、机器客户端且尚未绑定 Stream 的可恢复状态放行重试,跨 Revision 与不完整绑定配置仍保持安全拒绝。\n\n验证:gofmt、go vet ./...、env -u AI_GATEWAY_TEST_DATABASE_URL go test ./... -count=1。
2026-07-28 04:48:15 +08:00
chengcheng
9e8722dc9f
fix(deps): 修复 Gateway 依赖拒绝服务风险
...
将 Nx 间接使用的 minimatch 收敛到 10.2.6,从而使用带长度上限的 brace-expansion 5.0.8;同时升级 DOMPurify 到 3.4.12。\n\n变更保留 Node 22 运行基线,并通过 filelist 兼容检查、Gateway 全量 Go 与 Web 测试、构建、OpenAPI、迁移、发布脚本、govulncheck 和 pnpm audit。审计结果为 0 个已知漏洞。
2026-07-28 04:04:55 +08:00
easyai
e3f6c0fa3e
Merge pull request #27 : 分类展示公开 API 文档并修复 DEV 启动
...
合并 API 文档分类、Compose 数据库 DEV 启动修复与人工发布协作规则。
2026-07-22 17:23:39 +08:00
easyai
fac6ec95da
docs(agent): 明确取消自动 CI/CD 后的合并规则
...
补充本地验证证据要求,明确经用户授权可合并 PR 或直接更新 main,并禁止等待或伪造已经取消的 CI 状态。\n\n同时继续隔离 Git 变更授权与 publish、deploy 两阶段生产授权。\n\n验证:tests/release/manual-release-test.sh
2026-07-22 17:22:50 +08:00
easyai
c305603589
fix(dev): 兼容 Compose 数据库容器启动
...
保留显式数据库连接配置,自动识别 Compose PostgreSQL 容器及宿主机端口,并在容器不存在时跳过不适用的 Docker 建库。\n\n验证:bash -n;ShellCheck;scripts/create-database.sh;pnpm dev 真实启动 API 与 Web
2026-07-22 17:12:48 +08:00
easyai
3de26d5157
feat(web): 分类展示公开 API 文档
...
将通用开放接口与兼容接口分层展示,补充完整接口目录、分类路由、搜索能力和接入约定。\n\n验证:pnpm nx run web:test;pnpm nx run web:build
2026-07-22 17:12:48 +08:00
easyai
fbe8d1d3ec
fix(openapi): 补回图片异步响应契约
...
通过 PR #26 修复 Images 异步 202 OpenAPI 契约回归。
2026-07-22 15:44:48 +08:00
easyai
2812cadd4f
fix(openapi): 补回图片异步响应契约
...
为 Images 生成与编辑接口重新声明 X-Async 参数和 202 TaskAcceptedResponse,保持 OpenAPI 与真实运行时行为一致。
已重新生成 Swagger,并通过 HTTP API 测试和桌面端生成客户端类型检查验证。
2026-07-22 15:43:32 +08:00
easyai
0b7c46cca9
feat(api): 合并官方兼容接口响应协议 ( #24 )
...
合并兼容协议响应统一、提交状态修正、兼容任务元数据迁移及相应契约测试。\n\n已在最新 main 上完成完整本地门禁验证。
2026-07-22 15:38:46 +08:00
easyai
e00851d7e6
fix(db): 调整兼容元数据迁移为可空列
...
生产迁移安全策略禁止在已有任务表上直接新增非空列。兼容提交响应读取已使用 COALESCE,因此将 JSONB 元数据列改为可空,不改变接口行为。
验证:ci-validate-migrations.mjs;migrations-test.sh;go test ./internal/store ./internal/httpapi。
2026-07-22 15:35:00 +08:00
easyai
e07a997aa9
feat(api): 统一官方兼容接口响应协议
...
兼容接口现在以入口协议作为最终响应协议,同协议保留官方 Wire 响应,跨协议统一转换成功、任务状态与错误结构。
同时修正异步提交状态边界,持久化兼容公开任务标识和官方提交响应,并新增迁移、流式响应及协议契约测试。
验证:go vet ./...;go test ./...;govulncheck ./...;pnpm lint;pnpm test;pnpm build;pnpm audit --audit-level high;pnpm openapi;全部 CI 脚本。
2026-07-22 15:34:59 +08:00
easyai
42e8b517fd
feat(gateway): 补齐桌面端高级媒体直连接口
...
通过 PR #25 合并桌面端 AI Gateway 直连接口、计费、安全隔离及真实 DEV 验收实现。
2026-07-22 15:29:54 +08:00
easyai
762d61c9cf
docs(release): 补充仓库 Actions 停用验收
...
记录仓库级 has_actions=false 和 main 无保护规则的只读验收命令。
2026-07-22 15:17:11 +08:00
easyai
dae5d16a58
refactor(release): 改为 Agent 双阶段人工发布
...
删除 Gitea Actions、Tag/Main 自动流水线和旧 Runner 配置,取消 Git 操作与发布授权的绑定。\n\n新增本地镜像发布、固定生产部署助手、digest manifest、迁移安全检查、simulation 冒烟及显式回滚流程。\n\n验证:pnpm lint、pnpm test、pnpm build、Go 全量测试、ShellCheck、Compose 配置、人工发布测试和 linux/amd64 完整栈冒烟。
2026-07-22 15:13:40 +08:00
easyai
3056cf8fca
feat(gateway): 补齐桌面端高级媒体直连接口
...
ci / verify (pull_request) Successful in 15m34s
新增图片矢量化、视频超分、每日用量、计价与任务隔离能力,并通过环境变量解析平台凭据。
已通过 Go 全量门禁、迁移检查、镜像构建以及 Vectorizer 五格式和 Topaz 3 秒视频真实 DEV 验收。
2026-07-22 14:02:53 +08:00
easyai
cbebfd7baa
chore(ci): 推进生产迁移基线至 v0.4.4 ( #23 )
...
ci / verify (push) Successful in 11m18s
生产发布、健康检查与隔离恢复演练均已通过;仅推进生产迁移基线。
2026-07-22 11:19:59 +08:00
easyai
ee0256adb4
chore(ci): 推进生产迁移基线至 v0.4.4
ci / verify (pull_request) Successful in 14m30s
2026-07-22 11:04:42 +08:00
easyai
fce76a30ba
fix(keling): 统一 Omni 模型别名与生产绑定 ( #22 )
...
ci / verify (push) Successful in 12m40s
release-ci / verify-tag (push) Successful in 14m2s
线上真实任务验证发现官方兼容接口的模型别名与生产绑定不一致;统一使用原生模型名匹配候选,同时保留通用接口旧别名兼容。
v0.4.4
2026-07-22 10:23:18 +08:00
easyai
d37fb3ea60
fix(keling): 统一 Omni 模型别名与生产绑定
ci / verify (pull_request) Successful in 21m44s
2026-07-22 10:00:30 +08:00
easyai
9872068596
Merge pull request #21 : 统一公开 API 为 /api/v1 前缀
...
ci / verify (push) Successful in 12m50s
release-ci / verify-tag (push) Successful in 16m11s
合并公开 API V1 前缀统一、兼容路由、OpenAPI、部署健康检查与验证测试。
v0.4.3
2026-07-22 09:10:09 +08:00
easyai
a23b28c27d
test(api): 等待异步任务完成后校验结果
...
ci / verify (pull_request) Successful in 12m38s
真实队列环境中 X-Async 请求会先返回 queued。集成测试改为轮询任务完成并重新读取详情,避免把正确的异步受理状态误判为失败。
2026-07-22 08:56:30 +08:00
easyai
eb37b568ae
fix(deploy): 使用 /api/v1 执行发布健康检查
...
ci / verify (pull_request) Failing after 3m41s
将 Compose 发布脚本的 API、就绪和 Web 反代探针切换到统一公开前缀,避免发布完成后仍只验证旧兼容入口。\n\n验证:bash -n;ShellCheck;ci-build-images-test.sh;pipeline-test.sh。
2026-07-22 08:50:55 +08:00
easyai
a8d1c550ef
chore(deps): 升级 fast-uri 修复高危漏洞
...
ci / verify (pull_request) Failing after 3m45s
将构建链路中的 fast-uri 锁定到 3.1.4,修复 host confusion 高危公告,不改变应用运行时依赖。\n\n验证:pnpm install --frozen-lockfile;pnpm audit --audit-level high;pnpm lint;pnpm test;pnpm build。
2026-07-22 08:48:40 +08:00
easyai
5432760cf7
fix(identity): 避免未配置 SSF 时触发空指针
...
SecurityEventReceiver 不再把空 ConnectionManager 包装为非空接口;未启用 SSF 时公开端点明确返回 404。补充运行时和 HTTP 回归测试。\n\n验证:go test ./internal/identityruntime ./internal/httpapi。
2026-07-22 08:48:36 +08:00
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
f7a5f2e808
Merge pull request #20 : 前移生产迁移基线至 v0.4.2
ci / verify (push) Successful in 9m43s
2026-07-22 05:42:59 +08:00
easyai
152f9d1206
chore(deploy): 前移生产迁移基线至 v0.4.2
ci / verify (pull_request) Successful in 9m42s
2026-07-22 05:32:39 +08:00
easyai
d95cecd0eb
Merge pull request #19 : 修复 Gemini 兼容平台版本路径重复拼接
...
ci / verify (push) Successful in 9m45s
release-ci / verify-tag (push) Successful in 9m54s
修复 Gemini 兼容平台已包含 /v1 时重复追加 /v1beta 的问题。
验证:精确 ci / verify (pull_request) 已通过。
v0.4.2
2026-07-22 05:04:12 +08:00
easyai
5954afef55
fix(gemini): 保留兼容平台的 API 版本路径
ci / verify (pull_request) Successful in 9m42s
2026-07-22 04:53:42 +08:00
easyai
929a7a172c
Merge pull request #18 : 修复 Gemini 图像默认参数与 server-main 脚本兼容
...
ci / verify (push) Successful in 9m44s
release-ci / verify-tag (push) Successful in 9m46s
合并已通过 ci / verify (pull_request) 的图像参数与脚本兼容修复。
v0.4.1
2026-07-22 04:17:44 +08:00
easyai
16149260c7
fix(universal): 映射脚本上游模型名
...
ci / verify (pull_request) Successful in 9m51s
让 server-main 参数预处理兼容上下文使用平台绑定的真实模型名,避免把用户侧别名提交给上游。
2026-07-22 03:56:00 +08:00
easyai
c72c43aaaa
fix(universal): 兼容 server-main 脚本语义
...
ci / verify (pull_request) Successful in 9m52s
补充历史脚本依赖的参数预处理上下文,并识别嵌套同步结果,使迁移后的 Universal 图片通道可按原配置执行。
2026-07-22 03:50:59 +08:00
easyai
84aea01b5b
build(web): 修复高危间接依赖漏洞
...
ci / verify (pull_request) Successful in 9m48s
将 fast-uri 约束到已修复的 3.1.3,确保高危依赖审计通过。
2026-07-22 03:39:48 +08:00
easyai
293ef24bb7
build(api): 升级存在漏洞的 Go 依赖
2026-07-22 03:37:34 +08:00
easyai
0f1765b226
fix(gemini): 初始化图像生成配置对象
2026-07-22 03:37:28 +08:00
easyai
1fa58ba901
Merge pull request #17 : 前移生产迁移基线至 v0.4.0
...
ci / verify (push) Successful in 10m15s
生产版本 v0.4.0 已完成发布、健康检查和恢复演练,前移生产迁移安全基线。
2026-07-22 02:59:54 +08:00
easyai
55595570c2
chore(deploy): 前移生产迁移基线至 v0.4.0
ci / verify (pull_request) Successful in 10m18s
2026-07-22 02:48:38 +08:00
easyai
fba9759bc7
Merge pull request 'fix(kling): 补齐全模态基础视频能力' ( #16 ) from codex/omni-default-video-capabilities into main
ci / verify (push) Successful in 12m8s
release-ci / verify-tag (push) Successful in 9m56s
v0.4.0
2026-07-22 02:00:02 +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
d0cfd0a385
Merge pull request 'feat: 合并网关能力与兼容性优化' ( #15 ) from codex/gateway-feature-batch-20260721 into main
ci / verify (push) Successful in 10m38s
2026-07-22 01:17:45 +08:00
wangbo
0818f55235
fix(billing): 保留规则集未覆盖的基础资源价格
ci / verify (pull_request) Successful in 12m21s
2026-07-22 00:57:50 +08:00
wangbo
fe83da56d2
test(e2e): 增加视频生产验收脚本与记录
ci / verify (pull_request) Failing after 3m43s
2026-07-22 00:25:22 +08:00
wangbo
002422b753
fix(catalog): 同步 GLM-5.2 文本能力配置
2026-07-22 00:25:22 +08:00
wangbo
24b778b3ba
docs(api): 同步模型权限与 Kling 接口契约
2026-07-22 00:25:22 +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
b04a7d9d3d
feat(web): 支持文档页真实提交请求
2026-07-22 00:24:36 +08:00