| name | bug-report |
| description | 从 analysis 中提取 RTL_BUG 属性,LLM 通过脚本将 Bug 详细信息写入 .formal_records.yaml。 |
Bug 报告生成工作流 (Bug Report)
本技能指导如何从验证分析中提取 RTL Bug 并通过 脚本 将报告写入 .formal_records.yaml。
文档格式与归因方法参见 Guide_Doc/bug_report.md
步骤
1. 生成 Bug 骨架
使用 RunSkillScript 执行以下命令,从 analysis 提取 RTL_BUG 并生成骨架:
python3 .ucagent/skills/formal/bug-report/scripts/init_bug_report.py
2. 查看待填写条目
python3 .ucagent/skills/formal/bug-report/scripts/update_bug.py -action show
3. 填写 Bug 详情
禁止直接编辑 YAML,使用 RunSkillScript 调用脚本:
python3 .ucagent/skills/formal/bug-report/scripts/update_bug.py \
-id BG-FORMAL-001 \
-fg_id FG-ARITHMETIC \
-fc_id FC-ADD-BASIC \
-rtl_file Adder/Adder.v \
-rtl_line 10 \
-description "sum 位宽错误导致加法结果不完整" \
-root_cause "output [WIDTH-2:0] sum 位宽参数错误" \
-trigger "当 a + b + cin >= 2^63 时触发" \
-expected "sum[63:0] 输出完整的 64 位加法结果" \
-actual "sum[62:0] 仅输出 63 位" \
-fix "将 Adder.v 第 10 行改为 output [WIDTH-1:0] sum" \
-severity HIGH \
-confidence HIGH
severity 枚举值: HIGH / MEDIUM / LOW
confidence 枚举值: HIGH / MEDIUM / LOW
4. 完成后调用 Check
Checker 验证所有字段已填写(非 [LLM-TODO]),通过后自动生成 04_{DUT}_bug_report.md。
核心规则
- 每个
RTL_BUG 属性都必须有对应的 bug 条目
- 若无 RTL_BUG,
bugs 设为空数组 []
fg_id、fc_id 必须来自 spec 中的标签
- 多个 bug 若共享根因,必须在各自条目中注明关联