Skip to content

Commit 8e60158

Browse files
committed
refactor: add advanced model parameter to regression test nodes for enhanced analysis capabilities
1 parent 3a5e5b9 commit 8e60158

8 files changed

Lines changed: 29 additions & 10 deletions

prometheus/lang_graph/nodes/get_pass_regression_test_patch_subgraph_node.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,8 @@
1616
class GetPassRegressionTestPatchSubgraphNode:
1717
def __init__(
1818
self,
19-
model: BaseChatModel,
19+
base_model: BaseChatModel,
20+
advanced_model: BaseChatModel,
2021
container: BaseContainer,
2122
git_repo: GitRepository,
2223
testing_patch_key: str,
@@ -26,7 +27,8 @@ def __init__(
2627
):
2728
self._logger = logging.getLogger(f"thread-{threading.get_ident()}.{__name__}")
2829
self.subgraph = GetPassRegressionTestPatchSubgraph(
29-
base_model=model,
30+
base_model=base_model,
31+
advanced_model=advanced_model,
3032
container=container,
3133
git_repo=git_repo,
3234
)

prometheus/lang_graph/nodes/run_regression_tests_subgraph_node.py

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,16 @@
1111

1212
class RunRegressionTestsSubgraphNode:
1313
def __init__(
14-
self, model: BaseChatModel, container: BaseContainer, passed_regression_tests_key: str
14+
self,
15+
base_model: BaseChatModel,
16+
advanced_model: BaseChatModel,
17+
container: BaseContainer,
18+
passed_regression_tests_key: str,
1519
):
1620
self._logger = logging.getLogger(f"thread-{threading.get_ident()}.{__name__}")
1721
self.subgraph = RunRegressionTestsSubgraph(
18-
base_model=model,
22+
base_model=base_model,
23+
advanced_model=advanced_model,
1924
container=container,
2025
)
2126
self.passed_regression_tests_key = passed_regression_tests_key

prometheus/lang_graph/subgraphs/bug_get_regression_tests_subgraph.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,8 @@ def __init__(
6868
)
6969
# Step 4: Run the selected regression tests before the fix and store results
7070
run_regression_tests_subgraph_node = RunRegressionTestsSubgraphNode(
71-
model=base_model,
71+
base_model=base_model,
72+
advanced_model=advanced_model,
7273
container=container,
7374
passed_regression_tests_key="selected_regression_tests",
7475
)

prometheus/lang_graph/subgraphs/get_pass_regression_test_patch_subgraph.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ class GetPassRegressionTestPatchSubgraph:
3131
def __init__(
3232
self,
3333
base_model: BaseChatModel,
34+
advanced_model: BaseChatModel,
3435
container: BaseContainer,
3536
git_repo: GitRepository,
3637
):
@@ -39,7 +40,9 @@ def __init__(
3940
4041
Args:
4142
base_model: Lighter LLM for simpler tasks (e.g., file selection).
43+
advanced_model: More capable LLM for complex analysis tasks.
4244
container: Docker-based sandbox for running code.
45+
git_repo: Git repository interface for codebase manipulation.
4346
"""
4447
noop_nodes = NoopNode()
4548
# Step 1: Update the Git repository with the current testing patch
@@ -50,7 +53,8 @@ def __init__(
5053
update_container_node = UpdateContainerNode(container=container, git_repo=git_repo)
5154
# Step 3: Run regression tests on the current testing patch
5255
run_regression_tests_subgraph_node = RunRegressionTestsSubgraphNode(
53-
model=base_model,
56+
base_model=base_model,
57+
advanced_model=advanced_model,
5458
container=container,
5559
passed_regression_tests_key="current_passed_tests",
5660
)

prometheus/lang_graph/subgraphs/issue_feature_subgraph.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -127,7 +127,8 @@ def __init__(
127127

128128
# Phase 5: Optional regression test validation
129129
get_pass_regression_test_patch_subgraph_node = GetPassRegressionTestPatchSubgraphNode(
130-
model=base_model,
130+
base_model=base_model,
131+
advanced_model=advanced_model,
131132
container=container,
132133
git_repo=git_repo,
133134
testing_patch_key="final_candidate_patches",

prometheus/lang_graph/subgraphs/issue_not_verified_bug_subgraph.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,8 @@ def __init__(
7474

7575
# Get pass regression test patch subgraph node
7676
get_pass_regression_test_patch_subgraph_node = GetPassRegressionTestPatchSubgraphNode(
77-
model=base_model,
77+
base_model=base_model,
78+
advanced_model=advanced_model,
7879
container=container,
7980
git_repo=git_repo,
8081
testing_patch_key="final_candidate_patches",

prometheus/lang_graph/subgraphs/issue_verified_bug_subgraph.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,8 @@ def __init__(
109109
# Phase 5: Run Regression Tests if available
110110
get_pass_regression_test_patch_branch_node = NoopNode()
111111
get_pass_regression_test_patch_subgraph_node = GetPassRegressionTestPatchSubgraphNode(
112-
model=base_model,
112+
base_model=base_model,
113+
advanced_model=advanced_model,
113114
container=container,
114115
git_repo=git_repo,
115116
testing_patch_key="edit_patch",

prometheus/lang_graph/subgraphs/run_regression_tests_subgraph.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,15 @@ class RunRegressionTestsSubgraph:
2222
def __init__(
2323
self,
2424
base_model: BaseChatModel,
25+
advanced_model: BaseChatModel,
2526
container: BaseContainer,
2627
):
2728
"""
2829
Initialize the run regression tests pipeline with all necessary parts.
2930
3031
Args:
3132
base_model: Lighter LLM for simpler tasks (e.g., file selection).
33+
advanced_model: More capable LLM for complex analysis tasks.
3234
container: Docker-based sandbox for running code.
3335
"""
3436
# Run regression tests node
@@ -38,7 +40,9 @@ def __init__(
3840
name="run_regression_tests_tools",
3941
messages_key="run_regression_tests_messages",
4042
)
41-
run_regression_tests_structured_node = RunRegressionTestsStructuredNode(model=base_model)
43+
run_regression_tests_structured_node = RunRegressionTestsStructuredNode(
44+
model=advanced_model
45+
)
4246
# Define the state machine
4347
workflow = StateGraph(RunRegressionTestsState)
4448
workflow.add_node("run_regression_tests_node", run_regression_tests_node)

0 commit comments

Comments
 (0)