fix(dashboard): design-sweep fixes for the /dashboard visual audit (#211) #5461
ccantynzAI Reviewcommented 24d ago
AI Triage
(no summary)
Priority: medium Risk area: mixed
Suggested labels: (no label suggestions) Suggested reviewers: (no reviewer suggestions)
Suggestions only — nothing has been applied. The PR author stays in control.
gluecron[bot]🤖 botAI Reviewcommented 24d ago
AI review unavailable
The platform's AI balance is exhausted, so AI generation is temporarily unavailable. Nothing was lost. You can queue this as a repair for the internal agent from the repository's Health page, or try again once the balance is restored. The PR is otherwise unchanged.
Cross-repo impact
See what breaks downstream if this PR merges.
⮌ Merged
This pull request was merged into main.
c comment · e edit title · m merge · a approve · r request changes · ? shortcuts
Part of the six-agent design sweep for the visual-audit ledger, #211. Slice: /dashboard (
src/routes/dashboard.tsx).Defects fixed
1. Unbounded repo-card descriptions Card descriptions now use
.dash-card-desc: a 2-line clamp (display: -webkit-box; -webkit-line-clamp: 2with amax-height: 3emfallback for engines without-webkit-box), full text preserved on thetitleattribute. The text column also getsflex: 1; min-width: 0so it shrinks correctly. Multi-line marketing paragraphs (thenzeecard) no longer blow up row heights.2. Live Activity rendered as an empty bordered box
src/views/live-feed.tsx(used only by the dashboard) now SSRs an honest empty state — "No live activity right now — events appear here as they happen." — per the honest-degradation rule: never advertise liveness the surface can't prove. The first real SSE event removes the placeholder client-side before appending.3. Duplicated Recent Activity rows Root cause in
src/lib/recent-activity.ts: a merged PR contributes both a derivedpr_openandpr_mergerow, and pushes land as individualactivity_feedrows.owner/repo#number(the merge implies the open).pushrows for the same repo within a 10-minute window collapse into one row, rendered asPushed code in <repo> ×3.collapseRecentActivity()with 9 new unit tests (src/__tests__/recent-activity.test.ts).4.
journey-*probe repo rendered as a full repo card The dashboard repo query now excludes^journey-[0-9]{14}-[a-z0-9]{4}$— the same defensive filter/explorealready uses for orphanedscripts/agent-journey.tsprobe repos. Stats (repo count, avg health) follow the filtered set, so the probe stops inflating them too.Verification
bunx tsc --noEmit -p .— clean.bun test src/__tests__ --test-name-pattern "dashboard|recent-activity"— 13 pass / 0 fail.bun test src/__tests__/recent-activity.test.ts— 9 pass / 0 fail (new suite).🤖 Generated with Claude Code