fix: resolve profiles list mobile layout overflow#869
Merged
simple-agent-manager[bot] merged 5 commits intomainfrom May 1, 2026
Merged
fix: resolve profiles list mobile layout overflow#869simple-agent-manager[bot] merged 5 commits intomainfrom
simple-agent-manager[bot] merged 5 commits intomainfrom
Conversation
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Profile cards overflowed on mobile (375px) due to shrink-0 action buttons pushing content off-screen. Restructured card layout: - Added overflow-hidden to card container - Moved delete confirmation to separate row below card content - Added min-w-0 to flex containers for proper text truncation - Added 44px min touch targets for edit/delete buttons Includes Playwright visual audit with 6 mobile test scenarios (normal data, long text, empty state, many items, error, delete confirmation) all asserting no horizontal overflow. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Error state test now waits for .text-danger selector instead of arbitrary timeout (reviewer feedback) - Check off completed task file items - File backlog task for pre-existing desktop Playwright test crash Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Addresses ui-ux-specialist review finding: all four action buttons (edit, delete, cancel, confirm) now have focus-visible outline rings for keyboard accessibility (WCAG 2.1 SC 2.4.7). Also adds min-w-[44px] to cancel button and fixes import spacing. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Summary
shrink-0action buttons in a horizontal flex layout with nooverflow-hiddenon the card container, plus inline delete confirmation buttons adding too much width.overflow-hiddento card wrapper, moved delete confirmation to a separate row below card content, addedmin-w-0for proper text truncation, added 44px min touch targets, andfocus-visibleoutline rings for keyboard accessibility.Validation
pnpm lint(0 errors, pre-existing warnings only)pnpm typecheckpnpm test(pre-existing UI package ButtonGroup test failure only — not caused by this PR)pnpm buildassertNoOverflowStaging Verification (REQUIRED for all code changes — merge-blocking)
sam/try-mock-profiles-page-01kqh7app.sammy.partyusing test credentialsN/A: no infra changesStaging Verification Evidence
scrollWidth === innerWidth === 375)UI Compliance Checklist (Required for UI changes)
.codex/tmp/playwright-screenshots/End-to-End Verification (Required for multi-component changes)
N/A: CSS-only fix within a single component, no cross-component data flow.
Data Flow Trace
N/A: layout-only change, no data flow affected.
Untested Gaps
Desktop Playwright tests skipped due to pre-existing error boundary crash (affects
triggers-ui-audit.spec.tsand other desktop viewport tests). Filed as backlog task:tasks/backlog/2026-05-01-fix-playwright-desktop-test-infrastructure.md.Post-Mortem (Required for bug fix PRs)
What broke
Profile cards overflowed off-screen on mobile (375px), making edit/delete buttons unreachable on phones.
Root cause
The
ProfileList.tsxcard layout usedflex items-start gap-3withshrink-0action buttons. On 375px mobile, the combined width of content + action buttons (edit icon + delete icon, or edit icon + Cancel + Confirm during delete flow) exceeded the viewport width. Nooverflow-hiddenon the card container allowed the overflow to propagate.Class of bug
Mobile layout overflow — fixed-width elements in flexible containers without overflow containment.
Why it wasn't caught
No Playwright visual audit existed for the profiles page. The existing mobile viewport rule (
.claude/rules/17-ui-visual-testing.md) was not applied when the component was originally created.Process fix included in this PR
Added
apps/web/tests/playwright/profiles-ui-audit.spec.tswith 6 mobile test scenarios andassertNoOverflowchecks — this ensures future changes to the profiles list are tested for mobile layout integrity.Post-mortem file
N/A: Minor UI layout fix — post-mortem documented in PR description above.
Specialist Review Evidence (Required for agent-authored PRs)
needs-human-reviewlabel added and merge deferred to human — all completedExceptions (If any)
tasks/backlog/2026-05-01-fix-playwright-desktop-test-infrastructure.mdis resolvedAgent Preflight (Required)
Classification
External References
N/A: CSS layout fix using existing Tailwind utilities, no external API or library changes.
Codebase Impact Analysis
apps/web/src/components/agent-profiles/ProfileList.tsx— card layout restructured for mobile overflow preventionapps/web/tests/playwright/profiles-ui-audit.spec.ts— new Playwright visual audit testDocumentation & Specs
N/A: no behavior or API changes, layout-only fix.
Constitution & Risk Check
Principle XI (No Hardcoded Values): No new hardcoded values introduced. Touch target sizes (44px) follow platform conventions.