@@ -138,6 +138,23 @@ def format_percentage(numerator, denominator):
138138 writer .writerow (row )
139139
140140
141+ def get_summary (input_json ) -> str :
142+ with open (input_json , "r" ) as f :
143+ json_data = json .load (f )
144+
145+ file_list = FileList .parse_obj ({"files" : json_data })
146+
147+ affected_files = len (file_list .files )
148+ affected_lines = sum ([each .affectedLines for each in file_list .files ])
149+ affected_functions = sum ([each .affectedFunctions for each in file_list .files ])
150+ affected_refs = sum ([each .affectedReferences for each in file_list .files ])
151+
152+ return f"This commit directly influences { affected_files } files, " \
153+ f"{ affected_lines } lines, " \
154+ f"{ affected_functions } functions. " \
155+ f"Indirectly influences { affected_refs } functions. "
156+
157+
141158def dot_to_svg (dot_file ):
142159 svg_bytes = subprocess .check_output (["dot" , "-Tsvg" , dot_file ])
143160 return svg_bytes
@@ -191,6 +208,8 @@ def main():
191208
192209 repo_name = os .getenv ("GITHUB_REPOSITORY" )
193210 process_json (json_result_file , csv_result_file )
211+ diff_desc = f"Start from { before_sha } to { after_sha } ."
212+ summary = get_summary (json_result_file )
194213 md_table_raw = convert_csv_to_md (csv_result_file )
195214
196215 # graph
@@ -200,6 +219,10 @@ def main():
200219 final_content = f"""
201220## [DiffCtx](https://github.com/williamfzc/diffctx) Report
202221
222+ { diff_desc }
223+
224+ { summary }
225+
203226{ md_table_raw }
204227"""
205228 logger .info (f"final comment: { final_content } " )
0 commit comments