-
Notifications
You must be signed in to change notification settings - Fork 5.3k
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
Add API endpoints for resolver functionality #5058
Conversation
- Add /api/resolver/resolve-issue endpoint to resolve GitHub issues - Add /api/resolver/send-pr endpoint to create PRs/branches - Add tests for new endpoints - Make resolver functions async for better API integration
Keep the original implementation to avoid modifying core functionality
Co-authored-by: openhands <[email protected]>
New OpenHands update |
The workflow to fix this issue encountered an error. Please check the workflow logs for more information. |
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.
These tests are failing now:
FAILED tests/unit/resolver/test_resolve_issues.py::test_file_instruction_with_repo_instruction
FAILED tests/unit/test_listen.py::test_resolve_issue_endpoint
FAILED tests/unit/test_listen.py::test_send_pull_request_endpoint
New OpenHands update |
The workflow to fix this issue encountered an error. Please check the workflow logs for more information. |
1. Delete send_pull_request endpoint in listen.py 2. Remove file writing dependency in resolve_issue endpoint 3. Rename process_single_issue to create_pull_request_from_resolver_output 4. Update all references and fix tests
I'm going to close because we've refactored "listen.py" and it'd be easier to start from scratch. |
This is a draft of trying to implement the github resolution functionality in
listen.py
.The main change in this PR is that it creates an API endpoint
resolve_issue()
inlisten.py
for calling the github resolver.The input to this function is governed by the data model in
openhands/server/data_models/issue_models.py
.One big question I have is that this endpoint could take 20 minutes to run, which isn't typically a good way to create an endpoint. Do you have a suggestion for the best practice in implementing this?
Any feedback is welcome (cc @rbren)!
NOTE: separately, running linting commands resulted in some unrelated fixing of linting issues...
To run this PR locally, use the following command: