diff --git a/pr_agent/settings/configuration.toml b/pr_agent/settings/configuration.toml
index 62649d5e..01c09207 100644
--- a/pr_agent/settings/configuration.toml
+++ b/pr_agent/settings/configuration.toml
@@ -121,6 +121,9 @@ max_history_len=4
apply_suggestions_checkbox=true
# suggestions scoring
suggestions_score_threshold=0 # [0-10]| recommend not to set this value above 8, since above it may clip highly relevant suggestions
+new_score_mechanism=true
+new_score_mechanism_th_high=9
+new_score_mechanism_th_medium=7
# params for '/improve --extended' mode
auto_extended_mode=true
num_code_suggestions_per_chunk=4
diff --git a/pr_agent/tools/pr_code_suggestions.py b/pr_agent/tools/pr_code_suggestions.py
index b64b2a43..5a98cc9e 100644
--- a/pr_agent/tools/pr_code_suggestions.py
+++ b/pr_agent/tools/pr_code_suggestions.py
@@ -794,14 +794,15 @@ class PRCodeSuggestions:
{example_code.rstrip()}
"""
- pr_body += f"Suggestion importance[1-10]: {suggestion['score']}
\n\n"
- pr_body += f"__\n\nWhy: {suggestion['score_why']}\n\n"
- pr_body += f" "
+ if suggestion.get('score_why'):
+ pr_body += f"Suggestion importance[1-10]: {suggestion['score']}
\n\n"
+ pr_body += f"__\n\nWhy: {suggestion['score_why']}\n\n"
+ pr_body += f" "
pr_body += f""
# # add another column for 'score'
- score_int = int(suggestion['score'])
+ score_int = int(suggestion.get('score', 0))
score_str = f"{score_int}"
if get_settings().pr_code_suggestions.new_score_mechanism:
score_str = self.get_score_str(score_int)
@@ -819,9 +820,11 @@ class PRCodeSuggestions:
return ""
def get_score_str(self, score: int) -> str:
- if score >= 9:
+ th_high = get_settings().pr_code_suggestions.get('new_score_mechanism_th_high', 9)
+ th_medium = get_settings().pr_code_suggestions.get('new_score_mechanism_th_medium', 7)
+ if score >= th_high:
return "High"
- elif score >= 7:
+ elif score >= th_medium:
return "Medium"
else: # score < 7
return "Low"