flutter/dart-log-failure-parser
Parse failures from Dart and Flutter test logs.
npx skills add https://github.com/flutter/flutter --skill dart-log-failure-parser
Analyze the raw log output for failure details. Do not skim the output; check the entire log. The description of findings should include specific details for the failures (e.g., unformatted files, specific test names), not just the top-level command that failed.
Search for blocks starting with ╡ERROR #.
Example:
╔═╡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
╚═══════════════════════════════════════════════════════════════════════════════
Search for "Task result:" followed by a JSON object.
Example:
Task result:
{
"success": false,
"reason": "Task failed: PathNotFoundException: Cannot open file..."
}
For general Dart tests, look for a list at the end of the log starting with "Failing tests:".
Example:
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
For build failures (e.g., engine tests failing at compile time), look for the following indicators in the logs or API summaries:
FAILED: (indicates a Ninja target failed).error:, fatal error:).undefined reference to).1 build failed: [<build_name>].Take flutter/dart-log-failure-parser from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.