definition-of-done

작성자: flutter

이 저장소에서 md 파일이나 dart 코드를 건드리는 작업을 완료하기 전에 반드시 실행해야 하는 검사 항목입니다.

npx skills add https://github.com/flutter/skills --skill definition-of-done

Definition of Done

Use this skill to ensure that all work meets the repository standards before declaring a task complete or requesting review.

📋 Mandatory Verification Steps

Before stating that a task is complete, you MUST execute and pass the following checks:

  1. Format: Run dart format . to format files, or dart format --output=none --set-exit-if-changed . to check without modifying. Ensure all files are formatted correctly.
  2. Analysis: Run dart analyze --fatal-infos and ensure there are zero issues (including info-level issues).
  3. Metrics: Run dart run cognitive_complexity --fail-threshold <N> lib test, where <N> is the --fail-threshold value configured in .github/workflows/dart_skills_lint_workflow.yaml, and ensure there are zero issues. This checks for cognitive complexity.
  4. Tests: Run dart test and ensure all tests pass successfully.
  5. Skills: If any skill files were modified, run dart run dart_skills_lint -d .agents/skills to ensure they are valid.
  6. Changelog: If the task introduces user-facing CLI flags, package API changes, bug fixes, or user-facing behavioral changes, update CHANGELOG.md.
    • Do NOT log internal chores: Do not add entries for internal CI workflows, dev dependency updates/migrations, test refactoring, or repository infrastructure scripts.
    • Explicit N/A: If the task is internal-only, leave CHANGELOG.md untouched and output [x] Changelog: (N/A) <reason>.
    • Audit all entries against the previously released version (do not document changes to intermediate PR development code or new unreleased APIs as breaking changes).
  7. Temporal: Ensure that code and code comments contain no relative temporal terms (e.g., 'now', 'currently', 'new', 'old', 'existing behavior').
  8. Documentation: Ensure that any relevant documentation is updated.

🚦 Output Formatting

You MUST include a text list of all mandatory verification steps in your final response to the user. Use the exact following format:

  • Use [x] <Identifier>: <Explanation> if the step was completed.
  • Use [ ] <Identifier>: <Skipped explanation> if the step was skipped or not applicable.

CRITICAL: Do not just copy the full step description text. You MUST use the exact bolded Identifier from the Mandatory Verification Steps list above, followed by a colon and your short explanation.

Examples:

  • [x] Format: dart format success.
  • [x] Analysis: Static clean (0 issues, dart analyze --fatal-infos).
  • [ ] Skills: Skipped because dart_skills_lint is not installed.
  • [x] Changelog: (N/A) Not necessary since we're updating internal eval fixtures.
  • [x] Temporal: no added words.

flutter의 다른 스킬

adding-release-notes
flutter
사용자 대상 변경 사항 설명을 DevTools 릴리스 노트에 추가합니다. NEXT_RELEASE_NOTES.md 파일에 개선 사항, 수정 사항 또는 새로운 기능을 문서화할 때 사용하세요.
official
dart-modern-features
flutter
현대화를 위한 후보를 찾으려면:
official
api-review
flutter
지정된 코드를 표준 API 설계 지침에 맞춰 검토합니다. 사용자가 API 리뷰를 요청하거나 API 설계에 따라 코드를 확인할 때 이 스킬을 사용하세요…
official
code-documentation
flutter
효과적인 코드 문서 작성 가이드로, docstrings, JSDoc, dartdoc 및 구현 주석을 포함합니다. 새 코드를 작성하거나 추가할 때 이 스킬을 사용하세요…
official
dart-add-unit-test
flutter
Write and organize unit tests for functions, methods, and classes using `package:test`. Use when creating new logic or fixing bugs to ensure code remains…
official
dart-build-cli-app
flutter
진입점 구조, 종료 코드, 크로스 플랫폼 스크립트. 명령줄 유틸리티, 스크립트 또는 애플리케이션을 빌드할 때 사용합니다.
official
dart-collect-coverage
flutter
coverage 패키지를 사용하여 커버리지를 수집하고 LCOV 보고서를 생성합니다
official
dart-fix-runtime-errors
flutter
get_runtime_errors와 lsp를 사용하여 활성 스택 트레이스를 가져오고, 실패한 줄을 찾아 수정을 적용한 후 hot_reload를 통해 해결 여부를 확인합니다.
official