lint-fix

oleh sentry

Perbaiki pelanggaran aturan eslintPluginScraps di seluruh basis kode. Gunakan saat diminta untuk "memperbaiki pelanggaran lint", "menerapkan aturan lint", "memperbaiki kesalahan aturan 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.

Lebih banyak skill dari sentry

generate-frontend-forms
sentry
Panduan untuk membuat formulir menggunakan sistem formulir baru Sentry. Gunakan saat mengimplementasikan formulir, kolom formulir, validasi, atau fungsionalitas penyimpanan otomatis.
official
sentry-snapshots-cocoa
sentry
Pengaturan lengkap Sentry Snapshots untuk proyek Apple/Cocoa. Gunakan saat diminta untuk "setup SnapshotPreviews", "setup Apple snapshot testing", "upload Apple snapshots to…
official
architecture-review
sentry
Tinjauan kesehatan basis kode setara staf. Menemukan modul monolitik, kegagalan diam, celah keamanan tipe, lubang cakupan pengujian, dan masalah keramahan LLM.
official
linear-type-labeler
sentry
Mengklasifikasikan isu Linear dan menerapkan label Tipe dari taksonomi label ruang kerja Sentry berdasarkan konten judul dan deskripsi setiap isu.
official
sentry-flutter-sdk
sentry
Pengaturan SDK Sentry lengkap untuk Flutter dan Dart. Gunakan saat diminta untuk "menambahkan Sentry ke Flutter", "menginstal sentry_flutter", "menyiapkan Sentry di Dart", atau mengonfigurasi error…
official
sentry-svelte-sdk
sentry
Pengaturan SDK Sentry lengkap untuk Svelte dan SvelteKit. Gunakan saat diminta untuk "menambahkan Sentry ke Svelte", "menambahkan Sentry ke SvelteKit", "menginstal @sentry/sveltekit", atau mengonfigurasi…
official
vercel-react-best-practices
sentry
Panduan optimasi performa React dan Next.js dari Vercel Engineering. Skill ini harus digunakan saat menulis, meninjau, atau merefaktor kode React/Next.js…
official
sentry-tanstack-start-sdk
sentry
Pengaturan SDK Sentry lengkap untuk TanStack Start React. Gunakan saat diminta untuk "menambahkan Sentry ke TanStack Start", "menginstal @sentry/tanstackstart-react", atau mengonfigurasi error…
official