TASK_PHASE_MVP_DAGI_INTEGRATION_FIX_20251201 A) Agents Layer: - A1: Added gov_level to API and UI (list + profile) - A2: Added dais_identity_id to API and UI - A3: Added home_microdao_id/name/slug for ownership display B) MicroDAO Layer: - B1/B2: Already implemented (agents, rooms, citizens, district badge) C) Nodes Layer: - C1: Node Dashboard already implemented - C2: Created nodes table migration with owner_microdao_id - C3: INSERT NODE1/NODE2 with dao_daarion ownership D) Backend Fixes: - D1: Extended /api/agents/* with DAIS/governance fields - D2/D3: Already implemented Files changed: - services/city-service/repo_city.py - services/city-service/models_city.py - services/city-service/routes_city.py - services/city-service/migrations.py - apps/web/src/lib/types/agents.ts - apps/web/src/lib/agent-dashboard.ts - apps/web/src/app/agents/page.tsx - apps/web/src/components/agent-dashboard/AgentSummaryCard.tsx Reports: - docs/debug/mvp_dagi_integration_fix_report_20251201.md - docs/tasks/TASK_PHASE_MVP_DAGI_INTEGRATION_FIX_20251201.md
4.3 KiB
4.3 KiB
TASK PHASE — NODE2 CONFIG & ISOLATION AUDIT
Version: 1.0
Target: NODE2 (core-team / dev node)
1. Мета
Переконатися, що dev-нода (NODE2) має власні конфіги та не підміняє прод-сервіси NODE1:
- інші
DATABASE_URL,NATS_URL,MATRIX_GATEWAY_URL, токени; - відсутній доступ до прод-БД
daarionта прод NATS; - чітке розділення ключів Telegram/Matrix/Email gateway;
- зафіксована політика доступу до DAIS/secretів.
2. Перевірка контейнерів та змінних середовища
- На NODE2 виконати:
docker ps --format "table {{.Names}}\t{{.Image}}\t{{.Status}}"
- Для кожного контейнера DAGI-стеку (
dagi-router,dagi-postgres,dagi-nats,daarion-city-service,gateway,stt,ocr,rag,vector-db,swapper, тощо) виконати:
docker inspect <container> \
--format='{{json .Config.Env}}' | jq
-
Особливу увагу звернути на ENV:
DATABASE_URLREDIS_URLNATS_URLMATRIX_GATEWAY_URLINTERNAL_API_URL- API ключі/токени (Telegram, Discord, Matrix, OAuth)
-
Якщо контейнер використовує
.envфайл — зчитати його (черезdocker inspect ... Mounts).
3. Виявлення перетинів з PROD
3.1. База даних
- Перевірити, що
DATABASE_URLне вказує наpostgres://postgres:postgres@dagi-postgres:5432/daarion. - Dev-нода повинна використовувати окрему БД (інший хост/порт або іншу назву БД).
- Якщо все ж використовує прод-БД — зафіксувати це як критичне відхилення.
3.2. NATS
NATS_URLмає вказувати на локальний/Dev NATS.- Заборонено використовувати
nats://dagi-nats:4222з прод-мережі (NODE1).
3.3. Gateway / Matrix / Telegram
- Перевірити токени (
TELEGRAM_BOT_TOKEN, Matrix creds, Discord tokens, тощо). - Якщо використовуються прод ключі — зафіксувати.
3.4. Secrets
- Переконатися, що
daarion-city-serviceна NODE2 має іншийJWT_SECRET,INTERNAL_SECRET,AUTH_SERVICE_URL. - Перевірити відсутність
.secretsфайлів, спільних із NODE1.
4. Висновок і логування
-
Створити файл
docs/debug/node2_config_audit_<DATE>.mdз такими секціями:DatabaseNATSGateway/MatrixOther secretsSummary
-
У кожній секції вказати:
- реальні значення (без публікації секретів, лише хости/порти/назви БД);
- чи збігаються вони з прод-конфігом;
- рекомендації (змінити URL/ключ, перенаправити на dev-екземпляр, прибрати контейнер тощо).
-
Якщо знайдені перетини, запропонувати конкретні кроки:
- створити dev БД;
- змінити docker-compose;
- оновити токени в secret manager;
- додати firewall між NODE1/NODE2.
5. Критерії завершення
docs/debug/node2_config_audit_<DATE>.mdзаповнений фактами та рекомендаціями;- Виявлені всі місця, де dev-нода використовує прод-конфіги (якщо є);
- Зроблені пропозиції, як рознести конфіги;
- При необхідності створено follow-up таск (наприклад,
TASK_PHASE_NODE2_CONFIG_FIX.md).
6. Команда для Cursor
Прошу виконати `docs/tasks/TASK_PHASE_NODE2_CONFIG_AUDIT.md`.
Мета: зібрати docker inspect/env на NODE2, перевірити DATABASE/NATS/Gateway/Secrets,
зробити висновок у `docs/debug/node2_config_audit_<DATE>.md`.