Skip to main content

lint-fix

Fix violations of an eslintPluginScraps rule across the codebase. Use when asked to "fix lint violations", "apply a lint rule", "fix scraps rule errors", "roll out a lint rule", "enforce a rule codebase-wide", or "fix design system lint". Covers manual fixes, autofix, batching, and codemod strategies for large-scale rollouts.

소스 정보

저장소
getsentry/sentry
최근 소스 활동
2026년 9월 3일 20:35
감지된 SKILL.md 언어
영어
스타
44,880
포크
4,869

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
3 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
lint-fix
description
Fix violations of an eslintPluginScraps rule across the codebase. Use when asked to "fix lint violations", "apply a lint rule", "fix scraps rule errors", "roll out a lint rule", "enforce a rule codebase-wide", or "fix design system lint". Covers manual fixes, autofix, batching, and codemod strategies for large-scale rollouts.
Fix violations of rule `$0` on files matching `$1`. ## Arguments - `$0` — Rule name (e.g., `use-semantic-token`, `no-core-import`) - `$1` — File or glob pattern (e.g., `static/app/components/`, `static/app/views/alerts/`) ## Step 1: Understand the Rule Before fixing violations, know what the fix looks like. Load [references/fix-patterns.md](references/fix-patterns.md) for per-rule fix details: | Rule | Has autofix? | Fix reference | | ---------------------------- | ------------ | ------------------------------------------------------------------------------------------------- | | `no-core-import` | Yes | [fix-patterns.md](references/fix-patterns.md) §no-core-import | | `no-token-import` | No | [fix-patterns.md](references/fix-patterns.md) §no-token-import | | `use-semantic-token` | No | [fix-patterns.md](references/fix-patterns.md) + [token-taxonomy.md](references/token-taxonomy.md) | | `restrict-jsx-slot-children` | No | [fix-patterns.md](references/fix-patterns.md) §restrict-jsx-slot-children | For `use-semantic-token` violations, you MUST load [references/token-taxonomy.md](references/token-taxonomy.md) to know which token category to use for each CSS property. ## Step 2: Assess Scale Count violations before choosing a strategy: ```bash pnpm exec eslint --rule '@sentry/scraps/$0: error' "$1" 2>&1 | tail -5 ``` The last line shows the count (e.g., "42 problems (42 errors, 0 warnings)"). **Tip**: Running eslint on all of `static/app/` can take 2+ minutes. Narrow scope to a subdirectory first. ## Step 3: Choose Strategy ### Auto-fixable rule (any scale) ```bash pnpm exec eslint --fix --rule '@sentry/scraps/$0: error' "$1" ``` Always review the diff after `--fix` before committing. If the rule is partially auto-fixable, run `--fix` first, then manually fix remaining violations. ### Under 100 violations — manual agent fix 1. Run eslint on target path 2. Fix violations 5-10 files at a time 3. Re-run after each batch to verify 4. Repeat until clean ### 100-500 violations — batched fix 1. Split target into subdirectories (e.g., `static/app/views/`, `static/app/components/`) 2. Fix one subdirectory at a time 3. Commit after each batch for reviewable PRs 4. Re-run count after each batch to track progress ### 500+ violations — codemod or staged rollout - **Mechanical transforms**: write a temporary jscodeshift codemod or a targeted script using `@typescript-eslint/typescript-estree` - **Import-path rules**: `--fix` usually handles these at any scale - **Complex transforms**: enable the rule as `warn` first, fix in batches across multiple PRs ## Fix Workflow (tight loop) 1. Run: `pnpm exec eslint --rule '@sentry/scraps/$0: error' "$1"` 2. Fix violations in reported files 3. Re-run on changed files to verify 4. Expand scope, repeat ## Coordinating Large Changes - Split PRs to **~50 changed files** based on ownership rules in @.github/CODEOWNERS. - PR title convention: `fix(lint): enforce @sentry/scraps/$0 for <codeowner>` - If the rule is new and not yet in `eslint.config.ts`, **fix all violations first**, then enable the rule in a follow-up PR - Run pre-commit on changed files before committing: ```bash .venv/bin/prek run -q --files <file1> [file2 ...] ``` ## Verification After all fixes: ```bash pnpm exec eslint --rule '@sentry/scraps/$0: error' static/app/ 2>&1 | tail -5 ``` Should report 0 problems.
GitHub에서 보기