Merge pull request #1025 from Codium-ai/tr/refresh

refresh message
This commit is contained in:
Tal
2024-07-05 17:12:55 +03:00
committed by GitHub

View File

@ -143,12 +143,10 @@ class PRCodeSuggestions:
initial_header="## PR Code Suggestions ✨", initial_header="## PR Code Suggestions ✨",
update_header=True, update_header=True,
name="suggestions", name="suggestions",
final_update_message = final_update_message, final_update_message=final_update_message,
max_previous_comments = get_settings().pr_code_suggestions.max_history_len) max_previous_comments=get_settings().pr_code_suggestions.max_history_len,
if self.progress_response: progress_response=self.progress_response)
self.progress_response.delete()
else: else:
if self.progress_response: if self.progress_response:
self.git_provider.edit_comment(self.progress_response, body=pr_body) self.git_provider.edit_comment(self.progress_response, body=pr_body)
else: else:
@ -174,7 +172,8 @@ class PRCodeSuggestions:
update_header: bool = True, update_header: bool = True,
name='review', name='review',
final_update_message=True, final_update_message=True,
max_previous_comments=4): max_previous_comments=4,
progress_response=None):
history_header = f"#### Previous suggestions\n" history_header = f"#### Previous suggestions\n"
last_commit_num = self.git_provider.get_latest_commit_url().split('/')[-1][:7] last_commit_num = self.git_provider.get_latest_commit_url().split('/')[-1][:7]
latest_suggestion_header = f"Latest suggestions up to {last_commit_num}" latest_suggestion_header = f"Latest suggestions up to {last_commit_num}"
@ -232,6 +231,7 @@ class PRCodeSuggestions:
# Add to the prev_suggestions section # Add to the prev_suggestions section
last_prev_table = f"\n<details><summary>{tick}{name.capitalize()}{up_to_commit_txt}</summary>\n<br>{latest_table}\n\n</details>" last_prev_table = f"\n<details><summary>{tick}{name.capitalize()}{up_to_commit_txt}</summary>\n<br>{latest_table}\n\n</details>"
prev_suggestion_table = last_prev_table + "\n" + prev_suggestion_table prev_suggestion_table = last_prev_table + "\n" + prev_suggestion_table
new_suggestion_table = pr_comment.replace(initial_header, "").strip() new_suggestion_table = pr_comment.replace(initial_header, "").strip()
pr_comment_updated = f"{initial_header}\n" pr_comment_updated = f"{initial_header}\n"
@ -242,17 +242,21 @@ class PRCodeSuggestions:
pr_comment_updated += f"{prev_suggestion_table}\n" pr_comment_updated += f"{prev_suggestion_table}\n"
get_logger().info(f"Persistent mode - updating comment {comment_url} to latest {name} message") get_logger().info(f"Persistent mode - updating comment {comment_url} to latest {name} message")
if progress_response: # publish to 'progress_response' comment, because it refreshes immediately
self.git_provider.edit_comment(comment, pr_comment_updated) self.git_provider.edit_comment(progress_response, pr_comment_updated)
comment.delete()
else:
self.git_provider.edit_comment(comment, pr_comment_updated)
return return
except Exception as e: except Exception as e:
get_logger().exception(f"Failed to update persistent review, error: {e}") get_logger().exception(f"Failed to update persistent review, error: {e}")
pass pass
# if we are here, we did not find a previous comment to update
body = pr_comment.replace(initial_header, "").strip() body = pr_comment.replace(initial_header, "").strip()
pr_comment = f"{initial_header}\n\n{latest_commit_html_comment}\n\n{body}\n\n" pr_comment = f"{initial_header}\n\n{latest_commit_html_comment}\n\n{body}\n\n"
if found_comment is not None: if progress_response:
self.git_provider.edit_comment(found_comment, pr_comment) self.git_provider.edit_comment(progress_response, pr_comment)
else: else:
self.git_provider.publish_comment(pr_comment) self.git_provider.publish_comment(pr_comment)