refactor(a2a): remove legacy CoreToolScheduler#21955
Conversation
The event-driven Scheduler in a2a-server is now the default and only scheduler. Cleaned up legacy scheduler methods, config flags, and related tests.
|
Hi @adamfweidman, thank you so much for your contribution to Gemini CLI! We really appreciate the time and effort you've put into this. We're making some updates to our contribution process to improve how we track and review changes. Please take a moment to review our recent discussion post: Improving Our Contribution Process & Introducing New Guidelines. Key Update: Starting January 26, 2026, the Gemini CLI project will require all pull requests to be associated with an existing issue. Any pull requests not linked to an issue by that date will be automatically closed. Thank you for your understanding and for being a part of our community! |
|
Hi there! Thank you for your contribution to Gemini CLI. To improve our contribution process and better track changes, we now require all pull requests to be associated with an existing issue, as announced in our recent discussion and as detailed in our CONTRIBUTING.md. This pull request is being closed because it is not currently linked to an issue. Once you have updated the description of this PR to link an issue (e.g., by adding How to link an issue: Thank you for your understanding and for being a part of our community! |
Summary of ChangesHello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed! This pull request refactors the A2A server's task management by eliminating the deprecated Highlights
Changelog
Activity
Using Gemini Code AssistThe full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips. Invoking Gemini You can request assistance from Gemini at any point by creating a comment using either
Customization To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a Limitations & Feedback Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here. You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension. Footnotes
|
|
Thank you for linking an issue! This pull request has been automatically reopened. |
There was a problem hiding this comment.
Code Review
This pull request is a clean refactoring that removes the legacy CoreToolScheduler and its associated logic from the A2A server. The Task class now exclusively uses the event-driven Scheduler from @google/gemini-cli-core, which simplifies the codebase by removing conditional logic, dead code, and the enableEventDrivenScheduler configuration flag. The test files and mock utilities have been updated accordingly to reflect these changes, ensuring correctness. The changes are well-executed and align with the goal of modernizing the scheduler implementation.
|
Size Change: -4 B (0%) Total Size: 26.5 MB ℹ️ View Unchanged
|
Summary
Removes the legacy
CoreToolSchedulerand transitions the A2A serverTaskto exclusively rely on the event-drivenSchedulerimported from@google/gemini-cli-core.Details
createLegacyScheduler,_schedulerAllToolCallsComplete, and_schedulerToolCallsUpdatefrompackages/a2a-server/src/agent/task.ts.enableEventDrivenSchedulerproperties fromconfig.tsandsettings.ts.Tasktests and utility tests to drop assumptions of the old legacy scheduler execution model and properly mock thetoolRegistryproperty necessary for the event-driven Scheduler.npm run typecheckandnpm run lintworkspace-wide after making these breaking internal removals.Related Issues
#21468
How to Validate
packages/a2a-server:npm run test -w @google/gemini-cli-a2a-servernpm run typecheck -w @google/gemini-cli-a2a-servernpm run lint -w @google/gemini-cli-a2a-serverPre-Merge Checklist