17 Commits

Author SHA1 Message Date
deadzilla
47e4b60111 docs: синхронизировать ISSUES.md, обновить README.md, очистить AGENTS.md
- ISSUES.md: закрыто 7 задач с ссылками на коммиты (on_command_error, !hp харкод, харкод URL, utils/__init__.py, print→logging, автогенерация !hp, дублирование команд, healthcheck)
- AGENTS.md: удалена пустая секция 'Структура проекта' (есть в README.md)
- README.md: обновлена архитектура (добавлены utils/__init__.py, utils/morning_runner.py, console_commands/help.py, Docker-файлы), исправлено кол-во тестов (262→204), добавлена секция 'Запуск в Docker', убрана ссылка на AGENTS.md как основной документ, добавлена консольная команда help, обновлены таблицы утилит
2026-06-09 21:37:07 +05:00
deadzilla
55b3a5604e docs: добавить правило о разделении документации между AGENTS.md и README.md 2026-06-02 22:28:51 +05:00
deadzilla
a9decd848a refactor: переработка AGENTS.md — системный промпт + базовые правила работы 2026-06-02 22:18:20 +05:00
deadzilla
e2c4ecdf5d refactor: переименовать команду !news на !nw
Изменения согласно требованиям AGENTS.md (отсутствие восклицательных знаков):
• commands/news.py — переименование команды с 'news' на 'nw'
  * name=nw вместо name=news
  * async def news() → async def nw()
  * Обновление docstring классов

• AGENTS.md — обновление документationen
  *  →  в таблице команд
  * RSS-ленты Habr (!news, !morning) → (!nw, !morning)

Примечание:
- Изменение прозрачно для пользователей (команда работает так же)
- Тесты не требуют переименования (проверяют код логики, а не имена команд)
- Все тесты проходят успешно
2026-06-01 16:35:08 +05:00
deadzilla
1a7f2d75b8 Добавить MORNING_CHANNEL_ID для утреннего дайджеста 2026-05-31 23:42:03 +05:00
deadzilla
0d605eea5a Переименовать команду погоды: pogoda -> pg, удалить docker-audit.md 2026-05-31 23:13:23 +05:00
deadzilla
d12579b73c fix: исправить импорт discord.ext.commands в morning_runner.py
- Заменить 'from discord import commands' на 'from discord.ext import commands'
- Исправлена ошибка ImportError, из-за которой не запускались тесты
- Обновлена документация AGENTS.md
2026-05-31 12:28:29 +05:00
deadzilla
66d188c1cd Добавить планировщик утреннего дайджеста
- utils/morning_runner.py: Scheduler + run_morning()
- bot.py: автоматический запуск планировщика при старте
- commands/morning.py: использовать run_morning() вместо дублирования
- .env.example: добавить MORNING_TIME=07:00
- AGENTS.md: обновить документацию
- tests/test_morning_runner.py: 10 тестов для Scheduler
2026-05-29 17:48:26 +05:00
deadzilla
4b9bb7e97a Добавить pytest-тесты и конфигурацию
- pytest.ini для конфигурации тестов
- tests/test_pogoda.py — тесты translate_weather, pressure_to_mmhg, wmo_to_russian (93 теста)
- tests/test_fetch_cat.py — тесты fetch_cat (10 тестов)
- tests/test_fetch_rss.py — тесты fetch_rss (20 тестов)
- tests/test_format_articles.py — тесты truncate_title, parse_date, format_articles (24 теста)
- tests/test_fetch_weather.py — тесты fetch_weather, fetch_open_meteo (20 тестов)
- tests/test_commands_pogoda.py — тесты команды !pogoda (13 тестов)
- Обновить AGENTS.md и requirements.txt
2026-05-29 15:45:56 +05:00
deadzilla
680a3c822a docs: обновить AGENTS.md и очистить ISSUES.md с новым TODO-списком 2026-05-26 21:48:19 +05:00
deadzilla
25a8e77fb0 fix: использовать requests.Session для переиспользования соединений (ISSUE #8) 2026-05-26 18:17:17 +05:00
deadzilla
7bfbfa8075 docs: добавить правила согласования коммитов и русского языка сообщений в AGENTS.md 2026-05-26 14:03:04 +05:00
deadzilla
e1a0f6d2b6 refactor: вынести логику погоды в utils/pogoda.py (проблема 3)
- Создать utils/pogoda.py с общими функциями:
  - fetch_weather, fetch_open_meteo, wmo_to_russian, translate_weather, pressure_to_mmhg
- Обновить commands/pogoda.py: убрать дубликаты, импортировать из utils
- Обновить console_commands/pogoda.py: убрать дубликаты, импортировать из utils
- Сделать console_commands/pogoda.py async (требует fetch_weather)
- Обновить AGENTS.md и ISSUES.md (проблема 7 решена)
2026-05-26 12:32:15 +05:00
deadzilla
bf166735a6 fix: исправить блокировку event loop и добавить retry задержку
- Добавить экспоненциальную задержку между попытками retry (1с, 2с, 4с) в pogoda.py
- Заменить time.sleep на await asyncio.sleep для неблокирующих ожиданий
- Обернуть requests.get в asyncio.to_thread для предотвращения блокировки event loop (news.py, cat.py, pogoda.py)
- Добавить правило AGENTS.md: не использовать эмодзи
- Добавить ISSUES.md с фиксацией проблем проекта
2026-05-26 10:24:26 +05:00
deadzilla
6553c9140f docs: обновить AGENTS.md с описанием архитектуры, API, конвертаций и безопасности 2026-05-25 00:24:56 +05:00
deadzilla
89f17d53d8 Refactor: add commands/, console_commands/, !pogoda command 2026-05-24 15:27:29 +05:00
deadzilla
83fc714b8e Initial commit: Discord bot with !msg command 2026-05-24 13:35:12 +05:00