/** * `/api/dashboard/ingest/*` — three flavors of write-API the Dashboard * Ingest page submits to. Each thin wrapper around the corresponding * MCP tool (`ingest_url`, `ingest_file`, `ingest_content`) so the * dashboard sees the same ingest pipeline an MCP client would. * * Routes: * POST /api/dashboard/ingest/url → { jobId, queued: true } (async) * POST /api/dashboard/ingest/file → { jobId } or sync result * POST /api/dashboard/ingest/content → sync ingest result * * Auth: every endpoint requires the `ingest` scope. `admin` satisfies * it via the gate's scope expansion. * * The MCP tools key off `ToolContext.sessionWorkspace`. Dashboard * sessions don't go through `set_session_workspace`, so the route * resolves the workspace from the gate (cookie / bearer scope) and * plumbs it through `ToolContext`. Re-using the tool keeps the * pipeline + auto-enrichment + taxonomy validation identical between * MCP and Dashboard origins. */ import type { IncomingMessage, ServerResponse } from "node:http"; import type { RouteContext } from "../route-context.js"; export declare function handle(req: IncomingMessage, res: ServerResponse, ctx: RouteContext): Promise; //# sourceMappingURL=dashboard-ingest.d.ts.map