intermediate
lint-staged
Запускайте быстрые проверки только на staged-файлах, не ослабляя полные CI gates проекта.
lint-staged запускает команды только на staged файлах Git — удобно для быстрого Prettier/ESLint перед commit без сканирования всего монорепо.
{
"lint-staged": {
"*.{ts,tsx}": ["eslint --fix", "prettier --write"]
}
}
Часть проверок требует контекста всего проекта: project references TypeScript, import boundaries, правила на весь граф. Им место в CI или в `pnpm lint`, не только на staged.
На интервью: лимиты staged scope, partial staging с write-back форматирования, тюнинг производительности и почему lint-staged — удобство, не доказательство.
Типовые ошибки: staged ESLint вместо type errors; несогласованные fix при частичном stage; регрессии монорепо не видны.
Компромисс — локальная скорость против неполных гарантий корректности.
Чеклист:
- Быстрые auto-fixable проверки.
- Project-wide typecheck в CI.
- Осторожно с partial hunks.
- Документируйте, что hooks не покрывают.