shine-solana/shine/programs/DEPLOY_CONFIG_CHECKLIST.md

82 lines
3.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# DEPLOY CONFIG CHECKLIST (Shine Programs)
Документ для подготовки к реальному деплою (mainnet/prod): какие адреса и где заменить.
## 1) Program IDs
1. `shine/programs/shine_payments/src/lib.rs`
- `declare_id!("...")` для `shine_payments`.
2. `shine/programs/shine_users/src/lib.rs`
- `declare_id!("...")` для `shine_users`.
3. `shine/Anchor.toml`
- обновить `programs.devnet` / `programs.localnet` (и при необходимости добавить/обновить секцию под mainnet workflow).
## 2) Shine Payments on-chain settings
Файл: `shine/programs/shine_payments/src/settings.rs`
Обязательные адреса:
1. `DAO_WALLET`
2. `MANAGER_WALLET`
3. `PYTH_SOL_USD_ACCOUNT`
4. `PYTH_SOL_USD_FEED_ID` (идентификатор feed для SOL/USD)
Параметры экономики (по необходимости):
1. `START_COEF_PPM`
2. `START_LIMIT_USD_CENTS`
3. `START_CALL_REWARD_LAMPORTS`
4. `MAX_CALL_REWARD_LAMPORTS`
5. `ORACLE_MAX_AGE_SECS`
## 3) Shine Users on-chain settings
Файл: `shine/programs/shine_users/src/settings.rs`
Обязательные параметры:
1. `REGISTRATION_FEE_RECEIVER` (куда идет комиссия регистрации)
2. `REGISTRATION_FEE_LAMPORTS`
3. при необходимости скорректировать лимитные/бонусные константы:
- `LIMIT_STEP`
- `LAMPORTS_PER_LIMIT_STEP`
- `START_BONUS_LIMIT`
## 4) Web UI constants (hardcoded values)
Проверить и заменить Program ID / Oracle account в HTML:
1. `shine/programs/shine_payments/web/buy_ticket.html`
2. `shine/programs/shine_payments/web/track_ticket.html`
3. `shine/programs/shine_payments/web/admin_tools.html`
4. `shine/programs/shine_payments/web/dao_tools.html`
5. `shine/programs/shine_payments/web/manager_tools.html`
Проверить RPC endpoint для нужной сети в соответствующих страницах.
## 5) Скрипты и окружение
Проверить конфиги и env-файлы, где участвуют адреса:
1. `shine/scripts/**/config.env`
2. `shine/scripts/**/dao.config.env`
3. `shine/scripts/**/governance_token.config.env`
## 6) Проверка перед деплоем
1. `cargo check -p shine_payments`
2. `cargo check -p shine_users`
3. сверить, что `declare_id` совпадает с ключами деплоя программ.
4. убедиться, что `PYTH_SOL_USD_ACCOUNT` читается в выбранной сети.
5. прогнать smoke-тесты UI (buy / track / admin / dao / manager).
## 7) Проверка после деплоя
1. Выполнить `init` для `shine_payments`.
2. Проверить существование PDA:
- `config_pda`
- `coef_limit_pda`
- `queues_pda`
- `inflow_vault_pda`
3. Проверить покупку тикета и шаг выплаты на малой сумме.
4. Проверить `change_ticket_recipient`:
- разрешено для не-next тикета;
- запрещено для next тикета.