import { NextRequest, NextResponse } from "next/server"; import { getPromptCache } from "@/lib/cacheLayer"; import { isAuthenticated } from "@/shared/utils/apiAuth"; import { sanitizeErrorMessage } from "@omniroute/open-sse/utils/error.ts"; export async function GET(req: NextRequest) { if (!(await isAuthenticated(req))) { return NextResponse.json({ error: "Unauthorized" }, { status: 401 }); } try { const cache = getPromptCache(); const stats = cache.getStats(); return NextResponse.json(stats); } catch (error) { return NextResponse.json({ error: sanitizeErrorMessage(error) }, { status: 500 }); } } export async function DELETE(req: NextRequest) { if (!(await isAuthenticated(req))) { return NextResponse.json({ error: "Unauthorized" }, { status: 401 }); } try { const cache = getPromptCache(); cache.clear(); return NextResponse.json({ success: true, message: "Cache cleared" }); } catch (error) { return NextResponse.json({ error: sanitizeErrorMessage(error) }, { status: 500 }); } }