Files
microdao-daarion/docs/tasks/TASK_PHASE_MICRODAO_DASHBOARD_v1_CURSOR_PROMPT.md
2026-02-16 08:52:51 -08:00

4.4 KiB
Raw Blame History

TASK_PHASE_MICRODAO_DASHBOARD_v1_CURSOR_PROMPT

Цей файл — промт для Cursor / AI-агента розробника.

Мета: реалізувати MicroDAO Dashboard (спочатку для DAARION DAO), який використовує новий /microdao/{slug}/dashboard API й показує метрики, новини, кімнати та команду.


0. Загальні інструкції для Cursor

Працюй дуже обережно з існуючим кодом:

  • НЕ змінюй сигнатури вже використаних API без потреби.

  • Кожен крок — окремий commit (якщо використовується Git).

  • Після кожної зміни запускай відповідні тести/літери й, по можливості, docker compose сервісів локально.

Основні сервіси:

  • Backend: services/city-service (FastAPI + Postgres).

  • Frontend: apps/web (Next.js / React).

  • Міграції БД: migrations/0xx_*.sql.


ВИКОНАНО

Всі основні кроки вже виконані:

  1. Створено DB міграції (044_microdao_activity.sql, 045_microdao_stats.sql)
  2. Оновлено backend моделі (models_city.py)
  3. Реалізовано репозиторійні функції (repo_city.py)
  4. Додано FastAPI routes (routes_city.py)
  5. Оновлено frontend типи та API-клієнт
  6. Створено UI-компоненти (HeaderCard, ActivitySection, TeamSection, ProjectsSection, TasksSection)
  7. Створено seed-дані (docs/sql/seed_microdao_activity_daarion.sql)
  8. Додано hook useMicrodaoDashboard

Наступні кроки для завершення

1. Застосувати міграції БД

# На NODE1 або локально
psql -U daarion -d daarion -f migrations/044_microdao_activity.sql
psql -U daarion -d daarion -f migrations/045_microdao_stats.sql

2. Застосувати seed-дані

psql -U daarion -d daarion -f docs/sql/seed_microdao_activity_daarion.sql

3. Оновити сторінку /microdao/[slug] для використання дашборду

Додати опціональне використання useMicrodaoDashboard замість або разом з useMicrodaoDetail.

4. Перевірити роботу

  • Перевірити /microdao/daarion — має показувати новий дашборд
  • Перевірити API /api/microdao/daarion/dashboard
  • Перевірити відображення активності, кімнат, команди

5. Налаштувати автоматичні бекапи PostgreSQL

Створити скрипт /usr/local/bin/backup.sh:

#!/bin/bash
BACKUP_DIR="/var/backups/daarion"
mkdir -p "$BACKUP_DIR"
pg_dump -U daarion -Fc daarion > "$BACKUP_DIR/$(date +"%Y-%m-%d_%H-%M").dump"
find "$BACKUP_DIR" -type f -mtime +7 -delete

Додати в cron:

0 * * * * /usr/local/bin/backup.sh

Статус реалізації

  • Backend: 100%
  • Frontend типи: 100%
  • UI компоненти: 100%
  • Інтеграція в сторінку: 50% (потрібно додати використання дашборду)
  • Міграції: 0% (потрібно застосувати)
  • Seed-дані: 0% (потрібно застосувати)
  • Бекапи: 0% (потрібно налаштувати)

Файли для перевірки

  • migrations/044_microdao_activity.sql
  • migrations/045_microdao_stats.sql
  • services/city-service/models_city.py (додані моделі)
  • services/city-service/repo_city.py (додані функції)
  • services/city-service/routes_city.py (додані routes)
  • apps/web/src/lib/types/microdao.ts (додані типи)
  • apps/web/src/lib/api/microdao.ts (додані API-функції)
  • apps/web/src/hooks/useMicrodao.ts (додано hook)
  • apps/web/src/components/microdao/MicrodaoHeaderCard.tsx
  • apps/web/src/components/microdao/MicrodaoActivitySection.tsx
  • apps/web/src/components/microdao/MicrodaoTeamSection.tsx
  • apps/web/src/components/microdao/MicrodaoProjectsSection.tsx
  • apps/web/src/components/microdao/MicrodaoTasksSection.tsx
  • docs/sql/seed_microdao_activity_daarion.sql