---
name: kodoceh_web_landing_deploy_gotcha
description: kodoceh-web лендинги — пересборка без перезапуска ломает сайт (stale-build 400); как правильно рестартить next-server на mini
metadata: 
  node_type: memory
  type: project
  originSessionId: b11e39bd-4f6f-47c9-ba7b-680ccf041a5b
---

Лендинги монорепо kodoceh-web (studio :20410, avtero/vakhunter/mehant) на mini запущены как **осиротевшие `nohup npm start`** (родитель = init, БЕЗ launchd/pm2). Живут в `~/Разработки/kodoceh-web/apps/<app>` (это деплой-копия; вторая копия `~/Services/kodoceh-web` НЕ рабочая).

**Грабля (реальный инцидент 2026-07-07, codoceh.ru «не работает авторизация»):** пересобрали `.next`, но процесс не перезапустили → next-server отдаёт HTML старого билда со ссылками на несуществующие чанки → 400 + `Refused to execute script (MIME text/html)` → client-страницы (`/cabinet`) вечно висят на «Загрузка…». Лендинг (server-компонент) при этом «выглядит ок». Сверка: чанк в HTML (`curl .../cabinet | grep page-`) должен == файлу в `.next/static/chunks/app/<route>/`.

**Правильный рестарт на mini:**
1. `export PATH=/opt/homebrew/bin:/opt/homebrew/Cellar/node/26.0.0/bin:$PATH` (node НЕ в PATH неинтерактивного ssh).
2. `cd ~/Разработки/kodoceh-web/apps/studio && rm -rf .next && npm run build` (сборка из папки приложения — build-gotcha [[kodoceh_web_build_gotcha]]).
3. Убить по порту: `kill -9 $(lsof -tiTCP:20410 -sTCP:LISTEN)` (+ родитель npm). `pkill -f 'next start'` НЕнадёжен.
4. `setsid` на macOS НЕТ → `nohup npm start > ~/Services/shared/logs/codoceh-landing.log 2>&1 </dev/null & disown`.
5. Проверить: `lsof -iTCP:20410`, headless-браузер против живого edge (консоль без MIME-ошибок, форма входа рендерится).

**СДЕЛАНО 2026-07-07:** заведены launchd-плисты `local.{codoceh-studio,avtero,mehant}-frontend` (KeepAlive+RunAtLoad, npm run start) + `vakhunter-frontend` был раньше. Все 4 под supervision, тайлы в ops_dashboard (health_check http по портам, все `running`). Ребут mini теперь поднимает сайты сам. **Домен Механта = mexunt.codoceh.ru** (бот @mexunt_bot), НЕ mehant.codoceh.ru (такого нет). Порты: studio 20410 / mehant 20411 / vakhunter 20412 / avtero 20413. См. [[codoceh_studio_cabinet]] [[kodoceh_web_overview]] [[mehant_rename]].
