Skip to content

[ci] Add Gemini Code Assist review config #9632

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Jul 16, 2025

Conversation

stuartmorgan-g
Copy link
Contributor

@stuartmorgan-g stuartmorgan-g commented Jul 16, 2025

This adds initial configuration files for Gemini Code Assist for GitHub in preparation for turing it on for this repository on a trial basis. These config files are based on the official docs

It also adds a note to the PR template to provide some notice/guidance to contributors about how to use automated feedback, to clarify the role of the automated reviews and hopefully minimize potential issues in case the bot leaves incorrect feedback.

This adds initial configuration files for [Gemini Code Assist for
GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code)
in preparation for turing it on for this repository on a trial basis.
These config files are based on [the official
docs](https://developers.google.com/gemini-code-assist/docs/customize-gemini-behavior-github)

It also adds a note to the PR template to provide some notice/guidance
to contributors about how to use automated feedback, to clarify the role
of the automated reviews and hopefully minimize potential issues in case
the bot leaves incorrect feedback.
@stuartmorgan-g stuartmorgan-g requested a review from jtmcdole July 16, 2025 14:30
@flutter-dashboard

This comment was marked as resolved.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have no idea how to know how well this will work. I tried to start with something reasonably concise, but that linked the most important documents, and I figure we can iterate from there if we are seeing patterns in the reviews that could potentially be addressed with additional guidance here.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 to iterate. Can we have it call out:

- Code should be formatted with `dart format`
- Code should pass `dart analyze`

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • Code should be formatted with dart format

The file links to https://github.com/flutter/packages/blob/main/CONTRIBUTING.md#style which already says that, along with listing all of the other formatters we require. I'm really hoping that reference is enough, because I don't want to maintain two copies of that list forever.

  • Code should pass dart analyze

We already have CI that validates that. I don't really want to try to teach it all the CI requirements since:

  • That would be really unpleasant to maintain, since it would be a second copy our whole CI config.
  • It would presumably either a) not work because it wasn't actually running those commands, or b) be super wasteful because it would be running all the commands that CI is running just to give a second copy of the same feedback.
  • My primary goal here is to provide value to Flutter team members doing reviews, and they already know how to go look at the CI failures. (If we want to make that experience better via AI, I would recommend we build cross-repo tooling to teach some agent—maybe this one, maybe not—to understand and summarize all the failures in a set of LUCI tests on a PR, rather than try to teach the review agent what the commands our CI runs are).

@jtmcdole
Copy link
Member

Non-blocking: Do we also want a GEMINI.md in the root folder as well? Or plan for multiple ones in the sub folders?

Copy link
Member

@jtmcdole jtmcdole left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm-seinfeld

@stuartmorgan-g
Copy link
Contributor Author

Non-blocking: Do we also want a GEMINI.md in the root folder as well? Or plan for multiple ones in the sub folders?

The docs for the code review agent never mention GEMINI.md, so it is not clear to me that they apply to this system. We may want to add it later for other tools though.

@stuartmorgan-g stuartmorgan-g added the autosubmit Merge PR when tree becomes green via auto submit App label Jul 16, 2025
@auto-submit auto-submit bot merged commit 93d241b into flutter:main Jul 16, 2025
78 checks passed
@stuartmorgan-g
Copy link
Contributor Author

@jtmcdole We should be good to go for you to install the app for this repo now.

@stuartmorgan-g stuartmorgan-g deleted the gemini-assist-review-config branch July 16, 2025 19:16
@jtmcdole
Copy link
Member

App unsuspended and only allowed on flutter/packages

Copy link

It looks like you tried to invoke me with /gemini. If you're looking for a code review, please use /gemini review. If you'd like a summary of the pull request, use /gemini summary. You can also type /gemini help to see a list of all available commands.

engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jul 17, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jul 17, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jul 17, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jul 17, 2025
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Jul 17, 2025
github-merge-queue bot pushed a commit to flutter/flutter that referenced this pull request Jul 17, 2025
flutter/packages@4a231ae...cb8fef6

