lint-fix

par sentry

Corriger les violations d'une règle eslintPluginScraps dans l'ensemble de la base de code. Utiliser lorsqu'on demande de "corriger les violations de lint", "appliquer une règle de lint", "corriger les erreurs de règle scraps", "roll…

npx skills add https://github.com/getsentry/sentry --skill lint-fix

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 for per-rule fix details:

RuleHas autofix?Fix reference
no-core-importYesfix-patterns.md §no-core-import
no-token-importNofix-patterns.md §no-token-import
use-semantic-tokenNofix-patterns.md + token-taxonomy.md
restrict-jsx-slot-childrenNofix-patterns.md §restrict-jsx-slot-children

For use-semantic-token violations, you MUST load 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:

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)

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:
    .venv/bin/prek run -q --files <file1> [file2 ...]
    

Verification

After all fixes:

pnpm exec eslint --rule '@sentry/scraps/$0: error' static/app/ 2>&1 | tail -5

Should report 0 problems.

Plus de skills de sentry

architecture-review
sentry
Revue de la santé du codebase au niveau de l'équipe. Détecte les modules monolithiques, les échecs silencieux, les lacunes de sécurité de type, les trous de couverture de test et les problèmes de convivialité pour les LLM.
pi-agent-integration
sentry
Integrate `@mariozechner/pi-agent-core` as the agent abstraction inside another library or runtime. Use when implementing or refactoring Pi Agent wrappers,…
sentry-debug-issue
sentry
Déboguer et corriger un problème Sentry — le trouver (par lien, ID ou recherche), extraire le contexte complet (trace de pile, breadcrumbs, trace, journaux), éventuellement exécuter l’analyse de cause racine Seer /…
sentry-svelte-sdk
sentry
Configuration complète du SDK Sentry pour Svelte et SvelteKit. Utiliser lorsqu'on demande "ajouter Sentry à Svelte", "ajouter Sentry à SvelteKit", "installer @sentry/sveltekit", ou configurer…
sentry-svelte-sdk
sentry
Configuration complète du SDK Sentry pour Svelte et SvelteKit. Utiliser lorsqu'il est demandé d'« ajouter Sentry à Svelte », d'« ajouter Sentry à SvelteKit », d'« installer @sentry/sveltekit », ou de configurer…
skill-scanner
sentry
Analyser les compétences de l'agent pour détecter des problèmes de sécurité. Utiliser lorsqu'on demande de "scanner une compétence",
prompt-optimizer
sentry
Crée, optimise et affine de manière itérative les prompts d'agent, les prompts système, les prompts développeur et les modèles de prompts réutilisables. À utiliser lorsqu'on vous demande d'améliorer un…
commit
sentry
commit — une compétence installable pour les agents IA, publiée par getsentry/sentry-docs.