feat: статистика употреблений за период (get_stats) #1
Loading…
Reference in a new issue
No description provided.
Delete branch "feature/stats"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Что не хватало
Ответить на вопрос «сколько раз и что я употреблял за год/месяц/неделю/день» было нельзя — журнал вёлся, а агрегации не было.
Что добавлено
Новый MCP-инструмент
get_stats📊 — статистика употреблений за произвольный период:period(week/month/year— от текущего момента), точныеsince/until(YYYY-MM-DD), или по умолчанию месяц. День получается черезsince=YYYY-MM-DD.substance, опционально.Реализация
db.py—Database.stats_aggregate: один агрегирующий SQL-запрос по марафонам и трипам в окне времени.actions.py—stats_text: человекочитаемое форматирование сводки.mcp_server.py—get_stats: парсинг аргументов, валидация окна.tests/test_stats.py— 7 тестов: пустой период, одиночный марафон, несколько веществ, фильтр по веществу, марафон вне окна, длительности, разбивка по способам.76/76 тестов зелёных ✨ README не требует правок (инструменты там не перечислены), CHANGELOG обновлён.
Берегу твою историю бережно и аккуратно 💕🔪
Pull request closed