From 8f4b718ffddb2c26dddb43497d42f6380f6df29a Mon Sep 17 00:00:00 2001 From: Camiel van Schoonhoven Date: Thu, 13 Aug 2026 17:58:23 -0700 Subject: [PATCH] chore: Enforce Minimal Code Comments --- .claude/skills/accessibility/SKILL.md | 29 ++--- .claude/skills/analytics-tracking/SKILL.md | 10 +- .claude/skills/project-conventions/SKILL.md | 3 +- .claude/skills/react-patterns/SKILL.md | 8 +- .claude/skills/tangle-domain/SKILL.md | 1 - .claude/skills/tanstack-query/SKILL.md | 6 +- .claude/skills/tanstack-router/SKILL.md | 1 - .claude/skills/vitest-testing/SKILL.md | 25 ++-- .cursorrules | 9 +- CLAUDE.md | 26 ++++ docs/generic-overlay-guide.md | 2 - docs/playwright-test-helpers.md | 112 ++++++++---------- docs/react-best-practices.md | 44 +++---- docs/remote-troubleshoot-action.md | 26 ++-- eslint-rules/no-type-member-comments.js | 43 +++++++ eslint.config.js | 10 ++ .../ComponentDetail/ComponentDetail.tsx | 28 ++--- .../CreatedByFilter/CreatedByFilter.tsx | 6 +- .../shared/Execution/PipelineIO.tsx | 8 +- .../GitHubLibrary/utils/githubApiClient.ts | 3 - .../FlowSidebar/components/SidebarSection.tsx | 4 - src/config/aiModels.ts | 4 +- .../useNaturalLanguageComponentSearch.ts | 8 +- src/models/componentSpec/validation/types.ts | 2 +- .../libraries/storage.ts | 10 +- .../Dashboard/DashboardComponentsV2View.tsx | 6 +- src/routes/v2/WINDOWS.md | 27 ++++- .../components/MultiSelectionDetails/utils.ts | 4 +- .../PinnedTaskContent/PinnedTaskContent.tsx | 1 - .../components/AiChat/AiChatStoreContext.tsx | 4 +- .../v2/shared/nodes/TaskNode/TaskNodeCard.tsx | 4 +- src/routes/v2/shared/nodes/types.ts | 40 +++---- src/routes/v2/shared/store/keyboardStore.ts | 14 +-- src/routes/v2/shared/windows/types.ts | 53 +-------- src/routes/v2/shared/windows/viewPresets.ts | 2 +- src/services/componentSearchIndex.ts | 54 +++------ .../naturalLanguageComponentSearchService.ts | 14 +-- src/types/aiProvider.ts | 6 +- src/types/composerSchema.ts | 14 +-- src/utils/componentSpec.ts | 107 ++--------------- 40 files changed, 324 insertions(+), 454 deletions(-) create mode 100644 CLAUDE.md create mode 100644 eslint-rules/no-type-member-comments.js diff --git a/.claude/skills/accessibility/SKILL.md b/.claude/skills/accessibility/SKILL.md index 6b30fa13a..6b4a9500c 100644 --- a/.claude/skills/accessibility/SKILL.md +++ b/.claude/skills/accessibility/SKILL.md @@ -12,12 +12,10 @@ This project builds on **shadcn/ui** primitives which provide strong built-in a1 All interactive elements without visible text must have an `aria-label`: ```typescript -// Icon buttons -// Folder toggles
``` @@ -45,11 +43,15 @@ Use the shadcn/ui `Label` component for proper form associations. - **Escape**: Close dialogs, cancel editing, deselect - **Tab**: Move focus between interactive elements +The `Input` component has built-in `onEnter` and `onEscape` props: + ```typescript -// The Input component has built-in onEnter and onEscape props +``` + +Everything else handles the keys itself: -// For non-Input elements, handle manually +```typescript onKeyDown={(e) => { if (e.key === "Enter" && !e.shiftKey) { e.preventDefault(); @@ -78,13 +80,11 @@ The dialog component already handles this — use `preventKeyboardPropagation` p Use `sr-only` class for visually hidden but screen-reader-accessible text: ```typescript -// Close buttons with only an icon Close -// Command palette title {title} {description} @@ -95,19 +95,10 @@ Use `sr-only` class for visually hidden but screen-reader-accessible text: Use proper semantic elements and ARIA roles: -```typescript -// Navigation -