Files
SHiNE-server/TODO/Децентрализация/realtime_pda_solana_sync.md
T

31 lines
2.0 KiB
Markdown

# Realtime-синхронизация PDA и Solana
## Зачем
В будущем PDA-записи и Solana-состояние должны автоматически и быстро синхронизироваться с серверным состоянием, чтобы данные пользователей, homeserver-сессии и связанные записи не расходились.
## Что сделать
1. Определить, какие серверные события должны обновлять PDA.
2. Добавить очередь/воркер для надёжной отправки изменений в Solana.
3. Добавить периодическую сверку серверного состояния с PDA.
4. Добавить обработку ошибок, повторов и конфликтов версий.
5. Добавить мониторинг задержек и неуспешных Solana-транзакций.
## Что учесть
- Solana/Anchor-модуль находится в `shine-solana/shine/` и ведётся отдельно от основного server/UI deploy.
- Перед изменениями внутри Solana-модуля нужно читать `shine-solana/shine/AGENTS.md`.
- Основная инструкция по Solana-регистрации находится в `docs/Инициализация_Solana_регистрации/README.md`.
- Формат пользовательской PDA-записи описан в `shine-solana/shine/doc/formats/shine-user-pda-format-v.1.0.md`.
## Документы, которые потом нужно обновить
- `docs/Инициализация_Solana_регистрации/README.md`;
- `docs/Solana_Architecture/README.md`;
- `shine-solana/shine/doc/formats/shine-user-pda-format-v.1.0.md`, если меняется формат PDA.
## Статус
Отложено до этапа децентрализации.