Octafuse v2.0.0
What's changed
Major Changes
-
#74
c8b4372Thanks @dyc87112! - 单键化 Provider(一个 provider 一把 api_key)并引入可切换路由策略。破坏性变更
- 删除
provider_api_keys表与 Admin/providers/:id/keys*API;密钥写入providers.api_key,启用状态为providers.status - 删除网关侧 per-key RPM/TPM/并发软限流与粘性 key 绑定(
models.sticky_config) models.sticky_config替换为models.route_policy;model_routes新增weight- 新增全局
system_config.ROUTE_STRATEGY(默认affinity)与四策略:affinity/weighted_random/strict/round_robin - Proxy 调度改为 priority 分层 + 策略排序 + provider 维度熔断;请求日志
provider_key_*列语义改为 provider id/name/fingerprint
上线前请用
scripts/db/export-provider-api-keys.mjs导出密钥,再应用迁移0015_single_provider_key.sql。详见docs/operators/migrations/single-provider-key-cutover.md。 - 删除
Patch Changes
-
#74
58e6383Thanks @dyc87112! - Improve Images/v1/images/editsclient-error diagnostics: reject non-multipart/form-dataContent-Type with an explicit message (instead of a misleadingMissing model), and log structured[Gateway Images] request rejectedfields (contentType,bodyKeys,hasModel, …) for all Images 4xx early exits. Proxy also logs truncated JSON bodies for Gateway-generated 4xx responses. -
#76
6019524Thanks @dyc87112! - Fix Admin Docker multi-arch build onlinux/arm64(Alpine musl): explicitly install@swc/core-linux-*-muslafternpm ci --ignore-scripts, sonext-intlcan load native SWC when evaluatingnext.configunder buildx/QEMU.
Container images (GHCR)
Tag v2.0.0 — multi-arch manifest digests (proxy / admin / migrate):
- proxy:
sha256:aa3024ee7ee51b8047c12739064e109956a198b8df1fb8f4e893b15bf02a23b6ghcr.io/octafuse/octafuse-gateway-proxy@sha256:aa3024ee7ee51b8047c12739064e109956a198b8df1fb8f4e893b15bf02a23b6
- admin:
sha256:f53a339cfb1b93e8a799b1faf8d911a09e01da61fa42ec1373cd7a5df9df4915ghcr.io/octafuse/octafuse-gateway-admin@sha256:f53a339cfb1b93e8a799b1faf8d911a09e01da61fa42ec1373cd7a5df9df4915
- migrate:
sha256:398087b642a67098cead985702a7106843fee067f63aac6a51e2bbb9f341d95dghcr.io/octafuse/octafuse-gateway-migrate@sha256:398087b642a67098cead985702a7106843fee067f63aac6a51e2bbb9f341d95d
Pull by digest for reproducible deploys, or by tag v2.0.0 after verifying digest.
Release process: .changeset/README.md · docs/maintainers/release-versioning.md