fix: correct merged vs closed terminology for PR metrics

- Prefer 'Number of items merged' over 'Number of items closed' for accuracy
- Prefer 'Average time to merge' over 'Time to close' for PR timing
- Add safe fallbacks if action doesn't provide merged-specific metrics
- Fixes Discord report showing 'merged' but parsing 'closed' data
This commit is contained in:
Ralph Khreish
2025-09-22 15:25:05 +02:00
parent 320cc6e6a0
commit 6c54a2821d

View File

@@ -82,12 +82,19 @@ function main() {
prContent, prContent,
'Total number of items created' 'Total number of items created'
); );
metrics.prs_merged = parseCountMetric(prContent, 'Number of items closed'); // Prefer merged; fall back to closed if the generator doesn't emit "merged"
const mergedCount = parseCountMetric(prContent, 'Number of items merged');
metrics.prs_merged = mergedCount || parseCountMetric(prContent, 'Number of items closed');
metrics.pr_avg_first_response = parseMetricsTable( metrics.pr_avg_first_response = parseMetricsTable(
prContent, prContent,
'Time to first response' 'Time to first response'
); );
metrics.pr_avg_merge_time = parseMetricsTable(prContent, 'Time to close'); // Prefer "Average time to merge"; fall back to "Time to close"
const maybeMergeTime = parseMetricsTable(prContent, 'Average time to merge');
metrics.pr_avg_merge_time = maybeMergeTime !== 'N/A'
? maybeMergeTime
: parseMetricsTable(prContent, 'Time to close');
} else { } else {
console.log('⚠️ No pr_metrics.md found'); console.log('⚠️ No pr_metrics.md found');
} }