github-actions[bot]
published Aug 29, 2026, 7:37 PM · updated Aug 29, 2026, 7:45 PM
Summary
- Extracted reusable built-in titled-region composition into
pages/dashboard/src/components/view-chrome.js. - Replaced repeated heading-plus-content construction in
pages/dashboard/src/presenter.jswithout changing rendered behavior. - Updated the component inventory and run log in
pages/dashboard/PLAN.md.
Duplication evidence
Repeated h('h3', ...) plus a single summary/list/table content block remained in pages/dashboard/src/presenter.js at these call sites before the refactor:
renderBuiltInPage()provenance heading +renderProvenanceList()renderWorkflowsPage()workflow inventory heading + table regionrenderUsagePage()usage totals heading + summary list; usage observations heading + table regionrenderEnginesModelsPage()inventory heading + table regionrenderOperationalValuePage()timeline heading + table regionrenderOrganizationsPage()inventory heading + table regionrenderRepositoriesPage()inventory heading + table regionrenderExperimentsPage()section heading + note + table regionrenderGradersPage()definitions heading + table region; observations heading + table region
Extraction
- Added
renderTitledRegion(pageId, title, content)to wrap a single content node with the shared focusable labeledpage-sectionmarkup. - Added
renderProvenanceSection(pageId, items)to reuse the same titled-region wrapper for built-in provenance.
Call sites collapsed
pages/dashboard/src/presenter.js- built-in provenance section
- workflows inventory section
- usage totals section
- usage observations section
- engines/models inventory section
- operational value timeline section
- organizations inventory section
- repositories inventory/rankings section
- experiments definitions/associations section
- graders definitions section
- graders observations section
Tests added/updated
pages/dashboard/test/unit/view-chrome.test.js- added titled-region composition coverage
- added provenance-section coverage including empty fallback
Behavior preservation evidence
- Full test suite unchanged and passing.
- Compared the affected presenter output structurally via the refactor diff captured at
/tmp/gh-aw/agent/presenter-refactor.diff; changes are limited to replacing repeated heading-plus-content assembly withrenderTitledRegion(...)/renderProvenanceSection(...)while preserving DOM text, headings, class names, and accessible labeling.
Quality gates
Ran from pages/dashboard/:
npm install✅npm run typecheck✅npm run lint✅npm test✅npm run test:e2e✅
Blockers
- None.
Next candidates
- Extract repeated built-in summary-section composition for count lists.
- Extract repeated custom-view context-list rendering.
- Extract the next shared pure helpers around subject/provenance/count formatting in
pages/dashboard/src/presenter.js.
Generated by ♻️ Daily Dashboard Component Refactorer · pi · gpt54 · 30.7 AIC · ⌖ 6.38 AIC · ⊞ 5.4K · ◷