From d560521bfbaa2ac4ed48527796890abf41bdfecd Mon Sep 17 00:00:00 2001 From: xuans Date: Mon, 5 Oct 2026 22:13:43 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=B0=E5=BD=95=E5=BD=93=E5=89=8D=E4=BB=A3?= =?UTF-8?q?=E7=A0=81=E5=80=99=E9=80=89=E5=8D=87=E7=BA=A7=E4=B8=8E=E7=AC=AC?= =?UTF-8?q?=E4=B8=80=E5=8F=B0Linux=E9=AA=8C=E6=94=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 补充 Linux 候选包、第一台服务器升级、第二台清理和未完成生产门禁的实测记录。 --- doc/Linux生产流程测试记录.md | 20 ++++++++++++++++++++ doc/Scert整改任务执行清单.md | 20 ++++++++++++++++++++ doc/Scert整改合并优化清单.md | 18 ++++++++++++++++++ 3 files changed, 58 insertions(+) diff --git a/doc/Linux生产流程测试记录.md b/doc/Linux生产流程测试记录.md index b19ac89..db5d0ed 100644 --- a/doc/Linux生产流程测试记录.md +++ b/doc/Linux生产流程测试记录.md @@ -3256,3 +3256,23 @@ SQLite 新测试程序 SHA-256:4c81656fae63a2eebad999d58e6a79e63e6f441810e02ce - [!] Linux 总体生产上线门禁继续未关闭。 本节不记录密码、授权码、Cookie、令牌或私钥;Windows 环境不在本轮范围。 + +## 2026年10月5日 22:02 当前代码候选包与第一台升级实测 + +### 本轮实测证据 + +- [✓] 后端 `go test -p 1 -count=1 -timeout=12m ./...`、`go vet ./...` 和前端 `npm.cmd test -- --run` 完成;前端 338 项通过,零失败、零跳过。 +- [✓] 发布脚本仅生成 `linux-amd64`;manifest 的源码提交为 `9cf01ad1ab45a5c42464cad4502fd66cd99a95ca`,`source_dirty=false`,归档 SHA-256 为 `ff8773849ca404bb1b73e272aaa5a7de4ee9a395955c2cd20e29b40df68559b9`。 +- [✓] 本地候选包清单 22 项全部通过 SHA-256 校验;包边界扫描通过,没有 Windows/桌面端、动态库、证书私钥或其他敏感文件类型。 +- [✓] 第一台远端归档摘要与本地一致;远端解包后的 `SHA256SUMS` 逐项通过。 +- [✓] 停服后使用官方备份流程创建 `/scert/backups/scert-20261005-140005.579855102`,再运行 `install-linux.sh --source-dir`;安装器报告升级文件已保留,没有删除配置、数据库、证书或历史备份。 +- [✓] 远端 `/scert/scert` SHA-256 为 `9a5114c19096097fc062f480c786543e42f3a8160f4ec6e45a34c4caf8017860`,与候选包一致;`/scert/scert-admin` 和 `/scert/scert-storage` 摘要也一致。 +- [✓] `Scert.service=active`、`Scert-storage.socket=active`、`Scert-admin.service=inactive`;Scert 仅监听 `127.0.0.1:8443`,公网 `80/443` 仍由 Nginx 接收。 +- [✓] `/scert/scert config validate` 通过,`nginx -t` 通过;远端严格 TLS 访问 `https://odacm.cn/readyz` 返回 `{"service":"scert","status":"ready"}`。 + +### 未完成门禁 + +- [ ] SMTP 敏感凭据交互录入、真实通知、收件箱到达和验证码闭环。 +- [!] 历史中断事务继续等待 `Scert-admin` 本机人工核查,不自动接管或删除锁。 +- [ ] 第二台 `45.136.13.241` 正式 SSL 推送、Nginx reload、受控失败回滚、恢复指纹和幂等重试。 +- [!] 本轮只证明最新 Linux 候选包在第一台升级后就绪,不代表 Linux 总体生产上线通过。 \ No newline at end of file diff --git a/doc/Scert整改任务执行清单.md b/doc/Scert整改任务执行清单.md index a40b45a..bb3459b 100644 --- a/doc/Scert整改任务执行清单.md +++ b/doc/Scert整改任务执行清单.md @@ -3132,3 +3132,23 @@ P0-05 从 `[!]` 调整为 `[~]`,并未标记完成;P0-04 剩余门禁和全 - [!] Linux 总体生产上线门禁继续未关闭。 本节不记录密码、授权码、Cookie、令牌或私钥;Windows 环境不在本轮范围。 + +## 2026年10月5日 22:02 当前代码候选升级任务进度 + +### 任务进度 + +- [✓] `LINUX-REGRESSION`:后端全量测试、`go vet`、前端 338 项测试通过。 +- [✓] `LINUX-RELEASE`:仅生成 Linux amd64 候选包,源码提交为 `9cf01ad1ab45a5c42464cad4502fd66cd99a95ca`,归档摘要为 `ff8773849ca404bb1b73e272aaa5a7de4ee9a395955c2cd20e29b40df68559b9`。 +- [✓] `SERVER-1-UPGRADE`:第一台远端归档与包内清单校验通过,按官方备份和安装器流程完成升级;新备份为 `/scert/backups/scert-20261005-140005.579855102`。 +- [✓] `SERVER-1-READY`:`Scert.service`、`Scert-storage.socket` active,`Scert-admin.service` inactive;Scert 仅监听 `127.0.0.1:8443`,严格 `/readyz` 返回 ready。 +- [✓] `SERVER-2-CLEAN`:第二台仍未上传、未安装、未留下本项目部署包;其现有业务边界未纳入本轮升级。 +- [~] `SMTP-CREDENTIAL`:等待用户在 `web.cdis.cn` 完成正式系统通知凭据配置;不代填、不读取、不写入文档或参数。 +- [ ] `SMTP-DELIVERY`:配置保存后执行真实通知、收件箱到达和验证码闭环。 +- [ ] `LOCAL-RESET`:完成本机受保护验证码、密码重置、新密码登录及旧会话失效验证。 +- [ ] `SSL-PUSH`:通过有效管理会话向第二台执行正式 SSL 推送并复核目标权限、摘要、`nginx -t` 和 reload。 +- [ ] `SSL-ROLLBACK`:执行可控失败、旧证书回滚、恢复指纹和同幂等键重试。 +- [!] `LINUX-RELEASE-GATE`:邮件、受保护重置、第二台推送回滚及最终公网验收未齐,不得宣布总体上线。 + +### 本轮边界 + +候选包和第一台升级已完成,但构建、测试或 `/readyz` 不能替代真实邮件和第二台 SSL 生产验收。历史恢复事务保留现场,禁止手工删除锁或直接改数据库状态。 \ No newline at end of file diff --git a/doc/Scert整改合并优化清单.md b/doc/Scert整改合并优化清单.md index 115a41f..766231d 100644 --- a/doc/Scert整改合并优化清单.md +++ b/doc/Scert整改合并优化清单.md @@ -3772,3 +3772,21 @@ Smail 已从历史 502 状态恢复,系统通知授权页面可用;当前唯 - [!] Linux 总体生产上线门禁继续未关闭。 本节不记录密码、授权码、Cookie、令牌或私钥;Windows 环境不在本轮范围。 + +## 2026年10月5日 22:02 当前代码候选包升级复核 + +### 本轮任务状态 + +- [✓] 后端全量测试、`go vet` 和前端 338 项回归均通过;当前 Linux 候选源码提交为 `9cf01ad1ab45a5c42464cad4502fd66cd99a95ca`。 +- [✓] 按正式发布脚本仅生成 `linux-amd64` 候选包;清单标记 `source_dirty=false`、`local_path_check=passed`,归档 SHA-256 为 `ff8773849ca404bb1b73e272aaa5a7de4ee9a395955c2cd20e29b40df68559b9`。 +- [✓] 候选包 Linux 目录 22 项清单逐项校验通过,未包含 Windows、桌面端、动态库、证书私钥或其他敏感文件类型。 +- [✓] 第一台 `8.137.23.95` 已按已登记 SSH 主机指纹上传并核对远端归档摘要;远端解包后的 `SHA256SUMS` 全部通过。 +- [✓] 升级前按官方流程创建备份 `/scert/backups/scert-20261005-140005.579855102`,随后使用 `install-linux.sh --source-dir` 完成升级;没有操作第二台或删除第一台历史备份。 +- [✓] 升级后二进制摘要与发布包一致;`config validate`、`nginx -t`、服务状态、监听边界和严格 HTTPS `/readyz` 均通过。 +- [!] `scert-nginx` 仍为独立显式激活组件,普通安装器不安装,符合当前部署边界;第二台正式 SSL 推送尚未开始。 +- [ ] SMTP 敏感凭据、真实通知投递、收件箱到达、验证码、本机受保护重置和旧会话失效仍未完成。 +- [!] 历史中断事务仍需 `Scert-admin` 本机人工核查;禁止自动删锁、数据库直改或伪造恢复成功。 + +### 当前结论 + +第一台已运行当前代码的 Linux 候选包并通过升级后就绪复核;这只关闭第一台部署包和服务就绪检查,不关闭邮件、受保护重置、第二台 SSL 推送回滚及最终生产门禁。Windows 环境继续不在本轮范围。 \ No newline at end of file