# 状态语言 系统使用五种语义状态。业务模块保留自己的领域枚举,并在展示边界映射到共享 `StatusTone`,不要让展示文案、接口字符串或 Tailwind 原色类直接决定状态样式。 | Tone | 用途 | 典型状态 | | --- | --- | --- | | `neutral` | 尚未开始或不再活动 | 预约、草案、待办、取消、中止、跳过、未分级 | | `info` | 正在发生的过程 | 执行中、提交中、加载中、连接中 | | `success` | 已完成或健康 | 完成、在线、正常、已批准 | | `warning` | 需要关注但未达到异常 | 关注、降级、待复核、待复令、待确认 | | `danger` | 已异常或操作失败 | 异常、失败、离线、高风险、事故、权限拒绝 | ## 报告风险 报告风险固定为三档: - `normal` 映射 `success`,显示“正常”。 - `attention` 映射 `warning`,显示“关注”。 - `critical` 映射 `danger`,显示“异常”。 `info` 只表示过程,不参与风险等级。不得把 `attention` 合并到正常或异常。 ## 表达规则 - 状态标签使用 `StatusBadge`,小型指示使用 `StatusDot`,图标节点使用 `StatusIcon`。 - 大面积容器只使用柔和背景,禁止实心红色或橙色状态卡片。 - `warning` 和 `danger` 必须同时提供文字或图标,不能只依赖颜色。 - 只有进行中的状态可以使用 `live` 或 `loading` 动效。 - “复令”是提交处置结果的动作,执行完成但尚未提交时显示“待复令”,使用静态 `warning`;不得继续显示为“执行中”或提前显示为完成态。 - 动效必须在 `prefers-reduced-motion` 下停止。 - 蓝色选中态属于交互反馈,不作为业务风险状态。 - 紫色只表示 Agent 身份,不表示未知或更高风险。 ## 地图状态 地图与面板共享语义,但保留独立色值以适应浅色底图、影像底图和白色 casing。 新增地图状态时,应先补充 `map-colors.ts`,再通过对比度测试验证,不要在图层定义中 写入新的颜色字面量。