Problem
Organization, billing, BYOK, code-indexing, analytics, and admin tables inconsistently clip, scroll without affordance, omit captions, or provide pointer-only row actions.
Remediation action
Adopt one accessible responsive-table pattern across audited data views.
Representative scope
apps/web/src/components/organizations/audit-logs/AuditLogsTable.tsx:149
apps/web/src/app/(app)/credits/page.tsx:53
apps/web/src/components/organizations/byok/BYOKKeysManager.tsx:486
apps/web/src/components/code-indexing/CodeIndexingView.tsx:744
apps/web/src/components/code-indexing/UserCodeIndexingView.tsx:469
apps/web/src/components/code-reviews/analytics/AnalyticsTables.tsx:209
apps/web/src/app/admin/components/OrganizationTableBody.tsx:338
Acceptance criteria
- Each table has semantic headers and a caption or accessible region label.
- Wide tables use a keyboard-focusable horizontal overflow region with visible focus and scroll affordance, or a complete stacked mobile representation.
- Row actions remain visible and keyboard operable; rows are not pointer-only controls.
- Default rows meet 48px density and numeric columns use tabular formatting.
- No table causes page-level horizontal overflow at 375px.
Problem
Organization, billing, BYOK, code-indexing, analytics, and admin tables inconsistently clip, scroll without affordance, omit captions, or provide pointer-only row actions.
Remediation action
Adopt one accessible responsive-table pattern across audited data views.
Representative scope
apps/web/src/components/organizations/audit-logs/AuditLogsTable.tsx:149apps/web/src/app/(app)/credits/page.tsx:53apps/web/src/components/organizations/byok/BYOKKeysManager.tsx:486apps/web/src/components/code-indexing/CodeIndexingView.tsx:744apps/web/src/components/code-indexing/UserCodeIndexingView.tsx:469apps/web/src/components/code-reviews/analytics/AnalyticsTables.tsx:209apps/web/src/app/admin/components/OrganizationTableBody.tsx:338Acceptance criteria