补充Linux上线加速任务与整改进度

记录源码回归、双机现场复核、第二台数据与部署包清理结果,以及后续SSL推送和上线门禁任务。
This commit is contained in:
xuans 2026-10-04 18:53:04 +08:00
parent 6e2baf3c91
commit e2cef733ee
3 changed files with 75 additions and 0 deletions

View File

@ -2785,3 +2785,25 @@ SQLite 新测试程序 SHA-256:4c81656fae63a2eebad999d58e6a79e63e6f441810e02ce
- `/scert/data/scert.db`、`/scert/backups`、`/ssl/scert`、`/etc/nginx` 均仍存在;本次清理没有删除业务数据库、证书、备份或 Nginx 配置。
- 清理前后 Nginx 配置语法检查通过;Nginx 和 `Scert-storage.socket` 保持 active。旧版 `Scert.service` 仍因数据库版本 22 高于程序支持的版本 21 而失败。
- 结论:本次仅完成部署包和事务残留清理,未完成 SSL 推送验收,也未改变第二台仅作为推送目标的边界。
## 2026年10月4日 接手加速整改复核
### 当前任务状态
- [✓] 已阅读整改合并清单和任务执行清单,当前范围固定为 Linux/Web;第一台用于部署测试,第二台仅用于 SSL 推送测试。
- [✓] 当前源码回归通过:后端全量测试、`go vet`、前端 338 项测试、前端生产构建和差异检查均通过。
- [✓] 第一台真实服务复核通过:Scert、存储 Socket、Nginx active,Scert 和 MySQL 仅回环监听,`/readyz` 返回 ready。
- [✓] 第二台 Scert 自有数据、备份和日志已清空;第二台未安装当前候选包,部署包扫描为空。
- [!] 第一台 SMTP 仍关闭,验证码、邮件送达和本机重置闭环未通过。
- [ ] 第二台正式 SSL 推送、Nginx 校验与重载、故障回滚、恢复指纹和幂等重试未完成。
- [ ] 三数据库首次 Web、DNS/ACME 正负向和公共 HTTPS/SNI 未完成。
- [!] 历史恢复事务继续等待正式人工处置,未自动接管、删锁或伪造成功。
- [!] 当前记录不构成生产上线通过证明。
### 下一步
1. `[~]` 准备正式证书部署入口并选择普通业务域名。
2. `[ ]` 通过第一台正式 Web/API 流程执行双机 SSL 推送和结果记录。
3. `[ ]` 在第二台执行可控失败、回滚恢复和幂等重试验证。
4. `[!]` 用户在指向第一台的管理入口输入系统通知密码后,继续验证码和本机密码重置闭环。
5. `[ ]` 完成三数据库、DNS/ACME、公共 HTTPS 和最终复审。

View File

@ -2719,3 +2719,29 @@ P0-05 从 `[!]` 调整为 `[~]`,并未标记完成;P0-04 剩余门禁和全
- [✓] 第二台继续限定为 SSL 推送测试目标,不重新安装当前 Scert 项目候选包。
- [!] 第二台旧版 Scert 服务仍受数据库版本不兼容影响而失败;该结果不能标记为服务恢复成功。
- [~] SSL 推送、Nginx reload、故障回滚、恢复后指纹核验和幂等重试仍待完成。
## 2026年10月4日 当前接手加速整改与上线任务清单
### 已完成
- [✓] 重新阅读合并优化清单并核对当前 `main` 工作区,未发现未提交源码改动。
- [✓] 后端全量测试、`go vet`、前端 338 项测试、前端生产构建和差异检查通过。
- [✓] 第一台 `8.137.23.95` 服务、回环监听、Nginx 和 `/readyz` 复核通过。
- [✓] 第二台 `45.136.13.241` 的 Scert 自有数据目录 `/scert/data`、`/scert/backups`、`/scert/log` 已清空。
- [✓] 第二台 `/scert`、`/var/tmp`、`/tmp` 已复核无本项目部署包和安装临时物;Nginx 与证书现场保留。
### 上线门禁
- [!] 第一台 SMTP 未启用,真实发信、验证码和本机密码重置闭环待用户在第一台入口完成凭据输入后复核。
- [~] 正式证书部署流程待执行:普通业务域名正向推送、第二台 `nginx -t`、reload、失败回滚、恢复指纹和幂等重试。
- [ ] 三数据库首次 Web 初始化和重启后重新登录持久化待执行。
- [ ] DNS/ACME 正负向、公共 HTTPS/SNI、证书历史恢复和最终公共入口待执行。
- [!] 历史恢复事务保留人工处置状态,不删除锁或改写终态。
- [!] 总体生产门禁继续保持未关闭。
### 本轮执行原则
- 只处理 Linux/Web;第二台不安装当前 Scert 候选包。
- 不使用 `-k`、`--insecure`、强制 IP TLS 或未核验 SSH 主机。
- 不把构建、单元测试、HTTP 200 或局部回环结果写成生产验收。
- 不记录服务器密码、SMTP 密码、验证码、私钥或令牌。