2025-07-17 49699333+dependabot[bot]@users.noreply.github.com
[dependabot]: Bump androidx.activity:activity from 1.9.3 to 1.10.1 in
/packages/image_picker/image_picker_android/android
(flutter/packages#8725)
2025-07-17 [email protected] [webview_flutter] Update
androidx.webkit to 1.14.0 (flutter/packages#9638)
2025-07-17 [email protected] Roll Flutter from
c2739f0 to 9c626d9 (18 revisions) (flutter/packages#9641)
2025-07-17 [email protected] Roll Flutter (stable) from
077b4a4 to d7b523b (3 revisions) (flutter/packages#9640)
2025-07-17 [email protected] Fix Gemini note wrapping
(flutter/packages#9639)
2025-07-17 49699333+dependabot[bot]@users.noreply.github.com
[dependabot]: Bump com.google.android.gms:play-services-maps from 18.2.0
to 19.2.0 in
/packages/google_maps_flutter/google_maps_flutter_android/android
(flutter/packages#9120)
2025-07-17 49699333+dependabot[bot]@users.noreply.github.com
[dependabot]: Bump androidx.fragment:fragment from 1.6.2 to 1.8.8 in
/packages/local_auth/local_auth_android/android (flutter/packages#9406)
2025-07-16 [email protected] [ci] Add Gemini Code Assist review
config (flutter/packages#9632)
2025-07-16 [email protected] Roll Flutter from
cc3110c to c2739f0 (15 revisions) (flutter/packages#9633)
2025-07-16 [email protected] [image_picker]
redesign example app (flutter/packages#9625)
2025-07-16 [email protected] [camera_avfoundation]
Implementation swift migration - part 7 (flutter/packages#9595)
2025-07-15 [email protected]
[webview_flutter_wkwebview] Replace Flutter method failure assertion
with nslog (flutter/packages#9587)
2025-07-15 [email protected] Roll Flutter from
a930ec1 to cc3110c (24 revisions) (flutter/packages#9631)
2025-07-15 [email protected] [webview_flutter] Add
setMixedContentMode for Android (flutter/packages#9586)
2025-07-15 [email protected] [google_sign_in] Add exception info
to migration guide (flutter/packages#9574)
2025-07-14 [email protected] [camera_android] Use
WeakReference to prevent startImageStream OOM error when main thread
hangs (#166533) (flutter/packages#9571)
2025-07-14 [email protected] [quick_actions]
Restore the appShortcutLaunchActivityAfterStarting test in
quick_actions_android (flutter/packages#9508)
2025-07-14 [email protected] Roll Flutter from
35f197f to a930ec1 (3 revisions) (flutter/packages#9624)
2025-07-14 49699333+dependabot[bot]@users.noreply.github.com
[dependabot]: Bump com.android.tools.build:gradle from 8.9.1 to 8.11.1
in /packages/pigeon/platform_tests/test_plugin/android
(flutter/packages#9618)
2025-07-12 [email protected] Roll Flutter from
43657f3 to 35f197f (39 revisions) (flutter/packages#9602)
2025-07-11 [email protected] Replace popularity badges
(flutter/packages#9594)
2025-07-11 [email protected] [rfw] Update
test to not depend on toString() (flutter/packages#9590)
2025-07-11 [email protected] [camera_avfoundation]
Implementation swift migration - part 6 (flutter/packages#9588)
2025-07-10 [email protected] [url_launcher]
Fixes new unnecessary boolean operations warnings
(flutter/packages#9409)
2025-07-10 [email protected] [google_sign_in] Add troubleshooting
to Android README (flutter/packages#9581)
2025-07-10 [email protected] Roll Flutter from
ac12f66 to 43657f3 (25 revisions) (flutter/packages#9589)
2025-07-10 [email protected]
[go_router_builder] Update case sensitive test to `go_router` 16.0.0
(flutter/packages#9482)
2025-07-09 [email protected] [rfw] Remove the
RFW WASM example (flutter/packages#9551)
2025-07-09 [email protected] Roll Flutter (stable) from
fcf2c11 to 077b4a4 (5 revisions) (flutter/packages#9585)
2025-07-09 [email protected] Roll Flutter from
adffe24 to ac12f66 (28 revisions) (flutter/packages#9584)
2025-07-09 [email protected] [video_player] Add html 5 video poster
support (thumbnail) as a VideoPlayerWebOptions (flutter/packages#8940)

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-flutter-autoroll
Please CC [email protected] on the revert to ensure that a
human
is aware of the problem.

To file a bug in Flutter:
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
azatech pushed a commit to azatech/flutter that referenced this pull request Jul 28, 2025
…er#172303)

flutter/packages@4a231ae...cb8fef6

2025-07-17 49699333+dependabot[bot]@users.noreply.github.com
[dependabot]: Bump androidx.activity:activity from 1.9.3 to 1.10.1 in
/packages/image_picker/image_picker_android/android
(flutter/packages#8725)
2025-07-17 [email protected] [webview_flutter] Update
androidx.webkit to 1.14.0 (flutter/packages#9638)
2025-07-17 [email protected] Roll Flutter from
c2739f0 to 9c626d9 (18 revisions) (flutter/packages#9641)
2025-07-17 [email protected] Roll Flutter (stable) from
077b4a4 to d7b523b (3 revisions) (flutter/packages#9640)
2025-07-17 [email protected] Fix Gemini note wrapping
(flutter/packages#9639)
2025-07-17 49699333+dependabot[bot]@users.noreply.github.com
[dependabot]: Bump com.google.android.gms:play-services-maps from 18.2.0
to 19.2.0 in
/packages/google_maps_flutter/google_maps_flutter_android/android
(flutter/packages#9120)
2025-07-17 49699333+dependabot[bot]@users.noreply.github.com
[dependabot]: Bump androidx.fragment:fragment from 1.6.2 to 1.8.8 in
/packages/local_auth/local_auth_android/android (flutter/packages#9406)
2025-07-16 [email protected] [ci] Add Gemini Code Assist review
config (flutter/packages#9632)
2025-07-16 [email protected] Roll Flutter from
cc3110c to c2739f0 (15 revisions) (flutter/packages#9633)
2025-07-16 [email protected] [image_picker]
redesign example app (flutter/packages#9625)
2025-07-16 [email protected] [camera_avfoundation]
Implementation swift migration - part 7 (flutter/packages#9595)
2025-07-15 [email protected]
[webview_flutter_wkwebview] Replace Flutter method failure assertion
with nslog (flutter/packages#9587)
2025-07-15 [email protected] Roll Flutter from
a930ec1 to cc3110c (24 revisions) (flutter/packages#9631)
2025-07-15 [email protected] [webview_flutter] Add
setMixedContentMode for Android (flutter/packages#9586)
2025-07-15 [email protected] [google_sign_in] Add exception info
to migration guide (flutter/packages#9574)
2025-07-14 [email protected] [camera_android] Use
WeakReference to prevent startImageStream OOM error when main thread
hangs (flutter#166533) (flutter/packages#9571)
2025-07-14 [email protected] [quick_actions]
Restore the appShortcutLaunchActivityAfterStarting test in
quick_actions_android (flutter/packages#9508)
2025-07-14 [email protected] Roll Flutter from
35f197f to a930ec1 (3 revisions) (flutter/packages#9624)
2025-07-14 49699333+dependabot[bot]@users.noreply.github.com
[dependabot]: Bump com.android.tools.build:gradle from 8.9.1 to 8.11.1
in /packages/pigeon/platform_tests/test_plugin/android
(flutter/packages#9618)
2025-07-12 [email protected] Roll Flutter from
43657f3 to 35f197f (39 revisions) (flutter/packages#9602)
2025-07-11 [email protected] Replace popularity badges
(flutter/packages#9594)
2025-07-11 [email protected] [rfw] Update
test to not depend on toString() (flutter/packages#9590)
2025-07-11 [email protected] [camera_avfoundation]
Implementation swift migration - part 6 (flutter/packages#9588)
2025-07-10 [email protected] [url_launcher]
Fixes new unnecessary boolean operations warnings
(flutter/packages#9409)
2025-07-10 [email protected] [google_sign_in] Add troubleshooting
to Android README (flutter/packages#9581)
2025-07-10 [email protected] Roll Flutter from
ac12f66 to 43657f3 (25 revisions) (flutter/packages#9589)
2025-07-10 [email protected]
[go_router_builder] Update case sensitive test to `go_router` 16.0.0
(flutter/packages#9482)
2025-07-09 [email protected] [rfw] Remove the
RFW WASM example (flutter/packages#9551)
2025-07-09 [email protected] Roll Flutter (stable) from
fcf2c11 to 077b4a4 (5 revisions) (flutter/packages#9585)
2025-07-09 [email protected] Roll Flutter from
adffe24 to ac12f66 (28 revisions) (flutter/packages#9584)
2025-07-09 [email protected] [video_player] Add html 5 video poster
support (thumbnail) as a VideoPlayerWebOptions (flutter/packages#8940)

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-flutter-autoroll
Please CC [email protected] on the revert to ensure that a
human
is aware of the problem.

To file a bug in Flutter:
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
github-merge-queue bot pushed a commit to flutter/flutter that referenced this pull request Jul 28, 2025
- Initial config files for [Gemini Code Assist for
GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
These config files are modified versions of the one already added to the
flutter/packages repo: flutter/packages#9632
based on [the official
docs](https://developers.google.com/gemini-code-assist/docs/customize-gemini-behavior-github).
- Style guide has links to various contributing docs and style guides.
- Ignore paths associated with version pins and third_party to avoid
reviews on rolls and code that doesn't need modification. See
flutter/packages#9647.
- Add a note to the PR template to provide some notice/guidance to
contributors about how to use automated feedback, to clarify the role of
the automated reviews and hopefully minimize potential issues in case
the bot leaves incorrect feedback. This is a direct copy of the comment
introduced in flutter/packages#9632.

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [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].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [ ] 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].

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[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
SydneyBao pushed a commit to SydneyBao/flutter that referenced this pull request Jul 30, 2025
- Initial config files for [Gemini Code Assist for
GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
These config files are modified versions of the one already added to the
flutter/packages repo: flutter/packages#9632
based on [the official
docs](https://developers.google.com/gemini-code-assist/docs/customize-gemini-behavior-github).
- Style guide has links to various contributing docs and style guides.
- Ignore paths associated with version pins and third_party to avoid
reviews on rolls and code that doesn't need modification. See
flutter/packages#9647.
- Add a note to the PR template to provide some notice/guidance to
contributors about how to use automated feedback, to clarify the role of
the automated reviews and hopefully minimize potential issues in case
the bot leaves incorrect feedback. This is a direct copy of the comment
introduced in flutter/packages#9632.

## Pre-launch Checklist

- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [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].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [ ] 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].

<!-- Links -->
[Contributor Guide]:
https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
[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
vashworth pushed a commit to vashworth/packages that referenced this pull request Jul 30, 2025
This adds initial configuration files for [Gemini Code Assist for GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code) in preparation for turing it on for this repository on a trial basis. These config files are based on [the official docs](https://developers.google.com/gemini-code-assist/docs/customize-gemini-behavior-github)

It also adds a note to the PR template to provide some notice/guidance to contributors about how to use automated feedback, to clarify the role of the automated reviews and hopefully minimize potential issues in case the bot leaves incorrect feedback.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
autosubmit Merge PR when tree becomes green via auto submit App
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants