Files
pump-game-ops/TASKS.md
T

6.0 KiB
Raw Blame History

TASKS.md — список задач (трекер проекта)

Здесь живёт весь список задач — не только мои. Трекаем проект целиком. Бинарные составляющие:

  • фаркул/pivotable-задачи (что можно отложить или развернуть иначе) помечаются [pivotable];
  • общие/инфра (деплой, стабильность, мок) — [pump.meta].

Статусы: TODO / IN_PROGRESS / DONE / BLOCKED.


⭐ Актуальное состояние (2026-09-09)

Где мы: Фаза 1 (контракт переведён на фантики) — DONE. Сейчас вход в Фазу 2 (релейер под токен).

Готово:

  • Контракт smart-updown-token — переведён на SPL-токен (фантики), IDL+тесты обновлены. Коммит 45d64d4.
  • Ktor swap-клиент в бэкенде (ввод/вывод) — заготовка.
  • Тестовый фронт test-front — каркас (Phantom, балансы, пополнение/вывод).

В работе / вперёд:

  • Фаза 2 (активная): релейер перевести с SOL на токен (ops/pda/config). После неё + E2E на localnet.
  • Веха «первый щуп»: 👉 как только релейер на фантиках + E2E на localnet прогнаны — через test-front вы самостоятельно щупаете: пополнить фантики → ставка → результат. Это первый реальный user-тест (без Unity).

Параллельные TODO (не блокируют Фазу 2): реальная цена (вместо RandomPriceSource), эмиссия, ликвидность/комиссии swap.


Фаза 0 — Экономика и спека (кросс)

  • TODO ADR-002 зафиксирован, документировать ECONOMY.md: токен, курс (Способ 1), decimals=6, mint-адреса — [pump.meta]
  • DONE Решить «вверх/вниз» — предмет ставки = цена SOL (ADR-006), валюта = фантики
  • TODO Цена SOL: реальный источник вместо RandomPriceSource (оракул/провайдер) — не блокирует Фазу 1
  • TODO Кто держит ликвидность swap и комиссии — [pump.meta]
  • TODO Эмиссия: разовая vs постоянная — [pump.meta]

Фаза 1 — Контракт на токене (ядро) — репо smart-updown-token (копия Smart-game)

  • DONE Создана копия контракта smart-updown-token (ветка main, чистый) — работаем тут
  • DONE Перевести create_bet с SOL (lamports) на SPL-токен: приём фантиков с ATA игрока на ваулт
  • DONE Выплата в close_bet фантиками из ATA-ваулта на ATA игрока
  • DONE state/constants: единицы = token units (decimals=6), + VAULT_SEED
  • DONE Обновить IDL (idl/ + relayer/idl/) + Anchor-тесты (10/10) — коммит 45d64d4
  • TODO Развернуть/поднять localnet стенд для E2E токен-флоу (приёмка на железе)

Фаза 2 — Релейер и цена (АКТИВНАЯ — следующий шаг)

  • IN_PROGRESS SolanaClient/ops: подписывать/отправлять токеновую ставку (ATA + ваулт) — перевести релейер с SOL на токен
  • TODO readGlobal: баланс vault_token вместо SOL; ensureVaultFunded — наливать токен в vault
  • TODO PriceSource: реальная цена (вместо RandomPriceSource)
  • TODO Интеграционный тест релейера на токеновом флоу

Фаза 4 — Бэкенд: задействовать swap

  • DONE Ktor PumpApiClient + POST /agents/swap + DTO + заготовка (в smart-updown-server)
  • TODO Проверить реальный swap на devnet (не мок)
  • TODO Обвязать GameService: ввод/вывод фантиков через swap

Фаза 5 — Фронт (Unity)

  • TODO Кнопки «Пополнить»/«Вывести», баланс в фантиках
  • TODO SolanaBridge.jslib: подпись токеновой create_bet (ATA игрока в ключах)
  • TODO Wallet.cs: баланс в фантиках (ATA + getTokenAccountBalance), CanAfford по токену

Фаза 5b — Тестовый фронт (test-front, для ручной гонки экономики без Unity)

  • DONE Каркас: Phantom, балансы (фантики+SOL), swap пополнение/вывод через /api/pump/swap
  • DONE Ставка вверх/вниз через контракт с поллингом до SETTLED
  • TODO Перевести подпись под токеновую версию контракта (после Фазы 1)
  • TODO Реальный провайдер цены вместо RandomPriceSource (за нами)
  • TODO Развернуть / дать постоянный URL (nginx/podman) — удобно открывать

Фаза 6 — E2E и деплой

  • TODO Полный круг на devnet: создать токен → swap ввод → ставка токеном → раунд → вывод
  • TODO Обновить API.md/INTEGRATION.md, развернуть на mainnet
  • TODO Стабильность: версионировать конфиги, mint-адрес в конфиге

Ссылки

  • Решения/экономика: docs/DECISIONS.md, docs/ECONOMY.md
  • Карта репозиториев: README.md