Files
ss-tools/specs/007-migration-dashboard-grid/tasks-dev.md
2025-12-27 10:16:41 +03:00

2.1 KiB

description
description
Development tasks for Migration Plugin Dashboard Grid

Development Tasks: Migration Plugin Dashboard Grid

Role: Developer Agent Goal: Implement the logic defined in the architecture contracts.

Phase 1: Backend Implementation

  • D001 [US1] Implement SupersetClient.get_dashboards_summary in backend/src/core/superset_client.py

    • Context: Fetch dashboards from Superset API with specific columns (id, dashboard_title, changed_on_utc, published).
    • Input: None (uses instance config).
    • Output: List of dictionaries mapped to DashboardMetadata fields.
  • D002 [US1] Implement get_dashboards endpoint in backend/src/api/routes/migration.py

    • Context: Initialize SupersetClient with environment config and call get_dashboards_summary.
    • Input: env_id (path param).
    • Output: JSON list of DashboardMetadata.
  • D003 [US1] Implement execute_migration endpoint in backend/src/api/routes/migration.py

    • Context: Validate selection and initiate migration task (placeholder or TaskManager integration).
    • Input: DashboardSelection body.
    • Output: Task ID and status message.

Phase 2: Frontend Implementation

  • D004 [US1] Implement DashboardGrid.svelte logic

    • Context: frontend/src/components/DashboardGrid.svelte
    • Requirements:
      • Client-side pagination (default 20 items).
      • Sorting by Title, Last Modified, Status.
      • Text filtering (search by title).
      • Multi-selection with "Select All" capability.
      • Emit selection events.
  • D005 [US1] Integrate DashboardGrid into Migration Page

    • Context: frontend/src/routes/migration/+page.svelte
    • Requirements:
      • Fetch dashboards when sourceEnvId changes.
      • Bind dashboards data to DashboardGrid.
      • Bind selectedDashboardIds.
      • Update startMigration to send selectedDashboardIds to backend.

Phase 3: Verification

  • D006 Verify Dashboard Grid functionality (Sort, Filter, Page).
  • D007 Verify API integration (Fetch dashboards, Start migration).