Skip to content

Conversation

@stuartmorgan-g
Copy link
Collaborator

Adds a new clearAuthorizationToken method to all layers of the plugin stack, allowing for removing a token from the cache:

  • On Android, this calls a very recently added AuthorizationClient method that was added for this purpose.
  • On Web it deletes tokens from our own cache.
  • On iOS, it's a no-op since this is managed internally.

Originally I hadn't thought this was necessary since all platform manage token expiration automatically, but as the linked issue highlights there are cases where a non-expired token can become invalid, and in that case it will sit in the cache and continue to be returned on Android and Web. Clients are expected to handle this case when API requests using the token fail (example docs for Android), so we need to provide a method for it.

Fixes flutter/flutter#173924

Pre-Review Checklist

Note: The Flutter team is currently trialing the use of Gemini Code Assist for GitHub. 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.

Footnotes

  1. Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling. 2 3

google-labs-jules bot and others added 12 commits August 18, 2025 10:50
Adds a new `clearAuthCache` method to the `google_sign_in` plugin. This method allows developers to clear the auth cache for a signed-in user.

The implementation is provided for the Android and Web platforms. On Android, it calls `AuthorizationClient.clearToken`. On Web, it removes the matching entry from an in-memory cache.
Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request introduces a new clearAuthorizationToken method across all layers of the google_sign_in plugin. This allows developers to manually clear a cached authorization token if it becomes invalid. The implementation is handled natively on Android, is a no-op on iOS (as the SDK handles it), and clears a local cache on the web. The changes include updates to the platform interface, implementations for each platform, and corresponding tests and documentation.

My review identifies a critical issue with dependency_overrides that must be removed before merging. I've also suggested improvements to the Android tests for better coverage and a minor code style improvement in the Android implementation to avoid type shadowing.

@stuartmorgan-g

This comment was marked as outdated.

github-merge-queue bot pushed a commit to flutter/flutter that referenced this pull request Aug 20, 2025
A copy of @stuartmorgan-g change at
flutter/packages#9805

