dart-log-failure-parser

作者: flutter

解析 Dart 和 Flutter 测试日志中的失败信息。

npx skills add https://github.com/flutter/flutter --skill dart-log-failure-parser

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>].

来自 flutter 的更多技能

dart-modern-features
flutter
为了找到现代化的候选方案:
flutter-fix-layout-issues
flutter
使用Dart和Flutter MCP工具修复Flutter布局错误(溢出、无界约束)。适用于处理“RenderFlex溢出”、“垂直…
adding-release-notes
flutter
在 DevTools 发布说明中添加面向用户的变更描述。用于在 NEXT_RELEASE_NOTES.md 文件中记录改进、修复或新功能。
reviewing-devtools-prs
flutter
DevTools 仓库专属的PR审查工作流程,执行DevTools风格指南和常见审查模式。在审查……中的拉取请求时使用。
dart-use-primary-constructors
flutter
帮助用户在Dart中编写语法和语义正确的主构造函数,并迁移/使用新的构造函数语法、空体分号语法等。
code-documentation
flutter
编写有效代码文档的指南,包括docstrings、JSDoc、dartdoc和实现注释。在编写新代码、添加…时使用此技能。
api-review
flutter
对照规范的API设计指南审查指定代码。当用户要求进行API审查或根据API设计规范检查代码时,请使用此技能…
flutter-accessibility
flutter
在Flutter应用中实现WCAG 2和EN 301 549无障碍标准及自适应布局。在移动端、网页端和桌面端强制实施语义标注、点击目标尺寸(最小48x48 dp)和文本对比度(小文本4.5:1,大文本3:1)。提供网页语义初始化、交互式组件包裹、基于屏幕尺寸的布局切换以及键盘/鼠标输入处理的决策逻辑。包含通过FocusTraversalGroup实现的焦点遍历管理,以及...