from fastapi import APIRouter, HTTPException from app.database import SessionLocal import asyncio import sys import os # Add parent directory to path sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '../..'))) from utils.seed_data import generate_seed_data as generate_data, clear_all_data router = APIRouter(prefix="/api/v1/seed", tags=["seed"]) @router.post("/generate/{count}") async def generate_seed_data(count: int = 10): """Generate seed data""" if count < 1 or count > 100: raise HTTPException(status_code=400, detail="Count must be between 1 and 100") try: artifact_ids = await generate_data(count) return { "message": f"Successfully generated {len(artifact_ids)} artifacts", "artifact_ids": artifact_ids } except Exception as e: raise HTTPException(status_code=500, detail=f"Seed generation failed: {str(e)}") @router.delete("/clear") async def clear_data(): """Clear all data""" try: await clear_all_data() return {"message": "All data cleared successfully"} except Exception as e: raise HTTPException(status_code=500, detail=f"Clear failed: {str(e)}")