Главная / ✅ Чек-листы

Чек-листы

Готовые чек-листы для всех ключевых операций: новая фича, code review, деплой в прод, настройка нового проекта, безопасность. Используй как шаблон в задачах Claude.

💡
Как использовать: Скопируй нужный чек-лист в prompt Claude Code. Claude будет выполнять пункты последовательно и отмечать выполненное. Для длинных задач — вставляй в CLAUDE.md проекта.

🚀 Настройка нового проекта

⚙️ Claude Code для нового проекта
  • Создать CLAUDE.md в корне проектаСтэк, модель, workflow, стандарты, критические правила
  • Создать .mcp.json с нужными серверамиSerena, Context7, + специфичные для стэка
  • Создать claude_readonly роль в PostgreSQLGRANT SELECT ON ALL TABLES...
  • Скопировать hooks из example/.claude/helpers/dangerous-guard, auto-format, secret-scanner
  • Прописать hooks в settings.jsonPreToolUse, PostToolUse, Stop
  • Добавить examples/ директориюЭталоны кода для Claude
  • Проверить MCP_TOOL_SEARCH=1 в settings.json envКритично для экономии токенов
  • Проверить пароли в .gitignore.mcp.json содержит DATABASE_URI с паролем
🔴 Новый Laravel проект
  • composer require tightenco/larapint+ создать pint.json
  • php artisan vendor:publish laravel-boostУстановить boost:mcp команду
  • Добавить laravel-boost в .mcp.jsondocker exec backend php artisan boost:mcp
  • Создать FormRequest базовый классЗапрет $request->all()
  • Настроить Telescope для dev средыLaravel Telescope для отладки
  • Pest вместо PHPUnitcomposer require pestphp/pest --dev
  • Настроить TrustProxiesДля работы за Caddy reverse proxy

✨ Новая фича

💡 Pre-coding (планирование)
  • /brainstorm — обсудить задачуОсобенно если > 5 файлов будет изменено
  • Сохранить spec в docs/superpowers/specs/YYYY-MM-DD-feature-design.md
  • /write-plan — создать план реализацииСохранить в docs/superpowers/plans/
  • git worktree add для изоляцииE:\Clients\wt\feature-name feat/feature-name
  • Проверить миграции в планеНужен ли pg_dump перед запуском?
💻 During coding
  • Написать тест первым (TDD RED)Запустить pest → убедиться что тест красный
  • Реализовать минимум (TDD GREEN)Только то что нужно для теста
  • Рефакторинг (TDD REFACTOR)Тест должен оставаться зелёным
  • Запустить полный suite перед PR./vendor/bin/pest --parallel
  • Проверить авто-форматированиеPint/Ruff/ESLint должны не давать ошибок
🔍 Pre-PR (Code Review)
  • git diff main — проверить все измененияНет ли случайных файлов?
  • Нет $request->all() в кодеТолько $request->validated()
  • Нет any в TypeScriptИли явное обоснование в комментарии
  • Все сервисы через DIfinal class + readonly в конструкторе
  • DB::transaction() для множественных записейRollback при ошибке
  • /request-code-review через ClaudeФинальная проверка кода

🚀 Деплой в production

⚠️ Перед деплоем
  • pg_dump — бэкап базы данныхВыполнить ВРУЧНУЮ, не через Claude
  • proxy backup — бэкап Caddy + сертификатыproxy.cmd backup
  • Все тесты зелёныеCI/CD pipeline прошёл
  • Проверить .env.productionНовые переменные добавлены?
  • Миграции готовыalembic upgrade head / php artisan migrate
  • Notify teamЕсли деплой затрагивает shared infra
После деплоя
  • Проверить health checkmcp__docker__docker_container_health_check
  • proxy list — TLS сертификат активенproxy.cmd list
  • Проверить логиmcp__docker__docker_container_logs
  • Smoke test — 2-3 ключевых эндпоинтаВручную или через Playwright
  • Telescope — нет новых ошибокLaravel Telescope errors tab
  • RAM/CPU нормаmcp__docker__docker_container_stats

🔒 Безопасность

🔑 Аудит безопасности кода
  • Нет $request->all()Mass assignment уязвимость
  • SQL — только параметризованные запросыDB::select('...', [$param]) не конкатенация
  • Нет echo/print $_GET/$_POSTXSS — только через Blade escape
  • CSRF защита активна@csrf в формах, VerifyCsrfToken middleware
  • Нет секретов в кодеТолько os.getenv() / config()
  • Нет eval()Никогда
  • Нет serialize() с внешними даннымиPHP Object Injection риск
🐳 Docker безопасность
  • БД не публикует портыНет ports: 5432:5432 в compose
  • Redis без внешних портовТолько internal network
  • Не запускать как rootuser: "1000:1000" в compose
  • .env в .dockerignoreНе попасть в образ
  • Только нужные capabilitycap_drop: ALL в prod
  • Healthcheck настроенДля всех критичных сервисов

🗄️ Работа с миграциями

🔄 Laravel migration
  • Claude генерирует файлdatabase/migrations/YYYY_MM_DD_*.php
  • Проверить up() вручнуюЧто именно создаётся/изменяется
  • Проверить down() вручнуюКорректный rollback
  • pg_dump перед migrateОбязательно для prod!
  • migrate --pretendПоказать SQL без выполнения
  • Запустить migratemcp__docker__docker_exec → php artisan migrate
  • Проверить migrate:statusВсе миграции выполнены?
🐍 Python Alembic migration
  • alembic revision --autogenerateСгенерировать revision файл
  • Проверить versions/*.pyupgrade() и downgrade() корректны?
  • pg_dump перед upgradeОбязательно для prod!
  • alembic upgrade headdocker exec → alembic upgrade head
  • alembic currentТекущая версия схемы
  • alembic historyИстория всех миграций