Files
2026Technology-Competition/data/import-verification/01-galaxy-nonstandard/result-report.md
T

5.7 KiB
Raw Blame History

自定义规则导入 — 手动验证结果报告

验证信息

验证日期 2026-09-06
验证功能 自定义规则导入(AI 通用路径,非模板模式)
导入素材 data/import-verification/01-galaxy-nonstandard/galaxy-team-coding-conventions.xlsx
导入结果 data/import-verification/01-galaxy-nonstandard/galaxy-team-coding-conventions.yaml
验证方式 在 Extension Development Host 中手动执行完整导入流程

素材特征

特征 内容 验证意图
双 Sheet Sheet1「项目简介」为非规则背景;Sheet2「编码约定」为规则表 AI 过滤非规则内容
无标准表头 首行为标题文字,真实表头(序号/约定内容/原因说明/是否强制)在表格中部 转换器列保留 + AI 语义推断
10 条规则 通用 5 条 / JS-TS 专项 3 条 / Java 专项 2 条 规则条数与顺序
强制级别 强制(P0)×2、强制 ×5、建议 ×3 severity 映射
干扰段落 历史遗留(/legacy 说明)、修订记录、提示语 不被误转为规则

验证过程

共执行两轮导入:

  1. 第 1 轮:AI 转换正常,但去重结果核对发现 2 处重叠漏标(console.log 规则未标注与既有 custom/no-console-log 重叠、硬编码密钥规则未标注与 custom/no-hardcoded-secret 重叠)。删除落盘文件后重新导入。
  2. 第 2 轮:去重结果无遗漏,预览确认后落盘,即本报告归档的 galaxy-team-coding-conventions.yaml

结果统计

分类 数量 落盘处置
完全重复(exact 5 # - id: 注释形式写入,带 [DUPLICATE: exact] 头与恢复提示
部分重叠(overlap 1 保留生效(no-empty-catch
无重复(none 4 保留生效
合计 10 与源文件规则数一致,无丢失

保留生效的 5 条:require-request-timeout / no-empty-catch / max-function-length / require-promise-catch / service-entry-logging

检查点核对

A. AI 转换质量

# 检查点 结果 说明
A1 规则条数 通过 10/10 全部转换,无漏转、无错误合并拆分
A2 干扰过滤 通过 项目简介(Vue3/技术栈/团队分工)、修订记录、历史遗留(/legacy)、提示语均未误转为规则
A3 severity 映射 通过 两个 P0(密钥写死、SQL 注入)→ errorPromise 未挂 catch(会杀进程)→ error;建议类(函数 80 行、Service 日志)→ info;其余 warning
A4 languages 推导 通过 JS/TS 专项 → [javascript, typescript]Java 专项 → [java]timeout 规则根据 fetch/axios 语义正确推断为 JS/TS;通用约定正确留空
A5 字段完整性 通过 id 全部 kebab-case 且语义化,severity/description/message 均有值
A6 静态去重标注 通过 5 条 exact 标注真实(见下表);1 条 overlap 保留
A7 id 语义 通过 id 与规则语义对应(require-request-timeoutservice-entry-logging 等)

B. 预览面板交互

# 检查点 结果
B1 汇总统计 通过:完全重复 5 / 部分重叠 1 / 无重复 4,与落盘一致
B2 分组展示 通过:exact 进入重复区(含 duplicateOf 与原因),新规则进入新增区
B3 内联编辑 通过(预览中查看与调整正常)
B4 保留/注释切换 通过:exact 组默认注释,确认后以注释形式落盘

C. 落盘与联动

# 检查点 结果
C1 文件写入 通过:.code-review/rules/ 生成 YAML,结构标准可解析
C2 注释规则 通过:# - id: 形式 + [DUPLICATE: exact] 头 + 恢复提示
C3 审查联动 通过:galaxy 规则参与审查(验证后已从激活目录移出归档至本文件夹)
C4 规则列表 通过:设置视图自定义规则列表正常显示

duplicateOf 真实性核实

注释规则 duplicateOf 指向 核实
no-console-log custom/no-console-log 真实:存在于 .code-review/rules/coding-conventions.yaml
no-hardcoded-secrets custom/no-hardcoded-secret 真实:存在于 .code-review/rules/security-rules.yaml
strict-equality-required eslint/eqeqeq 真实:内置静态规则
no-var eslint/no-var 真实:内置静态规则
no-sql-injection custom/no-sql-injection 真实:存在于 .code-review/rules/security-rules.yaml

其中 3 条为跨文件自定义规则去重,说明 AI 在导入时拿到了完整已知规则集并正确使用;exact 重复项的 id 自动对齐已知规则 id,说明去重 prompt 的已知规则段生效。

已知观察

  • AI 去重判断存在轮次弹性:同一输入两次运行的去重结果不同(第 1 轮 3 exact / 漏标 2 条重叠;第 2 轮 5 exact + 1 overlap / 无遗漏)。属 LLM 非确定性,非 prompt 系统性缺陷;重要场景建议导入后人工复核预览面板的重复分组。
  • 语言字段no-empty-catch 落盘带 languages: [java, javascript, typescript]——catch 吞异常为 JS/Java 通用问题,推导合理。

结论

通过。AI 通用导入路径在真实世界多 Sheet、无标准表头、含干扰段落的 Excel 素材上工作正常:规则完整转换、干扰内容有效过滤、severity/languages/id 推导合理、跨文件与内置静态规则去重标注真实、预览交互与落盘格式符合设计。

关联

  • 自动化测试:tests/excel-converter.test.ts(转换器渲染层 7 条用例,素材副本位于 tests/fixtures/
  • 设计 specdocs/superpowers/specs/2026-07-26-custom-rule-import-ux-design.md