- app.py: gen_password(mode), api_users_create принимает password_mode
- bot.py: меню выбора сложности перед созданием, gen_password(mode)
- mita-ctl.sh: запрос сложности в menu_users, _create_user с pwd_mode
- templates/index.html: селектор «Сложность пароля» в форме создания
- README: обновлена дорожная карта
- app.py: отложенный systemctl restart (sleep 1) — ответ уходит до убийства gunicorn
- mita-ctl.sh: ручной ввод SSH-порта при удалении вместо автоопределения
- install-bot.sh: pip в venv вместо системного (externally-managed fix), ExecStart через venv/bin/python3
- templates/index.html: убран лишний </div> ломавший DOM (пустые вкладки), уникальные ID для кнопок
- app.py: селекторы кнопок restartPanel/switchToSSHTunnel используют id вместо классов
- install-panel.sh: самоподписной сертификат создаётся автоматически при установке, панель сразу работает по HTTPS
- app.py: API /api/panel/restart для перезапуска панели
- index.html: кнопка «Перезапустить панель» на вкладке SSL
- mita-ctl.sh: автоопределение http/https (_panel_proto) для URL панели
- README: обновлена дорожная карта
- bot.py: Telegram-бот (/users, /create, /delete, /warp, /stats, /dashboard)
- install-bot.sh: установщик бота (systemd, конфиг /etc/mita/bot.json)
- app.py: API /api/bot/{status,install,uninstall,config}, /api/stats (CPU/RAM/диск)
- templates: раздел «Telegram бот» в UI, мониторинг CPU/RAM/диск на дашборде (2s auto-refresh)
- mita-ctl.sh: пункт 11 «Telegram-бот», удаление бота в полном uninstall
- install.sh: опциональная установка бота с инструкцией
- README.md: описание проекта и дорожная карта