/
home
/
techb158
/
balavpn.abdallabala.com
/
src
/
app
/
api
/
projects
/
[projectId]
/
experiments
/
/home/techb158/balavpn.abdallabala.com/src/app/api/projects/[projectId]/experiments
mkdir
upload
Name
Size
Mode
Actions
[experimentId]/
-
0755
rm
route.js
1437
0644
edit
dl
rm
Edit:
/home/techb158/balavpn.abdallabala.com/src/app/api/projects/[projectId]/experiments/route.js
(1437B)
const { prisma } = require("../../../../../lib/prisma"); const { getActorFromRequest } = require("../../../../../lib/request-context"); const { requireProjectAccess } = require("../../../../../lib/tenant-guard"); const { jsonResponse, errorResponse } = require("../../../../../lib/http"); export async function GET(request, { params }) { try { const { projectId } = await params; const actor = await getActorFromRequest(request); await requireProjectAccess(actor, projectId, "project:read"); const experiments = await prisma.experiment.findMany({ where: { projectId }, include: { metrics: { orderBy: { createdAt: "desc" } } }, orderBy: { createdAt: "desc" } }); return jsonResponse({ experiments }); } catch (error) { return errorResponse(error); } } export async function POST(request, { params }) { try { const { projectId } = await params; const actor = await getActorFromRequest(request); await requireProjectAccess(actor, projectId, "project:update"); const body = await request.json(); const { name, modelName, selected } = body; if (!name) { return jsonResponse({ error: "name is required" }, 400); } const experiment = await prisma.experiment.create({ data: { projectId, name, modelName, selected: selected ?? false } }); return jsonResponse(experiment, 201); } catch (error) { return errorResponse(error); } }
Save
cmd:
run