57 lines
4.4 KiB
Markdown
57 lines
4.4 KiB
Markdown
# TASKS.md — список задач (трекер проекта)
|
||
|
||
Здесь живёт **весь** список задач — не только мои. Трекаем проект целиком. Бинарные составляющие:
|
||
- фаркул/pivotable-задачи (что можно отложить или развернуть иначе) помечаются `[pivotable]`;
|
||
- общие/инфра (деплой, стабильность, мок) — `[pump.meta]`.
|
||
|
||
**Статусы:** `TODO` / `IN_PROGRESS` / `DONE` / `BLOCKED`.
|
||
|
||
---
|
||
|
||
## Фаза 0 — Экономика и спека (кросс)
|
||
- [ ] **TODO** ADR-002 зафиксирован, документировать `ECONOMY.md`: токен, курс (Способ 1), decimals=6, mint-адреса — `[pump.meta]`
|
||
- [x] **DONE** Решить «вверх/вниз» — предмет ставки = цена SOL (ADR-006), валюта = фантики
|
||
- [ ] **TODO** Цена SOL: реальный источник вместо `RandomPriceSource` (оракул/провайдер) — не блокирует Фазу 1
|
||
- [ ] **TODO** Кто держит ликвидность swap и комиссии — `[pump.meta]`
|
||
- [ ] **TODO** Эмиссия: разовая vs постоянная — `[pump.meta]`
|
||
|
||
## Фаза 1 — Контракт на токене (ядро) — репо `smart-updown-token` (копия Smart-game)
|
||
- [x] **DONE** Создана копия контракта `smart-updown-token` (ветка main, чистый) — работаем тут
|
||
- [x] **DONE** Перевести `create_bet` с SOL (lamports) на SPL-токен: приём фантиков с ATA игрока на ваулт
|
||
- [x] **DONE** Выплата в `close_bet` фантиками из ATA-ваулта на ATA игрока
|
||
- [x] **DONE** `state`/`constants`: единицы = token units (decimals=6), + VAULT_SEED
|
||
- [x] **DONE** Обновить IDL (idl/ + relayer/idl/) + Anchor-тесты (10/10) — коммит 45d64d4
|
||
- [ ] **TODO** Развернуть/поднять localnet стенд для E2E токен-флоу (приёмка на железе)
|
||
|
||
## Фаза 2 — Релейер и цена
|
||
- [ ] **TODO** SolanaClient: подписывать/отправлять токеновую ставку (ATA + ваулт)
|
||
- [ ] **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)
|
||
- [x] **DONE** Каркас: Phantom, балансы (фантики+SOL), swap пополнение/вывод через `/api/pump/swap`
|
||
- [x] **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` |