# ISSUES — Задачи и баг-трекер ## Средний приоритет - [x] **Добавить rate-limiting** для API-вызовов (TheCatAPI, wttr.in, Habr RSS) - [ ] **Настроить логирование** — уровни, формат, вывод в файл/консоль - [ ] **Добавить тесты для `console_commands/`** — есть только `test_help_console.py`, нужны `test_pogoda_console.py`, `test_news_console.py`, `test_morning_console.py` - [ ] **Проверка наличия `.env`** — добавить явную проверку с информативным сообщением ## Консольные команды ### Высокий приоритет - [ ] **`status`** — онлайн-статус бота, пинг к Discord gateway, uptime - [ ] **`stats`** — кол-во серверов, каналов, пользователей ### Средний приоритет - [ ] **`reload`** — горячая перезагрузка cogs без остановки бота - [ ] **`logs`** — последние строки лога (tail -20) - [ ] **`trigger morning`** — ручной запуск morning-дайджеста в канал ### Низкий приоритет - [ ] **`memory`** — текущее потребление памяти процесса - [ ] **`health`** — проверка доступности внешних API (wttr.in, TheCatAPI, Habr) - [ ] **`debug `** — переключить verbose-режим бота ## Низкий приоритет - [ ] **Добавить pre-commit хуки** — lint (flake8/ruff), форматирование (black) - [ ] **Добавить type hints** повсеместно — не все функции имеют аннотации (отсутствуют в `utils/pogoda.py`, `utils/news.py`, присутствуют в `utils/cat.py`, `utils/morning_runner.py`) - [ ] **Интеграционные тесты** — сейчас только unit-тесты с моками ## Замечания - [ ] `README.md` ссылается на `AGENTS.md` как основной документ проекта, но AGENTS.md — инструкции для AI-ассистента - [ ] В тестовых файлах используется `asyncio.run()` внутри синхронных тестов — может конфликтовать с event loop (подтверждено: 50+ вхождений в `test_fetch_cat.py`, `test_fetch_rss.py`, `test_fetch_weather.py`)