关于 dart-log-failure-parser
用于检查 Dart 日志并定位具体失败原因的工作流 Skill,涵盖测试、分析和构建错误。它要求 Agent 通读日志并报告具体问题,而不只是指出失败的命令。
主要功能
- 01检查完整日志
- 02查找结构化错误块和任务 JSON
- 03识别失败测试
- 04检测编译器、链接器和构建错误
适用场景
- 01分析失败的 Dart 测试运行
- 02从构建日志定位具体错误
- 03汇总任务输出中的失败信息
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ flutter/ flutter --skill dart-log-failure-parser安装后在 Claude Code 中输入/dart-log-failure-parser确认已加载。
详细介绍
Dart 日志失败解析器
工作流
1. 分析原始日志输出
分析原始日志输出,查找失败详情。不要略读输出;请检查完整日志。对发现结果的描述应包含失败的具体细节(例如,未格式化的文件、具体的测试名称),而不只是失败的顶层命令。
2. 查找失败模式
模式 A:错误块(例如 Linux 分析)
查找以 ╡ERROR # 开头的块。
示例:
╔═╡ERROR #1╞════════════════════════════════════════════════════════════════════
║ Command: bin/cache/dart-sdk/bin/dart --enable-asserts /b/s/w/ir/x/w/flutter/dev/bots/analyze_snippet_code.dart --verbose
║ Command exited with exit code 255 but expected zero exit code.
║ Working directory: /b/s/w/ir/x/w/flutter
╚═══════════════════════════════════════════════════════════════════════════════
模式 B:任务结果 JSON
查找后接 JSON 对象的 "Task result:"。 示例:
Task result:
{
"success": false,
"reason": "Task failed: PathNotFoundException: Cannot open file..."
}
模式 C:失败测试列表
对于一般的 Dart 测试,查找日志末尾以 "Failing tests:" 开头的列表。 示例:
Failing tests:
test/general.shard/cache_test.dart: FontSubset artifacts for all platforms on arm64 hosts
test/general.shard/cache_test.dart: FontSubset artifacts on arm64 linux
模式 D:构建失败
对于构建失败(例如,引擎测试在编译时失败),查找日志或 API 摘要中的以下指标:
- 以
FAILED:开头的行(表示 Ninja 目标失败)。 - 编译器错误消息(例如,
error:、fatal error:)。 - 链接器错误消息(例如,
undefined reference to)。 - check-runs API 输出中的摘要消息,例如
1 build failed: [<build_name>]。
评论
支持 Markdown