AMR 生产发布影响报告

生成时间:2026-09-16 07:23 UTC;分析对象:从 origin/main(HEAD 92df166e0,style(web): align the console campaign trigger with the design spec (#2042))发布 Web、API、Link、Admin、DB migration 与 Model Routing Catalog 的影响分析。注意:Web/API/Link/Admin 以 EKS Pod 实际运行镜像为生产发布点,DB migration 与 Catalog 以对应 workflow 最近成功运行的 head_sha 为生产发布点;六个维度分别计算变更范围。

当前生产发布点(EKS 实态 + workflow 记录)

Web、API、Link、Admin 的发布点来自 Grafana / Prometheus 观察到的 Ready EKS Pod 镜像;DB migration 与 Catalog 的发布点来自对应 workflow 最近一次成功运行。Feature 表只列出各发布点之后的变更;发布点之前已在生产运行的内容见 「已在生产生效」。目标 commit 为 92df166e0。

WEB · EKS Pod 实态
Workload:nexu/amr-web · container web
观察时间:2026-09-16 07:23 UTC
Ready Pods:2 / 2(updated 2,available 2)
实际 commit:ae4b84f76
镜像 digest:sha256:321e7728c850b705aa6cedfafc381f862900719a6e65b4eb0606599a61098c56
Workflow 审计:deploy-web-eks-prod.yml 最近成功 ae4b84f76;与 Pod 一致
本次新增(ae4b84f76...92df166e0):30 commits(含文档/CI)
0f5bf8525 的 web 部分、46cab47fe(DS V4.1 多语言活动)与 ae4b84f76 本身已在生产。
API · EKS Pod 实态
Workload:nexu/amr-api · container api
观察时间:2026-09-16 07:23 UTC
Ready Pods:2 / 2(updated 2,available 2)
实际 commit:b6a6adaf
镜像 digest:sha256:8a5b8f37a1eeb5d28f17771f50710bd094f6e39e478db7ed5a571d8dd1e204cc
Workflow 审计:deploy-api-eks-prod.yml 最近成功 b6a6adaf;与 Pod 一致
本次新增(b6a6adaf...92df166e0):41 commits(含文档/CI)
发布点 b6a6adaf 早于其他服务;b6a6adaf..eecb4434 之间无 API runtime 变更(仅一个计费 e2e 测试),因此 API 范围内不存在应先归入“已生效”的 runtime feature。
LINK · EKS Pod 实态
Workload:nexu/amr-link · container link
观察时间:2026-09-16 07:23 UTC
Ready Pods:3 / 3(updated 3,available 3)
实际 commit:eecb4434
镜像 digest:sha256:28aa5dd46346cf723150ce708abce394b369ecd86baa45cec3e986aa7e34bd4b
Workflow 审计:deploy-link-eks-prod.yml 最近成功 eecb4434;与 Pod 一致
本次新增(eecb4434...92df166e0):36 commits(含文档/CI)
Coding Plan Go tier 退役(6ed3057a5、eecb4434)的 Link model_limit/economics 变更已在生产。
ADMIN · EKS Pod 实态
Workload:nexu/amr-admin · container admin
观察时间:2026-09-16 07:23 UTC
Ready Pods:2 / 2(updated 2,available 2)
实际 commit:eecb4434
镜像 digest:sha256:ec024eb44eed002541226dbb73baf1f5dd06eccc79a2837c378909a2f0d10151
Workflow 审计:deploy-admin-eks-prod.yml 最近成功 eecb4434;与 Pod 一致
本次新增(eecb4434...92df166e0):36 commits(含文档/CI)
#1946 模型表权限测试、#1947 legacy Go multiplier 修复、#1949 退役 Go tier、#1950 清理 Go 配置已在生产。
DB migration · workflow 记录
最近成功:2026-09-09 09:02:35Z
发布点 commit:eecb4434
本次新增(eecb4434...92df166e0):36 commits
20260909071815_retire_coding_plan_go_config.sql 已在基线处执行;public.hcl 的 Go tier 退役变更已生效。
Model Routing Catalog · workflow 记录
最近成功:2026-09-10 07:39:07Z
发布点 commit:21c79c6c6
本次新增(21c79c6c6...92df166e0):33 commits(其中 data/json 与 db/seeds 变更才算 catalog)
基线 21c79c6c(#1954)本身已上线 DeepSeek V4.1 Flash 的模型/路由/定价;其之前全部 catalog 内容已生效。

此次发布真正新增的 feature 和影响面

feature 表只包含「各维度生产发布点之后」的变更:四个服务以 EKS Pod 实态为基线,DB migration 与 Catalog 以 workflow 记录为基线。

Feature 聚合规则:以业务行为、用户路径、数据契约和部署依赖为准;PR、commit 和 path 仅作为可点击的追溯证据。

Feature / Author / Commits Web API Link Admin DB schema / migration DB catalog(seed)
XXLCMS 触点内容生命周期、跨主机 Test 验收与 Web 活动投放

将 CMS 活动从可编辑版本升级为不可变内容版本(content-version),打通 GitHub 导入 / ZIP 包上传 / 构建任务 / Test 沙箱部署 / 跨主机验收 / 生产发布·回滚·恢复,并以实时授权租约强约束 Test 生命周期;Web 端活动浮层与控制台按活动渲染、Test 模式导航、每用户每活动仅曝光一次。

Author:Caprika、Marc Chan

  • 0f5bf8525 feat(cms): add immutable content lifecycle and cross-host Test acceptance (#1943)
  • 8c2d0f95b fix(cms): use one artifact store for Test and promotion (#1953)
  • 02ce3dd9c fix(cms): accept safe ZIP directories and report storage failures (#1955)
  • de6ead823 fix(cms): select ready content and separate Test withdrawal (#1963)
  • 463752395 fix(admin): open activity actions in centered dialogs (#1968)
  • 5eb9df7bf fix(touchpoints): enforce realtime test lifecycle and authorization leases (#1996)
  • fbb3c53de fix(web): display dashboard campaigns without test controls (#1970)
  • a88eb8651 fix(web): allow registered campaign navigation in Test mode (#1993)
  • 2e589a9d1 fix(web): align campaign gift entry and preserve popup width (#1994)
  • 8bc9d356e fix(web): share realtime campaign lifecycle across Test and Production (#2009)
  • eb27bf64f feat(web): show the console campaign once per user per activity (#2039)
  • 92df166e0 style(web): align the console campaign trigger with the design spec (#2042)
EKS Web 发布点 ae4b84f7 之后:活动浮层/控制台渲染与 Test 导航(fbb3c53de、a88eb8651、2e589a9d1、8bc9d356e、eb27bf64f、92df166e0),以及 de6ead823 的 web 部分。0f5bf8525 的 web 部分与 ae4b84f76 已上线(见「已生效」)。 touchpoints 不可变内容、artifact store、promotion/restore、实时 Test 租约(0f5bf8525、8c2d0f95b、02ce3dd9c、de6ead823、5eb9df7bf)。 无 runtime 变更(463752395 仅改 openai_test.go 测试)。 活动/内容版本管理、构建任务、上传、验收、发布/回滚、居中弹窗(0f5bf8525、02ce3dd9c、de6ead823、463752395)。 新增 20260909101013_cms_content_lifecycle.sql、20260909140436_cms_restore_host_evidence.sql、20260914101138_touchpoint_test_context_realtime.sql;db/schema/touchpoints.hcl。 无。
XLAdmin 发起 GDPR 账号注销(Account Erasure)

由 Admin 发起、API 执行的账号注销工作流:冻结身份、结算 Stripe、墓碑化内容、释放原邮箱;含幂等确认邮件、审计日志、指标、处理器确认门禁,以及 Helm reconcile CronJob。

Author:open-design-crew[bot]、nettee

  • 39abf116f feat(api): add admin-initiated GDPR account erasure (#2001)
  • 0d31e2d62 fix(api): update account erasure confirmation email (#2034)
无。 account-erasure 全流程(freeze / billing / content / processors / confirm)、metrics、OpenAPI、PostHog 跳过记录、注销用户拒绝新会话(39abf116f、0d31e2d62)。api chart 新增 account-erasure-reconciliation CronJob。 repositories/postgres.go 支持 erasure 数据操作(39abf116f)。 用户管理页注销发起、状态徽章、审计动作目录、预览与重试(39abf116f)。 新增 20260914115313_account_erasure.sql;db/schema/media.hcl、public.hcl。 无。
XL计费与定价:Astra/长上下文阶梯、GPT 价格同步与 placement 归因

为 Astra 及 >272K input tokens 增加长上下文计费与成本阶梯;同步 GPT 价格与长上下文 tier 到 catalog;订阅/充值 checkout 透传 placement 归因;Admin 金额显示保留 sub-cent 精度。

Author:Marc Chan、Caprika、nettee

  • af7415d35 feat(billing): add Astra billing and cost tiers above 272K input tokens (#1983)
  • 5c25f8b65 feat(billing): 透传 placement 订阅与充值支付归因 (#1987)
  • 77054ca19 feat(billing): sync GPT prices and long-context tiers (#2024)
  • 7cbaeb015 fix(admin): preserve sub-cent amount precision (#1989)
模型价格页 / 公开定价展示长上下文 tier、checkout 与充值归因透传(af7415d35、5c25f8b65、77054ca19)。 charge / cost 应用 Astra 长上下文费率;placement 归因贯穿 checkout 与支付(af7415d35、5c25f8b65)。 catalog / usage 长上下文定价;long-context 费率纳入非零成本判定(af7415d35)。 金额显示保留 sub-cent 精度(7cbaeb015)。 无 schema / migration。 provider_openai.json、public_pricing.json、seed-model-routing-catalog.sql、data/scripts/build_model_json.py 及 db/seeds 生成器(af7415d35、77054ca19)。
LAdmin 运营巡检(Patrol)跨副本告警去重与报表聚合

修复 amr-admin 双副本导致的 Feishu 告警与 /patrol 报表重复;持久化跨副本已发送签名、按小时唯一键;合并 tier 级配额超限与停用模型状态告警,调整 spend spike 阈值,新增供应商单价表与订阅周期额度监控。

Author:open-design-crew[bot]

  • 15de6f1b2 fix(admin): stop patrol alerts and reports duplicating across replicas (#1928)
无。 无。 无。 patrol 告警去重、报表小时唯一、异常聚合、供应商单价表、订阅额度 watch(15de6f1b2)。 新增 20260910094000_add_alert_sent_signatures.sql、20260910094001_add_patrol_reports_hourly_key.sql;db/schema/public.hcl。 无。
MAPI 修复:owner 锁定默认 Team 的 /workspaces/current 上下文

owner 的默认 workspace 升级为 Team 并因订阅结束锁定后,GET /api/v1/workspaces/current 不再返回 404,而是返回锁定的 Team 上下文。

Author:lefarcen

  • c9daae41c fix(api): serve an owner's locked default Team from GET /workspaces/current (#2033)
无。 workspaces core / postgres / routes 修复(c9daae41c)。 无。 无。 无。 无。
M部署可靠性:runtime config 变更触发 Pod 重载

Helm Deployment 模板加入 config checksum 注解,runtime 配置变更时自动滚动重启 Pod,避免配置更新后仍运行旧进程。

Author:nettee

  • 4e54b8ff6 fix(deploy): reload pods on runtime config changes (#2012)
无。 deploy/charts/api deployment 模板(4e54b8ff6)。 services/link/charts/link deployment 模板(4e54b8ff6)。 deploy/charts/admin deployment 模板(4e54b8ff6)。 无。 无。
SCLI 修复(不在本次六个生产维度内)

CLI 为独立制品,不由本报告四个 EKS workflow 发布:compaction 续接会话与终端状态修复;evaluation entry 隔离 model routing 控制。

Author:Ray Xi、open-design-crew[bot]

  • b75badfe3 fix(cli): preserve compaction continuation session and terminal state (#1952)
  • bb544d210 feat(cli): isolate model routing controls in evaluation entry (#1991)
无(CLI 独立制品)。 无。 无。 无。 无。 无。
SCI、文档与 spec 归档(非 runtime)

MinIO 镜像改从 quay.io 拉取;旧 spec 归档、文档同步与 spec 路径引用更新;不改变六个服务运行时行为。

Author:nettee、github-actions[bot]、open-design-crew[bot]

  • 497e7205e fix(ci): pull MinIO images from quay.io (#1988)
  • d65e7f81b docs: reconcile code evolution drift (#1982)
  • fa83eca6c Archive old specs (#2006)(data/json 与 db/seeds 仅注释/引用文本变更)
  • d7c71485e Archive standalone change spec files (#2010)
  • e940830d1 fix(specs): archive old changes regardless of status (#1998)
无 runtime。 无 runtime。 无 runtime。 无 runtime。 无。 无功能性变更。

已在生产生效(发布点之前,本次不重复发布)

以下内容的 commit 均在对应生产发布点之前,已在生产运行。四个服务以 EKS Pod 实态为基线,DB migration 与 Catalog 以 workflow 记录为基线。

发布建议

  1. Migration 判断:BASE_DB(eecb4434)之后新增 6 个 migration,需要先运行 deploy-db-migrations-prod.yml:
    • 20260909101013_cms_content_lifecycle.sql — CMS 内容生命周期(CMS/XXL)
    • 20260909140436_cms_restore_host_evidence.sql — CMS restore 主机证据(CMS/XXL)
    • 20260910094000_add_alert_sent_signatures.sql — Patrol 告警签名(Patrol/L)
    • 20260910094001_add_patrol_reports_hourly_key.sql — Patrol 报表小时唯一(Patrol/L)
    • 20260914101138_touchpoint_test_context_realtime.sql — Touchpoint 实时 Test 上下文(CMS/XXL)
    • 20260914115313_account_erasure.sql — 账号注销(GDPR/XL)
    范围内无被回退的 migration。
  2. 服务发布顺序:建议 DB migration → Model Routing Catalog → Link → API → Admin → Web。Link 依赖 catalog 定价;API 依赖 Link 内部接口;Web 依赖 API。各维度待发布范围不同:DB/Link/Admin 为 eecb4434...92df166e0(36 commits),API 为 b6a6adaf...92df166e0(41 commits),Web 为 ae4b84f7...92df166e0(30 commits),Catalog 为 21c79c6c...92df166e0(33 commits)。
  3. 数据 seed / catalog 判断:Astra / GPT 长上下文定价等由 deploy-model-routing-catalog-prod.yml 的 apply 步骤写入 db/seeds/seed-model-routing-catalog.sql 覆盖,应在 Link/API 发布前完成,无需额外 runbook。
  4. 发布后观测:CMS 活动发布/回滚/恢复与 Test 验收、Web 活动每用户每活动一次曝光、GDPR 注销指标与 reconciliation CronJob、Patrol 告警不再重复(Feishu 与 /patrol 报表)、长上下文计费与 GPT/Astra 价格、GET /workspaces/current 锁定默认 Team、api/link/admin 配置变更触发滚动重启。

备注:四个服务的 compare range 基于 EKS Pod 观察到的 BASE,DB migration 与 Catalog 的 compare range 基于各自 workflow 的 BASE;所有 workflow、commit、PR 均可点击追溯。四个服务的 GitHub workflow 最近成功记录与 GitOps values(powerformer/apps prod values)均与 Pod 实态一致,无差异。

证据与校验

Prometheus(Grafana datasource UID prometheus)在固定评估时刻 2026-09-16 07:23 UTC 查询 kube-state-metrics: