1
0
Fork 0
forked from zovos/bot_tg
Commit graph

52 commits

Author SHA1 Message Date
q
add3553ce0 feat: переход с SQLite на PostgreSQL + скрипт миграции
- Все 4 SQLite базы объединены в одну PostgreSQL
- Новый db.py с ThreadedConnectionPool (psycopg2)
- docker-compose: сервис postgres с healthcheck, данные в ./db/postgres
- scripts/migrate_sqlite_to_pg.py — миграция существующих данных
- Убраны мёртвый код и дублирующий import в main.py и talk_handler.py
- .env удалён из git-индекса

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-01 23:25:22 +03:00
q
81af64c8b7 feat: единая экономика — penis game, вклады/кредиты через ЦБ
- penis_stats переехал в economy.sqlite3, длина хранится в user_balances.balance
- /top_penis читает из user_balances, /penis пишет туда же
- create_deposit: деньги уходят в капитал ЦБ
- create_loan: деньги берутся из капитала ЦБ
- repay_loan: деньги возвращаются в ЦБ
- добавлен process_matured_deposits: ЦБ выплачивает вклады с процентами
- init_penis_db() больше не вызывается

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 13:53:41 +03:00
q
70e7d23064 fix: бот не стартовал + падение в get_user_stats + handle_central_bank_cmd не отвечал
- economy_background_tasks() была вставлена в середину main(), из-за чего
  dp.startup.register и asyncio.run(dp.start_polling) оказались мёртвым кодом
  внутри while True — бот никогда не поднимался
