github-actions[bot]
published Aug 29, 2026, 8:50 PM · updated Aug 29, 2026, 8:56 PM
Summary
- extract a reusable
renderSummaryRegion()helper intopages/dashboard/src/components/view-chrome.js - replace repeated summary-section construction in
pages/dashboard/src/presenter.js - add focused unit coverage and update
pages/dashboard/PLAN.md
Duplication evidence
pages/dashboard/src/presenter.js:443-445repeatedrenderPageSection(pageId, title, [renderSummaryList(className, counts)])for runs status, conclusion, and outcome countspages/dashboard/src/presenter.js:590-591repeated the same summary-section shape for findings severity and status countspages/dashboard/src/presenter.js:1129-1130repeated the same summary-section shape for overview rollout-mode and workflow-active summaries
Call sites collapsed
renderRunsPage()count sections now userenderSummaryRegion()for:Run Status CountsRun Conclusion CountsOutcome Counts
renderFindingsPage()count sections now userenderSummaryRegion()for:Finding Severity CountsFinding Status Counts
renderOverviewPage()summary sections now userenderSummaryRegion()for:Rollout Mode FilteringWorkflow Active State Inventory
Tests added
pages/dashboard/test/unit/view-chrome.test.js- populated summary region renders the existing heading, list class, and count text
- empty summary region preserves the
No data available.fallback
Behavior preservation proof
- Full existing test suite stayed green unchanged.
- Rendered the existing overview presenter fixture to
/tmp/gh-aw/agent/behavior-check.htmland confirmed the affected section headings and summary-list class names remain unchanged, including:Rollout Mode FilteringWorkflow Active State Inventoryoverview-rollout-mode-countsoverview-workflow-active-counts
Quality gates
cd pages/dashboard && npm install✅cd pages/dashboard && npm run typecheck✅cd pages/dashboard && npm run lint✅cd pages/dashboard && npm test✅cd pages/dashboard && npx playwright test --config=playwright.config.mjs✅
Blockers
- None
Next candidates
- extract the next shared pure helpers around subject/provenance/count formatting in
pages/dashboard/src/presenter.js - extract repeated built-in definitions/observations dual-region composition in
pages/dashboard/src/presenter.js - extract repeated summary-plus-trend section composition in
pages/dashboard/src/presenter.js
Generated by ♻️ Daily Dashboard Component Refactorer · pi · gpt54 · 43.2 AIC · ⌖ 7.28 AIC · ⊞ 5.4K · ◷