import { NextResponse } from "next/server";
import { getCurrentUser } from "@/lib/auth";
import { prisma } from "@/lib/prisma";
export const dynamic = "force-dynamic";
export async function GET(req: Request) {
  const user = await getCurrentUser();
  if (!user) return NextResponse.json({ error: "Unauthorized" }, { status: 401 });
  const brandId = new URL(req.url).searchParams.get("brandId");
  if (!brandId) return NextResponse.json({ error: "brandId required" }, { status: 400 });
  // Get latest check for each query
  const checks = await prisma.aiVisibilityCheck.findMany({
    where: { brandId },
    orderBy: { checkedAt: "desc" },
    take: 200,
  });
  // Deduplicate: keep only latest per query
  const seen = new Set<string>();
  const latest = checks.filter((c) => { if (seen.has(c.query)) return false; seen.add(c.query); return true; });
  return NextResponse.json({ results: latest });
}
