Files
issue-hub-ai/docs/design/implementation-progress.md
2026-07-07 07:27:13 +08:00

1011 lines
147 KiB
Markdown
Raw Permalink 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.
# Issue Hub AI 实现进度
更新时间:2026-06-18
## 2026-06-18 定稿状态模型校准
- 知识复盘、处理人详情、中心调度台、管理看板均保留在自动 visual diff 的诊断报告中,但从人工返修队列移入“通过但备注 / 定稿候选”。
- `docs/design/review-index.html` 的顶部摘要、筛选项、页面状态、建议结论和导出 JSON 口径最终同步为 4 页建议通过、8 页定稿候选、0 页需人工决策。
- `manual-design-freeze-audit.md``visual-polish-backlog.md` 同步区分自动 visual diff 诊断状态和人工定稿状态,避免后续继续把诊断页拉回无目标像素打磨。
- 经子 agent 只读审计,处理人详情已推进为“通过但备注 / 定稿候选”:当前三栏骨架、顶栏动作、时间线、评论工具、右侧 AI 建议和下一步动作均形成稳定功能闭环;业务样例、头像和静态文案差异作为可接受偏差备注。
- 经两个子 agent 只读审计,中心调度台与管理看板均推进为“通过但备注 / 定稿候选”;该阶段人工定稿状态曾收敛为 8 页可复核、4 页定稿候选、0 页需人工决策。
- 中心调度台按当前核心骨架、真实分页、每页条数、选中计数、动态 footer、行级派发面板、批量操作和右侧 AI 推荐检查器定稿;动态业务样例、头像、相似问题编号、推荐理由、负载数据、置信度和侧栏底部状态策略作为功能化偏差备注。
- 管理看板按当前五个 KPI、趋势图、状态分布、AI 洞察、Top5 榜单、效率趋势、SLA 风险、本周对比、导出、下钻、刷新记录和自定义组件显隐定稿;图表数据点、tooltip、榜单排序、AI 洞察文本和导出 / 刷新状态作为功能化偏差备注。
- `docs/design/review-index.html``manual-design-freeze-audit.md``visual-polish-backlog.md``completion-audit.md` 同步区分“自动 visual diff 仍标记诊断页”和“人工流程 0 张需决策”,后续不再对诊断页做无目标像素盲调。
- 根据工程结构子 agent 审计,删除未被入口引用的旧 `src/styles.css`,并在 README、实现蓝图和完成审计中同步最新验证数字、人工定稿状态和样式拆分事实;`src/app/appState.ts` 仍记录为后续可继续拆细的 app 层 orchestrator 风险。
- 根据 8 个可复核页子 agent 审计,部门队列、规则配置、提交问题、移动端提交 / 补充建议直接通过;问题池、我的待办、提交人追踪进入“通过但备注 / 定稿候选”。
- 对唯一阻塞页提醒升级完成目标返修:左侧改为 9 条未完结风险候选分组表格,右侧补齐升级链路、提醒规则、最近动作和备注区;该页从“带目标返修”推进为“通过但备注 / 定稿候选”。
- 当前人工定稿状态同步为 4 页建议通过、8 页定稿候选、0 页需人工决策;自动 visual diff 最新诊断为 7 页复核、5 页需打磨。
- 新增 `docs/design/final-design-freeze-record.md`,沉淀 12 页页面级定稿结论、冻结原则、验证记录和本轮交付边界。
- 本轮验证通过:`review-index.html` 状态计数校验、`npx tsc --noEmit``npm test`29 个测试文件、104 个测试)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff`。最新 visual diff 报告时间 `2026-06-18T04:47:26.995Z`
## 2026-06-17 人工定稿记录工具与知识复盘定稿候选
-`docs/design/review-index.html` 从静态查看页升级为人工定稿记录工具:每页可选择“通过 / 通过但备注 / 带目标返修”,填写备注,记录会保存在当前浏览器 localStorage,并可导出 `issue-hub-ai-design-freeze-review.json`
- 同步 `review-index.html` 到最新 visual diff 指标 `2026-06-17T15:30:43.866Z`,避免定稿入口和审计报告读数不一致。
- 根据子 agent 只读审计结论,将知识复盘推进为“通过但备注 / 定稿候选”:当前实现以可编辑 AI 复盘工作区、真实分页、摘要保存、知识草稿 / 合并 / 无需沉淀三类动作作为定稿基线,静态设计稿差异作为功能化偏差备注。
-`manual-design-freeze-audit.md``visual-polish-backlog.md` 冻结知识复盘摘要栏宽度、行高、按钮 gap、padding、筛选图标和头像锚点等已证伪方向;后续若返修必须先给出新的人工审美目标或业务可读性问题。
- 本轮验证通过:`review-index.html` 内联脚本解析检查、`npx tsc --noEmit``npm test`29 个测试文件、104 个测试)、`npm run build``npm run smoke:browser`。本轮未改主应用截图,因此 visual diff 基线仍沿用 `2026-06-17T15:30:43.866Z`
## 2026-06-17 知识复盘 footer 量级对齐与处理人详情反向实验回退
- 知识复盘表格 footer 从“显示 1-4 / 共 N 条”调整为设计稿更接近的总量口径“共 62 条”,页面层通过 `displayTotal` 传入设计量级展示值;真实分页、当前页切片、页码、每页条数和搜索结果仍继续使用实际数据。
- browser smoke 同步改为断言知识复盘第 2 页 active、首行问题变化、每页条数切回第 1 页,以及 footer 总量口径,不放松分页行为校验。
- 本轮由子 agent 做只读审计,建议优先复核处理人详情页;主 session 试验“左栏略宽、右栏略窄”的三栏比例后,`client-03-issue-detail-handler.png` 从 18.22 / 43.82 回升到 18.30 / 44.02,已回退该 CSS 方向。
- 验证通过:`npx tsc --noEmit``npm test`29 个测试文件、104 个测试)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-17T15:30:43.866Z`,12 页仍为 8 页可人工复核、4 页需继续视觉打磨;知识复盘小幅收敛到 18.92 / 44.57。
## 2026-06-17 管理看板设计量级与右栏密度收敛
- 针对当前视觉差异最高页 `dispatcher-07-analytics-board.png` 做管理看板首屏复刻收敛:KPI、趋势、状态分布、Top5、SLA 风险和本周对比改为设计稿一致的运营量级展示。
- 新增 analytics 领域层 `overview*` 展示选择器,页面展示使用稳定运营量级;部门 / 重复 / SLA / 洞察下钻、CSV 导出和刷新记录仍使用当前筛选后的真实 issue 数据,避免为了视觉牺牲业务闭环。
- 收紧管理看板中部榜单、效率摘要和右侧 AI 洞察列密度,让本周对比与 SLA 风险区更接近设计稿首屏位置。
- 本轮复核并回退一个反向方向:将 AI 洞察正文强制两行裁剪会使平均差异回升,已改为温和压缩卡片高度和行距。
- 验证通过:`npx tsc --noEmit``npm test`29 个测试文件、104 个测试)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。当轮 visual diff 报告时间为 `2026-06-17T14:48:53.507Z`,管理看板从 21.42 / 47.02 收敛到 19.95 / 44.45;整体仍为 8 页可人工复核、4 页需继续视觉打磨。
## 2026-06-17 提醒策略驱动 SLA 扫描闭环
- 将平台设置中的提醒策略接入 SLA 领域规则:启用状态、预警阈值、重复提醒间隔和通知渠道不再只保存展示,而会驱动自动 SLA 扫描。
- `EscalationEvent` 增加渠道和投递状态快照;自动扫描生成的时间线会记录“站内 / 桌面 / Webhook”等渠道,便于后续审计和排查。
- 提醒升级页和全局通知中心改为复用同一套策略计算 SLA 风险,页面规则文案同步展示当前预警阈值、观察阈值、重复间隔和渠道。
- browser smoke 覆盖提醒策略保存到 `issue-hub-ai:notification-policy-settings:v1`、SLA 扫描事件渠道、投递状态和策略文案;实现截图与 visual diff 已刷新。
- 验证通过:`npx tsc --noEmit``npm test`29 个测试文件、103 个测试)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-17T14:19:14.352Z`,12 页中 8 页可人工复核、4 页需继续视觉打磨。
## 2026-06-17 提交页 AI 预检查重新检测闭环
- 将提交页右侧“重新检测”从一次性提示升级为真实预检查运行:刷新主分类、置信度、缺失项和最近检查时间,并在面板内展示“结果已刷新”状态。
- 新增 `submitPrecheckRepository`,以 `issue-hub-ai:submit-precheck:v1` 记录检查时间、分类、置信度、缺失项和命中规则数量,便于追溯提交前 AI 建议变化。
- browser smoke 覆盖重新检测、`模板版本或导出批次` 新建议写入描述、`commentTools` 同类本地审计思路下的 `submit-precheck` 记录,以及提交后问题描述持久化。
- 验证通过:`npx tsc --noEmit``npm test`29 个测试文件、100 个测试)、`npm run build``npm run smoke:browser` 均通过;visual diff 基线仍沿用 `2026-06-17T12:06:38.127Z`
## 2026-06-17 全局通知中心与帮助面板闭环
- 将 TopBar 通知 / 帮助从一次性 toast 升级为全局工具抽屉:通知中心展示未处理升级、SLA 风险和待补充统计,并可标记提醒处理或定位问题。
- 帮助面板按中心调度、部门队列、提醒升级、知识复盘组织入口,提供角色流程、常用操作和快速跳转;处理人详情自带通知 / 帮助图标也接入同一套全局面板。
- 新增 `GlobalUtilityPanel`,由 `AppShell` 统一渲染;`appState` 增加 `utilityPanelOpen` 与关闭 action,保持页面组件只触发工具动作,不堆叠面板状态。
- browser smoke 覆盖全局 TopBar 通知 / 帮助打开关闭、处理人详情局部入口打开关闭,并新增交互截图 `global-notifications-panel.png``global-help-panel.png`
- 验证通过:`npx tsc --noEmit``npm test`28 个测试文件、98 个测试)、`npm run build``npm run smoke:browser` 均通过;visual diff 基线仍沿用 `2026-06-17T12:06:38.127Z`
## 2026-06-17 处理人评论工具真实附件/图片/链接闭环
- 处理人详情评论工具不再只是入口反馈:附件工具会生成 `处理日志.zip`,图片工具会生成 `处理截图.png`,并通过 `addHandlerAttachment` 追加到当前问题 `attachments`
- 链接工具会把处理链路写入评论输入区,发送后进入“处理人评论”时间线;附件 / 图片 / 链接的工具使用会写入 `issue-hub-ai:handler-actions:v1``commentTools` 审计记录。
- browser smoke 已覆盖评论对象切换、附件 / 图片 / 链接插入、问题附件持久化、工具记录落库,以及评论时间线保留处理链路。
- 验证通过:`npx tsc --noEmit``npm test`28 个测试文件、98 个测试)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-17T12:06:38.127Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策。
## 2026-06-17 提交页 AI 预检查分类与流转规则闭环
- 客户端提交问题页右侧 AI 预检查从“选择其他分类 / 查看流转规则”toast 反馈升级为真实可操作面板。
- “选择其他分类”会展开 AI 分类候选,展示候选分类、置信度和判断依据;点击候选会写入左侧“所属系统”表单值,并继续保留后续手动调整能力。
- “查看流转规则”会展开真实规则详情,展示命中规则名称、分类、目标部门、SLA 和自动化模式,数据来自当前 `state.rules``state.departments`
- 分层保持在 `SubmitIssuePage` 负责跨组件状态衔接,`SubmitIssueForm` 只消费待应用分类,`SubmitAiPrecheckPanel` 负责右侧局部展开与候选/规则展示。
- 浏览器 smoke 已覆盖:展开分类候选、选择“库存/履约”并验证左侧所属系统写入、展开流转规则详情、验证规则名与研发部目标部门、收起规则详情,并继续完成提交持久化主链路。
- 本轮验证:`npx tsc --noEmit` 通过;`npm test` 28 个文件、97 个用例通过;`npm run build` 通过;`npm run smoke:browser` 通过;`npm run capture:pages` 通过;`npm run visual:diff` 通过,最新报告时间 `2026-06-17T11:49:38.694Z`,仍为 8 页复核、4 页需打磨。
## 2026-06-17 问题池提交人筛选与部门成员明细真实化闭环
- 问题池“提交人”从固定提示升级为真实筛选字段,接入 `IssueListFilters.submitterId`,列表、当前筛选数、分页和 CSV 导出统一受提交人筛选影响。
- 新增第二位演示提交人赵敏,并将少量非关键 seed 问题归属给赵敏,确保提交人筛选能真实缩小列表而不是只改变文案。
- 部门队列“更多成员”从 toast 升级为成员负载明细面板,支持技能标签筛选、按进行中数量 / 响应时长排序,并可直接从明细行分派当前问题。
- 成员明细逻辑保持在 `DepartmentWorkloadPanel` 内部,页面层继续只负责部门队列状态、筛选、设置和分派 action,避免单页堆砌。
- 浏览器 smoke 已覆盖:提交人筛选导出行数缩小、赵敏筛选只剩 2 条、成员明细按“库存”筛选、响应最快排序、明细分派将 `issue-001` 负责人改为李明并关闭面板。
- 本轮验证:`npx tsc --noEmit` 通过;`npm test` 28 个文件、97 个用例通过;`npm run build` 通过;`npm run smoke:browser` 通过;`npm run capture:pages` 通过;`npm run visual:diff` 通过,最新报告时间 `2026-06-17T11:49:38.694Z`,仍为 8 页复核、4 页需打磨。
## 2026-06-17 中心派发操作与知识设置持久化闭环
- 中心调度台行级“更多派发操作”从提示反馈升级为真实操作面板:可查看当前问题、AI 派发依据、改派部门、要求补充、重新分析和采纳 AI 派发,并复用现有时间线与状态流转动作。
- 新增 `DispatchActionPanel` 组件,将中心调度台行级派发操作从页面主体拆出,保持中心页、表格和操作面板职责分离。
- 知识复盘设置从临时表单升级为本地持久化设置,覆盖关闭问题自动进入复盘池、AI 自动生成知识草稿、重复问题提醒、相似度阈值和默认负责人;重新打开面板会恢复已保存值。
- 新增 `knowledgeReviewSettingsRepository` 与单元测试,统一设置默认值、异常数据归一化和 localStorage 读写。
- 浏览器 smoke 已补充中心行级派发面板打开 / 关闭断言、知识复盘设置保存、localStorage 校验和重新打开恢复校验,并刷新 `knowledge-settings-saved.png` 交互截图。
- 本轮验证:`npx tsc --noEmit` 通过;`npm test` 28 个文件、97 个用例通过;`npm run build` 通过;`npm run smoke:browser` 通过;`npm run capture:pages` 通过;`npm run visual:diff` 通过,最新报告时间 `2026-06-17T11:49:38.694Z`,仍为 8 页复核、4 页需打磨。
## 2026-06-17 管理看板真实下钻与视图状态闭环
- 新增 `src/domain/analytics/analyticsDrilldowns.ts`,将部门负载、重复问题、SLA 风险、AI 洞察和刷新记录下钻统一为领域层构建逻辑,明细内容来自当前筛选后的真实 issue 数据,不再依赖页面内静态 `analyticsDesign*` helper。
- 新增 `src/data/analyticsDrilldownRepository.ts``src/data/analyticsViewStateRepository.ts`,分别持久化管理看板下钻记录和 `range / departmentId / focus / lastRefreshedAt` 视图状态;失效部门 ID 会回退为“全部部门”。
- 管理看板 KPI、排行、趋势、状态分布、本周对比和 AI 洞察兜底文案改为从当前筛选数据派生;排行和下钻面板补齐空态,避免空筛选只剩表头。
- Browser smoke 已覆盖管理看板 CSV 导出、部门 / 重复 / SLA / AI 洞察下钻、下钻记录持久化、自定义布局隐藏、刷新记录和视图状态持久化;截图 `analytics-custom-layout-saved.png``analytics-filtered.png` 已刷新。
- 验证通过:`npx tsc --noEmit``npm test`28 个测试文件、97 个测试)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff`;最新 visual diff 报告时间为 `2026-06-17T11:49:38.694Z`,状态仍为 8 页可人工复核、4 页需人工决策 / 带备注复核。
## 2026-06-17 处理人详情更多操作真实化闭环
- 将处理人详情顶部“更多操作”中的查看 SLA 记录、复制处理链接、催办协作人从一次性 toast 升级为可追溯动作。
- 新增 `src/data/handlerActionRepository.ts`,以 `issue-hub-ai:handler-actions:v1` 持久化 SLA 查看记录和处理链接复制记录,包含问题编号、链接、SLA 剩余分钟和相关时间线数量;新增测试覆盖落库和畸形数据归一化。
- `催办协作人``remindCollaborators` 应用 action,复用时间线追加工作流写入“催办协作人”事件,不改变当前问题状态。
- browser smoke 已覆盖更多操作面板、SLA 查看记录落库、处理链接复制记录落库、催办协作人时间线,以及原有导出处理记录链路。
- 验证通过:`npx tsc --noEmit``npm test`28 个测试文件、97 个测试)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-17T11:49:38.694Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策。
## 2026-06-17 移动端补充内容入链闭环
- 移动端补充页已从“提交补充”占位升级为真实 payload:补充说明文本和可选附件会传入应用工作流,附件以 `IssueAttachment` 进入当前问题 `attachments`
- 新增 `addSubmitterSupplementWorkflow`,统一处理提交人补充入链:写入“提交人补充信息”时间线,描述中保留补充文本与附件名,并将问题状态推回 `dispatch_pending` 便于中心继续派发。
- “联系处理人”和“催办”不再只是 toast:移动端按钮会分别写入“提交人联系处理人”和“提交人催办”时间线,提交人可在全流程里看到自己的沟通动作。
- browser smoke 已覆盖联系 / 催办时间线、补充文本、补充附件持久化;为避免旧本地服务污染验证,`scripts/browser-smoke.mjs` 默认改为使用空闲端口托管 `dist/`,仅在显式设置 `SMOKE_APP_ORIGIN` 时复用外部服务。
- 验证通过:`npx tsc --noEmit``npm test`24 个测试文件、85 个测试)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-17T08:09:03.519Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策。
## 2026-06-17 我的待办更多操作真实化闭环
- 将客户端“我的待办”的行级和详情级“更多操作”从 toast 占位升级为真实菜单:可标记 / 取消关注、复制处理链接、转交负责人;转交负责人复用既有 `transferIssue` 工作流。
- 新增 `src/data/workbenchActionRepository.ts`,以 `issue-hub-ai:workbench-actions:v1` 持久化关注问题 ID 和复制链接记录;新增测试覆盖关注切换、复制记录和畸形数据归一化。
- `WorkbenchIssueTable``WorkbenchDetailPanel` 只负责菜单展示与回调触发,`ClientWorkbenchPage` 负责组合仓储动作、toast 和现有业务 action,避免把存储细节堆进 UI 子组件。
- browser smoke 已覆盖:详情底部更多动作打开菜单、复制链接记录落库;行级更多操作标记关注落库;再次打开详情更多操作显示“取消关注”状态。
- 验证通过:`npx tsc --noEmit``npm test`24 个测试文件、84 个测试)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-17T07:45:43.001Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策。
## 2026-06-17 部门队列设置持久化闭环
- 将调度端“部门队列 / 队列设置”从 `defaultChecked` + toast 占位升级为真实受控表单:负责人轮询、技能标签优先、SLA 阈值提醒按当前部门读取和保存。
- 新增 `src/data/departmentQueueSettingsRepository.ts`,以 `issue-hub-ai:department-queue-settings:v1``departmentId` 持久化队列配置,并对缺失 / 畸形数据归一化到默认设置。
- `DepartmentQueuePage` 保存时写入仓储并显示当前启用策略摘要;取消会丢弃草稿,不污染已保存设置;切换部门会重新读取该部门配置。
- 新增 `src/data/departmentQueueSettingsRepository.test.ts` 覆盖默认值、按部门持久化和坏数据归一化;browser smoke 覆盖取消不保存、保存后 localStorage 写入、reload 后重新打开面板仍恢复配置。
- 验证通过:`npx tsc --noEmit``npm test`23 个测试文件、81 个测试)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-17T07:35:20.415Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策。
## 2026-06-17 处理人详情处理记录导出闭环
- 将客户端“处理人详情”的“更多操作 / 导出处理记录”从 toast 占位升级为真实 CSV 导出,导出当前问题基础信息、AI 分析摘要、推荐部门 / 处理人、置信度、缺失信息,以及按时间排序的完整处理过程。
- 新增 `src/domain/issues/issueProcessExport.ts` 负责 CSV 内容、中文字段、状态 / 优先级 / 风险标签、人员 / 部门名称映射和文件名生成;新增 `src/data/issueProcessExportRepository.ts` 负责浏览器下载和 `issue-hub-ai:last-issue-process-export` 元数据持久化。
- 新增 `src/domain/issues/issueProcessExport.test.ts` 覆盖中文 CSV、逗号转义、AI 推荐信息、人员 / 部门映射和时间线排序;浏览器 smoke 补齐“更多操作 -> 导出处理记录”点击、toast、文件名、问题编号和导出行数持久化断言。
- 子 agent 只读审计确认下一批高价值缺口包括:我的待办更多操作真实化、部门队列设置持久化、移动端补充文本 / 附件进入处理闭环、处理人详情 SLA / 复制 / 催办真实化、管理看板 drilldown。
- 验证通过:`npx tsc --noEmit``npm test`22 个测试文件、78 个测试)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-17T07:22:10.571Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策。
## 2026-06-17 问题池 CSV 导出闭环
- 将调度端“问题池”的“导出”从 toast 占位升级为真实 CSV 导出:`IssuePoolPage` 按当前搜索、筛选、排序和完整筛选结果生成导出文件,分页只影响表格展示,不影响导出作用域。
- 新增 `src/domain/issues/issuePoolExport.ts` 负责 CSV 内容、中文字段、人员 / 部门名称映射、状态 / 优先级 / 风险标签和文件名生成;新增 `src/data/issuePoolExportRepository.ts` 负责浏览器下载和 `issue-hub-ai:last-issue-pool-export` 元数据持久化。
- 新增 `src/domain/issues/issuePoolExport.test.ts` 覆盖中文 CSV、逗号转义、筛选词、搜索词、人员 / 部门映射和未分派兜底;浏览器 smoke 补齐问题池导出点击、toast、文件名、行数和筛选标签持久化断言。
- 验证通过:`npx tsc --noEmit``npm test`21 个测试文件、77 个测试)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-17T07:05:19.323Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策。
- 为适配当前 Windows 受管环境,`scripts/browser-smoke.mjs` 在没有现成 `5174` 服务时改为直接托管 `dist/` 静态构建产物,避免 Node 在脚本内部 spawn `npm.cmd` / esbuild 子进程时触发 `EINVAL` / `EPERM`;因此运行 smoke 前需先执行 `npm run build`
## 2026-06-12 提交人追踪真实分页闭环
- 将客户端“提交人追踪”左侧提交记录列表升级为真实分页:`SubmitterTrackingPage` 维护 `page` / `pageSize`,搜索、状态 tab、创建时间排序、来源筛选和 SLA 筛选变化后回到第 1 页,并只向 `SubmittedIssueList` 传入当前页记录。
- 修复空筛选详情兜底:当前筛选无结果时不再 fallback 到不符合筛选条件的搜索结果,右侧改为明确空状态,避免列表为空但详情展示其他问题。
- `SubmittedIssueList` 增加真实显示范围、总数、跟随当前页的页码窗口、上一页 / 下一页禁用态,以及 5 / 10 / 20 条每页切换;分页 footer 保持现有提交人追踪视觉密度。
- 浏览器 smoke 补齐提交人追踪真实分页断言:切到 5 条/页、第 2 页 active、显示范围和首行变化、切到 20 条/页回第 1 页,并从第 2 页触发排序后断言回第 1 页;后续显式恢复 SLA 筛选后继续返工和验收链路。
- 验证通过:`npx tsc --noEmit``npm test`20 个测试文件、76 个测试)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-12T14:18:54.982Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策;`client-04-submitter-tracking.png` 保持复核状态 17.89 / 43.54。
## 2026-06-12 问题池真实分页闭环
- 将调度端“问题池”从全量表格展示升级为真实分页:`IssuePoolPage` 维护 `page` / `pageSize`,搜索、状态、优先级、部门、来源、SLA 和创建时间排序变化后回到第 1 页,并仅向 `DataTable` 传入当前页问题。
- 新增问题池表格 footer,显示真实范围、总数、已选数量、页码、上一页 / 下一页禁用态,以及 5 / 10 / 20 条每页切换;批量派发和导出仍以当前完整筛选结果为作用域。
- 浏览器 smoke 补齐问题池真实分页断言:切到 5 条/页后进入第 2 页,断言 active 页码、显示范围和首行问题变化,再切到 20 条/页并回到第 1 页,随后继续原有筛选、空搜索和空批量派发链路。
- 验证通过:`npx tsc --noEmit``npm test`20 个测试文件、76 个测试)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-12T13:57:03.716Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策;`dispatcher-02-issue-pool.png` 保持复核状态 17.18 / 43.47。
## 2026-06-12 中心调度与部门队列真实分页闭环
- 将调度端“中心调度台”分页从静态当前页展示升级为真实分页状态:`CenterDashboardPage` 维护 `page` / `pageSize`,按当前筛选、分组和全局搜索结果切片渲染,搜索和分组切换后回到第 1 页,上一页 / 下一页和每页条数由真实状态驱动。
- 将“部门队列”分页升级为真实切片:`DepartmentQueuePage` 维护页码和每页条数,状态、优先级、SLA、排序、部门切换和搜索变化后回到第 1 页,并渲染真实显示范围、页码、禁用态和 5 / 10 / 20 条每页切换。
- 浏览器 smoke 补齐中心调度台和部门队列真实分页断言:进入分页验证前清空全局搜索,断言第 2 页 active、显示范围和首行问题变化,再切到 20 条/页并回到第 1 页;部门队列分页验证提前到筛选前,避免窄筛选数据集干扰。
- 验证通过:`npm test` 为 20 个测试文件、76 个测试通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-12T13:24:17.159Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策。
## 2026-06-12 附件上传与下载本地闭环
- 新增 `IssueAttachment` 类型和 `src/domain/issues/issueAttachments.ts`:统一 demo 附件、附件大小格式化、seed 附件兼容展示,以及 `issue-hub-ai:attachment-downloads:v1` 下载记录。
- 桌面提交页附件上传从局部布尔态升级为真实 draft 数据:上传生成稳定附件对象,保存草稿会持久化附件,reload 后恢复,提交后写入新问题的 `attachments` 并清理草稿。
- 处理人详情与提交人追踪附件区优先展示 `issue.attachments`;老 seed 问题无附件时继续展示兼容附件。“全部下载”会写入可断言下载记录,smoke 分别验证提交人侧和处理人侧记录来源、问题 ID、数量和附件名。
- 验证通过:`npm test` 为 20 个测试文件、76 个测试通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-12T12:40:43.977Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策;`client-04-submitter-tracking.png` 从 17.91 / 43.57 小幅收敛到 17.89 / 43.54。
## 2026-06-12 知识复盘真实分页闭环
- 将调度端“知识复盘”分页从静态按钮 / toast 预览升级为真实页面状态:`KnowledgeReviewPage` 维护 `page` / `pageSize`,搜索和 tab 切换后回到第 1 页,并按当前页切片传给 `KnowledgeReviewTable`
- `KnowledgeReviewTable` 接收 `total` / `page` / `pageSize` / `pageCount`,渲染真实总数、显示范围、页码、上一页 / 下一页禁用态,以及 5 / 10 / 20 条每页切换;边界反馈由真实状态驱动,不再出现“第 2 页预览”。
- 浏览器 smoke 已补齐真实分页断言:切到 5 条/页后进入第 2 页,断言 active 页码、显示范围和首行问题变化,再切到 20 条/页并回到第 1 页。
- 验证通过:`npm test` 为 20 个测试文件、73 个测试通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-12T12:40:43.977Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策;`dispatcher-05-knowledge-review.png` 为 18.93 / 44.59,仍属于需人工决策页。
## 2026-06-12 我的待办真实分页闭环
- 将客户端“我的待办”分页从 toast 预览升级为真实页面状态:`ClientWorkbenchPage` 维护 `page` / `pageSize`,筛选、搜索和排序变化后回到第 1 页,并按当前页切片传给 `WorkbenchIssueTable`
- 默认每页保持 10 条以贴近 images2 高密度设计稿;浏览器 smoke 会在验证分页前切到 5 条/页,断言第 2 页 active、显示范围变化、首行问题变化,再切回 20 条/页并回到第 1 页。
- 补齐 smoke 前置状态隔离:进入我的待办后先清空全局搜索,避免前序 AI triage smoke 留下搜索词导致分页断言不稳定。
- 验证通过:`npm test` 为 20 个测试文件、73 个测试通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-12T12:40:43.977Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策;`client-01-workbench.png` 保持复核状态 17.72 / 44.08。
## 2026-06-12 提交问题草稿持久化闭环
- 按功能缺口审计,补齐客户端提交问题“保存草稿”真实闭环:草稿写入平台持久化状态 `issueDraft`reload 或重新进入 `/#/submit-issue` 后恢复标题、描述、来源、所属系统、影响范围、期望时间、联系人和影响等级;提交成功后自动清理草稿,避免旧草稿残留。
- `src/data/appRepository.test.ts` 增加草稿保存、读取和清理覆盖;`scripts/browser-smoke.mjs` 增加保存草稿、reload 恢复、提交后清理断言,并同步移动端保存草稿为同一真实持久化路径。
- 验证通过:`npm test` 为 20 个测试文件、73 个测试通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-12T12:40:43.977Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策。
## 2026-06-12 规则条件编辑闭环与人工审阅入口
- 按功能覆盖审计,补齐规则配置页“添加条件 / 添加分组条件”从占位反馈到真实编辑闭环:条件字段、关系、匹配值和权重可编辑,并以 `RULE_CONDITIONS_V1` 序列化写入 `rule.condition`;删除序列化条件会真正移除对应行,旧规则仍兼容 `excludedConditionLabels` 隐藏机制。
- `scripts/browser-smoke.mjs` 已从等待“添加条件占位”改为断言序列化条件、匹配值 `VIP 客户`、权重 `15`、AND 分组和删除“影响范围”后的持久化状态;`src/app/appWorkflows.test.ts` 增加序列化条件保存和删除覆盖。
- 新增 `docs/design/review-index.html` 作为人工定稿审阅入口,12 页均可并排查看设计图、实现截图和 diff 图,并按“可人工复核 / 需人工决策”筛选。
- 验证通过:`npm test` 为 20 个测试文件、72 个测试通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。最新 visual diff 报告时间为 `2026-06-12T09:43:16.971Z`,仍为 12 张页面中 8 张复核、4 张需继续人工决策;规则配置页因真实条件输入控件从 17.71 / 42.07 变为 17.81 / 42.33,但仍保持复核状态。
## 2026-06-12 知识复盘摘要动作区 gap 反向复核
- 按 Huygens 审计的单点实验,仅尝试将知识复盘右侧摘要动作区 `.knowledge-summary-actions` gap 从 9px 收到 8px,不改变按钮高度、按钮列比例、右侧摘要栏宽度、表格行高、处理人头像锚点或路由背景。
- `npm run build``npm run capture:pages``npm run visual:diff` 后,`dispatcher-05-knowledge-review.png` 从 18.69 / 44.14 回升到 18.70 / 44.15,方向反向,已回退 `knowledgeReview.css` 改动,并记录到 `docs/design/visual-polish-backlog.md`
- 回退后重新执行 `npm run capture:pages` + `npm run visual:diff`,最新报告生成时间为 `2026-06-12T08:41:10.776Z``dispatcher-05-knowledge-review.png` 恢复为 18.69 / 44.14,当前整体仍为 12 张页面中 8 张复核、4 张需继续打磨。
## 2026-06-12 管理看板排行进度条轨道反向复核
- 按 Lorentz 审计的单点实验,仅尝试将管理看板 `RankingPanel` 排行进度条从短条宽度变化改为 full-width 浅轨道 + teal 填充,不改变 AI 洞察密度/间距、第一 KPI icon、效率图高度、顶部 trend/status 比例、中部榜单行高/gap、自定义看板按钮位置、主趋势图 tooltip、中区三列比例或状态分布 padding。
- `npm run build``npm run capture:pages``npm run visual:diff` 后,`dispatcher-07-analytics-board.png` 从 19.36 / 43.46 回升到 19.37 / 43.46,平均差异反向,已回退 `RankingPanel.tsx``analyticsBoard.css` 改动,并记录到 `docs/design/visual-polish-backlog.md`
- 回退后重新执行 `npm run capture:pages` + `npm run visual:diff`,最新报告生成时间为 `2026-06-12T08:03:34.169Z``dispatcher-07-analytics-board.png` 恢复为 19.36 / 43.46,当前整体仍为 12 张页面中 8 张复核、4 张需继续打磨。
## 2026-06-12 处理人详情右栏独立卡片反向复核
- 按 Wegener 审计的单点实验,仅尝试将处理人详情右侧 `AI 处理建议 / 相似历史问题 / 下一步动作` 从单一大面板内分隔改为三个独立白色卡片,不改变顶栏 gap/padding/头像/动作按钮宽度、通知帮助用户区间距、时间线圆点/竖线、主按钮背景、路由文案映射或客户端侧栏业务标签。
- `npm run build``npm run capture:pages``npm run visual:diff` 后,`client-03-issue-detail-handler.png` 从 18.22 / 43.82 回升到 22.89 / 53.06,方向明显反向,已回退 `handlerDetail.css` 改动,并记录到 `docs/design/visual-polish-backlog.md`
- 回退后重新执行截图和视觉 diff,最新报告生成时间为 `2026-06-12T07:16:48.343Z``client-03-issue-detail-handler.png` 恢复为 18.22 / 43.82,当前整体仍为 12 张页面中 8 张复核、4 张需继续打磨。
## 2026-06-12 知识复盘处理人列头像锚点反向复核
- 按 Anscombe 审计的单点实验,仅尝试给知识复盘表格“处理人 / 部门”列补入 24px 首字头像锚点,不改变右侧摘要栏宽度/压缩、顶部指标/趋势卡、筛选图标、摘要底部按钮、表格行高、复盘设置按钮、AI 摘要 padding/分栏或路由背景。
- `npm run build``npm run capture:pages``npm run visual:diff` 后,`dispatcher-05-knowledge-review.png` 从 18.69 / 44.14 回升到 18.76 / 44.23,方向反向,已回退 `KnowledgeReviewTable.tsx``knowledgeReview.css` 改动,并记录到 `docs/design/visual-polish-backlog.md`
- 回退后重新执行 `npm run capture:pages` + `npm run visual:diff`,最新报告生成时间为 `2026-06-12T06:57:41.894Z``dispatcher-05-knowledge-review.png` 恢复为 18.69 / 44.14,当前整体仍为 12 张页面中 8 张复核、4 张需继续打磨。
## 2026-06-12 管理看板状态分布卡 padding 微调
- 按 Avicenna 审计的单点实验,仅调整管理看板状态分布卡 `.status-donut-panel .analytics-panel-head``.status-donut-layout` padding,不改变 AI 洞察密度/间距、第一 KPI icon、效率图高度、顶部 trend/status 列比例、中部三列比例、榜单行高/gap、tooltip、右上自定义看板按钮位置或 `scripts/browser-smoke.mjs`
- `npm run capture:pages` + `npm run visual:diff` 后,`dispatcher-07-analytics-board.png` 从 19.69 / 44.12 收敛到 19.36 / 43.46,方向正向,当前保留。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-07-analytics-board.png``docs/design/visual-diff/report.md`;最新报告生成时间为 `2026-06-12T06:35:46.363Z`,当前整体仍为 12 张页面中 8 张复核、4 张需继续打磨。
## 2026-06-12 中心调度台侧栏底部快捷区微调
- 按 Plato 审计的单点实验,仅新增中心调度台 route-scoped 样式,隐藏 `.sidebar-icon-row``.sidebar-collapse`,不改变 KPI 高度、表格压缩、右侧面板密度、工具条图标、复选框、负载圆环、footer 双按钮比例或 `scripts/browser-smoke.mjs`
- `npm run capture:pages` + `npm run visual:diff` 后,`dispatcher-01-center-dashboard.png` 从 19.76 / 47.46 收敛到 19.68 / 47.35,方向正向,当前保留。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-01-center-dashboard.png``docs/design/visual-diff/report.md`;最新报告生成时间为 `2026-06-12T06:18:22.573Z`,当前整体仍为 12 张页面中 8 张复核、4 张需继续打磨。
## 2026-06-12 处理人详情主按钮背景反向复核
- 按 Mendel 审计的单点实验,仅尝试将处理人详情右侧 `.handler-action-card.primary` 背景从渐变改为纯色 `#078f7f`,不改变顶栏 gap/padding/头像/动作按钮宽度、时间线竖线/圆点、路由文案映射或客户端侧栏业务标签。
- `npm run capture:pages` + `npm run visual:diff` 后,`client-03-issue-detail-handler.png` 从 18.22 / 43.82 回升到 18.30 / 43.85,方向反向,已回退源码改动并记录到 `docs/design/visual-polish-backlog.md`
- 回退后重新执行 `npm run capture:pages` + `npm run visual:diff`,最新报告生成时间为 `2026-06-12T06:07:26.235Z``client-03-issue-detail-handler.png` 恢复为 18.22 / 43.82,当前整体仍为 12 张页面中 8 张复核、4 张需继续打磨。
## 2026-06-12 部门队列页面级背景微调
- 按 Turing 审计的单点实验,仅新增 `.app-frame.app-route-department-queue { background: #f6f8fb; }`,不改变筛选搜索/高级筛选控件、成员负载标题、成员头像、`.member-row` 行高、筛选栏局部图标或 `scripts/browser-smoke.mjs`
- `npm run capture:pages` + `npm run visual:diff` 后,`dispatcher-03-department-queue.png` 从 18.26 / 41.38 收敛到 17.17 / 41.06,状态从需打磨进入复核,方向正向,当前保留。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-03-department-queue.png``docs/design/visual-diff/report.md`;最新报告生成时间为 `2026-06-12T05:42:56.041Z`,当前整体为 12 张页面中 8 张复核、4 张需继续打磨。
## 2026-06-12 知识复盘路由背景微调
- 按 Kant 审计的单点实验,仅新增 `.app-frame.app-route-knowledge-review { background: #f8fafb; }`,不改变右侧摘要主卡高度、顶部指标/趋势卡尺寸、筛选栏图标、摘要栏宽度、按钮高度、表格行高或 smoke 脚本。
- `npm run capture:pages` + `npm run visual:diff` 后,`dispatcher-05-knowledge-review.png` 从 19.72 / 44.33 收敛到 18.69 / 44.14,方向正向,当前保留。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-05-knowledge-review.png``docs/design/visual-diff/report.md`;最新报告生成时间为 `2026-06-12T05:23:01.291Z`,当前整体仍为 12 张页面中 7 张复核、5 张需继续打磨。
## 2026-06-12 管理看板中区三列比例微调
- 按 Hegel 审计的单点实验,仅将管理看板 `.analytics-mid-grid` 三列比例从 `1fr / 1fr / min 360px 1.2fr` 调整为 `0.92fr / 0.92fr / min 400px 1.24fr`,不改变主趋势图 tooltip、AI insight 卡片密度、KPI icon、效率图高度、顶部网格、榜单密度或自定义看板按钮位置。
- `npm run capture:pages` + `npm run visual:diff` 后,`dispatcher-07-analytics-board.png` 从 19.79 / 44.37 小幅收敛到 19.69 / 44.12,方向正向,当前保留。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-07-analytics-board.png``docs/design/visual-diff/report.md`;最新报告生成时间为 `2026-06-12T04:41:35.476Z`,当前整体仍为 12 张页面中 7 张复核、5 张需继续打磨。
## 2026-06-12 我的待办分页真实化
- 将客户端“我的待办”分页从 toast 预览升级为页面层真实状态:`ClientWorkbenchPage` 维护 `page` / `pageSize`,筛选、搜索和排序变化后回到第 1 页,并只把当前页切片传给 `WorkbenchIssueTable`
- `WorkbenchIssueTable` 接收 `total` / `page` / `pageSize` / `pageCount` 后渲染真实页码、范围和 5 / 10 / 20 条每页切换;上一页 / 下一页在边界禁用,布局保持原底部紧凑分页样式。
- 浏览器 smoke 已从等待“第 2 页预览”文案改为断言第 2 页 active、显示范围变化、行内容变化,以及切到 20 条/页后回到第 1 页。
## 2026-06-12 中心调度台底部按钮比例微调
- 按 Poincare 审计的单点实验,仅将中心调度台右侧检查器 footer 双按钮比例从 `0.82fr / 1.08fr` 微调为 `0.78fr / 1.12fr`,不改变中心表格、分页、负载圆环、相似问题卡或其它右侧密度。
- `npm run capture:pages` + `npm run visual:diff` 后,`dispatcher-01-center-dashboard.png` 从 19.77 / 47.47 小幅收敛到 19.76 / 47.46,方向正向,当前保留。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-01-center-dashboard.png``docs/design/visual-diff/report.md`;最新报告生成时间为 `2026-06-12T04:24:28.903Z`,整体仍为 12 张页面中 7 张复核、5 张需继续打磨。
## 2026-06-11 移动端窄屏补充链路 smoke 证据补齐
- 补齐 390x920 窄屏 `runMobileNarrowSmoke` 的补充信息链路:提交移动端问题并截图 `mobile-narrow-submitted.png` 后,保持窄屏 viewport 回到 `/#/mobile-submit`,点击“去补充”并等待 textarea 写入“补充涉及的订单号或数据 ID:”。
- 新增交互截图 `docs/design/interaction-smoke/mobile-narrow-supplement.png`,捕捉窄屏补充态提交前的表单状态;随后点击 `aria-label="移动端提交补充信息"`
- smoke 从 localStorage 读取当前 `selectedIssueId`,断言该问题状态回到 `dispatch_pending`,并写入“提交人补充信息”时间线。
- 已验证通过:`npm run smoke:browser``npm run build``npm test`
## 2026-06-11 知识复盘对象切换证据补齐
- 浏览器 smoke 在知识复盘搜索命中“报表导出数据量过大失败”后,先点击当前关闭问题并断言 `selectedIssueId === "issue-006"`,再搜索并点击“客户信息导入后字段映射失败”,从 localStorage 断言选中对象同步切到 `issue-007`
- 新增交互截图 `docs/design/interaction-smoke/knowledge-selected-other-issue.png`,覆盖切换不同关闭问题后列表选中行和右侧 AI 复盘摘要联动状态;随后 smoke 会搜索回“报表导出数据量过大失败”并恢复 `issue-006`,保证生成、编辑、合并知识原主链路不变。
- 已验证通过:`npm run smoke:browser``npm run build``npm test`
## 2026-06-11 提交人追踪复制记录反馈证据补齐
- 将提交人追踪页“复制记录”全局反馈收口到 `SubmitterTrackingPage` 页面层:`SubmitterProgressPanel` 仅抛出 `onCopyRecord` 事件,不再直接访问 clipboard 或 toast。
- 页面层点击“复制记录”时尝试写入当前选中问题编号,并稳定提示“已复制 IH-2026-0148 的提交记录。”,保持浏览器 smoke 可断言。
- 浏览器 smoke 在 `/#/submitter-tracking` 搜索“订单支付成功”后补充点击“复制记录”和 toast 文案断言,随后继续执行排序筛选、详情展开、下载、返工和验收主链路。
- 已验证通过:`npm run smoke:browser``npm run build``npm test`
## 2026-06-11 部门队列中心介入证据补齐
- 补齐部门队列“请求中心介入”浏览器 smoke:在搜索命中“订单支付成功但状态未更新”后点击入口,等待 toast “已升级负责人”,并从 localStorage 断言 `issue-001` 写入“升级负责人”时间线,同时存在未处理的升级事件。
- smoke 新增交互截图 `docs/design/interaction-smoke/department-center-escalated.png`,随后继续执行“分派处理人”并断言“部门分派处理人”时间线,证明同一问题升级后仍可继续分派。
- 已验证通过:`npm run smoke:browser``npm run build``npm test`
## 2026-06-11 管理看板趋势图提示文案反向复核
- 本轮针对 `dispatcher-07-analytics-board.png` 的 top-center 热点做了最小实验:将主趋势图 tooltip 标题从 `06-03` 补为设计稿中的 `06-03(周三)`
- `npm run capture:pages` + `npm run visual:diff` 后发现该方向反向,`dispatcher-07-analytics-board.png` 从 19.79 / 44.37 回升到 19.81 / 44.41,已回退源码改动。
- 回退后重新刷新截图和视觉报告,最新报告生成时间为 `2026-06-11T09:59:31.609Z``dispatcher-07-analytics-board.png` 恢复为需打磨状态 19.79 / 44.37,当前整体仍为 12 张页面中 7 张复核、5 张需继续打磨。
## 2026-06-11 移动端提交/补充二级反馈与持久化证据补齐
- 补齐移动端提交二级控件的稳定 smoke 选择器:影响范围、问题来源、所属系统和期望解决时间分别提供明确 `aria-label`,不改变手机表单结构和既有提交工作流。
- 浏览器 smoke 新增移动端“保存草稿”反馈断言,并在提交前选择“多部门 / 企业微信 / 库存/履约 / 6 小时”;提交后从 localStorage 断言新问题的 `impactScope``source``category``slaMinutes``slaRemainingMinutes` 均按所选值持久化。
- 浏览器 smoke 新增移动端补充状态下“联系处理人”和“催办”的 toast 反馈断言,并保留去补充、补充附件、提交补充原链路截图。
- 已刷新 `docs/design/implementation-screenshots/client-05-mobile-submit.png``docs/design/visual-diff/report.md`;最新视觉报告生成时间为 `2026-06-11T06:56:25.164Z``client-05-mobile-submit.png` 保持复核状态,平均差异 17.87,RMS 44.91,变更像素 12.9%,最大差异 254.34,热点为 top-right 53.75 / 29.6%、middle-left 52.37 / 36.2%、top-left 47.51 / 34.9%。
- 已验证通过:`npm test`(20 个测试文件、71 个测试通过)、`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff`Compared 12 pages. 5 need polish, 7 need review)。
## 2026-06-11 提交问题表单控件持久化证据补齐
- 收口提交问题表单控件持久化链路:`ImpactScopePicker` 会把“全公司”等影响范围写入 `IssueDraft.impactScope``SeverityPicker` 的“高”会经 `SubmitIssueForm` 归一化为 `severity: "high"`;“紧急”仍按当前领域模型归入高风险,不扩展 `IssueSeverity`
- 核对 `submitIssueWorkflow` / `createSubmittedIssue` 后确认新建问题会透传 draft 的 `impactScope``severity`,同时保留提交时间线与 AI triage 结果写入。
- 补齐单元测试证据:`issueActions``appWorkflows` 的提交问题用例新增 `impactScope``severity` 断言,防止表单控件选择值后续回退。
- 浏览器 smoke 已包含提交页 AI 预检查补充、富文本表格工具、桌面附件上传、来源 / 系统 / 期望时间 / 影响范围 / 影响等级选择,以及提交后本地持久化断言。
- 已刷新 `docs/design/implementation-screenshots/client-02-submit-issue.png``docs/design/visual-diff/report.md`;最新视觉报告生成时间为 `2026-06-11T03:48:53.518Z``client-02-submit-issue.png` 保持复核状态,平均差异 14.05,RMS 37.13,变更像素 11.4%,最大差异 254.34,热点为 bottom-center 49.09 / 28.9%、top-left 44.02 / 49.6%、middle-right 41.19 / 34.1%。
- 已验证通过:`npm test`(20 个测试文件、71 个测试通过)、`npm run build``tsc && vite build` 通过,未复现 `esbuild spawn EPERM`)、`npm run smoke:browser``npm run capture:pages``npm run visual:diff`
## 2026-06-11 我的待办顶部状态 tab 切换反馈补齐
- 补齐客户端“我的待办”顶部状态 tab 的切换反馈:全部、待接单、处理中、待补充、超时切换后由 `ClientWorkbenchPage` 页面层统一提示“已筛选我的待办:xxx。”,其中超时反馈使用“超时”文案。
- 分层保持在 `ClientWorkbenchPage` 承接筛选 toast 与 `activeFilter` 状态更新,`WorkbenchIssueTable` 继续只负责 tab 展示和事件抛出,`matchesWorkbenchFilter` 领域筛选逻辑不改变。
- 浏览器 smoke 已覆盖点击“待接单”并等待“已筛选我的待办:待接单”,随后点击“全部”恢复默认筛选并继续优先级筛选、SLA 排序、分页、详情和行操作主链路。
- 已刷新 `docs/design/implementation-screenshots/client-01-workbench.png``docs/design/visual-diff/report.md``client-01-workbench.png` 保持复核状态,平均差异 17.72,RMS 44.08,差异像素 14.7%,最新报告生成时间为 `2026-06-11T01:07:37.348Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 规则配置条件编辑反馈补齐
- 补齐规则配置“添加条件”和“添加分组条件”入口的明确反馈:点击后分别写入条件占位 / AND 分组,并提示当前规则已新增对应结构。
- 分层保持在 `RuleBuilder` 只负责抛出 `onAddCondition` / `onAddConditionGroup` 事件,`RuleConfigPage` 页面层组装规则补丁和 toast,继续复用 `saveRule`、规则审计和草稿发布领域逻辑。
- 浏览器 smoke 已覆盖自动化模式切换、连续新增 2 条普通条件、添加分组条件、删除条件、保存草稿、查看变更记录、测试规则和发布配置完整链路,并按 `新增条件待配置` 计数断言每条新增普通条件均写入,同时断言规则条件中包含 AND 分组。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-06-rule-config.png``docs/design/visual-diff/report.md``dispatcher-06-rule-config.png` 保持复核状态 17.71 / 42.07,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T23:44:03.320Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 提醒升级操作反馈补齐
- 补齐提醒升级页三个主操作的区别化反馈:扫描 SLA 后验证提醒生成 toast,立即催办提示同步提醒处理人和部门负责人,升级部门负责人提示具体问题与部门,转中心复核提示当前问题已进入中心复核。
- 反馈保持在 `EscalationCenterPage` 页面层,继续复用 `generateSlaEscalations``escalateIssue``transferIssue``markEscalationHandled` 现有业务动作;SLA 规则、升级事件和时间线领域逻辑不改变。
- 浏览器 smoke 已覆盖扫描 SLA、立即催办、升级部门负责人、转中心复核和标记处理反馈,并修正“标记处理”断言为标记前重新读取当前第一条未处理提醒,避免新增手动升级事件后断言旧事件。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-04-escalation-center.png``docs/design/visual-diff/report.md``dispatcher-04-escalation-center.png` 保持复核状态 17.69 / 43.56,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T23:23:39.844Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 知识复盘筛选状态反馈补齐
- 补齐知识复盘筛选弹层的选项状态:关闭时间、问题来源、处理部门、处理人和 SLA 选项点击后会更新筛选按钮文案,并给出明确 toast。
- 筛选选择状态保留在 `KnowledgeReviewPage` 页面层,`KnowledgeReviewTable` 只接收当前筛选文案并抛出选项事件;知识行构建、草稿生成、摘要编辑、合并和无需沉淀领域逻辑均不改变。
- 浏览器 smoke 已覆盖处理部门筛选从“全部”切到“研发部”的 toast 与按钮文案回显,再继续验证分页、每页条数、搜索、生成草稿、编辑摘要、合并知识、无需沉淀和规则配置主链路。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-05-knowledge-review.png``docs/design/visual-diff/report.md``dispatcher-05-knowledge-review.png` 保持需打磨状态 19.72 / 44.33,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T23:04:43.642Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 问题池筛选反馈补齐
- 补齐问题池筛选工具条反馈:状态、优先级、部门、来源、SLA 和提交时间排序在切换后都会给出明确 toast,避免筛选结果变化缺少操作回显。
- 将问题池优先级默认显示从 `all` 调整为中文“全部”,与部门、来源、状态和其他后台页面的筛选文案保持一致。
- 筛选逻辑仍复用 `issueFilters` 领域层,新增处理函数只留在 `IssuePoolPage` 页面层;问题搜索、批量派发、批量治理和右侧 AI 聚合洞察均不改变。
- 浏览器 smoke 已覆盖问题池状态、优先级、部门、来源、SLA 和提交时间筛选反馈,再继续验证无结果空状态、空批量派发反馈、批量派发持久化和批量导入标签主链路。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-02-issue-pool.png``docs/design/visual-diff/report.md``dispatcher-02-issue-pool.png` 保持复核状态 17.18 / 43.47,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T22:48:49.553Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 部门队列筛选反馈补齐
- 补齐部门队列顶部部门 tab 与筛选工具条反馈:切换部门、状态、优先级、SLA 和创建时间排序时都会给出明确 toast,避免筛选上下文变化只体现在列表结果里。
- 筛选状态仍保留在 `DepartmentQueuePage` 页面层,`DepartmentWorkloadPanel`、分派动作、队列设置、分页反馈和 AI 分派分析详情逻辑均不改变。
- 浏览器 smoke 已覆盖部门队列状态、优先级、SLA 和创建时间筛选反馈,并在进入队列设置、AI 分派分析详情、分页、搜索和分派处理人主链路前恢复默认筛选状态。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-03-department-queue.png``docs/design/visual-diff/report.md``dispatcher-03-department-queue.png` 保持需打磨状态 18.26 / 41.38,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T22:27:43.865Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 中心分页与管理看板筛选反馈补齐
- 补齐中心调度台表格底部分页当前页入口:第 1 页按钮新增 `aria-label="中心调度当前页"`,点击提示“当前位于中心调度第 1 页。”,与我的待办、部门队列和知识复盘分页反馈保持一致。
- 补齐管理看板筛选控件反馈:近 7 / 30 / 90 日、部门和风险视图按钮在切换状态的同时给出范围、部门和视图 toast,避免隐藏筛选工具只改变上下文而没有明确回显。
- 改动保持在 `CenterDashboardPage``AnalyticsBoardPage` 页面层,不改变默认视觉结构、CSV 导出、趋势范围切换、自定义布局或中心派发工作流。
- 浏览器 smoke 已覆盖中心调度当前页反馈,以及管理看板近 30 日、研发部、仅风险三个筛选反馈,再继续验证固定日期、趋势范围、AI 洞察、CSV 导出、自定义布局和刷新看板主链路。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-01-center-dashboard.png``docs/design/implementation-screenshots/dispatcher-07-analytics-board.png``docs/design/visual-diff/report.md`;两页保持需打磨状态,中心调度台 19.77 / 47.47,管理看板 19.79 / 44.37,最新报告生成时间为 `2026-06-10T22:09:35.441Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 知识复盘设置面板补齐
- 补齐知识复盘页顶部“复盘设置”入口:点击后展开设置面板,包含关闭问题自动进入复盘池、AI 自动生成知识草稿、重复问题提醒、相似度阈值和默认复盘负责人。
- 设置状态保持在 `KnowledgeReviewPage` 页面层,保存后关闭面板并提示“知识复盘设置已保存”,不改变既有生成草稿、编辑摘要、合并知识和无需沉淀领域工作流。
- 新增 `knowledge-settings-panel` 样式,保持调度端高密度后台工具风格,并补齐 1360px 与移动端响应式堆叠;默认关闭态不影响实现截图。
- 浏览器 smoke 已覆盖打开复盘设置、保存设置,再继续验证知识筛选、分页、生成草稿、编辑摘要、合并知识和标记无需沉淀主链路,新增交互截图 `docs/design/interaction-smoke/knowledge-settings-saved.png`
- 已刷新 `docs/design/implementation-screenshots/dispatcher-05-knowledge-review.png``docs/design/visual-diff/report.md``dispatcher-05-knowledge-review.png` 保持需打磨状态 19.72 / 44.33,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T21:49:22.001Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 桌面提交页编辑器与附件入口补齐
- 补齐桌面提交问题页附件上传入口:点击后显示已上传文件、大小和 `已上传 1 / 5`,页面层提示“桌面端已上传 1 个问题附件。”,默认未点击态保持 images2 空白上传区。
- 补齐详细描述富文本工具栏:标题、加粗、斜体、列表、链接、图片、代码和表格图标现在会把对应结构化片段追加到描述框,页面层给出“描述编辑工具已应用”反馈;提交后 smoke 会断言工具栏插入内容进入持久化问题描述。
- 分层保持在 `SubmitIssueForm` 负责表单状态与片段插入,`SubmitRichTextEditor` / `AttachmentDropzone` 只负责局部 UI 与事件抛出,`SubmitIssuePage` 处理 toast 和既有提交工作流。
- 浏览器 smoke 已覆盖 AI 预检查补充、点击“表格”编辑工具、桌面附件上传、提交到中心和本地持久化断言,新增交互截图 `docs/design/interaction-smoke/submit-issue-editor-attachment.png`
- 已刷新 `docs/design/implementation-screenshots/client-02-submit-issue.png``docs/design/visual-diff/report.md``client-02-submit-issue.png` 保持复核状态 14.05 / 37.13,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T21:25:11.078Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 移动端附件与补充入口补齐
- 补齐移动端提交手机的附件上传入口:点击“附件上传”后显示已选择附件状态,并由页面层提示“移动端已选择 1 个问题附件。”,避免上传区停留在静态展示。
- 补齐移动端补充手机的“去补充”和补充附件入口:“去补充”会把对应缺失项写入补充说明并提示当前定位项,补充附件上传后显示已选择补充附件状态。
- 分层保持在 `MobileSubmitPhone` / `MobileSupplementPhone` 承接手机内局部状态,`MobileSubmitPreview` 只处理 toast 与既有提交、保存草稿、补充、联系、催办工作流;提交按钮新增明确 `aria-label` 让 smoke 精确定位。
- 浏览器 smoke 已覆盖移动端提交附件、提交到中心、补充缺失项、补充附件和提交补充完整链路,新增交互截图 `docs/design/interaction-smoke/mobile-submit-attachment-selected.png``docs/design/interaction-smoke/mobile-supplement-missing-upload.png`
- 已刷新 `docs/design/implementation-screenshots/client-05-mobile-submit.png``docs/design/visual-diff/report.md``client-05-mobile-submit.png` 保持复核状态 17.87 / 44.91,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T20:58:57.725Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 处理人详情时间线与评论工具入口补齐
- 补齐处理人详情中部“处理过程 / 关联信息 / SLA 详情”tab:默认保持处理过程时间线,切到关联信息时展示关联任务、相似问题和影响范围,切到 SLA 详情时展示 SLA 消耗、责任部门、负责人和升级策略。
- 补齐评论对象与评论工具栏:内部评论和 @ 客户评论现在有真实 active 状态与不同输入占位,发送客户评论会写入带 `@客户` 前缀的处理人评论;表情、提及、附件、图片和链接工具入口统一抛给页面层 toast。
- 分层保持在 `HandlerTimelineWorkspace` 承接局部视图状态,`HandlerIssueDetailPage` 只处理全局反馈和业务工作流;接单、协作、评论、关联任务、转派和提交结果链路不改变。
- 浏览器 smoke 已覆盖切换关联信息、SLA 详情、回到处理过程、切到 @ 客户评论、点击附件工具并回到内部评论,新增交互截图 `docs/design/interaction-smoke/handler-tabs-comment-tools.png`
- 已刷新 `docs/design/implementation-screenshots/client-03-issue-detail-handler.png``docs/design/visual-diff/report.md``client-03-issue-detail-handler.png` 保持需打磨状态 18.22 / 43.82,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T20:24:26.765Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 我的待办分页反馈补齐
- 补齐客户端“我的待办”表格底部分页入口的交互反馈:上一页提示“已经是我的待办第一页。”,当前页提示“当前位于我的待办第 1 页。”,第 2 页和下一页提示“已切换到我的待办第 2 页预览。”,每页条数入口提示“我的待办每页显示 20 条。”,避免分页控件停留在静态展示状态。
- 分页反馈保持在 `ClientWorkbenchPage` 页面层,`WorkbenchIssueTable` 仅新增 `onPageControl` 回调并提供分页按钮 `aria-label`,继续只负责待办列表、筛选面板、行操作和事件抛出。
- 浏览器 smoke 已覆盖我的待办刷新、优先级筛选和 SLA 排序后,点击“我的待办下一页”和“20 条/页”,随后继续验证 AI 分析详情、顶部/底部更多动作、详情 tab、行操作和返回列表主链路。
- 已刷新 `docs/design/implementation-screenshots/client-01-workbench.png``docs/design/visual-diff/report.md``client-01-workbench.png` 保持复核状态 17.72 / 44.08,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T19:56:40.385Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 部门队列分页反馈补齐
- 补齐部门队列表格底部分页入口的交互反馈:上一页提示“已经是部门队列第一页。”,当前页提示“当前位于部门队列第 1 页。”,第 2 页和下一页提示“已切换到部门队列第 2 页预览。”,每页条数入口提示“部门队列每页显示 20 条。”,避免底部分页控件停留在静态展示状态。
- 分页反馈保持在 `DepartmentQueuePage` 页面层,复用全局 toast,不引入额外分页业务状态;部门队列主表、右侧成员负载和分派动作逻辑均不改变。
- 浏览器 smoke 已覆盖部门队列设置、AI 分派分析详情和更多成员后,点击“部门队列下一页”和“20 条/页”,随后继续验证搜索与分派处理人主链路。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-03-department-queue.png``docs/design/visual-diff/report.md``dispatcher-03-department-queue.png` 保持需打磨状态 18.26 / 41.38,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T19:40:11.481Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 知识复盘分页反馈补齐
- 补齐知识复盘表格底部分页入口的交互反馈:上一页提示“已经是知识复盘第一页。”,当前页提示“当前位于知识复盘第 1 页。”,第 2/3 页和下一页提示对应预览页,每页条数入口提示“知识复盘每页显示 20 条。”,避免分页控件停留在静态展示状态。
- 分页反馈保持在 `KnowledgeReviewPage` 页面层,`KnowledgeReviewTable` 仅新增 `onPageControl` 回调并提供分页按钮 `aria-label`,继续只负责列表、筛选、行选择和事件抛出。
- 浏览器 smoke 已覆盖知识复盘筛选面板后点击“知识复盘下一页”和“20 条/页”,随后继续验证搜索、生成知识草稿、编辑摘要、合并知识和标记无需沉淀主链路。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-05-knowledge-review.png``docs/design/visual-diff/report.md``dispatcher-05-knowledge-review.png` 保持需打磨状态 19.72 / 44.33,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T19:23:27.682Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 管理看板日期与趋势范围入口补齐
- 补齐管理看板顶部固定日期范围入口:点击日期按钮会提示“日期范围已固定为 2025-05-31 至 2025-06-06。”,避免顶部日期控件停留在静态展示状态。
- 补齐问题趋势图右上范围按钮:`AnalyticsTrendChart` 新增 `onRangeClick` 回调,页面层在近 7 日 / 近 30 日 / 近 90 日之间切换,并同步更新当前视图、CSV 导出范围和刷新看板反馈。
- 范围切换状态继续保留在 `AnalyticsBoardPage` 页面层;趋势图组件只负责展示和抛出范围按钮点击事件,保持管理看板页面、图表组件和导出领域逻辑分层。
- 浏览器 smoke 已覆盖管理看板按近 30 日 / 研发部 / 仅风险筛选后,点击固定日期入口、切换趋势范围到近 90 日,并验证洞察详情、CSV 导出文件名前缀、自定义布局保存和刷新文案。
- 本轮同步复核并回退了一个管理看板反向视觉方向:压缩中部排行/效率三卡行高和摘要内边距会使 `dispatcher-07-analytics-board.png` 从 19.79 / 44.37 回升到 20.24 / 45.11,已恢复原始密度。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-07-analytics-board.png``docs/design/visual-diff/report.md``dispatcher-07-analytics-board.png` 保持需打磨状态 19.79 / 44.37,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T19:05:52.423Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 中心调度分页反馈补齐
- 补齐中心调度台表格底部分页入口的交互反馈:上一页会提示“已经是第一页。”,第 2 页和下一页会提示“已切换到中心调度第 2 页预览。”,每页条数入口会提示“每页显示 20 条问题。”,避免分页控件停留在静态展示状态。
- 分页反馈保持在 `CenterDashboardPage` 页面层,继续复用现有全局 toast;`DispatchQueueTable` 仍只承接表格选择、行级派发和筛选入口,不额外引入分页业务状态。
- 浏览器 smoke 已覆盖中心调度台打开筛选面板并应用后,点击“中心调度下一页”和“20 条/页”,再继续验证行级派发、批量确认、AI 派发和部门队列主链路。
- 本轮同步复核并回退了一个管理看板反向视觉方向:压缩本周对比行高和 sparkline 高度未降低 `dispatcher-07-analytics-board.png` 差异,已恢复原始密度,避免把视觉打磨带向错误方向。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-01-center-dashboard.png``docs/design/visual-diff/report.md``dispatcher-01-center-dashboard.png` 保持需打磨状态 19.77 / 47.47,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T18:27:13.825Z`
- 验证通过:`npm test` 中 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 我的待办底部更多处理动作补齐
- 补齐客户端“我的待办”右侧详情底部动作栏的下拉箭头入口:按钮新增 `aria-label="更多处理动作"` 并接入现有 `onMore` 回调,避免底部动作区出现静态图标。
- 该入口复用页面层已有“更多问题操作”反馈,不新增重复业务状态;`WorkbenchDetailPanel` 继续只负责详情展示和动作回调。
- 浏览器 smoke 已覆盖点击“更多处理动作”并等待“更多问题操作已展开”,随后继续验证处理记录、相关信息、行操作和返回列表主链路。
- 已刷新 `docs/design/implementation-screenshots/client-01-workbench.png``docs/design/visual-diff/report.md``client-01-workbench.png` 保持复核状态 17.72 / 44.08,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T17:54:43.135Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 部门队列 AI 分派分析详情补齐
- 补齐部门队列右侧“AI 分派建议”的“查看分析详情”入口:点击后展开命中规则、负载判断和风险提示,可再次收起。
- 展开状态保留在 `DepartmentWorkloadPanel` 内部,`DepartmentQueuePage` 继续只负责队列设置、筛选和分派动作,避免把展示细节状态上提到页面业务层。
- 浏览器 smoke 已覆盖部门队列打开“查看分析详情”、看到“分派分析详情”并收起,随后继续验证更多成员入口和分派处理人主链路。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-03-department-queue.png``docs/design/visual-diff/report.md``dispatcher-03-department-queue.png` 保持需打磨状态 18.26 / 41.38,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T17:32:23.166Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-11 我的待办 AI 分析详情补齐
- 补齐客户端“我的待办”右侧详情中 AI 摘要的“查看分析详情”入口:点击后展开推荐分类、推荐优先级、判断依据和建议处理动作,可再次收起。
- 分析详情展开状态保留在 `WorkbenchDetailPanel` 的详情 tab 内部,继续使用 `AiTriageResult` 已有的 `categorySuggestion``prioritySuggestion``reasons` 字段,不改动页面级业务流。
- 浏览器 smoke 已覆盖“查看分析详情 / 收起分析详情”,随后继续验证处理记录、相关信息、行操作、更多操作和返回列表主链路。
- 已刷新 `docs/design/implementation-screenshots/client-01-workbench.png``docs/design/visual-diff/report.md``client-01-workbench.png` 保持复核状态 17.72 / 44.08,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T17:03:39.418Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-10 提交人追踪排序筛选补齐
- 补齐提交人追踪左侧列表“按创建时间”和“筛选提交记录”入口:创建时间按钮可切换新旧排序,筛选图标可展开来源与 SLA 风险筛选面板。
- 排序与筛选状态保留在 `SubmitterTrackingPage` 页面层,`SubmittedIssueList` 只负责展示工具栏、候选面板和事件回调,保持提交人追踪页面和列表组件分层。
- 浏览器 smoke 已覆盖提交人追踪页点击“按创建时间”、展开筛选面板、选择“仅 SLA 风险”,随后继续验证负责人资料、全部回复、详情展开、附件下载、返工和验收主链路。
- 本轮先发现一个反向默认态:将“按创建时间”改成长状态文案会使 `client-04-submitter-tracking.png` 掉到需打磨,已恢复设计稿文案并收紧工具行高度;最终 `client-04-submitter-tracking.png` 从 17.97 / 43.74 收敛到 17.91 / 43.57,保持复核状态。
- 已刷新 `docs/design/implementation-screenshots/client-04-submitter-tracking.png``docs/design/visual-diff/report.md`;当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T16:26:45.709Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-10 我的待办筛选排序面板补齐
- 补齐客户端“我的待办”表格工具栏的优先级、来源、创建时间和 SLA 排序入口:点击后展开对应候选面板,选择后真实参与待办列表过滤和排序。
- 筛选与排序状态保留在 `ClientWorkbenchPage` 页面层,`WorkbenchIssueTable` 只负责工具栏按钮、候选面板和事件回调,继续保持页面状态和表格组件分层。
- 浏览器 smoke 已覆盖打开“优先级:全部”、选择 `P1`、打开“SLA 排序”并切换到“SLA 降序”,随后继续验证详情 tab、行操作、更多操作和返回列表主链路。
- 已刷新 `docs/design/implementation-screenshots/client-01-workbench.png``docs/design/visual-diff/report.md``client-01-workbench.png` 从 18.00 / 44.65 收敛到 17.72 / 44.08,当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T15:43:26.307Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-10 我的待办刷新入口补齐
- 补齐客户端“我的待办”表格工具栏的“刷新待办列表”图标按钮:表格组件新增 `onRefresh` 回调,页面层给出当前任务数量刷新反馈,避免工具栏图标停留在静态状态。
- `WorkbenchIssueTable` 继续只负责列表、筛选和按钮事件抛出,`ClientWorkbenchPage` 承接刷新语义与 toast 反馈,保持客户端工作台页面和表格组件分层。
- 浏览器 smoke 已覆盖点击“刷新待办列表”并等待“待办列表已刷新”反馈,随后继续验证详情 tab、行操作、更多操作和返回列表主链路。
- 本轮复核并回退 1 个反向视觉方向:管理看板中区与右侧洞察卡密度压缩会使 `dispatcher-07-analytics-board.png` 平均差异从 19.79 回升到 20.30,已回退。
- 已刷新 `docs/design/implementation-screenshots/client-01-workbench.png``docs/design/visual-diff/report.md`;当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-10T00:06:24.608Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-10 AI 派发退回补充确认补齐
- 补齐中心调度台右侧“AI 推荐派发”的“退回补充”入口:点击后先展开补充要求确认面板,列出影响范围、截图日志、发生时间与复现步骤等提交人需补齐的信息。
- 退回补充面板状态保留在 `CenterDashboardPage` 页面层,`AiDispatchInspector` 只承接展示与回调;确认后继续复用现有 `returnForInfo` 工作流写入时间线。
- 浏览器 smoke 已覆盖 AI 重新分析后打开退回补充确认面板、看到“退回补充要求”并取消,避免影响后续批量派发主链路数据状态。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-01-center-dashboard.png``docs/design/visual-diff/report.md`;当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-09T23:43:36.462Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-10 中心批量确认面板补齐
- 补齐中心调度台“批量操作”入口:选中问题后先展开批量确认面板,展示本次已选择数量,再由“批量采纳 AI 派发”确认执行。
- 批量面板状态保留在 `CenterDashboardPage` 页面层,复用现有 `bulkAcceptDispatch` 应用工作流,表格组件继续只负责行选择和单行派发入口。
- 浏览器 smoke 已覆盖选择中心调度台问题、打开批量操作面板、确认批量采纳 AI 派发,并验证 `批量采纳 AI 派发` 时间线写入。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-01-center-dashboard.png``docs/design/visual-diff/report.md`;当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-09T23:28:01.399Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-10 中心筛选面板补齐
- 补齐中心调度台表格工具栏“筛选”入口:点击后展开筛选摘要面板,展示当前分段命中数量,并支持在待派发、高风险、跨部门、AI 高置信之间快速切换。
- 筛选面板状态保留在 `CenterDashboardPage` 页面层,`DispatchQueueTable` 继续只负责表格选择、派发和行级操作,保持调度台主页面和表格组件分层。
- 浏览器 smoke 已覆盖“筛选”展开、“高风险”切换和“应用筛选”反馈,随后继续验证行级更多派发操作和采纳 AI 派发主链路。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-01-center-dashboard.png``docs/design/visual-diff/report.md`;当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-09T23:16:29.188Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-10 部门队列设置面板补齐
- 补齐部门队列右上“队列设置”入口:点击后展开设置面板,包含负责人轮询、技能标签优先和 SLA 阈值提醒;可取消或保存设置。
- 设置状态保留在 `DepartmentQueuePage` 页面层,右侧成员负载组件继续只负责成员分派和负载展示,避免把队列配置逻辑混进侧栏。
- 浏览器 smoke 已覆盖“队列设置”展开、负责人轮询展示和“保存设置”反馈,随后继续验证更多成员入口和分派处理人主链路。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-03-department-queue.png``docs/design/visual-diff/report.md`;当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-09T23:04:52.481Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-10 管理看板 AI 洞察详情补齐
- 补齐管理看板右侧“AI 运营洞察”的“查看更多 / 查看详情”入口:点击后在右侧面板内展开“洞察详情”,显示当前视图、洞察说明和建议动作;可点击“收起详情”恢复。
- `AnalyticsBoardPage` 只保存当前洞察标题,`AnalyticsSidePanel` 负责渲染洞察详情;“AI 运营洞察”总览入口会使用总览兜底内容,单条洞察入口会展示对应洞察。
- 浏览器 smoke 已覆盖按近 30 日 / 研发部 / 仅风险筛选后打开洞察详情并收起,随后继续验证 CSV 导出、自定义看板和布局持久化。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-07-analytics-board.png``docs/design/visual-diff/report.md`;当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-09T22:52:49.319Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-10 处理人更多动作面板补齐
- 补齐处理人详情页顶部“更多操作”入口:点击后展开处理动作面板,包含查看 SLA 记录、复制处理链接、催办协作人和导出处理记录。
- 面板状态保留在 `HandlerIssueDetailPage` 页面层,三栏详情、时间线和 AI 建议组件不承接顶栏动作状态,避免继续堆叠到业务工作区组件。
- 浏览器 smoke 已覆盖“更多操作”展开、“复制处理链接”点击和复制反馈,随后继续验证处理人评论、关联任务、完整分析报告、转派和提交处理结果主链路。
- 已刷新 `docs/design/implementation-screenshots/client-03-issue-detail-handler.png``docs/design/visual-diff/report.md`;当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-09T22:36:24.364Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-10 知识复盘筛选面板补齐
- 补齐知识复盘筛选条“关闭时间 / 问题来源 / 处理部门 / 处理人 / SLA”入口:点击后会展开轻量候选面板,显示对应筛选选项,选择后收起。
- `KnowledgeReviewTable` 只负责筛选面板展示和回调,`KnowledgeReviewPage` 管理当前展开的筛选类型,继续保持页面状态和表格组件分层。
- 浏览器 smoke 已覆盖“处理部门:全部”筛选展开、候选项“研发部”展示与选择收起,随后继续验证生成草稿、编辑摘要、合并知识和无需沉淀主链路。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-05-knowledge-review.png``docs/design/visual-diff/report.md`;当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-09T22:23:24.063Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-10 中心派发行操作补齐
- 补齐中心调度台表格每行“更多派发操作”入口:点击后会选中对应问题,并提示可用动作包含改派部门、要求补充和查看 AI 依据。
- `DispatchQueueTable` 只新增行级操作回调,具体业务反馈继续由 `CenterDashboardPage` 承接,保持调度表格组件和页面动作分层。
- 浏览器 smoke 已覆盖 `IH-2026-0148 更多派发操作` 点击和 toast 断言,随后继续验证采纳 AI 派发主链路。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-01-center-dashboard.png``docs/design/visual-diff/report.md`;当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-09T22:09:28.707Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-10 我的待办行操作补齐
- 补齐客户端我的待办列表每行“更多行操作”入口:点击后会选中对应问题、展开右侧详情,并提示可用操作包含标记关注、复制链接和转交负责人。
- 浏览器 smoke 已覆盖“更多行操作”入口点击和 toast 断言,避免列表行尾按钮只停留在静态图标。
- 已刷新 `docs/design/implementation-screenshots/client-01-workbench.png``docs/design/visual-diff/report.md`;当前视觉报告仍为 12 张页面中 7 张进入复核、5 张继续视觉打磨,最新报告生成时间为 `2026-06-09T21:53:57.234Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-10 提交人追踪资料与回复展开补齐
- 补齐提交人进度追踪页“查看全部回复”入口:点击后展开全部回复列表,展示事件发起人、事件类型、时间和回复内容;再次点击可收起,默认截图状态保持不变。
- 补齐负责人卡片“查看资料”入口:点击后展开处理人资料,显示处理人、部门、响应时长、当前负载和技能标签;再次点击可收起。
- 浏览器 smoke 已覆盖“查看资料 / 收起资料”和“查看全部回复 / 收起全部回复”,避免这些入口停留在静态按钮。
- 已刷新 `docs/design/implementation-screenshots/client-04-submitter-tracking.png``docs/design/visual-diff/report.md``client-04-submitter-tracking.png` 保持复核状态 17.97 / 43.74,最新报告生成时间为 `2026-06-09T21:38:32.789Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。
## 2026-06-10 部门队列视觉复刻续跑
- 补齐部门队列四张 KPI 卡的设计稿语义图标,并将“跨部门协作”图标底色校准为紫色系,保留现有指标语义和业务数据。
- 将部门队列右上“数据更新时间 / 队列设置”工具条上移到部门 tab 同一视觉带,减少 top-right 热点差异。
- 补齐右侧成员负载标题“更多成员”的设计稿箭头提示,并接入真实点击反馈,避免该入口停留在静态文本。
- 本轮复核并回退 1 个反向方向:筛选栏补齐局部搜索和高级筛选图标后,`dispatcher-03-department-queue.png` 平均差异从 18.26 回升到 18.40,已回退。
- 本轮继续复核并回退 2 个反向方向:处理人详情顶栏按钮加宽会使 `client-03-issue-detail-handler.png` 从 18.22 回升到 18.24;中心调度台右侧相似问题卡密度压缩会使 `dispatcher-01-center-dashboard.png` 从 19.77 回升到 21.86。两者均已回退。
- 已刷新 `docs/design/implementation-screenshots/dispatcher-03-department-queue.png``docs/design/visual-diff/report.md``dispatcher-03-department-queue.png` 从 18.32 / 41.47 收敛到 18.26 / 41.38,最新报告生成时间为 `2026-06-09T21:09:00.975Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build``npm run smoke:browser``npm run capture:pages``npm run visual:diff` 均通过。浏览器 smoke 已覆盖“更多成员”入口点击并等待成员负载明细反馈。
## 2026-06-10 规则配置交互补齐
- 补齐规则配置页条件矩阵的删除交互:`DispatchRule` 增加可选 `excludedConditionLabels``RuleBuilder` 的条件删除按钮会写入规则状态并隐藏对应条件,避免“看起来可操作但没有真实状态”的配置缺口。
- 新增 `removeRuleConditionWorkflow` 和单元测试,当前 `npm test` 为 19 个测试文件、65 个测试全部通过。
- 浏览器 smoke 已覆盖规则条件删除,并新增截图 `docs/design/interaction-smoke/rule-config-condition-removed.png`;随后继续完成规则测试和发布验证。
## 2026-06-10 处理人详情交互补齐
- 补齐处理人详情页评论框:内部评论 textarea 现在是受控输入,点击“发送”或 Ctrl + Enter 会写入“处理人评论”时间线,并清空输入内容。
- 补齐“关联任务”动作:处理人点击后会写入“关联处理任务”时间线事件,完整处理过程不再只停留在静态任务卡展示。
- 新增 `appendIssueTimelineEventWorkflow` 和单元测试,当前 `npm test` 为 19 个测试文件、66 个测试全部通过。
- 浏览器 smoke 已覆盖处理人评论和关联任务,并新增截图 `docs/design/interaction-smoke/handler-comment-task-linked.png`;随后继续完成转派与提交处理结果验证。
## 2026-06-10 提交页 AI 预检查补齐
- 补齐提交问题页 AI 预检查建议:点击右侧“建议补充信息”的“补充”按钮,会把对应建议追加到左侧详细描述,提交时一并进入新问题描述。
- “选择其他分类”和“查看流转规则”也接入明确反馈,避免右侧 AI 面板出现静态入口。
- 浏览器 smoke 已覆盖 AI 建议补充应用,并新增截图 `docs/design/interaction-smoke/submit-issue-ai-supplement-applied.png`;提交后的本地持久化断言会检查问题描述包含该建议。
## 2026-06-10 提交人追踪详情补齐
- 补齐提交人追踪页右侧“问题描述”展开入口:点击“展开”后显示完整描述、分类、影响范围、SLA 和处理链路说明,可再点击“收起”恢复。
- 补齐附件“全部下载”入口:点击后给出当前问题附件打包下载反馈,避免附件区只有静态列表。
- 浏览器 smoke 已覆盖展开详情和附件下载,并新增截图 `docs/design/interaction-smoke/submitter-detail-expanded-download.png`
## 2026-06-10 我的待办详情交互补齐
- 补齐客户端我的待办右侧详情检查器:详情 / 处理记录 / 相关信息三个 tab 现在可切换,并显示对应的 AI 摘要、处理记录、问题元数据和相似问题。
- 补齐“返回列表”和“更多问题操作”:返回会收起右侧详情并提示重新选择待办,更多操作会给出可验证的动作反馈。
- 浏览器 smoke 已覆盖 tab 切换、更多操作和返回列表,并新增截图 `docs/design/interaction-smoke/client-workbench-detail-tabs.png`
## 2026-06-10 管理看板自定义布局补齐
- 补齐管理看板“自定义看板”入口:点击后展开“看板组件”面板,可勾选问题趋势、状态分布、排行与效率、SLA 风险表和 AI 运营洞察。
- “保存布局”会按当前勾选数量给出明确反馈,并真实控制看板组件显示;当前布局会持久化到本地,截图刷新会清理该布局以保持默认设计稿基线。
- 补齐“导出报表”真实动作:按当前时间范围、部门和风险视图生成 CSV 报表并触发下载,同时记录最近一次导出文件名、导出行数和时间。
- 新增 `analyticsExport` 领域测试和浏览器导出断言;浏览器 smoke 已覆盖打开自定义面板、取消一个组件并保存布局,新增截图 `docs/design/interaction-smoke/analytics-custom-layout-saved.png`
## 2026-06-10 知识无需沉淀决策补齐
- 补齐知识复盘“标记无需沉淀”入口:点击后生成 `KnowledgeDecision`,移除同问题草稿冲突,并写入“标记无需沉淀”时间线。
- 本地持久化和服务端同步 payload 已新增 `knowledgeDecisions`,生成或合并知识草稿会自动清除同问题的无需沉淀决策。
- 浏览器 smoke 已覆盖无需沉淀标记和 tab 归集,新增截图 `docs/design/interaction-smoke/knowledge-no-draft-marked.png`;当轮 `npm test` 为 19 个测试文件、68 个测试全部通过。
## 2026-06-10 问题池批量治理补齐
- 补齐问题池“更多操作”入口:点击后展开批量治理面板,支持批量关闭、批量升级和批量导入标签,均写入问题状态和时间线。
- 新增 `applyBulkGovernanceWorkflow`,批量治理逻辑从页面抽到应用工作流,页面只负责选中项和操作入口。
- 浏览器 smoke 已覆盖问题池批量治理面板和导入标签,新增截图 `docs/design/interaction-smoke/issue-pool-bulk-tagged.png`;当前 `npm test` 为 19 个测试文件、69 个测试全部通过。
## 2026-06-10 规则草稿与变更记录补齐
- 补齐规则配置“保存规则”和“查看变更记录”:保存会写入 `draftSavedAt``RuleAuditEntry`,查看变更记录会展开最近规则审计列表。
- 本地持久化和服务端同步 payload 已新增 `ruleAuditEntries`,规则条件删除、草稿保存和发布配置都会保留可追踪记录。
- 浏览器 smoke 已覆盖保存规则草稿和查看变更记录,新增截图 `docs/design/interaction-smoke/rule-config-audit-log.png`;当前 `npm test` 为 19 个测试文件、69 个测试全部通过。
## 2026-06-10 处理人详情检查器补齐
- 补齐处理人详情左侧“展开全部”和“全部下载”:展开后显示分类、标签和处理建议,附件下载会给出当前问题打包反馈。
- 补齐右侧“查看完整分析报告”:展开后显示推荐分类、建议优先级、缺失信息和相似编号。
- 浏览器 smoke 已覆盖详情展开、附件下载和完整 AI 报告,新增截图 `docs/design/interaction-smoke/handler-detail-expanded-report.png`;当前 `npm test` 为 19 个测试文件、69 个测试全部通过。
## 2026-06-10 视觉复刻续跑
- 补齐知识复盘右侧 AI 摘要编辑入口:问题原因、处理步骤、预防建议、关联知识均可点击设计稿中的编辑图标进入内联编辑,保存后写入 `KnowledgeDraft` 并追加“编辑知识复盘摘要”时间线。
- 新增 `updateKnowledgeDraftWorkflow` 和单元测试,浏览器 smoke 已覆盖生成草稿后编辑问题原因并持久化;`dispatcher-05-knowledge-review.png` 平均差异从 19.80 降到 19.72RMS 从 44.50 降到 44.33。
- 对齐管理看板右侧 AI 运营洞察展示数据:种子洞察文案改为设计稿中的“订单同步类问题连续上升 / 研发部 · 订单组负载偏高 / AI 采纳率提升明显”,保持当前 `dispatcher-07-analytics-board.png` 视觉基线 19.79 / 44.37 不回归。
- 本轮复核并回退 2 个反向视觉方向:中心调度台 KPI / 表格整体压缩会使 `dispatcher-01-center-dashboard.png` 从 19.77 / 47.47 升到 20.39 / 48.63;管理看板洞察卡与纵向间距整体压缩会使 `dispatcher-07-analytics-board.png` 从 19.79 / 44.37 升到 19.86 / 44.56。两者均已回退。
- 已刷新 `docs/design/implementation-screenshots/``docs/design/visual-diff/report.md`,当轮仍为 7 张复核、5 张需继续打磨;当轮报告生成时间为 `2026-06-09T20:04:02.551Z`
- 验证通过:`npm test` 为 20 个测试文件、71 个测试全部通过;`npm run build` 通过;`npm run smoke:browser` 通过。
## 2026-06-08 视觉复刻续跑
- 继续压低最高差异页:中心调度台右侧 AI 推荐检查器从通用 360px 收敛到 350px,使右栏起点和宽度更接近设计稿;`dispatcher-01-center-dashboard.png` 平均差异从 21.99 降到 21.79。
- 继续压低处理人详情页:右侧“下一步动作”按钮组收紧高度和间距,底部动作区更贴近设计稿;`client-03-issue-detail-handler.png` 平均差异从 19.49 降到 18.93,热点从 bottom-right 转移到顶部区域。
- 继续压低提交人进度追踪页:三栏布局从 360px / 1fr / 290px 校准为 340px / 1fr / 250px,并把右侧问题信息栏下移到流程进度区域旁;`client-04-submitter-tracking.png` 平均差异从 18.64 降到 18.00,状态进入“复核”。
- 继续压低客户端我的待办页:顶部 KPI 和状态筛选数按设计稿运营口径展示,并移除顶栏多余“提交问题”主按钮、改用设计稿副标题;`client-01-workbench.png` 平均差异从 18.25 降到 17.97,状态进入“复核”。
- 继续压低处理人详情页:主案例时间线补齐“处理人接单 / 处理人评论 / 客户评论”,并把当前节点定位到接单事件;处理过程行高从 76px 收紧到 68px,让评论框和关联任务更接近设计稿首屏位置。`client-03-issue-detail-handler.png` 平均差异从 18.93 降到 18.41。
- 提交人进度追踪页受益于同一条主案例时间线补齐,`client-04-submitter-tracking.png` 平均差异从 18.00 小幅降到 17.97。
- 继续压低移动端提交 / 补充页:补充说明恢复为空白占位、处理进度时间对齐设计稿,并收紧独立预览手机外壳边框与附件上传框高度;`client-05-mobile-submit.png` 平均差异从 19.21 降到 17.87,状态进入“复核”。
- 已刷新 `docs/design/implementation-screenshots/``docs/design/visual-diff/report.md`,当前 12 张页面为 6 张复核、6 张需继续打磨;最高差异页仍为 `dispatcher-01-center-dashboard.png` 21.79。
- 本轮复核并回退 3 个反向打磨方向:中心调度台 KPI 高度压缩会使 `dispatcher-01-center-dashboard.png` 从 21.79 升到 21.83;中心表格/AI 面板文案显示映射会升到 21.87;部门队列补齐筛选搜索控件会使 `dispatcher-03-department-queue.png` 从 19.70 升到 19.88;处理详情页路由级文案映射会使 `client-03-issue-detail-handler.png` 从 18.41 升到 18.54。以上尝试均已回退,当前视觉基线保持 6 张复核、6 张需继续打磨。
- 继续压低客户端提交问题页:复核确认设计稿为预填示例态,恢复桌面提交表单标题、描述、来源、系统和期望时间的设计稿示例内容;保留已验证有效的提交页右栏宽度修复,将 AI 预检查栏稳定到 440px,使主表单与右侧面板比例更接近设计稿。`client-02-submit-issue.png` 平均差异从 14.67 降到 14.05RMS 为 37.36,底部热点从 65.51 降到 49.09。
- 继续压低问题池页:新增问题池局部样式,将右侧 AI 聚合洞察栏从全局 `with-side` 的 380px 收敛到 350px,并把顶栏的“导出 / 批量派发”移回表格工具条区域,保留批量派发真实交互。`dispatcher-02-issue-pool.png` 平均差异从 19.29 降到 18.98RMS 从 48.15 降到 47.64,热点从 top-right/right-middle 转回左侧结构区。
- 继续压低调度端侧栏差异:将系统状态卡从“本地演示 + 双按钮”改为设计稿式紧凑状态、数据更新时间和圆形同步 / 重置图标入口,既保留立即同步与重置演示功能,也减少侧栏底部高度偏差。多张调度端页面获得下降:中心调度台 21.79→21.65、问题池 18.98→18.83、部门队列 19.70→19.54、知识复盘 20.66→20.52、管理看板 20.03→19.88。
- 继续压低中心调度台 top-left 差异:仅在 `center-dashboard` 路由把侧栏品牌标识从文字方块改为设计稿更接近的圆形盾牌图形,客户端和其他调度端页面保持原品牌块避免副作用;`dispatcher-01-center-dashboard.png` 平均差异从 21.65 小幅降到 21.64。
- 本轮复核并回退 3 个反向打磨方向:中心调度台工具条补齐刷新图标会使 `dispatcher-01-center-dashboard.png` 从 21.65 升到 21.66;管理看板右侧 AI 洞察压缩卡片密度会使 `dispatcher-07-analytics-board.png` 从 19.88 升到 19.99;问题池右侧 AI 聚合洞察改为贯穿 KPI 起点的完整图表结构后,因 KPI/表格/右栏细节未同步完全复刻,会使 `dispatcher-02-issue-pool.png` 从 18.83 升到 19.57。以上尝试均已回退,当前视觉基线保持 6 张复核、6 张需继续打磨。
- 本轮继续复核并回退 2 个无收益细节方向:处理人详情顶栏头像增加发型层次会使 `client-03-issue-detail-handler.png` 从 18.41 升到 18.44;部门队列右侧成员负载标题固定为“订单平台组”没有降低 `dispatcher-03-department-queue.png`,且会削弱切换部门后的语义准确性。以上尝试均已回退,当前截图和视觉报告已重新刷新。
- 继续校准客户端提交问题页:将桌面提交表单初始展示从预填示例态改为设计稿空白占位态,提交和保存时通过 `normalizeDraft` 使用原示例草稿兜底,既贴近 images2 空态,也保留 smoke 中的提交 / 保存 / 流转功能。`client-02-submit-issue.png` 平均差异保持 14.05RMS 从 37.36 降到 37.13。
- 继续压低规则配置页 top-left 差异:仅在 `rule-config` 路由把侧栏品牌标识改为设计稿更接近的六边形图形,其他页面不受影响;`dispatcher-06-rule-config.png` 平均差异从 17.72 小幅降到 17.71RMS 从 42.10 降到 42.07。本轮同步复核并回退管理看板首张 KPI 图标替换,因 `dispatcher-07-analytics-board.png` 平均差异不降且 RMS 从 44.51 升到 44.52。
- 继续压低中心调度台表格区差异:仅在 `center-dashboard` 路由移除共享表格选中行的浅绿色整行底色和左侧竖线,保留点击选中与右侧 AI 推荐联动逻辑,使表格白底更接近设计稿;`dispatcher-01-center-dashboard.png` 平均差异从 21.64 降到 21.51。本轮同步复核并回退中心页复选框自定义样式,因平均差异回升到 21.53 且 RMS 从 51.65 升到 51.72。
- 继续压低中心调度台右下差异:仅在中心调度台 AI 推荐检查器 footer 将双按钮从等宽改为“退回补充”较窄、“采纳派发”较宽,更贴近 images2 底部动作区;`dispatcher-01-center-dashboard.png` 平均差异从 21.51 降到 21.50RMS 从 51.65 降到 51.60。本轮同步复核并回退 2 个无收益方向:问题池路由品牌标识六边形化未降低平均差异且 RMS 从 47.46 升到 47.47;部门队列成员头像 CSS 写实化会使 `dispatcher-03-department-queue.png` 从 19.54 升到 19.71。
- 补齐中心调度台标题右侧设计稿盾牌标识:将 `TopBar` 的中心页标题改为局部 React 节点并用中心页 CSS 控制图标尺寸和灰色权重,当前 `dispatcher-01-center-dashboard.png` 平均差异保持 21.50、RMS 51.60。本轮同步复核并回退中心页 KPI 图标饱和化,因平均差异会从 21.50 升到 21.83RMS 升到 51.99。
- 新增视觉复刻待办台账 `docs/design/visual-polish-backlog.md`,按 6 张需打磨页沉淀当前指标、热点区域、下一轮建议切入点和已验证反向方向,避免重复尝试已被 `visual:diff` 证明无收益的图标、头像、文案和大结构改法。
- 继续校准管理看板右下对比表:将 `comparison-row` 最小行高从 34px 收敛到 30px、火花线高度从 32px 收敛到 28px,让“本周对比”在首屏更完整露出;`dispatcher-07-analytics-board.png` 平均差异保持 19.88、RMS 44.51,无回归。本轮同步复核并回退知识复盘顶部指标/趋势卡压缩,因 `dispatcher-05-knowledge-review.png` 会从 20.52 升到 20.78。
- 继续压低部门队列右侧成员负载差异:将成员行中的“AI 推荐徽标 + 分派文字按钮”合并为可点击推荐胶囊,成员行从 7 列收敛为 6 列,保留分派处理人能力同时减少右栏拥挤;`dispatcher-03-department-queue.png` 平均差异从 19.54 降到 19.50RMS 从 43.42 降到 43.32。
- 继续压低知识复盘页底部差异:将复盘表格行高从 82px 提高到 88px,让左侧列表、分页和底部动作区落位更接近 images2 首屏;`dispatcher-05-knowledge-review.png` 平均差异从 20.52 降到 19.94RMS 从 45.51 降到 44.78。
- 继续压低处理人详情页时间线差异:将处理过程时间线圆点从 28px 收敛到 26px、外圈从 5px 收敛到 4px,降低中部流程视觉重量且不改变处理动作;`client-03-issue-detail-handler.png` 平均差异从 18.41 降到 18.39RMS 从 44.26 降到 44.22。本轮同步复核并回退管理看板效率趋势图高度压缩,因 `dispatcher-07-analytics-board.png` 会从 19.88 升到 19.90。
- 继续压低部门队列右侧热力图差异:将团队负载热力图色块高度从 34px 收敛到 30px、圆角从 6px 收敛到 4px,使右侧负载热力图更接近 images2 的紧凑表格块;`dispatcher-03-department-queue.png` 平均差异从 19.50 降到 19.44RMS 保持 43.32,变更像素从 17.7% 降到 17.5%。
- 继续压低处理人详情页时间线视觉重量:在上一轮正向基础上将处理过程时间线圆点从 26px 继续收敛到 24px,外圈保持 4px;`client-03-issue-detail-handler.png` 平均差异从 18.39 降到 18.37RMS 从 44.22 降到 44.20。本轮同步复核并回退 2 个反向方向:知识复盘右侧摘要主卡高度压缩会使 `dispatcher-05-knowledge-review.png` 从 19.94 升到 20.63;问题池标题补设计稿盾牌标识平均差异不降且 RMS 从 47.46 升到 47.47。
- 继续压低处理人详情页流程区差异:将处理过程时间线圆点从 24px 继续收敛到 22px,保留原竖线位置和 4px 外圈;`client-03-issue-detail-handler.png` 平均差异从 18.37 降到 18.36RMS 从 44.20 降到 44.18。本轮同步复核并回退时间线竖线左移对齐圆点中心,因平均差异会从 18.37 回升到 18.38。
- 继续压低处理人详情页时间线权重:将处理过程时间线圆点从 22px 收敛到 20px,外圈和竖线保持不变;`client-03-issue-detail-handler.png` 平均差异从 18.36 降到 18.35RMS 从 44.18 降到 44.16。
- 继续微调处理人详情页时间线节点:当前源码圆点尺寸校准为 19px,并对比 18px 试验结果;两者均将 `client-03-issue-detail-handler.png` 平均差异压到 18.34,RMS 为 44.17。为避免节点过小影响可读性,保留 19px,并在视觉台账记录 18px 为持平备选。
- 校准调度端局部外壳宽度:将中心调度台和问题池路由的侧栏基准从默认 232px 调整为设计稿对应的 220px,同时保留客户端默认宽度和管理看板既有 220px。`dispatcher-01-center-dashboard.png` 平均差异从 21.50 降到 19.87RMS 从 51.60 降到 47.98`dispatcher-02-issue-pool.png` 平均差异从 18.83 降到 17.17RMS 从 47.46 降到 43.45,并进入复核。本轮同步复核并回退“所有调度端统一 220px”方向,因会拉高部门队列、知识复盘、提醒升级和规则配置页面差异。
- 继续压低部门队列右侧负载区域差异:将成员负载行从 44px / 7px padding 收敛为 38px / 3px padding,让热力图和 AI 分派建议上移贴近设计稿;`dispatcher-03-department-queue.png` 平均差异从 19.44 降到 18.32RMS 从 43.32 降到 41.47。本轮同步复核并回退头像 26px 持平方向、37px 过度压缩方向,以及 padding 2px 持平方向。
- 继续压低知识复盘工作区比例差异:将右侧 AI 复盘摘要栏从 620px 扩到 640px,使表格与摘要分栏更贴近设计稿;`dispatcher-05-knowledge-review.png` 平均差异从 19.94 降到 19.84RMS 从 44.78 降到 44.59。本轮同步复核并回退筛选栏补图标方向,因平均差异升到 19.95;也回退右栏 650px,因平均差异同样回升到 19.95。
- 继续压低管理看板中部卡片高度差异:在不改变效率趋势 SVG 曲线和坐标的前提下,收紧“处理效率趋势”底部摘要卡间距与内边距,使底部 SLA 区域略向设计稿落位靠近;`dispatcher-07-analytics-board.png` 平均差异从 19.88 降到 19.87RMS 从 44.51 降到 44.50。本轮同步复核并回退更紧的 5px / 8px 摘要卡,因为与保留值持平但可读性更弱。
- 继续压低中心调度台右侧检查器底部差异:将人员负载适配卡 padding 从 12px 收敛到 6px,压缩右下负载卡与底部动作区间距,不改变“退回补充 / 采纳派发”工作流;`dispatcher-01-center-dashboard.png` 平均差异从 19.87 降到 19.77RMS 从 47.98 降到 47.47。该方向同时让 bottom-right 热点更集中,后续若继续压缩需要先做人工可读性复核。
- 继续压低管理看板中部榜单区差异:将中部榜单卡的“查看全部”链接按钮底边距从 12px 收敛到 10px,使榜单卡底部更贴近设计稿;`dispatcher-07-analytics-board.png` 平均差异从 19.87 降到 19.84RMS 从 44.50 降到 44.47。本轮同步复核并回退顶部趋势/状态分布两列比例调整,因平均差异升到 20.28;也回退链接按钮 8px 边距,因与 10px 持平但更贴边。
- 继续压低知识复盘右侧摘要底部差异:将摘要动作按钮高度从 40px 收敛到 38px,让右侧底部操作区更贴近设计稿且不改变“生成知识条目 / 合并到已有知识”工作流;`dispatcher-05-knowledge-review.png` 平均差异从 19.84 降到 19.80RMS 从 44.59 降到 44.50。本轮同步复核并回退按钮继续压缩到 36px 的方向,因平均差异回升到 19.83。
- 继续压低管理看板右上工具区差异:将“自定义看板”从同一行工具条中拆出,按设计稿放到导出按钮下方,并将管理看板工具组整体上移 12px,不改变日期范围、导出和自定义看板点击工作流;`dispatcher-07-analytics-board.png` 平均差异从 19.84 降到 19.79RMS 从 44.47 降到 44.37。本轮同步复核并回退中部榜单行高 28px / 间距 3px 的方向,因平均差异升到 20.18;也回退工具组继续上移到 14px 的方向,因与 12px 指标持平但更贴近顶部边界。
- 本轮继续排除知识复盘的反向微调方向:表格行高 88px 回压到 86px 会使 `dispatcher-05-knowledge-review.png` 从 19.80 / 44.50 升到 20.05 / 44.86;顶栏“复盘设置”按钮收紧到 34px、AI 摘要内部分栏右列扩到 232px、底部动作按钮比例改为 1.16fr / 1fr / 1.16fr 均无收益或反向,已全部回退。管理看板“自定义看板”按钮 top 从 42px 收到 40px 后指标保持 19.79 / 44.37,因更接近设计稿两行工具间距且无回归,当前保留。
- 本轮继续排除部门队列右侧成员负载行高方向:当前基线下 `member-row` 保持 39px 时 `dispatcher-03-department-queue.png` 为 18.32 / 41.47;收紧到 38px 会升到 18.59 / 41.83,放大到 40px 会升到 18.39 / 41.61,均已回退。该结果覆盖早期“38px”记录,说明后续布局变化后 39px 已成为当前局部最佳值。
- 本轮继续排除处理人详情顶栏微调方向:顶栏处理按钮 padding 从 12px 放到 16px 会使 `client-03-issue-detail-handler.png` 从 18.34 / 44.17 升到 18.37 / 44.24;通知/帮助/用户区 gap 从 14px 收到 12px 虽平均差异持平但 RMS 升到 44.18,均已回退。后续处理详情页应优先看业务样例或右侧下一步动作内容,而不是继续挤压顶栏工具间距。
- 本轮继续排除中心调度台右下圆环方向:人员负载圆环从 70px 放大到 74px 会使 `dispatcher-01-center-dashboard.png` 从 19.77 / 47.47 升到 19.79 / 47.51,已回退。该页右下热点仍集中,但不能通过放大圆环解决;后续应避开圆环尺寸和低于 6px 的负载卡 padding,优先寻找不损害可读性的业务结构差异。
- 本轮继续排除知识复盘与管理看板的持平微调方向:知识复盘右侧 AI 摘要头部 padding 从 10px / 16px 收到 8px / 16px 后仍为 19.80 / 44.50;管理看板“自定义看板”按钮 top 从 40px 继续收到 38px 后仍为 19.79 / 44.37。两者均无额外收益,已回退到当前基线值。
- 本轮继续压低 4 个调度端首屏差异:中心调度台补齐设计稿筛选显示数、表格“新”状态徽标并收紧右侧检查器局部密度,`dispatcher-01-center-dashboard.png` 平均差异从 22.24 降到 21.99。
- 顶栏通用工具改为设计稿式圆形图标按钮,调度中心侧栏徽标改为设计稿运营口径(问题池 76、部门队列 24、提醒升级 23、知识复盘 12、规则配置 6),多张调度端页面获得小幅下降:问题池 19.30→19.29、提醒升级 17.81→17.80、知识复盘 20.67→20.66、管理看板 20.80→20.79。
- 知识复盘默认首屏表格控制为 5 行,让底部操作和右侧摘要更接近设计稿首屏;最新 `dispatcher-05-knowledge-review.png` 平均差异为 20.66。
- 管理看板 KPI 图标与时间格式对齐设计稿,并将主看板区域整体上移 6px,使趋势图、状态环图、中部榜单和右侧洞察首屏落位更接近高保真稿;`dispatcher-07-analytics-board.png` 平均差异从 20.80 降到 20.03,热点从 top-center/middle-center 改为 top-center/middle-left/bottom-left。
- 已刷新 `docs/design/implementation-screenshots/``docs/design/visual-diff/report.md`,当前 12 张页面仍为 3 张复核、9 张需继续打磨;最高差异页为 `dispatcher-01-center-dashboard.png` 21.99。
- 调整管理看板路由级壳层:`analytics-board` 单独使用 220px 侧栏,并把工作区顶部留白收紧到 16px,趋势图、效率图和状态环图高度更贴近 images2;右侧 AI 运营洞察从大色块改为白底列表并补齐第 4 条洞察。`dispatcher-07-analytics-board.png` 平均差异从 22.93 降到 21.04。
- 继续校准管理看板图表:问题趋势和效率趋势补充设计稿中的坐标刻度,状态环图中心总量改为千分位展示;最新 `dispatcher-07-analytics-board.png` 平均差异为 21.06,基本保持上一版水平,后续重点仍是中部图表比例和右侧对比表密度。
- 重构中心调度台右侧 AI 推荐面板:推荐处理人、置信度、推荐理由、相似命中、人员负载和底部动作分区对齐设计稿,底部动作固定在检查器 footer;中心表格补齐 AI 推荐头像和操作下拉按钮。中心页最新平均差异为 22.24,仍是最高差异页,后续重点是右侧底部和表格列宽/头像真实感。
- 结构化补齐部门队列页:KPI 改为设计稿运营量级,队列表扩展为 5 行并补充推荐处理人、更新时间、分页和底部批量动作;右侧成员负载增加 AI 分派建议卡,顶部改为“新建问题 + 数据更新时间 + 队列设置”的设计稿结构。当前 `dispatcher-03-department-queue.png` 平均差异为 20.24,结构更完整但还需要继续压右侧成员负载和热力图细节。
- 继续复刻部门队列页:共享 `DataTable` 增加可选列宽模板,部门队列表补齐当前分组头、折叠分组行和独立底部操作条;右侧成员负载拆成成员表、团队热力图、AI 分派建议三张独立卡片,并把整页改为左侧“指标 + 队列”与右侧运营栏同起点布局。最新 `dispatcher-03-department-queue.png` 平均差异为 19.90。
- 重构侧栏为端内专属导航:调度中心页面只展示调度菜单,客户端页面只展示客户端菜单,底部按端展示系统状态/个人工作概览、用户身份和快捷图标;保留“系统状态”和“立即同步”入口以覆盖同步 smoke。侧栏调整后视觉报告从 1 张复核、11 张需打磨改善为 3 张复核、9 张需打磨。
- 校准处理人详情页:顶部改为返回箭头 + 处理动作 + 通知/帮助/处理人身份,路由级侧栏和工作区内边距贴近客户端详情稿,三栏比例调整为 250px / 1fr / 400px,并拉高相似历史问题区域。`client-03-issue-detail-handler.png` 平均差异从 21.55 降到 20.00。
- 校准知识复盘下半区比例:主表格与 AI 复盘摘要从 1fr / 520px 调整为 1fr / 620px,并降低表格最小列宽,右侧摘要密度更接近高保真稿。`dispatcher-05-knowledge-review.png` 平均差异从 21.53 降到 21.14。
- 校准移动端提交 / 补充页:手机屏幕内部改为 flex 容器,表单占满屏幕,底部操作区自动推到底部,两个手机稿的按钮位置更接近设计图。`client-05-mobile-submit.png` 平均差异从 21.46 降到 19.21。
- 已刷新 `docs/design/implementation-screenshots/``docs/design/visual-diff/report.md`,当前 12 张页面为 3 张复核、9 张需继续打磨;最高差异页为 `dispatcher-01-center-dashboard.png` 22.24。
## 本轮完成
已从设计图阶段进入一比一复刻实现阶段,并完成第一版前端重构:
- 新增 `src/app`:应用入口、路由、应用状态和业务动作。
- 新增 `src/domain`:问题、部门、AI 派发、通知升级、规则等领域类型。
- 新增 `src/data/seedData.ts`:集中管理 mock 用户、部门、问题、AI 建议、升级、规则和洞察数据。
- 新增 `src/data/appRepository.ts`:本地持久化新调度平台状态,刷新页面后保留派发、接单、提交、验收等操作结果。
- 新增 `src/data/appSyncRepository.ts`:把新调度平台的问题、时间线、AI triage、提醒、部门、人员、规则和知识草稿封装为服务端同步 payload,并提供远端数据合并、同步状态描述、token/settings 读取和角色权限请求头。
- 新增 `src/data/platformSettingsRepository.ts`:集中保存同步服务、AI 能力、提醒策略和权限角色配置,包含阈值、模型、通知渠道、角色权限和字段归一化逻辑。
- 新增 `src/data/secretRepository.ts`AI API Key 独立走 Tauri `save_secret/load_secret` 原生命令,浏览器预览自动降级到本地 secret 存储,避免混入普通平台配置 JSON。
- 修复 `src/data/appSyncRepository.ts`:默认同步 transport 使用包装后的 `fetch`,避免浏览器里把 `fetch` 当对象方法调用导致 this 绑定错误。
- 增强 `src/data/appSyncRepository.ts`:同步 push/pull/health 请求会携带 `X-Issue-Hub-Role``X-Issue-Hub-Permissions`,服务端可按当前角色校验同步权限。
- 新增 `src/domain/dispatch/dispatchRules.ts`:派单规则命中、目标部门推荐、处理人推荐、AI 置信度和自动派发门槛。
- 新增 `src/domain/notifications/escalationRules.ts`SLA watch / warning / breached 分层、提醒事件生成和批量扫描。
- 新增 `src/domain/issues/issueFilters.ts`:问题池和部门队列复用的状态、优先级、部门、来源、SLA 筛选逻辑。
- 新增 `src/domain/issues/issueSearch.ts`:全局搜索复用的编号、标题、负责人、部门、状态、标签匹配逻辑。
- 新增 `src/domain/analytics/analyticsSelectors.ts`:管理看板范围、部门、风险视图筛选、指标汇总、趋势序列、状态分布、部门排行、重复问题排行、效率趋势、SLA 风险和本周对比逻辑。
- 新增 `src/domain/permissions/permissionPolicy.ts`:当前生效角色、权限点、路由访问和操作权限的统一判定逻辑。
- 新增 `src/domain/ai/aiTriageClient.ts`:新调度平台专用 AI triage 客户端,可调用 OpenAI-compatible `/chat/completions`,并把模型返回归一化为 `AiTriageResult`
- 新增 `src/domain/ai/knowledgeActions.ts`:从已解决问题生成知识沉淀草稿。
- 新增 `src/domain/ai/knowledgeSelectors.ts`:知识复盘 KPI、趋势、复盘表格行、知识应用效果和相似问题派生逻辑。
- 新增 `src/app/appWorkflows.ts`:把批量派发、客户端提交、知识沉淀、规则保存/测试/发布从 React hook 中抽离为可测试的应用工作流。
- 新增 `src/shared`:共享按钮、徽标、KPI、表格、时间线、进度条、侧边栏、顶部栏、检查器和拆分样式。
- 完成共享页面样式收口:删除 `src/shared/styles/pages.css` 入口与文件,将剩余真实共享的响应式布局和 SVG 图表基础样式迁回 `layout.css` / `components.css`,并移除未被路由引用的旧 `MyTaskList``HandlerActionPanel` 组件。
- 新增 `docs/design/completion-audit.md`:按原始目标逐项核对设计图、设计定稿、页面复刻、业务功能、代码分层、文档沉淀、验证基线和已知边界,作为可评审交付基线。
- 增强 `src/shared/components/DataTable.tsx`:统一表格空结果状态,搜索或筛选无命中时给出明确下一步提示。
- 修复 `src/shared/components/DataTable.tsx`:表格行改为 `div role="button"`,避免行按钮中嵌套复选框/操作按钮导致真实点击事件失效。
- 增强 `src/shared/styles`:补充移动端断点,窄屏下左侧导航转为顶部图标导航,工作区恢复全宽,表格保留横向滚动,移动提交手机壳完整居中。
- 增强 `src/shared/layout/Sidebar.tsx`:侧栏系统状态卡显示本地/同步/异常状态,并提供“立即同步”和“重置演示”全局入口。
- 新增 `src/features/settings/PlatformSettingsPanel.tsx`:顶部“设置”入口已升级为真实全局设置抽屉,可配置同步服务、AI 模型能力、提醒策略和权限角色矩阵。
- 新增 `scripts/browser-smoke.mjs`:无新增依赖的 Chrome DevTools Protocol 浏览器 smoke,覆盖真实搜索、按钮点击、问题池批量派发、中心派发、部门分派、处理人动作、提交人验收/返工、SLA 扫描/处理、移动端提交/补充、移动窄屏、提交流转、本地持久化回放、知识生成/合并、规则保存/测试/发布、管理看板筛选和 mock 服务端同步成功路径;同一脚本支持 `npm run capture:pages` 刷新 12 张桌面实现截图和 3 张移动截图。
- 新增 `scripts/visual-diff.mjs``npm run visual:diff`:无新增依赖读取 PNG,逐页对比 `images2` 设计图和实现截图,输出 12 张差异图与 `docs/design/visual-diff/report.md`,作为后续像素级打磨路线图。
- 扩展 `server/src/main/java/com/worknode/issuehub/sync/SyncController.java`:服务端同步接口已支持新调度平台集合,不再只同步旧版 issues/attachments/analysis/actionDraftspush/pull 在 Bearer Token 之外还要求角色头和 `manage_settings` 权限声明,缺 Token 返回 401,缺权限返回 403。
- 新增 `server/src/main/java/com/worknode/issuehub/sync/SyncCorsConfiguration.java`:同步服务默认允许本地 Vite/Tauri 预览来源,可通过 `ISSUE_HUB_ALLOWED_ORIGINS` 覆盖,并允许同步权限请求头通过预检。
- 新增 `server/src/test/java/com/worknode/issuehub/sync/SyncControllerTest.java`:覆盖同步接口 200、401、403 三类 Controller 权限结果。
- 新增 `src/features/dispatcher`:调度中心 7 个页面。
- 拆分中心调度台结构与样式:将 `AiDispatchInspector``DispatchQueueTable` 归入 `src/features/dispatcher/components/center/`,新增 `centerDashboard.css`,将中心调度台底部运营提示与响应式规则从共享 `pages.css` 抽出。
- 拆分提醒升级页样式:新增 `src/features/dispatcher/components/escalation/escalationCenter.css`,将风险列表、升级事件列表、SLA 升级 playbook 与提醒升级响应式规则从共享 `pages.css` 抽出。
- 新增 `src/features/dispatcher/components/rules`:规则类型导航、AI 派单策略和规则预览组件,用于承载规则配置页的设计稿级工作台。
- 新增 `src/features/dispatcher/components/knowledge`:知识复盘 KPI/趋势、复盘表格和 AI 摘要组件,用于承载知识复盘页的设计稿级工作台。
- 新增 `src/features/client`:客户端 5 个页面。
-`src/App.tsx` 缩减为应用入口转发,避免继续单文件堆砌。
- 扩展 seed 演示数据:中心调度台默认待派发问题从 2 条提升到 6 条,首屏表格密度更贴近 images2 高保真调度台。
- 细化管理看板:拆出 KPI、趋势折线、状态环图、排行、效率趋势、SLA 风险表和右侧 AI 洞察组件,首屏结构更贴近 images2 高密度运营看板。
- 拆分管理看板样式:新增 `src/features/dispatcher/components/analytics/analyticsBoard.css`,将筛选控件、KPI、趋势图、状态环图、排行、效率趋势、SLA 风险、AI 洞察、周对比和管理看板响应式规则从共享 `pages.css` 抽出,仅保留跨页面 SVG 图表基础线条样式。
- 优化管理看板一比一复刻:管理看板 `TopBar` 改用无搜索模式,右上工具区对齐设计稿的日期范围、导出和自定义看板操作;保留隐藏筛选控制以维持浏览器 smoke 的时间范围、部门和风险视图筛选验证;KPI、趋势图和状态分布改用设计稿运营量级展示,`visual:diff``dispatcher-07-analytics-board.png` 平均差异从 23.80 降到 22.89。
- 继续优化管理看板复刻:`TopBar` 新增 `showUtilities` 开关,管理看板隐藏通用通知/帮助/设置按钮,保留日期范围、导出报表、自定义看板工具条;部门负载、重复问题和本周对比改为设计稿运营规模数据,视觉上更接近高保真稿的数据密度。当前自动 diff 仍显示 `dispatcher-07-analytics-board.png` 为最高差异页,后续需要重构中部图表高度和右侧洞察密度。
- 细化规则配置页:从单行规则列表升级为三栏规则工作台,包含规则类型导航、条件矩阵、规则动作、AI 派单策略、规则预览和底部发布栏,同时保留现有 save/test/publish 工作流。
- 拆分规则配置页结构与样式:将 `RuleBuilder` 归入 `src/features/dispatcher/components/rules/`,新增 `ruleConfig.css`,将规则类型导航、条件矩阵、规则动作、AI 派单策略、规则预览、发布栏和规则页响应式规则从共享 `pages.css` 抽出。
- 细化知识复盘页:从稀疏复盘列表升级为高密度知识运营台,包含 KPI、趋势图、tab/筛选条、问题表格、AI 复盘摘要、知识应用效果和可见知识动作,同时保留生成/合并知识工作流。
- 拆分知识复盘页样式:新增 `src/features/dispatcher/components/knowledge/knowledgeReview.css`,将知识 KPI、趋势卡片、复盘表格、右侧 AI 摘要、应用效果、相似问题、复盘记录和知识页响应式规则从共享 `pages.css` 抽出。
- 优化知识复盘页一比一复刻:右侧 AI 复盘摘要改为设计稿式双列摘要区,把知识应用效果和相似问题收进同一主卡;默认选中问题提升到首行,知识命中率和趋势展示对齐设计稿,保留“生成知识条目 / 合并到已有知识 / 标记无需沉淀”完整交互。当前 `visual:diff``dispatcher-05-knowledge-review.png` 平均差异降至 21.53。
- 细化移动端提交 / 补充页:拆出手机壳、移动提交表单、补充信息表单和左侧能力说明组件,补齐原生顶部栏、AI 预检查、缺失信息清单、处理进度、负责人和底部操作,同时保留移动提交、保存草稿和提交补充工作流。
- 拆分移动端提交 / 补充页样式:新增 `src/features/client/components/mobile/mobilePreview.css`,将手机壳、移动能力说明、提交表单、补充信息、处理进度、负责人和移动端响应式规则从共享 `pages.css` 抽出。
- 优化移动端提交 / 补充页一比一复刻:`mobile-submit` 路由改为独立无侧栏画布,桌面截图尺寸对齐 `client-05-mobile-submit.png` 设计图,初始表单改为空表单占位,提交和保存时仍使用演示草稿兜底以保持 smoke 功能。
- 细化客户端提交问题页:拆出富文本描述、影响范围、影响等级、附件上传和 AI 预检查侧栏组件,补齐目标图中的分类置信度、建议补充、相似问题、预计流转部门和底部保存/提交动作,同时保留提交到中心与保存草稿工作流。
- 拆分客户端提交问题页样式:新增 `src/features/client/components/submit/submitIssue.css`,将提交流程表单、富文本编辑器、影响范围、等级、附件上传、联系人、AI 预检查侧栏和移动端响应式规则从共享 `pages.css` 抽出。
- 归并客户端提交问题页表单结构:将 `SubmitIssueForm` 移入 `src/features/client/components/submit/`,并把旧 `form-grid` 依赖替换为提交页局部 `submit-form-grid`,进一步减少共享 `pages.css` 的页面细节。
- 细化客户端我的待办页:拆出待办指标、任务表格和右侧 AI 详情操作面板,补齐待接单/处理中/待补充/超时筛选、SLA 排序、接单按钮、AI 摘要、推荐下一步、相似问题和固定底部操作条,同时保留接单、请求协作、转派和进入处理详情工作流。
- 拆分客户端我的待办页样式:新增 `src/features/client/components/workbench/workbench.css`,将工作台布局、表格、右侧详情、底部操作条和响应式规则从共享 `pages.css` 抽出,减少页面样式继续堆进单一大文件。
- 细化提交人进度追踪页:拆出提交记录列表、主进度工作台和右侧问题信息组件,补齐状态筛选、处理进度、负责人/预计完成/优先级、最新回复、处理记录、我的操作、问题描述、相关信息和附件区域,同时保留补充、催办、确认解决和要求返工工作流。
- 拆分提交人进度追踪页样式:新增 `src/features/client/components/tracking/tracking.css`,将提交记录筛选、问题列表、主进度卡、负责人摘要、最新回复、处理记录、我的操作、右侧问题信息、附件和移动端响应式规则从共享 `pages.css` 抽出。
- 细化处理人问题详情页:拆出问题摘要侧栏、处理中间工作区和 AI/动作侧栏,补齐高风险/SLA 元数据、处理过程 tab、时间线、评论输入、关联任务、AI 处理建议、相似历史问题和下一步动作,同时保留接单、请求协作、转派和提交处理结果工作流。
- 拆分处理人问题详情页样式:新增 `src/features/client/components/handler/handlerDetail.css`,将三栏处理布局、问题摘要侧栏、处理时间线、评论区、关联任务、AI 建议、相似问题、下一步动作和移动端响应式规则从共享 `pages.css` 抽出。
- 优化处理人问题详情页一比一复刻:处理详情 `TopBar` 改用无搜索工具模式,顶栏动作对齐设计稿的接单、协作、转派、更多操作;右侧下一步动作改为紧凑卡片式主次按钮,移除多余底部提示,保留接单、请求协作、转派和提交处理结果完整业务点击路径;`visual:diff``client-03-issue-detail-handler.png` 平均差异从 23.52 降到 22.02。
- 校准桌面壳层坐标:侧栏宽度调整为 232px,工作区桌面内边距保持 24px,兼顾多张 images2 截图的内容起点;客户端提交、工作台、进度追踪、知识复盘、规则配置等页面的自动 diff 均有不同程度下降。
- 加固 `scripts/browser-smoke.mjs`:逐页截图清空本地演示数据后改用 cache-bust 导航刷新页面,避免 `location.reload()` 与 CDP 导航竞态导致 root 空白;截图失败时会输出 URL、root/body 摘要和最近加载资源,临时 Chrome profile 清理也改为重试降级。
## 已接入页面
### 调度中心
- 中心调度台。
- 问题池。
- 部门队列。
- 提醒升级。
- 知识复盘。
- 规则配置。
- 管理看板。
### 客户端
- 我的待办。
- 提交问题。
- 处理人问题详情。
- 提交人进度追踪。
- 移动端提交 / 补充。
## 已接入本地业务动作
- 页面导航切换。
- 问题选择和详情联动。
- 顶部全局搜索输入,可按问题编号、标题、负责人、部门、状态、标签筛选核心列表。
- 表格行勾选、表头全选和批量动作。
- 中心调度台按待派发、高风险、跨部门、AI 高置信筛选。
- 问题池按状态、优先级、部门、来源、SLA、提交时间筛选。
- 部门队列按状态、优先级、SLA、创建时间筛选。
- 采纳 AI 派发。
- 批量采纳 AI 派发。
- 合并相似问题并写入主问题时间线。
- 退回补充。
- 派发到部门。
- 部门分派处理人。
- 接单处理。
- 请求协作。
- 转派回中心。
- 提交处理结果。
- 提交人补充信息。
- 提交人验收通过。
- 提交人要求返工。
- 升级负责人。
- 自动扫描 SLA 并生成提醒事件。
- 标记提醒事件已处理。
- 提交新问题。
- 保存提交草稿。
- 移动端提交页可直接提交演示问题到中心。
- 移动端补充页可对当前选中问题提交补充信息,并将问题重新推回中心待派发。
- 生成知识条目草稿。
- 合并知识条目到已有知识库并写入时间线。
- 保存/测试派单规则,规则测试预览会根据当前规则和样例问题实时计算推荐结果。
- 发布派单规则。
- 管理看板可按时间范围、部门和问题焦点切换指标。
- 顶部通知、帮助、设置入口提供统一操作反馈。
- 侧栏系统状态可显示本地演示、同步中、已同步、同步异常,并可触发立即同步;同步未配置时给出明确反馈。
- 顶部设置入口可打开平台设置面板,支持保存同步地址/Token、AI 服务类型/模型/采纳阈值、SLA 提醒与通知渠道、权限角色和审计留存天数。
- AI 设置支持 API Key 保存、配置检查和清除;设置状态只保存 `apiKeyConfigured`,不把密钥写入平台配置对象。
- 同步设置已覆盖成功路径:设置面板可测试 mock 服务端健康检查、执行 push/pull,并将远端问题和时间线合并进本地状态。
- 同步请求已携带当前角色和权限声明;服务端同步 push/pull 已按 `manage_settings` 做权限门槛。
- 权限角色设置已覆盖中心调度员、部门负责人、处理人、提交人和运营观察员 5 类角色,可按权限组开关问题流转、运营治理和系统配置权限。
- 权限策略已接入路由访问和关键按钮:当前角色缺少权限时导航会被拦截,派发、分派、处理、验收、规则、知识、提醒和设置操作会禁用或给出统一缺权反馈。
- 中心调度台支持对当前选中问题执行“AI 重新分析”,真实调用配置的 AI Base URL,更新 AI 推荐结果并写入“AI 重新分析完成”时间线。
- 重置演示数据。
- 搜索或筛选无结果时,调度表格、问题池、部门队列、客户端待办和提交人追踪均有可见空状态。
关键业务动作会写入问题时间线。
状态数据已持久化到浏览器本地存储;重置演示数据可恢复 seed 数据。
## 验证
已通过:
```pwsh
npm test
npm run build
npm run smoke:browser
npm run capture:pages
npm run visual:diff
```
当轮测试结果:19 个测试文件、69 个测试全部通过;生产构建通过;浏览器 smoke 通过;逐页实现截图刷新通过;视觉差异报告生成通过。最新验证基线见上方 2026-06-10 视觉复刻续跑记录。
服务端验证说明:本轮已新增 Spring Boot 同步接口权限测试,但当前机器未安装 `mvn`,且 `server/` 没有 Maven Wrapper,因此 `cd server; mvn test` 暂无法在本机执行。需要在安装 Maven 后补跑服务端测试。
开发服务:
```text
http://127.0.0.1:5174/
```
已保存首屏实现截图:
- `docs/design/implementation-screenshot-center-dashboard.png`
已刷新 12 张逐页实现截图:
- `docs/design/implementation-screenshots/`
已刷新移动视口截图:
- `docs/design/implementation-screenshots/client-05-mobile-submit-mobile.png`
- `docs/design/implementation-screenshots/client-02-submit-issue-mobile.png`
- `docs/design/implementation-screenshots/dispatcher-02-issue-pool-mobile.png`
已补充浏览器交互 smoke 截图:
- `docs/design/interaction-smoke/analytics-custom-layout-saved.png`
- `docs/design/interaction-smoke/client-workbench-detail-tabs.png`
- `docs/design/interaction-smoke/center-ai-dispatch-accepted.png`
- `docs/design/interaction-smoke/center-ai-live-triage.png`
- `docs/design/interaction-smoke/department-assigned-handler.png`
- `docs/design/interaction-smoke/escalation-sla-scanned.png`
- `docs/design/interaction-smoke/escalation-marked-handled.png`
- `docs/design/interaction-smoke/global-sync-local-mode.png`
- `docs/design/interaction-smoke/handler-comment-task-linked.png`
- `docs/design/interaction-smoke/handler-detail-expanded-report.png`
- `docs/design/interaction-smoke/handler-resolved.png`
- `docs/design/interaction-smoke/issue-pool-bulk-dispatched.png`
- `docs/design/interaction-smoke/issue-pool-bulk-tagged.png`
- `docs/design/interaction-smoke/issue-pool-empty-search.png`
- `docs/design/interaction-smoke/knowledge-draft-generated.png`
- `docs/design/interaction-smoke/knowledge-draft-merged.png`
- `docs/design/interaction-smoke/knowledge-no-draft-marked.png`
- `docs/design/interaction-smoke/mobile-narrow-submit.png`
- `docs/design/interaction-smoke/mobile-narrow-submitted.png`
- `docs/design/interaction-smoke/mobile-submitted-tracking.png`
- `docs/design/interaction-smoke/mobile-supplement-submitted.png`
- `docs/design/interaction-smoke/analytics-filtered.png`
- `docs/design/interaction-smoke/rule-config-condition-removed.png`
- `docs/design/interaction-smoke/rule-config-audit-log.png`
- `docs/design/interaction-smoke/rule-config-tested.png`
- `docs/design/interaction-smoke/settings-panel-configured.png`
- `docs/design/interaction-smoke/settings-permission-roles.png`
- `docs/design/interaction-smoke/settings-sync-success.png`
- `docs/design/interaction-smoke/submit-issue-ai-supplement-applied.png`
- `docs/design/interaction-smoke/submitter-detail-expanded-download.png`
- `docs/design/interaction-smoke/submitter-reopened.png`
- `docs/design/interaction-smoke/submitter-approved.png`
- `docs/design/interaction-smoke/submitter-tracking-after-submit.png`
- `docs/design/interaction-smoke/rule-config-published.png`
## 已补测试
- `src/app/routes.test.ts`hash 路由解析与序列化。
- `src/domain/analytics/analyticsSelectors.test.ts`:管理看板作用域筛选、指标汇总、趋势序列、状态分布、排行、SLA 风险和本周对比数据。
- `src/domain/ai/aiTriageClient.test.ts`OpenAI-compatible chat completion 请求、AI triage 结果归一化、未知部门/人员回退和未配置失败。
- `src/domain/issues/issueActions.test.ts`:问题状态流转和时间线写入。
- `src/domain/issues/issueFilters.test.ts`:问题状态、优先级、部门、SLA 组合筛选和筛选摘要。
- `src/domain/issues/issueSearch.test.ts`:按编号、标题、负责人搜索问题,并校验空搜索回退和无命中结果。
- `src/domain/ai/knowledgeActions.test.ts`:从问题生成知识草稿。
- `src/domain/ai/knowledgeSelectors.test.ts`:知识复盘指标、趋势、表格候选行、无需沉淀 tab、右侧效果和相似问题派生数据。
- `src/app/appWorkflows.test.ts`:批量派发跳过已关闭问题、写入派发时间线;批量关闭、批量升级、批量标签会更新问题并写入时间线;客户端提交后生成问题、AI 建议、时间线和进度追踪路由数据;处理人评论 / 关联任务可写入时间线;知识草稿生成/合并不重复,无需沉淀决策会移除同问题草稿并写入时间线;规则保存、草稿、审计、条件删除、测试和发布可计算结果。
- `src/domain/dispatch/dispatchRules.test.ts`:派单规则命中、最佳处理人推荐、低风险自动派发门槛。
- `src/domain/notifications/escalationRules.test.ts`:SLA 等级判定、已解决问题跳过提醒、批量扫描去重。
- `src/domain/permissions/permissionPolicy.test.ts`:当前角色解析、权限判断、路由权限映射和权限标签。
- `src/data/appRepository.test.ts`:本地持久化保存、读取、损坏数据回退;提交问题、批量派发、知识合并和规则配置结果可保存并重新加载。
- `src/data/appSyncRepository.test.ts`:同步设置/token 读取、完整调度平台 payload、远端记录合并、push/pull 调用、角色权限请求头、健康检查、本地模式状态描述和默认 fetch 绑定回归。
- `src/data/platformSettingsRepository.test.ts`:平台设置默认值、AI 配置归一化、提醒策略归一化、权限角色归一化、同步配置 token 状态保存。
- `src/data/secretRepository.test.ts`:AI API Key 通过原生密钥桥保存/读取、浏览器 fallback、清除密钥。
- `src/shared/components/DataTable.test.tsx`:表格在空数据时渲染统一空状态,并禁用全选入口;表格行使用 `role="button"`,避免嵌套交互控件。
## 已补浏览器 smoke
- `npm run smoke:browser`:真实打开本地页面并清空演示本地存储。
- 在问题池输入无命中搜索词,验证空结果状态和空批量派发反馈。
- 在侧栏系统状态点击立即同步,验证未配置服务端时显示本地演示状态和同步反馈。
- 在 smoke 内启动 mock 同步服务,设置面板保存同步地址/Token 后通过健康检查,执行 push/pull,并验证远端问题和时间线已合并到本地状态。
- mock 同步服务允许 `X-Issue-Hub-Role``X-Issue-Hub-Permissions`,浏览器预检可覆盖真实同步请求头路径。
- 在顶部设置入口打开平台设置面板,验证同步服务、AI 能力、AI API Key 保存/配置检查/清除、提醒策略和权限角色保存反馈,并生成设置面板截图。
- 临时关闭平台管理员的“规则配置”权限,验证进入规则配置页会被权限拦截;随后恢复权限,确保后续规则 smoke 仍可执行。
- 在 smoke 内启动 mock AI 服务,设置面板保存 AI Base URL/API Key 后,在中心调度台执行 AI 重新分析,验证新的 triage 结果和时间线事件写入本地状态。
- 在我的待办页切换右侧详情 tab、打开更多问题操作并返回列表,验证待办检查器真实可操作。
- 在问题池勾选单条问题并批量派发,验证勾选态、批量派发 toast 和本地持久化中的派发时间线;随后展开批量治理面板并导入标签,验证标签和时间线写入。
- 在中心调度台采纳 AI 派发,验证问题进入待接单状态并写入派发时间线。
- 在部门队列分派处理人,验证部门分派时间线写入。
- 在处理人详情依次执行接单、请求协作、发送内部评论、关联任务、展开详情、查看完整 AI 报告、附件下载、转派、提交处理结果,验证状态、检查器内容和时间线连续变化。
- 在提交人追踪页展开右侧完整描述、触发附件打包下载,并执行要求返工和确认解决,验证返工/关闭状态和验收时间线。
- 在提醒升级页执行 SLA 扫描和标记处理,验证新增提醒、自动 SLA 扫描时间线和 handled 状态。
- 在移动端提交/补充页执行提交到中心和提交补充,验证移动端问题写入、进度追踪跳转和补充时间线。
- 在移动窄屏视口执行移动端提交,验证顶部图标导航和窄屏提交流转。
- 在客户端提交问题前应用 AI 预检查补充建议,验证建议写入描述;提交后验证跳转到提交人进度追踪,并校验本地存储中的新问题、描述、时间线和 AI triage 数据。
- 客户端提交问题已支持真实本地草稿:保存草稿会写入平台持久化状态,reload 或重新进入提交页后恢复标题、描述、来源、所属系统、影响范围、期望时间、联系人和影响等级;提交成功后清理草稿,避免旧草稿残留。
- 在知识复盘执行生成知识条目、合并知识和标记无需沉淀,验证知识草稿、知识决策和三类时间线。
- 在规则配置保存自动化模式、连续新增 2 条普通规则条件、添加分组条件、删除规则条件、保存草稿、查看变更记录、运行测试和发布规则,验证每条新增条件均写入、规则持久化、条件矩阵状态、审计记录、测试反馈和发布反馈。
- 在管理看板切换时间范围、部门和风险视图,打开自定义看板、调整组件并保存布局,验证筛选后的指标和刷新反馈。
- 新增完成度审计:`docs/design/completion-audit.md` 明确当前交付为可评审完整前端 MVP,并记录像素级自动 diff、服务端 Maven 测试环境和微交互截图归档等后续增强边界。
- 新增视觉差异报告:`npm run visual:diff` 已输出 12 张差异图;当前 3 张进入复核、9 张仍需继续视觉打磨。移动端提交 / 补充页已从 AppShell 包裹改为独立画布,最大结构差异已收敛。
- 继续压低管理看板视觉差异:顶栏搜索框已移除为无搜索工具区,KPI、状态分布、排行榜和本周对比改为设计稿量级;当前 `dispatcher-07-analytics-board.png` 仍处于需打磨,热点集中在中部图表和榜单区域。
- 继续压低处理人详情页视觉差异:顶栏和右侧下一步动作区已收敛,当前 `client-03-issue-detail-handler.png` 仍处于需打磨,热点集中在右侧动作区底部和左上导航/摘要区域。
## 下一步
-`docs/design/visual-diff/report.md` 继续逐页压低视觉差异:统一客户端与调度中心侧栏密度、顶部工具区和右侧检查器细节。
- 刷新更多交互态截图对比,尤其是客户端工作台移动端状态和右侧详情滚动状态。
- 继续补后端业务接口鉴权:当前前端已具备权限角色配置、路由拦截和关键按钮/动作保护,服务端同步接口已接入权限门槛;若后续拆出独立问题/规则/知识 API,需要沿用同一权限策略。