Commit Graph
6 Commits
Author SHA1 Message Date
Repinoid d2f42e99bb fix: car_info сохраняется в БД 2026-06-06 07:06:56 +04:00
Repinoid 64acb8c60a feat: DTC-коды: справочник, эндпоинты /dtc/decode, /dtc/upload 2026-06-06 06:40:50 +04:00
Repinoid 9d08ff4c75 feat: телефон — язык, часовой пояс, разрешение экрана 2026-06-06 06:23:24 +04:00
Repinoid 9049383e87 feat: device_uuid — UUID приложения в SharedPreferences 2026-06-06 06:16:00 +04:00
Repinoid 6893ae33f5 fix(server): идемпотентность upload, WAL, буфер ELM, таймаут LLM
- api/db.py: WAL mode, busy_timeout, request_id UNIQUE, close(), контекстный менеджер
- api/routes.py: проверка request_id при upload, /ping-llm кэш 60с, /chat через roles
- api/config.py: lru_cache на load()
- obd/protocol.py: reset_input_buffer перед _write(), условный READY в send()
- brain/client.py: модель 120b, таймаут из параметра, LLMError класс, обработка 429/5xx
2026-05-31 16:56:21 +03:00
Repinoid 2db6cb68a8 refactor: архитектура сервера — obd/ brain/ api/
- obd/protocol.py — ELM327 стейт-машина AndrOBD (подробные докстринги)
- brain/client.py — LLM-клиент Diagnoser
- brain/prompts.py — системные промпты
- api/db.py — SQLite (sessions + старые таблицы)
- api/scripts.py — сборка диагностических скриптов
- api/parser.py — парсинг ответов ELM327
- api/routes.py — все REST-эндпоинты
- api/config.py — загрузка конфига
- web/app.py — точка входа Flask (упрощена)

Удалено: elmer/elm.py, elmer/elm_proto.py, web/raw_endpoint.py
2026-05-29 17:24:33 +03:00