Добавлены Discord-команды: - !status — пинг к gateway, uptime, статус (embed) - !stats — серверы, каналы, пользователи (embed) Добавлены консольные команды: - status — статус бота в терминале - stats — статистика серверов в терминале Тесты: - test_commands_status.py (6 тестов) - test_commands_stats.py (4 теста) - всего: 233 теста Обновления: - README.md — новые команды в таблицах и архитектуре - ISSUES.md — высокий приоритет закрыт - admin.py — hint на !status и !stats
2.5 KiB
2.5 KiB
ISSUES — Задачи и баг-трекер
Средний приоритет
- Добавить 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, uptimestats— кол-во серверов, каналов, пользователей
Средний приоритет
reload— горячая перезагрузка cogs без остановки ботаlogs— последние строки лога (tail -20)trigger morning— ручной запуск morning-дайджеста в канал
Низкий приоритет
memory— текущее потребление памяти процессаhealth— проверка доступности внешних API (wttr.in, TheCatAPI, Habr)debug <on|off>— переключить 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)