@superinterface/server 1.1.3 → 1.1.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/build-manifest.json +2 -2
- package/.next/cache/.previewinfo +1 -1
- package/.next/cache/.rscinfo +1 -1
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/eslint/.cache_btwyo7 +1 -1
- package/.next/fallback-build-manifest.json +2 -2
- package/.next/prerender-manifest.json +3 -3
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +1 -1
- package/.next/server/app/api/api-keys/[apiKeyId]/route.js +1 -1
- package/.next/server/app/api/api-keys/[apiKeyId]/route.js.nft.json +1 -1
- package/.next/server/app/api/api-keys/route.js +1 -1
- package/.next/server/app/api/api-keys/route.js.nft.json +1 -1
- package/.next/server/app/api/assistants/[assistantId]/functions/[functionId]/route.js +1 -1
- package/.next/server/app/api/assistants/[assistantId]/functions/[functionId]/route.js.nft.json +1 -1
- package/.next/server/app/api/assistants/[assistantId]/functions/route.js +1 -1
- package/.next/server/app/api/assistants/[assistantId]/functions/route.js.nft.json +1 -1
- package/.next/server/app/api/assistants/[assistantId]/initial-messages/route.js +1 -1
- package/.next/server/app/api/assistants/[assistantId]/initial-messages/route.js.nft.json +1 -1
- package/.next/server/app/api/assistants/[assistantId]/mcp-servers/[mcpServerId]/route.js +1 -1
- package/.next/server/app/api/assistants/[assistantId]/mcp-servers/[mcpServerId]/route.js.nft.json +1 -1
- package/.next/server/app/api/assistants/[assistantId]/mcp-servers/route.js +1 -1
- package/.next/server/app/api/assistants/[assistantId]/mcp-servers/route.js.nft.json +1 -1
- package/.next/server/app/api/assistants/[assistantId]/route.js +1 -1
- package/.next/server/app/api/assistants/[assistantId]/route.js.nft.json +1 -1
- package/.next/server/app/api/assistants/route.js +1 -1
- package/.next/server/app/api/assistants/route.js.nft.json +1 -1
- package/.next/server/app/api/files/[fileId]/contents/route.js +1 -1
- package/.next/server/app/api/files/[fileId]/contents/route.js.nft.json +1 -1
- package/.next/server/app/api/files/route.js +1 -1
- package/.next/server/app/api/files/route.js.nft.json +1 -1
- package/.next/server/app/api/messages/route.js +2 -2
- package/.next/server/app/api/messages/route.js.nft.json +1 -1
- package/.next/server/app/api/providers/[modelProviderId]/assistants/route.js +1 -1
- package/.next/server/app/api/providers/[modelProviderId]/assistants/route.js.nft.json +1 -1
- package/.next/server/app/api/providers/[modelProviderId]/models/route.js +1 -1
- package/.next/server/app/api/providers/[modelProviderId]/models/route.js.nft.json +1 -1
- package/.next/server/app/api/providers/[modelProviderId]/route.js +1 -1
- package/.next/server/app/api/providers/[modelProviderId]/route.js.nft.json +1 -1
- package/.next/server/app/api/providers/route.js +1 -1
- package/.next/server/app/api/providers/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/[taskId]/route.js +1 -1
- package/.next/server/app/api/tasks/[taskId]/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/callback/route.js +2 -2
- package/.next/server/app/api/tasks/callback/route.js.nft.json +1 -1
- package/.next/server/app/api/tasks/route.js +1 -1
- package/.next/server/app/api/tasks/route.js.nft.json +1 -1
- package/.next/server/app/api/threads/runs/submit-client-tool-outputs/route.js +1 -1
- package/.next/server/app/api/threads/runs/submit-client-tool-outputs/route.js.nft.json +1 -1
- package/.next/server/app/api/workspaces/[workspaceId]/route.js +1 -1
- package/.next/server/app/api/workspaces/[workspaceId]/route.js.nft.json +1 -1
- package/.next/server/app/api/workspaces/route.js +1 -1
- package/.next/server/app/api/workspaces/route.js.nft.json +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +1 -1
- package/.next/server/chunks/{[root-of-the-server]__f6f61507._.js → [root-of-the-server]__281d6920._.js} +12 -12
- package/.next/server/chunks/[root-of-the-server]__281d6920._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__dd176cb5._.js → [root-of-the-server]__6f8f12bd._.js} +4 -4
- package/.next/server/chunks/[root-of-the-server]__6f8f12bd._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__47b17fad._.js → [root-of-the-server]__933f2258._.js} +12 -12
- package/.next/server/chunks/[root-of-the-server]__933f2258._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__29b43490._.js → [root-of-the-server]__ccec8f9e._.js} +4 -4
- package/.next/server/chunks/[root-of-the-server]__ccec8f9e._.js.map +1 -0
- package/.next/server/chunks/c4f00_next_dist_esm_build_templates_app-route_cb746cf4.js +1 -1
- package/.next/server/chunks/c4f00_next_dist_esm_build_templates_app-route_f952d9ab.js +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +1 -1
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/trace +1 -1
- package/README.md +12 -0
- package/dist/lib/computerCalls/handleComputerCall/index.d.ts +69 -0
- package/dist/lib/computerCalls/handleComputerCall/index.d.ts.map +1 -1
- package/dist/lib/computerCalls/handleComputerCall/index.js +8 -21
- package/dist/lib/functions/handleFunction/handleAssistant.d.ts.map +1 -1
- package/dist/lib/functions/handleFunction/handleAssistant.js +0 -43
- package/dist/lib/prisma/index.d.ts.map +1 -1
- package/dist/lib/prisma/index.js +29 -5
- package/package.json +1 -1
- package/scripts/utils/loadPrisma.ts +36 -8
- package/.next/server/chunks/[root-of-the-server]__29b43490._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__47b17fad._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__dd176cb5._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__f6f61507._.js.map +0 -1
- /package/.next/static/{5xF3eU9mJi_yyxgCFNmlR → euNx_MoPmZ6Ig22d-7GLW}/_buildManifest.js +0 -0
- /package/.next/static/{5xF3eU9mJi_yyxgCFNmlR → euNx_MoPmZ6Ig22d-7GLW}/_clientMiddlewareManifest.json +0 -0
- /package/.next/static/{5xF3eU9mJi_yyxgCFNmlR → euNx_MoPmZ6Ig22d-7GLW}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[98329,e=>{"use strict";e.s(["handler",()=>F,"patchFetch",()=>G,"routeModule",()=>H,"serverHooks",()=>U,"workAsyncStorage",()=>M,"workUnitAsyncStorage",()=>L],98329);var t=e.i(5865),a=e.i(43877),r=e.i(77767),s=e.i(92562),o=e.i(66256),n=e.i(5270),i=e.i(90231),l=e.i(82677),d=e.i(51081),u=e.i(89822),c=e.i(9124),p=e.i(39147),h=e.i(40568),R=e.i(87188),g=e.i(93695);e.i(57132);var v=e.i(80739);e.s(["POST",()=>b,"maxDuration",()=>O],67490),e.s(["POST",()=>b],72490);var T=e.i(24493),m=e.i(49493),E=e.i(3391),w=e.i(91877),S=e.i(29173),f=e.i(95690),I=e.i(58011),k=e.i(60172),x=e.i(39713),N=e.i(18527),y=e.i(14554),_=e.i(44784),A=e.i(9394),C=e.i(57623),q=e.i(10671);let O=800,b=(({prisma:e})=>{let t=(({prisma:e})=>async t=>{let a,r,{taskId:s}=await t.json(),o=await e.task.findUnique({where:{id:s},include:{thread:{include:{assistant:{include:{modelProvider:!0,tools:{include:{fileSearchTool:!0,webSearchTool:!0,imageGenerationTool:!0,codeInterpreterTool:!0,computerUseTool:{include:{mcpServer:{include:{stdioTransport:!0,sseTransport:!0,httpTransport:!0}}}}}},functions:{include:{handler:{include:{requestHandler:!0,firecrawlHandler:!0,replicateHandler:!0,clientToolHandler:!0,assistantHandler:!0,createTaskHandler:!0,listTasksHandler:!0,updateTaskHandler:!0,deleteTaskHandler:!0}}}},mcpServers:{include:{computerUseTool:!0,stdioTransport:!0,sseTransport:!0,httpTransport:!0}}}}}}}});if(!o)return m.NextResponse.json({error:"Task not found"},{status:400});let n=o.thread.assistant,i=o.thread,l=(0,f.assistantClientAdapter)({assistant:n,prisma:e});try{a=(0,y.storageThreadId)({thread:i})}catch(t){return(0,N.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:"Failed to get storage thread id.",workspaceId:n.workspaceId,assistantId:n.id,threadId:i.id},prisma:e}),m.NextResponse.json({error:"Failed to get storage thread id."},{status:500})}if(!a&&(0,A.isOpenaiAssistantsStorageProvider)({storageProviderType:n.storageProviderType}))try{a=await (0,C.managedOpenaiThreadId)({assistant:n,threadId:i.id,prisma:e})}catch(t){return(0,N.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to get managed openai thread id: ${t.message}`,workspaceId:n.workspaceId,assistantId:n.id,threadId:i.id},prisma:e}),m.NextResponse.json({error:"Failed to get managed openai thread id."},{status:500})}if(!a)return(0,N.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:"Invalid thread configuration.",workspaceId:n.workspaceId,assistantId:n.id,threadId:i.id},prisma:e}),m.NextResponse.json({error:"Invalid thread configuration."},{status:500});try{await l.beta.threads.messages.create(a,{role:"user",content:o.message,metadata:(0,q.serializeMetadata)({variables:{superinterfaceCreatedByType:"TASK",superinterfaceCreatedById:o.id},workspaceId:n.workspaceId,prisma:e})})}catch(t){return console.log({error:t}),(0,N.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to create message: ${t.message}`,workspaceId:n.workspaceId,assistantId:n.id,threadId:i.id},prisma:e}),m.NextResponse.json({error:"Failed to create message"},{status:500})}try{r=await l.beta.threads.runs.create(a,await (0,I.createRunOpts)({assistant:n,thread:i,prisma:e}))}catch(t){return console.log({error:t}),(0,N.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to create run stream: ${t.message}`,workspaceId:n.workspaceId,assistantId:n.id,threadId:i.id},prisma:e}),m.NextResponse.json({error:"Failed to create run stream"},{status:500})}let d=(0,w.createMessageResponse)({client:l,createRunStream:r,handleToolCall:(0,x.handleToolCall)({assistant:n,thread:i,prisma:e})}),u=new TextDecoder,c=d.getReader();for(;;){let e,{value:t,done:a}=await c.read();if(a)break;if(t){try{e=JSON.parse(u.decode(t))}catch(e){continue}if("thread.run.requires_action"===e.event&&e.data?.required_action?.type==="submit_client_tool_outputs"){let t=e.data.required_action.submit_client_tool_outputs.tool_calls;Array.isArray(t)&&await Promise.all(t.map(e=>_.redis.set(`submit-client-tool-outputs:output:${e.id}`,"Client tools cannot be used during tasks",{ex:604800})))}}}return await (0,k.scheduleTask)({task:o,prisma:e}),m.NextResponse.json({ok:!0})})({prisma:e});return process.env.QSTASH_CURRENT_SIGNING_KEY?function(e,t){let a=(void 0)??process.env.QSTASH_CURRENT_SIGNING_KEY;if(!a)throw Error("currentSigningKey is required, either in the config or as env variable QSTASH_CURRENT_SIGNING_KEY");let r=(void 0)??process.env.QSTASH_NEXT_SIGNING_KEY;if(!r)throw Error("nextSigningKey is required, either in the config or as env variable QSTASH_NEXT_SIGNING_KEY");let s=new E.Receiver({currentSigningKey:a,nextSigningKey:r});return async(a,r)=>{let o=a.clone(),n=a.headers.get("upstash-signature");if(!n)return new Response(new TextEncoder().encode("`Upstash-Signature` header is missing"),{status:403});if("string"!=typeof n)throw TypeError("`Upstash-Signature` header is not a string");let i=await o.text();return await s.verify({signature:n,body:i,clockTolerance:t?.clockTolerance})?e(a,r):new Response(new TextEncoder().encode("invalid signature"),{status:403})}}(t):t})({prisma:T.prisma});e.i(72490);var P=e.i(67490);let H=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/tasks/callback/route",pathname:"/api/tasks/callback",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/supercorp/superinterface/packages/server/src/app/api/tasks/callback/route.ts",nextConfigOutput:"",userland:P}),{workAsyncStorage:M,workUnitAsyncStorage:L,serverHooks:U}=H;function G(){return(0,r.patchFetch)({workAsyncStorage:M,workUnitAsyncStorage:L})}async function F(e,t,r){var T;let m="/api/tasks/callback/route";m=m.replace(/\/index$/,"")||"/";let E=await H.prepare(e,t,{srcPage:m,multiZoneDraftMode:!1});if(!E)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:w,params:S,nextConfig:f,isDraftMode:I,prerenderManifest:k,routerServerContext:x,isOnDemandRevalidate:N,revalidateOnlyGenerated:y,resolvedPathname:_}=E,A=(0,n.normalizeAppPath)(m),C=!!(k.dynamicRoutes[A]||k.routes[_]);if(C&&!I){let e=!!k.routes[_],t=k.dynamicRoutes[A];if(t&&!1===t.fallback&&!e)throw new g.NoFallbackError}let q=null;!C||H.isDev||I||(q="/index"===(q=_)?"/":q);let O=!0===H.isDev||!C,b=C&&!O,P=e.method||"GET",M=(0,o.getTracer)(),L=M.getActiveScopeSpan(),U={params:S,prerenderManifest:k,renderOpts:{experimental:{cacheComponents:!!f.experimental.cacheComponents,authInterrupts:!!f.experimental.authInterrupts},supportsDynamicResponse:O,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:null==(T=f.experimental)?void 0:T.cacheLife,isRevalidate:b,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r)=>H.onRequestError(e,t,r,x)},sharedContext:{buildId:w}},G=new i.NodeNextRequest(e),F=new i.NodeNextResponse(t),K=l.NextRequestAdapter.fromNodeNextRequest(G,(0,l.signalFromNodeResponse)(t));try{let n=async a=>H.handle(K,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=r.get("next.route");if(s){let e=`${P} ${s}`;a.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),a.updateName(e)}else a.updateName(`${P} ${e.url}`)}),i=async o=>{var i,l;let d=async({previousCacheEntry:a})=>{try{if(!(0,s.getRequestMeta)(e,"minimalMode")&&N&&y&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await n(o);e.fetchMetrics=U.renderOpts.fetchMetrics;let l=U.renderOpts.pendingWaitUntil;l&&r.waitUntil&&(r.waitUntil(l),l=void 0);let d=U.renderOpts.collectedTags;if(!C)return await (0,c.sendResponse)(G,F,i,U.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,p.toNodeOutgoingHttpHeaders)(i.headers);d&&(t[R.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=R.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,r=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=R.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:r}}}}catch(t){throw(null==a?void 0:a.isStale)&&await H.onRequestError(e,t,{routerKind:"App Router",routePath:m,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isRevalidate:b,isOnDemandRevalidate:N})},x),t}},g=await H.handleResponse({req:e,nextConfig:f,cacheKey:q,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:k,isRoutePPREnabled:!1,isOnDemandRevalidate:N,revalidateOnlyGenerated:y,responseGenerator:d,waitUntil:r.waitUntil});if(!C)return null;if((null==g||null==(i=g.value)?void 0:i.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==g||null==(l=g.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});(0,s.getRequestMeta)(e,"minimalMode")||t.setHeader("x-nextjs-cache",N?"REVALIDATED":g.isMiss?"MISS":g.isStale?"STALE":"HIT"),I&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let T=(0,p.fromNodeOutgoingHttpHeaders)(g.value.headers);return(0,s.getRequestMeta)(e,"minimalMode")&&C||T.delete(R.NEXT_CACHE_TAGS_HEADER),!g.cacheControl||t.getHeader("Cache-Control")||T.get("Cache-Control")||T.set("Cache-Control",(0,h.getCacheControlHeader)(g.cacheControl)),await (0,c.sendResponse)(G,F,new Response(g.value.body,{headers:T,status:g.value.status||200})),null};L?await i(L):await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${P} ${e.url}`,kind:o.SpanKind.SERVER,attributes:{"http.method":P,"http.target":e.url}},i))}catch(t){if(t instanceof g.NoFallbackError||await H.onRequestError(e,t,{routerKind:"App Router",routePath:A,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isRevalidate:b,isOnDemandRevalidate:N})}),C)throw t;return await (0,c.sendResponse)(G,F,new Response(null,{status:500})),null}}}];
|
|
1
|
+
module.exports=[98329,e=>{"use strict";e.s(["handler",()=>F,"patchFetch",()=>G,"routeModule",()=>H,"serverHooks",()=>U,"workAsyncStorage",()=>M,"workUnitAsyncStorage",()=>L],98329);var t=e.i(5865),a=e.i(43877),r=e.i(77767),s=e.i(92562),o=e.i(66256),n=e.i(5270),i=e.i(90231),l=e.i(82677),d=e.i(51081),u=e.i(89822),c=e.i(9124),p=e.i(39147),h=e.i(40568),R=e.i(87188),g=e.i(93695);e.i(57132);var v=e.i(80739);e.s(["POST",()=>b,"maxDuration",()=>O],67490),e.s(["POST",()=>b],72490);var T=e.i(24493),m=e.i(49493),E=e.i(3391),w=e.i(50498),S=e.i(29173),f=e.i(95690),I=e.i(58011),k=e.i(60172),x=e.i(39713),N=e.i(18527),y=e.i(14554),_=e.i(44784),A=e.i(9394),C=e.i(57623),q=e.i(10671);let O=800,b=(({prisma:e})=>{let t=(({prisma:e})=>async t=>{let a,r,{taskId:s}=await t.json(),o=await e.task.findUnique({where:{id:s},include:{thread:{include:{assistant:{include:{modelProvider:!0,tools:{include:{fileSearchTool:!0,webSearchTool:!0,imageGenerationTool:!0,codeInterpreterTool:!0,computerUseTool:{include:{mcpServer:{include:{stdioTransport:!0,sseTransport:!0,httpTransport:!0}}}}}},functions:{include:{handler:{include:{requestHandler:!0,firecrawlHandler:!0,replicateHandler:!0,clientToolHandler:!0,assistantHandler:!0,createTaskHandler:!0,listTasksHandler:!0,updateTaskHandler:!0,deleteTaskHandler:!0}}}},mcpServers:{include:{computerUseTool:!0,stdioTransport:!0,sseTransport:!0,httpTransport:!0}}}}}}}});if(!o)return m.NextResponse.json({error:"Task not found"},{status:400});let n=o.thread.assistant,i=o.thread,l=(0,f.assistantClientAdapter)({assistant:n,prisma:e});try{a=(0,y.storageThreadId)({thread:i})}catch(t){return(0,N.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:"Failed to get storage thread id.",workspaceId:n.workspaceId,assistantId:n.id,threadId:i.id},prisma:e}),m.NextResponse.json({error:"Failed to get storage thread id."},{status:500})}if(!a&&(0,A.isOpenaiAssistantsStorageProvider)({storageProviderType:n.storageProviderType}))try{a=await (0,C.managedOpenaiThreadId)({assistant:n,threadId:i.id,prisma:e})}catch(t){return(0,N.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to get managed openai thread id: ${t.message}`,workspaceId:n.workspaceId,assistantId:n.id,threadId:i.id},prisma:e}),m.NextResponse.json({error:"Failed to get managed openai thread id."},{status:500})}if(!a)return(0,N.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:"Invalid thread configuration.",workspaceId:n.workspaceId,assistantId:n.id,threadId:i.id},prisma:e}),m.NextResponse.json({error:"Invalid thread configuration."},{status:500});try{await l.beta.threads.messages.create(a,{role:"user",content:o.message,metadata:(0,q.serializeMetadata)({variables:{superinterfaceCreatedByType:"TASK",superinterfaceCreatedById:o.id},workspaceId:n.workspaceId,prisma:e})})}catch(t){return console.log({error:t}),(0,N.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to create message: ${t.message}`,workspaceId:n.workspaceId,assistantId:n.id,threadId:i.id},prisma:e}),m.NextResponse.json({error:"Failed to create message"},{status:500})}try{r=await l.beta.threads.runs.create(a,await (0,I.createRunOpts)({assistant:n,thread:i,prisma:e}))}catch(t){return console.log({error:t}),(0,N.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to create run stream: ${t.message}`,workspaceId:n.workspaceId,assistantId:n.id,threadId:i.id},prisma:e}),m.NextResponse.json({error:"Failed to create run stream"},{status:500})}let d=(0,w.createMessageResponse)({client:l,createRunStream:r,handleToolCall:(0,x.handleToolCall)({assistant:n,thread:i,prisma:e})}),u=new TextDecoder,c=d.getReader();for(;;){let e,{value:t,done:a}=await c.read();if(a)break;if(t){try{e=JSON.parse(u.decode(t))}catch(e){continue}if("thread.run.requires_action"===e.event&&e.data?.required_action?.type==="submit_client_tool_outputs"){let t=e.data.required_action.submit_client_tool_outputs.tool_calls;Array.isArray(t)&&await Promise.all(t.map(e=>_.redis.set(`submit-client-tool-outputs:output:${e.id}`,"Client tools cannot be used during tasks",{ex:604800})))}}}return await (0,k.scheduleTask)({task:o,prisma:e}),m.NextResponse.json({ok:!0})})({prisma:e});return process.env.QSTASH_CURRENT_SIGNING_KEY?function(e,t){let a=(void 0)??process.env.QSTASH_CURRENT_SIGNING_KEY;if(!a)throw Error("currentSigningKey is required, either in the config or as env variable QSTASH_CURRENT_SIGNING_KEY");let r=(void 0)??process.env.QSTASH_NEXT_SIGNING_KEY;if(!r)throw Error("nextSigningKey is required, either in the config or as env variable QSTASH_NEXT_SIGNING_KEY");let s=new E.Receiver({currentSigningKey:a,nextSigningKey:r});return async(a,r)=>{let o=a.clone(),n=a.headers.get("upstash-signature");if(!n)return new Response(new TextEncoder().encode("`Upstash-Signature` header is missing"),{status:403});if("string"!=typeof n)throw TypeError("`Upstash-Signature` header is not a string");let i=await o.text();return await s.verify({signature:n,body:i,clockTolerance:t?.clockTolerance})?e(a,r):new Response(new TextEncoder().encode("invalid signature"),{status:403})}}(t):t})({prisma:T.prisma});e.i(72490);var P=e.i(67490);let H=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/tasks/callback/route",pathname:"/api/tasks/callback",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/supercorp/superinterface/packages/server/src/app/api/tasks/callback/route.ts",nextConfigOutput:"",userland:P}),{workAsyncStorage:M,workUnitAsyncStorage:L,serverHooks:U}=H;function G(){return(0,r.patchFetch)({workAsyncStorage:M,workUnitAsyncStorage:L})}async function F(e,t,r){var T;let m="/api/tasks/callback/route";m=m.replace(/\/index$/,"")||"/";let E=await H.prepare(e,t,{srcPage:m,multiZoneDraftMode:!1});if(!E)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:w,params:S,nextConfig:f,isDraftMode:I,prerenderManifest:k,routerServerContext:x,isOnDemandRevalidate:N,revalidateOnlyGenerated:y,resolvedPathname:_}=E,A=(0,n.normalizeAppPath)(m),C=!!(k.dynamicRoutes[A]||k.routes[_]);if(C&&!I){let e=!!k.routes[_],t=k.dynamicRoutes[A];if(t&&!1===t.fallback&&!e)throw new g.NoFallbackError}let q=null;!C||H.isDev||I||(q="/index"===(q=_)?"/":q);let O=!0===H.isDev||!C,b=C&&!O,P=e.method||"GET",M=(0,o.getTracer)(),L=M.getActiveScopeSpan(),U={params:S,prerenderManifest:k,renderOpts:{experimental:{cacheComponents:!!f.experimental.cacheComponents,authInterrupts:!!f.experimental.authInterrupts},supportsDynamicResponse:O,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:null==(T=f.experimental)?void 0:T.cacheLife,isRevalidate:b,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r)=>H.onRequestError(e,t,r,x)},sharedContext:{buildId:w}},G=new i.NodeNextRequest(e),F=new i.NodeNextResponse(t),K=l.NextRequestAdapter.fromNodeNextRequest(G,(0,l.signalFromNodeResponse)(t));try{let n=async a=>H.handle(K,U).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=r.get("next.route");if(s){let e=`${P} ${s}`;a.setAttributes({"next.route":s,"http.route":s,"next.span_name":e}),a.updateName(e)}else a.updateName(`${P} ${e.url}`)}),i=async o=>{var i,l;let d=async({previousCacheEntry:a})=>{try{if(!(0,s.getRequestMeta)(e,"minimalMode")&&N&&y&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await n(o);e.fetchMetrics=U.renderOpts.fetchMetrics;let l=U.renderOpts.pendingWaitUntil;l&&r.waitUntil&&(r.waitUntil(l),l=void 0);let d=U.renderOpts.collectedTags;if(!C)return await (0,c.sendResponse)(G,F,i,U.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,p.toNodeOutgoingHttpHeaders)(i.headers);d&&(t[R.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=R.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,r=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=R.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:r}}}}catch(t){throw(null==a?void 0:a.isStale)&&await H.onRequestError(e,t,{routerKind:"App Router",routePath:m,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isRevalidate:b,isOnDemandRevalidate:N})},x),t}},g=await H.handleResponse({req:e,nextConfig:f,cacheKey:q,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:k,isRoutePPREnabled:!1,isOnDemandRevalidate:N,revalidateOnlyGenerated:y,responseGenerator:d,waitUntil:r.waitUntil});if(!C)return null;if((null==g||null==(i=g.value)?void 0:i.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==g||null==(l=g.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});(0,s.getRequestMeta)(e,"minimalMode")||t.setHeader("x-nextjs-cache",N?"REVALIDATED":g.isMiss?"MISS":g.isStale?"STALE":"HIT"),I&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let T=(0,p.fromNodeOutgoingHttpHeaders)(g.value.headers);return(0,s.getRequestMeta)(e,"minimalMode")&&C||T.delete(R.NEXT_CACHE_TAGS_HEADER),!g.cacheControl||t.getHeader("Cache-Control")||T.get("Cache-Control")||T.set("Cache-Control",(0,h.getCacheControlHeader)(g.cacheControl)),await (0,c.sendResponse)(G,F,new Response(g.value.body,{headers:T,status:g.value.status||200})),null};L?await i(L):await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${P} ${e.url}`,kind:o.SpanKind.SERVER,attributes:{"http.method":P,"http.target":e.url}},i))}catch(t){if(t instanceof g.NoFallbackError||await H.onRequestError(e,t,{routerKind:"App Router",routePath:A,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isRevalidate:b,isOnDemandRevalidate:N})}),C)throw t;return await (0,c.sendResponse)(G,F,new Response(null,{status:500})),null}}}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=c4f00_next_dist_esm_build_templates_app-route_cb746cf4.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[86719,e=>{"use strict";e.s(["handler",()=>et,"patchFetch",()=>ee,"routeModule",()=>J,"serverHooks",()=>Y,"workAsyncStorage",()=>Z,"workUnitAsyncStorage",()=>Q],86719);var t=e.i(5865),a=e.i(43877),s=e.i(77767),r=e.i(92562),o=e.i(66256),n=e.i(5270),i=e.i(90231),d=e.i(82677),l=e.i(51081),u=e.i(89822),c=e.i(9124),p=e.i(39147),g=e.i(40568),R=e.i(87188),h=e.i(93695);e.i(57132);var v=e.i(80739);e.s(["GET",()=>B,"OPTIONS",()=>V,"POST",()=>W,"maxDuration",()=>K],26738),e.s(["GET",()=>B,"OPTIONS",()=>V,"POST",()=>W],58409);var m=e.i(24493),w=e.i(49493),S=e.i(29173),E=e.i(91877),T=e.i(70691),I=e.i(30611),f=e.i(13669),L=e.i(14554),q=e.i(95690);e.i(97691);var y=e.i(67775),P=e.i(7651),A=e.i(75247);let M=async({textContent:e,audioContent:t,assistant:a})=>{if(e)return e;if(t){let e=a.workspace.modelProviders.find(e=>e.type===S.ModelProviderType.OPENAI);if(!e?.apiKey)throw Error("No OpenAI API key found");let s=(0,P.buildOpenaiClient)({modelProvider:e}),r=t.split(",")[1];if((0,A.isEmpty)(r))return"-";let o=Buffer.from(r,"base64"),n=await (0,y.toFile)(o,"message.mp3");return(await s.audio.transcriptions.create({file:n,model:"whisper-1"})).text}throw Error("No content found")};var O=e.i(9949),N=e.i(56512),x=e.i(9394),k=e.i(38372);let C=async({assistant:e})=>{let t=(0,T.optimisticId)(),a=(0,N.default)().unix();return{data:await Promise.all(e.initialMessages.map(async(s,r)=>(0,T.serializeMessage)({message:{id:(0,T.optimisticId)(),role:s.role.toLowerCase(),created_at:a-r-1,object:"thread.message",content:[{type:"text",text:{annotations:[],value:s.content}}],run_id:null,assistant_id:s.role===S.MessageRole.ASSISTANT?(({assistant:e})=>{if((0,x.isOpenaiAssistantsStorageProvider)({storageProviderType:e.storageProviderType}))return e.openaiAssistantId;if((0,k.isResponsesStorageProvider)({storageProviderType:e.storageProviderType})||e.storageProviderType===S.StorageProviderType.SUPERINTERFACE_CLOUD)return e.id;throw Error("Invalid storage type")})({assistant:e}):null,thread_id:t,attachments:s.attachments,metadata:s.metadata,completed_at:a-r-1,incomplete_at:null,incomplete_details:null,status:"completed",runSteps:[]}}))),hasNextPage:!1,lastId:null}};var b=e.i(58011),j=e.i(39713),_=e.i(96227),H=e.i(57623),F=e.i(18527);let G=async({workspaceAccessWhere:e,prisma:t})=>(await t.workspace.findFirst({where:e})).id;var U=e.i(55897);let $=({threadId:e})=>e&&(0,U.validate)(e)?e:"00000000-0000-0000-0000-000000000000";var z=e.i(10671);let D=({error:e})=>e instanceof Error?`${e.message}${(({error:e})=>e.cause instanceof Error?` ${e.cause.message}`:e.cause?` ${e.cause}`:"")({error:e})}`:String(e),K=800,B=(({prisma:e})=>async t=>{let a=f.z.object({publicApiKey:f.z.string().optional(),assistantId:f.z.string().optional(),threadId:f.z.string().optional(),pageParam:f.z.string().optional()}).parse(Object.fromEntries(t.nextUrl.searchParams.entries())),s=await (0,O.workspaceAccessWhere)({publicApiKey:a.publicApiKey??null,prisma:e});if(!s)return w.NextResponse.json({error:"Invalid api key"},{status:400});let r=a.assistantId;if(!r)return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:400,message:"No assistantId found.",workspaceId:await G({workspaceAccessWhere:s,prisma:e})},prisma:e}),w.NextResponse.json({error:"No assistant id found"},{status:400});let{threadId:o,pageParam:n}=a,i=await e.assistant.findFirst({where:{id:r,workspace:s},include:{threads:{where:{id:$({threadId:o??null})},take:1,include:{assistant:{select:{storageProviderType:!0}}}},workspace:{include:{modelProviders:!0}},modelProvider:!0,initialMessages:{orderBy:{orderNumber:"desc"}},mcpServers:{include:{computerUseTool:!0,stdioTransport:!0,sseTransport:!0,httpTransport:!0}},tools:{include:{fileSearchTool:!0,webSearchTool:!0,imageGenerationTool:!0,codeInterpreterTool:!0,computerUseTool:!0}},functions:!0}});if(!i)return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:400,message:"No assistant found.",workspaceId:await G({workspaceAccessWhere:s,prisma:e})},prisma:e}),w.NextResponse.json({error:"No assistant found"},{status:400});if(!o)return w.NextResponse.json(await C({assistant:i}),{headers:I.cacheHeaders});let d=i.threads[0];if(!d)return w.NextResponse.json(await C({assistant:i}),{headers:I.cacheHeaders});let l=(0,q.assistantClientAdapter)({assistant:i,prisma:e,thread:d}),u=(0,L.storageThreadId)({thread:d});if(!u)return w.NextResponse.json(await C({assistant:i}),{headers:I.cacheHeaders});try{return w.NextResponse.json(await (0,E.messagesResponse)({threadId:u,client:l,...n?{pageParam:n}:{}}),{headers:I.cacheHeaders})}catch(t){return console.dir({error:t},{depth:null}),(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.GET,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to load messages: ${t.message}`,workspaceId:i.workspaceId,assistantId:i.id,threadId:d.id},prisma:e}),w.NextResponse.json({error:"Failed to load messages."},{status:500})}})({prisma:m.prisma}),W=(({prisma:e,onSuccessCreateThread:t=()=>void 0})=>async a=>{let s,r,o,n=f.z.object({audioContent:f.z.any().optional(),content:f.z.any().optional(),attachments:f.z.array(f.z.any()).optional(),assistantId:f.z.string().optional(),publicApiKey:f.z.string().optional(),threadId:f.z.string().optional()}).passthrough().parse(await a.json()),{audioContent:i,content:d,attachments:l,assistantId:u,publicApiKey:c,...p}=n,g=await (0,O.workspaceAccessWhere)({publicApiKey:c??null,prisma:e});if(!g)return w.NextResponse.json({error:"Invalid api key"},{status:400});if(!u)return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:400,message:"No assistantId found.",workspaceId:await G({workspaceAccessWhere:g,prisma:e})},prisma:e}),w.NextResponse.json({error:"No assistantId found."},{status:400});if(!d&&!i&&!l?.length)return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:400,message:"No content found.",workspaceId:await G({workspaceAccessWhere:g,prisma:e})},prisma:e}),w.NextResponse.json({error:"No content found."},{status:400});let R=await e.assistant.findFirst({where:{id:u,workspace:g},include:{threads:{where:{id:$({threadId:n.threadId??null})},include:{assistant:{select:{storageProviderType:!0}}},take:1},workspace:{include:{modelProviders:!0}},mcpServers:{include:{computerUseTool:!0,stdioTransport:!0,sseTransport:!0,httpTransport:!0}},tools:{include:{fileSearchTool:!0,webSearchTool:!0,imageGenerationTool:!0,codeInterpreterTool:!0,computerUseTool:{include:{mcpServer:{include:{stdioTransport:!0,sseTransport:!0,httpTransport:!0}}}}}},functions:{include:{handler:{include:{requestHandler:!0,firecrawlHandler:!0,replicateHandler:!0,clientToolHandler:!0,assistantHandler:!0,createTaskHandler:!0,listTasksHandler:!0,updateTaskHandler:!0,deleteTaskHandler:!0}}}},modelProvider:!0,initialMessages:{orderBy:{orderNumber:"asc"}}}});if(!R)return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:400,message:"No assistant found.",workspaceId:await G({workspaceAccessWhere:g,prisma:e})},prisma:e}),w.NextResponse.json({error:"No assistant found."},{status:400});if((0,x.isOpenaiAssistantsStorageProvider)({storageProviderType:R.storageProviderType})&&!R.openaiAssistantId)return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:400,message:"Assistant setup is not done.",workspaceId:R.workspaceId,assistantId:R.id},prisma:e}),w.NextResponse.json({error:"Assistant setup is not done."},{status:400});let h=R.threads[0],v=!1;if(!h){let a=(0,q.assistantClientAdapter)({assistant:R,prisma:e});try{h=await (0,_.createThread)({client:a,assistant:R,prisma:e,variables:p}),t({thread:h})}catch(t){return console.error(t),(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to create thread: ${t.message}`,workspaceId:R.workspaceId,assistantId:R.id},prisma:e}),w.NextResponse.json({error:"Failed to create thread."},{status:500})}v=!0}try{s=(0,L.storageThreadId)({thread:h})}catch(t){return console.error(t),(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:"Failed to get storage thread id.",workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}),w.NextResponse.json({error:"Failed to get storage thread id."},{status:500})}if(!s&&((0,x.isOpenaiAssistantsStorageProvider)({storageProviderType:R.storageProviderType})||(0,k.isResponsesStorageProvider)({storageProviderType:R.storageProviderType})))try{s=await (0,H.managedOpenaiThreadId)({assistant:R,threadId:h.id,prisma:e})}catch(t){return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to get managed openai thread id: ${t.message}`,workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}),w.NextResponse.json({error:"Failed to get managed openai thread id."},{status:500})}if(!s)return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:"Invalid thread configuration.",workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}),w.NextResponse.json({error:"Invalid thread configuration."},{status:500});try{r=await M({audioContent:i,textContent:d,assistant:R})}catch(t){return console.error(t),(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to get content: ${t.message}`,workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}),w.NextResponse.json({error:"Failed to get content."},{status:500})}let m=(0,q.assistantClientAdapter)({assistant:R,prisma:e,thread:h});try{await m.beta.threads.messages.create(s,{role:"user",content:r,...l?.length?{attachments:l}:{},metadata:(0,z.serializeMetadata)({variables:p,workspaceId:R.workspaceId,prisma:e})})}catch(t){return console.log({error:t}),(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to create message: ${t.message}`,workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}),w.NextResponse.json({error:"Failed to create message."},{status:500})}try{o=await m.beta.threads.runs.create(s,await (0,b.createRunOpts)({assistant:R,thread:h,prisma:e}))}catch(t){return console.error(t),(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to create run stream: ${D({error:t})}`,workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}),w.NextResponse.json({error:"Failed to create run stream."},{status:500})}let I=null,y=null;return new Response((0,E.createMessageResponse)({client:m,createRunStream:o,handleToolCall:(0,j.handleToolCall)({assistant:R,thread:h,prisma:e}),onStart:({controller:e})=>{if(v)return(0,T.enqueueJson)({controller:e,value:{event:"thread.created",data:(({thread:e})=>({id:(0,L.storageThreadId)({thread:e}),object:"thread",created_at:(0,N.default)(e.createdAt).unix(),metadata:e.metadata}))({thread:h})}})},onError:async({error:t})=>{a.signal.aborted||(console.dir({error:t},{depth:null}),(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Thread Run failed: ${D({error:t})}`,workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}))},onEvent:({event:t,data:a})=>{"thread.run.failed"===t?(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Thread Run failed: ${a.last_error?.message}`,workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}):"thread.run.in_progress"===t?I=a:"thread.run.completed"===t&&(y=a)},onClose:async()=>{!y&&(0,x.isOpenaiAssistantsStorageProvider)({storageProviderType:R.storageProviderType})&&I&&await m.beta.threads.runs.cancel(I.id,{thread_id:I.thread_id})}}),{status:200,headers:{"Content-Type":"application/json; charset=utf-8"}})})({prisma:m.prisma}),V=()=>w.NextResponse.json({},{headers:I.cacheHeaders});e.i(58409);var X=e.i(26738);let J=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/messages/route",pathname:"/api/messages",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/supercorp/superinterface/packages/server/src/app/api/messages/route.ts",nextConfigOutput:"",userland:X}),{workAsyncStorage:Z,workUnitAsyncStorage:Q,serverHooks:Y}=J;function ee(){return(0,s.patchFetch)({workAsyncStorage:Z,workUnitAsyncStorage:Q})}async function et(e,t,s){var m;let w="/api/messages/route";w=w.replace(/\/index$/,"")||"/";let S=await J.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!S)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:E,params:T,nextConfig:I,isDraftMode:f,prerenderManifest:L,routerServerContext:q,isOnDemandRevalidate:y,revalidateOnlyGenerated:P,resolvedPathname:A}=S,M=(0,n.normalizeAppPath)(w),O=!!(L.dynamicRoutes[M]||L.routes[A]);if(O&&!f){let e=!!L.routes[A],t=L.dynamicRoutes[M];if(t&&!1===t.fallback&&!e)throw new h.NoFallbackError}let N=null;!O||J.isDev||f||(N="/index"===(N=A)?"/":N);let x=!0===J.isDev||!O,k=O&&!x,C=e.method||"GET",b=(0,o.getTracer)(),j=b.getActiveScopeSpan(),_={params:T,prerenderManifest:L,renderOpts:{experimental:{cacheComponents:!!I.experimental.cacheComponents,authInterrupts:!!I.experimental.authInterrupts},supportsDynamicResponse:x,incrementalCache:(0,r.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:null==(m=I.experimental)?void 0:m.cacheLife,isRevalidate:k,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,s)=>J.onRequestError(e,t,s,q)},sharedContext:{buildId:E}},H=new i.NodeNextRequest(e),F=new i.NodeNextResponse(t),G=d.NextRequestAdapter.fromNodeNextRequest(H,(0,d.signalFromNodeResponse)(t));try{let n=async a=>J.handle(G,_).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let s=b.getRootSpanAttributes();if(!s)return;if(s.get("next.span_type")!==l.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${s.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=s.get("next.route");if(r){let e=`${C} ${r}`;a.setAttributes({"next.route":r,"http.route":r,"next.span_name":e}),a.updateName(e)}else a.updateName(`${C} ${e.url}`)}),i=async o=>{var i,d;let l=async({previousCacheEntry:a})=>{try{if(!(0,r.getRequestMeta)(e,"minimalMode")&&y&&P&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await n(o);e.fetchMetrics=_.renderOpts.fetchMetrics;let d=_.renderOpts.pendingWaitUntil;d&&s.waitUntil&&(s.waitUntil(d),d=void 0);let l=_.renderOpts.collectedTags;if(!O)return await (0,c.sendResponse)(H,F,i,_.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,p.toNodeOutgoingHttpHeaders)(i.headers);l&&(t[R.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==_.renderOpts.collectedRevalidate&&!(_.renderOpts.collectedRevalidate>=R.INFINITE_CACHE)&&_.renderOpts.collectedRevalidate,s=void 0===_.renderOpts.collectedExpire||_.renderOpts.collectedExpire>=R.INFINITE_CACHE?void 0:_.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:s}}}}catch(t){throw(null==a?void 0:a.isStale)&&await J.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isRevalidate:k,isOnDemandRevalidate:y})},q),t}},h=await J.handleResponse({req:e,nextConfig:I,cacheKey:N,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:L,isRoutePPREnabled:!1,isOnDemandRevalidate:y,revalidateOnlyGenerated:P,responseGenerator:l,waitUntil:s.waitUntil});if(!O)return null;if((null==h||null==(i=h.value)?void 0:i.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==h||null==(d=h.value)?void 0:d.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});(0,r.getRequestMeta)(e,"minimalMode")||t.setHeader("x-nextjs-cache",y?"REVALIDATED":h.isMiss?"MISS":h.isStale?"STALE":"HIT"),f&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,p.fromNodeOutgoingHttpHeaders)(h.value.headers);return(0,r.getRequestMeta)(e,"minimalMode")&&O||m.delete(R.NEXT_CACHE_TAGS_HEADER),!h.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,g.getCacheControlHeader)(h.cacheControl)),await (0,c.sendResponse)(H,F,new Response(h.value.body,{headers:m,status:h.value.status||200})),null};j?await i(j):await b.withPropagatedContext(e.headers,()=>b.trace(l.BaseServerSpan.handleRequest,{spanName:`${C} ${e.url}`,kind:o.SpanKind.SERVER,attributes:{"http.method":C,"http.target":e.url}},i))}catch(t){if(t instanceof h.NoFallbackError||await J.onRequestError(e,t,{routerKind:"App Router",routePath:M,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isRevalidate:k,isOnDemandRevalidate:y})}),O)throw t;return await (0,c.sendResponse)(H,F,new Response(null,{status:500})),null}}}];
|
|
1
|
+
module.exports=[86719,e=>{"use strict";e.s(["handler",()=>et,"patchFetch",()=>ee,"routeModule",()=>J,"serverHooks",()=>Y,"workAsyncStorage",()=>Z,"workUnitAsyncStorage",()=>Q],86719);var t=e.i(5865),a=e.i(43877),s=e.i(77767),r=e.i(92562),o=e.i(66256),n=e.i(5270),i=e.i(90231),d=e.i(82677),l=e.i(51081),u=e.i(89822),c=e.i(9124),p=e.i(39147),g=e.i(40568),R=e.i(87188),h=e.i(93695);e.i(57132);var v=e.i(80739);e.s(["GET",()=>B,"OPTIONS",()=>V,"POST",()=>W,"maxDuration",()=>K],26738),e.s(["GET",()=>B,"OPTIONS",()=>V,"POST",()=>W],58409);var m=e.i(24493),w=e.i(49493),S=e.i(29173),E=e.i(50498),T=e.i(91450),I=e.i(30611),f=e.i(13669),L=e.i(14554),q=e.i(95690);e.i(97691);var y=e.i(67775),P=e.i(7651),A=e.i(75247);let M=async({textContent:e,audioContent:t,assistant:a})=>{if(e)return e;if(t){let e=a.workspace.modelProviders.find(e=>e.type===S.ModelProviderType.OPENAI);if(!e?.apiKey)throw Error("No OpenAI API key found");let s=(0,P.buildOpenaiClient)({modelProvider:e}),r=t.split(",")[1];if((0,A.isEmpty)(r))return"-";let o=Buffer.from(r,"base64"),n=await (0,y.toFile)(o,"message.mp3");return(await s.audio.transcriptions.create({file:n,model:"whisper-1"})).text}throw Error("No content found")};var O=e.i(9949),N=e.i(56512),x=e.i(9394),k=e.i(38372);let C=async({assistant:e})=>{let t=(0,T.optimisticId)(),a=(0,N.default)().unix();return{data:await Promise.all(e.initialMessages.map(async(s,r)=>(0,T.serializeMessage)({message:{id:(0,T.optimisticId)(),role:s.role.toLowerCase(),created_at:a-r-1,object:"thread.message",content:[{type:"text",text:{annotations:[],value:s.content}}],run_id:null,assistant_id:s.role===S.MessageRole.ASSISTANT?(({assistant:e})=>{if((0,x.isOpenaiAssistantsStorageProvider)({storageProviderType:e.storageProviderType}))return e.openaiAssistantId;if((0,k.isResponsesStorageProvider)({storageProviderType:e.storageProviderType})||e.storageProviderType===S.StorageProviderType.SUPERINTERFACE_CLOUD)return e.id;throw Error("Invalid storage type")})({assistant:e}):null,thread_id:t,attachments:s.attachments,metadata:s.metadata,completed_at:a-r-1,incomplete_at:null,incomplete_details:null,status:"completed",runSteps:[]}}))),hasNextPage:!1,lastId:null}};var b=e.i(58011),j=e.i(39713),_=e.i(96227),H=e.i(57623),F=e.i(18527);let G=async({workspaceAccessWhere:e,prisma:t})=>(await t.workspace.findFirst({where:e})).id;var U=e.i(55897);let $=({threadId:e})=>e&&(0,U.validate)(e)?e:"00000000-0000-0000-0000-000000000000";var z=e.i(10671);let D=({error:e})=>e instanceof Error?`${e.message}${(({error:e})=>e.cause instanceof Error?` ${e.cause.message}`:e.cause?` ${e.cause}`:"")({error:e})}`:String(e),K=800,B=(({prisma:e})=>async t=>{let a=f.z.object({publicApiKey:f.z.string().optional(),assistantId:f.z.string().optional(),threadId:f.z.string().optional(),pageParam:f.z.string().optional()}).parse(Object.fromEntries(t.nextUrl.searchParams.entries())),s=await (0,O.workspaceAccessWhere)({publicApiKey:a.publicApiKey??null,prisma:e});if(!s)return w.NextResponse.json({error:"Invalid api key"},{status:400});let r=a.assistantId;if(!r)return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:400,message:"No assistantId found.",workspaceId:await G({workspaceAccessWhere:s,prisma:e})},prisma:e}),w.NextResponse.json({error:"No assistant id found"},{status:400});let{threadId:o,pageParam:n}=a,i=await e.assistant.findFirst({where:{id:r,workspace:s},include:{threads:{where:{id:$({threadId:o??null})},take:1,include:{assistant:{select:{storageProviderType:!0}}}},workspace:{include:{modelProviders:!0}},modelProvider:!0,initialMessages:{orderBy:{orderNumber:"desc"}},mcpServers:{include:{computerUseTool:!0,stdioTransport:!0,sseTransport:!0,httpTransport:!0}},tools:{include:{fileSearchTool:!0,webSearchTool:!0,imageGenerationTool:!0,codeInterpreterTool:!0,computerUseTool:!0}},functions:!0}});if(!i)return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:400,message:"No assistant found.",workspaceId:await G({workspaceAccessWhere:s,prisma:e})},prisma:e}),w.NextResponse.json({error:"No assistant found"},{status:400});if(!o)return w.NextResponse.json(await C({assistant:i}),{headers:I.cacheHeaders});let d=i.threads[0];if(!d)return w.NextResponse.json(await C({assistant:i}),{headers:I.cacheHeaders});let l=(0,q.assistantClientAdapter)({assistant:i,prisma:e,thread:d}),u=(0,L.storageThreadId)({thread:d});if(!u)return w.NextResponse.json(await C({assistant:i}),{headers:I.cacheHeaders});try{return w.NextResponse.json(await (0,E.messagesResponse)({threadId:u,client:l,...n?{pageParam:n}:{}}),{headers:I.cacheHeaders})}catch(t){return console.dir({error:t},{depth:null}),(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.GET,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to load messages: ${t.message}`,workspaceId:i.workspaceId,assistantId:i.id,threadId:d.id},prisma:e}),w.NextResponse.json({error:"Failed to load messages."},{status:500})}})({prisma:m.prisma}),W=(({prisma:e,onSuccessCreateThread:t=()=>void 0})=>async a=>{let s,r,o,n=f.z.object({audioContent:f.z.any().optional(),content:f.z.any().optional(),attachments:f.z.array(f.z.any()).optional(),assistantId:f.z.string().optional(),publicApiKey:f.z.string().optional(),threadId:f.z.string().optional()}).passthrough().parse(await a.json()),{audioContent:i,content:d,attachments:l,assistantId:u,publicApiKey:c,...p}=n,g=await (0,O.workspaceAccessWhere)({publicApiKey:c??null,prisma:e});if(!g)return w.NextResponse.json({error:"Invalid api key"},{status:400});if(!u)return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:400,message:"No assistantId found.",workspaceId:await G({workspaceAccessWhere:g,prisma:e})},prisma:e}),w.NextResponse.json({error:"No assistantId found."},{status:400});if(!d&&!i&&!l?.length)return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:400,message:"No content found.",workspaceId:await G({workspaceAccessWhere:g,prisma:e})},prisma:e}),w.NextResponse.json({error:"No content found."},{status:400});let R=await e.assistant.findFirst({where:{id:u,workspace:g},include:{threads:{where:{id:$({threadId:n.threadId??null})},include:{assistant:{select:{storageProviderType:!0}}},take:1},workspace:{include:{modelProviders:!0}},mcpServers:{include:{computerUseTool:!0,stdioTransport:!0,sseTransport:!0,httpTransport:!0}},tools:{include:{fileSearchTool:!0,webSearchTool:!0,imageGenerationTool:!0,codeInterpreterTool:!0,computerUseTool:{include:{mcpServer:{include:{stdioTransport:!0,sseTransport:!0,httpTransport:!0}}}}}},functions:{include:{handler:{include:{requestHandler:!0,firecrawlHandler:!0,replicateHandler:!0,clientToolHandler:!0,assistantHandler:!0,createTaskHandler:!0,listTasksHandler:!0,updateTaskHandler:!0,deleteTaskHandler:!0}}}},modelProvider:!0,initialMessages:{orderBy:{orderNumber:"asc"}}}});if(!R)return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:400,message:"No assistant found.",workspaceId:await G({workspaceAccessWhere:g,prisma:e})},prisma:e}),w.NextResponse.json({error:"No assistant found."},{status:400});if((0,x.isOpenaiAssistantsStorageProvider)({storageProviderType:R.storageProviderType})&&!R.openaiAssistantId)return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:400,message:"Assistant setup is not done.",workspaceId:R.workspaceId,assistantId:R.id},prisma:e}),w.NextResponse.json({error:"Assistant setup is not done."},{status:400});let h=R.threads[0],v=!1;if(!h){let a=(0,q.assistantClientAdapter)({assistant:R,prisma:e});try{h=await (0,_.createThread)({client:a,assistant:R,prisma:e,variables:p}),t({thread:h})}catch(t){return console.error(t),(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to create thread: ${t.message}`,workspaceId:R.workspaceId,assistantId:R.id},prisma:e}),w.NextResponse.json({error:"Failed to create thread."},{status:500})}v=!0}try{s=(0,L.storageThreadId)({thread:h})}catch(t){return console.error(t),(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:"Failed to get storage thread id.",workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}),w.NextResponse.json({error:"Failed to get storage thread id."},{status:500})}if(!s&&((0,x.isOpenaiAssistantsStorageProvider)({storageProviderType:R.storageProviderType})||(0,k.isResponsesStorageProvider)({storageProviderType:R.storageProviderType})))try{s=await (0,H.managedOpenaiThreadId)({assistant:R,threadId:h.id,prisma:e})}catch(t){return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to get managed openai thread id: ${t.message}`,workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}),w.NextResponse.json({error:"Failed to get managed openai thread id."},{status:500})}if(!s)return(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:"Invalid thread configuration.",workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}),w.NextResponse.json({error:"Invalid thread configuration."},{status:500});try{r=await M({audioContent:i,textContent:d,assistant:R})}catch(t){return console.error(t),(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to get content: ${t.message}`,workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}),w.NextResponse.json({error:"Failed to get content."},{status:500})}let m=(0,q.assistantClientAdapter)({assistant:R,prisma:e,thread:h});try{await m.beta.threads.messages.create(s,{role:"user",content:r,...l?.length?{attachments:l}:{},metadata:(0,z.serializeMetadata)({variables:p,workspaceId:R.workspaceId,prisma:e})})}catch(t){return console.log({error:t}),(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to create message: ${t.message}`,workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}),w.NextResponse.json({error:"Failed to create message."},{status:500})}try{o=await m.beta.threads.runs.create(s,await (0,b.createRunOpts)({assistant:R,thread:h,prisma:e}))}catch(t){return console.error(t),(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Failed to create run stream: ${D({error:t})}`,workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}),w.NextResponse.json({error:"Failed to create run stream."},{status:500})}let I=null,y=null;return new Response((0,E.createMessageResponse)({client:m,createRunStream:o,handleToolCall:(0,j.handleToolCall)({assistant:R,thread:h,prisma:e}),onStart:({controller:e})=>{if(v)return(0,T.enqueueJson)({controller:e,value:{event:"thread.created",data:(({thread:e})=>({id:(0,L.storageThreadId)({thread:e}),object:"thread",created_at:(0,N.default)(e.createdAt).unix(),metadata:e.metadata}))({thread:h})}})},onError:async({error:t})=>{a.signal.aborted||(console.dir({error:t},{depth:null}),(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Thread Run failed: ${D({error:t})}`,workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}))},onEvent:({event:t,data:a})=>{"thread.run.failed"===t?(0,F.createLog)({log:{requestMethod:S.LogRequestMethod.POST,requestRoute:S.LogRequestRoute.MESSAGES,level:S.LogLevel.ERROR,status:500,message:`Thread Run failed: ${a.last_error?.message}`,workspaceId:R.workspaceId,assistantId:R.id,threadId:h.id},prisma:e}):"thread.run.in_progress"===t?I=a:"thread.run.completed"===t&&(y=a)},onClose:async()=>{!y&&(0,x.isOpenaiAssistantsStorageProvider)({storageProviderType:R.storageProviderType})&&I&&await m.beta.threads.runs.cancel(I.id,{thread_id:I.thread_id})}}),{status:200,headers:{"Content-Type":"application/json; charset=utf-8"}})})({prisma:m.prisma}),V=()=>w.NextResponse.json({},{headers:I.cacheHeaders});e.i(58409);var X=e.i(26738);let J=new t.AppRouteRouteModule({definition:{kind:a.RouteKind.APP_ROUTE,page:"/api/messages/route",pathname:"/api/messages",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/supercorp/superinterface/packages/server/src/app/api/messages/route.ts",nextConfigOutput:"",userland:X}),{workAsyncStorage:Z,workUnitAsyncStorage:Q,serverHooks:Y}=J;function ee(){return(0,s.patchFetch)({workAsyncStorage:Z,workUnitAsyncStorage:Q})}async function et(e,t,s){var m;let w="/api/messages/route";w=w.replace(/\/index$/,"")||"/";let S=await J.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!S)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:E,params:T,nextConfig:I,isDraftMode:f,prerenderManifest:L,routerServerContext:q,isOnDemandRevalidate:y,revalidateOnlyGenerated:P,resolvedPathname:A}=S,M=(0,n.normalizeAppPath)(w),O=!!(L.dynamicRoutes[M]||L.routes[A]);if(O&&!f){let e=!!L.routes[A],t=L.dynamicRoutes[M];if(t&&!1===t.fallback&&!e)throw new h.NoFallbackError}let N=null;!O||J.isDev||f||(N="/index"===(N=A)?"/":N);let x=!0===J.isDev||!O,k=O&&!x,C=e.method||"GET",b=(0,o.getTracer)(),j=b.getActiveScopeSpan(),_={params:T,prerenderManifest:L,renderOpts:{experimental:{cacheComponents:!!I.experimental.cacheComponents,authInterrupts:!!I.experimental.authInterrupts},supportsDynamicResponse:x,incrementalCache:(0,r.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:null==(m=I.experimental)?void 0:m.cacheLife,isRevalidate:k,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,s)=>J.onRequestError(e,t,s,q)},sharedContext:{buildId:E}},H=new i.NodeNextRequest(e),F=new i.NodeNextResponse(t),G=d.NextRequestAdapter.fromNodeNextRequest(H,(0,d.signalFromNodeResponse)(t));try{let n=async a=>J.handle(G,_).finally(()=>{if(!a)return;a.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let s=b.getRootSpanAttributes();if(!s)return;if(s.get("next.span_type")!==l.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${s.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=s.get("next.route");if(r){let e=`${C} ${r}`;a.setAttributes({"next.route":r,"http.route":r,"next.span_name":e}),a.updateName(e)}else a.updateName(`${C} ${e.url}`)}),i=async o=>{var i,d;let l=async({previousCacheEntry:a})=>{try{if(!(0,r.getRequestMeta)(e,"minimalMode")&&y&&P&&!a)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await n(o);e.fetchMetrics=_.renderOpts.fetchMetrics;let d=_.renderOpts.pendingWaitUntil;d&&s.waitUntil&&(s.waitUntil(d),d=void 0);let l=_.renderOpts.collectedTags;if(!O)return await (0,c.sendResponse)(H,F,i,_.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,p.toNodeOutgoingHttpHeaders)(i.headers);l&&(t[R.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==_.renderOpts.collectedRevalidate&&!(_.renderOpts.collectedRevalidate>=R.INFINITE_CACHE)&&_.renderOpts.collectedRevalidate,s=void 0===_.renderOpts.collectedExpire||_.renderOpts.collectedExpire>=R.INFINITE_CACHE?void 0:_.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:s}}}}catch(t){throw(null==a?void 0:a.isStale)&&await J.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isRevalidate:k,isOnDemandRevalidate:y})},q),t}},h=await J.handleResponse({req:e,nextConfig:I,cacheKey:N,routeKind:a.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:L,isRoutePPREnabled:!1,isOnDemandRevalidate:y,revalidateOnlyGenerated:P,responseGenerator:l,waitUntil:s.waitUntil});if(!O)return null;if((null==h||null==(i=h.value)?void 0:i.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==h||null==(d=h.value)?void 0:d.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});(0,r.getRequestMeta)(e,"minimalMode")||t.setHeader("x-nextjs-cache",y?"REVALIDATED":h.isMiss?"MISS":h.isStale?"STALE":"HIT"),f&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,p.fromNodeOutgoingHttpHeaders)(h.value.headers);return(0,r.getRequestMeta)(e,"minimalMode")&&O||m.delete(R.NEXT_CACHE_TAGS_HEADER),!h.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,g.getCacheControlHeader)(h.cacheControl)),await (0,c.sendResponse)(H,F,new Response(h.value.body,{headers:m,status:h.value.status||200})),null};j?await i(j):await b.withPropagatedContext(e.headers,()=>b.trace(l.BaseServerSpan.handleRequest,{spanName:`${C} ${e.url}`,kind:o.SpanKind.SERVER,attributes:{"http.method":C,"http.target":e.url}},i))}catch(t){if(t instanceof h.NoFallbackError||await J.onRequestError(e,t,{routerKind:"App Router",routePath:M,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isRevalidate:k,isOnDemandRevalidate:y})}),O)throw t;return await (0,c.sendResponse)(H,F,new Response(null,{status:500})),null}}}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=c4f00_next_dist_esm_build_templates_app-route_f952d9ab.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><!--
|
|
1
|
+
<!DOCTYPE html><!--euNx_MoPmZ6Ig22d_7GLW--><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/76a8a50dbf44f000.js"/><script src="/_next/static/chunks/079ce3572ffa07f6.js" async=""></script><script src="/_next/static/chunks/4649e58e35bcde4b.js" async=""></script><script src="/_next/static/chunks/turbopack-11882cf18a9eb231.js" async=""></script><script src="/_next/static/chunks/03d938d038bc30e3.js" async=""></script><meta name="robots" content="noindex"/><title>404: This page could not be found.</title><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/76a8a50dbf44f000.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[96352,[\"/_next/static/chunks/03d938d038bc30e3.js\"],\"default\"]\n3:I[17753,[\"/_next/static/chunks/03d938d038bc30e3.js\"],\"default\"]\n4:I[51035,[\"/_next/static/chunks/03d938d038bc30e3.js\"],\"OutletBoundary\"]\n6:I[33159,[\"/_next/static/chunks/03d938d038bc30e3.js\"],\"AsyncMetadataOutlet\"]\n8:I[51035,[\"/_next/static/chunks/03d938d038bc30e3.js\"],\"ViewportBoundary\"]\na:I[51035,[\"/_next/static/chunks/03d938d038bc30e3.js\"],\"MetadataBoundary\"]\nb:\"$Sreact.suspense\"\nd:I[25098,[\"/_next/static/chunks/03d938d038bc30e3.js\"],\"default\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"euNx_MoPmZ6Ig22d-7GLW\",\"p\":\"\",\"c\":[\"\",\"_not-found\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/03d938d038bc30e3.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}],{\"children\":[\"/_not-found\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L4\",null,{\"children\":[\"$L5\",[\"$\",\"$L6\",null,{\"promise\":\"$@7\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[[\"$\",\"$L8\",null,{\"children\":\"$L9\"}],null],[\"$\",\"$La\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$b\",null,{\"fallback\":null,\"children\":\"$Lc\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$d\",\"$undefined\"],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"9:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n5:null\n"])</script><script>self.__next_f.push([1,"7:{\"metadata\":[],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"c:\"$7:metadata\"\n"])</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
<!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width" data-next-head=""/><title data-next-head="">500: Internal Server Error</title><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/a6dad97d9634a72d.js"></script><script src="/_next/static/chunks/22bca0be24d1dbb3.js" defer=""></script><script src="/_next/static/chunks/bd1a5816a611d718.js" defer=""></script><script src="/_next/static/chunks/turbopack-3bdbb570d8566903.js" defer=""></script><script src="/_next/static/chunks/e57ec661e9850a31.js" defer=""></script><script src="/_next/static/chunks/turbopack-67ff8c1c5b1ad9a8.js" defer=""></script><script src="/_next/static/
|
|
1
|
+
<!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width" data-next-head=""/><title data-next-head="">500: Internal Server Error</title><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/a6dad97d9634a72d.js"></script><script src="/_next/static/chunks/22bca0be24d1dbb3.js" defer=""></script><script src="/_next/static/chunks/bd1a5816a611d718.js" defer=""></script><script src="/_next/static/chunks/turbopack-3bdbb570d8566903.js" defer=""></script><script src="/_next/static/chunks/e57ec661e9850a31.js" defer=""></script><script src="/_next/static/chunks/turbopack-67ff8c1c5b1ad9a8.js" defer=""></script><script src="/_next/static/euNx_MoPmZ6Ig22d-7GLW/_ssgManifest.js" defer=""></script><script src="/_next/static/euNx_MoPmZ6Ig22d-7GLW/_buildManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":500}},"page":"/_error","query":{},"buildId":"euNx_MoPmZ6Ig22d-7GLW","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
|
|
@@ -1 +1 @@
|
|
|
1
|
-
self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"
|
|
1
|
+
self.__RSC_SERVER_MANIFEST="{\n \"node\": {},\n \"edge\": {},\n \"encryptionKey\": \"qaiQf2qZF9TWlqZHAmxxOwAApZN4/+MtlD/S1CpKU+8=\"\n}"
|
package/.next/trace
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
[{"name":"generate-buildid","duration":182,"timestamp":1283846268836,"id":4,"parentId":1,"tags":{},"startTime":1761175362830,"traceId":"09028ddc8f0f21cf"},{"name":"load-custom-routes","duration":176,"timestamp":1283846269077,"id":5,"parentId":1,"tags":{},"startTime":1761175362830,"traceId":"09028ddc8f0f21cf"},{"name":"create-dist-dir","duration":653,"timestamp":1283846336746,"id":6,"parentId":1,"tags":{},"startTime":1761175362898,"traceId":"09028ddc8f0f21cf"},{"name":"create-pages-mapping","duration":928,"timestamp":1283846537487,"id":7,"parentId":1,"tags":{},"startTime":1761175363099,"traceId":"09028ddc8f0f21cf"},{"name":"collect-app-files","duration":12216,"timestamp":1283846538491,"id":8,"parentId":1,"tags":{},"startTime":1761175363100,"traceId":"09028ddc8f0f21cf"},{"name":"create-app-mapping","duration":910,"timestamp":1283846550732,"id":9,"parentId":1,"tags":{},"startTime":1761175363112,"traceId":"09028ddc8f0f21cf"},{"name":"create-app-layouts","duration":181,"timestamp":1283846551656,"id":10,"parentId":1,"tags":{},"startTime":1761175363113,"traceId":"09028ddc8f0f21cf"},{"name":"collect-default-files","duration":3563,"timestamp":1283846557635,"id":12,"parentId":1,"tags":{},"startTime":1761175363119,"traceId":"09028ddc8f0f21cf"},{"name":"generate-route-types","duration":77152,"timestamp":1283846552219,"id":11,"parentId":1,"tags":{},"startTime":1761175363113,"traceId":"09028ddc8f0f21cf"},{"name":"public-dir-conflict-check","duration":3975,"timestamp":1283846629529,"id":13,"parentId":1,"tags":{},"startTime":1761175363191,"traceId":"09028ddc8f0f21cf"},{"name":"generate-routes-manifest","duration":3359,"timestamp":1283846634382,"id":14,"parentId":1,"tags":{},"startTime":1761175363196,"traceId":"09028ddc8f0f21cf"},{"name":"run-turbopack-compiler","duration":14929021,"timestamp":1283846700853,"id":16,"parentId":1,"tags":{},"startTime":1761175363262,"traceId":"09028ddc8f0f21cf"},{"name":"verify-and-lint","duration":12203949,"timestamp":1283861998325,"id":19,"parentId":1,"tags":{},"startTime":1761175378560,"traceId":"09028ddc8f0f21cf"},{"name":"verify-typescript-setup","duration":14487843,"timestamp":1283861972708,"id":18,"parentId":1,"tags":{},"startTime":1761175378534,"traceId":"09028ddc8f0f21cf"},{"name":"check-static-error-page","duration":68970,"timestamp":1283876621347,"id":22,"parentId":21,"tags":{},"startTime":1761175393183,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":6160,"timestamp":1283877212107,"id":23,"parentId":21,"tags":{"page":"/_app"},"startTime":1761175393774,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1949,"timestamp":1283877216327,"id":25,"parentId":21,"tags":{"page":"/_document"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":2051,"timestamp":1283877216227,"id":24,"parentId":21,"tags":{"page":"/_error"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1082898,"timestamp":1283877278965,"id":51,"parentId":28,"tags":{},"startTime":1761175393841,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1145521,"timestamp":1283877216503,"id":28,"parentId":21,"tags":{"page":"/api/api-keys"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1221675,"timestamp":1283877278308,"id":50,"parentId":31,"tags":{},"startTime":1761175393840,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1283475,"timestamp":1283877216596,"id":31,"parentId":21,"tags":{"page":"/api/assistants/[assistantId]/initial-messages"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1237090,"timestamp":1283877286486,"id":58,"parentId":35,"tags":{},"startTime":1761175393848,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1306986,"timestamp":1283877216636,"id":35,"parentId":21,"tags":{"page":"/api/assistants"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1268396,"timestamp":1283877290373,"id":59,"parentId":46,"tags":{},"startTime":1761175393852,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1342210,"timestamp":1283877216697,"id":46,"parentId":21,"tags":{"page":"/api/threads/runs/submit-client-tool-outputs"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1288541,"timestamp":1283877290476,"id":60,"parentId":47,"tags":{},"startTime":1761175393852,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1362756,"timestamp":1283877216702,"id":47,"parentId":21,"tags":{"page":"/api/workspaces/[workspaceId]"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1297878,"timestamp":1283877290531,"id":61,"parentId":48,"tags":{},"startTime":1761175393852,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1371728,"timestamp":1283877216707,"id":48,"parentId":21,"tags":{"page":"/api/workspaces"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1371423,"timestamp":1283877290570,"id":62,"parentId":26,"tags":{},"startTime":1761175393852,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1445693,"timestamp":1283877216344,"id":26,"parentId":21,"tags":{"page":"/_not-found"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1400856,"timestamp":1283877291317,"id":63,"parentId":30,"tags":{},"startTime":1761175393853,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1475728,"timestamp":1283877216519,"id":30,"parentId":21,"tags":{"page":"/api/assistants/[assistantId]/functions"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1440964,"timestamp":1283877291326,"id":64,"parentId":33,"tags":{},"startTime":1761175393853,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1515854,"timestamp":1283877216623,"id":33,"parentId":21,"tags":{"page":"/api/assistants/[assistantId]/mcp-servers"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1462206,"timestamp":1283877291394,"id":65,"parentId":42,"tags":{},"startTime":1761175393853,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1536970,"timestamp":1283877216673,"id":42,"parentId":21,"tags":{"page":"/api/providers"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1640446,"timestamp":1283877279446,"id":54,"parentId":39,"tags":{},"startTime":1761175393841,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1703274,"timestamp":1283877216658,"id":39,"parentId":21,"tags":{"page":"/api/providers/[modelProviderId]/assistants"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1667411,"timestamp":1283877291400,"id":66,"parentId":45,"tags":{},"startTime":1761175393853,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1742169,"timestamp":1283877216692,"id":45,"parentId":21,"tags":{"page":"/api/tasks"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1691214,"timestamp":1283877291755,"id":68,"parentId":29,"tags":{},"startTime":1761175393853,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1766492,"timestamp":1283877216511,"id":29,"parentId":21,"tags":{"page":"/api/assistants/[assistantId]/functions/[functionId]"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1702529,"timestamp":1283877291766,"id":69,"parentId":32,"tags":{},"startTime":1761175393853,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1778418,"timestamp":1283877216610,"id":32,"parentId":21,"tags":{"page":"/api/assistants/[assistantId]/mcp-servers/[mcpServerId]"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1721567,"timestamp":1283877291773,"id":70,"parentId":34,"tags":{},"startTime":1761175393853,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1800311,"timestamp":1283877216630,"id":34,"parentId":21,"tags":{"page":"/api/assistants/[assistantId]"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1728167,"timestamp":1283877291653,"id":67,"parentId":27,"tags":{},"startTime":1761175393853,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1803384,"timestamp":1283877216469,"id":27,"parentId":21,"tags":{"page":"/api/api-keys/[apiKeyId]"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1735366,"timestamp":1283877291784,"id":71,"parentId":43,"tags":{},"startTime":1761175393853,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1810602,"timestamp":1283877216678,"id":43,"parentId":21,"tags":{"page":"/api/tasks/[taskId]"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1740524,"timestamp":1283877291792,"id":72,"parentId":41,"tags":{},"startTime":1761175393853,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1815673,"timestamp":1283877216668,"id":41,"parentId":21,"tags":{"page":"/api/providers/[modelProviderId]"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1741790,"timestamp":1283877308076,"id":73,"parentId":49,"tags":{},"startTime":1761175393870,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1833180,"timestamp":1283877216711,"id":49,"parentId":21,"tags":{"page":"/"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1805974,"timestamp":1283877279350,"id":53,"parentId":40,"tags":{},"startTime":1761175393841,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1869357,"timestamp":1283877216663,"id":40,"parentId":21,"tags":{"page":"/api/providers/[modelProviderId]/models"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1840228,"timestamp":1283877279259,"id":52,"parentId":36,"tags":{},"startTime":1761175393841,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":1908965,"timestamp":1283877216642,"id":36,"parentId":21,"tags":{"page":"/api/files/[fileId]/contents"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":1995304,"timestamp":1283877279542,"id":55,"parentId":37,"tags":{},"startTime":1761175393841,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":2058245,"timestamp":1283877216647,"id":37,"parentId":21,"tags":{"page":"/api/files"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":2057929,"timestamp":1283877280551,"id":56,"parentId":38,"tags":{},"startTime":1761175393842,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":2122073,"timestamp":1283877216652,"id":38,"parentId":21,"tags":{"page":"/api/messages"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"is-page-static","duration":2131599,"timestamp":1283877285681,"id":57,"parentId":44,"tags":{},"startTime":1761175393847,"traceId":"09028ddc8f0f21cf"},{"name":"check-page","duration":2200626,"timestamp":1283877216686,"id":44,"parentId":21,"tags":{"page":"/api/tasks/callback"},"startTime":1761175393778,"traceId":"09028ddc8f0f21cf"},{"name":"static-check","duration":2832828,"timestamp":1283876584683,"id":21,"parentId":1,"tags":{},"startTime":1761175393146,"traceId":"09028ddc8f0f21cf"},{"name":"generate-required-server-files","duration":883,"timestamp":1283879427049,"id":75,"parentId":1,"tags":{},"startTime":1761175395989,"traceId":"09028ddc8f0f21cf"},{"name":"write-routes-manifest","duration":1501,"timestamp":1283879458612,"id":77,"parentId":1,"tags":{},"startTime":1761175396020,"traceId":"09028ddc8f0f21cf"},{"name":"load-dotenv","duration":393,"timestamp":1283880026391,"id":80,"parentId":79,"tags":{},"startTime":1761175396588,"traceId":"09028ddc8f0f21cf"},{"name":"run-export-path-map","duration":2768,"timestamp":1283880116701,"id":81,"parentId":79,"tags":{},"startTime":1761175396679,"traceId":"09028ddc8f0f21cf"},{"name":"next-export","duration":2041502,"timestamp":1283880024664,"id":79,"parentId":1,"tags":{},"startTime":1761175396586,"traceId":"09028ddc8f0f21cf"},{"name":"move-exported-app-not-found-","duration":9029,"timestamp":1283882067501,"id":82,"parentId":78,"tags":{},"startTime":1761175398629,"traceId":"09028ddc8f0f21cf"},{"name":"move-exported-page","duration":2180218,"timestamp":1283882076681,"id":83,"parentId":78,"tags":{},"startTime":1761175398638,"traceId":"09028ddc8f0f21cf"},{"name":"static-generation","duration":4418251,"timestamp":1283880013595,"id":78,"parentId":1,"tags":{},"startTime":1761175396575,"traceId":"09028ddc8f0f21cf"},{"name":"write-routes-manifest","duration":42143,"timestamp":1283884433462,"id":84,"parentId":1,"tags":{},"startTime":1761175400996,"traceId":"09028ddc8f0f21cf"},{"name":"node-file-trace-build","duration":10047725,"timestamp":1283879432121,"id":76,"parentId":1,"tags":{"isTurbotrace":"false"},"startTime":1761175395994,"traceId":"09028ddc8f0f21cf"},{"name":"apply-include-excludes","duration":1504,"timestamp":1283889479896,"id":85,"parentId":1,"tags":{},"startTime":1761175406042,"traceId":"09028ddc8f0f21cf"},{"name":"print-tree-view","duration":20610,"timestamp":1283889482760,"id":86,"parentId":1,"tags":{},"startTime":1761175406045,"traceId":"09028ddc8f0f21cf"},{"name":"telemetry-flush","duration":92,"timestamp":1283889503388,"id":87,"parentId":1,"tags":{},"startTime":1761175406065,"traceId":"09028ddc8f0f21cf"},{"name":"next-build","duration":43821070,"timestamp":1283845682427,"id":1,"tags":{"buildMode":"default","isTurboBuild":"true","version":"15.5.4","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1761175362244,"traceId":"09028ddc8f0f21cf"}]
|
|
1
|
+
[{"name":"generate-buildid","duration":176,"timestamp":2432971181862,"id":4,"parentId":1,"tags":{},"startTime":1762324492570,"traceId":"edd1b4771e8d549b"},{"name":"load-custom-routes","duration":202,"timestamp":2432971182096,"id":5,"parentId":1,"tags":{},"startTime":1762324492570,"traceId":"edd1b4771e8d549b"},{"name":"create-dist-dir","duration":1791,"timestamp":2432971240651,"id":6,"parentId":1,"tags":{},"startTime":1762324492629,"traceId":"edd1b4771e8d549b"},{"name":"create-pages-mapping","duration":299,"timestamp":2432971441046,"id":7,"parentId":1,"tags":{},"startTime":1762324492829,"traceId":"edd1b4771e8d549b"},{"name":"collect-app-files","duration":6864,"timestamp":2432971441422,"id":8,"parentId":1,"tags":{},"startTime":1762324492830,"traceId":"edd1b4771e8d549b"},{"name":"create-app-mapping","duration":2314,"timestamp":2432971448330,"id":9,"parentId":1,"tags":{},"startTime":1762324492837,"traceId":"edd1b4771e8d549b"},{"name":"create-app-layouts","duration":392,"timestamp":2432971450693,"id":10,"parentId":1,"tags":{},"startTime":1762324492839,"traceId":"edd1b4771e8d549b"},{"name":"collect-default-files","duration":10292,"timestamp":2432971457837,"id":12,"parentId":1,"tags":{},"startTime":1762324492846,"traceId":"edd1b4771e8d549b"},{"name":"generate-route-types","duration":66651,"timestamp":2432971451535,"id":11,"parentId":1,"tags":{},"startTime":1762324492840,"traceId":"edd1b4771e8d549b"},{"name":"public-dir-conflict-check","duration":2059,"timestamp":2432971518322,"id":13,"parentId":1,"tags":{},"startTime":1762324492907,"traceId":"edd1b4771e8d549b"},{"name":"generate-routes-manifest","duration":3173,"timestamp":2432971521121,"id":14,"parentId":1,"tags":{},"startTime":1762324492909,"traceId":"edd1b4771e8d549b"},{"name":"run-turbopack-compiler","duration":9053488,"timestamp":2432971592905,"id":16,"parentId":1,"tags":{},"startTime":1762324492981,"traceId":"edd1b4771e8d549b"},{"name":"verify-and-lint","duration":2066493,"timestamp":2432980661029,"id":19,"parentId":1,"tags":{},"startTime":1762324502049,"traceId":"edd1b4771e8d549b"},{"name":"verify-typescript-setup","duration":6300006,"timestamp":2432980658221,"id":18,"parentId":1,"tags":{},"startTime":1762324502047,"traceId":"edd1b4771e8d549b"},{"name":"check-static-error-page","duration":1871,"timestamp":2432986971216,"id":22,"parentId":21,"tags":{},"startTime":1762324508360,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":3022,"timestamp":2432987027260,"id":23,"parentId":21,"tags":{"page":"/_app"},"startTime":1762324508416,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":2511,"timestamp":2432987027780,"id":25,"parentId":21,"tags":{"page":"/_document"},"startTime":1762324508416,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":2574,"timestamp":2432987027718,"id":24,"parentId":21,"tags":{"page":"/_error"},"startTime":1762324508416,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":295092,"timestamp":2432987035923,"id":55,"parentId":35,"tags":{},"startTime":1762324508424,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":302478,"timestamp":2432987028583,"id":35,"parentId":21,"tags":{"page":"/api/assistants"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":297771,"timestamp":2432987034996,"id":50,"parentId":28,"tags":{},"startTime":1762324508423,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":304873,"timestamp":2432987027913,"id":28,"parentId":21,"tags":{"page":"/api/api-keys"},"startTime":1762324508416,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":326257,"timestamp":2432987035496,"id":51,"parentId":31,"tags":{},"startTime":1762324508424,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":334053,"timestamp":2432987028383,"id":31,"parentId":21,"tags":{"page":"/api/assistants/[assistantId]/initial-messages"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":338089,"timestamp":2432987039749,"id":58,"parentId":46,"tags":{},"startTime":1762324508428,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":349039,"timestamp":2432987028829,"id":46,"parentId":21,"tags":{"page":"/api/threads/runs/submit-client-tool-outputs"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":348419,"timestamp":2432987046077,"id":60,"parentId":29,"tags":{},"startTime":1762324508435,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":366636,"timestamp":2432987027921,"id":29,"parentId":21,"tags":{"page":"/api/assistants/[assistantId]/functions/[functionId]"},"startTime":1762324508416,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":354282,"timestamp":2432987046096,"id":61,"parentId":27,"tags":{},"startTime":1762324508435,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":372507,"timestamp":2432987027897,"id":27,"parentId":21,"tags":{"page":"/api/api-keys/[apiKeyId]"},"startTime":1762324508416,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":358536,"timestamp":2432987046098,"id":62,"parentId":32,"tags":{},"startTime":1762324508435,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":376194,"timestamp":2432987028494,"id":32,"parentId":21,"tags":{"page":"/api/assistants/[assistantId]/mcp-servers/[mcpServerId]"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":365987,"timestamp":2432987046102,"id":63,"parentId":34,"tags":{},"startTime":1762324508435,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":383581,"timestamp":2432987028562,"id":34,"parentId":21,"tags":{"page":"/api/assistants/[assistantId]"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":371993,"timestamp":2432987046104,"id":64,"parentId":41,"tags":{},"startTime":1762324508435,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":389427,"timestamp":2432987028697,"id":41,"parentId":21,"tags":{"page":"/api/providers/[modelProviderId]"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":406875,"timestamp":2432987046106,"id":65,"parentId":43,"tags":{},"startTime":1762324508435,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":424278,"timestamp":2432987028734,"id":43,"parentId":21,"tags":{"page":"/api/tasks/[taskId]"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":414469,"timestamp":2432987046274,"id":66,"parentId":47,"tags":{},"startTime":1762324508435,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":431950,"timestamp":2432987028848,"id":47,"parentId":21,"tags":{"page":"/api/workspaces/[workspaceId]"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":450685,"timestamp":2432987035715,"id":52,"parentId":36,"tags":{},"startTime":1762324508424,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":457858,"timestamp":2432987028602,"id":36,"parentId":21,"tags":{"page":"/api/files/[fileId]/contents"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":451582,"timestamp":2432987046404,"id":68,"parentId":48,"tags":{},"startTime":1762324508435,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":469168,"timestamp":2432987028870,"id":48,"parentId":21,"tags":{"page":"/api/workspaces"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":454397,"timestamp":2432987046313,"id":67,"parentId":26,"tags":{},"startTime":1762324508435,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":472964,"timestamp":2432987027795,"id":26,"parentId":21,"tags":{"page":"/_not-found"},"startTime":1762324508416,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":458143,"timestamp":2432987046503,"id":70,"parentId":42,"tags":{},"startTime":1762324508435,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":475976,"timestamp":2432987028716,"id":42,"parentId":21,"tags":{"page":"/api/providers"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":458666,"timestamp":2432987046500,"id":69,"parentId":30,"tags":{},"startTime":1762324508435,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":477256,"timestamp":2432987027935,"id":30,"parentId":21,"tags":{"page":"/api/assistants/[assistantId]/functions"},"startTime":1762324508416,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":463185,"timestamp":2432987046505,"id":71,"parentId":45,"tags":{},"startTime":1762324508435,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":480935,"timestamp":2432987028808,"id":45,"parentId":21,"tags":{"page":"/api/tasks"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":464660,"timestamp":2432987046507,"id":72,"parentId":33,"tags":{},"startTime":1762324508435,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":482654,"timestamp":2432987028535,"id":33,"parentId":21,"tags":{"page":"/api/assistants/[assistantId]/mcp-servers"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":465926,"timestamp":2432987047336,"id":73,"parentId":49,"tags":{},"startTime":1762324508436,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":484388,"timestamp":2432987028888,"id":49,"parentId":21,"tags":{"page":"/"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":537908,"timestamp":2432987035794,"id":53,"parentId":39,"tags":{},"startTime":1762324508424,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":545085,"timestamp":2432987028655,"id":39,"parentId":21,"tags":{"page":"/api/providers/[modelProviderId]/assistants"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":538734,"timestamp":2432987045357,"id":59,"parentId":44,"tags":{},"startTime":1762324508434,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":555369,"timestamp":2432987028788,"id":44,"parentId":21,"tags":{"page":"/api/tasks/callback"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":551335,"timestamp":2432987039130,"id":57,"parentId":37,"tags":{},"startTime":1762324508428,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":561869,"timestamp":2432987028620,"id":37,"parentId":21,"tags":{"page":"/api/files"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":580010,"timestamp":2432987038112,"id":56,"parentId":38,"tags":{},"startTime":1762324508427,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":589514,"timestamp":2432987028638,"id":38,"parentId":21,"tags":{"page":"/api/messages"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"is-page-static","duration":588541,"timestamp":2432987035832,"id":54,"parentId":40,"tags":{},"startTime":1762324508424,"traceId":"edd1b4771e8d549b"},{"name":"check-page","duration":595726,"timestamp":2432987028672,"id":40,"parentId":21,"tags":{"page":"/api/providers/[modelProviderId]/models"},"startTime":1762324508417,"traceId":"edd1b4771e8d549b"},{"name":"static-check","duration":653769,"timestamp":2432986970650,"id":21,"parentId":1,"tags":{},"startTime":1762324508359,"traceId":"edd1b4771e8d549b"},{"name":"generate-required-server-files","duration":288,"timestamp":2432987624679,"id":75,"parentId":1,"tags":{},"startTime":1762324509013,"traceId":"edd1b4771e8d549b"},{"name":"write-routes-manifest","duration":662,"timestamp":2432987631695,"id":77,"parentId":1,"tags":{},"startTime":1762324509020,"traceId":"edd1b4771e8d549b"},{"name":"load-dotenv","duration":18,"timestamp":2432987644545,"id":80,"parentId":79,"tags":{},"startTime":1762324509033,"traceId":"edd1b4771e8d549b"},{"name":"run-export-path-map","duration":253,"timestamp":2432987748384,"id":81,"parentId":79,"tags":{},"startTime":1762324509137,"traceId":"edd1b4771e8d549b"},{"name":"next-export","duration":754670,"timestamp":2432987643987,"id":79,"parentId":1,"tags":{},"startTime":1762324509032,"traceId":"edd1b4771e8d549b"},{"name":"move-exported-app-not-found-","duration":173165,"timestamp":2432988399722,"id":82,"parentId":78,"tags":{},"startTime":1762324509788,"traceId":"edd1b4771e8d549b"},{"name":"move-exported-page","duration":162993,"timestamp":2432988573008,"id":83,"parentId":78,"tags":{},"startTime":1762324509961,"traceId":"edd1b4771e8d549b"},{"name":"static-generation","duration":1399614,"timestamp":2432987640694,"id":78,"parentId":1,"tags":{},"startTime":1762324509029,"traceId":"edd1b4771e8d549b"},{"name":"write-routes-manifest","duration":112189,"timestamp":2432989040548,"id":84,"parentId":1,"tags":{},"startTime":1762324510429,"traceId":"edd1b4771e8d549b"},{"name":"node-file-trace-build","duration":3986970,"timestamp":2432987626514,"id":76,"parentId":1,"tags":{"isTurbotrace":"false"},"startTime":1762324509015,"traceId":"edd1b4771e8d549b"},{"name":"apply-include-excludes","duration":468,"timestamp":2432991613520,"id":85,"parentId":1,"tags":{},"startTime":1762324513002,"traceId":"edd1b4771e8d549b"},{"name":"print-tree-view","duration":2126,"timestamp":2432991614440,"id":86,"parentId":1,"tags":{},"startTime":1762324513003,"traceId":"edd1b4771e8d549b"},{"name":"telemetry-flush","duration":45,"timestamp":2432991616576,"id":87,"parentId":1,"tags":{},"startTime":1762324513005,"traceId":"edd1b4771e8d549b"},{"name":"next-build","duration":21035340,"timestamp":2432970581285,"id":1,"tags":{"buildMode":"default","isTurboBuild":"true","version":"15.5.4","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1762324491970,"traceId":"edd1b4771e8d549b"}]
|
package/README.md
CHANGED
|
@@ -34,3 +34,15 @@ You can check out [the Next.js GitHub repository](https://github.com/vercel/next
|
|
|
34
34
|
The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
|
|
35
35
|
|
|
36
36
|
Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.
|
|
37
|
+
|
|
38
|
+
## Docker images
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
cd /Users/domas/Developer/supercorp/superinterface
|
|
42
|
+
npm install
|
|
43
|
+
docker buildx bake server-release --set TAG=1.1.4
|
|
44
|
+
docker push supercorp/superinterface-server:1.1.4
|
|
45
|
+
docker push supercorp/superinterface-server:latest
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Replace the tag as needed for future releases.
|
|
@@ -28,6 +28,75 @@ export declare const handleComputerCall: ({ assistant, toolCall, thread, prisma,
|
|
|
28
28
|
tool_call_id: string;
|
|
29
29
|
output: string;
|
|
30
30
|
acknowledged_safety_checks?: undefined;
|
|
31
|
+
} | {
|
|
32
|
+
tool_call_id: string;
|
|
33
|
+
output: {
|
|
34
|
+
[x: string]: unknown;
|
|
35
|
+
} | ({
|
|
36
|
+
[x: string]: unknown;
|
|
37
|
+
type: "text";
|
|
38
|
+
text: string;
|
|
39
|
+
_meta?: {
|
|
40
|
+
[x: string]: unknown;
|
|
41
|
+
} | undefined;
|
|
42
|
+
} | {
|
|
43
|
+
[x: string]: unknown;
|
|
44
|
+
type: "image";
|
|
45
|
+
data: string;
|
|
46
|
+
mimeType: string;
|
|
47
|
+
_meta?: {
|
|
48
|
+
[x: string]: unknown;
|
|
49
|
+
} | undefined;
|
|
50
|
+
} | {
|
|
51
|
+
[x: string]: unknown;
|
|
52
|
+
type: "audio";
|
|
53
|
+
data: string;
|
|
54
|
+
mimeType: string;
|
|
55
|
+
_meta?: {
|
|
56
|
+
[x: string]: unknown;
|
|
57
|
+
} | undefined;
|
|
58
|
+
} | {
|
|
59
|
+
[x: string]: unknown;
|
|
60
|
+
name: string;
|
|
61
|
+
type: "resource_link";
|
|
62
|
+
uri: string;
|
|
63
|
+
description?: string | undefined;
|
|
64
|
+
_meta?: {
|
|
65
|
+
[x: string]: unknown;
|
|
66
|
+
} | undefined;
|
|
67
|
+
mimeType?: string | undefined;
|
|
68
|
+
title?: string | undefined;
|
|
69
|
+
icons?: {
|
|
70
|
+
[x: string]: unknown;
|
|
71
|
+
src: string;
|
|
72
|
+
mimeType?: string | undefined;
|
|
73
|
+
sizes?: string[] | undefined;
|
|
74
|
+
}[] | undefined;
|
|
75
|
+
} | {
|
|
76
|
+
[x: string]: unknown;
|
|
77
|
+
type: "resource";
|
|
78
|
+
resource: {
|
|
79
|
+
[x: string]: unknown;
|
|
80
|
+
text: string;
|
|
81
|
+
uri: string;
|
|
82
|
+
_meta?: {
|
|
83
|
+
[x: string]: unknown;
|
|
84
|
+
} | undefined;
|
|
85
|
+
mimeType?: string | undefined;
|
|
86
|
+
} | {
|
|
87
|
+
[x: string]: unknown;
|
|
88
|
+
uri: string;
|
|
89
|
+
blob: string;
|
|
90
|
+
_meta?: {
|
|
91
|
+
[x: string]: unknown;
|
|
92
|
+
} | undefined;
|
|
93
|
+
mimeType?: string | undefined;
|
|
94
|
+
};
|
|
95
|
+
_meta?: {
|
|
96
|
+
[x: string]: unknown;
|
|
97
|
+
} | undefined;
|
|
98
|
+
})[];
|
|
99
|
+
acknowledged_safety_checks: any;
|
|
31
100
|
} | {
|
|
32
101
|
tool_call_id: string;
|
|
33
102
|
output: string | {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/computerCalls/handleComputerCall/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,EAEL,MAAM,EACN,MAAM,EAKN,KAAK,YAAY,EAClB,MAAM,gBAAgB,CAAA;AAwDvB,eAAO,MAAM,kBAAkB,GAAU,0CAKtC;IACD,SAAS,EAAE,MAAM,CAAC,mBAAmB,CAAC;QACpC,OAAO,EAAE;YACP,aAAa,EAAE,IAAI,CAAA;YACnB,KAAK,EAAE;gBACL,OAAO,EAAE;oBACP,eAAe,EAAE;wBACf,OAAO,EAAE;4BACP,SAAS,EAAE;gCACT,OAAO,EAAE;oCACP,cAAc,EAAE,IAAI,CAAA;oCACpB,YAAY,EAAE,IAAI,CAAA;oCAClB,aAAa,EAAE,IAAI,CAAA;iCACpB,CAAA;6BACF,CAAA;yBACF,CAAA;qBACF,CAAA;iBACF,CAAA;aACF,CAAA;SACF,CAAA;KACF,CAAC,CAAA;IACF,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAA;IACjE,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,YAAY,CAAA;CACrB
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/lib/computerCalls/handleComputerCall/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,EAEL,MAAM,EACN,MAAM,EAKN,KAAK,YAAY,EAClB,MAAM,gBAAgB,CAAA;AAwDvB,eAAO,MAAM,kBAAkB,GAAU,0CAKtC;IACD,SAAS,EAAE,MAAM,CAAC,mBAAmB,CAAC;QACpC,OAAO,EAAE;YACP,aAAa,EAAE,IAAI,CAAA;YACnB,KAAK,EAAE;gBACL,OAAO,EAAE;oBACP,eAAe,EAAE;wBACf,OAAO,EAAE;4BACP,SAAS,EAAE;gCACT,OAAO,EAAE;oCACP,cAAc,EAAE,IAAI,CAAA;oCACpB,YAAY,EAAE,IAAI,CAAA;oCAClB,aAAa,EAAE,IAAI,CAAA;iCACpB,CAAA;6BACF,CAAA;yBACF,CAAA;qBACF,CAAA;iBACF,CAAA;aACF,CAAA;SACF,CAAA;KACF,CAAC,CAAA;IACF,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAA;IACjE,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,YAAY,CAAA;CACrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAwGA,CAAA"}
|
|
@@ -29,6 +29,7 @@ const serializeOutput = ({ assistant, imageUrl, }) => {
|
|
|
29
29
|
});
|
|
30
30
|
};
|
|
31
31
|
export const handleComputerCall = async ({ assistant, toolCall, thread, prisma, }) => {
|
|
32
|
+
var _a, _b;
|
|
32
33
|
const tool = assistant.tools.find((tool) => tool.type === ToolType.COMPUTER_USE);
|
|
33
34
|
if (!tool || !tool.computerUseTool || !tool.computerUseTool.mcpServer) {
|
|
34
35
|
createLog({
|
|
@@ -68,35 +69,21 @@ export const handleComputerCall = async ({ assistant, toolCall, thread, prisma,
|
|
|
68
69
|
await closeMcpConnection({
|
|
69
70
|
mcpConnection,
|
|
70
71
|
});
|
|
72
|
+
const acknowledgedSafetyChecks =
|
|
73
|
+
// @ts-expect-error compat
|
|
74
|
+
toolCall.computer_call.pending_safety_checks.map((psc) => ({
|
|
75
|
+
id: psc.id,
|
|
76
|
+
}));
|
|
71
77
|
const imageUrl = getImageUrl({
|
|
72
78
|
mcpServerToolOutput,
|
|
73
79
|
});
|
|
74
80
|
if (!imageUrl) {
|
|
75
|
-
createLog({
|
|
76
|
-
log: {
|
|
77
|
-
requestMethod: LogRequestMethod.POST,
|
|
78
|
-
requestRoute: LogRequestRoute.MESSAGES,
|
|
79
|
-
level: LogLevel.ERROR,
|
|
80
|
-
status: 500,
|
|
81
|
-
// @ts-expect-error compat
|
|
82
|
-
message: `Error calling computer_call with action ${JSON.stringify(toolCall.computer_call.action)}: No image in content`,
|
|
83
|
-
workspaceId: assistant.workspaceId,
|
|
84
|
-
assistantId: assistant.id,
|
|
85
|
-
threadId: thread.id,
|
|
86
|
-
},
|
|
87
|
-
prisma,
|
|
88
|
-
});
|
|
89
81
|
return {
|
|
90
82
|
tool_call_id: toolCall.id,
|
|
91
|
-
|
|
92
|
-
|
|
83
|
+
output: (_b = (_a = mcpServerToolOutput.structuredContent) !== null && _a !== void 0 ? _a : mcpServerToolOutput.content) !== null && _b !== void 0 ? _b : '',
|
|
84
|
+
acknowledged_safety_checks: acknowledgedSafetyChecks,
|
|
93
85
|
};
|
|
94
86
|
}
|
|
95
|
-
const acknowledgedSafetyChecks =
|
|
96
|
-
// @ts-expect-error compat
|
|
97
|
-
toolCall.computer_call.pending_safety_checks.map((psc) => ({
|
|
98
|
-
id: psc.id,
|
|
99
|
-
}));
|
|
100
87
|
return {
|
|
101
88
|
tool_call_id: toolCall.id,
|
|
102
89
|
output: serializeOutput({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handleAssistant.d.ts","sourceRoot":"","sources":["../../../../src/lib/functions/handleFunction/handleAssistant.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,EACL,gBAAgB,EAIhB,SAAS,EACT,MAAM,EACN,KAAK,YAAY,EAClB,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"handleAssistant.d.ts","sourceRoot":"","sources":["../../../../src/lib/functions/handleFunction/handleAssistant.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,EACL,gBAAgB,EAIhB,SAAS,EACT,MAAM,EACN,KAAK,YAAY,EAClB,MAAM,gBAAgB,CAAA;AAcvB,eAAO,MAAM,eAAe,GAAU,4GAQnC;IACD,gBAAgB,EAAE,gBAAgB,CAAA;IAClC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,CAAA;IACjE,UAAU,EAAE,+BAA+B,CAAA;IAC3C,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAA;IACjC,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,EAAE,YAAY,CAAA;CACrB;;;EAgUA,CAAA"}
|
|
@@ -10,8 +10,6 @@ import { createRunOpts } from '../../../lib/runs/createRunOpts';
|
|
|
10
10
|
import { handleToolCall } from '../../../lib/toolCalls/handleToolCall';
|
|
11
11
|
import { createLog } from '../../../lib/logs/createLog';
|
|
12
12
|
import { isOpenaiAssistantsStorageProvider } from '../../../lib/storageProviders/isOpenaiAssistantsStorageProvider';
|
|
13
|
-
import { redis } from '../../../lib/redis';
|
|
14
|
-
import { waitUntil } from '@vercel/functions';
|
|
15
13
|
import { omit } from 'radash';
|
|
16
14
|
export const handleAssistant = async ({ assistantHandler, toolCall, controller, run, assistant: parentAssistant, thread: parentThread, prisma, }) => {
|
|
17
15
|
var _a;
|
|
@@ -287,47 +285,6 @@ export const handleAssistant = async ({ assistantHandler, toolCall, controller,
|
|
|
287
285
|
prisma,
|
|
288
286
|
}),
|
|
289
287
|
});
|
|
290
|
-
if (assistant.id === 'a606a15d-c9a2-45d3-8e54-ee088a500008') {
|
|
291
|
-
waitUntil(new Promise(async (resolve) => {
|
|
292
|
-
var _a, _b;
|
|
293
|
-
const decoder = new TextDecoder();
|
|
294
|
-
const reader = messageResponse.getReader();
|
|
295
|
-
// // consume the stream so tool calls are processed
|
|
296
|
-
// while (!(await reader.read()).done) {}
|
|
297
|
-
while (true) {
|
|
298
|
-
const { value, done } = await reader.read();
|
|
299
|
-
if (done)
|
|
300
|
-
break;
|
|
301
|
-
if (!value)
|
|
302
|
-
continue;
|
|
303
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
304
|
-
let event;
|
|
305
|
-
try {
|
|
306
|
-
event = JSON.parse(decoder.decode(value));
|
|
307
|
-
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
308
|
-
}
|
|
309
|
-
catch (e) {
|
|
310
|
-
continue;
|
|
311
|
-
}
|
|
312
|
-
if (event.event === 'thread.run.requires_action' &&
|
|
313
|
-
((_b = (_a = event.data) === null || _a === void 0 ? void 0 : _a.required_action) === null || _b === void 0 ? void 0 : _b.type) === 'submit_client_tool_outputs') {
|
|
314
|
-
await Promise.all(event.data.required_action.submit_client_tool_outputs.tool_calls.map(
|
|
315
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
316
|
-
async (toolCall) => {
|
|
317
|
-
await redis.set(`submit-client-tool-outputs:output:${toolCall.id}`, 'Client tools cannot be used during async assistant calls', { ex: 60 * 60 * 24 * 7 });
|
|
318
|
-
}));
|
|
319
|
-
}
|
|
320
|
-
}
|
|
321
|
-
console.log('Successfully done with async assistant handler.');
|
|
322
|
-
resolve(true);
|
|
323
|
-
}));
|
|
324
|
-
return {
|
|
325
|
-
tool_call_id: toolCall.id,
|
|
326
|
-
output: JSON.stringify({
|
|
327
|
-
status: 'in_progress',
|
|
328
|
-
}),
|
|
329
|
-
};
|
|
330
|
-
}
|
|
331
288
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
332
289
|
const messages = [];
|
|
333
290
|
await streamOutput({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/prisma/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/lib/prisma/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAwD7C,eAAO,MAAM,MAAM,gIAAoD,CAAA"}
|
package/dist/lib/prisma/index.js
CHANGED
|
@@ -1,16 +1,40 @@
|
|
|
1
1
|
var _a;
|
|
2
|
-
import { PrismaNeon } from '@prisma/adapter-neon';
|
|
3
2
|
import { PrismaClient } from '@prisma/client';
|
|
3
|
+
import { PrismaNeon } from '@prisma/adapter-neon';
|
|
4
|
+
const resolveDatabaseAdapter = () => {
|
|
5
|
+
var _a;
|
|
6
|
+
const adapter = ((_a = process.env.DATABASE_ADAPTER) !== null && _a !== void 0 ? _a : 'neon').toLowerCase().trim();
|
|
7
|
+
if (['direct', 'standard', 'postgres', 'supabase'].includes(adapter)) {
|
|
8
|
+
return 'direct';
|
|
9
|
+
}
|
|
10
|
+
if (['neon', 'vercel', 'vercel_postgres'].includes(adapter)) {
|
|
11
|
+
return 'neon';
|
|
12
|
+
}
|
|
13
|
+
return 'neon';
|
|
14
|
+
};
|
|
4
15
|
const prismaClientSingleton = () => {
|
|
5
16
|
const connectionString = `${process.env.DATABASE_URL}`;
|
|
17
|
+
const databaseAdapter = resolveDatabaseAdapter();
|
|
6
18
|
if (process.env.NODE_ENV === 'test') {
|
|
7
19
|
return new PrismaClient();
|
|
8
20
|
}
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
21
|
+
if (databaseAdapter === 'neon') {
|
|
22
|
+
const adapter = new PrismaNeon({
|
|
23
|
+
connectionString,
|
|
24
|
+
});
|
|
25
|
+
return new PrismaClient({
|
|
26
|
+
adapter,
|
|
27
|
+
transactionOptions: {
|
|
28
|
+
timeout: 15000,
|
|
29
|
+
},
|
|
30
|
+
});
|
|
31
|
+
}
|
|
12
32
|
return new PrismaClient({
|
|
13
|
-
|
|
33
|
+
datasources: {
|
|
34
|
+
db: {
|
|
35
|
+
url: connectionString,
|
|
36
|
+
},
|
|
37
|
+
},
|
|
14
38
|
transactionOptions: {
|
|
15
39
|
timeout: 15000,
|
|
16
40
|
},
|