feat: add MicroDAO balance checks and DAARION.city integration

- Update Wallet Service: balance checks (1 DAARION for create, 0.01 for usage)
- Update DAOFactory Service: use new balance checks
- Add DB migration: teams type field and city_links table
- Add DAARION.city seed data
- Create teams API routes with balance validation
- Add DAARION.city remote repository
- Add sync scripts and documentation
This commit is contained in:
Apple
2025-11-15 08:56:14 -08:00
parent c552199eed
commit 582ab75b03
13 changed files with 994 additions and 25 deletions

160
IMPLEMENTATION_QUESTIONS.md Normal file
View File

@@ -0,0 +1,160 @@
# Питання для початку реалізації
## 1. Console / Адмін-панель
### 1.1 Що таке "console консоль"?
- Це окрема сторінка на `daarion.city/console`?
- Чи це вбудований віджет на існуючій сторінці?
- Чи це окремий піддомен `console.daarion.city`?
### 1.2 Які функції мають бути в console?
- Створення нового MicroDAO
- Перегляд списку існуючих MicroDAO
- Управління DAARION.city як SuperDAO
- Перегляд міських платформ (GREENFOOD, EnergyUnion, тощо)
- Wallet інтерфейс (баланси, стейкінг)
- Інші функції?
### 1.3 Технічний стек для console
- Це React компонент на існуючому сайті DAARION.city?
- Який фреймворк використовується (Next.js, Vite, інше)?
- Чи є вже існуючий код console, який потрібно розширити?
---
## 2. DAARION.city як перше MicroDAO + SuperDAO
### 2.1 Міські платформи
Які саме міські платформи вже існують та об'єднані з DAARION.city?
- GREENFOOD
- EnergyUnion
- WaterUnion
- Інші?
### 2.2 Як вони об'єднані?
- Через `city_links` таблицю з `parent_team_id = daarion-city`?
- Чи вони вже створені як MicroDAO типу "platform"?
- Чи потрібно їх створити зараз?
### 2.3 Відображення в console
- Як мають відображатися міські платформи в console?
- Як окремий розділ "Міські платформи"?
- Чи як частина дерева MicroDAO?
---
## 3. Створення MicroDAO користувачами
### 3.1 Порог для створення
**Уточнення:** В документації написано "1 DAAR або 0.01 DAARION", але ти кажеш "мінімум 1 DAARION у стейкінгу".
**Питання:**
- Правильно: **1 DAARION у стейкінгу** (не просто баланс)?
- Чи можна альтернатива: 1 DAAR у стейкінгу?
### 3.2 Перевірка стейкінгу
- Де зберігається інформація про стейкінг? (БД таблиця `staking`?)
- Як перевіряється стейкінг перед створенням MicroDAO?
- Чи потрібна перевірка через Wallet Service або on-chain?
### 3.3 UI для створення MicroDAO
- Це форма з полями (назва, опис, тип)?
- Чи діалог з агентом (як в `08_agent_first_onboarding.md`)?
- Які поля обов'язкові?
### 3.4 Після створення
- Автоматично створюється DAO через DAOFactory?
- Автоматично створюються токени GOV/UTIL/REP?
- Яка роль у створеного MicroDAO отримує користувач? (Owner?)
---
## 4. Роль Admin та 0.01 DAARION
### 4.1 Роль Admin
- Це роль в конкретному MicroDAO?
- Чи це глобальна роль в DAARION.city?
### 4.2 0.01 DAARION для Admin
- Це мінімум для отримання ролі Admin?
- Чи це мінімум для запрошення інших користувачів?
- Чи це мінімум для постійного використання (maintenance fee)?
### 4.3 Перевірка перед запрошенням
- Перевіряється баланс або стейкінг?
- Чи потрібна перевірка при кожному запрошенні?
---
## 5. Wallet та Staking
### 5.1 Інтеграція з Wallet
- Wallet Service вже реалізований?
- Як перевіряються баланси DAAR/DAARION?
- Чи потрібна інтеграція з on-chain контрактами?
### 5.2 Staking
- Де зберігається інформація про стейкінг? (таблиця `staking`?)
- Як перевіряється стейкінг для доступу?
- Чи потрібна інтеграція зі смарт-контрактами?
---
## 6. Технічні деталі
### 6.1 API Endpoints
- Чи є вже реалізовані API endpoints для:
- Створення MicroDAO
- Перевірки стейкінгу
- Wallet операцій
- Інші?
### 6.2 База даних
- Чи є вже міграції для:
- `teams` (MicroDAO)
- `staking`
- `wallets`
- `city_links`
- Інші?
### 6.3 PDP (Policy Decision Point)
- Чи потрібно інтегрувати перевірки стейкінгу в PDP?
- Які саме політики потрібні:
- `policy.microdao.create` (1 DAARION staked)
- `policy.admin.invite` (0.01 DAARION)
- Інші?
---
## 7. Пріоритети реалізації
Що реалізувати першим?
**Варіант A:**
1. Console UI (базова структура)
2. DAARION.city як перше MicroDAO (БД setup)
3. Створення MicroDAO користувачами (з перевіркою стейкінгу)
4. Admin роль та запрошення
**Варіант B:**
1. Backend: DAARION.city setup + API endpoints
2. Frontend: Console UI
3. Інтеграція Wallet/Staking перевірок
4. Створення MicroDAO flow
**Варіант C:**
Інший порядок?
---
## 8. Додаткові питання
- Чи є вже існуючий код console, який потрібно розширити?
- Чи потрібна інтеграція з існуючим сайтом DAARION.city?
- Які саме міські платформи вже працюють і потрібно їх відобразити?
- Чи є вже реалізований Wallet Service або потрібно створювати з нуля?
---
**Очікування:** Відповіді на ці питання допоможуть створити точний план реалізації та почати розробку.