售前演示优先级 p0。 方案 v7 p20 是「领导端的第一屏」:四个指标卡 + 两张图。现在 duly_duty_health 有停滞三卡 + 按期率 + 两张图,但方案的四卡里缺两张、两张图都不是方案的。全部是数据集 + 组件元数据。
四个指标卡(p8、p20 同一组)
| 卡 |
现状 |
做法 |
| 停滞项 |
✔ |
保留 |
| 逾期项 |
✗ |
#52 落地后 late_after 是普通日期列:late_after < {today} AND status IN (open, in_progress),治理口径 |
| 按期完成率 |
✔ (#52) |
保留;format 问题见 #101,不要绕 |
| 清单完备度 |
✗ |
按 review_status 计数、不按条目数:approved 占全部治理职责的比例,附「N 条待确认 / M 条待审定」副标。字段由同批「清单确认与审定」卡片提供;先落地的一方定义数据集,后落地的合 main。绝不做「谁条目数偏低」——AGENTS.md 不变量 |
两张图(p20)
- 各部门逾期项分布:柱图,维度业务单元(按名字排序,永远不按值),度量逾期项。
- 本月工作构成:饼图 重复事项 / 单次事项 / 常设职责——按
duly_duty.form 计数(recurring / one_off / standing)。注意常设职责没有任务,这张图数的是职责不是任务;图下一句口径说明「完成率只统计重复事项」(p20 原文)。
规则(沿用现有仪表盘文件头)
- 每个组件绑数据集,不绑对象;不出现任何按人排序的维度。
- 停滞桶是累进的,不叠不堆。
- 颜色沿用现有两色,
showDataLabels: false 的对比度理由在文件头,别改。
- 度量标签的中文等平台 #14253 发布(duly#106),本卡不绕。
验收
- 浏览器截图:四卡两图,用种子数据有真实数字(种子里要有几条逾期、几条待确认——和同批两张卡对齐)
test/dashboard.test.ts 的「不按人排序」属性守卫仍然通过并覆盖新组件
- 四道门绿;中文 bundle 补齐新组件标题/描述
售前演示优先级 p0。 方案 v7 p20 是「领导端的第一屏」:四个指标卡 + 两张图。现在
duly_duty_health有停滞三卡 + 按期率 + 两张图,但方案的四卡里缺两张、两张图都不是方案的。全部是数据集 + 组件元数据。四个指标卡(p8、p20 同一组)
late_after是普通日期列:late_after < {today} AND status IN (open, in_progress),治理口径format问题见 #101,不要绕review_status计数、不按条目数:approved占全部治理职责的比例,附「N 条待确认 / M 条待审定」副标。字段由同批「清单确认与审定」卡片提供;先落地的一方定义数据集,后落地的合 main。绝不做「谁条目数偏低」——AGENTS.md 不变量两张图(p20)
duly_duty.form计数(recurring / one_off / standing)。注意常设职责没有任务,这张图数的是职责不是任务;图下一句口径说明「完成率只统计重复事项」(p20 原文)。规则(沿用现有仪表盘文件头)
showDataLabels: false的对比度理由在文件头,别改。验收
test/dashboard.test.ts的「不按人排序」属性守卫仍然通过并覆盖新组件