import { NextResponse } from 'next/server'; import { dashboard, connectorsOverview } from '@/lib/admin/queries'; import { queueDepths } from '@/lib/admin/queue'; export const runtime = 'nodejs'; export const dynamic = 'force-dynamic'; /** Machine-readable pipeline status for monitors (admin cookie required by the proxy). */ export async function GET() { const [d, connectors, queues] = await Promise.all([dashboard(), connectorsOverview(), queueDepths()]); return NextResponse.json({ counts: d.counts, queues, connectors: connectors.map((c) => ({ id: c.id, status: c.status, health: c.health_status, lastRun: c.last_started_at, lastRunStatus: c.last_run_status, lastError: c.last_error, records24h: c.records_24h })), as_of: new Date().toISOString(), }); }