Dart Log Failure Parser
Testing & Qualitydart-log-failure-parserDart Log Failure Parser is an Agent Skill for testing & quality published in the flutter/flutter repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.
Parse failures from Dart and Flutter test logs.
How to use this skill
Bring this guide into your coding agent with a prompt tailored to the tool you use.
- Open your project in Codex.
- Copy and paste the prompt below.
- Review files and risks before approving any action.
Inspect the Agent Skill at https://github.com/flutter/flutter/blob/HEAD/.agents/skills/dart-log-failure-parser/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/dart-log-failure-parser, but wait for my approval before writing files or running scripts.
Copying this prompt does not install or run the skill. Review third-party files before use.
Dart Log Failure Parser
Workflow
1. Analyze Raw Log Output
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.
2. Look for Failure Patterns
Pattern A: Error Blocks (e.g., Linux Analyze)
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
╚═══════════════════════════════════════════════════════════════════════════════
Pattern B: Task Result JSON
Search for "Task result:" followed by a JSON object. Example:
Task result:
{
"success": false,
"reason": "Task failed: PathNotFoundException: Cannot open file..."
}
Pattern C: Failing Tests List
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
Pattern D: Build Failures
For build failures (e.g., engine tests failing at compile time), look for the following indicators in the logs or API summaries:
- Lines starting with
FAILED:(indicates a Ninja target failed). - Compiler error messages (e.g.,
error:,fatal error:). - Linker error messages (e.g.,
undefined reference to). - Summary messages in the check-runs API output like
1 build failed: [<build_name>].