Skip to main content

streak_api/
consts.rs

1use solana_program::{pubkey, pubkey::Pubkey};
2
3/// Authority for `Initialize`. Replace with your deploy multisig before mainnet.
4pub const ADMIN_ADDRESS: Pubkey = pubkey!("6asgn8Vq8KKSQx4wm5zVfEfB76wqGVpEpWxajGkbQ8yr");
5
6/// Signs executor-gated instructions: `AdminPayout`. Replace before production.
7pub const EXECUTOR_ADDRESS: Pubkey =
8    pubkey!("3B1WXgrV68V6ayymC7C8eVoCMeqeJLR7HWXkxfQxLUeF");
9
10/// Basis points denominator (100%).
11pub const MAX_BPS: u16 = 10_000;
12
13/// PDA seed for the `Treasury` account.
14pub const TREASURY: &[u8] = b"treasury";
15
16/// Ticket revenue split to daily pool (BPS).
17pub const TICKET_DAILY_BPS: u16 = 7000;
18
19/// Ticket revenue split to weekly pool (BPS).
20pub const TICKET_WEEKLY_BPS: u16 = 1500;
21
22/// Ticket revenue split to buyback reserve (BPS).
23pub const TICKET_BUYBACK_BPS: u16 = 1000;
24
25/// Ticket revenue split to team (BPS).
26pub const TICKET_TEAM_BPS: u16 = 500;
27
28/// SPL USDC recipient for team-fee legs.
29pub const FEE_COLLECTOR: Pubkey = pubkey!("FEeB92JDVmVuuoaoTjKyfDPPrLTWPGg2EJTrY3TmTx3T");
30
31/// SPL USDC mint.
32/// Devnet:  GAmHPNMcgh9BTpe3DWirqMwvYCeDskE2im6fUhZyukJp  (custom devnet USDC)
33/// Mainnet: EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v  (Circle mainnet)
34pub const USDC_MAINNET_MINT: Pubkey = pubkey!("GAmHPNMcgh9BTpe3DWirqMwvYCeDskE2im6fUhZyukJp");
35
36/// Duration of each 5-minute market bucket in seconds.
37/// `open_ts = period * MARKET_BUCKET_SECS`, `close_ts = open_ts + MARKET_BUCKET_SECS`.
38pub const MARKET_BUCKET_SECS: i64 = 300;