View File

@ -3329,3 +3329,30 @@ P0-11 生产验收门禁
- [~] 第二台 SSL 推送、Nginx 重载、故障注入、失败回滚和恢复后证书指纹核验仍待执行;不得把本次部署包清理记录当作推送测试通过。
当前结论:第二台已清除本轮项目部署包及事务残留,但业务数据和证书现场保持不变;总体生产验收仍未通过。
## 2026年10月4日 当前接手加速整改与上线任务清单
本轮继续只处理 Linux 与 Web,不处理 Windows。第一台 `8.137.23.95` 用于主部署测试,第二台 `45.136.13.241` 只用于 SSL 推送、Nginx 重载、故障回滚和恢复验证,不安装当前 Scert 项目候选包。
### 本轮状态
- [✓] 已阅读本清单、任务执行清单和 Linux 生产流程记录,按当前工作区及真实服务器状态重新划分上线门禁。
- [✓] 仓库 `main` 工作区干净;后端 `go test -p 1 -count=1 -timeout=12m ./...`、`go vet ./...`、前端 338 项测试、前端生产构建和 `git diff --check` 均通过。
- [✓] 第一台服务复核通过:`Scert.service`、`Scert-storage.socket`、`nginx.service` active,Scert 仅监听 `127.0.0.1:8443`,MySQL 仅监听回环地址,`/readyz` 返回 ready。
- [✓] 第二台已清空 Scert 自有 `/scert/data`、`/scert/backups`、`/scert/log` 内容,并复核 `/scert`、`/var/tmp`、`/tmp` 未留下本项目部署压缩包、解包目录、安装事务目录或恢复临时目录。
- [✓] 第二台 Nginx 配置检查通过并保持运行,`Scert-storage.socket` active;未删除 `/ssl/scert`、`/etc/nginx` 或其他共享业务现场。
- [!] 第一台 `scert.json` 的 SMTP 仍为关闭状态,真实系统邮件、验证码送达、受保护本机重置和新密码登录仍不能宣称通过。
- [ ] 通过正式 Web/API 证书部署流程完成第二台 SSL 推送、`nginx -t`、Nginx reload、故障回滚、恢复后证书指纹核验和幂等重试。
- [ ] 完成 SQLite、MySQL、PostgreSQL 三数据库首次 Web 初始化、重启后重新登录持久化及清缓存复测。
- [ ] 完成 DNS/ACME 正负向矩阵、公共域名严格 HTTPS/SNI、证书历史恢复和最终入口复核。
- [!] 历史 `recovery_required` 事务继续按产品本机人工处置边界保留,不自动接管、不删除锁、不伪造成功。
- [!] 总体生产验收仍未通过;构建、单元测试、回环 `/readyz` 和局部 Nginx 检查均不能替代真实业务门禁。
### 下一步执行顺序
1. `[~]` 准备正式证书部署入口,先选择状态为 `valid` 的普通业务域名,不使用管理域名作为正向测试对象。
2. `[ ]` 从第一台真实 Web/API 会话触发证书部署,记录任务、尝试、双机结果和证书指纹。
3. `[ ]` 在第二台注入可控配置校验或 reload 失败,验证产品停止策略、失败回滚和站点恢复。
4. `[ ]` 重复同一部署验证幂等性、锁释放和不产生部署包/临时目录残留。
5. `[!]` 等待用户在明确指向第一台的入口填写系统通知密码;不代填、不读取、不保存密码,随后完成验证码和本机重置闭环。
6. `[ ]` 完成三数据库、DNS/ACME、公共 HTTPS 和最终复审后,才允许关闭生产门禁。