refactor: dashboard design critique fixes #122

Merged
chihlasm merged 13 commits from refactor/dashboard-design-critique into main 2026-03-30 04:39:37 +00:00
chihlasm commented 2026-03-29 21:06:51 +00:00 (Migrated from github.com)

Summary

Design Critique — Dashboard, Session History, Landing, Assistant, Scripts

  • Dashboard — eliminated section redundancy; PerformanceCards, KnowledgeBaseCards, and TeamSummary now visually differentiated; reduced noise
  • Session History — redesigned as tabbed view (AI Sessions / Flow Sessions) with Load More pagination; domain filter chips; URL params route to correct tab automatically
  • Landing page — bold redesign replacing AI-template layout; live chat animation, scroll-driven reveals, FAQ section; self-contained --lp-* palette; electric blue accent
  • Escalation Queue — improved urgency signaling with time-based styling
  • Assistant page — TaskLane UX improvements (confirmed-delete, restorable skipped tasks, progress counter); ChatSidebar delete confirmation fixed
  • Script Library/Builder — design critique fixes; suggestion chips respect disabled state
  • Create Flow dropdown — simplified to Troubleshooting + Procedural only per pilot scope
  • Tag badges — fixed unreadable text from `bg-accent` dark-on-dark; now use elevated bg + border

Bug fixes from adversarial review:

  • `loadMoreAiSessions` race condition fixed with generation counter
  • ChatSidebar wrapper no longer fires `onSelect` while in delete-confirm state
  • ScriptBuilderInput suggestion chips now correctly disabled during generation
  • `--lp-btn` hardcoded to `#60a5fa` (lesson 104 compliance — no `var(--color-*)` in landing.css)

Test Coverage

Design/visual refactor — no new business logic code paths. TypeScript compiles clean (`npx tsc -b`).

Pre-Landing Review

No issues found. Passes Pass 1 (SQL/Data Safety, LLM Trust Boundary) and Pass 2 (View/Frontend, Performance/Bundle).

Design Review

No issues found (lite check). outline: none on email input has proper :focus replacement. !important overrides are contextually appropriate (dot animation class override with comment).

Adversarial Review

Claude adversarial subagent — large diff (4134 lines), all findings triaged:

Finding Action
`loadMoreAiSessions` race condition Fixed
ChatSidebar click-through while confirming Fixed
ScriptBuilderInput suggestion chips ignore disabled Fixed
`--lp-btn` uses `var(--color-accent)` (lesson 104 violation) Fixed
Flow sessions not preloaded — URL params now auto-switch to flows tab Fixed
Backdrop-filter on nav (design system) Intentional — landing page is treated separately from app shell
Maintenance flow removal Intentional — hidden from UI for pilot per CLAUDE.md

Plan Completion

No plan file detected.

Verification Results

No dev server available at time of ship — run /qa separately after deploy.

Test plan

  • TypeScript compiles clean (npx tsc -b, Node 20)
  • No new dependencies added
  • All adversarial findings triaged and fixed
  • Visual QA on staging (run /qa after deploy)

🤖 Generated with Claude Code

