状态词汇表 · 六码一致语言

系统对用户报告的所有状态,只使用下方 6 个受控词。其他表述(例如「建议执行」「数据不足」「等审批」)在门禁扫描下会被判为违规变体。

报告来源:PROJECT_ELEVATION_REPORT_2026-10-26.md §3.3「所有状态用同一语言」。 单一真源:data/status_vocabulary.json。CI 门禁:scripts/check_status_vocabulary.py。前端渲染:/js/status-badge.js。

为什么锁死 6 个词

自由文本的状态描述("可以推荐"、"数据不够"、"未经实验")在同一份报告里可能各说各话,无法被用户搜索、比对或自动化。用 6 个受控词 + 门禁扫描,让每次输出都可以机器核验,也让 REFUTED / OUT_OF_SCOPE 这类不可逆状态无法被 LLM 悄悄改写。

严重性与 AI 生成许可

Code严重性AI 可自行生成?需附证据?典型场景

CI 门禁与硬失败

scripts/check_status_vocabulary.py 采用三级扫描策略: HARD(frontend_fixed/**)违规即退出 1; SOFT(engine/**、docs/**、data/**)只报告不阻断; EXEMPT(词汇表自身、schema、检查脚本)跳过。

当前状态:HARD 0 违规 · SOFT 45 advisory(自然语言讨论与探针分类标签属正常用途)。 所有 badge 变体替换由 scripts/check_status_badge_sync.py 守护——JS 里的 6 个 code 必须与 data/status_vocabulary.json 逐字段一致。