/** * /api/tiger/tasks/[id] — Single task proxy * * GET, PUT, DELETE for a specific task. * POST to trigger execution. */ import { NextResponse } from "next/server"; import { bridgeGet, bridgePost, bridgeDelete } from "@/lib/bridge"; export const dynamic = "force-dynamic"; export async function GET( request: Request, { params }: { params: Promise<{ id: string }> } ) { const { id } = await params; try { const result = await bridgeGet(`/tiger/tasks/${id}`); return NextResponse.json(result); } catch (err: unknown) { const message = err instanceof Error ? err.message : "Unknown error"; return NextResponse.json({ ok: false, error: message }, { status: 502 }); } } export async function PUT( request: Request, { params }: { params: Promise<{ id: string }> } ) { const { id } = await params; try { const body = await request.json(); const result = await bridgePost(`/tiger/tasks/${id}`, body); return NextResponse.json(result); } catch (err: unknown) { const message = err instanceof Error ? err.message : "Unknown error"; return NextResponse.json({ ok: false, error: message }, { status: 502 }); } } export async function DELETE( request: Request, { params }: { params: Promise<{ id: string }> } ) { const { id } = await params; try { const result = await bridgeDelete(`/tiger/tasks/${id}`); return NextResponse.json(result); } catch (err: unknown) { const message = err instanceof Error ? err.message : "Unknown error"; return NextResponse.json({ ok: false, error: message }, { status: 502 }); } } // POST /api/tiger/tasks/[id]/execute — trigger execution export async function POST( request: Request, { params }: { params: Promise<{ id: string }> } ) { const { id } = await params; try { const result = await bridgePost(`/tiger/tasks/${id}/execute`, {}); return NextResponse.json(result); } catch (err: unknown) { const message = err instanceof Error ? err.message : "Unknown error"; return NextResponse.json({ ok: false, error: message }, { status: 502 }); } }