Переписать shine_payments и обновить тестовый UI с известным багом state

This commit is contained in:
AidarKC
2026-06-06 16:58:57 +04:00
parent c5ec32f87a
commit 89d06d317b
18 changed files with 1550 additions and 6578 deletions
File diff suppressed because it is too large Load Diff
@@ -1,5 +1,3 @@
use common::deploy_config;
/// `CONFIG_SEED` — seed PDA основного конфига `shine_payments`.
pub const CONFIG_SEED: &[u8] = b"shine_payments_config";
/// `COEF_LIMIT_SEED` — seed PDA коэффициента, лимита и награды шага выплат.
@@ -12,6 +10,8 @@ pub const INFLOW_VAULT_SEED: &[u8] = b"shine_payments_inflow_vault";
pub const Q1_TICKET_SEED: &[u8] = b"shine_payments_q1_ticket";
/// `Q2_TICKET_SEED` — seed PDA тикетов очереди 2.
pub const Q2_TICKET_SEED: &[u8] = b"shine_payments_q2_ticket";
/// `Q3_TICKET_SEED` — seed PDA тикетов очереди 3.
pub const Q3_TICKET_SEED: &[u8] = b"shine_payments_q3_ticket";
/// `MANAGER_ALLOWANCE_SEED` — seed PDA лимитов менеджера.
pub const MANAGER_ALLOWANCE_SEED: &[u8] = b"shine_p_manager_allow";
@@ -45,10 +45,11 @@ pub const LAMPORTS_PER_SOL: u64 = 1_000_000_000;
/// `ORACLE_MAX_AGE_SECS` — максимальный возраст oracle-цены (в секундах), допустимый для расчетов.
pub const ORACLE_MAX_AGE_SECS: u64 = 120;
/// `PYTH_SOL_USD_FEED_ID` — feed id Pyth для пары SOL/USD (берется из общего deploy-конфига).
pub const PYTH_SOL_USD_FEED_ID: &str = deploy_config::PYTH_SOL_USD_FEED_ID;
/// `PYTH_SOL_USD_ACCOUNT` — адрес аккаунта Pyth price update для SOL/USD (берется из общего deploy-конфига).
pub const PYTH_SOL_USD_ACCOUNT: &str = deploy_config::PYTH_SOL_USD_ACCOUNT;
/// `PYTH_SOL_USD_FEED_ID` — feed id Pyth для пары SOL/USD.
pub const PYTH_SOL_USD_FEED_ID: &str =
"0xef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d";
/// `PYTH_SOL_USD_ACCOUNT` — адрес аккаунта Pyth price update для SOL/USD.
pub const PYTH_SOL_USD_ACCOUNT: &str = "7UVimffxr9ow1uXYxsr4LHAcV58mLzhmwaeKvJ1pjLiE";
/// `DAO_WALLET` — адрес кошелька DAO-казны для `shine_payments` (берется из общего deploy-конфига).
pub const DAO_WALLET: &str = deploy_config::DAO_TREASURY_WALLET;
/// `DAO_WALLET` — адрес кошелька DAO-казны для `shine_payments`.
pub const DAO_WALLET: &str = "FUc28vNixp7F3nnkpGVt6nuJbgvJ4429v4B5wS52Df6P";