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"