fix(audit-wave-9): standardize on Sheet for previews; doctrine in CLAUDE.md
Swap the one outlier (client-interests-tab.tsx) from Vaul Drawer to Sheet side=right so every detail-preview surface uses the same primitive. Document the doctrine: Sheet for side panels on both desktop and mobile; Vaul Drawer reserved for mobile-only bottom-sheet UX (currently just MoreSheet). Closes ui/ux M11. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -9,15 +9,13 @@ const eslintConfig = [
|
||||
'@typescript-eslint/no-explicit-any': 'error',
|
||||
'@typescript-eslint/no-unused-vars': ['error', { argsIgnorePattern: '^_' }],
|
||||
// React Compiler safety rules shipped with eslint-config-next@16 /
|
||||
// react-hooks@7. Triage status (2026-05-12 sweep):
|
||||
// purity, set-state-in-render, immutability, refs — promoted
|
||||
// back to error after the existing hits were cleaned up; new
|
||||
// regressions block CI.
|
||||
// set-state-in-effect — left as warn. Many hits are the
|
||||
// useEffect→fetch→setState data-loading pattern that the
|
||||
// Compiler conservatively flags but can't refactor without
|
||||
// moving each call site to TanStack Query. ~50 admin-form
|
||||
// land sites tracked in docs/BACKLOG.md §G.
|
||||
// react-hooks@7. Triage status (2026-05-13 sweep):
|
||||
// purity, set-state-in-render, immutability, refs,
|
||||
// set-state-in-effect — promoted to error after the cleanup
|
||||
// sweep (Wave 3 of the 2026-05-12 audit). All hits migrated to
|
||||
// either useQuery, render-phase derivation, key-based remount,
|
||||
// or a justified eslint-disable for canonical setState-on-
|
||||
// subscription patterns. New regressions block CI.
|
||||
// incompatible-library — informational only ("Compiler
|
||||
// skipped this file because of a non-Compiler-safe import").
|
||||
// No action needed; silenced to keep `pnpm lint` output
|
||||
@@ -26,7 +24,7 @@ const eslintConfig = [
|
||||
'react-hooks/set-state-in-render': 'error',
|
||||
'react-hooks/immutability': 'error',
|
||||
'react-hooks/refs': 'error',
|
||||
'react-hooks/set-state-in-effect': 'warn',
|
||||
'react-hooks/set-state-in-effect': 'error',
|
||||
'react-hooks/incompatible-library': 'off',
|
||||
},
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user