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.

Skills เพิ่มเติมจาก flutter

adding-release-notes
flutter
เพิ่มคำอธิบายการเปลี่ยนแปลงที่ผู้ใช้เห็นลงในบันทึกประจำรุ่นของ DevTools ใช้เมื่อบันทึกการปรับปรุง การแก้ไข หรือฟีเจอร์ใหม่ในไฟล์ NEXT_RELEASE_NOTES.md
official
dart-modern-features
flutter
เพื่อหาผู้สมัครสำหรับการปรับปรุงให้ทันสมัย:
official
api-review
flutter
ตรวจสอบโค้ดที่ระบุเทียบกับแนวทาง API Design มาตรฐาน ใช้สกิลนี้เมื่อผู้ใช้ขอให้รีวิว API หรือตรวจสอบโค้ดตามแนวทาง API design…
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 เพื่อดึง stack trace ที่ใช้งานอยู่ ค้นหาบรรทัดที่เกิดข้อผิดพลาด ใช้การแก้ไข และตรวจสอบผลลัพธ์ผ่าน hot_reload
official