Перевести shine_payments на новый program id и подтвердить e2e
This commit is contained in:
parent
d25c19cdaa
commit
b0b8c7a445
@ -182,4 +182,29 @@
|
|||||||
|
|
||||||
## Статус
|
## Статус
|
||||||
|
|
||||||
- `pending`
|
- `done`
|
||||||
|
|
||||||
|
## Итог выполнения
|
||||||
|
|
||||||
|
- новый `shine_payments` задеплоен в devnet с `program id`:
|
||||||
|
- `c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW`
|
||||||
|
- старый `shine_payments`:
|
||||||
|
- `m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR`
|
||||||
|
- закрыт, лампорты возвращены на базовый DAO-кошелёк
|
||||||
|
- HTML UI переведён на новый `program id`
|
||||||
|
- подтверждены:
|
||||||
|
- `init`
|
||||||
|
- `buy_ticket_usd`
|
||||||
|
- `buy_ticket_sol`
|
||||||
|
- `grant_manager_limits`
|
||||||
|
- `manager_add_ticket` для `Q1/Q2/Q3`
|
||||||
|
- `change_ticket_recipient`
|
||||||
|
- `update_coef_limit`
|
||||||
|
- `step_payout` по порядку `Q1 -> Q2 -> Q3`
|
||||||
|
- повторный возврат приоритета в `Q1` после новой покупки
|
||||||
|
- итоговые агрегаты очередей:
|
||||||
|
- `Q1 total=4, paid=4, sum_total=780, sum_paid=780`
|
||||||
|
- `Q2 total=1, paid=1, sum_total=60, sum_paid=60`
|
||||||
|
- `Q3 total=1, paid=1, sum_total=70, sum_paid=70`
|
||||||
|
- временные тестовые кошельки собраны обратно в базовый DAO-кошелёк
|
||||||
|
- в `inflow_vault` остался только rent-минимум PDA
|
||||||
|
|||||||
@ -48,7 +48,7 @@ DAO в текущем виде не является отдельной Anchor-
|
|||||||
| --- | --- |
|
| --- | --- |
|
||||||
| `shine_login_guard` | `3xkopA7cXagxzMFrKdv3NCBfV6BKiRJCk69kr27M2sRo` |
|
| `shine_login_guard` | `3xkopA7cXagxzMFrKdv3NCBfV6BKiRJCk69kr27M2sRo` |
|
||||||
| `shine_users` | `FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm` |
|
| `shine_users` | `FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm` |
|
||||||
| `shine_payments` | `m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR` |
|
| `shine_payments` | `c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW` |
|
||||||
|
|
||||||
Если эти адреса меняются, нужно синхронно обновить:
|
Если эти адреса меняются, нужно синхронно обновить:
|
||||||
|
|
||||||
|
|||||||
@ -28,7 +28,7 @@
|
|||||||
| --- | --- |
|
| --- | --- |
|
||||||
| `SHINE_LOGIN_GUARD_PROGRAM_ID` | `3xkopA7cXagxzMFrKdv3NCBfV6BKiRJCk69kr27M2sRo` |
|
| `SHINE_LOGIN_GUARD_PROGRAM_ID` | `3xkopA7cXagxzMFrKdv3NCBfV6BKiRJCk69kr27M2sRo` |
|
||||||
| `SHINE_USERS_PROGRAM_ID` | `FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm` |
|
| `SHINE_USERS_PROGRAM_ID` | `FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm` |
|
||||||
| `SHINE_PAYMENTS_PROGRAM_ID` | `m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR` |
|
| `SHINE_PAYMENTS_PROGRAM_ID` | `c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW` |
|
||||||
| `DAO_AUTHORITY` | `FUc28vNixp7F3nnkpGVt6nuJbgvJ4429v4B5wS52Df6P` |
|
| `DAO_AUTHORITY` | `FUc28vNixp7F3nnkpGVt6nuJbgvJ4429v4B5wS52Df6P` |
|
||||||
| `DAO_TREASURY_WALLET` | `FUc28vNixp7F3nnkpGVt6nuJbgvJ4429v4B5wS52Df6P` |
|
| `DAO_TREASURY_WALLET` | `FUc28vNixp7F3nnkpGVt6nuJbgvJ4429v4B5wS52Df6P` |
|
||||||
|
|
||||||
|
|||||||
@ -16,7 +16,7 @@
|
|||||||
- `shine_login_guard`:
|
- `shine_login_guard`:
|
||||||
`3xkopA7cXagxzMFrKdv3NCBfV6BKiRJCk69kr27M2sRo`
|
`3xkopA7cXagxzMFrKdv3NCBfV6BKiRJCk69kr27M2sRo`
|
||||||
- `shine_payments`:
|
- `shine_payments`:
|
||||||
`m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR`
|
`c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW`
|
||||||
|
|
||||||
## Подтверждение деплоя
|
## Подтверждение деплоя
|
||||||
|
|
||||||
|
|||||||
@ -43,7 +43,7 @@ shine-UI/server-ui.html
|
|||||||
|
|
||||||
Актуальные адреса программ Solana (devnet):
|
Актуальные адреса программ Solana (devnet):
|
||||||
- `shine_users`: `FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm`
|
- `shine_users`: `FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm`
|
||||||
- `shine_payments`: `m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR`
|
- `shine_payments`: `c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW`
|
||||||
|
|
||||||
Подробнее: `Dev_Docs/Инициализация_Solana_регистрации/README.md`
|
Подробнее: `Dev_Docs/Инициализация_Solana_регистрации/README.md`
|
||||||
|
|
||||||
|
|||||||
@ -16,6 +16,6 @@ public final class SolanaProgramsConfig {
|
|||||||
|
|
||||||
// Отдельно фиксируем адреса связанной инфраструктуры, чтобы UI/сервер ссылались одинаково.
|
// Отдельно фиксируем адреса связанной инфраструктуры, чтобы UI/сервер ссылались одинаково.
|
||||||
public static final String SHINE_LOGIN_GUARD_PROGRAM_ID = "3xkopA7cXagxzMFrKdv3NCBfV6BKiRJCk69kr27M2sRo";
|
public static final String SHINE_LOGIN_GUARD_PROGRAM_ID = "3xkopA7cXagxzMFrKdv3NCBfV6BKiRJCk69kr27M2sRo";
|
||||||
public static final String SHINE_PAYMENTS_PROGRAM_ID = "m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR";
|
public static final String SHINE_PAYMENTS_PROGRAM_ID = "c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,2 +1,2 @@
|
|||||||
client.version=1.2.131
|
client.version=1.2.132
|
||||||
server.version=1.2.123
|
server.version=1.2.124
|
||||||
|
|||||||
@ -5,4 +5,4 @@ export const SOLANA_ENDPOINT_DEFAULT = 'https://api.devnet.solana.com';
|
|||||||
export const SHINE_USERS_PROGRAM_ID = 'FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm';
|
export const SHINE_USERS_PROGRAM_ID = 'FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm';
|
||||||
export const SHINE_USERS_ECONOMY_CONFIG_SEED = 'shine_users_economy_config';
|
export const SHINE_USERS_ECONOMY_CONFIG_SEED = 'shine_users_economy_config';
|
||||||
export const SHINE_LOGIN_GUARD_PROGRAM_ID = '3xkopA7cXagxzMFrKdv3NCBfV6BKiRJCk69kr27M2sRo';
|
export const SHINE_LOGIN_GUARD_PROGRAM_ID = '3xkopA7cXagxzMFrKdv3NCBfV6BKiRJCk69kr27M2sRo';
|
||||||
export const SHINE_PAYMENTS_PROGRAM_ID = 'm48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR';
|
export const SHINE_PAYMENTS_PROGRAM_ID = 'c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW';
|
||||||
|
|||||||
@ -6,12 +6,12 @@ resolution = true
|
|||||||
skip-lint = false
|
skip-lint = false
|
||||||
|
|
||||||
[programs.devnet]
|
[programs.devnet]
|
||||||
shine_payments = "m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR"
|
shine_payments = "c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW"
|
||||||
shine_users = "FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm"
|
shine_users = "FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm"
|
||||||
shine_login_guard = "3xkopA7cXagxzMFrKdv3NCBfV6BKiRJCk69kr27M2sRo"
|
shine_login_guard = "3xkopA7cXagxzMFrKdv3NCBfV6BKiRJCk69kr27M2sRo"
|
||||||
|
|
||||||
[programs.localnet]
|
[programs.localnet]
|
||||||
shine_payments = "m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR"
|
shine_payments = "c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW"
|
||||||
shine_users = "FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm"
|
shine_users = "FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm"
|
||||||
shine_login_guard = "3xkopA7cXagxzMFrKdv3NCBfV6BKiRJCk69kr27M2sRo"
|
shine_login_guard = "3xkopA7cXagxzMFrKdv3NCBfV6BKiRJCk69kr27M2sRo"
|
||||||
|
|
||||||
|
|||||||
@ -46,5 +46,5 @@ tasks.register("checkUiRemote", Exec) {
|
|||||||
"grep -n 'test-solana-tickets.shineup.me\\|test-solana-tickets.shiningpeople.ru' /home/player/SHiNE/caddy/Caddyfile; " +
|
"grep -n 'test-solana-tickets.shineup.me\\|test-solana-tickets.shiningpeople.ru' /home/player/SHiNE/caddy/Caddyfile; " +
|
||||||
"echo; " +
|
"echo; " +
|
||||||
"echo 'Program ID в загруженных html:'; " +
|
"echo 'Program ID в загруженных html:'; " +
|
||||||
"grep -R -n 'm48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR' /home/player/sites/test-solana-tickets.shineup.me/*.html"
|
"grep -R -n 'c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW' /home/player/sites/test-solana-tickets.shineup.me/*.html"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -22,7 +22,7 @@
|
|||||||
|
|
||||||
Текущий program id:
|
Текущий program id:
|
||||||
|
|
||||||
- `m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR`
|
- `c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW`
|
||||||
|
|
||||||
## 2. Основная модель
|
## 2. Основная модель
|
||||||
|
|
||||||
|
|||||||
@ -6,7 +6,7 @@
|
|||||||
// =========================
|
// =========================
|
||||||
|
|
||||||
/// `SHINE_PAYMENTS_PROGRAM_ID` — адрес программы `shine_payments` для текущего окружения.
|
/// `SHINE_PAYMENTS_PROGRAM_ID` — адрес программы `shine_payments` для текущего окружения.
|
||||||
pub const SHINE_PAYMENTS_PROGRAM_ID: &str = "m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR";
|
pub const SHINE_PAYMENTS_PROGRAM_ID: &str = "c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW";
|
||||||
|
|
||||||
/// `SHINE_USERS_PROGRAM_ID` — адрес программы `shine_users` для текущего окружения.
|
/// `SHINE_USERS_PROGRAM_ID` — адрес программы `shine_users` для текущего окружения.
|
||||||
pub const SHINE_USERS_PROGRAM_ID: &str = "FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm";
|
pub const SHINE_USERS_PROGRAM_ID: &str = "FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm";
|
||||||
|
|||||||
@ -14,7 +14,7 @@ use std::str::FromStr;
|
|||||||
|
|
||||||
pub mod settings;
|
pub mod settings;
|
||||||
|
|
||||||
solana_program::declare_id!("m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR");
|
solana_program::declare_id!("c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW");
|
||||||
entrypoint!(process_instruction);
|
entrypoint!(process_instruction);
|
||||||
|
|
||||||
const IX_INIT: u8 = 1;
|
const IX_INIT: u8 = 1;
|
||||||
|
|||||||
@ -110,7 +110,7 @@
|
|||||||
|
|
||||||
<script src="https://unpkg.com/@solana/web3.js@1.95.3/lib/index.iife.min.js"></script>
|
<script src="https://unpkg.com/@solana/web3.js@1.95.3/lib/index.iife.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
const PROGRAM_ID = new solanaWeb3.PublicKey("m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR");
|
const PROGRAM_ID = new solanaWeb3.PublicKey("c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW");
|
||||||
const USERS_PROGRAM_ID = new solanaWeb3.PublicKey("FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm");
|
const USERS_PROGRAM_ID = new solanaWeb3.PublicKey("FZS1YctoeEhCkZ5VTjsysUFAXR8CqxYztcLboXcg2Rpm");
|
||||||
const RPC_URL = "https://api.devnet.solana.com";
|
const RPC_URL = "https://api.devnet.solana.com";
|
||||||
const connection = new solanaWeb3.Connection(RPC_URL, "confirmed");
|
const connection = new solanaWeb3.Connection(RPC_URL, "confirmed");
|
||||||
|
|||||||
@ -79,7 +79,7 @@
|
|||||||
|
|
||||||
<script src="https://unpkg.com/@solana/web3.js@1.95.3/lib/index.iife.min.js"></script>
|
<script src="https://unpkg.com/@solana/web3.js@1.95.3/lib/index.iife.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
const PROGRAM_ID = new solanaWeb3.PublicKey("m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR");
|
const PROGRAM_ID = new solanaWeb3.PublicKey("c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW");
|
||||||
const RPC_URL = "https://api.devnet.solana.com";
|
const RPC_URL = "https://api.devnet.solana.com";
|
||||||
const ORACLE_ACCOUNT = new solanaWeb3.PublicKey("7UVimffxr9ow1uXYxsr4LHAcV58mLzhmwaeKvJ1pjLiE");
|
const ORACLE_ACCOUNT = new solanaWeb3.PublicKey("7UVimffxr9ow1uXYxsr4LHAcV58mLzhmwaeKvJ1pjLiE");
|
||||||
const connection = new solanaWeb3.Connection(RPC_URL, "confirmed");
|
const connection = new solanaWeb3.Connection(RPC_URL, "confirmed");
|
||||||
|
|||||||
@ -84,7 +84,7 @@
|
|||||||
|
|
||||||
<script src="https://unpkg.com/@solana/web3.js@1.95.3/lib/index.iife.min.js"></script>
|
<script src="https://unpkg.com/@solana/web3.js@1.95.3/lib/index.iife.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
const PROGRAM_ID = new solanaWeb3.PublicKey("m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR");
|
const PROGRAM_ID = new solanaWeb3.PublicKey("c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW");
|
||||||
const RPC_URL = "https://api.devnet.solana.com";
|
const RPC_URL = "https://api.devnet.solana.com";
|
||||||
const connection = new solanaWeb3.Connection(RPC_URL, "confirmed");
|
const connection = new solanaWeb3.Connection(RPC_URL, "confirmed");
|
||||||
const SEEDS = {
|
const SEEDS = {
|
||||||
|
|||||||
@ -77,7 +77,7 @@
|
|||||||
|
|
||||||
<script src="https://unpkg.com/@solana/web3.js@1.95.3/lib/index.iife.min.js"></script>
|
<script src="https://unpkg.com/@solana/web3.js@1.95.3/lib/index.iife.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
const PROGRAM_ID = new solanaWeb3.PublicKey("m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR");
|
const PROGRAM_ID = new solanaWeb3.PublicKey("c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW");
|
||||||
const RPC_URL = "https://api.devnet.solana.com";
|
const RPC_URL = "https://api.devnet.solana.com";
|
||||||
const connection = new solanaWeb3.Connection(RPC_URL, "confirmed");
|
const connection = new solanaWeb3.Connection(RPC_URL, "confirmed");
|
||||||
const SEEDS = {
|
const SEEDS = {
|
||||||
|
|||||||
@ -77,7 +77,7 @@
|
|||||||
|
|
||||||
<script src="https://unpkg.com/@solana/web3.js@1.95.3/lib/index.iife.min.js"></script>
|
<script src="https://unpkg.com/@solana/web3.js@1.95.3/lib/index.iife.min.js"></script>
|
||||||
<script>
|
<script>
|
||||||
const PROGRAM_ID = new solanaWeb3.PublicKey("m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR");
|
const PROGRAM_ID = new solanaWeb3.PublicKey("c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW");
|
||||||
const RPC_URL = "https://api.devnet.solana.com";
|
const RPC_URL = "https://api.devnet.solana.com";
|
||||||
const ORACLE_ACCOUNT = new solanaWeb3.PublicKey("7UVimffxr9ow1uXYxsr4LHAcV58mLzhmwaeKvJ1pjLiE");
|
const ORACLE_ACCOUNT = new solanaWeb3.PublicKey("7UVimffxr9ow1uXYxsr4LHAcV58mLzhmwaeKvJ1pjLiE");
|
||||||
const connection = new solanaWeb3.Connection(RPC_URL, "confirmed");
|
const connection = new solanaWeb3.Connection(RPC_URL, "confirmed");
|
||||||
|
|||||||
@ -11,7 +11,7 @@ pub const USERS_ECONOMY_CONFIG_SPACE: usize = 32;
|
|||||||
pub const DAO_AUTHORITY: &str = "FUc28vNixp7F3nnkpGVt6nuJbgvJ4429v4B5wS52Df6P";
|
pub const DAO_AUTHORITY: &str = "FUc28vNixp7F3nnkpGVt6nuJbgvJ4429v4B5wS52Df6P";
|
||||||
|
|
||||||
/// Адрес программы `shine_payments`, от которой вычисляется PDA inflow-вольта.
|
/// Адрес программы `shine_payments`, от которой вычисляется PDA inflow-вольта.
|
||||||
pub const SHINE_PAYMENTS_PROGRAM_ID: &str = "m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR";
|
pub const SHINE_PAYMENTS_PROGRAM_ID: &str = "c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW";
|
||||||
/// Seed inflow-вольта в программе `shine_payments`.
|
/// Seed inflow-вольта в программе `shine_payments`.
|
||||||
pub const SHINE_PAYMENTS_INFLOW_VAULT_SEED: &[u8] = b"shine_payments_inflow_vault";
|
pub const SHINE_PAYMENTS_INFLOW_VAULT_SEED: &[u8] = b"shine_payments_inflow_vault";
|
||||||
/// Адрес отдельной программы проверки премиальности логина.
|
/// Адрес отдельной программы проверки премиальности логина.
|
||||||
|
|||||||
@ -31,7 +31,7 @@ const LIMIT_STEP = 10_000n;
|
|||||||
const START_BONUS_LIMIT = 100_000n;
|
const START_BONUS_LIMIT = 100_000n;
|
||||||
const USERS_ECONOMY_CONFIG_SEED = "shine_users_economy_config";
|
const USERS_ECONOMY_CONFIG_SEED = "shine_users_economy_config";
|
||||||
const SHINE_PAYMENTS_PROGRAM_ID = new PublicKey(
|
const SHINE_PAYMENTS_PROGRAM_ID = new PublicKey(
|
||||||
"m48pWRGWrMj3TEHjuU4zsp5Gju4e7ZaPovk8RcVt7kR"
|
"c4yTa4JT9EtQDCBX9LmWFK6T2gp4JGsuymFbom2EudW"
|
||||||
);
|
);
|
||||||
const SHINE_PAYMENTS_INFLOW_VAULT_SEED = "shine_payments_inflow_vault";
|
const SHINE_PAYMENTS_INFLOW_VAULT_SEED = "shine_payments_inflow_vault";
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user