Skip to content

Commit 3a281e5

Browse files
committed
add
Signed-off-by: pipiland2612 <[email protected]>
1 parent bb2c9b6 commit 3a281e5

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

scripts/e2e/metrics_summary.py

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,30 @@ def extract_metric_name(line):
7979
return line.split('{')[0].strip()
8080
return line.strip()
8181

82+
def format_sample_diff(samples, change_type=None, limit=5):
83+
"""
84+
Formats a sample of diffs (up to limit) in a collapsible section.
85+
"""
86+
if not samples:
87+
return ""
88+
89+
title = "Sample changes"
90+
if change_type:
91+
title = f"Sample {change_type} changes"
92+
93+
sample_lines = []
94+
sample_lines.append(f"<details><summary>{title} ({len(samples)} total)</summary>")
95+
sample_lines.append("")
96+
97+
for i, sample in enumerate(samples[:limit]):
98+
sample_lines.append(f"```diff\n{sample}\n```")
99+
100+
if len(samples) > limit:
101+
sample_lines.append(f"\n... and {len(samples) - limit} more")
102+
103+
sample_lines.append("</details>")
104+
return "\n".join(sample_lines)
105+
82106
def generate_diff_summary(changes):
83107
"""
84108
Generates a markdown summary from the parsed diff changes.
@@ -100,20 +124,24 @@ def generate_diff_summary(changes):
100124
summary.append("\n### 🆕 Added Metrics")
101125
for metric, samples in changes['added'].items():
102126
summary.append(f"- `{metric}` ({len(samples)} variants)")
127+
summary.append(format_sample_diff(samples, "added"))
103128

104129
# Removed metrics
105130
if changes['removed']:
106131
summary.append("\n### ❌ Removed Metrics")
107132
for metric, samples in changes['removed'].items():
108133
summary.append(f"- `{metric}` ({len(samples)} variants)")
134+
summary.append(format_sample_diff(samples, "removed"))
109135

110136
# Modified metrics
111137
if changes['modified']:
112138
summary.append("\n### 🔄 Modified Metrics")
113139
for metric, versions in changes['modified'].items():
114140
summary.append(f"- `{metric}`")
115141
summary.append(f" - Added variants: {len(versions['added'])}")
142+
summary.append(format_sample_diff(versions['added'], "added"))
116143
summary.append(f" - Removed variants: {len(versions['removed'])}")
144+
summary.append(format_sample_diff(versions['removed'], "removed"))
117145

118146
return "\n".join(summary)
119147

0 commit comments

Comments
 (0)