Conversation
…y and knowledge graph handling
… Neo4jService integration
…ated code to use knowledge graph utilities
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request primarily refactors the codebase to remove the
PROMETHEUS_MAX_TOKEN_PER_NEO4J_RESULTconfiguration and all related code, and to make the knowledge graph and Neo4j services fully asynchronous. It also improves repository status tracking during issue processing and updates service initialization and usage patterns accordingly.Key changes include:
Configuration and Environment Cleanup:
PROMETHEUS_MAX_TOKEN_PER_NEO4J_RESULTenvironment variable and all references to it from configuration files (.github/workflows/pytest_and_coverage.yml,docker-compose.yml,docker-compose.win_mac.yml,example.env,prometheus/configuration/config.py). [1] [2] [3] [4] [5]Knowledge Graph and Neo4j Service Refactor:
KnowledgeGraphServiceto make all major methods asynchronous, includingget_knowledge_graph,clear_kg, andbuild_and_save_knowledge_graph. Added logging and a newstartasync method. [1] [2] [3]Neo4jServiceto useAsyncGraphDatabaseand made itsclosemethod asynchronous.Repository and Issue Handling Improvements:
answer_issue) to use the asynchronous knowledge graph methods and to set the repository status to "working" before processing and reset it afterward. [1] [2]clear_kgmethod.Issue Service and LangGraph Refactoring:
max_token_per_neo4j_resultandneo4j_driverfromIssueService, its initialization, and from all relevant langgraph node and graph constructors (issue_graph.py,bug_get_regression_tests_subgraph_node.py,bug_reproduction_subgraph_node.py). [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18]Logging Updates:
MAX_TOKEN_PER_NEO4J_RESULTsetting from the application startup log.These changes simplify configuration, improve async handling, and remove obsolete parameters, making the codebase cleaner and more maintainable.