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/sentry15 installsApache-2.0Synced Aug 25

Works with

Claude CodeCursorCodex CLIGitHub CopilotGemini CLI
---
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.
license: Apache-2.0
---

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.

More Design Systems skills

stitch-design-taste

leonxlnx/taste-skill

Semantic Design System Skill for Google Stitch. Generates agent-friendly DESIGN.md files that enforce premium, anti-generic UI standards — strict typography, calibrated color, asymmetric layouts, perpetual micro-motion, and hardware-accelerated performance.

265.6k

figma

heygen-com/hyperframes

Import Figma content into a HyperFrames composition — rendered assets, brand tokens, components, storyboard sections → reconstructed motion (frames read as states, not slides) (REST/CLI), connector-assisted motion when available, and shaders from a connector or native export. Use when the user pastes a figma.com link or asks to bring a Figma design, frame, logo, brand, or animation into a video/composition.

101.8k

image

coreyhaines31/marketingskills

When the user wants to create, generate, edit, or optimize images for marketing — blog heroes, social graphics, product mockups, profile banners, listing visuals, or brand assets. Also use when the user mentions 'AI image generation,' 'generate an image,' 'create a graphic,' 'product mockup,' 'hero image,' 'social media graphic,' 'banner image,' 'cover photo,' 'profile banner,' 'listing screenshot,' 'Flux,' 'Flux Kontext,' 'Midjourney,' 'DALL-E,' 'GPT Image,' 'ChatGPT Images,' 'Ideogram,' 'Gemini image,' 'Nano Banana,' 'Recraft,' 'Stable Diffusion,' 'Canva,' 'Figma,' 'image optimization,' 'compress images,' 'WebP,' or 'OG image.' Use this for general-purpose marketing image creation and optimization. For paid ad image creative and platform-specific ad specs, see ad-creative. For video production, see video.

62.9k

← All Design Systems skills

Check your AI visibility

One URL in, a 0–100 score and the exact fixes out.

RUN THE CHECK

Browse all the tools

15 tools across six categories
13 of them never send your data anywhere

Free · No signup · No trial clock

SEE THE DIRECTORY