Основное (наша работа в этой сессии): - Переименование «subserver» → «homeserver» по всему проекту: основной ESP32-скетч (папка shine_subserver_ui → shine_homeserver_ui, .ino, flash-скрипт, режим burn.sh homeserver-ui), скетч lvgl_nav_minimal_test (ключ homeserver.key:<имя>), spec-доки reference/*, формат PDA (терминология session_type=100 «Homeserver пользователя»), константа SESSION_TYPE_HOMESERVER в JS и Rust (значение 100 не менялось, формат не затронут), pending/future доки, AGENTS.md, DAO-док. Сохранены отдельный lvgl_subserver_touch_test и историческая пометка о рендейме в DERIVATION.md. - Новый источник истины по деривации ключей: Dev_Docs/Keys/DERIVATION.md (Argon2id-секрет из пароля, формула Ed25519(SHA-256(base64(secret)|suffix)), суффиксы root/bch/dev/homeserver.key, Solana-ключ = dev.key). Уточнены роли root (главный/master) и dev (пополняемый кошелёк) в Dev_Docs/Keys/README.md. - UI: убран легаси-путь пустого пароля (derivePasswordSeed и др.), deriveMasterSecretFromPassword бросает ошибку на пустом пароле, register-view блокирует пустой пароль; экран пополнения переведён на канонический device-адрес из preGeneratedKeyBundle (удалён расходящийся deriveWalletFromPassword). Включены также параллельные правки Solana-аудита №3 (были в рабочем дереве, переплетены в lib.rs): - shine_users: defense-in-depth «строгий список аккаунтов» (require!(it.next().is_none())) в init/update economy config и create/update user PDA, плюс описание в doc/programs/shine_users.md; - Dev_Docs/audit/Solana-audit-3-by-Claude-12июня2026.md. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| gfx_button_layout_test | ||
| gfx_text_render_test | ||
| lvgl_basic_test | ||
| lvgl_interaction_test | ||
| lvgl_nav_minimal_test | ||
| lvgl_official_based_test | ||
| lvgl_russian_font_test | ||
| lvgl_subserver_touch_test | ||
| lvgl_touch_debug_test | ||
| README.md | ||
Test Sketches
Набор отдельных диагностических скетчей для Waveshare ESP32-S3-Touch-AMOLED-2.16.
Скетчи в этой папке нужны для быстрой проверки конкретных гипотез без влияния на основной shine_homeserver_ui.
Список
gfx_text_render_test/- проверка рендера текста черезArduino_GFXи сравнение сU8g2gfx_button_layout_test/- проверка геометрии кнопок, особенно нижних рядов и широких кнопокlvgl_basic_test/- минимальный тестLVGLс заголовком, текстом и кнопкамиlvgl_interaction_test/- расширенный тестLVGLс 9 кнопками, touch-вводом и статусом нажатияlvgl_touch_debug_test/- диагностика touch: сырые координаты, точка касания и одна большая кнопкаLVGLlvgl_official_based_test/- минимальный наш экран поверх максимально близкой к официальному05_LVGL_Widgetsинициализацииlvgl_subserver_touch_test/- гибридный тест:LVGL-экран с инициализацией дисплея и чтением touch изshine_homeserver_ui; подтверждён на реальном устройствеlvgl_russian_font_test/- тест кастомного кириллическогоLVGL-шрифта с русскими кнопками, длинными строками и рабочим touchlvgl_nav_minimal_test/- новый минимальный навигационный каркас сабсервера на рабочемLVGL + subserver touch, расширенный настройкой Wi-Fi и сохранением в NVS
Запуск
Использовать через burn.sh:
./burn.sh gfx-text-test./burn.sh gfx-layout-test./burn.sh lvgl-basic-test./burn.sh lvgl-interaction-test./burn.sh lvgl-touch-debug-test./burn.sh lvgl-official-based-test./burn.sh lvgl-subserver-touch-test./burn.sh lvgl-russian-font-test./burn.sh lvgl-nav-minimal-test