docs: record t635 production deployment

This commit is contained in:
QiuSW
2026-07-28 15:21:17 +08:00
parent 1c100c5d7e
commit bf09bda9bc
3 changed files with 32 additions and 2 deletions
+2 -2
View File
@@ -79,7 +79,7 @@
- 正在进行:无。 - 正在进行:无。
- T-621 注册赠点运营后台配置继续留在 Backlog。真实支付回调到账闭环、客户端发布、生产多图理解模型配置和线上旧同步接口用量观察仍可继续拆任务。 - T-621 注册赠点运营后台配置继续留在 Backlog。真实支付回调到账闭环、客户端发布、生产多图理解模型配置和线上旧同步接口用量观察仍可继续拆任务。
- 当前 blocker:支付商户真实密钥/证书与生产 SDK 依赖仍待提供;微信回调到账闭环仍需真实支付验收;真实 AI 标题生成已在线上跑通,图片生成慢 / 504 / 客户端超时风险已拆为 T-612~T-616 并完成工程侧处理。 - 当前 blocker:支付商户真实密钥/证书与生产 SDK 依赖仍待提供;微信回调到账闭环仍需真实支付验收;真实 AI 标题生成已在线上跑通,图片生成慢 / 504 / 客户端超时风险已拆为 T-612~T-616 并完成工程侧处理。
- 下一个可领取任务:按业务优先级从 Backlog 拆分后续任务。T-621 保留在 Backlog;真实微信商户支付验收仍是线上 blocker。T-635 已在本地完成,部署前生产应先保持客户端策略 `off`,待新版客户端灰度后再切 `observe` / `enforce`。具体范围见 [`06-tasks.md`](06-tasks.md)。 - 下一个可领取任务:按业务优先级从 Backlog 拆分后续任务。T-621 保留在 Backlog;真实微信商户支付验收仍是线上 blocker。T-635 已部署生产 revision `1c100c5`,客户端策略当前为 `off`,待新版客户端灰度后再切 `observe` / `enforce`。具体范围见 [`06-tasks.md`](06-tasks.md)。
## 当前可运行内容 ## 当前可运行内容
@@ -155,7 +155,7 @@ T-633 已新增默认只预演的 `grant_existing_users_plan`:按套餐 ID、
T-634 已统一软件订单与订阅授权的当前权益口径:只有 `active` 且未超过宽限截止时间的权益会阻止跨套餐下单或参与续订。支付校验通过后,服务在同一事务内把自然到期但仍为 `active` 的同产品历史权益收敛为 `expired`;已过期同套餐或不同套餐都会创建新权益。该实现不改接口、迁移、支付验签或点数账本,已部署生产 revision `976b55c`。 T-634 已统一软件订单与订阅授权的当前权益口径:只有 `active` 且未超过宽限截止时间的权益会阻止跨套餐下单或参与续订。支付校验通过后,服务在同一事务内把自然到期但仍为 `active` 的同产品历史权益收敛为 `expired`;已过期同套餐或不同套餐都会创建新权益。该实现不改接口、迁移、支付验签或点数账本,已部署生产 revision `976b55c`。
T-635 已在公开 `GET /api/v1/client/releases/latest` 顶层发布 `client_policy`,有发布和 `release:null` 均返回并带 `Cache-Control: no-store`;策略以 `CMSHOPEE_CLIENT_SUBSCRIPTION_POLICY=off|observe|enforce` 配置,和服务端 `CMSHOPEE_SUBSCRIPTION_MODE` 独立。订阅状态接口新增 `real_entitlement_allowed`,只代表真实 `active` / `grace` 权益,客户端门禁不得以 `open` / `shadow` 的兼容 `allowed` 字段替代。无迁移,不读取用户、套餐或点数,不影响生成、扣点、退款、充值或软件订单。 T-635 已在公开 `GET /api/v1/client/releases/latest` 顶层发布 `client_policy`,有发布和 `release:null` 均返回并带 `Cache-Control: no-store`;策略以 `CMSHOPEE_CLIENT_SUBSCRIPTION_POLICY=off|observe|enforce` 配置,和服务端 `CMSHOPEE_SUBSCRIPTION_MODE` 独立。订阅状态接口新增 `real_entitlement_allowed`,只代表真实 `active` / `grace` 权益,客户端门禁不得以 `open` / `shadow` 的兼容 `allowed` 字段替代。无迁移,不读取用户、套餐或点数,不影响生成、扣点、退款、充值或软件订单。2026-07-28 已部署到生产 revision `1c100c5`,客户端策略保持 `off`,Web / Generate 服务和 66 个图片 worker 健康。
## 开始编码前检查 ## 开始编码前检查
+13
View File
@@ -135,3 +135,16 @@ DONE。
- `py -3.12 manage.py makemigrations --check --dry-run`:No changes detected; - `py -3.12 manage.py makemigrations --check --dry-run`:No changes detected;
旧本地 MySQL 地址拒绝连接,仅产生迁移历史检查 warning,本任务无迁移。 旧本地 MySQL 地址拒绝连接,仅产生迁移历史检查 warning,本任务无迁移。
- `./init.ps1` 和 `git diff --check`:通过。 - `./init.ps1` 和 `git diff --check`:通过。
## 生产部署
- 2026-07-28 已部署到 `185.216.248.75`,线上 `.deploy_revision` 为 `1c100c5`。
- 部署前备份位于
`/root/cmhub_deploy_backups/cmhub-before-t635-20260728_151900`,包含发布前应用代码和 `.env`。
- 线上保持 `CMSHOPEE_SUBSCRIPTION_MODE=enforce`,新增客户端策略明确设置为
`CMSHOPEE_CLIENT_SUBSCRIPTION_POLICY=off`,更新时间为
`2026-07-28T15:19:19+08:00`;不改变服务端授权。
- `cmhub-web`、`cmhub-generate`、Nginx、MySQL 8.4 均为 active;66 个图片 worker
未重启且均 active,failed units 为 0。
- 公网 `GET /api/v1/client/releases/latest?platform=windows` 返回 HTTP 200、
`Cache-Control: no-store` 和 `client_policy=false/false`。
+17
View File
@@ -2220,3 +2220,20 @@
非法配置、`no-store`、release 字段白名单及 active / grace / required / expired 非法配置、`no-store`、release 字段白名单及 active / grace / required / expired
的真实权益语义。`makemigrations --check --dry-run` 为 No changes detected; 的真实权益语义。`makemigrations --check --dry-run` 为 No changes detected;
旧本地 MySQL 地址 `43.128.3.240` 拒绝连接,只产生迁移历史检查 warning,本任务无迁移。 旧本地 MySQL 地址 `43.128.3.240` 拒绝连接,只产生迁移历史检查 warning,本任务无迁移。
## 2026-07-28 生产部署:T-635 cmshopee 客户端启动订阅策略接口
- 目标:`185.216.248.75` / `https://cm.833729.com`。部署前线上 revision 为
`976b55c`;发布 `1c100c5` 前的应用代码和 `.env` 已备份至
`/root/cmhub_deploy_backups/cmhub-before-t635-20260728_151900`。
- 发布:本地 `git archive 1c100c5` 的 SHA256 为
`7ae6782f29e7742b6d6b97b5b7528ff4f24ea6aa5f3c9da133004ef83f6901ba`;隔离发布目录
使用线上 `.env` 加入最终客户端策略后执行 `manage.py check` 通过,才同步到应用目录。
- 配置:保持既有 `CMSHOPEE_SUBSCRIPTION_MODE=enforce`;新增
`CMSHOPEE_CLIENT_SUBSCRIPTION_POLICY=off` 和
`CMSHOPEE_CLIENT_SUBSCRIPTION_POLICY_UPDATED_AT=2026-07-28T15:19:19+08:00`。
客户端体验策略关闭不会改变服务端订阅授权。
- 重启与验收:仅重启 `cmhub-web` 与 `cmhub-generate`,两者、Nginx 和 MySQL 8.4 均 active;
66 个 `cmhub-image-worker` 未重启且均 active,failed units 为 0。公网版本接口返回
HTTP 200、`Cache-Control: no-store` 和 `client_policy` 的两个 false 布尔值;线上
`.deploy_revision=1c100c5`。