Автоматизация

gdebenz

Личный портал, который отвечает на практический вопрос «ехать за АИ‑95 или подождать» по данным избранных АЗС — с историей и объяснимой причиной.

Что это

Серверное веб-приложение на FastAPI, Jinja2 и SQLite, собранное на основе внутреннего шаблона `template-python-fastapi-jinja`. Отдельный worker-процесс регулярно опрашивает избранные АЗС через внешний API `gdebenz.ru` и копит историю в общей persistent-базе.

Портал не считает одиночную пользовательскую отметку абсолютной истиной: главным источником служит агрегированный ответ источника, а решение строится по явным правилам, а не по единственному полю статуса.

Задача, которую решает

Когда бензин появляется нестабильно, отметки «топливо есть» недостаточно: рядом может быть очередь в 100+ машин, устаревшее наблюдение или чужая ошибка. Портал сводит данные по конкретным станциям в один из четырёх вердиктов — ЕХАТЬ, ЖДАТЬ, НЕТ ВАРИАНТОВ, НЕТ СВЕЖИХ ДАННЫХ — и объясняет причину каждого.

Что демонстрирует

Факты

Разработка
1 день
Коммитов
6
Код
~2 700 строк Python
АЗС под наблюдением
3 (список редактируемый)
Вердиктов решателя
4
Статус
web + worker, история копится

Стек и архитектура

Backend: Python, FastAPI, Uvicorn, слои router → service → repository, SQLite.
Frontend: Jinja2 templates, без SPA-фреймворка.
Интеграция: async-клиент `gdebenz.ru` на httpx с таймаутами и нормализацией времени в UTC.
Эксплуатация: Docker Compose — раздельные образы для web и worker, общий volume под SQLite, Telegram-уведомления только о значимых переходах состояния.
Качество: pytest, ruff, mypy.

Теги

FastAPIАвтоматизацияRule-based решенияЛичный сценарий

След AI-процесса

Перед кодом в репозитории зафиксирован разбор предметной области и найденного API источника — эндпоинты, поля, ловушки вроде `status=yes` при большой очереди — и пошаговый план реализации: клиент API → модель данных → сборщик истории → rule-based решатель → HTML-портал → JSON API → тесты и Docker. Отдельным документом описан пересмотр решающего алгоритма после первой версии. Это след перехода от постановки задачи к работающему личному инструменту за один день.

Почему это отвечает роли «превратить AI-кейсы в стандарт»

gdebenz показывает, как ИИ-агент доводит задачу с недокументированным внешним API и «шумными» пользовательскими данными до объяснимого, проверяемого правилами решения — без чёрного ящика и без лишнего избыточного инжиниринга.

← Ко всем проектамНа главнуюпубличная витрина · метод и агрегаты