{html.escape(run['advisory_id'])}{html.escape(run['verification_status'])}{html.escape(run['repro_profile_id'])}{html.escape(run['artifact_mode'])}{html.escape(mermaid_from_steps(run))}",
"| 时间 | 步骤 | 状态 | 说明 |
|---|---|---|---|
{html.escape(item.get('at', ''))} | "
f"{html.escape(item.get('step', ''))} | "
f"{html.escape(item.get('status', ''))} | "
f"{html.escape(item.get('detail', '') or '-')} | " "
| 工具 | 状态 | 输出 |
|---|---|---|
{html.escape(step.get('tool') or step.get('kind') or '-')} | "
f"{html.escape(step.get('status', '-'))} | "
f"{html.escape(step.get('result_path') or '-')} | "
"
- | skipped | 当前没有攻击步骤 |
{html.escape(ref)}{html.escape(_relative_ref(run_dir, ref))}