-
Notifications
You must be signed in to change notification settings - Fork 0
Austinamoruso/resovleconversations #41
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
Austinamoruso/resovleconversations #41
Conversation
🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Prompt users to confirm before resolving all conversations on a PR. The dialog clearly states the action cannot be undone and provides cancel/confirm options.
Preserve PR review state instead of resetting to default when closing confirmation dialogs
Co-Authored-By: Claude <[email protected]>
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 introduces a valuable feature for resolving all PR conversations directly from the UI. The implementation is comprehensive, covering UI, state management, and GitHub API integration.
I've left a few comments on areas that could be improved:
- Refactoring duplicated logic for showing the confirmation dialog to improve maintainability.
- Addressing a potential bug in the GraphQL query that could miss conversations if a PR has more than 100 threads.
- Changing an unconventional keybinding (
ctrl+c) to improve usability and avoid conflicts with standard terminal behavior. - Removing some leftover debug code.
Once these points are addressed, this will be a solid addition to the application. Great work on the detailed error handling and user-facing messages!
|
/gemini review |
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 introduces a well-implemented feature for resolving all PR conversations. The GitHub API interactions, including pagination and error handling, are robust. My review focuses on improving UI consistency, cleaning up logging, and suggesting a potential refactoring to reduce code duplication. The most critical issue is an inconsistent and problematic keybinding in the PR review UI.
|
/gemini review |
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 introduces a valuable feature for resolving all PR conversations. The implementation is generally solid, with good use of GraphQL pagination and improved error handling for the GitHub CLI. I've identified a few areas for improvement, mainly concerning API efficiency, code duplication, and error handling robustness. Addressing these points will make the feature more performant and maintainable. Great work on this!
|
/gemini review |
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 introduces a valuable feature for resolving all PR conversations directly from the UI. The implementation is well-structured, with good use of Bubble Tea's command/message pattern and a thoughtful refactoring of GraphQL calls to handle pagination. The error handling has also been improved to provide more specific feedback to the user. I've included a couple of suggestions to further improve the robustness of the error handling by using sentinel errors instead of string matching, which will make the application more resilient to changes in external dependencies.
This pull request introduces a feature to resolve all unresolved review threads in a GitHub pull request (PR) through the application's user interface. It includes new commands, user prompts, error handling, and integration with the GitHub CLI for fetching and resolving threads. Additionally, it improves logging and state management to ensure a smooth user experience.
New Feature: Resolve All PR Conversations
resolveAllPRConversationsfunction andresolveConversationsMsgtype to handle the resolution of review threads using the GitHub CLI and GraphQL API. [1] [2]overlay.NewConfirmationOverlay) to prompt users before resolving all threads. [1] [2]ctrl+ras the keybinding to trigger the "resolve all PR conversations" feature. [1] [2] [3]UI and State Management Enhancements
GitHub CLI Integration
GetUnresolvedThreadsmethod to retrieve unresolved review threads using a GraphQL query.ResolveThreadmethod to resolve individual threads via a GraphQL mutation.Keybindings and Help Updates
ctrl+rkeybinding in the help menu for resolving all PR conversations.These changes collectively enhance the application's functionality for managing PR conversations, providing users with a streamlined and reliable way to resolve all unresolved threads directly from the interface.