import { NextRequest, NextResponse } from "next/server"; import { getAuthContext } from "@/lib/auth/session"; import { getWorkflowGenomes, getWorkflowGenome } from "@/lib/frontrunner"; export async function GET(req: NextRequest) { try { const ctx = await getAuthContext(); const { searchParams } = new URL(req.url); const action = searchParams.get("action") || "list"; if (action === "list") { const limit = Math.min(parseInt(searchParams.get("limit") || "100"), 100); const workflows = getWorkflowGenomes(ctx.orgId, limit); return NextResponse.json({ workflows, count: workflows.length }); } if (action === "get") { const id = searchParams.get("id"); if (!id) return NextResponse.json({ error: "id required" }, { status: 400 }); const wf = getWorkflowGenome(ctx.orgId, id); if (!wf) return NextResponse.json({ error: "Not found" }, { status: 404 }); return NextResponse.json(wf); } return NextResponse.json({ error: "Invalid action" }, { status: 400 }); } catch (e: any) { return NextResponse.json({ error: e.message }, { status: 500 }); } }