Инициализация мета-репо: карта репозиториев, решения (ADR), экономика токена, трекер задач

This commit is contained in:
Caffeine
2026-09-09 18:11:34 +03:00
commit ed7d85b3dd
4 changed files with 172 additions and 0 deletions
+51
View File
@@ -0,0 +1,51 @@
# DECISIONS.md — журнал решений (ADR)
Каждое решение — короткая запись, чтобы потом не гадать, почему всё устроено так.
Формат: дата, статус (принято/рассмотрение/заменено), суть, аргументы за/против, результат.
---
## ADR-001 — Используем свой токен на pump.fun (мемкойн Binary Rocket)
- **Дата:** 2026-09-09
- **Статус:** принято
- **Суть:** выпускаем СВОЙ токен на pump.fun, а не пользуемся чужим.
- **За:** бренд/маркетинг, контроль экономики, стимул игрокам, единая валюта ставок.
- **Против:** надо эмитировать и следить за курсом; чужой токен дал бы меньше работы.
- **Решение:** свой токен. decimals = 6, Token-2022, создание через `create_v2` (по доке pump.fun).
## ADR-002 — Курс живой рыночный (Способ 1)
- **Дата:** 2026-09-09
- **Статус:** принято
- **Суть:** вне игры баланс — в фантиках, курс берётся с рынка (bonding curve/AMM pump.fun).
Ввод = swap SOL→фантики, вывод = swap фантики→SOL. Никакой фикс-привязки/стейблока.
- **За:** нативно pump.fun, привычно игроку-трейдеру, технически проще, маркетинг (рост/падение токена).
- **Против:** баланс «гуляет» с рынком; определённым аудиториям неудобно.
- **Решение:** Способ 1. (Это и диктует, что ставки идут фантиками через контракт.)
## ADR-003 — Ставки идут фантиками через контракт
- **Дата:** 2026-09-09
- **Статус:** принято (вытекает из ADR-002)
- **Суть:** игрок ставит токен, контракт держит фантики в своём ATA-ваулте и платит фантиками.
- **Следствие:** контракт переводится с нативного SOL (lamports) на SPL-токен — это ядро Фазы 1.
- **Против:** трогаем хорошо работающий контракт; но без этого сценарий ввода-игры-вывода не работает.
## ADR-004 — Ввод/вывод через pump.fun swap (`POST /agents/swap`)
- **Дата:** 2026-09-09
- **Статус:** принято
- **Суть:** пополнение = `inputMint: NATIVE_MINT(SOL), outputMint: наш_mint`; вывод = наоборот.
Клиент на бэкенде (Ktor `PumpApiClient`) уже готов в `smart-updown-server`.
- **За:** возвращает готовую подписанную swap-транзакцию, бэкенд не держит ликвидность.
- **Против:** весь ввод/вывод завязан на доступность pump.fun API.
## ADR-05 (идея) — мета-репозиторий для документации и трекинга
- **Дата:** 2026-09-09
- **Статус:** принято
- **Суть:** создать `pump-game-ops`, где живут карта репозиториев, решения, экономика и список задач.
- **За:** единая точка оркестрации, не плаваем по чату. **Против:** риск превратиться во второй трекер.
---
### Развилки, которые ещё предстоит решить (не закрыты)
- **Цена «вверх/вниз»:** контракт сравнивает entry/exit_price — что это: цена нашего фантика, цена SOL или отдельный бенчмарк? (нуждается в решении до Фазы 1).
- **Кто держит ликвидность swap** на старте и межторговая комиссия pump.fun — чей счёт.
- Эмиссия: разовая (скрипт) или постоянная (рабочий процесс эмиссии в бэкенде).
+27
View File
@@ -0,0 +1,27 @@
# ECONOMY.md — экономика игрового токена (заполняется в Фазе 0)
Пока это заготовка. Цель — зафиксировать **все ключевые параметры токена и экономики**,
чтобы дальше ссылаться на них, а не вспоминать в чате.
## Токен
- **Название:** Binary Rocket (уточнить финальное имя/символ)
- **Тип:** свой мемкойн на pump.fun, Solid SPL / **Token-2022**
- **decimals:** `6` (по доке pump.fun `create_v2`)
- **Эмитент:** наш адрес (кошелёк/программа)
- **Mint-адрес:** *(заполнить после создания — в Фазе 4)*
- **Bonding curve:** *(заполнить после создания)*
- **URI метаданных:** *(IPFS)*
## Курс и балансы
- **Курс:** живой рыночный (ADR-002). Ввод/вывод через swap pump.fun; баланс игрока — в фантиках.
- **Фантик = 1 токен-единица/10^6.**
- **Баланс игрока:** в ATA (Associated Token Account) на mint; читается `getTokenAccountBalance`.
## Вход/выход денег
- **Пополнение:** `POST /agents/swap`, `inputMint=NATIVE_MINT(SOL)`, `outputMint=наш_mint`.
- **Вывод:** `POST /agents/swap`, `inputMint=наш_mint`, `outputMint=NATIVE_MINT(SOL)`.
- Комиссия pump.fun — *(решить, чей счёт)*.
- Ликвидность на старте — *(решить)*.
## Что стоит фиксированно
- mint-адрес, bonding-curve, decimals, эмитент — версионируются в конфиге бэкенда + в git.