Files
elmer/doc/session-2026-06-06.md
T

54 lines
2.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 2026-06-06 — Полная сессия (полевой тест + 9 багов + фиксы)
## Текущий статус
- **Версия:** v0.47.0-dev
- **APK:** https://obdai.ru/elmer.apk
- **Сервер:** https://obdai.ru (5.172.178.213, nginx+gunicorn)
- **Android repo:** github.com/Repinoid/elmer-android
- **Server repo:** gitea.services.ngcloud.ru/Nail/elmer
## Хронология коммитов (Android)
| Коммит | Описание |
|--------|----------|
| `6a33048` | fix: checkDevice() забыл connectAndInit() |
| `739afa9` | fix: connect() идемпотентный + run() без двойного connect |
| `94b890f` | bump v0.43.0-dev |
| `71618c6` | fix: статус-строка — append вместо overwrite |
| `d49f6d6` | fix: все appendStatus с \n, таймер на своей строке |
| `3ef3532` | fix: scriptRegistered сброс в onDestroy |
| `dead66c` | fix: init без ретраев, v1.5-совместимость |
## Все 9 багов
1. checkDevice без connectAndInit — AT-команды без BT-сокета
2. connect не идемпотентный — guard socket.isConnected
3. run двойной connect
4. Статус-строка overwrite — всё на appendStatus(\n...)
5. Таймер съедал заголовок — \n вместо пробела
6. scriptRegistered не сбрасывался после поворота
7. init() 70 секунд на ATAT1 — write+tryRead(2s) вместо exec
8. checkDevice слал v2-команды на v1.5 — проверка isV2
9. recover/updateAtst/handle длинные таймауты — 2000-3000мс
## ELM327: версии и команды (Wikipedia)
- **v1.5 НЕ СУЩЕСТВУЕТ** — клон v1.0/v1.4 с фейковой версией
- ATAT1 (adaptive timing): с v1.2
- AT@1/AT@2 (device ID): с v1.3
- ATST (set timeout): с v1.2
- Базовые (ATI, ATDP, ATRV, ATSP, ATE0, ATL0, ATS0, ATWS): с v1.0
## Правила для Copilot
1. Коммит после каждой правки: git add -A && git commit -m "..." && git push
2. При деплое bump версии в android/app/build.gradle.kts
3. Формат: fix:/feat:/refactor:/bump:/docs:
## TODO
- [ ] Разбить MainActivity.kt (~470 -> <=200 строк)
- [ ] Разбить ElmChecker.kt (~270 -> <=200 строк)
- [ ] Подробные комментарии перед каждой функцией
- [ ] Полевой тест v0.47.0-dev на машине