From 8a5a8d976e4ebff4dc556239ee1aaafe6268054d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=84=A6=E9=BE=99=E8=A8=80?= Date: Mon, 27 Jul 2026 19:45:48 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=87=E6=A1=A3=EF=BC=9A=E8=AE=B0=E5=BD=95?= =?UTF-8?q?=E6=9C=AC=E5=9C=B0=E6=95=B0=E6=8D=AE=E5=BA=93=E6=89=A7=E8=A1=8C?= =?UTF-8?q?=E7=BB=93=E6=9E=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/pallet-workflow-deployment.md | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/docs/pallet-workflow-deployment.md b/docs/pallet-workflow-deployment.md index 1c4c9d0..08153f6 100644 --- a/docs/pallet-workflow-deployment.md +++ b/docs/pallet-workflow-deployment.md @@ -6,7 +6,7 @@ `shierfeng-fastapi-backend/sql/patches/20260724_pallet_workflow_mysql.sql` -本轮仅生成并审查该补丁,未在真实 MySQL 环境执行,也未清理 Redis 缓存。本文记录的是后续上线步骤,不代表这些操作已经完成。 +2026-07-27 已在本地主工作区 `.env.dev` 指向的 MySQL 8.0.36 执行该补丁,且完成下述本地核对。其他环境尚未执行,Redis 缓存也未清理;本记录不能替代其他环境的上线审批、备份及恢复演练。 ## 上线前门禁 @@ -35,6 +35,13 @@ MySQL DDL 会隐式提交,因此必须将补丁的 DDL、DML 分节执行, 2. 任一固定 ID 与未知既有数据冲突时,必须停止并由 DBA、业务负责人共同人工处理;不得覆盖、改写或复用未知 ID,也不得绕过冲突继续执行。 3. DML 节核对失败时,不得清理缓存或启动后端。 +### 3. 2026-07-27 本地执行记录 + +1. 执行前备份:`/private/tmp/shierfeng-fastapi-before-pallet-workflow-20260727-1925.sql`,文件权限 `600`,大小 69,180 字节,SHA-256 为 `a217a7b071c7e3ecda0d4c94dd1010711b6061025148689156405b70a02f6c7e`。已校验文件非空、可读且包含核心系统表;未执行恢复演练。 +2. DDL 分节执行成功:新增 18 张 `biz_*` InnoDB 表,业务域幂等键的复合唯一索引列顺序已核对。 +3. DML 分节使用标准 `mysql` 批处理执行,未使用 `--force` 或 continue-on-error 模式。64 条新业务菜单已写入,旧 AI/外链菜单、AI 字典及旧角色映射已核对为 0。 +4. 新菜单没有自动授予普通角色;后续应通过现有角色菜单机制按实际职责分配。 + ## 历史 AI/Agno 遗留表 曾运行过历史 AI/Agno 版本的数据库可能残留以下 11 张表: @@ -65,14 +72,15 @@ MySQL DDL 会隐式提交,因此必须将补丁的 DDL、DML 分节执行, ## 启动与运行态验收 -只有 MySQL 补丁成功、逐节核对通过并完成上述定向缓存清理后,才可启动后端并开展运行态验收。至少应核对 `/getRouters` 返回的托盘业务菜单、真实角色权限,以及真实用户与仓库/客户现场映射下的业务访问范围,再验证响应式 Web 页面和 Android PDA HID 扫码回车流程。 +正式环境只有在 MySQL 补丁成功、逐节核对通过并完成上述定向缓存清理后,才可启动后端并开展运行态验收。至少应核对 `/getRouters` 返回的托盘业务菜单、真实角色权限,以及真实用户与仓库/客户现场映射下的业务访问范围,再验证响应式 Web 页面和 Android PDA HID 扫码回车流程。 + +本地环境已使用独立查询参数验证管理员 `/getRouters`:包含 3 个新业务目录和 17 个业务页面,不包含 AI 管理或“施尔丰仓库”。该结果不等于已完成 Redis 清理,也不代表普通角色已完成授权验收。 ## 本轮未验证项 以下事项需要在后续真实环境中验证,本轮没有完成: -* MySQL 真实建表及约束行为。 -* `/getRouters` 运行态菜单。 +* 备份恢复演练。 * 真实角色与仓库/客户现场映射的端到端(E2E)流程。 * MySQL 行锁、并发和事务回滚行为。 * Redis 缓存清理。