## Summary **Design Critique — Dashboard, Session History, Landing, Assistant, Scripts** - **Dashboard** — eliminated section redundancy; PerformanceCards, KnowledgeBaseCards, and TeamSummary now visually differentiated; reduced noise - **Session History** — redesigned as tabbed view (AI Sessions / Flow Sessions) with Load More pagination; domain filter chips; URL params route to correct tab automatically - **Landing page** — bold redesign replacing AI-template layout; live chat animation, scroll-driven reveals, FAQ section; self-contained `--lp-*` palette; electric blue accent - **Escalation Queue** — improved urgency signaling with time-based styling - **Assistant page** — TaskLane UX improvements (confirmed-delete, restorable skipped tasks, progress counter); ChatSidebar delete confirmation fixed - **Script Library/Builder** — design critique fixes; suggestion chips respect disabled state - **Create Flow dropdown** — simplified to Troubleshooting + Procedural only per pilot scope - **Tag badges** — fixed unreadable text from \`bg-accent\` dark-on-dark; now use elevated bg + border **Bug fixes from adversarial review:** - \`loadMoreAiSessions\` race condition fixed with generation counter - ChatSidebar wrapper no longer fires \`onSelect\` while in delete-confirm state - ScriptBuilderInput suggestion chips now correctly disabled during generation - \`--lp-btn\` hardcoded to \`#60a5fa\` (lesson 104 compliance — no \`var(--color-*)\` in landing.css) ## Test Coverage Design/visual refactor — no new business logic code paths. TypeScript compiles clean (\`npx tsc -b\`). ## Pre-Landing Review No issues found. Passes Pass 1 (SQL/Data Safety, LLM Trust Boundary) and Pass 2 (View/Frontend, Performance/Bundle). ## Design Review No issues found (lite check). `outline: none` on email input has proper `:focus` replacement. `!important` overrides are contextually appropriate (dot animation class override with comment). ## Adversarial Review Claude adversarial subagent — large diff (4134 lines), all findings triaged: | Finding | Action | |---------|--------| | \`loadMoreAiSessions\` race condition | **Fixed** | | ChatSidebar click-through while confirming | **Fixed** | | ScriptBuilderInput suggestion chips ignore disabled | **Fixed** | | \`--lp-btn\` uses \`var(--color-accent)\` (lesson 104 violation) | **Fixed** | | Flow sessions not preloaded — URL params now auto-switch to flows tab | **Fixed** | | Backdrop-filter on nav (design system) | Intentional — landing page is treated separately from app shell | | Maintenance flow removal | Intentional — hidden from UI for pilot per CLAUDE.md | ## Plan Completion No plan file detected. ## Verification Results No dev server available at time of ship — run /qa separately after deploy. ## Test plan - [x] TypeScript compiles clean (npx tsc -b, Node 20) - [x] No new dependencies added - [x] All adversarial findings triaged and fixed - [ ] Visual QA on staging (run /qa after deploy) 🤖 Generated with [Claude Code](https://claude.com/claude-code)
railway-app[bot] commented 2026-03-29 21:07:09 +00:00 (Migrated from github.com)

🚅 Deployed to the resolutionflow-pr-122 environment in selfless-grace

Service Status Web Updated (UTC)
patherly 🕗 Deploying (View Logs) Web Mar 30, 2026 at 4:39 am
hopeful-liberation 🕒 Building (View Logs) Web Mar 30, 2026 at 4:39 am
<!-- railway-bot-comment-version=2 --> <!-- railway-project-id="22b9b58c-271b-42e5-a10e-6fdec8d00134" railway-project-name="selfless-grace" --> 🚅 Deployed to the [resolutionflow-pr-122](https://railway.com/project/22b9b58c-271b-42e5-a10e-6fdec8d00134?environmentId=c6a730bd-2982-4250-810e-d0ad4e090516) environment in **[selfless-grace](https://railway.com/project/22b9b58c-271b-42e5-a10e-6fdec8d00134)** | **Service** | **Status** | **Web** | **Updated** (UTC) | | :--- | :--- | :--- | :--- | | patherly | 🕗 Deploying ([View Logs](https://railway.com/project/22b9b58c-271b-42e5-a10e-6fdec8d00134/service/95f556ff-5264-4116-a0c2-618a2fc53ba4?id=6c1984ff-eef2-43d3-be0f-6add7709d7db&environmentId=c6a730bd-2982-4250-810e-d0ad4e090516)) | [Web](https://patherly-resolutionflow-pr-122.up.railway.app) | Mar 30, 2026 at 4:39 am | | hopeful-liberation | 🕒 Building ([View Logs](https://railway.com/project/22b9b58c-271b-42e5-a10e-6fdec8d00134/service/e1db2ee3-d241-4f45-abe4-c9c5fdf483d5?id=b9babaaf-020a-4064-a2ce-a4a01398cf01&environmentId=c6a730bd-2982-4250-810e-d0ad4e090516)) | [Web](https://hopeful-liberation-resolutionflow-pr-122.up.railway.app) | Mar 30, 2026 at 4:39 am |
Sign in to join this conversation.