Каждый разработчик, будь то новичок или гуру, хотя бы раз в жизни сталкивался с тем, что его код «самопрокшился», то есть перестал работать именно в тот момент, когда вы его никому не показывали․ Ниже собраны 12 проверенных «шепотков» — коротких сценариев действий и контактов, которые помогут быстро снять «проклятие» и вернуть приложение к жизни․
Перезапускающий шепоток «CTRL+F5»
Иногда достаточно просто сбросить кэш браузера или временные файлы IDE․ Громко прошепчите: «Кэш-чист, исчезни!» и нажмите CTRL+F5․
Шепоток «Переменная-оборотень»
Проверьте, не переопределена ли где-нибудь случайно переменная с тем же именем․ Прошепчите: «let there be no shadow» и дважды пройдитесь по поиску Find All․
Шепоток «Заколдованный порт»
Убедитесь, что ничто другое не занимает нужный порт․ В терминале:
lsof -i :3000
Если процесс найден, прошепчите PID и «закрой его»․
Шепоток «Потерянный env»
Проверьте переменные окружения․ Создайте файл ․env․example, проговорите: «dotenv, приди!» и сверьте каждый ключ․
Шепоток «Сломанный lock»
Удалите package-lock․json или yarn․lock, затем:
npm ci && npm start
Шепните: «lock, не держи меня»․
Шепоток «Кэшированный бандл»
В Webpack-сборке:
rm -rf dist && npm run build
Громко шепните: «cache busted»․
Шепоток «Дьявольский кэш CI»
Если CI падает, а локально всё работает:
- GitHub Actions — добавьте actions/cache@v4 c ключом v2-{{ checksum «package-lock․json» }}
- GitLab CI — используйте cache:key:files
Шепните: «clear runner cache» и перезапустите пайплайн․
Шепоток «Проверь консоль»
Откройте DevTools, включите «Pause on exceptions», проговорите: «uncaught, show thyself» и ждите всплывающий debugger․
Шепоток «Снежный коммит»
Откатитесь на предыдущий коммит:
git bisect start HEAD~10 HEAD git bisect run npm test
Шепните: «find the evil» и следуйте за bisect․
Шепоток «Убийца процессов»
Если процесс завис:
pkill -f node
или в Windows:
taskkill /F /IM node․exe
Шепните: «rest in peace»․
Шепоток «Докер-демон»
Если используете контейнеры:
docker system prune -f
Шепните: «purge dangling» и пересоберите образ․
Шепоток «Священный лог»
Добавьте единый логгер (например, winston или pino), настройте уровень debug и шепните: «log all the things», чтобы ничто не скрылось от вас․
Контакты для экстренной помощи
Если ни один шепоток не подействовал, используйте эти каналы:
- Telegram-чат «Фронтенд-спас»: @frontend_spas
- Slack #random в командном workspace: пишите @senior-dev-oncall
- E-mail техподдержки CI/CD: ci-help@yourcompany․com
- Discord сервер «Кодовые шепотки»: https://discord․gg/codespells
- Экстренный номер DevOps: +7 (999) -23-45-67 (WhatsApp, Signal)
Помните: самопрокшятие — это не вечно․ Главное — не паниковать, громко шептать и обращаться по списку выше․