- двойной fetchone() в get_user_stats (тот же баг что в PR #34, но в другом месте)
- conn.close() вызывался до запросов за активностью, потом ещё раз — ProgrammingError
- handle_central_bank_cmd строил текст но не делал await message.answer()

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 13:08:30 +03:00
itexpert228
34ba32fefa
сисиписи экономика сперма говно жопааааа сеееекс 2026-04-24 12:21:19 +03:00
itexpert228
833ec9cf9a
сисиписи экономика сперма говно жопааааа сеееекс 2026-04-24 12:12:59 +03:00
Hitoshi-Hub
2740e848e4 Сделал так чтобы не отвечал на фото без /watch 2026-04-23 13:01:38 +03:00
Danil
c2e210c4ae Исправление критических багов и потенциальных проблем
- Удалена дублирующая функция handle_uwu_cmd в uwu.py (мёртвый код)

- Исправлен краш UnboundLocalError в /zvetok (next_dt и delta могли быть не определены)

- Баланс penis больше не уходит в минус при проигрыше в казино

- talk_handler теперь использует путь БД из config.py вместо своего (разные файлы БД)

- betting.py больше не крашится при импорте если /db/ недоступен

- Таймаут гадания снижен со 120 до 30 секунд (Telegram таймаутит раньше)
2026-04-13 18:50:37 +03:00
Omelechko Danil
38b0c43972 Merge remote-tracking branch 'upstream/main' into feature/FenyaBot 2026-04-12 04:13:23 +03:00
Omelechko Danil
298a5d7d59 Update 2026-04-12 04:11:08 +03:00
q
a2b72b6dfd add photo triget fix2 2026-04-11 17:43:00 +03:00
q
4d0a3841b7 update ai dolboeba 2026-04-11 16:15:14 +03:00
Omelechko Danil
b47e6bee81 Update 2026-04-11 00:59:38 +03:00
itexpert228
78dc7f4810
pisi i sisi 2026-04-10 10:47:56 +03:00
Omelechko Danil
c3487c22b4 feat: TG Mini App - FastAPI backend + frontend SPA + Docker setup 2026-04-04 23:03:17 +03:00
Omelechko Danil
481965e8f2 feat: /matches without args shows list of available leagues 2026-03-23 18:22:34 +03:00
Omelechko Danil
3baf71ab98 fix: replace dead esports keys with football leagues, fix payout stats 2026-03-23 17:07:12 +03:00
Omelechko Danil
6b6c1dd15d fix: matches + bet history with monthly stats 2026-03-23 10:55:25 +03:00
furrexwolfy
967cfb4a6d feat: add /uwu command for e621.net 2026-03-21 12:56:05 +03:00
q
107a0647d1 fix 2026-03-20 12:24:05 +03:00
Danil
aee53349b1 Добавлены ставки на матчи 2026-03-19 23:49:25 +03:00
q
a7c047f847 modern 2026-03-18 09:39:32 +03:00
q
9295538f5f Add lesson schedule command 2026-03-17 13:29:10 +03:00
q
5b294415d0 Add polychaetsi tracker and improve Docker setup 2026-03-10 13:08:04 +03:00
q
43503dc778 Send all Magnit price matches 2026-03-09 11:51:43 +03:00
q
75a63bb6fc Add Magnit prices command 2026-03-09 11:48:20 +03:00
Danil
9f6a7464d1 Добавлен казик и гадание 2026-03-07 15:58:53 +03:00
q
73e539b4c4 fix /break 2026-03-05 13:06:06 +03:00
q
c59858df53 fix /maket 2026-03-05 12:41:55 +03:00
q
f14b1a8209 add second maket 2026-03-05 12:30:17 +03:00
q
6afc30570f auto send to smoke 2026-03-05 12:05:30 +03:00
q
0ac74b95c5 add mute for bot 2026-03-01 16:14:46 +03:00
Danil
9b34fd13d5 Добавлен контекс 2026-02-27 12:29:53 +03:00
Danil
126ae083cb Добавлен авто-ответ 2026-02-27 00:30:57 +03:00
hitoshi
07f6efe7b1 ПОЛНЫЙ РЕФАКТОРИНГ КОДА. Константы вынесены в config.py, упрощены импорты, вроде бы все работает, а там хуй знает)))) 2026-02-23 10:21:14 +03:00
q
0d0967001a fix old staff 2026-02-22 21:02:36 +03:00
q
62aa560886 Fix docker for db 2026-02-22 20:56:15 +03:00
q
957d46b735 Merge branch 'Zhirik1337-wpng' 2026-02-22 20:53:46 +03:00
itexpert228
caebebf3cf
СВО ЕБАТЬ 2026-02-22 20:40:51 +03:00
e56a11461b Изменения: что изменилось
Добавлена и доработана миниигра /penis
Логика рандома +/- 0.1..7.0, ограничение минимума до 0.1, cooldown 24ч.
Файлы/места: main.py (line 420), main.py (line 579).
Добавлена команда /top_penis
Динамический топ по текущим значениям см.
Формат с медалями и лимитом топа.
Файлы/места: main.py (line 505), main.py (line 590).
Хранение данных /penis и /top_penis переведено с RAM на SQLite
Убрана in-memory модель, добавлена БД penis_stats.sqlite3.
Добавлена инициализация таблицы penis_stats.
Файлы/места: main.py (line 27), main.py (line 47), main.py (line 761).
Логика записи в БД исправлена под твое требование
Для нового пользователя: INSERT.
Для существующего: UPDATE (без новых строк).
Файл/место: main.py (line 468).
В топ добавлено нормальное имя пользователя
Берётся @username, иначе full_name, иначе user_<id>.
Файл/место: main.py (line 496).
Команды добавлены в help и Telegram command menu
В /help добавлены /penis и /top_penis.
В set_my_commands есть обе команды.
Файлы/места: main.py (line 152), main.py (line 778), main.py (line 783).
Улучшено отображение команд через /
Команды выставляются для scope:
default
all private chats
all group chats
Файл/место: main.py (line 790), main.py (line 796).
Добавлены подробные комментарии в код
По основным блокам main.py и talk_handler.py.
Файлы: main.py, talk_handler.py.
Проверки, которые прогонялись
Компиляция: talk_handler.py.
Локальные тесты:
insert/update/cooldown /penis;
сортировка /top_penis;
запись полей в SQLite;
smoke по генерации мемов и тайм-функциям.
2026-02-22 20:33:27 +03:00
ac491e6433 Изменения: что изменилось
Добавлена миниигра /penis с хранением состояния по пользователю (в памяти процесса).
main.py (line 28)
main.py (line 29)
main.py (line 32)
main.py (line 400)
Что делает:
хранит length и last_used_at на user_id;
даёт изменение длины случайно +/- в диапазоне 0.1..7.0;
ограничивает минимум до 0.1;
вводит кулдаун 24 часа от последнего вызова.
Реализован динамический топ /top_penis.
main.py (line 33)
main.py (line 454)
main.py (line 590)
Что делает:
собирает текущие значения из PENIS_STATE;
сортирует по убыванию см;
показывает медали 🥇🥈🥉 и далее нумерацию;
лимит топа по умолчанию 10 участников;
при пустом состоянии пишет, что топ пуст.
Добавлена нормализация имени пользователя для топа.
main.py (line 445)
main.py (line 585)
Как работает:
приоритет @username;
если нет username, берёт full_name;
fallback: user_<id>.
Обновлены подсказки и меню Telegram-команд.
main.py (line 153)
main.py (line 716)
main.py (line 735)
Что добавлено:
строка в /help про /top_penis;
BotCommand("top_penis") в меню;
регистрация обработчика Command("top_penis").
Добавлены подробные комментарии по коду.
main.py (line 21)
main.py (line 146)
main.py (line 400)
talk_handler.py (line 10)
talk_handler.py (line 45)
Что покрыто:
константы/секции;
игровые функции;
хендлеры;
старт и регистрация роутов;
пояснения к LLM-модулю /talk.
Что протестировано локально.
compileall для main.py и talk_handler.py — успешно.
Смоук-тесты функций:
parse_up_down, minutes_until_break, minutes_until_next_lesson;
generate_maket, generate_meme;
play_penis (включая cooldown);
build_penis_top (сортировка/пустой топ).
Итог: основные проверки прошли.
Текущее ограничение реализации.
Состояние /penis и /top_penis хранится только в RAM, после перезапуска бота сбрасывается.
main.py (line 28)
2026-02-22 19:40:57 +03:00
Danil
d39ada437c ИИ-бот на фене через llama.cpp 2026-02-22 14:07:01 +03:00
itexpert228
de07891926
Ебать у меня идеи, а вы и дальше говорите что алкоголь вреден...........7 2026-02-20 23:28:22 +03:00
q
a85ab1c639 Fix api domain 2026-02-20 18:43:05 +03:00
q
99946bc923 Fix, i am down 2026-02-20 14:27:58 +03:00
q
f385bedd9b add new zaloopa 2026-02-20 14:23:47 +03:00
q
aafb64ad4e Resolve merge conflict: combine size and creep handlers 2026-02-20 13:57:49 +03:00
q
11ad1c43c9 Add radiohead creeeeeeep 2026-02-20 13:08:48 +03:00
hitoshi
5072450244 Ну короче реализация вайба, я ща ОБОССУСЬ НАХУЙ 2026-02-20 12:40:54 +03:00
q
e151ae5269 Fix command /size 2026-02-20 12:36:45 +03:00
2662bfeb63 Обновить main.py 2026-02-20 09:29:31 +00:00