Skip to content

feat: visual redesign of CI summary and PR comment reports#31

Merged
maximn merged 8 commits into
mainfrom
feat/visual-report-redesign
Apr 5, 2026
Merged

feat: visual redesign of CI summary and PR comment reports#31
maximn merged 8 commits into
mainfrom
feat/visual-report-redesign

Conversation

@maximn
Copy link
Copy Markdown
Contributor

@maximn maximn commented Apr 5, 2026

Summary

Redesigns the CI job summary and PR comment outputs from flat markdown tables to visually polished, scannable reports. Adds a status-first hero header, Unicode progress bar, compact metrics strip, consolidated failed tests table, and emoji section headers.

Changes

  • New src/output/format.ts — shared utilities: renderProgressBar, statusEmoji, renderMetricsStrip, plus moved escapeHtml, formatDuration, truncate
  • summary.ts — hero header with 🔴/✅ + pass rate; progress bar; single-line metrics strip replacing 7-row table; API warning moved above metrics; consolidated failed tests into one HTML table with bold test names; slowest tests in <details> collapsible; emoji prefixes on all section headers; removed duplicate pass rate line from no-changes delta
  • pr-comment.ts — header now includes pass rate; progress bar added; stats line uses zero-suppression (omits ❌ 0 failed); section divider only shown when detail content exists; main header shortened to ## 🔬 TestGlance
  • format.test.ts (new) — 28 unit tests for all shared utilities
  • summary.test.ts, pr-comment.test.ts, post-pr-comment.test.ts — updated assertions for new output format

Test plan

  • pnpm test — 582 tests pass, 0 failures
  • pnpm build — dist builds cleanly
  • Run action on a test repo and visually inspect the Job Summary tab
  • Run action on a PR and inspect the PR comment
  • Verify progress bar at 0%, ~50%, 97%, and 100% pass rates
  • Verify API failure warning appears before metrics (not at bottom)
  • Verify failed tests renders as single consolidated table

maximn added 2 commits April 5, 2026 22:38
Replace flat metric tables with status-first hero header, Unicode
progress bar, and single-line metrics strip. Consolidate per-test
failure tables into one HTML table with bold test names. Wrap slowest
tests in a collapsible <details> block. Add emoji section headers
throughout. Move API failure warning above metrics. Extract shared
formatting utilities (renderProgressBar, statusEmoji, renderMetricsStrip)
to src/output/format.ts. PR comment omits zero failed count on passing
runs and only shows the stats/details divider when content is present.
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Apr 5, 2026

maximn added 6 commits April 5, 2026 23:26
Each failure now renders as its own table + stack trace block
instead of all failures in one table followed by all traces.
Replace per-failure HTML tables with a compact block layout:
test name in inline code + suite + blockquote error message.
Stack trace stays directly below its failure.
@maximn maximn merged commit ffa3d3f into main Apr 5, 2026
6 checks passed
@maximn maximn deleted the feat/visual-report-redesign branch April 5, 2026 22:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant