Files
zyt/artifacts/prescription-ai-visibility-validation.md
T
2026-10-17 16:51:48 +08:00

52 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 处方 AI 一致度授权:验收记录
日期:2026-10-17。
## 用户确认范围
仅控制“与 AI 一致度”、一致度详情(逐味对照、贡献、差异等)与一致度统计,保留 AI 分析报告。授权对象可以是指定系统角色,也可以是具体后台用户,任一命中即可。
## 完成行为
- 新增后台“系统设置 → 处方AI一致度授权”页面,使用角色、用户两个可搜索多选框配置名单。
- 默认空名单对所有账号隐藏,包括 root;管理策略的权限与查看分数的权限分开。
- 服务端每次读取检查有效账号与实时角色归属。原有报告动作权限、患者/处方/来源范围继续执行,白名单不会扩大数据范围。
- 未授权账号的状态、历史和详情响应移除一致度及其派生数据,统计请求在聚合前拒绝;模型报告、AI 候选方案、进度、来源、重试、重新分析与复核保留。
- 桌面按服务端明确的布尔能力控制列、详情、导航和统计;缺失、失败按不可见处理。撤权后清理旧图表、比较原文、缓存、提示与可访问数据,旧异步回调不会恢复分数。
- 最终复核补齐了桌面缓存中比较原因、原因码、药材字典版本与基线序列化字段的清理,并增加保留报告/生成失败说明、不修改原输入的回归。
策略变更在下一次能力/状态/报告读取时反映到桌面;没有新增推送通道。
## 验证
| 范围 | 实际结果 |
| --- | --- |
| 最终桌面核心 AI 组合(主代理复跑) | 250 passed,14.57s,exit 0 |
| 桌面外围权限/处方界面(独立进程) | 32 passed |
| 后台实际 Vue setup/API 模拟(主代理复跑) | 8/8 passed |
| PHP 纯离线权限/投影(主代理复跑) | 22 checks passed |
| 隔离 MySQL 真实 ORM/Cipher/Logic/Controller(主代理复跑) | 113 checks passed |
| 后端 worker Pipeline / 旧进度 schema | 125 / 111 checks passed |
| 后端比较、统计、进度、配置回归 | 通过,详见后端报告 |
| Ruff、PHP lint、限定任务文件 diff 检查 | 通过 |
| 本地后台浏览器与桌面离屏截图 | 已检查授权/受限、报告保留、重试/复核、统计拒绝 |
临时 MySQL 仅绑定 127.0.0.1:33447,独立初始化且不读取生产配置;临时数据库由测试清理,进程已由主代理正常关闭。未调用生产数据库、模型接口或发布流程。
已知验证边界:将桌面核心与 ShellWindow 外围组放在同一进程运行时,最后一组发生 Qt 阻塞;分进程全部通过。后台全量类型检查有 61 项范围外错误,新增文件的严格模板类型检查通过。当前工作区还有其它任务在修改订单辅方袋数,本验收没有修改其文件;最终 diff 检查限定本任务文件。
## 上线与配置
代码尚未部署。需要执行 [幂等迁移](../server/database/migrations/2026_10_17_prescription_ai_agreement_visibility.sql),部署服务端及后台,并更新桌面端。迁移创建菜单和空策略,不自动把任何角色或账号加入查看名单。
管理员进入“系统设置 → 处方AI一致度授权”,选择角色或用户并保存后,相应账号在下次读取时显示一致度。已有处方和报告无需重新生成。
## 交付与预览
- [后端实施与测试](prescription-ai-visibility-backend-implementation.md)
- [后台实施与测试](prescription-ai-visibility-admin-implementation.md)
- [桌面实施与测试](prescription-ai-visibility-desktop-implementation.md)
- [后台授权配置预览](prescription-ai-visibility-admin-local.png)
- [受限账号处方列表](prescription-ai-visibility/list-restricted.png)
- [受限账号保留的报告](prescription-ai-visibility/report-restricted.png)