Files
“BeeRad” 07754f5030 feat: sync open-source context and capsule removal
- remove legacy contexts surfaces from the app, MCP bridge, standalone server, and docs
- keep getContext and retrieveQueryContext while aligning the simplified graph-only contract
- harden dev startup migration behavior and disable the accidental chat surface in open source

Generated with Codex
2026-04-17 12:34:51 +10:00

40 lines
1.1 KiB
TypeScript

import { NextRequest, NextResponse } from 'next/server';
import { applyRequestSupabaseAuth } from '@/services/auth/internalAuth';
import { retrieveQueryContext } from '@/services/retrieval/queryContext';
export const runtime = 'nodejs';
export async function POST(request: NextRequest) {
const cleanupAuth = applyRequestSupabaseAuth(request);
try {
const body = await request.json();
const query = typeof body.query === 'string' ? body.query : '';
if (!query.trim()) {
return NextResponse.json({
success: false,
error: 'Missing required field: query',
}, { status: 400 });
}
const result = await retrieveQueryContext({
query,
focused_node_id: typeof body.focused_node_id === 'number' ? body.focused_node_id : null,
limit: typeof body.limit === 'number' ? body.limit : undefined,
});
return NextResponse.json({
success: true,
data: result,
});
} catch (error) {
return NextResponse.json({
success: false,
error: error instanceof Error ? error.message : 'Failed to retrieve query context',
}, { status: 500 });
} finally {
cleanupAuth();
}
}