AMR 生产发布影响报告
当前生产发布点(EKS 实态 + Forgejo workflow 记录)
Web、API、Link、Admin 的发布点来自 Grafana / Prometheus 观察到的 Ready EKS Pod 镜像(namespace nexu,datasource prometheus,由 kube-state-metrics 采集,全部样本新鲜度在 18 秒内);DB migration 的发布点来自对应 Forgejo workflow 最近一次成功运行。四个服务均已校验:同一服务所有 Ready Pod 的 commit 与 digest 一致、副本数 spec = updated = available(无滚动中 / 回滚中的混合状态)、Ready Pod 数等于 spec 副本数、镜像 tag 可解析出 40 位 SHA、digest 完整。四个服务的 workflow 最近成功记录与 Pod 实态全部一致(仅作审计对照,不用于判断生产版本)。
feature 表里只列出发布点之后的变更;发布点之前的内容属于已生效,归入「已在生产生效」一节。目标 commit 为 c1bfe570d(fix(test): remove custom share migration prerequisite (#278),2026-10-14 14:54,zhangchi),本地 main 与 origin/main 相同。
本轮采样说明:Link 正在缩容(8 → 4 副本),首次采样时 kube-state-metrics 仍对带 deletionTimestamp 的终止中 Pod 报 ready=1(spec=5 时出现 6 条 Ready 系列);终止中 Pod 已用 kube_pod_deletion_timestamp 识别并单独排除,末次采样已稳定为 4/4(spec = updated = available = 4)。全部 Pod(含缩容中的)commit 与 digest 完全一致,因此发布点判断不受缩容过程影响。与上一份报告(2026-10-14 17:48 本地,五个发布点均为 68f2de820)相比,五个生产发布点本轮完全没有移动:Web / API / Link / Admin 仍为 68f2de820,DB 仍为 68f2de820;差异只在上游代码:origin/main 从那以后前进了 8 个 commit(#272、#274、#275、#266、#265、#277、#276、#278),即本轮的全部待发布内容(5 个 feature)。上一份报告列出的 6 个 feature(#257、#233、#258、#248、#267、#263)随 2026-10-14T09:19–09:35Z 的集中发布上线,本轮不再重复。
nexu/amr-web · container webkube_pod_container_info,image 过滤 amr-web:prod-[0-9a-f]{40} 且仅取 Ready Pod)68f2de820sha256:c4b95dcc122c0a25e0866d3de93f6190dbbe3416a7c0d52efede040600fb95deamr-web-67fc69bfb5-npfg7, amr-web-67fc69bfb5-nmdgf68f2de820;与 Pod:一致(workflow 最近成功运行的 commit_sha 与 Pod 实态相同)nexu/amr-api · container apikube_pod_container_info,image 过滤 amr-api:prod-[0-9a-f]{40} 且仅取 Ready Pod)68f2de820sha256:6dfaf1697217d1a4528ccdbdc2b6d369f267516bc18ccbe54e7e85638ed16f41amr-api-cd9cf7787-npcfx, amr-api-cd9cf7787-h6wwg68f2de820;与 Pod:一致(workflow 最近成功运行的 commit_sha 与 Pod 实态相同)nexu/amr-link · container linkkube_pod_container_info,image 过滤 amr-link:prod-[0-9a-f]{40} 且仅取 Ready Pod)68f2de820sha256:cbeac70b0b7057ade81338ca74bc28cc5ebdeb85816ac70703284a9d446a36e0amr-link-577dd969fc-5qrd5, amr-link-577dd969fc-m5x2g, amr-link-577dd969fc-c9xc8, amr-link-577dd969fc-spvx768f2de820;与 Pod:一致(workflow 最近成功运行的 commit_sha 与 Pod 实态相同)nexu/amr-admin · container adminkube_pod_container_info,image 过滤 amr-admin:prod-[0-9a-f]{40} 且仅取 Ready Pod)68f2de820sha256:3f2817ee67a9d00f7abb390a2968dc35def5badf83577c47ae9b7ca8c352df82amr-admin-6c5bf77796-ds48c, amr-admin-6c5bf77796-brhkh68f2de820;与 Pod:一致(workflow 最近成功运行的 commit_sha 与 Pod 实态相同)workflow_dispatch,started 2026-10-14T09:19:05Z)68f2de82068f2de820...c1bfe570d):8 commits,其中触及 db/migrations/ + db/schema/ 的变更 2 个:8942a62d2(#266)、e175b02fd(#265)此次发布真正新增的 feature 和影响面
| Feature / Author / Commits | Web | API | Link | Admin | DB schema / migration |
|---|---|---|---|---|---|
|
XXL分享链接 / 评论 / 跨站登录(share release)
把已验收的「分享」产品线一次性合入 main:项目 / 文件发布 → 稳定分享 slug → 公开只读分享页 必要依赖与先后关系(仅该 feature 有依赖):① 先应用 DB migration(API 的分享端点直接读写新表与改造后的 Author:zhangchi |
新增分享页:路由 routes/shared-artifact(/artifact/:projectId/:slug 与 /artifact/*)、components/shared-artifact/ 下 48 个新增文件(27 个组件 + 21 个样式)(ArtifactFrame / CommentComposer / CommentList / CommentFloatingCard / ShareModeDock / ShareStatusScreen / CopyCurrentLink / ShareUpdatePill / ShareModuleBoundary 等)、lib/ 下 39 个新增模块(share-auth-client、oauth-continuation、share-contract.gen.ts、share-analytics、share-comment-write-fence、i18n 等)、runtime/ 评论锚点与选择、BootBoundary 与 index.html 启动失败提示、nginx.conf 的 CSP 增加 frame-src(API 三个域 + Turnstile)。必须发布 Web,分享页才存在。 |
新增 share-auth/(OIDC provider、provider client / contract、sessions、transactions、rate-limit)、share-measurement/(batcher、canonical、context、postgres、visitor、budget、runtime)、collab/ 分享实现(share-bindings、public-share-comments、public-comment-pages、share-comment-rate-limit、publication-authority、project-share-status、share-binding-completion 等)、resources/ 分享端点 /api/v1/resources/{resourceId}/shares、/shares/bound、/shares/{slug},以及 collab 路由 /api/v1/collab/shares*、/api/v1/collab/projects/:projectId/comments*;config.ts 新增 share-auth / share-measurement 环境键与启动期校验,packages/shared 同步契约与 viewer URL parity。c1bfe570d 只删除 test 脚本 services/api/scripts/test-share-release-database.mjs,对 API 产物无 runtime 影响。 |
无。(该 commit 不改 services/link/;分享页只读预览由 Web + API 提供) |
无 runtime 变更。(只改了 apps/admin/test/touchpoint-github-import.test.tsx 的轮询等待断言) |
新增 migration db/migrations/20261014123301_share_release.sql(321 行,本次两份 migration 中唯一改动既有表的一份):新建 14 张表 —— collab.share_bindings / collab.share_rate_limits / collab.share_measurement_events / collab.share_measurement_login_attempts / collab.share_update_attributions / collab.file_publications、public.share_auth_transactions / public.share_app_sessions / public.oauthClient / public.oauthAccessToken / public.oauthRefreshToken / public.oauthConsent、resource_hub.snapshot_aliases / resource_hub.snapshot_alias_versions;并改造既有 collab.comment_events:新增 author_kind(NOT NULL,默认 'member')/ author_app_user_id / author_display_name / idempotency_key 四列,member_id 放开为可空,新增 author_kind 与作者形状两条 CHECK,重建评论分页索引为 (team_id, project_id, comment_id, seq)、并加 idempotency_key 部分唯一索引;db/schema/{collab,public,resource_hub,share_measurement}.hcl 与 atlas.sum 同步。全部为加表 / 加列(带默认值、无回填),但会在 comment_events 上做一次非 CONCURRENTLY 的索引重建,执行时注意锁等待。 |
|
XL模型路由采样影子测试(sampled model routing shadow testing)
为新 backend 接入提供实时小流量影子验证:Admin 新增默认关闭的总开关、按 public model × 协议(Chat Completions / Responses / Messages)配置的目标 backend 与采样概率;Link 在正式请求通过准入之后、从供应商改写前的原始字节复制一份独立副本,在独立 goroutine 异步重放,正式响应不等待影子结果。影子调用的终态只进模型指标与结构化日志( 必要依赖与先后关系(仅该 feature 有依赖):① 先应用 DB migration;② 再发布 Link;③ 再发布 Admin;④ 只有全部相关 Link 副本都升级之后才在 Admin 打开总开关并配置规则(保存后按副本 reload 生效,不承诺保存瞬间全副本生效)。回退顺序为:先关闭总开关 → 确认副本已 reload → 再回退应用,新表保留不删。默认关闭,不配置即不影响任何正式流量。 Author:Liu Yi |
无。(该 commit 不改 apps/web/ 的 runtime) |
无。(该 commit 不改 services/api/;影子配置由 Admin 写入 catalog 表,Link 读取) |
新增 internal/shadow/executor.go + execute.go(副本生命周期、4 槽、210s deadline、协议终态判定)、internal/catalog/shadow.go、internal/domain/shadow.go、internal/handlers/shadow.go 与 openai.go / anthropic.go 的接入点、internal/repositories/shadow.go、internal/bifrostengine/shadow_context.go(保留改写前原始请求)、runtimeconfig/manager.go 与 server/internal_catalog_configuration.go(配置装载与副本刷新)、server/internal_public_models.go、及其单测与 specs/change/20261014-model-routing-shadow-testing/* 验收材料。 |
新增 models/shadow-testing 页面 + shadow-policy-editor.tsx(728 行:总开关、按模型 / 协议的目标与概率编辑)、model-configuration-actions.ts / lib/server/admin/model-configuration.ts / model-configuration-repository.ts / lib/model-configuration.ts(影子策略走 catalog 事务、revision 冲突保留输入、审计)、app-shell / sidebar-nav / combobox 与 en / zh 文案;并顺带修掉 Admin candidate 对空 context budget 误补 output budget 的既有不一致(同一 PR 内的配套修复)。 |
新增 migration db/migrations/20261014043452_model_shadow_testing.sql:link.model_shadow_settings(单行表:id + enabled 默认 false,CHECK id = 1)与 link.model_shadow_rules(主键 (public_model_id, request_kind),backend_model_id 外键指向 link.backend_models,public_model_id 外键指向 link.public_models,probability CHECK 0–1,request_kind CHECK 仅 chat_completions / responses / messages);db/schema/link.hcl 与 atlas.sum 同步。纯新建两张表、无回填,是本轮较安全的一份,但 Link 与 Admin 都依赖它。 |
|
MAPI 计费预检恢复原行为 + 独立资金提示路由
修复一个已在线上的兼容性回归(OPEND-3880): 必要依赖:旧客户端无需升级即可恢复;要让 early hint 真正被用户侧使用,需要发布带 Author:lefarcen |
无。 | 既有预检端点行为回退 + 新增受限提示端点:services/api/src/billing/http/routes.ts(legacy handler 还原、新路由 /billing/funding-check、并发名额改名 fundingCheckLoad)、services/api/src/billing/preflight-load.ts、services/api/src/metrics.ts(新计数器);apps/cli/internal/client/billing_preflight.go 与 apps/cli/internal/commands/billing_preflight.go 属 CLI 独立通道;services/api/test/billing-preflight.test.ts 为回归用例。无 schema 变更。 |
无。 | 无。 | 无 schema / migration 变更(commit 说明明确 “No migration is needed”)。 |
|
MLink 扩展 OpenAI temperature 兼容名单(Sol / Astra / Terra / Luna)
修复 OPEND-3882:官方 OpenAI 的 GPT-6 Sol / GPT-6.1 Sol 在 边界:仅对真实复现过的模型生效,其他 provider / 模型 ID / effort / 采样字段不扩大范围;不再遵循调用方指定的温度;GPT-6 Astra high / xhigh 别名与已停用模型(5.3 Codex、5.4、5.5 等)不在名单内。 Author:Liu Yi |
无。 | 无。 | services/link/internal/providercompat/adapter.go(Chat / Responses 两条路径改为 omitUnsupportedOpenAITemperature,模型名单与注释更新);同步 specs/current/link/provider/providers/openai.md,并把 E2E 复现脚本 / fixture 由 Luna 扩展为 e2e/link/test-openai-temperature.py 与 e2e/link/fixtures/openai-temperature.sql。无 schema、无配置依赖;滚完全部副本即生效。 |
无。 | 无 schema / migration 变更(e2e/link/fixtures/*.sql 只是本地验证夹具,不进生产)。 |
|
MAdmin 模型预算:K 单位编辑 + 单项保存只校验关联配置
两个 Admin 侧修正一起看:① #272 统一上下文预算的展示与编辑口径 —— 公共模型编辑入口的上下文窗口、输入预算、输出预算全部以 K Token 编辑(1K = 1000),列表表头统一为「上下文预算」且输入 / 输出等权展示(此前输出预算是弱化小字),旧模型缺输出预算时按 32K 回显;校验复用现有规则(输入 ≥ 1K、输出 1–128K、总计 ≥ 128K 且不超过上下文窗口,两项同时留空即清除预算)。② #274 让单个公共模型的保存不再被无关模型 / 供应商的配置错误阻塞:校验范围收敛为「该模型 + 其完整路由依赖(模型 → 路由 → 后端 → 供应商,含发布状态、运营覆盖与 realisations)」,而不是整个模型目录;同时修掉预算投影默认值 bug —— 没有总预算的模型不再被自动补上 32K output_budget(改为 null,与 Link 数据库加载逻辑一致,此前会导致 Link 拒绝保存)。全局 revision 冲突检查、引用检查、事务与审计保持不变,共享供应商 / 后端修改、路由策略与 bundle 操作仍走全目录校验。 Author:Liu Yi |
无。 | 无。 | 无。(两处都不改 services/link/;Link 侧只是保存时被调用的校验接口) |
模型列表与编辑抽屉:models/list/model-tables.tsx、models/list/page.tsx、models/model-configuration-editor.tsx(K 单位输入 + 预算规则);服务端:lib/server/admin/model-configuration-repository.ts(候选范围收敛 + 预算投影修正)、README.md;en / zh 文案与 3 个测试文件(191 + 239 行)。注意与 #266 同文件区域:影子策略与预算投影都在 model-configuration-repository.ts,两者一起发布时应按同一版本回归。 |
无 schema / migration 变更。 |
不在五个发布维度内但与本轮相关:① 816a6d7d1(#277)与 c1bfe570d(#278)是分享发布闸门(test release fence)工具修正:前者让 tools/test-share-release.mjs 正确解析 Atlas 的 bigint 计数(含回归测试),后者删除 test 通道里自定义的分享 migration 前置步骤与 services/api/scripts/test-share-release-database.mjs,改由普通 root migration workflow 承载 —— 两者只影响 tools/、.forgejo/workflows/deploy-api-eks-test.yml(test 通道)与一个 test 脚本,不进任何服务镜像、不影响生产 deploy / migration workflow(services/api/scripts/ 下的删除只让 API 镜像少一个测试脚本)。② #265 的 apps/cli/internal/{client,commands}/*.go(vela share / collab 命令)与 #276 的 apps/cli/(vela billing funding-check)属 Vela CLI 独立发布通道,不计入五个维度。③ 分享功能的发布还涉及 infra/apps 侧 GitOps 资源与分享 shell(.app)域名,以及外部 Open Design 侧调用方改造,均不在本报告五元组范围内,本轮未核验。
已在生产生效(发布点之前,本次不重复发布)
以下 feature / commit 均在对应生产发布点之前,已在生产运行。四个服务以 EKS Pod 实态为基线,DB migration 以 Forgejo workflow 记录为基线;若从 main 重新发布,只分析各自基线之后的净新增。
- 四个服务 + DB 现均在
68f2de820:2026-10-14T09:19–09:35Z 的一次集中发布把五个维度同时推到68f2de820—— run #4957(DB,09:19:04Z)→ run #4958(Link,09:23:25Z)→ run #4967(API,09:30:12Z)→ run #4968(Admin,09:30:33Z)→ run #4969(Web,09:30:48Z)。上一份报告列出的 6 个待发布项由此全部上线:dfd1d576e(#257)公司级股票 / 图库搜索服务(Web + API + Admin + DB,含media.stock_search_*两张新表与STOCK_SEARCH_ENCRYPTION_KEY依赖);92dccefb3(#233)模型输入 / 输出预算可配置、Opus 5.5 输出预算 128K(Admin + Link + DB);c07e72e0a(#258)Link 上游供应商参数与工具 ID 兼容修复(OPEND-3756 七项);a96eefe50(#248)API 独立资金预检反馈fundingCheck(即本轮 #276 要回退掉的那个端点行为);68f2de820(#267)Link 会话并发预约身份修复(复用X-Request-Id不再误报tier_limit_exceeded);27d613800(#263)Link 兼容 Bedrock Sonnet 5.5 工具选择与 GPT-6 Luna 温度参数。
- Web(
68f2de820及之前已生效):#245(Go 5 小时额度与 12 语言文案)、#257 的测试文件改动等已随上面的集中发布上线;本轮 Web 的待发布内容是 #265 的分享页(/artifact/*),是本轮唯一进入 Web 维度的 runtime 变更。 - API(
68f2de820及之前已生效):#248 的fundingCheck三态字段与并发名额(本轮 #276 会把 legacy 端点恢复回 #248 之前的行为)、#257 的/api/v1/media/stock/search、#243 的额度重置等已上线。本轮 API 待发布内容是 #265 的分享 / 跨站登录 / 测量端点与 #276 的预检隔离。 - Link(
68f2de820及之前已生效):#267(并发预约身份)、#263(Sonnet 5.5 / Luna 温度)、#258、#254(TTFT / TPS 指标)、#242(Haiku 5.5 adaptive thinking)等已上线;本次采样 Link 稳定在 4/4 Ready(同一 commit68f2de820、同一 digest、spec = updated = available = 4;副本数已由 8 缩到 4,属容量调整,不是版本变更)。本轮 Link 待发布内容是 #266 的影子测试与 #275 的 temperature 名单扩展。 - Admin(
68f2de820及之前已生效):#257 的股票搜索渠道配置、#233 的成对预算配置、#243 的额度重置、#164 的 Touchpoint 等已上线。本轮 Admin 待发布内容是 #266 的影子策略界面与 #272 / #274 的预算界面 / 校验修正。 - DB migration(
68f2de820已生效,2026-10-14T09:19:04Z @ run #4957,triggerworkflow_dispatch):该次 apply 把上一个基线806b12365之后的 migration 应用到生产,基线现已包含到db/migrations/20261014033649_stock_search_configuration.sql(#257,media.stock_search_channels/media.stock_search_policy)与db/migrations/20261014024711_model_output_budget.sql(#233,output_budget列 + CHECK)。基线之后到 HEAD 新增两份 migration(#266 与 #265),即本轮待应用的全部 schema 变更。 - 范围内已回退(净变更归零):Web
68f2de820...c1bfe570d、API68f2de820...c1bfe570d、Link68f2de820...c1bfe570d、Admin68f2de820...c1bfe570d、DB68f2de820...c1bfe570d五个 compare range 内没有任何回退 commit(历史回退ed2fdcd97#193 → #127 在所有发布点之前,本次发布不含回退)。
发布建议
- Migration 判断:本次需要先跑一次 migration,且里面有两份互相独立的 migration:
db/migrations/20261014043452_model_shadow_testing.sql(#266,link.model_shadow_settings/link.model_shadow_rules两张新表)与db/migrations/20261014123301_share_release.sql(#265,14 张新表 + 改造collab.comment_events)。两者都是本轮要发布的 feature 的硬前置(Link / Admin 读写link.model_shadow_*;API / Web 读写分享相关表与新列),因此只要本轮发布包含 #266 或 #265 就必须先 dispatch deploy-db-migrations-prod.yml(Atlas 按atlas.sum顺序一并 apply)。两份都是加表 / 加列、无删表删列、无数据回填;唯一需要注意的是comment_events上的索引重建(DROP INDEX+CREATE INDEX,非 CONCURRENTLY)会短暂阻塞对该表的写入,建议低峰执行并观察 migration workflow 的锁等待与耗时。若本轮只发布 #275 或 #272+#274(纯 Link / Admin 代码),则不需要跑 migration。 - 发布前必须确认的配置(#265 的硬前置,本轮未核验):
SHARE_APP_ORIGIN+SHARE_AUTH_CLIENT_ID+SHARE_AUTH_CLIENT_SECRET三项必须同时配置——三项全空即关闭分享登录(分享链接接口会明确返回unavailable,不会给出错误地址),只配置其中一部分会让 API 启动直接失败(启动期校验SHARE_AUTH_CONFIG_INVALID);分享测量需SHARE_MEASUREMENT_ENABLED=true(值非法只关闭测量,不影响启动)。请把这组变量与分享 shell(.app)域名 / GitOps 资源一起纳入发布检查单。 - 服务发布顺序(本轮):五个维度都有变更,按依赖分成「先 schema、再 Link、再 API、再 Admin、最后 Web」:
- 1) DB migration:dispatch deploy-db-migrations-prod.yml 应用上述两份 migration;跑完确认
link.model_shadow_settings/link.model_shadow_rules已建,分享相关 14 张表已建,且collab.comment_events已有author_kind/author_app_user_id/author_display_name/idempotency_key四列与新的分页索引。 - 2) Link:触发 deploy-link-eks-prod.yml 发布
c1bfe570d,一次带上 #266(影子测试)与 #275(temperature 兼容名单)。必须确认全部副本滚动完成(同一 commit、同一 digest、spec = updated = available = 当前 4 副本)。#266 在 Link 侧默认不产生任何行为(总开关默认关闭),#275 则会立即改变命中名单模型的上游请求参数。 - 3) API:触发 deploy-api-eks-prod.yml 发布
c1bfe570d,带上 #265 的分享 / 跨站登录 / 测量端点与 #276 的计费预检隔离。必须在 migration 之后、且分享相关环境变量按上面的要求配置好之后发布(否则启动失败或分享登录不可用)。 - 4) Admin:触发 deploy-admin-eks-prod.yml 发布
c1bfe570d,带上 #266 的影子策略界面与 #272 / #274 的预算界面 / 校验修正;依赖link.model_shadow_*两张表。可与 API 并行。 - 5) Web:触发 deploy-web-eks-prod.yml 发布
c1bfe570d,带上 #265 的分享页(/artifact/*)与 CSPframe-src调整。Web 与 API 都上线后分享页才有数据可显示,建议排在 API 之后。 - 6) 发布后再启用 / 收尾(不是 EKS 发布本身):① 确认全部 Link 副本已升级后,在 Admin 打开影子总开关并配置按模型 / 协议的目标与概率(回退时先关闭并确认 reload,再回退应用,保留新表);② 发布带
vela share与vela billing funding-check的 CLI 版本,并更新外部 Open Design adapter 以消费新的资金提示路由(vela-cli-*属独立通道,本轮未核验其现状);③ 确认分享 shell 域名与 GitOps 资源就绪后再对外开启分享入口。
- 1) DB migration:dispatch deploy-db-migrations-prod.yml 应用上述两份 migration;跑完确认
- 发布后观测:
- Pod 实态:Web / API / Admin 应从
68f2de820/68f2de820/68f2de820滚动到c1bfe570d,各 2/2;Link 从68f2de820到c1bfe570d,4/4;四者都应满足同一 commit、同一 digest、spec = updated = available。注意 Link 近期在缩容,副本数变化要与发布区分开看。 - #265(DB + API + Web):分享页
/artifact/{projectId}/{slug}可打开(含无后缀与非法后缀都停留在分享错误面而不是落到 console);项目发布 → 稳定 slug → 只读预览 → 复制链接 / Open in app 路径可用;评论的发表 / 分页 / SSE / polling 同步、写入门禁与限流(collab.share_rate_limits)、幂等键唯一索引(重复提交不产生重复评论)、已停止分享进入 stop 页且不再返回地址(url/link互斥);跨站登录:无.ai会话时跳转登录并正确回跳、登录态落在分享域、share_auth_transactions过期清理;测量开启时确认 viewer / login attempt / update attribution 写入且窗口与桶符合预期;确认未配置SHARE_APP_ORIGIN时接口返回link.status = unavailable而不是错误地址。 - #266(DB + Link + Admin):默认关闭时确认正式链路指标 / 日志不出现
shadow_request_completed;启用后按目标模型抽样,确认影子请求的request_id独立、success/latency_ms/ token 计数可读,event=shadow_sample_dropped在满载时出现且正式响应延迟不受影响(验收场景中 210 秒 deadline 下正式响应约 16 ms);确认没有usage_events写入、没有额度 / 钱包 / 结算变化(同一请求开关影子扣费应一致);确认关闭后逐副本 reload 生效、回退顺序(关闭 → 确认 reload → 回退应用)可执行;provider / backend 维度混合正式与影子流量时对照阅读指标。 - #276(API):确认
GET .../billing/preflight恢复为新鲜读、第 6 个并发请求不再是 503(此前PG_POOL_MAX=20时名额为 5),fundingCheck字段不再出现于 legacy 响应;观察新路由/billing/funding-check的vela_api_billing_funding_check_rejections_total{reason="busy"|"timeout"}与 503 比例(该路由仍会有受限降载);确认旧版 CLI 走 legacy 路径成功、新版 CLI 在 404 / 503 时不重试不回退;确认 Link 准入与扣费不受影响。 - #275(Link):对 GPT-6 Sol / GPT-6.1 Sol / GPT-6 Astra / GPT-5.6 Sol / Terra / Luna 在
medium+ 携带temperature的 Chat 与 Responses(JSON / SSE)确认不再 400、成功终态带非零 usage;确认未列入名单的模型、其他 provider 与 high / xhigh 等 effort 行为不变;注意行为变化:命中名单时调用方指定的温度不再被遵循(改为模型默认采样),reasoning 字段保留。 - #272 + #274(Admin):以 K Token 保存
240K / 64K→ 校验接口与数据库应得到304000 / 64000、重开表单回显240 / 64;列表表头为「上下文预算」且输入 / 输出等权;保存公共模型 A 时不受无关模型 B 配置错误影响(共享供应商也不扩散),而 A 自身预算非法仍必须 400;无总预算的模型保存后output_budget为 null(不再被补 32K);并发编辑的 revision 冲突仍保留输入。因 #266 与 #272 / #274 改到同一仓库文件,建议发布后对影子策略与预算配置各走一遍真实保存。 - 回归项(已生效,仅抽查):#257 的 Admin 股票搜索渠道与 API
stock_search_unavailable行为、#233 的 Opus 5.5max_tokens与output_budget、#267 的复用X-Request-Id不再误报限额、#248 的fundingCheck三态(本轮开始由新路由承载)。
- Pod 实态:Web / API / Admin 应从
备注:本报告所有 workflow、commit、PR 与 compare range 均指向 Forgejo code.powerformer.net/core/amr,不使用 GitHub Actions;workflow 链接指向可触发页面(actions?workflow=…)。四个服务的 compare range 基于 Grafana / Prometheus 观察到的 Ready Pod 镜像 commit(而非 GitOps / workflow 最近成功记录);DB migration 的 compare range 基于 deploy-db-migrations-prod.yml 最近一次成功运行的 commit_sha;四个服务维度另附对应 deploy-*-eks-prod.yml 最近成功记录作为审计对照,本次四者与 Pod 实态全部一致。口径固定为五元组:Web / API / Link / Admin / DB migration。