- проект tests/Elfisa.Tests: 56 юнит-тестов на Elfisa.Core + Elfisa.Avalonia:
версии апдейтера, срок JWT-сессии, ApiClient (URL/ошибки/ретраи/парсинг),
DTO-контракты, черновики, корзина, дрилдаун прайса (МГ/базовое имя)
- тест-швы: internal-методы через InternalsVisibleTo, ApiClient(HttpMessageHandler)
- CI .github/workflows/desktop-tests.yml — dotnet test при пуше (GitHub/Gitea Actions)
- README с описанием покрытия
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- UpdateService: проверка через публичный CDN latest.json (тот же хост, что и
установщик — надёжнее поддомена git), fallback на Gitea, лог в %TEMP%\elfisa-update.log
- Настройки: кнопка «Проверить обновления» (ручной триггер + видимый результат)
- Прайс-лист: убран лимит показа (300 → весь прайс/все совпадения одним запросом)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
- UpdateService (Core): проверка Gitea releases/latest + скачивание установщика с CDN
- UpdateWindow/VM: уведомление «доступно обновление», тихая установка поверх с перезапуском
- ShellView: проверка при старте (один раз, офлайн/ошибки игнорируются)
Закрывает пробел: Avalonia-клиент раньше не умел обновляться (апдейтер был только в WinForms).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>