← Все версии
v0.4.0

Придирчивая проверка Telegram-бота

Что нового

Telegram-бот — быстрые пути

  • Правила для очевидных фраз: «спал 7 часов», «вес 75», «8000 шагов», «настроение 7». Модель не вызывается вовсе — экономит запросы и укладывается в сотую долю секунды.
  • Дневник без разбора: «Записать в дневник: …», «Дорогой дневник», «Итоги дня» — запись сразу, минуя модель.
  • Кнопка «Отменить»: после голосового сообщения, создавшего задачи, заметки или события, появляется «↶ Отменить». Живёт пять минут.

База

  • health_entries.value переведена из INTEGER в REAL — чтобы хранить дробное: сон 7,5 часа, вес 75,3 кг.

Исправлено

  • Обработчики Telegraf регистрировались дважды при горячей перезагрузке — главная причина задвоенных задач. Каждая перезагрузка при разработке добавляла новый комплект подписок bot.on('message', ...) поверх старых. Починено единственным экземпляром через globalThis — тем же приёмом, что и для клиента базы.
  • Приветствие /start: тому, кто уже привязал аккаунт, теперь «С возвращением, Павел!», а не инструкция по привязке.
  • /help: убраны мёртвые команды /morning и /ask — они никогда не были зарегистрированы.
  • Разбор здоровья в сервисе распознавания: добавлены примеры и жёсткое правило «ключевое слово рядом с числом → всегда запись показателя, никогда „не понял“».
  • Разбор смысла там же: правила против утечки контекста. Контекст — снимок только для чтения, а не источник действий. Больше никаких «Lose 2kg» и «Работа в Яндексе», всплывающих из памяти пользователя.