SHA256
31 lines
2.0 KiB
Markdown
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.
|
|
|
|
## Статус
|
|
|
|
Отложено до этапа децентрализации.
|