reviewing-devtools-prs

от flutter

Специфичный для репозитория DevTools процесс ревью PR, обеспечивающий соблюдение стилевых рекомендаций DevTools и общих паттернов ревью. Используйте при ревью пул-реквестов в…

npx skills add https://github.com/flutter/devtools --skill reviewing-devtools-prs

Reviewing DevTools Pull Requests

Extends reviewing-prs for pull requests in flutter/devtools. Follow reviewing-prs for GitHub CLI data retrieval and the strict user approval workflow.

References & Style Guidelines

Read and enforce:

  • Style Guide: styleguide.md (severity tags [MUST-FIX], [CONCERN], [NIT], zero-formatting policy, copyright headers, DRY rules, magic values)
  • Repository Constraints: AGENTS.md
  • Code Style: STYLE.md

Common Review Patterns

  1. Listener & Resource Disposals:

    • Ensure controller and notifier listeners use addAutoDisposeListener(...).
  2. Helper Widgets over Helper Methods:

    • Prefer small composable Widget classes over helper methods returning Widget (_buildFoo()).
  3. Reuse Shared Components & Test Helpers:

    • Use standard shared widgets (e.g. CenteredMessage) and test mocks (e.g. mockConnectedApp) instead of re-creating them inline.
  4. TODO Formatting:

    • Link TODOs to a GitHub issue or LDAP: // TODO(https://github.com/flutter/devtools/issues/<issue_number>): <description>.
  5. Async & Unawaited Futures:

    • Audit unawaited futures and suggest unawaited(...) or safeUnawaited(...) where appropriate.
  6. Feature Flags:

    • Default feature flags to false with explicit test expectations in feature_flags_test.dart.
  7. Test File Structure & PR Scope:

    • Place test fakes/helpers below main().
    • Ask authors to revert unrelated file changes or commented-out test code.
  8. Constant Scoping:

    • Keep single-use constants local to the component, but extract user-facing UI strings into shared constants when used across multiple places.
  9. Release Notes Scope (NEXT_RELEASE_NOTES.md):

    • Release notes are strictly for end-user facing changes (e.g. Inspector, Memory UI/UX). Internal tools (dt / devtools_tool), CI, and refactors are NOT user-facing.
    • Request removing release notes added for developer tools like dt, or suggest a * <Description>. [#<PR_NUMBER>](https://github.com/flutter/devtools/pull/<PR_NUMBER>) entry via adding-release-notes if a user-facing PR lacks one.

Больше skills от flutter

dart-modern-features
flutter
Для поиска кандидатов на модернизацию:
flutter-fix-layout-issues
flutter
Исправляет ошибки макета Flutter (переполнения, неограниченные ограничения) с помощью Dart и инструментов Flutter MCP. Используйте при устранении «RenderFlex overflowed», «Vertical…
adding-release-notes
flutter
Добавляет описания изменений, видимых пользователю, в примечания к выпуску DevTools. Используйте при документировании улучшений, исправлений или новых функций в файле NEXT_RELEASE_NOTES.md.
dart-use-primary-constructors
flutter
Помогите пользователям писать синтаксически и семантически корректные первичные конструкторы в Dart, а также мигрировать и использовать новый синтаксис конструкторов, синтаксис с пустым телом и точкой с запятой,…
code-documentation
flutter
Руководство по написанию эффективной документации кода, включая docstrings, JSDoc, dartdoc и комментарии к реализации. Используйте этот навык при написании нового кода, добавлении…
api-review
flutter
Проверяет указанный код на соответствие каноническим рекомендациям по проектированию API. Используйте этот навык, когда пользователь запрашивает ревью API или проверку кода на соответствие API design…
flutter-accessibility
flutter
We need to translate the given text from English to Russian, preserving the name "flutter-accessibility" if it appears. The text is a description of an agent skill. The instruction says: "Translate only the text inside <text>. Do not include the name unless it appears in the source text." The name "flutter-accessibility" does not appear in the source text provided. So we just translate the text. The text: "Implement WCAG 2 and EN 301 549 accessibility standards and adaptive layouts in Flutter apps. Enforces semantic annotations, tap target sizes (48x48 dp minimum), and text contrast ratios (4.5:1 for small text, 3:1 for large) across mobile, web, and desktop platforms Provides decision logic for web semantics initialization, interactive widget wrapping, screen-size-based layout switching, and keyboard/mouse input handling Includes focus traversal management via FocusTraversalGroup and..." We need to translate accurately, preserving technical terms like WCAG 2, EN 301 549, Flutter, dp, ratios, FocusTraversalGroup,
flutter-accessibility-audit
flutter
Запускает проверку доступности через widget_inspector и автоматически добавляет виджеты Semantics или недостающие метки в исходный код.