AidarKC
f8a76bcd7f
Автоопределение SHiNE-сервера по логину через PDA
2026-06-16 16:32:33 +04:00
AidarKC
3efa8bb7ee
Wallet-session pairing и browser plugin wallet, оплаты пока не работают
2026-06-16 16:23:08 +04:00
AidarKC
5c155ef503
UI: нормальное закрытие сессий и сортировка устройств
2026-06-16 10:36:43 +04:00
AidarKC
41d199e24a
Показывать ошибки pairing-пароля в отдельном окне
2026-06-15 15:31:19 +04:00
AidarKC
e1f2b54de3
Сузить диалог изменения pairing-пароля
2026-06-15 15:23:19 +04:00
AidarKC
d6c5757dfa
Переделать UI дополнительного pairing-пароля
2026-06-15 13:35:05 +04:00
AidarKC
9a489801c5
Доработать UX и отмену pairing по коду
2026-06-15 13:13:16 +04:00
AidarKC
9fcdcd087b
Убрать QR-заглушку и очищать код после reject
2026-06-15 02:37:26 +04:00
AidarKC
af1304022e
Исправить синтаксис экрана pairing
2026-06-15 02:30:17 +04:00
AidarKC
7972676eb8
Исправить pairing без пароля и убрать фантомные заявки
2026-06-15 02:21:21 +04:00
AidarKC
bef205aec7
Разрешить pairing без доп пароля
2026-06-15 00:54:56 +04:00
AidarKC
49fdbbf7ae
Исправить переход со старта на экран выбора входа
2026-06-14 21:33:43 +04:00
AidarKC
dd69a52273
Форсировать обновление UI модулей входа
2026-06-14 21:13:22 +04:00
AidarKC
c681b4d684
Добавить UI pairing по коду и обновить документацию агента
2026-06-14 20:39:05 +04:00
AidarKC
b166013707
Бот: починить resume-вызов Codex CLI
2026-06-14 20:30:17 +04:00
AidarKC
3e04727022
Добавить ESP pairing через доверенные сессии
2026-06-14 18:21:23 +04:00
AidarKC
5d13112b00
ESP32: уменьшить рамку wallet QR
2026-06-14 11:22:11 +04:00
AidarKC
373f88086e
ESP32: подправить вертикальный ритм wallet QR
2026-06-14 11:16:49 +04:00
AidarKC
05492306c0
ESP32: смягчить SHiNE reconnect при плохом сервере
2026-06-14 11:01:47 +04:00
AidarKC
423d490939
ESP32: доработать home экран и wallet QR
2026-06-14 10:50:31 +04:00
AidarKC
7edc0ba901
ESP32: зафиксировать LVGL qrcode конфиг
2026-06-14 10:28:42 +04:00
AidarKC
0ebb71daf1
ESP32: добавить реальный wallet QR через LVGL
2026-06-14 10:27:10 +04:00
AidarKC
4b15cabd4f
ESP32: добавить быстрый QR-экран кошелька
2026-06-13 23:20:35 +04:00
AidarKC
be4a2d135a
Проект: включить ESP32-wallet в основной репозиторий
2026-06-13 23:01:57 +04:00
AidarKC
ca4cfd9d8d
UI: выровнять online-флаг с ответом ListSessions
2026-06-13 15:50:47 +04:00
AidarKC
96d292074b
API: добавить online-флаг для ListSessions
2026-06-13 15:49:34 +04:00
AidarKC
0536a018c6
ESP32: починить JSON auth для homeserver sessionType
2026-06-13 15:22:19 +04:00
AidarKC
81d1b84a7d
ESP32: отправлять homeserver sessionType в SHiNE auth
2026-06-13 15:08:53 +04:00
AidarKC
61c21b245e
UI: явно показать тип сеанса в списке устройств
2026-06-13 15:05:41 +04:00
AidarKC
919387f581
API сессий: добавить sessionType и clientPlatform
2026-06-13 14:15:42 +04:00
AidarKC
3b8ea70d3c
ESP32: добавить диагностику подключения SHiNE и починить WS handshake
2026-06-13 13:09:32 +04:00
AidarKC
477ab3b580
ESP32: починить добавление homeserver и вернуть автопрогон
2026-06-13 12:53:40 +04:00
AidarKC
a1da814030
ESP32: добавить flow обновления homeserver в user PDA
2026-06-13 09:07:49 +04:00
AidarKC
19fd5611b2
ESP32: добавить автотест регистрации и исправить signed server profile
2026-06-13 08:41:25 +04:00
AidarKC
556004a557
ESP32: исправить off-curve проверку для user PDA
2026-06-13 08:20:12 +04:00
AidarKC
fba6d6bba0
ESP32: исправить derivation user_pda для Solana
2026-06-13 07:36:45 +04:00
AidarKC
04252e006b
ESP32: сохранять полный текст ошибки регистрации
2026-06-13 00:24:42 +04:00
AidarKC
436e1f0c53
ESP32: добавить USB-диагностику регистрации Solana
2026-06-13 00:01:57 +04:00
AidarKC
21030b1d51
ESP32: исправить base64 сериализацию Solana транзакции
2026-06-12 23:48:38 +04:00
AidarKC
b583a86ade
ESP32: исправить ABI регистрации и подробные ошибки RPC
2026-06-12 23:43:42 +04:00
AidarKC
3262ec9b4a
ESP32: перевести UI регистрации на английский
2026-06-12 23:35:05 +04:00
AidarKC
0c9afea67a
ESP32: экран подтверждения регистрации
2026-06-12 23:02:07 +04:00
AidarKC
b83543d018
ESP32: регистрация по кнопке и зазор между кнопками
2026-06-12 22:24:21 +04:00
AidarKC
d4a0185507
Перенёс основной ESP32-скетч в main-device
2026-06-12 22:02:08 +04:00
AidarKC and Claude Opus 4.8
42dcf6970d
homeserver: рендейм subserver→homeserver, документ деривации ключей, запрет пустого пароля
...
Основное (наша работа в этой сессии):
- Переименование «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 >
2026-06-12 21:16:12 +04:00
AidarKC and Claude Fable 5
cf6a2830c8
solana: закрыть griefing создания PDA и заморозку выплат, добавить аудит №2
...
shine_payments + shine_users:
- create_pda_account переведён на «создание поверх предзаполненного»
(allocate+assign+добор ренты), чтобы подсев лампортов на детерминированный
адрес PDA (тикет/логин) не блокировал создание — закрыт LOW из аудита №1;
в shine_payments is_uninitialized_account перестала зависеть от баланса.
shine_payments (HIGH из аудита №2):
- запрещён recipient == inflow_vault в buy_ticket*, manager_add_ticket и
change_ticket_recipient; добавлена защита по умолчанию в transfer_from_vault
(require vault.key != recipient.key). Это убирает алиасинг аккаунта в
step_payout, который навсегда замораживал очередь выплат и средства вольта.
Документация и учёт:
- doc/programs/shine_payments.md §3.4, §10.1; doc/programs/shine_users.md §3.3;
- Dev_Docs/audit: добавлен аудит №2, обе закрытые находки помечены ИСПРАВЛЕНО;
- Dev_Docs/Pending_Features: две записи на ручную e2e-проверку на devnet;
- VERSION.properties: client 1.2.161, server 1.2.150.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-06-11 04:10:31 +04:00
AidarKC
01d9553db4
merge(ui): влить PR #3 pixel-связи в main
2026-06-11 00:24:36 +04:00
AidarKC
578b526f96
Скорректировать main к базе 553a1f1 и UI из Pixel
2026-06-10 23:03:01 +04:00
AidarKC
e3061b46f9
Связи: финальный вид сияющих связей
...
Перенести финальный плазменный рендер связей из коммита Pixel 2559f1e6 в main.
2026-06-10 19:00:22 +04:00
AidarKC
9ca469a075
solana: усилить проверку Pyth oracle в shine_payments
2026-06-10 02:25:45 +04:00
AidarKC
5981d3f871
solana: привязать singleton pda в shine_payments
2026-06-09 23:10:20 +04:00
AidarKC
fb0c5ad3f8
audit: сохранить отчёт по Solana
2026-06-09 23:09:21 +04:00
AidarKC
e5fe925023
solana: защитить economy config в shine_users
2026-06-09 23:04:03 +04:00
AidarKC
b83e8c3979
solana: удалить неиспользуемый модуль common
2026-06-09 22:48:59 +04:00
AidarKC
0744ac3163
fix(ui): починить прямые ссылки профиля и связей
2026-06-09 22:32:02 +04:00
AidarKC
105a56499d
merge(ui): влить pixel-08.06 в main
2026-06-09 22:20:49 +04:00
AidarKC and Claude Opus 4.8
2bd27cd73b
Связи: вернуть лабораторию в ветку (для просмотра графа на моках)
...
Откат удаления из aed64e7 : lab.js снова в репозитории, статический импорт в network-view.js,
строка lab.js убрана из .gitignore. Лаборатория /network-view/lab нужна для демонстрации/проверки
графа на мок-данных без бэкенда. Бамп client.version → 1.2.141.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-09 19:23:40 +03:00
AidarKC and Claude Opus 4.8
aed64e76a7
Связи: лаборатория только локально (исключена из репозитория)
...
- shine-UI/js/pages/network/lab.js убран из git (git rm --cached) и добавлен в .gitignore:
на сервере лаборатория не нужна (там реальные данные), локально файл остаётся и работает.
- network-view.js: статический импорт lab.js заменён на ДИНАМИЧЕСКИЙ с фолбэком — если файла
нет (прод/сервер), реальный экран «Связи» не ломается, а заход на /network-view/lab уводит
на обычный экран. Локально лаборатория грузится как прежде.
- Документация фичи отражает, что lab.js — локальный (в .gitignore).
- Бамп client.version → 1.2.140.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-09 19:12:48 +03:00
AidarKC and Claude Opus 4.8
abfd073de8
Связи: чистка мёртвого кода в движке (lerp, неиспользуемые easing)
...
- Убран механизм lerpX/lerpY: координаты для отрисовки берутся из n.x/n.y, lerp нигде
не читался кроме условия заморозки (lerpSettling). Удалены поля, advanceLerp(), EDGE_LERP
и lerpSettling — граф засыпает чуть раньше (без визуальных изменений; проверено: frozen=true).
- Удалены неиспользуемые cubicBezier() и EASE_BLOOM (easing теперь делает CSS); easeOutCubic
оставлен (нужен в stepTween для фолбэк-центрирования).
- Документация фичи актуализирована (убрана заметка про lerp как кандидата на чистку).
- Бамп client.version → 1.2.139.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-09 18:20:00 +03:00
AidarKC and Claude Opus 4.8
41edd1423c
Связи: двухслойные линии-световоды, живой фон и стеклянные фильтры
...
- Сияющие связи — двухслойный неоновый «световод»: размытый glow (4px, blur 2px,
opacity 0.4) + тонкий чёткий core (1.5px, #e0f7fc). Объёмное OLED-свечение,
линия остаётся изящной. Оба слоя растут синхронно (общий dashoffset).
- Обычные линии — тоньше (1.0–1.2px) и глубокий уход в прозрачность (0.42 → 0.07),
чтобы матовые связи не спорили с сияющими.
- Живой фон-«небула»: глубокое размытое сине-голубое облако под центром, медленная
пульсация радиуса/яркости + переливы индиго↔ультрамарин (hue-rotate, 7с).
- Стеклянные чипы фильтров (frosted glass): rgba(255,255,255,0.03) + backdrop blur(12px)
+ граница 0.5px solid rgba(255,255,255,0.1); активный подсвечен сине-голубым.
- Бамп client.version → 1.2.138; документация фичи обновлена.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-09 18:01:36 +03:00
AidarKC
471fde78c1
ESP32: ужесточить touch UX и обновить инструкции
2026-06-09 18:30:12 +04:00
AidarKC and Claude Opus 4.8
3e4759a0c9
Связи: полировка карты связей (свечение, прорастание линий, CSS-фильтры)
...
- Линии: тонкие дуги Безье (градиент неон-центр → цвет роли); связь к «сияющему»
монолитно светится статичной тенью drop-shadow (без бегущих импульсов).
- Прорастание новых линий из центра: stroke-dasharray/dashoffset синхронно с
разлётом узла (кончик трекает аватарку); старые линии исчезают мгновенно.
- Ghost-слой: только аватарки (без линий), 1000мс — нет висящих «ошмётков».
- CSS-bloom разлёта на компоновщике (устойчив к троттлингу rAF; завершение по таймеру).
- Сияющие узлы: мягкая медленная пульсация 3.6с (многослойная box-shadow + SVG-ореол);
тестовые фото-аватарки.
- Фильтры слоёв в лаборатории + фикс перехвата click сценой (stopPropagation на чипах);
фейд скрываемых на месте (opacity 0 + scale 0.8, 300мс), фиксация без физики (ноль тряски).
- Бамп client.version → 1.2.137; обновлена документация фичи.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-09 17:06:45 +03:00
AidarKC
b5276890fb
ESP32: обновить подпись и выровнять индикаторы HOME
2026-06-09 17:52:33 +04:00
AidarKC
1488bc3d6d
ESP32: доработать HOME экран и поток секретов
2026-06-09 17:44:56 +04:00
AidarKC
f4e7210a40
ESP32: добавить NAV v8 с account и Wi-Fi reconnect
2026-06-09 16:14:24 +04:00
AidarKC
e385bb6bf9
ESP32: зафиксировать промежуточный NAV v6 UI прототип
2026-06-09 15:22:45 +04:00
AidarKC and Claude Opus 4.8
f56e531384
Связи: интерактивная карта связей (force-directed graph)
...
Переработка экрана «Связи» в интерактивный нод-граф с премиальными переходами.
Движок (js/pages/network/force-graph.js):
- diffing-переходы: общие узлы перелетают, новые расцветают каскадом, исчезнувшие — Ghost-слой (800мс, на месте);
- мягкая радиальная пружина + отталкивание (органичная орбита), упругий влёт фокуса;
- динамическая вязкость на старте (трение 0.92→0.82, отталкивание ослаблено) — мягкий разлёт без тряски;
- жёсткая заморозка (kill-switch) при затухании — нет «треска», экономия батареи;
- линии — SVG <path> Безье (изогнутые нити), прорастание; жесты pan с инерцией;
- хард-лимит DOM-аватарок (остальное — SVG-точки).
Интеграция и UX:
- adapter.js: getUserConnectionsGraph → модель движка (сервер не трогаем, read-only);
- фильтры (Все/Семья/Друзья/Сияющие), контекстное меню (node-menu.js), нижний сниппет, профиль;
- прицел в центре, дыхание фокуса, свечение сияющих;
- лаборатория network-view/lab на мок-данных (networkGraphUsers) для тестов без бэкенда.
Документация: shine-UI/Dev_Docs/features/interactive-network-graph.md.
Бамп client.version 1.2.135 -> 1.2.136.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-09 12:43:56 +03:00
AidarKC
32606fe1c2
ESP32: зафиксировать рабочий LVGL nav prototype и тесты
2026-06-08 18:39:11 +04:00
AidarKC
a8734846a0
ESP32: добавить LVGL тесты и отметить рабочий hybrid touch test
2026-06-08 16:56:00 +04:00
AidarKC
ad0edf3c88
ESP32: зафиксировать тесты и нерабочий LVGL/UI вариант
2026-06-08 15:35:27 +04:00
AidarKC
66975862f7
ESP32: временно отключить PIN-вход в subserver UI
2026-06-08 12:29:47 +04:00
AidarKC
b9185e761b
ESP32: добавить UI сабсервера, PIN-ввод пока не работает
2026-06-08 12:25:54 +04:00
AidarKC
885cf463a7
Уточнить финальный экран devnet topup
2026-06-07 11:26:09 +04:00
AidarKC
689f35fea2
Доработать клиентский UI Solana-регистрации
2026-06-07 11:19:58 +04:00
AidarKC
6bf5d1d5ed
Исправить клиентскую Solana-регистрацию после ухода от Anchor
2026-06-07 10:58:06 +04:00
AidarKC
b0b8c7a445
Перевести shine_payments на новый program id и подтвердить e2e
2026-06-07 10:00:39 +04:00
AidarKC
d25c19cdaa
Исправить чтение state в shine_payments и описать e2e тест
2026-06-06 17:12:26 +04:00
AidarKC
89d06d317b
Переписать shine_payments и обновить тестовый UI с известным багом state
2026-06-06 16:58:57 +04:00
AidarKC
c5ec32f87a
Обновить Telegram-бота, документацию и связанные доработки
2026-06-06 13:45:02 +04:00
AidarKC
ce5c348023
Убрать v2 из economy seed shine_users
2026-06-05 11:42:21 +04:00
AidarKC
832eea5889
Переписать shine_users и shine_login_guard на чистый Rust
2026-06-04 23:05:45 +04:00
AidarKC
60049442f1
Зафиксировать все текущие изменения проекта
2026-06-04 22:27:09 +04:00
AidarKC
624557ebfd
Удалить старый путь документа формата PDA
2026-06-04 22:17:33 +04:00
AidarKC
6b0379bfdc
Добавить спецификации Solana программ и вынести формат PDA
2026-06-04 22:17:17 +04:00
AidarKC
a9510a6d36
Обновить lazy-import Solana PDA под новый формат
2026-06-04 14:33:42 +04:00
AidarKC
59e4156bb9
Удалить obsolete server UI и подчистить ссылки
2026-06-04 14:25:59 +04:00
AidarKC
de9606519a
Починить native Ed25519 update_user_pda без OOM
2026-06-04 13:47:47 +04:00
AidarKC
eeb115584d
Добавить диагностику server PDA и баланс device (не проверено)
2026-06-03 16:12:40 +04:00
AidarKC
ee3721dfa4
Исправить DEVNET topup и автоподстановку пароля
2026-06-03 15:57:49 +04:00
AidarKC
239cc231ea
Снимок состояния перед фиксом DEVNET topup и автоподстановки пароля
2026-06-03 15:56:17 +04:00
AidarKC
4bd4df7b09
Добавить переход в server UI и DEVNET topup
2026-06-03 15:21:55 +04:00
AidarKC
d12371b84f
Перенести server UI в shine-UI и объединить PDA-модуль
2026-06-03 15:11:26 +04:00
AidarKC
c97b3e3ec3
Снимок состояния до переноса серверного UI
2026-06-03 14:49:03 +04:00
AidarKC
2c2aad1355
Убраны непроверенные готовые фичи и перенесён QR-план
2026-06-03 14:20:45 +04:00
AidarKC
9949935bcc
Добавить обработку длинных voice/audio в агент-боте
2026-06-03 00:18:30 +04:00
AidarKC
35fc6ebf62
Сделана компактная кнопка показа ключей в регистрации
2026-06-02 16:43:38 +04:00
AidarKC
d2205648e6
Сделана компактная кнопка скрытия ключей в UI
2026-06-02 16:40:58 +04:00
AidarKC
68ed93dd24
Переведены ключи UI в base58 и обновлены deploy defaults
2026-06-02 16:34:37 +04:00
AidarKC
a06b76b800
Обновлён server UI и приватные ключи переведены в base58
2026-06-02 15:52:22 +04:00
AidarKC
67f882b9bc
Добавлен контур server-backup для shineup.me и регламент обновляемых бэкапов
2026-06-01 13:05:54 +04:00