Prepare for skills adoption#184129
Conversation
|
It looks like this pull request may not have tests. Please make sure to add tests or get an explicit test exemption before merging. If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix? Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. If you believe this PR qualifies for a test exemption, contact "@test-exemption-reviewer" in the #hackers channel in Discord (don't just cc them here, they won't see it!). The test exemption team is a small volunteer group, so all reviewers should feel empowered to ask for tests, without delegating that responsibility entirely to the test exemption group. |
There was a problem hiding this comment.
Code Review
This pull request introduces new files to set up Flutter Agent Skills infrastructure. This includes a README.md detailing skill adoption requirements and best practices, a Claude configuration file (.claude/skills), a direnv configuration file, and a .gitignore for agent artifacts. The review comments point out minor formatting issues, specifically that the new files are missing a trailing newline character, and the README.md also has a trailing whitespace on its last line.
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Co-authored-by: Reid Baker <[email protected]>
|
|
||
| ## Ownership and Responsibilities | ||
|
|
||
| * **Ownership**: The author of the skill holds ownership. This means the author is responsible for approving any modifications to the skill and mitigating any negative side effects. |
There was a problem hiding this comment.
Should this be enforced through CODEOWNERS?
There was a problem hiding this comment.
But if not, how do we know who owns a given skill?
There was a problem hiding this comment.
yes it will be, I will be working with @kevmoo who offered to land the first skill to add owners.
There was a problem hiding this comment.
Well, my skills are more generic skills useful for Dart developers. We should discuss more what would fit here!
(although maybe the matcher and test skills would be a good fit.)
|
autosubmit label was removed for flutter/flutter/184129, because - The status or check suite Linux analyze has failed. Please fix the issues identified (or deflake) before re-applying this label. |
|
Flyby comment - analyzer is failing. |
flutter/flutter@3d69471...0f401ee 2026-04-02 [email protected] Remove isSizedToContent from _window_linux.dart. (flutter/flutter#184506) 2026-04-02 [email protected] Windows: Get graphics adapter from engine instead of view (flutter/flutter#184479) 2026-04-02 [email protected] Reduce number of mallocs in FFI call (flutter/flutter#184166) 2026-04-02 [email protected] Handle events without a device (flutter/flutter#184163) 2026-04-02 [email protected] Implement tooltip windows on Linux (flutter/flutter#182348) 2026-04-02 [email protected] Roll Skia from bdeebacf23c8 to bb9fd8653739 (4 revisions) (flutter/flutter#184494) 2026-04-02 [email protected] Implement popup windows for macOS (flutter/flutter#182371) 2026-04-02 [email protected] Roll Fuchsia Linux SDK from fV-JIWUt4FQGeDtEe... to BFLjk6Uwd0gs_Hkdk... (flutter/flutter#184492) 2026-04-02 [email protected] Add await or ignore to future-returning methods defined in Dart SDK (flutter/flutter#184229) 2026-04-02 [email protected] Roll Dart SDK from 043a2bfd56ff to d84bdfeb45eb (2 revisions) (flutter/flutter#184487) 2026-04-01 [email protected] Roll Skia from c2363c39c283 to bdeebacf23c8 (9 revisions) (flutter/flutter#184480) 2026-04-01 [email protected] Remove sliver_test_utils cross-import from sliver_app_bar_test (flutter/flutter#184193) 2026-04-01 [email protected] Improve error message when `dart-define` content are not `base64 encoded` and add more test cases (flutter/flutter#184219) 2026-04-01 [email protected] Replace usages of `MediaQuery.of(context).property` with `MediaQuery.propertyOf(context)` (flutter/flutter#184211) 2026-04-01 [email protected] [ios] Add opt-in inline prediction text input support (flutter/flutter#183650) 2026-04-01 [email protected] [fix-forward] fix build_android_host_app_with_module_source integration test (flutter/flutter#184466) 2026-04-01 [email protected] Update style guide (flutter/flutter#184478) 2026-04-01 [email protected] Roll Packages from b04f3e5 to b3fcf14 (3 revisions) (flutter/flutter#184474) 2026-04-01 [email protected] Warn about slow SwiftPM downloads and centralize SwiftPM cache (flutter/flutter#183747) 2026-04-01 [email protected] Inject FlutterFramework dependency in iOS Add2App swift packages (flutter/flutter#184365) 2026-04-01 [email protected] Prepare for skills adoption (flutter/flutter#184129) If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-packages Please CC [email protected],[email protected] on the revert to ensure that a human is aware of the problem. To file a bug in Packages: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
Skills was recently added in #184129, however, sometimes a contibutor may not want to publish a skill but still want to use it locally. You can set global skills (see [go/flutter-flutter-skills-initial-adoption](http://go/flutter-flutter-skills-initial-adoption#heading=h.cinrqeffmsmh)), but if you want Flutter-specific ones, they need to be in the `flutter/.agents/skills` directory. This PR adds a gitignore path that ignores any skill that starts with "personal" in the name. ## Pre-launch Checklist - [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [x] I read the [AI contribution guidelines] and understand my responsibilities, or I am not using AI tools. - [x] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [x] I signed the [CLA]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [x] I added new tests to check the change I am making, or this PR is [test-exempt]. - [x] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [x] All existing and new tests are passing. If you need help, consider asking for advice on the #hackers-new channel on [Discord]. **Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed. <!-- Links --> [Contributor Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview [AI contribution guidelines]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines [Tree Hygiene]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md [test-exempt]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests [Flutter Style Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md [Features we expect every widget to implement]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement [CLA]: https://cla.developers.google.com/ [flutter/tests]: https://github.com/flutter/tests [breaking change policy]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes [Discord]: https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md [Data Driven Fixes]: https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
Fixes: flutter#184128 - **Prepare flutter/flutter with the initial files required for skill adoption** ## Pre-launch Checklist - [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [x] I read the [AI contribution guidelines] and understand my responsibilities, or I am not using AI tools. - [x] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [x] I signed the [CLA]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [ ] I added new tests to check the change I am making, or this PR is [test-exempt]. - [x] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [x] All existing and new tests are passing. --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Fixes: flutter#184128 - **Prepare flutter/flutter with the initial files required for skill adoption** ## Pre-launch Checklist - [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [x] I read the [AI contribution guidelines] and understand my responsibilities, or I am not using AI tools. - [x] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [x] I signed the [CLA]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [ ] I added new tests to check the change I am making, or this PR is [test-exempt]. - [x] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [x] All existing and new tests are passing. --------- Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Skills was recently added in flutter#184129, however, sometimes a contibutor may not want to publish a skill but still want to use it locally. You can set global skills (see [go/flutter-flutter-skills-initial-adoption](http://go/flutter-flutter-skills-initial-adoption#heading=h.cinrqeffmsmh)), but if you want Flutter-specific ones, they need to be in the `flutter/.agents/skills` directory. This PR adds a gitignore path that ignores any skill that starts with "personal" in the name. ## Pre-launch Checklist - [x] I read the [Contributor Guide] and followed the process outlined there for submitting PRs. - [x] I read the [AI contribution guidelines] and understand my responsibilities, or I am not using AI tools. - [x] I read the [Tree Hygiene] wiki page, which explains my responsibilities. - [x] I read and followed the [Flutter Style Guide], including [Features we expect every widget to implement]. - [x] I signed the [CLA]. - [x] I listed at least one issue that this PR fixes in the description above. - [x] I updated/added relevant documentation (doc comments with `///`). - [x] I added new tests to check the change I am making, or this PR is [test-exempt]. - [x] I followed the [breaking change policy] and added [Data Driven Fixes] where supported. - [x] All existing and new tests are passing. If you need help, consider asking for advice on the #hackers-new channel on [Discord]. **Note**: The Flutter team is currently trialing the use of [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code). Comments from the `gemini-code-assist` bot should not be taken as authoritative feedback from the Flutter team. If you find its comments useful you can update your code accordingly, but if you are unsure or disagree with the feedback, please feel free to wait for a Flutter team member's review for guidance on which automated comments should be addressed. <!-- Links --> [Contributor Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview [AI contribution guidelines]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#ai-contribution-guidelines [Tree Hygiene]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md [test-exempt]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests [Flutter Style Guide]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md [Features we expect every widget to implement]: https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement [CLA]: https://cla.developers.google.com/ [flutter/tests]: https://github.com/flutter/tests [breaking change policy]: https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes [Discord]: https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md [Data Driven Fixes]: https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md

Fixes: #184128
Pre-launch Checklist
///).