> Initial attempt at adding guidance for GCAfGH to try cut down on the
behavior observed so far that it:
> - Almost always includes generic praise for the PR, which is unhelpful
since the agent has no context for evaluating what PRs we actually want
(see [this particularly problematic
example](flutter/packages#9795 (review)))
> - Appears to trust PR descriptions. E.g., recently praising a PR that
was missing tests of most of the PR, but had a PR description saying it
included extensive testing, as being extremely well tested.

Here are examples of summaries from the packages repo before and after
this change:

Before (praise like "great refactoring effort", "significantly improves
the modularity and maintainability", "extensive documentation updates
are also a major improvement"):
> This pull request is a great refactoring effort. Moving the ProxyAPI
generation logic into a dedicated helper file
(`proxy_api_generator_helper.dart`) significantly improves the
modularity and maintainability of the Dart generator. The extensive
documentation updates are also a major improvement, making the concepts
around ProxyAPIs much clearer for developers.

flutter/packages#9756



After (drier, describing the actual change without making normative
evaluation):
> This pull request introduces a new `clearAuthorizationToken` method
across all layers of the `google_sign_in` plugin. This allows developers
to manually clear a cached authorization token if it becomes invalid.
The implementation is handled natively on Android, is a no-op on iOS (as
the SDK handles it), and clears a local cache on the web. The changes
include updates to the platform interface, implementations for each
platform, and corresponding tests and documentation.


flutter/packages#9846 (review)

## 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.
- [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
[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
github-merge-queue bot pushed a commit to flutter/flutter that referenced this pull request Aug 20, 2025
A copy of @stuartmorgan-g change at
flutter/packages#9805

> Initial attempt at adding guidance for GCAfGH to try cut down on the
behavior observed so far that it:
> - Almost always includes generic praise for the PR, which is unhelpful
since the agent has no context for evaluating what PRs we actually want
(see [this particularly problematic
example](flutter/packages#9795 (review)))
> - Appears to trust PR descriptions. E.g., recently praising a PR that
was missing tests of most of the PR, but had a PR description saying it
included extensive testing, as being extremely well tested.

Here are examples of summaries from the packages repo before and after
this change:

Before (praise like "great refactoring effort", "significantly improves
the modularity and maintainability", "extensive documentation updates
are also a major improvement"):
> This pull request is a great refactoring effort. Moving the ProxyAPI
generation logic into a dedicated helper file
(`proxy_api_generator_helper.dart`) significantly improves the
modularity and maintainability of the Dart generator. The extensive
documentation updates are also a major improvement, making the concepts
around ProxyAPIs much clearer for developers.

flutter/packages#9756



After (drier, describing the actual change without making normative
evaluation):
> This pull request introduces a new `clearAuthorizationToken` method
across all layers of the `google_sign_in` plugin. This allows developers
to manually clear a cached authorization token if it becomes invalid.
The implementation is handled natively on Android, is a no-op on iOS (as
the SDK handles it), and clears a local cache on the web. The changes
include updates to the platform interface, implementations for each
platform, and corresponding tests and documentation.


flutter/packages#9846 (review)

## 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.
- [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
[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
Copy link
Contributor

@bparrishMines bparrishMines left a comment

Choose a reason for hiding this comment

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

LGTM

github-merge-queue bot pushed a commit to flutter/flutter that referenced this pull request Aug 21, 2025
A copy of @stuartmorgan-g change at
flutter/packages#9805

> Initial attempt at adding guidance for GCAfGH to try cut down on the
behavior observed so far that it:
> - Almost always includes generic praise for the PR, which is unhelpful
since the agent has no context for evaluating what PRs we actually want
(see [this particularly problematic
example](flutter/packages#9795 (review)))
> - Appears to trust PR descriptions. E.g., recently praising a PR that
was missing tests of most of the PR, but had a PR description saying it
included extensive testing, as being extremely well tested.

Here are examples of summaries from the packages repo before and after
this change:

Before (praise like "great refactoring effort", "significantly improves
the modularity and maintainability", "extensive documentation updates
are also a major improvement"):
> This pull request is a great refactoring effort. Moving the ProxyAPI
generation logic into a dedicated helper file
(`proxy_api_generator_helper.dart`) significantly improves the
modularity and maintainability of the Dart generator. The extensive
documentation updates are also a major improvement, making the concepts
around ProxyAPIs much clearer for developers.

flutter/packages#9756



After (drier, describing the actual change without making normative
evaluation):
> This pull request introduces a new `clearAuthorizationToken` method
across all layers of the `google_sign_in` plugin. This allows developers
to manually clear a cached authorization token if it becomes invalid.
The implementation is handled natively on Android, is a no-op on iOS (as
the SDK handles it), and clears a local cache on the web. The changes
include updates to the platform interface, implementations for each
platform, and corresponding tests and documentation.


flutter/packages#9846 (review)

## 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.
- [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
[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
@stuartmorgan-g
Copy link
Collaborator Author

I split out #9929 so that the platform interface part can land in parallel with the Android and Web reviews happening, since the platform reviews won't impact the interface in this case.

auto-submit bot pushed a commit that referenced this pull request Sep 9, 2025
…#9929)

Platform interface portion of #9846

Part of flutter/flutter#173924

## Pre-Review Checklist

[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
Copy link
Contributor

@ash2moon ash2moon left a comment

Choose a reason for hiding this comment

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

LGTM!

@stuartmorgan-g stuartmorgan-g removed the triage-android Should be looked at in Android triage label Sep 17, 2025
@stuartmorgan-g stuartmorgan-g removed the triage-web Should be looked at in web triage label Sep 17, 2025
auto-submit bot pushed a commit that referenced this pull request Sep 17, 2025
Platform interface portion of #9846

Part of flutter/flutter#173924

## Pre-Review Checklist

[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
@stuartmorgan-g
Copy link
Collaborator Author

Replaced overrides with updated constraints now that the platform implementation portions have been landed and published.

@stuartmorgan-g stuartmorgan-g added the autosubmit Merge PR when tree becomes green via auto submit App label Sep 17, 2025
@auto-submit auto-submit bot merged commit f2a65fd into flutter:main Sep 17, 2025
80 checks passed
engine-flutter-autoroll added a commit to engine-flutter-autoroll/flutter that referenced this pull request Sep 18, 2025
github-merge-queue bot pushed a commit to flutter/flutter that referenced this pull request Sep 18, 2025
flutter/packages@fdee698...f2a65fd

2025-09-17 stuartmorgan@google.com [google_sign_in] Add a method to
clear auth tokens (flutter/packages#9846)
2025-09-17 blackorbs.dev@gmail.com [camera_platform_interface] implement
setDescriptionWhileRecording with android camerax
(flutter/packages#9998)
2025-09-17 engine-flutter-autoroll@skia.org Roll Flutter from
8d0b31d to 8f94cb0 (24 revisions) (flutter/packages#10028)

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 flutter-ecosystem@google.com 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
mboetger pushed a commit to mboetger/flutter that referenced this pull request Sep 18, 2025
…74000)

A copy of @stuartmorgan-g change at
flutter/packages#9805

> Initial attempt at adding guidance for GCAfGH to try cut down on the
behavior observed so far that it:
> - Almost always includes generic praise for the PR, which is unhelpful
since the agent has no context for evaluating what PRs we actually want
(see [this particularly problematic
example](flutter/packages#9795 (review)))
> - Appears to trust PR descriptions. E.g., recently praising a PR that
was missing tests of most of the PR, but had a PR description saying it
included extensive testing, as being extremely well tested.

Here are examples of summaries from the packages repo before and after
this change:

Before (praise like "great refactoring effort", "significantly improves
the modularity and maintainability", "extensive documentation updates
are also a major improvement"):
> This pull request is a great refactoring effort. Moving the ProxyAPI
generation logic into a dedicated helper file
(`proxy_api_generator_helper.dart`) significantly improves the
modularity and maintainability of the Dart generator. The extensive
documentation updates are also a major improvement, making the concepts
around ProxyAPIs much clearer for developers.

flutter/packages#9756



After (drier, describing the actual change without making normative
evaluation):
> This pull request introduces a new `clearAuthorizationToken` method
across all layers of the `google_sign_in` plugin. This allows developers
to manually clear a cached authorization token if it becomes invalid.
The implementation is handled natively on Android, is a no-op on iOS (as
the SDK handles it), and clears a local cache on the web. The changes
include updates to the platform interface, implementations for each
platform, and corresponding tests and documentation.


flutter/packages#9846 (review)

## 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.
- [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
[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
korca0220 pushed a commit to korca0220/flutter that referenced this pull request Sep 22, 2025
…74000)

A copy of @stuartmorgan-g change at
flutter/packages#9805

> Initial attempt at adding guidance for GCAfGH to try cut down on the
behavior observed so far that it:
> - Almost always includes generic praise for the PR, which is unhelpful
since the agent has no context for evaluating what PRs we actually want
(see [this particularly problematic
example](flutter/packages#9795 (review)))
> - Appears to trust PR descriptions. E.g., recently praising a PR that
was missing tests of most of the PR, but had a PR description saying it
included extensive testing, as being extremely well tested.

Here are examples of summaries from the packages repo before and after
this change:

Before (praise like "great refactoring effort", "significantly improves
the modularity and maintainability", "extensive documentation updates
are also a major improvement"):
> This pull request is a great refactoring effort. Moving the ProxyAPI
generation logic into a dedicated helper file
(`proxy_api_generator_helper.dart`) significantly improves the
modularity and maintainability of the Dart generator. The extensive
documentation updates are also a major improvement, making the concepts
around ProxyAPIs much clearer for developers.

flutter/packages#9756



After (drier, describing the actual change without making normative
evaluation):
> This pull request introduces a new `clearAuthorizationToken` method
across all layers of the `google_sign_in` plugin. This allows developers
to manually clear a cached authorization token if it becomes invalid.
The implementation is handled natively on Android, is a no-op on iOS (as
the SDK handles it), and clears a local cache on the web. The changes
include updates to the platform interface, implementations for each
platform, and corresponding tests and documentation.


flutter/packages#9846 (review)

## 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.
- [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
[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
Jaineel-Mamtora pushed a commit to Jaineel-Mamtora/flutter_forked that referenced this pull request Sep 24, 2025
…74000)

A copy of @stuartmorgan-g change at
flutter/packages#9805

> Initial attempt at adding guidance for GCAfGH to try cut down on the
behavior observed so far that it:
> - Almost always includes generic praise for the PR, which is unhelpful
since the agent has no context for evaluating what PRs we actually want
(see [this particularly problematic
example](flutter/packages#9795 (review)))
> - Appears to trust PR descriptions. E.g., recently praising a PR that
was missing tests of most of the PR, but had a PR description saying it
included extensive testing, as being extremely well tested.

Here are examples of summaries from the packages repo before and after
this change:

Before (praise like "great refactoring effort", "significantly improves
the modularity and maintainability", "extensive documentation updates
are also a major improvement"):
> This pull request is a great refactoring effort. Moving the ProxyAPI
generation logic into a dedicated helper file
(`proxy_api_generator_helper.dart`) significantly improves the
modularity and maintainability of the Dart generator. The extensive
documentation updates are also a major improvement, making the concepts
around ProxyAPIs much clearer for developers.

flutter/packages#9756



After (drier, describing the actual change without making normative
evaluation):
> This pull request introduces a new `clearAuthorizationToken` method
across all layers of the `google_sign_in` plugin. This allows developers
to manually clear a cached authorization token if it becomes invalid.
The implementation is handled natively on Android, is a no-op on iOS (as
the SDK handles it), and clears a local cache on the web. The changes
include updates to the platform interface, implementations for each
platform, and corresponding tests and documentation.


flutter/packages#9846 (review)

## 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.
- [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
[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
Jaineel-Mamtora pushed a commit to Jaineel-Mamtora/flutter_forked that referenced this pull request Sep 24, 2025
…r#175594)

flutter/packages@fdee698...f2a65fd

2025-09-17 stuartmorgan@google.com [google_sign_in] Add a method to
clear auth tokens (flutter/packages#9846)
2025-09-17 blackorbs.dev@gmail.com [camera_platform_interface] implement
setDescriptionWhileRecording with android camerax
(flutter/packages#9998)
2025-09-17 engine-flutter-autoroll@skia.org Roll Flutter from
8d0b31d to 8f94cb0 (24 revisions) (flutter/packages#10028)

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 flutter-ecosystem@google.com 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
danferreira pushed a commit to danferreira/packages that referenced this pull request Oct 22, 2025
…flutter#9929)

Platform interface portion of flutter#9846

Part of flutter/flutter#173924

## Pre-Review Checklist

[^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
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 federated: all_changes PR that contains changes for all packages for a federated plugin change p: google_sign_in

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[google_sign_in] Add an API to clear access token cache, to handle invalidated tokens

4 participants