-
Notifications
You must be signed in to change notification settings - Fork 57
Refactor node selection to use node URL instead of ID #1545
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
base: main
Are you sure you want to change the base?
Conversation
Summary of ChangesHello @DRadmir, 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 significantly refactors the application's node selection and persistence strategy. By transitioning from an internal node ID to the node's URL as the primary reference, the system gains a more direct and consistent way to identify and manage selected nodes. This change impacts the database schema, service layer, and storage logic, all of which have been updated to align with the new approach, including a necessary database migration and new unit tests. Highlights
🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console. 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
|
There was a problem hiding this 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 refactors node selection to use the node's URL instead of an ID, which simplifies the storage logic. The changes include updating the database schema with a migration, modifying the NodeService and NodeStore APIs, and adding new tests for the selection behavior. The refactoring is well-executed, but I've identified a few areas for improvement regarding data integrity, performance, and the robustness of the database migration. My comments provide specific suggestions to address these points.
Updated NodeSelectedRecord and related store/service logic to use nodeUrl as the primary reference instead of nodeId. Added a migration to update the database schema accordingly. Adjusted NodeService and NodeStore APIs to reflect this change and added new tests for node selection behavior.
4d953be to
9cc00f3
Compare
Changed NodeSelectedRecord's database table name from 'nodes_selected_v1' to 'nodes_selected'. Updated the migration to create the new table, migrate data, and drop the old table instead of renaming. This streamlines the migration process and clarifies table naming.
e1d1135 to
fcc06bb
Compare
Adds a step to drop the NodeSelectedRecord table before recreating it during the 'Migrate nodes_selected_v1' migration. This ensures the table is reset before inserting new data.
Updated NodeSelectedRecord and related store/service logic to use nodeUrl as the primary reference instead of nodeId. Added a migration to update the database schema accordingly. Adjusted NodeService and NodeStore APIs to reflect this change and added new tests for node selection behavior.
Fix: #1541