mirror of
https://github.com/velocitatem/PHANTOM.git
synced 2026-07-15 17:43:36 +00:00
* chore: cleaning gitignore * formating and env documentation * feat: context switching of hotel/airline depndent on env var via middleware * fixed alignment and building * wrong file * prods * fixed applying style * better session cookie management * tentative session storage with maybe using airtable * migrated api of ingestion * events and products apge * fixing build * 13 create outline for research paper draft (#18) * updated outline for paper from issue * extra paper sections and some formalization of series data * algorithms and acknowledgements * updated outline for paper from issue * upadted text formating * event unification * refactor tracking to ues callbacks instead of refs * implement a pricing display api with session passing * moved middleware to proxy according to new changes in Nextjs * refactoed kafka ingestion to go via backend not web-db * Refactor docker-compose services to use individual Dockerfiles (#20) * Initial plan * Refactor services into individual Dockerfiles Co-authored-by: velocitatem <60182044+velocitatem@users.noreply.github.com> * Add EXPOSE directives to all Dockerfiles with port documentation Co-authored-by: velocitatem <60182044+velocitatem@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: velocitatem <60182044+velocitatem@users.noreply.github.com> * fixing small bugs and adding exepriments to tracking * added some doc
40 lines
975 B
TypeScript
40 lines
975 B
TypeScript
import { NextRequest, NextResponse } from 'next/server';
|
|
import { stopExperimentById, getExperiment } from '@/lib/sessionStore';
|
|
|
|
export async function POST(req: NextRequest) {
|
|
try {
|
|
const body = await req.json();
|
|
const { experimentId } = body;
|
|
|
|
if (!experimentId) {
|
|
return NextResponse.json(
|
|
{ error: 'experimentId required' },
|
|
{ status: 400 }
|
|
);
|
|
}
|
|
|
|
// verify experiment exists
|
|
const existing = getExperiment(experimentId);
|
|
if (!existing) {
|
|
return NextResponse.json(
|
|
{ error: 'experiment not found' },
|
|
{ status: 404 }
|
|
);
|
|
}
|
|
|
|
// stop the experiment
|
|
const exp = stopExperimentById(experimentId);
|
|
|
|
return NextResponse.json({
|
|
experimentId: exp!.id,
|
|
status: exp!.status,
|
|
});
|
|
} catch (err: any) {
|
|
console.error('experiment stop error:', err);
|
|
return NextResponse.json(
|
|
{ error: err.message || 'unknown error' },
|
|
{ status: 500 }
|
|
);
|
|
}
|
|
}
|