diff --git a/apps/backend/src/db/migrations/153_semi_auto_fulfillment.sql b/apps/backend/src/db/migrations/161_semi_auto_fulfillment.sql similarity index 97% rename from apps/backend/src/db/migrations/153_semi_auto_fulfillment.sql rename to apps/backend/src/db/migrations/161_semi_auto_fulfillment.sql index 67b5270a..bb2b84e2 100644 --- a/apps/backend/src/db/migrations/153_semi_auto_fulfillment.sql +++ b/apps/backend/src/db/migrations/161_semi_auto_fulfillment.sql @@ -1,10 +1,10 @@ --- 153_semi_auto_fulfillment.sql +-- 161_semi_auto_fulfillment.sql -- -- 人工履约渠道下的半自动任务: -- 1. 人工 SKU 配置可显式启用虎牙/微博等半自动平台; -- 2. 半自动任务绑定订单项和正式履约,不另建接单平台工单; -- 3. 登录、绑定、执行状态正交保存,客户链接只按订单号展示必要信息; --- 4. CK 不进入 order_site;由外部 Connector 加密托管,任务只保存平台账号快照。 +-- 4. 任务只保存平台账号快照;后续迁移增加账号级加密 CK 与 credential_id。 ALTER TABLE manual_fulfillment_configs ADD COLUMN IF NOT EXISTS semi_auto_enabled BOOLEAN NOT NULL DEFAULT FALSE, diff --git a/apps/backend/src/db/migrations/154_semi_auto_connector_mode.sql b/apps/backend/src/db/migrations/162_semi_auto_connector_mode.sql similarity index 95% rename from apps/backend/src/db/migrations/154_semi_auto_connector_mode.sql rename to apps/backend/src/db/migrations/162_semi_auto_connector_mode.sql index 6930e067..0fc98727 100644 --- a/apps/backend/src/db/migrations/154_semi_auto_connector_mode.sql +++ b/apps/backend/src/db/migrations/162_semi_auto_connector_mode.sql @@ -1,4 +1,4 @@ --- 154_semi_auto_connector_mode.sql +-- 162_semi_auto_connector_mode.sql -- -- 半自动任务记录登录/绑定/票据注入使用的 Connector 来源: -- external:配置的远程 Connector,作为首版默认值; diff --git a/apps/backend/src/db/migrations/155_semi_auto_connector_mode_embedded.sql b/apps/backend/src/db/migrations/163_semi_auto_connector_mode_embedded.sql similarity index 85% rename from apps/backend/src/db/migrations/155_semi_auto_connector_mode_embedded.sql rename to apps/backend/src/db/migrations/163_semi_auto_connector_mode_embedded.sql index 4367698f..a499c8a6 100644 --- a/apps/backend/src/db/migrations/155_semi_auto_connector_mode_embedded.sql +++ b/apps/backend/src/db/migrations/163_semi_auto_connector_mode_embedded.sql @@ -1,4 +1,4 @@ --- 155_semi_auto_connector_mode_embedded.sql +-- 163_semi_auto_connector_mode_embedded.sql -- -- 内置真实 Connector 成为默认实现,不再依赖外部 live-hub-py 进程: -- embedded:order_site 进程内真实虎牙 Connector,默认值; @@ -11,7 +11,7 @@ ALTER TABLE semi_auto_tasks ALTER TABLE semi_auto_tasks DROP CONSTRAINT IF EXISTS chk_semi_auto_tasks_connector_mode; --- 154 时代创建的存量任务均由远程 Connector 完成;切换到内置实现后仍需继续可操作。 +-- 162 创建的历史任务均由远程 Connector 完成;切换到内置实现后仍需继续可操作。 UPDATE semi_auto_tasks SET connector_mode = 'embedded', updated_at = NOW() diff --git a/apps/backend/src/db/migrations/156_semi_auto_credentials.sql b/apps/backend/src/db/migrations/164_semi_auto_credentials.sql similarity index 98% rename from apps/backend/src/db/migrations/156_semi_auto_credentials.sql rename to apps/backend/src/db/migrations/164_semi_auto_credentials.sql index 4363583d..05c4a788 100644 --- a/apps/backend/src/db/migrations/156_semi_auto_credentials.sql +++ b/apps/backend/src/db/migrations/164_semi_auto_credentials.sql @@ -1,4 +1,4 @@ --- 156_semi_auto_credentials.sql +-- 164_semi_auto_credentials.sql -- -- 半自动履约平台账号凭证: -- 1. CK 是账号级凭证,挂到平台 UID,而不是只保存在进程内存或单次任务上; diff --git a/docs/生产升级操作手册.md b/docs/生产升级操作手册.md index 71b8e794..c82c9965 100644 --- a/docs/生产升级操作手册.md +++ b/docs/生产升级操作手册.md @@ -17,21 +17,24 @@ updated_at: 2026-11-08 > [部署启动与数据库重建](部署启动与数据库重建.md)。 > 只要包含迁移、表结构切换或派生数据重建,必须按本手册执行。 -> 2026-11-13 增量待发布基线:`dev_11.9_2` 从生产迁移 `151` 增量到 `156`。 -> 该次变更包含 `152_order_source_facts_immutable.sql`、`153_semi_auto_fulfillment.sql`、 -> `154_semi_auto_connector_mode.sql`、`155_semi_auto_connector_mode_embedded.sql`、 -> `156_semi_auto_credentials.sql`。在发布负责人确认目标提交并完成隔离恢复演练前,只作为开发基线, +> 2026-11-13 增量待发布基线:`dev_11.13` 从生产迁移 `151` 增量到 `164`。 +> 该次变更包含 `152_order_source_facts_immutable.sql`、 +> `158_consignment_worker_name_sync.sql`、`159_consignment_platform.sql`、 +> `160_consignment_auto_match_setting.sql`、`161_semi_auto_fulfillment.sql`、 +> `162_semi_auto_connector_mode.sql`、`163_semi_auto_connector_mode_embedded.sql`、 +> `164_semi_auto_credentials.sql`。在发布负责人确认目标提交并完成隔离恢复演练前,只作为开发基线, > 不得按旧的 `147–150` 一条路径直接上线。 -### 1.1 迁移 `151 → 156` 增量门禁 +### 1.1 迁移 `151 → 164` 增量门禁 - 升级前必须确认生产最高迁移仍为 `151`;分支合并后重新核对迁移号,禁止回退或改写 `151` 及以前文件。 -- `156` 新增账号级加密凭证表、`semi_auto_tasks.credential_id` 和 +- 合并后半自动迁移已顺延到 `161–164`,不得在已应用 main `158–160` 的库上新增 `153–156`。 +- `164` 新增账号级加密凭证表、`semi_auto_tasks.credential_id` 和 `semi_auto.credential.export` 权限;不迁移或清理订单、退款、资金流水等 A 级事实。 - 发布环境必须预先配置稳定的 `SEMI_AUTO_CREDENTIAL_ENCRYPTION_KEY`(至少 32 字符)。 未配置或仍为示例值时,生产运行时校验会拒绝启动。 - 迁移完成后至少验证 `semi_auto_credentials` 表、任务外键、索引和导出权限存在; - 用测试库完成 `001 → 156` 空库迁移,并在隔离库验证 `151 → 156`。 + 用测试库完成 `001 → 164` 空库迁移,并在隔离库验证 `151 → 164`。 - 该增量仍包含迁移,普通停机发布不能使用 `deploy/ubuntu-deploy.sh` 在旧后端运行时直接换库; 必须沿用本手册的停写、最终备份、隔离恢复验证、迁移、新后端健康检查和验收流程。 diff --git a/docs/统一订单履约与财务模型-权威版.md b/docs/统一订单履约与财务模型-权威版.md index c70fb5cb..1b2e22dd 100644 --- a/docs/统一订单履约与财务模型-权威版.md +++ b/docs/统一订单履约与财务模型-权威版.md @@ -12,7 +12,7 @@ updated_at: 2026-11-13 > 状态:**唯一权威文档**。 > 最后校准:2026-11-13。 > 生产基线:迁移 `151`。 -> 开发基线:迁移 `156`(仅本地,尚未部署生产)。 +> 开发基线:迁移 `164`(仅本地,尚未部署生产)。 > > 从本文件生效起,订单、内部 SKU、履约渠道、履约载体、标准商品、成本和财务相关实现, > 只能以本文件为业务口径。其他旧分析只作为历史资料,不再具备设计或验收效力。 @@ -948,9 +948,10 @@ docs/archive/ ## 十三、当前下一步 -截至 2026-11-13,生产基线为 `151`,本地开发基线为 `156`。迁移 `152` 保护订单来源快照, -迁移 `153` 增加人工渠道半自动任务,迁移 `154` 增加半自动任务的 Connector 来源, -迁移 `155` 将内置真实 Connector 设为默认并扩充来源约束,迁移 `156` 增加账号级加密凭证、 +截至 2026-11-13,生产基线为 `151`,集成分支开发基线为 `164`。迁移 `152` 保护订单来源快照, +迁移 `158–160` 收口寄卖登记人同步、寄卖平台与自动匹配设置; +迁移 `161` 增加人工渠道半自动任务,迁移 `162` 增加 Connector 来源, +迁移 `163` 将内置真实 Connector 设为默认并扩充来源约束,迁移 `164` 增加账号级加密凭证、 任务凭证引用和受控导出权限。 1. 生产升级只按 [生产升级操作手册](生产升级操作手册.md) 执行。