From 8e839227bb1e0d89098f48950e73c459b35a96ab Mon Sep 17 00:00:00 2001 From: smail Date: Sat, 26 Sep 2026 00:22:10 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=85=E7=AE=A1=E7=90=86=E5=91=98?= =?UTF-8?q?=E5=88=86=E7=BB=84=E5=A4=9A=E9=80=89=E4=BA=91=E7=AB=AF=E9=94=AE?= =?UTF-8?q?=E9=BC=A0=E5=A4=8D=E6=A0=B8=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/云端全项目测试报告.md | 46 +++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/docs/云端全项目测试报告.md b/docs/云端全项目测试报告.md index c8ee39e..41b8e4d 100644 --- a/docs/云端全项目测试报告.md +++ b/docs/云端全项目测试报告.md @@ -361,3 +361,49 @@ smail/ - [✓] 三个指定外部地址各一次实际验证码投递,对端接收及失败冷却重试证据齐全。 - [✓] 最终数据库、程序摘要、服务状态及本机恢复边界核对。 - [!] 外部邮箱最终入箱和持有人验证码验证尚未完成;其余长期调度、Windows 提权 IPC、外部插件及系统文件选择器边界保持不变。 + +## 2026-09-26 管理员分组多选专项复核 + +### 范围与结论 + +本轮从 2026-09-25 23:49 开始,修复版本为 `12cd774816a31a2df0417c3a20027f513e24359a`,已推送并部署到云端 `/opt/smail`。本节仅记录管理员分组多选专项,不代表全项目验收完成。前文 9 月 20 日的双 SQLite、接口和脚本检查均为历史记录,不能作为当前数据库架构或浏览器键鼠验收的依据。 + +本轮保留连续排障现场,没有清空测试数据库,没有直接查询或修改数据库。业务操作全部通过浏览器鼠标、键盘完成;SSH 仅用于 Smail 部署及运行状态检查,没有操作同机其他项目。助手使用独立浏览器上下文,没有刷新或关闭用户正在手工编辑的页面。 + +### 修复内容 + +- 管理员分组改为直接可见的原生复选框,普通用户改为单选按钮,不再依赖多选下拉交互。 +- 编辑中的角色决定可选分组数量,不再读取旧的持久化角色来限制当前草稿。 +- 编辑用户内先“应用到编辑”,再通过主编辑“确认”将角色和分组在同一后端事务保存;取消主编辑不保存草稿。 +- 列表独立“分组”入口保留直接保存;分组及成员归属仍由超级管理员维护,不扩大普通管理员权限。 +- 旧版本通过键盘曾可保存管理员多组,因此没有证实用户原始鼠标多选故障的底层原因;本轮验证的是新复选框交互及修复后的完整保存流程。 + +### 浏览器键鼠复核 + +| 状态 | 场景 | 实际结果 | +| --- | --- | --- | +| [✓] | 已有管理员多选 | 超管编辑 `reviewadmin`,鼠标勾选默认、验收甲、验收乙三组,应用并确认保存;重新打开仍为三组。 | +| [✓] | 列表独立分组保存 | 取消默认组并保存,重新打开确认仅保留甲、乙两组。 | +| [✓] | 编辑草稿取消 | 在编辑中加入默认组并应用,然后取消主编辑;重新打开仍只有甲、乙两组。 | +| [✓] | 管理员降级限制 | 两组状态下改成普通用户,确认时明确阻止;分组窗口显示单选,选择甲组后可保存。 | +| [✓] | 普通用户升级并同时配置多组 | 持久化普通用户在编辑中改为管理员,未先保存角色就能勾选甲、乙两组;一次确认成功保存角色与分组。 | +| [✓] | 管理员重新登录 | `reviewadmin` 重新登录后显示管理员角色,用户管理只显示其所属甲、乙两组,不显示默认组。 | +| [✓] | 普通管理员界面权限 | 乙组内可打开普通成员 `reviewb` 的编辑窗口,本人管理员行编辑禁用;没有列表分组按钮,普通成员编辑内没有角色选择和分组管理入口。仅查看并取消,未修改该成员。 | + +最终 `reviewadmin` 保持管理员角色、所属甲乙两组。最后已取消普通成员编辑并执行测试账号注销;用户自己的页面未操作。 + +### 构建与部署证据 + +以下属于构建和部署证据,不替代上面的业务验收: + +- `git diff --check`、前端构建、Linux Go 三程序构建及现有打包流程完成;未运行 API 或辅助脚本业务测试。 +- 发布包:`Smail_linux_amd64.tar.gz`,SHA-256 为 `2a2793fa20f7b597fbbfeb4453f36c20f68cdf80bf1d955dc6dd5bd52b6f77ba`。 +- 云端主程序:`/opt/smail/smail`,SHA-256 为 `c06c5514798c97005137222aac9e708cf01ead6c248645eac3d10e2045d80a57`,与本地构建一致。 +- 2026-09-26 00:18 再次通过交互式 SSH 确认 `smail` 为 `active`,8001、8002 端口处于监听状态。 + +### 尚未覆盖 + +- [ ] 新原子编辑的过期版本、并发编辑冲突拒绝,目前仅有源码审查,未完成浏览器并发复核。 +- [ ] 普通用户登录后的分组隐藏专项复核。 +- [ ] 系统通知 SMTP 图形客户端真实发信以及安全码、外部邮箱等完整关联回归。 +- [!] 全项目其余验收门槛仍需独立闭环,不因本次分组专项通过而标记上线验收完成。