CANN/cannbot-skills:验证报告输出模式定义
输出定义与禁止行为【免费下载链接】cannbot-skillsCANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体本仓库为其提供可复用的 Skills 模块。项目地址: https://gitcode.com/cann/cannbot-skills本文件定义 S3_verification_report.md 的 Markdown 模板规范各节的最低内容要求并列出全文档禁止行为。输出S3_verification_report.md完成所有检查后将结果汇总写入S3_verification_report.md。完整模板--- op_name: {op_name} platform: {platform} status: pass | fail | pass_with_warnings checks_total: 5 checks_pass: {N} checks_fail: {N} checks_warn: {N} --- # 交叉验证报告{op_name} ## 总览 | 项目 | 值 | |------|---| | 算子 | {op_name} | | 平台 | {platform} | | 全局状态 | **{status}** | | 检查项总数 | 5 | | pass 项数 | {N} | | fail 项数 | {N} | | warn 项数 | {N} | ## 检查结果 | ID | 检查名 | 状态 | 验证通过率 | |----|--------|:----:|:----------:| | A1 | source_reference_validity | ✅ pass | {v}/{t} | | B1 | interface_factual_check | ✅ pass_with_warnings | {v}/{t} | | D1 | traceability_factual_check | ✅ pass | {v}/{t} | | D2 | schema_compliance | ✅ pass | — | | D3 | gen_cases_script_semantic | ✅ pass | — | ## 各项详情 ### A1: source_reference_validity — ✅ pass **验证通过率**{v}/{t} {detail满足 detail 最低内容要求} --- ...依次 B1/D1/D2/D3每项一节 --- ## Issues共 {N} 项 ### ❌ Fail{N} 项 #### F1: {check_id} - **问题**{description} - **期望值**{expected} - **实际值**{found} - **位置**{location} ### ⚠️ Warn{N} 项 #### W1: {check_id} - **问题**{description} - **调查发现**可选{investigation_findings}YAML front matter 规范字段类型必填说明op_namestring是算子名platformstring是平台描述如DAV_3510 (Ascend950PR)statusstring是pass/fail/pass_with_warningschecks_totalint是检查项总数固定 5checks_passint是pass 项数checks_failint是fail 项数checks_warnint是warn 项数含 pass_with_warnings 中的 warnstatus字段供 Step 2 回填/Step 4 用户确认等下游流程解析是整个报告的机读入口。检查结果表字段规范列适用检查项必填说明ID全部是检查项 ID见 00-execution-order.md 检查项总览表检查名全部是英文 ID 或中文名均可状态全部是✅ pass/❌ fail/⚠️ warn验证通过率仅真实性类检查项是格式{verified_count}/{total_count}结构性检查写—真实性类检查项需要读源码做计数验证A1, B1, D1 — 写验证通过率结构性检查不存在验证 N/M 项的概念D2, D3 — 验证通过率列写—各项详情最低内容要求按 Task 顺序排列。检查 IDdetail 必须包含Task AA1source_reference_validityA1.1 source 行号通过率 A1.2 conditions 通过率含 boundary_check warn 数 A1.3 key_instructions 通过率 A1.4 source_constraints 通过率含 variables warn 数Task BB1interface_factual_checkB1.1 inputs 匹配数/总数 B1.2 outputs 匹配数/总数含 sync_with warn 数 B1.3 attributes 匹配数/总数含 aclnn 独有属性 warn 数 B1.4 dtype 约束验证比对结果 B1.5 outputs.shape 语义检查通过率 B1.6 platform AddConfig 比对结论 B1.7 结构完整性 warn 汇总Task DD1traceability_factual_check触发条件表验证行数 推导链表验证行数有行号偏差时注明偏差范围D2schema_compliancepass 时一句话fail 时列出缺失/多余的字段名和位置D3gen_cases_script_semanticD3.1 JSON 加载 _a计算 _default_cap公式验证 D3.2 extract 函数正确性 D3.3 工具函数正确性 D3.4 生成循环完整性 seed 唯一性 D3.5 case dict 结构 D3.6 路径覆盖可达性Issues 表格式规范Issues 按严重程度分为两个子节先 ❌ Fail后 ⚠️ Warn每个 issue 用带编号的四级标题。Fail issue 必填字段字段格式说明编号F1、F2...Fail issue 顺序编号check_id写在标题中如#### F1: gen_cases_script_semantic问题bullet一句话描述期望值bulletS2 产物声称的内容实际值bullet源码中实际发现的内容只写事实不附加定性用语如做了调查可写调查发现的事实位置bullet源码位置文件:行号无法定位时写未定位⚠️ Warnissue 只需问题一项其余字段省略。全局 status 判定规则条件status值所有检查项状态均为 passpass至少一个检查项状态为 failfail无 fail至少一个检查项状态为 warnpass_with_warnings✅/❌ 判断示例代表性判例占位符{...}对应实际算子中的具体标识符。Task AA1 源码引用✅ pass: 路径{path_id}source{file}:{line}→ 该处为{branch_expr}与路径模式一致❌ fail: 路径{path_id}source{file}:{line}→ 该行号为空行/注释未找到分支逻辑❌ fail: source_constraints{C_id}source_location{file}:{line}处实际表达式为{actual_expr}与 source_expr{claimed_expr}不一致operator 差异Task DD1 推导链✅ pass: traceability 引用{file}:{line}→ 源码该处确实包含推导链声称的变量名和赋值逻辑❌ fail: traceability 引用{file}:{line}的运算符为源码实际为运算符不一致D3 gen_cases.py✅ D3.1 pass: py_compile 返回 0且import randomrandom.seed(42)均存在❌ D3.4 fail: Section 4 中 group{group_A}和 group{group_B}的 shuffled_pool 调用均使用 seed{seed}不同 group 使用了相同 seed 值禁止行为全文档适用以下行为在整个 Step 3 执行期间严格禁止违反任一条视为检查无效禁止跳过真实性验证— A1, B1, D1 中任一项不得因源码太长或路径太多而跳过禁止只看 S2 产物不看源码— 真实性类检查项的核心就是读源码查证禁止仅依赖产物内部一致性判断禁止将语义近似判定为 pass— 如果推导链中的表达式与源码存在运算差异如运算符方向不同、运算符精度不同必须 fail禁止跳过 _def.cpp 核实— B1 必须读 _def.cpp 文件不得仅凭 operator_model 字段完整就判定 pass禁止通过运行 gen_cases.py 来验证 D3— D3 必须 Read 脚本源码做静态语义匹配运行脚本产出 cases.json 属于动态执行会因 sampling/seed 的不确定性而无法断言。D3 的唯一合法验证方式是逐字节理解脚本逻辑再与 param_def.json path_list.json 做集合比对和语义匹配禁止对 D3.6 仅凭 cases.json 的存在就断言路径可达— D3.6 必须分析脚本逻辑上是否有某个 group 的 dtype 条目引用目标 path IDcases.json 中的 case 数量受压缩和采样策略影响不能作为静态覆盖完整性证据禁止酌情处理— 发现差异时可以读取其他相关源码调查原因包括检查项规则本身定义的分步追加读取如 B1.4 第 5 步并将调查发现的事实写入报告但不得基于调查发现改变检查项规则定义的 pass/fail/warn 判定结果不得用语义等价等理由合理化差异。判定结果必须由规则决定不由 Step 3 酌情决定。详见00-execution-order.md核心原则节禁止 Step 3 添加定性判断用语— 报告差异和调查发现时只描述事实S2 声称 X源码是 Y调查发现 L{line} 处有 Z禁止附加 Step 3 自创的定性用语如运行时扩展、废弃常量、预留路径、动态注册等。以下两类用语不在此限(1) 检查项规则本身的判定用语如语义一致、分类不一致(2) 差异事实分类用语如运算符不一致、数值不匹配【免费下载链接】cannbot-skillsCANNBot 是面向 CANN 开发的用于提升开发效率的系列智能体本仓库为其提供可复用的 Skills 模块。项目地址: https://gitcode.com/cann/cannbot-skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考