Skip to content

fix: overwrite the deprecated googledrive extension config#7974

Merged
lifeizhou-ap merged 3 commits intomainfrom
lifei/googledrive-sync
Mar 18, 2026
Merged

fix: overwrite the deprecated googledrive extension config#7974
lifeizhou-ap merged 3 commits intomainfrom
lifei/googledrive-sync

Conversation

@lifeizhou-ap
Copy link
Copy Markdown
Collaborator

Summary

Why

Old builtingoogledrive extension config cannot be synced with the new stdio config in Desktop

What

  • check the extension name with normalised key
  • if the extension is bundled but deprecated, update it.

Testing

Manual testing

Copy link
Copy Markdown
Collaborator

@michaelneale michaelneale left a comment

Choose a reason for hiding this comment

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

slightly worried about backwards compat and what this means here ... hrm...

Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 8267d17a7f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines 65 to 67
for (const bundledExt of bundledExtensions) {
// Find if this extension already exists
const existingExt = existingExtensions.find((ext) => nameToKey(ext.name) === bundledExt.id);
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Migrate deprecated Google Drive outside bundled-id loop

The migration check is only reached for entries that match a bundledExt.id, but this loop iterates bundled-extensions.json, which currently has no googledrive/google_drive entry. In that case existingExt is never the deprecated Google Drive extension, so isDeprecatedGoogleDriveExtension(...) never triggers and the old bundled config is not overwritten. Users with deprecated Google Drive config will keep stale settings despite this fix.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

in the release version, the googledrive will be in the bundled-extensions.json

Comment on lines +109 to +112
await syncBundledExtensions(existingExtensions, addExtensionFn);

expect(addExtensionFn).toHaveBeenCalled();
});
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P2 Badge Tighten googledrive sync assertions to verify migration path

These tests only assert that addExtensionFn was called at least once, but syncBundledExtensions already calls addExtensionFn for other missing bundled defaults in the fixture. That means the test passes even when the deprecated googledrive entry is never detected or overwritten, so it does not protect the migration behavior this commit is adding.

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

i have updated my tests based on your comment, but seems the ui has not refreshed

@lifeizhou-ap
Copy link
Copy Markdown
Collaborator Author

slightly worried about backwards compat and what this means here ... hrm...

Hi @michaelneale Thanks for the review!

The bundle sync did not work before this PR as a few users were stuck with the old google drive extension (type: built-in). So this PR is to enable the update google drive extension on their Desktop from the bundled extension.

Also I found the GOOGLE_DRIVE_CREDENTIALS_PATH, GOOGLE_DRIVE_OAUTH_PATH are never used in the our google drive stdio extension (please correct me if i am wrong). With this PR, if users have googledrive with these 2 env vars, it will update from the bundled extension too. I have updated the our bundle json without these 2 env vars.

The reason i have included this is that some users in windows have error of Failed to fetch secret 'GOOGLE_DRIVE_CREDENTIALS_PATH' from config: Configuration value not found: GOOGLE_DRIVE_CREDENTIALS_PATH.. So I think it would be good if we can drop these unused env vars and see whether it works for our users.

@lifeizhou-ap lifeizhou-ap added this pull request to the merge queue Mar 18, 2026
Merged via the queue into main with commit 493566d Mar 18, 2026
21 checks passed
@lifeizhou-ap lifeizhou-ap deleted the lifei/googledrive-sync branch March 18, 2026 10:51
lifeizhou-ap added a commit that referenced this pull request Mar 20, 2026
* main: (22 commits)
  feat: add gemini-acp provider, update docs on subscription models + improvements to codex (#8000)
  fix(openai): use Responses API for gpt-5.4 (#7982)
  Remove lead/worker provider (#7989)
  chore(release): release version 1.28.0 (#7991)
  Fix empty tool results from resource content (e.g. auto visualiser) (#7866)
  Separate SSE streaming from POST work submission (#7834)
  fix: include token usage in Databricks streaming responses (#7959)
  Optimize tool summarization (#7938)
  fix: overwrite the deprecated googledrive extension config (#7974)
  refactor: remove unnecessary Arc<Mutex> from tool execution pipeline (#7979)
  Revert message flush & test (#7966)
  docs: add Remote Access section with Telegram Gateway documentation (#7955)
  fix: update webmcp blog post metadata image URL (#7967)
  fix: clean up OAuth token cache on provider deletion (#7908)
  fix: hard-coded tool call id in code mode callback (#7939)
  Fix SSE parsers to accept optional space after data: prefix (#7929)
  docs: add GOOSE_INPUT_LIMIT to config-files.md (#7961)
  Add WebMCP for Beginners blog post (#7957)
  Fix download manager (#7933)
  Improve the formatting of tool calls, show thinking, treat Reasoning and Thinking as the same thing (sorry Kant) (#7626)
  ...
elijahsgh pushed a commit to elijahsgh/goose that referenced this pull request Mar 21, 2026
elijahsgh pushed a commit to elijahsgh/goose that referenced this pull request Mar 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants