@alook/app 0.0.73 → 0.0.75
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/bundled/email-worker/index.js +12 -6
- package/bundled/web/.open-next/.build/durable-objects/queue.js +5 -5
- package/bundled/web/.open-next/assets/BUILD_ID +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/{060hy1yx9.8u4.js → 0eab27fokr42h.js} +1 -1
- package/bundled/web/.open-next/assets/_next/static/chunks/{0hxwcjbgkr~0_.js → 0q68ch~b~z8vz.js} +1 -1
- package/bundled/web/.open-next/cache/{hO1_nTdFBzjO6p-ajc4L9 → UGFwPwgKnzZSC1Cx-oKdE}/_global-error.cache +1 -1
- package/bundled/web/.open-next/cache/{hO1_nTdFBzjO6p-ajc4L9 → UGFwPwgKnzZSC1Cx-oKdE}/_not-found.cache +1 -1
- package/bundled/web/.open-next/cache/{hO1_nTdFBzjO6p-ajc4L9 → UGFwPwgKnzZSC1Cx-oKdE}/sitemap.xml.cache +1 -1
- package/bundled/web/.open-next/cloudflare/cache-assets-manifest.sql +1 -1
- package/bundled/web/.open-next/cloudflare/init.js +1 -1
- package/bundled/web/.open-next/dynamodb-provider/dynamodb-cache.json +1 -1
- package/bundled/web/.open-next/middleware/handler.mjs +5 -5
- package/bundled/web/.open-next/server-functions/default/src/web/.next/BUILD_ID +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/build-manifest.json +3 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/prerender-manifest.json +3 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/invite/[token]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/studio/new/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/activity/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/chat/[convId]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/chat/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/email/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/files/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/meetings/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/[id]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/new/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/agents/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/calendar/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/flags/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/help/email-setup/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/home/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/issues/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/runtimes/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/settings/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/threads/[traceId]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/threads/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/w/[slug]/unread/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(app)/workspaces/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/(auth)/sign-in/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/agent-links/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/agents/[id]/whitelist/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/calendar/[id]/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/calendar/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/channels/[id]/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/channels/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/conversations/[id]/buffered-messages/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/email/notify/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/email/send/route.js +3 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/issues/[id]/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/issues/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/machine-tokens/activate/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/studios/route.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/api/workspaces/[id]/route.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/templates/[id]/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/app/templates/page_client-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0..x3e2._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0.1j36e._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0.1vmoe._.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__009_wu3._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__00_g5g4._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__01crkpf._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__01~--ue._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__027mioa._.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__02_0idg._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__02rso~7._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__02tc9uk._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__02wurdb._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__034wlco._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__04ds4z_._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__04icw5-._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__06j-6ja._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__06tjmxh._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__06y_c-r._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__06~zt4i._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__09cer93._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__09ud9_1._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0ars103._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0b9cycy._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0dkg608._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0dy~25_._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0e7o6zp._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0faxj6t._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0flvgaf._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0grx101._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0gzp~d6._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0h1bbqr._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0hx4le1._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0j6wy8r._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0jvwtv1._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0k4l9.h._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0kc1f.6._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0ko5xa_._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0kruv9u._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0lc586o._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0lp-qwk._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0m5a1_f._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0m_ya4f._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0n6p6k4._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0niqi98._.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0ntc1ld._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0om99x0._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0oofrc0._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0p769.0._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0p8t~on._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0pyyhr-._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0qmcw57._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0r73dmn._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0s0l_.j._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0s9v7kt._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0sho.f4._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0ud56v.._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0v.x5_r._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0vc50cl._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0vvh~.2._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0w._3fo._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0wjwi1-._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0wp61q0._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0y4q15f._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0y_pjkm._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__0~afpm2._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__10b3oxj._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/[root-of-the-server]__13imtgy._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0--kvw_._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0266t8u._.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_07-798_._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_08z6pkf._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_09ivzvb._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_09j_99x._.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0csh82a._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0exm5_w._.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0k3wl-3._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0r0h9so._.js +4 -4
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_0w6dw.t._.js +2 -2
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/[root-of-the-server]__04mf.th._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/[root-of-the-server]__0e65njz._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_063q-hj._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_0ilz5db._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/_12e18r-._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_0liq_10._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/ssr/src_web_src_app_(app)_w_[slug]_home_page_tsx_0lkx78f._.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/middleware-build-manifest.js +3 -3
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/middleware-manifest.json +5 -5
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/server-reference-manifest.js +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/.next/server/server-reference-manifest.json +1 -1
- package/bundled/web/.open-next/server-functions/default/src/web/handler.mjs +40 -40
- package/bundled/web/.open-next/server-functions/default/src/web/handler.mjs.meta.json +181 -181
- package/bundled/web/.open-next/server-functions/default/src/web/index.mjs +3 -3
- package/bundled/web/migrations/0031_query_performance_indexes.sql +21 -0
- package/bundled/ws-do/index.js +12 -6
- package/dist/cli/index.js +4 -1
- package/dist/cli/session-runner.js +4 -1
- package/dist/index.js +4 -1
- package/package.json +1 -1
- /package/bundled/web/.open-next/assets/_next/static/{hO1_nTdFBzjO6p-ajc4L9 → UGFwPwgKnzZSC1Cx-oKdE}/_buildManifest.js +0 -0
- /package/bundled/web/.open-next/assets/_next/static/{hO1_nTdFBzjO6p-ajc4L9 → UGFwPwgKnzZSC1Cx-oKdE}/_clientMiddlewareManifest.js +0 -0
- /package/bundled/web/.open-next/assets/_next/static/{hO1_nTdFBzjO6p-ajc4L9 → UGFwPwgKnzZSC1Cx-oKdE}/_ssgManifest.js +0 -0
- /package/bundled/web/.open-next/cache/{hO1_nTdFBzjO6p-ajc4L9 → UGFwPwgKnzZSC1Cx-oKdE}/robots.txt.cache +0 -0
package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_07-798_._.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[726089,e=>{"use strict";var t=e.i(291484);e.i(700598);var a=e.i(704024);let s=(0,e.i(726527).createLogger)({service:"broadcast"});async function r(e,r,i){let n;try{let{env:a}=(0,t.getCloudflareContext)();n=a.DEV_WS_DO_URL;let o=await a.WS_DO_WORKER.fetch(`http://internal${e}`,{method:"POST",body:r});if(o.ok)return;s.warn("broadcast service-binding non-ok",{...i,status:o.status});return}catch{}let o=n||a.DEV_WS_DO_URL;try{let t=await fetch(`${o}${e}`,{method:"POST",headers:{"Content-Type":"application/json"},body:r});t.ok||s.warn("broadcast failed",{...i,status:t.status})}catch(e){s.warn("broadcast error",{...i,err:String(e)})}}e.s(["broadcastToUser",0,function(e,a){return function(e,a,s){let i=r(e,a,s);try{let{ctx:e}=(0,t.getCloudflareContext)();e.waitUntil(i)}catch{}return i}(`/broadcast/user/${e}`,JSON.stringify(a),{userId:e,type:a.type})}])},799579,e=>{"use strict";e.i(700598);let t=(0,e.i(726527).createLogger)({service:"web",level:process.env.ALOOK_LOG_LEVEL||"info",pretty:!1});e.s(["log",0,t])},205054,e=>{"use strict";e.i(700598);var t=e.i(291109),a=e.i(704024),s=e.i(799579),r=e.i(726089),i=e.i(740580),n=e.i(774078);let o=t.queries.task,d=t.queries.agent,l=t.queries.message,c=t.queries.conversation,u=t.queries.issue;e.s(["TaskService",0,class{db;constructor(e){this.db=e}async enqueueTask(e,t,s,r,i=a.TASK_TYPES.USER_DM_MESSAGE,l){let c=await d.getAgent(this.db,e,s);if(!c)throw Error("agent not found");if(!c.runtimeId)throw Error("agent has no runtime");if(l?.traceId&&l.parentTaskId&&await o.countTasksByTrace(this.db,l.traceId)>=a.MAX_TASKS_PER_TRACE)throw Error(`Trace limit reached (${a.MAX_TASKS_PER_TRACE} tasks). This may indicate an infinite loop between agents.`);let u=await o.createTask(this.db,{agentId:e,runtimeId:c.runtimeId,workspaceId:s,conversationId:t,prompt:r,type:i,contextKey:l?.contextKey??null,priority:0,context:l?.context,traceId:l?.traceId??null,parentTaskId:l?.parentTaskId??null});return(0,n.invalidate)(n.cacheKeys.activeTaskCounts(s)).catch(()=>{}),u}async claimTask(e,t){let a=await d.getAgent(this.db,e,t);if(!a)return null;if(await o.countRunningTasks(this.db,e,t)>=a.maxConcurrentTasks){let s=await o.findSteerableReplacement(this.db,e,t);if(!s||await o.countRunningTasks(this.db,e,t,s.predecessorId)>=a.maxConcurrentTasks)return null}let s=await o.claimTask(this.db,e,t);return s?(await d.updateAgentStatus(this.db,e,t,"working"),s):null}async claimTasksForRuntimes(e,t,a){let s=await o.claimKillTasks(this.db,e,a,t),r=t-s.length,i=r>0?await o.listPendingTasksByRuntimes(this.db,e,a):[],n=new Set(e),d=new Set,l=[...s],c=[];for(let e of i){if(c.length>=r)break;let t=`${e.agentId}:${e.workspaceId}`;d.has(t)||(d.add(t),c.push(e))}for(let e of(await Promise.all(c.map(e=>this.claimTask(e.agentId,e.workspaceId)))))e&&n.has(e.runtimeId)&&l.push(e);return l}async startTask(e,t){let a=await o.startTask(this.db,e,t);if(!a)throw Error("task not in dispatched status");return a}async completeTask(e,t,a,n){let d;try{d=JSON.parse(a)}catch{d={raw:a}}let u=await o.completeTask(this.db,e,t,{result:d,sessionId:n||null});if(!u){let t=await o.getTask(this.db,e),a=t?.status??"unknown";throw s.log.warn(`completeTask failed: task is in '${a}' status`,{taskId:e}),Error(`cannot complete task in '${a}' status`)}let h=d,p="string"==typeof h?.output?h.output:"";if(p){let a=await l.createMessage(this.db,{conversationId:u.conversationId,role:"assistant",content:p,taskId:e});try{let e=await c.getConversation(this.db,u.conversationId,t);e&&(0,r.broadcastToUser)(e.userId,{type:"conversation.message",conversationId:u.conversationId,message:(0,i.messageToResponse)(a)}).catch(()=>{})}catch{}}return await this.reconcileAgentStatus(u.agentId,u.workspaceId),await this.dispatchNextBufferedMessage(u.conversationId,u.workspaceId),u}async failTask(e,t,n){let d=await o.failTask(this.db,e,t,n);if(!d){let t=await o.getTask(this.db,e),a=t?.status??"unknown";throw s.log.warn(`failTask failed: task is in '${a}' status`,{taskId:e}),Error(`cannot fail task in '${a}' status`)}if(d.type===a.TASK_TYPES.KILL_TASK)return d;if(n){let a=await l.createMessage(this.db,{conversationId:d.conversationId,role:"assistant",content:`Error: ${n}`,taskId:e});try{let e=await c.getConversation(this.db,d.conversationId,t);e&&(0,r.broadcastToUser)(e.userId,{type:"conversation.message",conversationId:d.conversationId,message:(0,i.messageToResponse)(a)}).catch(()=>{})}catch{}}return await this.reconcileAgentStatus(d.agentId,d.workspaceId),await this.syncIssueStatusFromTask(d,"failed"),await this.dispatchNextBufferedMessage(d.conversationId,d.workspaceId),d}async syncIssueStatusFromTask(e,t){if(e.type!==a.TASK_TYPES.ISSUE_EVENT)return;let s=await u.getIssueByConversation(this.db,e.conversationId,e.workspaceId);if(!s||s.status===t||!await u.updateIssue(this.db,s.id,e.workspaceId,{status:t}))return;let n=await l.createMessage(this.db,{conversationId:e.conversationId,role:"event",content:`Issue status changed: ${s.status} -> ${t}`,taskId:e.id,metadata:JSON.stringify({issueId:s.id})});try{let t=await c.getConversation(this.db,e.conversationId,e.workspaceId);t&&(0,r.broadcastToUser)(t.userId,{type:"conversation.message",conversationId:e.conversationId,message:(0,i.messageToResponse)(n)}).catch(()=>{})}catch{}}async supersedeTask(e,t){let a=await o.supersedeTask(this.db,e,t);if(!a){let t=await o.getTask(this.db,e),a=t?.status??"unknown";throw s.log.warn(`supersedeTask failed: task is in '${a}' status`,{taskId:e}),Error(`cannot supersede task in '${a}' status`)}return await this.reconcileAgentStatus(a.agentId,a.workspaceId),await this.dispatchNextBufferedMessage(a.conversationId,a.workspaceId),a}async retryTask(e,t){let a=await o.getTask(this.db,e);if(!a||a.workspaceId!==t)throw Error("task not found");if("failed"!==a.status)throw Error("only failed tasks can be retried");let s=await o.markFailedAsSuperseded(this.db,e,t);if(!s)throw Error("failed to mark task as superseded");return{oldTask:s,newTask:await this.enqueueTask(a.agentId,a.conversationId,t,a.prompt,a.type,{contextKey:a.contextKey??null,context:a.context,traceId:a.traceId??null,parentTaskId:a.parentTaskId??null})}}async cancelActiveTask(e,t,s){let r=await o.getActiveTaskByConversation(this.db,e,t);if(!r)return null;let i=await o.cancelTask(this.db,r.id,t);return i?(("dispatched"===r.status||"running"===r.status)&&await o.createTask(this.db,{agentId:r.agentId,runtimeId:r.runtimeId,workspaceId:t,conversationId:e,prompt:"",type:a.TASK_TYPES.KILL_TASK,context:{target_task_id:r.id}}),await l.createMessage(this.db,{conversationId:e,role:"assistant",content:s?.reason??"Task cancelled by user",taskId:r.id}),await this.reconcileAgentStatus(r.agentId,t),s?.skipDispatch||await this.dispatchNextBufferedMessage(e,t),i):null}async reconcileAgentStatus(e,t){let a=await o.countRunningTasks(this.db,e,t);await d.updateAgentStatus(this.db,e,t,a>0?"working":"idle"),(0,n.invalidate)(n.cacheKeys.activeTaskCounts(t)).catch(()=>{})}async dispatchNextBufferedMessage(e,t){let n=await l.activateNextBufferedMessage(this.db,e);if(!n)return null;let d=await c.getConversation(this.db,e,t);if(!d)return s.log.warn("dispatchNextBufferedMessage: conversation not found",{conversationId:e}),await l.revertToBuffered(this.db,n.id).catch(e=>{s.log.error("dispatchNextBufferedMessage: failed to revert message status",{messageId:n.id,revertErr:e})}),null;let u=d.userId;try{let s=n.attachmentIds?JSON.parse(n.attachmentIds):[],c=await o.getLatestTaskForConversation(this.db,e),h=c?.traceId??null,p=await this.enqueueTask(d.agentId,e,t,n.content,a.TASK_TYPES.USER_DM_MESSAGE,{contextKey:e,context:s.length>0?{attachment_ids:s}:void 0,traceId:h,parentTaskId:null});return await l.updateMessageTaskId(this.db,n.id,p.id),(0,r.broadcastToUser)(u,{type:"followup.dispatched",conversationId:e,message:(0,i.messageToResponse)(n),task:(0,i.taskToResponse)(p)}).catch(()=>{}),p}catch(t){return s.log.warn("dispatchNextBufferedMessage: enqueueTask failed",{conversationId:e,err:t}),await l.revertToBuffered(this.db,n.id).catch(e=>{s.log.error("dispatchNextBufferedMessage: failed to revert message status",{messageId:n.id,revertErr:e})}),(0,r.broadcastToUser)(u,{type:"followup.dispatch_failed",conversationId:e,messageId:n.id,error:t instanceof Error?t.message:"Failed to dispatch follow-up"}).catch(()=>{}),null}}async cancelTrace(e,t,a){for(let r of[...new Set((await o.getTraceTree(this.db,e,t)).filter(e=>["queued","dispatched","running"].includes(e.status)).map(e=>e.conversationId))])try{await this.cancelActiveTask(r,t,{skipDispatch:!0,reason:a?.reason})}catch(t){s.log.warn("cancelTrace: failed to cancel task",{traceId:e,convId:r,err:t})}}}])},99293,e=>e.a(async(t,a)=>{try{var s=e.i(291484);e.i(700598);var r=e.i(291109),i=e.i(888247),n=e.i(704024),o=e.i(675139),d=e.i(152327),l=e.i(47962),c=e.i(776227),u=e.i(205054),h=e.i(774078),p=t([d]);[d]=p.then?(await p)():p;let w=(0,d.withAuth)(async(e,t)=>{let a=await (0,l.withWorkspaceMember)(e,t);if(a instanceof Response)return a;let{env:i}=(0,s.getCloudflareContext)(),n=(0,o.getDb)(i.DB),d=t.params?.id;if(!d)return(0,c.writeError)("agent id is required",400);if(!await r.queries.agent.getAgent(n,d,a.workspaceId,t.userId))return(0,c.writeError)("agent not found",404);let u=await r.queries.whitelist.getWhitelist(n,d,a.workspaceId);return(0,c.writeJSON)(u.map(e=>({id:e.id,email:e.email,created_at:(0,c.formatTimestamp)(e.createdAt)})))}),g=(0,d.withAuth)(async(e,t)=>{let a=await (0,l.withWorkspaceMember)(e,t);if(a instanceof Response)return a;let{env:d}=(0,s.getCloudflareContext)(),p=(0,o.getDb)(d.DB),w=t.params?.id;if(!w)return(0,c.writeError)("agent id is required",400);let g=await r.queries.agent.getAgent(p,w,a.workspaceId,t.userId);if(!g)return(0,c.writeError)("agent not found",404);let[f,m]=await (0,c.parseBody)(e,i.AddWhitelistRequestSchema);if(m)return m;let T=f.email.toLowerCase(),k=await r.queries.whitelist.addWhitelist(p,w,a.workspaceId,T);if(!k)return(0,c.writeError)("email already whitelisted",409);if(g.runtimeId&&g.emailHandle&&g.ownerId)try{let e=await r.queries.conversation.createConversation(p,{workspaceId:a.workspaceId,agentId:g.id,userId:g.ownerId,title:`Welcome: ${T}`.slice(0,50),type:n.TASK_TYPES.EMAIL_NOTIFICATION}),s=new u.TaskService(p);await s.enqueueTask(g.id,e.id,a.workspaceId,`Your owner (${t.email}) has added a new contact to your whitelist: ${T}. Please compose and send them a welcome email introducing yourself as "${g.name}". Be warm and professional. Let them know they can reach you at your email address and briefly describe how you can help them.`,n.TASK_TYPES.EMAIL_NOTIFICATION);let i=new Date().toISOString().slice(0,10);(0,h.invalidate)(h.cacheKeys.overviewTaskStats(a.workspaceId,i)).catch(()=>{})}catch{}return(0,c.writeJSON)({id:k.id,email:k.email,created_at:(0,c.formatTimestamp)(k.createdAt)},201)});e.s(["GET",0,w,"POST",0,g]),a()}catch(e){a(e)}},!1),829167,e=>e.a(async(t,a)=>{try{var s=e.i(80774),r=e.i(404478),i=e.i(732985),n=e.i(481671),o=e.i(638081),d=e.i(204960),l=e.i(924918),c=e.i(363585),u=e.i(906846),h=e.i(359838),p=e.i(383303),w=e.i(234173),g=e.i(270215),f=e.i(830665),m=e.i(944002),T=e.i(193695);e.i(195928);var k=e.i(81543),I=e.i(99293),v=t([I]);[I]=v.then?(await v)():v;let b=new s.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/agents/[id]/whitelist/route",pathname:"/api/agents/[id]/whitelist",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/web/src/app/api/agents/[id]/whitelist/route.ts",nextConfigOutput:"standalone",userland:I,...{}}),{workAsyncStorage:_,workUnitAsyncStorage:E,serverHooks:R}=b;async function y(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),b.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let s="/api/agents/[id]/whitelist/route";s=s.replace(/\/index$/,"")||"/";let i=await b.prepare(e,t,{srcPage:s,multiZoneDraftMode:!1});if(!i)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:I,deploymentId:v,params:y,nextConfig:_,parsedUrl:E,isDraftMode:R,prerenderManifest:S,routerServerContext:A,isOnDemandRevalidate:C,revalidateOnlyGenerated:x,resolvedPathname:N,clientReferenceManifest:P,serverActionsManifest:O}=i,q=(0,l.normalizeAppPath)(s),M=!!(S.dynamicRoutes[q]||S.routes[N]),K=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,E,!1):t.end("This page could not be found"),null);if(M&&!R){let e=!!S.routes[N],t=S.dynamicRoutes[q];if(t&&!1===t.fallback&&!e){if(_.adapterPath)return await K();throw new T.NoFallbackError}}let $=null;!M||b.isDev||R||($=N,$="/index"===$?"/":$);let U=!0===b.isDev||!M,B=M&&!U;O&&P&&(0,d.setManifestsSingleton)({page:s,clientReferenceManifest:P,serverActionsManifest:O});let D=e.method||"GET",L=(0,o.getTracer)(),j=L.getActiveScopeSpan(),H=!!(null==A?void 0:A.isWrappedByNextServer),F=!!(0,n.getRequestMeta)(e,"minimalMode"),W=(0,n.getRequestMeta)(e,"incrementalCache")||await b.getIncrementalCache(e,_,S,F);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let Y={params:y,previewProps:S.preview,renderOpts:{experimental:{authInterrupts:!!_.experimental.authInterrupts},cacheComponents:!!_.cacheComponents,supportsDynamicResponse:U,incrementalCache:W,cacheLifeProfiles:_.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,s,r)=>b.onRequestError(e,t,s,r,A)},sharedContext:{buildId:I,deploymentId:v}},G=new c.NodeNextRequest(e),V=new c.NodeNextResponse(t),J=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let i,n=async e=>b.handle(J,Y).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=L.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==h.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=a.get("next.route");if(r){let t=`${D} ${r}`;e.setAttributes({"next.route":r,"http.route":r,"next.span_name":t}),e.updateName(t),i&&i!==e&&(i.setAttribute("http.route",r),i.updateName(t))}else e.updateName(`${D} ${s}`)}),d=async i=>{var o,d;let l=async({previousCacheEntry:r})=>{try{if(!F&&C&&x&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await n(i);e.fetchMetrics=Y.renderOpts.fetchMetrics;let o=Y.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let d=Y.renderOpts.collectedTags;if(!M)return await (0,w.sendResponse)(G,V,s,Y.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,g.toNodeOutgoingHttpHeaders)(s.headers);d&&(t[m.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==Y.renderOpts.collectedRevalidate&&!(Y.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&Y.renderOpts.collectedRevalidate,r=void 0===Y.renderOpts.collectedExpire||Y.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:Y.renderOpts.collectedExpire;return{value:{kind:k.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:r}}}}catch(t){throw(null==r?void 0:r.isStale)&&await b.onRequestError(e,t,{routerKind:"App Router",routePath:s,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:B,isOnDemandRevalidate:C})},!1,A),t}},c=await b.handleResponse({req:e,nextConfig:_,cacheKey:$,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:S,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:x,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:F});if(!M)return null;if((null==c||null==(o=c.value)?void 0:o.kind)!==k.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(d=c.value)?void 0:d.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});F||t.setHeader("x-nextjs-cache",C?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),R&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,g.fromNodeOutgoingHttpHeaders)(c.value.headers);return F&&M||u.delete(m.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,f.getCacheControlHeader)(c.cacheControl)),await (0,w.sendResponse)(G,V,new Response(c.value.body,{headers:u,status:c.value.status||200})),null};H&&j?await d(j):(i=L.getActiveScopeSpan(),await L.withPropagatedContext(e.headers,()=>L.trace(h.BaseServerSpan.handleRequest,{spanName:`${D} ${s}`,kind:o.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},d),void 0,!H))}catch(t){if(t instanceof T.NoFallbackError||await b.onRequestError(e,t,{routerKind:"App Router",routePath:q,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:B,isOnDemandRevalidate:C})},!1,A),M)throw t;return await (0,w.sendResponse)(G,V,new Response(null,{status:500})),null}}e.s(["handler",0,y,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:_,workUnitAsyncStorage:E})},"routeModule",0,b,"serverHooks",0,R,"workAsyncStorage",0,_,"workUnitAsyncStorage",0,E]),a()}catch(e){a(e)}},!1),572758,e=>{e.v(t=>Promise.all(["server/chunks/0yh8_@better-auth_memory-adapter_dist_index_mjs_0u9gr83._.js"].map(t=>e.l(t))).then(()=>t(501816)))},409008,e=>{e.v(t=>Promise.all(["server/chunks/0cae_better-auth_dist_adapters_kysely-adapter_index_mjs_0c-9lzd._.js"].map(t=>e.l(t))).then(()=>t(770021)))},96318,e=>{e.v(t=>Promise.all(["server/chunks/0_yy_@better-auth_kysely-adapter_dist_bun-sqlite-dialect-na--YwnN_mjs_0ua5mwj._.js"].map(t=>e.l(t))).then(()=>t(158195)))},11379,e=>{e.v(t=>Promise.all(["server/chunks/0_yy_@better-auth_kysely-adapter_dist_node-sqlite-dialect_mjs_0evb.r9._.js"].map(t=>e.l(t))).then(()=>t(302822)))},946743,e=>{e.v(t=>Promise.all(["server/chunks/0_yy_@better-auth_kysely-adapter_dist_d1-sqlite-dialect-C2B7YsIT_mjs_0bihzky._.js"].map(t=>e.l(t))).then(()=>t(898679)))}];
|
|
1
|
+
module.exports=[726089,e=>{"use strict";var t=e.i(291484);e.i(700598);var a=e.i(704024);let s=(0,e.i(726527).createLogger)({service:"broadcast"});async function r(e,r,i){let n;try{let{env:a}=(0,t.getCloudflareContext)();n=a.DEV_WS_DO_URL;let o=await a.WS_DO_WORKER.fetch(`http://internal${e}`,{method:"POST",body:r});if(o.ok)return;s.warn("broadcast service-binding non-ok",{...i,status:o.status});return}catch{}let o=n||a.DEV_WS_DO_URL;try{let t=await fetch(`${o}${e}`,{method:"POST",headers:{"Content-Type":"application/json"},body:r});t.ok||s.warn("broadcast failed",{...i,status:t.status})}catch(e){s.warn("broadcast error",{...i,err:String(e)})}}e.s(["broadcastToUser",0,function(e,a){return function(e,a,s){let i=r(e,a,s);try{let{ctx:e}=(0,t.getCloudflareContext)();e.waitUntil(i)}catch{}return i}(`/broadcast/user/${e}`,JSON.stringify(a),{userId:e,type:a.type})}])},799579,e=>{"use strict";e.i(700598);let t=(0,e.i(726527).createLogger)({service:"web",level:process.env.ALOOK_LOG_LEVEL||"info",pretty:!1});e.s(["log",0,t])},205054,e=>{"use strict";e.i(700598);var t=e.i(291109),a=e.i(704024),s=e.i(799579),r=e.i(726089),i=e.i(740580),n=e.i(774078);let o=t.queries.task,d=t.queries.agent,l=t.queries.message,c=t.queries.conversation,u=t.queries.issue;e.s(["TaskService",0,class{db;constructor(e){this.db=e}async enqueueTask(e,t,s,r,i=a.TASK_TYPES.USER_DM_MESSAGE,l){let c=await d.getAgent(this.db,e,s);if(!c)throw Error("agent not found");if(!c.runtimeId)throw Error("agent has no runtime");if(l?.traceId&&l.parentTaskId&&await o.countTasksByTrace(this.db,l.traceId)>=a.MAX_TASKS_PER_TRACE)throw Error(`Trace limit reached (${a.MAX_TASKS_PER_TRACE} tasks). This may indicate an infinite loop between agents.`);let u=await o.createTask(this.db,{agentId:e,runtimeId:c.runtimeId,workspaceId:s,conversationId:t,prompt:r,type:i,contextKey:l?.contextKey??null,priority:0,context:l?.context,traceId:l?.traceId??null,parentTaskId:l?.parentTaskId??null});return(0,n.invalidate)(n.cacheKeys.activeTaskCounts(s)).catch(()=>{}),u}async claimTask(e,t){let a=await d.getAgent(this.db,e,t);if(!a)return null;if(await o.countRunningTasks(this.db,e,t)>=a.maxConcurrentTasks){let s=await o.findSteerableReplacement(this.db,e,t);if(!s||await o.countRunningTasks(this.db,e,t,s.predecessorId)>=a.maxConcurrentTasks)return null}let s=await o.claimTask(this.db,e,t);return s?(await d.updateAgentStatus(this.db,e,t,"working"),s):null}async claimTasksForRuntimes(e,t,a){let s=await o.claimKillTasks(this.db,e,a,t),r=t-s.length,i=r>0?await o.listPendingTasksByRuntimes(this.db,e,a):[],n=new Set(e),d=new Set,l=[...s],c=[];for(let e of i){if(c.length>=r)break;let t=`${e.agentId}:${e.workspaceId}`;d.has(t)||(d.add(t),c.push(e))}for(let e of(await Promise.all(c.map(e=>this.claimTask(e.agentId,e.workspaceId)))))e&&n.has(e.runtimeId)&&l.push(e);return l}async startTask(e,t){let a=await o.startTask(this.db,e,t);if(!a)throw Error("task not in dispatched status");return a}async completeTask(e,t,a,n){let d;try{d=JSON.parse(a)}catch{d={raw:a}}let u=await o.completeTask(this.db,e,t,{result:d,sessionId:n||null});if(!u){let t=await o.getTask(this.db,e),a=t?.status??"unknown";throw s.log.warn(`completeTask failed: task is in '${a}' status`,{taskId:e}),Error(`cannot complete task in '${a}' status`)}let h=d,p="string"==typeof h?.output?h.output:"";if(p){let a=await l.createMessage(this.db,{conversationId:u.conversationId,role:"assistant",content:p,taskId:e});try{let e=await c.getConversation(this.db,u.conversationId,t);e&&(0,r.broadcastToUser)(e.userId,{type:"conversation.message",conversationId:u.conversationId,message:(0,i.messageToResponse)(a)}).catch(()=>{})}catch{}}return await this.reconcileAgentStatus(u.agentId,u.workspaceId),await this.dispatchNextBufferedMessage(u.conversationId,u.workspaceId),u}async failTask(e,t,n){let d=await o.failTask(this.db,e,t,n);if(!d){let t=await o.getTask(this.db,e),a=t?.status??"unknown";throw s.log.warn(`failTask failed: task is in '${a}' status`,{taskId:e}),Error(`cannot fail task in '${a}' status`)}if(d.type===a.TASK_TYPES.KILL_TASK)return d;if(n){let a=await l.createMessage(this.db,{conversationId:d.conversationId,role:"assistant",content:`Error: ${n}`,taskId:e});try{let e=await c.getConversation(this.db,d.conversationId,t);e&&(0,r.broadcastToUser)(e.userId,{type:"conversation.message",conversationId:d.conversationId,message:(0,i.messageToResponse)(a)}).catch(()=>{})}catch{}}return await this.reconcileAgentStatus(d.agentId,d.workspaceId),await this.syncIssueStatusFromTask(d,"failed"),await this.dispatchNextBufferedMessage(d.conversationId,d.workspaceId),d}async syncIssueStatusFromTask(e,t){if(e.type!==a.TASK_TYPES.ISSUE_EVENT)return;let s=await u.getIssueByConversation(this.db,e.conversationId,e.workspaceId);if(!s||s.status===t||!await u.updateIssue(this.db,s.id,e.workspaceId,{status:t}))return;let n=await l.createMessage(this.db,{conversationId:e.conversationId,role:"event",content:`Issue status changed: ${s.status} -> ${t}`,taskId:e.id,metadata:JSON.stringify({issueId:s.id})});try{let t=await c.getConversation(this.db,e.conversationId,e.workspaceId);t&&(0,r.broadcastToUser)(t.userId,{type:"conversation.message",conversationId:e.conversationId,message:(0,i.messageToResponse)(n)}).catch(()=>{})}catch{}}async supersedeTask(e,t){let a=await o.supersedeTask(this.db,e,t);if(!a){let t=await o.getTask(this.db,e),a=t?.status??"unknown";throw s.log.warn(`supersedeTask failed: task is in '${a}' status`,{taskId:e}),Error(`cannot supersede task in '${a}' status`)}return await this.reconcileAgentStatus(a.agentId,a.workspaceId),await this.dispatchNextBufferedMessage(a.conversationId,a.workspaceId),a}async retryTask(e,t){let a=await o.getTask(this.db,e);if(!a||a.workspaceId!==t)throw Error("task not found");if("failed"!==a.status)throw Error("only failed tasks can be retried");let s=await o.markFailedAsSuperseded(this.db,e,t);if(!s)throw Error("failed to mark task as superseded");return{oldTask:s,newTask:await this.enqueueTask(a.agentId,a.conversationId,t,a.prompt,a.type,{contextKey:a.contextKey??null,context:a.context,traceId:a.traceId??null,parentTaskId:a.parentTaskId??null})}}async cancelActiveTask(e,t,s){let r=await o.getActiveTaskByConversation(this.db,e,t);if(!r)return null;let i=await o.cancelTask(this.db,r.id,t);return i?(("dispatched"===r.status||"running"===r.status)&&await o.createTask(this.db,{agentId:r.agentId,runtimeId:r.runtimeId,workspaceId:t,conversationId:e,prompt:"",type:a.TASK_TYPES.KILL_TASK,context:{target_task_id:r.id}}),await l.createMessage(this.db,{conversationId:e,role:"assistant",content:s?.reason??"Task cancelled by user",taskId:r.id}),await this.reconcileAgentStatus(r.agentId,t),s?.skipDispatch||await this.dispatchNextBufferedMessage(e,t),i):null}async reconcileAgentStatus(e,t){let a=await o.countRunningTasks(this.db,e,t);await d.updateAgentStatus(this.db,e,t,a>0?"working":"idle"),(0,n.invalidate)(n.cacheKeys.activeTaskCounts(t)).catch(()=>{})}async dispatchNextBufferedMessage(e,t){let n=await l.activateNextBufferedMessage(this.db,e);if(!n)return null;let d=await c.getConversation(this.db,e,t);if(!d)return s.log.warn("dispatchNextBufferedMessage: conversation not found",{conversationId:e}),await l.revertToBuffered(this.db,n.id).catch(e=>{s.log.error("dispatchNextBufferedMessage: failed to revert message status",{messageId:n.id,revertErr:e})}),null;let u=d.userId;try{let s=n.attachmentIds?JSON.parse(n.attachmentIds):[],c=await o.getLatestTaskForConversation(this.db,e),h=c?.traceId??null,p=await this.enqueueTask(d.agentId,e,t,n.content,a.TASK_TYPES.USER_DM_MESSAGE,{contextKey:e,context:s.length>0?{attachment_ids:s}:void 0,traceId:h,parentTaskId:null});return await l.updateMessageTaskId(this.db,n.id,p.id),(0,r.broadcastToUser)(u,{type:"followup.dispatched",conversationId:e,message:(0,i.messageToResponse)(n),task:(0,i.taskToResponse)(p)}).catch(()=>{}),p}catch(t){return s.log.warn("dispatchNextBufferedMessage: enqueueTask failed",{conversationId:e,err:t}),await l.revertToBuffered(this.db,n.id).catch(e=>{s.log.error("dispatchNextBufferedMessage: failed to revert message status",{messageId:n.id,revertErr:e})}),(0,r.broadcastToUser)(u,{type:"followup.dispatch_failed",conversationId:e,messageId:n.id,error:t instanceof Error?t.message:"Failed to dispatch follow-up"}).catch(()=>{}),null}}async cancelTrace(e,t,a){for(let r of[...new Set((await o.getTraceTree(this.db,e,t)).filter(e=>["queued","dispatched","running"].includes(e.status)).map(e=>e.conversationId))])try{await this.cancelActiveTask(r,t,{skipDispatch:!0,reason:a?.reason})}catch(t){s.log.warn("cancelTrace: failed to cancel task",{traceId:e,convId:r,err:t})}}}])},99293,e=>e.a(async(t,a)=>{try{var s=e.i(291484);e.i(700598);var r=e.i(291109),i=e.i(888247),n=e.i(704024),o=e.i(675139),d=e.i(152327),l=e.i(47962),c=e.i(776227),u=e.i(205054),h=e.i(774078),p=t([d]);[d]=p.then?(await p)():p;let w=(0,d.withAuth)(async(e,t)=>{let a=await (0,l.withWorkspaceMember)(e,t);if(a instanceof Response)return a;let{env:i}=(0,s.getCloudflareContext)(),n=(0,o.getDb)(i.DB),d=t.params?.id;if(!d)return(0,c.writeError)("agent id is required",400);if(!await r.queries.agent.getAgent(n,d,a.workspaceId,t.userId))return(0,c.writeError)("agent not found",404);let u=await r.queries.whitelist.getWhitelist(n,d,a.workspaceId);return(0,c.writeJSON)(u.map(e=>({id:e.id,email:e.email,created_at:(0,c.formatTimestamp)(e.createdAt)})))}),g=(0,d.withAuth)(async(e,t)=>{let a=await (0,l.withWorkspaceMember)(e,t);if(a instanceof Response)return a;let{env:d}=(0,s.getCloudflareContext)(),p=(0,o.getDb)(d.DB),w=t.params?.id;if(!w)return(0,c.writeError)("agent id is required",400);let g=await r.queries.agent.getAgent(p,w,a.workspaceId,t.userId);if(!g)return(0,c.writeError)("agent not found",404);let[f,m]=await (0,c.parseBody)(e,i.AddWhitelistRequestSchema);if(m)return m;let k=f.email.toLowerCase(),T=await r.queries.whitelist.addWhitelist(p,w,a.workspaceId,k);if(!T)return(0,c.writeError)("email already whitelisted",409);if(g.runtimeId&&g.emailHandle&&g.ownerId)try{let e=await r.queries.conversation.createConversation(p,{workspaceId:a.workspaceId,agentId:g.id,userId:g.ownerId,title:`Welcome: ${k}`.slice(0,50),type:n.TASK_TYPES.EMAIL_NOTIFICATION}),s=new u.TaskService(p);await s.enqueueTask(g.id,e.id,a.workspaceId,`Your owner (${t.email}) has added a new contact to your whitelist: ${k}. Please compose and send them a welcome email introducing yourself as "${g.name}". Be warm and professional. Let them know they can reach you at your email address and briefly describe how you can help them.`,n.TASK_TYPES.EMAIL_NOTIFICATION);let i=new Date().toISOString().slice(0,10);(0,h.invalidate)(h.cacheKeys.overviewTaskStats(a.workspaceId,i)).catch(()=>{}),(0,h.invalidate)(h.cacheKeys.activeTaskCounts(a.workspaceId)).catch(()=>{})}catch{}return(0,c.writeJSON)({id:T.id,email:T.email,created_at:(0,c.formatTimestamp)(T.createdAt)},201)});e.s(["GET",0,w,"POST",0,g]),a()}catch(e){a(e)}},!1),829167,e=>e.a(async(t,a)=>{try{var s=e.i(80774),r=e.i(404478),i=e.i(732985),n=e.i(481671),o=e.i(638081),d=e.i(204960),l=e.i(924918),c=e.i(363585),u=e.i(906846),h=e.i(359838),p=e.i(383303),w=e.i(234173),g=e.i(270215),f=e.i(830665),m=e.i(944002),k=e.i(193695);e.i(195928);var T=e.i(81543),v=e.i(99293),I=t([v]);[v]=I.then?(await I)():I;let b=new s.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/agents/[id]/whitelist/route",pathname:"/api/agents/[id]/whitelist",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/web/src/app/api/agents/[id]/whitelist/route.ts",nextConfigOutput:"standalone",userland:v,...{}}),{workAsyncStorage:_,workUnitAsyncStorage:E,serverHooks:R}=b;async function y(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),b.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let s="/api/agents/[id]/whitelist/route";s=s.replace(/\/index$/,"")||"/";let i=await b.prepare(e,t,{srcPage:s,multiZoneDraftMode:!1});if(!i)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:v,deploymentId:I,params:y,nextConfig:_,parsedUrl:E,isDraftMode:R,prerenderManifest:S,routerServerContext:A,isOnDemandRevalidate:C,revalidateOnlyGenerated:x,resolvedPathname:N,clientReferenceManifest:P,serverActionsManifest:O}=i,q=(0,l.normalizeAppPath)(s),M=!!(S.dynamicRoutes[q]||S.routes[N]),K=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,E,!1):t.end("This page could not be found"),null);if(M&&!R){let e=!!S.routes[N],t=S.dynamicRoutes[q];if(t&&!1===t.fallback&&!e){if(_.adapterPath)return await K();throw new k.NoFallbackError}}let $=null;!M||b.isDev||R||($=N,$="/index"===$?"/":$);let U=!0===b.isDev||!M,B=M&&!U;O&&P&&(0,d.setManifestsSingleton)({page:s,clientReferenceManifest:P,serverActionsManifest:O});let D=e.method||"GET",L=(0,o.getTracer)(),j=L.getActiveScopeSpan(),H=!!(null==A?void 0:A.isWrappedByNextServer),F=!!(0,n.getRequestMeta)(e,"minimalMode"),W=(0,n.getRequestMeta)(e,"incrementalCache")||await b.getIncrementalCache(e,_,S,F);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let Y={params:y,previewProps:S.preview,renderOpts:{experimental:{authInterrupts:!!_.experimental.authInterrupts},cacheComponents:!!_.cacheComponents,supportsDynamicResponse:U,incrementalCache:W,cacheLifeProfiles:_.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,s,r)=>b.onRequestError(e,t,s,r,A)},sharedContext:{buildId:v,deploymentId:I}},G=new c.NodeNextRequest(e),V=new c.NodeNextResponse(t),J=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let i,n=async e=>b.handle(J,Y).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=L.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==h.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=a.get("next.route");if(r){let t=`${D} ${r}`;e.setAttributes({"next.route":r,"http.route":r,"next.span_name":t}),e.updateName(t),i&&i!==e&&(i.setAttribute("http.route",r),i.updateName(t))}else e.updateName(`${D} ${s}`)}),d=async i=>{var o,d;let l=async({previousCacheEntry:r})=>{try{if(!F&&C&&x&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await n(i);e.fetchMetrics=Y.renderOpts.fetchMetrics;let o=Y.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let d=Y.renderOpts.collectedTags;if(!M)return await (0,w.sendResponse)(G,V,s,Y.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,g.toNodeOutgoingHttpHeaders)(s.headers);d&&(t[m.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==Y.renderOpts.collectedRevalidate&&!(Y.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&Y.renderOpts.collectedRevalidate,r=void 0===Y.renderOpts.collectedExpire||Y.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:Y.renderOpts.collectedExpire;return{value:{kind:T.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:r}}}}catch(t){throw(null==r?void 0:r.isStale)&&await b.onRequestError(e,t,{routerKind:"App Router",routePath:s,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:B,isOnDemandRevalidate:C})},!1,A),t}},c=await b.handleResponse({req:e,nextConfig:_,cacheKey:$,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:S,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:x,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:F});if(!M)return null;if((null==c||null==(o=c.value)?void 0:o.kind)!==T.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(d=c.value)?void 0:d.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});F||t.setHeader("x-nextjs-cache",C?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),R&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,g.fromNodeOutgoingHttpHeaders)(c.value.headers);return F&&M||u.delete(m.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,f.getCacheControlHeader)(c.cacheControl)),await (0,w.sendResponse)(G,V,new Response(c.value.body,{headers:u,status:c.value.status||200})),null};H&&j?await d(j):(i=L.getActiveScopeSpan(),await L.withPropagatedContext(e.headers,()=>L.trace(h.BaseServerSpan.handleRequest,{spanName:`${D} ${s}`,kind:o.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},d),void 0,!H))}catch(t){if(t instanceof k.NoFallbackError||await b.onRequestError(e,t,{routerKind:"App Router",routePath:q,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:B,isOnDemandRevalidate:C})},!1,A),M)throw t;return await (0,w.sendResponse)(G,V,new Response(null,{status:500})),null}}e.s(["handler",0,y,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:_,workUnitAsyncStorage:E})},"routeModule",0,b,"serverHooks",0,R,"workAsyncStorage",0,_,"workUnitAsyncStorage",0,E]),a()}catch(e){a(e)}},!1),572758,e=>{e.v(t=>Promise.all(["server/chunks/0yh8_@better-auth_memory-adapter_dist_index_mjs_0u9gr83._.js"].map(t=>e.l(t))).then(()=>t(501816)))},409008,e=>{e.v(t=>Promise.all(["server/chunks/0cae_better-auth_dist_adapters_kysely-adapter_index_mjs_0c-9lzd._.js"].map(t=>e.l(t))).then(()=>t(770021)))},96318,e=>{e.v(t=>Promise.all(["server/chunks/0_yy_@better-auth_kysely-adapter_dist_bun-sqlite-dialect-na--YwnN_mjs_0ua5mwj._.js"].map(t=>e.l(t))).then(()=>t(158195)))},11379,e=>{e.v(t=>Promise.all(["server/chunks/0_yy_@better-auth_kysely-adapter_dist_node-sqlite-dialect_mjs_0evb.r9._.js"].map(t=>e.l(t))).then(()=>t(302822)))},946743,e=>{e.v(t=>Promise.all(["server/chunks/0_yy_@better-auth_kysely-adapter_dist_d1-sqlite-dialect-C2B7YsIT_mjs_0bihzky._.js"].map(t=>e.l(t))).then(()=>t(898679)))}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=_07-798_._.js.map
|
package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_08z6pkf._.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[450329,e=>e.a(async(t,a)=>{try{var r=e.i(291484);e.i(700598);var n=e.i(291109),i=e.i(675139),s=e.i(152327),o=e.i(47962),l=e.i(776227),u=e.i(740580),d=e.i(774078),c=t([s]);[s]=c.then?(await c)():c;let p=(0,s.withAuth)(async(e,t)=>{let a=await (0,o.withWorkspaceMember)(e,t);if(a instanceof Response)return a;let{env:s}=(0,r.getCloudflareContext)(),c=(0,i.
|
|
1
|
+
module.exports=[450329,e=>e.a(async(t,a)=>{try{var r=e.i(291484);e.i(700598);var n=e.i(291109),i=e.i(675139),s=e.i(152327),o=e.i(47962),l=e.i(776227),u=e.i(740580),d=e.i(774078),c=t([s]);[s]=c.then?(await c)():c;let p=(0,s.withAuth)(async(e,t)=>{let a=await (0,o.withWorkspaceMember)(e,t);if(a instanceof Response)return a;let{env:s}=(0,r.getCloudflareContext)(),c=(0,i.getDb)(s.DB),p=await (0,d.cached)(d.cacheKeys.allRuntimes(a.workspaceId),120,()=>n.queries.runtime.listAgentRuntimes(c,a.workspaceId)),h=s.CACHE_KV??null;if(h){let e=[...new Set(p.map(e=>e.daemonId).filter(Boolean))],t=await Promise.all(e.map(e=>h.get(d.cacheKeys.heartbeat(a.workspaceId,e)).catch(()=>null))),r=new Map(e.map((e,a)=>[e,t[a]]));for(let e of p){let t=e.daemonId?r.get(e.daemonId):null;t&&(e.machineLastSeenAt=t)}}return(0,l.writeJSON)(p.map(u.runtimeToResponse))});e.s(["GET",0,p]),a()}catch(e){a(e)}},!1),496563,e=>e.a(async(t,a)=>{try{var r=e.i(80774),n=e.i(404478),i=e.i(732985),s=e.i(481671),o=e.i(638081),l=e.i(204960),u=e.i(924918),d=e.i(363585),c=e.i(906846),p=e.i(359838),h=e.i(383303),m=e.i(234173),v=e.i(270215),R=e.i(830665),_=e.i(944002),w=e.i(193695);e.i(195928);var y=e.i(81543),f=e.i(450329),g=t([f]);[f]=g.then?(await g)():g;let C=new r.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/runtimes/route",pathname:"/api/runtimes",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/web/src/app/api/runtimes/route.ts",nextConfigOutput:"standalone",userland:f,...{}}),{workAsyncStorage:b,workUnitAsyncStorage:A,serverHooks:x}=C;async function E(e,t,a){a.requestMeta&&(0,s.setRequestMeta)(e,a.requestMeta),C.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let r="/api/runtimes/route";r=r.replace(/\/index$/,"")||"/";let i=await C.prepare(e,t,{srcPage:r,multiZoneDraftMode:!1});if(!i)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:f,deploymentId:g,params:E,nextConfig:b,parsedUrl:A,isDraftMode:x,prerenderManifest:P,routerServerContext:T,isOnDemandRevalidate:k,revalidateOnlyGenerated:N,resolvedPathname:S,clientReferenceManifest:I,serverActionsManifest:q}=i,O=(0,u.normalizeAppPath)(r),j=!!(P.dynamicRoutes[O]||P.routes[S]),H=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,A,!1):t.end("This page could not be found"),null);if(j&&!x){let e=!!P.routes[S],t=P.dynamicRoutes[O];if(t&&!1===t.fallback&&!e){if(b.adapterPath)return await H();throw new w.NoFallbackError}}let M=null;!j||C.isDev||x||(M=S,M="/index"===M?"/":M);let U=!0===C.isDev||!j,D=j&&!U;q&&I&&(0,l.setManifestsSingleton)({page:r,clientReferenceManifest:I,serverActionsManifest:q});let K=e.method||"GET",B=(0,o.getTracer)(),$=B.getActiveScopeSpan(),F=!!(null==T?void 0:T.isWrappedByNextServer),L=!!(0,s.getRequestMeta)(e,"minimalMode"),G=(0,s.getRequestMeta)(e,"incrementalCache")||await C.getIncrementalCache(e,b,P,L);null==G||G.resetRequestCache(),globalThis.__incrementalCache=G;let V={params:E,previewProps:P.preview,renderOpts:{experimental:{authInterrupts:!!b.experimental.authInterrupts},cacheComponents:!!b.cacheComponents,supportsDynamicResponse:U,incrementalCache:G,cacheLifeProfiles:b.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r,n)=>C.onRequestError(e,t,r,n,T)},sharedContext:{buildId:f,deploymentId:g}},W=new d.NodeNextRequest(e),z=new d.NodeNextResponse(t),X=c.NextRequestAdapter.fromNodeNextRequest(W,(0,c.signalFromNodeResponse)(t));try{let i,s=async e=>C.handle(X,V).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=B.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=a.get("next.route");if(n){let t=`${K} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),i&&i!==e&&(i.setAttribute("http.route",n),i.updateName(t))}else e.updateName(`${K} ${r}`)}),l=async i=>{var o,l;let u=async({previousCacheEntry:n})=>{try{if(!L&&k&&N&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let r=await s(i);e.fetchMetrics=V.renderOpts.fetchMetrics;let o=V.renderOpts.pendingWaitUntil;o&&a.waitUntil&&(a.waitUntil(o),o=void 0);let l=V.renderOpts.collectedTags;if(!j)return await (0,m.sendResponse)(W,z,r,V.renderOpts.pendingWaitUntil),null;{let e=await r.blob(),t=(0,v.toNodeOutgoingHttpHeaders)(r.headers);l&&(t[_.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==V.renderOpts.collectedRevalidate&&!(V.renderOpts.collectedRevalidate>=_.INFINITE_CACHE)&&V.renderOpts.collectedRevalidate,n=void 0===V.renderOpts.collectedExpire||V.renderOpts.collectedExpire>=_.INFINITE_CACHE?void 0:V.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:r.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await C.onRequestError(e,t,{routerKind:"App Router",routePath:r,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:k})},!1,T),t}},d=await C.handleResponse({req:e,nextConfig:b,cacheKey:M,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:P,isRoutePPREnabled:!1,isOnDemandRevalidate:k,revalidateOnlyGenerated:N,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:L});if(!j)return null;if((null==d||null==(o=d.value)?void 0:o.kind)!==y.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});L||t.setHeader("x-nextjs-cache",k?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),x&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,v.fromNodeOutgoingHttpHeaders)(d.value.headers);return L&&j||c.delete(_.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,R.getCacheControlHeader)(d.cacheControl)),await (0,m.sendResponse)(W,z,new Response(d.value.body,{headers:c,status:d.value.status||200})),null};F&&$?await l($):(i=B.getActiveScopeSpan(),await B.withPropagatedContext(e.headers,()=>B.trace(p.BaseServerSpan.handleRequest,{spanName:`${K} ${r}`,kind:o.SpanKind.SERVER,attributes:{"http.method":K,"http.target":e.url}},l),void 0,!F))}catch(t){if(t instanceof w.NoFallbackError||await C.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:k})},!1,T),j)throw t;return await (0,m.sendResponse)(W,z,new Response(null,{status:500})),null}}e.s(["handler",0,E,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:b,workUnitAsyncStorage:A})},"routeModule",0,C,"serverHooks",0,x,"workAsyncStorage",0,b,"workUnitAsyncStorage",0,A]),a()}catch(e){a(e)}},!1),572758,e=>{e.v(t=>Promise.all(["server/chunks/0yh8_@better-auth_memory-adapter_dist_index_mjs_0u9gr83._.js"].map(t=>e.l(t))).then(()=>t(501816)))},409008,e=>{e.v(t=>Promise.all(["server/chunks/0cae_better-auth_dist_adapters_kysely-adapter_index_mjs_0c-9lzd._.js"].map(t=>e.l(t))).then(()=>t(770021)))},96318,e=>{e.v(t=>Promise.all(["server/chunks/0_yy_@better-auth_kysely-adapter_dist_bun-sqlite-dialect-na--YwnN_mjs_0ua5mwj._.js"].map(t=>e.l(t))).then(()=>t(158195)))},11379,e=>{e.v(t=>Promise.all(["server/chunks/0_yy_@better-auth_kysely-adapter_dist_node-sqlite-dialect_mjs_0evb.r9._.js"].map(t=>e.l(t))).then(()=>t(302822)))},946743,e=>{e.v(t=>Promise.all(["server/chunks/0_yy_@better-auth_kysely-adapter_dist_d1-sqlite-dialect-C2B7YsIT_mjs_0bihzky._.js"].map(t=>e.l(t))).then(()=>t(898679)))}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=_08z6pkf._.js.map
|
package/bundled/web/.open-next/server-functions/default/src/web/.next/server/chunks/_09ivzvb._.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[991141,e=>e.a(async(t,a)=>{try{var r=e.i(291484);e.i(700598);var n=e.i(291109),i=e.i(704024),o=e.i(888247),s=e.i(424166),l=e.i(929782),d=e.i(332432),c=e.i(719436),u=e.i(675139),p=e.i(152327),m=e.i(47962),h=e.i(776227),f=e.i(740580),w=e.i(726089),g=e.i(774078),y=t([p]);async function R(e,t,a,r,i,o,s){let l=`Email sent to ${i}: ${o}`,d=JSON.stringify({emailId:s}),c=await n.queries.message.createMessage(e,{conversationId:t,role:"event",content:l,metadata:d});(0,w.broadcastToUser)(a,{type:"conversation.message",conversationId:t,message:{id:c.id,conversation_id:c.conversationId,role:c.role,content:c.content,task_id:c.taskId,attachment_ids:null,metadata:{emailId:s},created_at:c.createdAt}}).catch(()=>{}),(0,w.broadcastToUser)(a,{type:"email.sent",agentId:r}).catch(()=>{})}[p]=y.then?(await y)():y;let I=(0,p.withAuth)(async(e,t)=>{let a,p,w,y=await (0,m.withWorkspaceMember)(e,t);if(y instanceof Response)return y;let{env:I}=(0,r.getCloudflareContext)(),E=(0,u.getDb)(I.DB),[v,T]=await (0,h.parseBody)(e,o.SendEmailRequestSchema);if(T)return T;let k=await n.queries.agent.getAgent(E,v.agentId,y.workspaceId,t.userId);if(!k)return(0,h.writeError)("agent not found in workspace",404);let b=v.customAccountId;if(v.from&&!b){let e=k.emailHandle?`${k.emailHandle}@alook.ai`:null;if(v.from===e)a=e;else{let e=(await (0,g.cached)(g.cacheKeys.allEmailAccounts(y.workspaceId),600,()=>n.queries.emailAccount.getAllEmailAccountsForWorkspace(E,y.workspaceId))).find(e=>e.agentId===v.agentId&&e.emailAddress===v.from);if(!e)return(0,h.writeError)(`email address '${v.from}' is not configured for this agent`,400);b=e.id,a=e.emailAddress}}else if(b){let e=await n.queries.emailAccount.getEmailAccountScoped(E,b,v.agentId,y.workspaceId);if(!e)return(0,h.writeError)("custom email account not found",404);a=e.emailAddress}else{if(!k.emailHandle)return(0,h.writeError)("agent has no email handle configured",400);a=`${k.emailHandle}@alook.ai`}v.conversationId&&await n.queries.conversation.getConversation(E,v.conversationId,y.workspaceId)&&(p=v.conversationId);let A=v.attachments??[],C=(0,s.parseEmailHandle)(a),S=(0,s.parseEmailHandle)(v.to);if(C&&S){let e=await n.queries.agent.getAgentByHandle(E,S);if(e&&e.workspaceId===y.workspaceId){let t,r=`<${(0,c.nanoid)()}@alook.ai>`,o=v.htmlBody||"",s=[];for(let e of A){let t=await I.EMAIL_BUCKET.get(e.key);if(!t)continue;let a=await t.arrayBuffer(),r=btoa(String.fromCharCode(...new Uint8Array(a)));s.push({filename:e.filename,contentType:e.contentType,base64:r})}let u=(0,l.buildMimeMessage)({from:a,to:v.to,subject:v.subject,messageId:r,inReplyTo:v.inReplyTo,references:v.references,body:o,bodyType:"text/html",attachments:s}),m=(0,c.nanoid)(),w=`emails/${m}/raw`;await I.EMAIL_BUCKET.put(w,u,{httpMetadata:{contentType:"message/rfc822"}});let g=await n.queries.whitelist.isWhitelisted(E,e.id,e.workspaceId,a),T=JSON.stringify({agentId:e.id,workspaceId:e.workspaceId,r2Key:w,from:a,to:v.to,subject:v.subject,isWhitelisted:g,forwarded:!1,messageId:r,inReplyTo:v.inReplyTo??"",references:v.references??"",isInternal:!0,...v.traceId?{traceId:v.traceId}:{},...v.sourceTaskId?{sourceTaskId:v.sourceTaskId}:{}}),b={method:"POST",headers:{"Content-Type":"application/json"},body:T};try{t=await I.WORKER_SELF_REFERENCE.fetch("http://internal/api/email/notify",b)}catch{t=await fetch(`${i.DEV_WEB_URL}/api/email/notify`,b)}if(!t.ok){let e=await t.text();return(0,h.writeError)(`local delivery failed: ${e}`,t.status)}let C=await n.queries.email.createEmail(E,{agentId:v.agentId,workspaceId:y.workspaceId,fromEmail:a,toEmail:v.to,subject:v.subject,r2Key:w,isWhitelisted:!1,forwarded:!1,messageId:r,inReplyTo:v.inReplyTo??"",references:v.references??"",htmlBody:o,attachments:JSON.stringify(A),direction:"outbound",status:"sent"});if(p){let e=(0,d.extractThreadId)(v.references,v.inReplyTo,r);e&&await n.queries.conversationMap.createMapping(E,{key:(0,d.buildEmailMapKey)(v.agentId,e),workspaceId:y.workspaceId,conversationId:p}),k.ownerId&&await R(E,p,k.ownerId,v.agentId,v.to,v.subject,C.id)}return(0,h.writeJSON)((0,f.emailToResponse)(C))}}let x=JSON.stringify({agentId:v.agentId,workspaceId:y.workspaceId,to:v.to,subject:v.subject,htmlBody:v.htmlBody||"",inReplyTo:v.inReplyTo||"",references:v.references||"",customAccountId:b||void 0,attachmentKeys:A.length>0?A.map(e=>({key:e.key,filename:e.filename,contentType:e.contentType})):void 0});try{w=await I.EMAIL_WORKER.fetch("http://internal/send/agent",{method:"POST",headers:{"Content-Type":"application/json"},body:x})}catch{w=await fetch(`${i.DEV_EMAIL_WORKER_URL}/send/agent`,{method:"POST",headers:{"Content-Type":"application/json"},body:x})}if(!w.ok){let e=await w.text();return(0,h.writeError)(`email worker error: ${e}`,w.status)}let _=await w.json(),O=await n.queries.email.createEmail(E,{agentId:v.agentId,workspaceId:y.workspaceId,fromEmail:a,toEmail:v.to,subject:v.subject,r2Key:_.r2Key,isWhitelisted:!1,forwarded:!1,messageId:_.messageId??"",inReplyTo:v.inReplyTo??"",references:v.references??"",htmlBody:v.htmlBody||"",attachments:JSON.stringify(A),direction:"outbound",status:"sent"});if(p&&_.messageId){let e=(0,d.extractThreadId)(v.references,v.inReplyTo,_.messageId);e&&await n.queries.conversationMap.createMapping(E,{key:(0,d.buildEmailMapKey)(v.agentId,e),workspaceId:y.workspaceId,conversationId:p}),k.ownerId&&await R(E,p,k.ownerId,v.agentId,v.to,v.subject,O.id)}return(0,h.writeJSON)((0,f.emailToResponse)(O))});e.s(["POST",0,I]),a()}catch(e){a(e)}},!1),437146,e=>e.a(async(t,a)=>{try{var r=e.i(80774),n=e.i(404478),i=e.i(732985),o=e.i(481671),s=e.i(638081),l=e.i(204960),d=e.i(924918),c=e.i(363585),u=e.i(906846),p=e.i(359838),m=e.i(383303),h=e.i(234173),f=e.i(270215),w=e.i(830665),g=e.i(944002),y=e.i(193695);e.i(195928);var R=e.i(81543),I=e.i(991141),E=t([I]);[I]=E.then?(await E)():E;let T=new r.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/email/send/route",pathname:"/api/email/send",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/web/src/app/api/email/send/route.ts",nextConfigOutput:"standalone",userland:I,...{}}),{workAsyncStorage:k,workUnitAsyncStorage:b,serverHooks:A}=T;async function v(e,t,a){a.requestMeta&&(0,o.setRequestMeta)(e,a.requestMeta),T.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let r="/api/email/send/route";r=r.replace(/\/index$/,"")||"/";let i=await T.prepare(e,t,{srcPage:r,multiZoneDraftMode:!1});if(!i)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:I,deploymentId:E,params:v,nextConfig:k,parsedUrl:b,isDraftMode:A,prerenderManifest:C,routerServerContext:S,isOnDemandRevalidate:x,revalidateOnlyGenerated:_,resolvedPathname:O,clientReferenceManifest:N,serverActionsManifest:q}=i,M=(0,d.normalizeAppPath)(r),P=!!(C.dynamicRoutes[M]||C.routes[O]),H=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,b,!1):t.end("This page could not be found"),null);if(P&&!A){let e=!!C.routes[O],t=C.dynamicRoutes[M];if(t&&!1===t.fallback&&!e){if(k.adapterPath)return await H();throw new y.NoFallbackError}}let j=null;!P||T.isDev||A||(j=O,j="/index"===j?"/":j);let U=!0===T.isDev||!P,$=P&&!U;q&&N&&(0,l.setManifestsSingleton)({page:r,clientReferenceManifest:N,serverActionsManifest:q});let K=e.method||"GET",B=(0,s.getTracer)(),D=B.getActiveScopeSpan(),L=!!(null==S?void 0:S.isWrappedByNextServer),W=!!(0,o.getRequestMeta)(e,"minimalMode"),F=(0,o.getRequestMeta)(e,"incrementalCache")||await T.getIncrementalCache(e,k,C,W);null==F||F.resetRequestCache(),globalThis.__incrementalCache=F;let J={params:v,previewProps:C.preview,renderOpts:{experimental:{authInterrupts:!!k.experimental.authInterrupts},cacheComponents:!!k.cacheComponents,supportsDynamicResponse:U,incrementalCache:F,cacheLifeProfiles:k.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r,n)=>T.onRequestError(e,t,r,n,S)},sharedContext:{buildId:I,deploymentId:E}},V=new c.NodeNextRequest(e),G=new c.NodeNextResponse(t),X=u.NextRequestAdapter.fromNodeNextRequest(V,(0,u.signalFromNodeResponse)(t));try{let i,o=async e=>T.handle(X,J).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=B.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=a.get("next.route");if(n){let t=`${K} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),i&&i!==e&&(i.setAttribute("http.route",n),i.updateName(t))}else e.updateName(`${K} ${r}`)}),l=async i=>{var s,l;let d=async({previousCacheEntry:n})=>{try{if(!W&&x&&_&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let r=await o(i);e.fetchMetrics=J.renderOpts.fetchMetrics;let s=J.renderOpts.pendingWaitUntil;s&&a.waitUntil&&(a.waitUntil(s),s=void 0);let l=J.renderOpts.collectedTags;if(!P)return await (0,h.sendResponse)(V,G,r,J.renderOpts.pendingWaitUntil),null;{let e=await r.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(r.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==J.renderOpts.collectedRevalidate&&!(J.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&J.renderOpts.collectedRevalidate,n=void 0===J.renderOpts.collectedExpire||J.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:J.renderOpts.collectedExpire;return{value:{kind:R.CachedRouteKind.APP_ROUTE,status:r.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await T.onRequestError(e,t,{routerKind:"App Router",routePath:r,routeType:"route",revalidateReason:(0,m.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:x})},!1,S),t}},c=await T.handleResponse({req:e,nextConfig:k,cacheKey:j,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:x,revalidateOnlyGenerated:_,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:W});if(!P)return null;if((null==c||null==(s=c.value)?void 0:s.kind)!==R.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(l=c.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});W||t.setHeader("x-nextjs-cache",x?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,f.fromNodeOutgoingHttpHeaders)(c.value.headers);return W&&P||u.delete(g.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,w.getCacheControlHeader)(c.cacheControl)),await (0,h.sendResponse)(V,G,new Response(c.value.body,{headers:u,status:c.value.status||200})),null};L&&D?await l(D):(i=B.getActiveScopeSpan(),await B.withPropagatedContext(e.headers,()=>B.trace(p.BaseServerSpan.handleRequest,{spanName:`${K} ${r}`,kind:s.SpanKind.SERVER,attributes:{"http.method":K,"http.target":e.url}},l),void 0,!L))}catch(t){if(t instanceof y.NoFallbackError||await T.onRequestError(e,t,{routerKind:"App Router",routePath:M,routeType:"route",revalidateReason:(0,m.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:x})},!1,S),P)throw t;return await (0,h.sendResponse)(V,G,new Response(null,{status:500})),null}}e.s(["handler",0,v,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:k,workUnitAsyncStorage:b})},"routeModule",0,T,"serverHooks",0,A,"workAsyncStorage",0,k,"workUnitAsyncStorage",0,b]),a()}catch(e){a(e)}},!1)];
|
|
1
|
+
module.exports=[991141,e=>e.a(async(t,a)=>{try{var r=e.i(291484);e.i(700598);var n=e.i(291109),i=e.i(704024),o=e.i(888247),s=e.i(424166),l=e.i(929782),d=e.i(332432),c=e.i(719436),u=e.i(675139),p=e.i(152327),h=e.i(47962),m=e.i(776227),w=e.i(740580),f=e.i(726089),g=e.i(774078),y=t([p]);async function R(e,t,a,r,i,o,s){let l=`Email sent to ${i}: ${o}`,d=JSON.stringify({emailId:s}),c=await n.queries.message.createMessage(e,{conversationId:t,role:"event",content:l,metadata:d});(0,f.broadcastToUser)(a,{type:"conversation.message",conversationId:t,message:{id:c.id,conversation_id:c.conversationId,role:c.role,content:c.content,task_id:c.taskId,attachment_ids:null,metadata:{emailId:s},created_at:c.createdAt}}).catch(()=>{}),(0,f.broadcastToUser)(a,{type:"email.sent",agentId:r}).catch(()=>{})}[p]=y.then?(await y)():y;let I=(0,p.withAuth)(async(e,t)=>{let a,p,f,y=await (0,h.withWorkspaceMember)(e,t);if(y instanceof Response)return y;let{env:I}=(0,r.getCloudflareContext)(),E=(0,u.getDb)(I.DB),[v,T]=await (0,m.parseBody)(e,o.SendEmailRequestSchema);if(T)return T;let k=await n.queries.agent.getAgent(E,v.agentId,y.workspaceId,t.userId);if(!k)return(0,m.writeError)("agent not found in workspace",404);let b=v.customAccountId;if(v.from&&!b){let e=k.emailHandle?`${k.emailHandle}@alook.ai`:null;if(v.from===e)a=e;else{let e=(await (0,g.cached)(g.cacheKeys.allEmailAccounts(y.workspaceId),600,()=>n.queries.emailAccount.getAllEmailAccountsForWorkspace(E,y.workspaceId))).find(e=>e.agentId===v.agentId&&e.emailAddress===v.from);if(!e)return(0,m.writeError)(`email address '${v.from}' is not configured for this agent`,400);b=e.id,a=e.emailAddress}}else if(b){let e=await n.queries.emailAccount.getEmailAccountScoped(E,b,v.agentId,y.workspaceId);if(!e)return(0,m.writeError)("custom email account not found",404);a=e.emailAddress}else{if(!k.emailHandle)return(0,m.writeError)("agent has no email handle configured",400);a=`${k.emailHandle}@alook.ai`}v.conversationId&&await n.queries.conversation.getConversation(E,v.conversationId,y.workspaceId)&&(p=v.conversationId);let A=v.attachments??[],C=(0,s.parseEmailHandle)(a),S=(0,s.parseEmailHandle)(v.to);if(C&&S){let e=await n.queries.agent.getAgentByHandle(E,S);if(e&&e.workspaceId===y.workspaceId){let t,r=`<${(0,c.nanoid)()}@alook.ai>`,o=v.htmlBody||"",s=[];for(let e of A){let t=await I.EMAIL_BUCKET.get(e.key);if(!t)continue;let a=await t.arrayBuffer(),r=btoa(String.fromCharCode(...new Uint8Array(a)));s.push({filename:e.filename,contentType:e.contentType,base64:r})}let u=(0,l.buildMimeMessage)({from:a,to:v.to,subject:v.subject,messageId:r,inReplyTo:v.inReplyTo,references:v.references,body:o,bodyType:"text/html",attachments:s}),h=(0,c.nanoid)(),f=`emails/${h}/raw`;await I.EMAIL_BUCKET.put(f,u,{httpMetadata:{contentType:"message/rfc822"}});let T=await n.queries.whitelist.isWhitelisted(E,e.id,e.workspaceId,a),b=JSON.stringify({agentId:e.id,workspaceId:e.workspaceId,r2Key:f,from:a,to:v.to,subject:v.subject,isWhitelisted:T,forwarded:!1,messageId:r,inReplyTo:v.inReplyTo??"",references:v.references??"",isInternal:!0,...v.traceId?{traceId:v.traceId}:{},...v.sourceTaskId?{sourceTaskId:v.sourceTaskId}:{}}),C={method:"POST",headers:{"Content-Type":"application/json"},body:b};try{t=await I.WORKER_SELF_REFERENCE.fetch("http://internal/api/email/notify",C)}catch{t=await fetch(`${i.DEV_WEB_URL}/api/email/notify`,C)}if(!t.ok){let e=await t.text();return(0,m.writeError)(`local delivery failed: ${e}`,t.status)}let S=await n.queries.email.createEmail(E,{agentId:v.agentId,workspaceId:y.workspaceId,fromEmail:a,toEmail:v.to,subject:v.subject,r2Key:f,isWhitelisted:!1,forwarded:!1,messageId:r,inReplyTo:v.inReplyTo??"",references:v.references??"",htmlBody:o,attachments:JSON.stringify(A),direction:"outbound",status:"sent"});if((0,g.invalidate)(g.cacheKeys.overviewEmailStats(y.workspaceId)).catch(()=>{}),p){let e=(0,d.extractThreadId)(v.references,v.inReplyTo,r);e&&await n.queries.conversationMap.createMapping(E,{key:(0,d.buildEmailMapKey)(v.agentId,e),workspaceId:y.workspaceId,conversationId:p}),k.ownerId&&await R(E,p,k.ownerId,v.agentId,v.to,v.subject,S.id)}return(0,m.writeJSON)((0,w.emailToResponse)(S))}}let x=JSON.stringify({agentId:v.agentId,workspaceId:y.workspaceId,to:v.to,subject:v.subject,htmlBody:v.htmlBody||"",inReplyTo:v.inReplyTo||"",references:v.references||"",customAccountId:b||void 0,attachmentKeys:A.length>0?A.map(e=>({key:e.key,filename:e.filename,contentType:e.contentType})):void 0});try{f=await I.EMAIL_WORKER.fetch("http://internal/send/agent",{method:"POST",headers:{"Content-Type":"application/json"},body:x})}catch{f=await fetch(`${i.DEV_EMAIL_WORKER_URL}/send/agent`,{method:"POST",headers:{"Content-Type":"application/json"},body:x})}if(!f.ok){let e=await f.text();return(0,m.writeError)(`email worker error: ${e}`,f.status)}let _=await f.json(),O=await n.queries.email.createEmail(E,{agentId:v.agentId,workspaceId:y.workspaceId,fromEmail:a,toEmail:v.to,subject:v.subject,r2Key:_.r2Key,isWhitelisted:!1,forwarded:!1,messageId:_.messageId??"",inReplyTo:v.inReplyTo??"",references:v.references??"",htmlBody:v.htmlBody||"",attachments:JSON.stringify(A),direction:"outbound",status:"sent"});if((0,g.invalidate)(g.cacheKeys.overviewEmailStats(y.workspaceId)).catch(()=>{}),p&&_.messageId){let e=(0,d.extractThreadId)(v.references,v.inReplyTo,_.messageId);e&&await n.queries.conversationMap.createMapping(E,{key:(0,d.buildEmailMapKey)(v.agentId,e),workspaceId:y.workspaceId,conversationId:p}),k.ownerId&&await R(E,p,k.ownerId,v.agentId,v.to,v.subject,O.id)}return(0,m.writeJSON)((0,w.emailToResponse)(O))});e.s(["POST",0,I]),a()}catch(e){a(e)}},!1),437146,e=>e.a(async(t,a)=>{try{var r=e.i(80774),n=e.i(404478),i=e.i(732985),o=e.i(481671),s=e.i(638081),l=e.i(204960),d=e.i(924918),c=e.i(363585),u=e.i(906846),p=e.i(359838),h=e.i(383303),m=e.i(234173),w=e.i(270215),f=e.i(830665),g=e.i(944002),y=e.i(193695);e.i(195928);var R=e.i(81543),I=e.i(991141),E=t([I]);[I]=E.then?(await E)():E;let T=new r.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/email/send/route",pathname:"/api/email/send",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/web/src/app/api/email/send/route.ts",nextConfigOutput:"standalone",userland:I,...{}}),{workAsyncStorage:k,workUnitAsyncStorage:b,serverHooks:A}=T;async function v(e,t,a){a.requestMeta&&(0,o.setRequestMeta)(e,a.requestMeta),T.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let r="/api/email/send/route";r=r.replace(/\/index$/,"")||"/";let i=await T.prepare(e,t,{srcPage:r,multiZoneDraftMode:!1});if(!i)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:I,deploymentId:E,params:v,nextConfig:k,parsedUrl:b,isDraftMode:A,prerenderManifest:C,routerServerContext:S,isOnDemandRevalidate:x,revalidateOnlyGenerated:_,resolvedPathname:O,clientReferenceManifest:N,serverActionsManifest:q}=i,M=(0,d.normalizeAppPath)(r),P=!!(C.dynamicRoutes[M]||C.routes[O]),H=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,b,!1):t.end("This page could not be found"),null);if(P&&!A){let e=!!C.routes[O],t=C.dynamicRoutes[M];if(t&&!1===t.fallback&&!e){if(k.adapterPath)return await H();throw new y.NoFallbackError}}let j=null;!P||T.isDev||A||(j=O,j="/index"===j?"/":j);let U=!0===T.isDev||!P,K=P&&!U;q&&N&&(0,l.setManifestsSingleton)({page:r,clientReferenceManifest:N,serverActionsManifest:q});let $=e.method||"GET",B=(0,s.getTracer)(),D=B.getActiveScopeSpan(),L=!!(null==S?void 0:S.isWrappedByNextServer),W=!!(0,o.getRequestMeta)(e,"minimalMode"),F=(0,o.getRequestMeta)(e,"incrementalCache")||await T.getIncrementalCache(e,k,C,W);null==F||F.resetRequestCache(),globalThis.__incrementalCache=F;let J={params:v,previewProps:C.preview,renderOpts:{experimental:{authInterrupts:!!k.experimental.authInterrupts},cacheComponents:!!k.cacheComponents,supportsDynamicResponse:U,incrementalCache:F,cacheLifeProfiles:k.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,a,r,n)=>T.onRequestError(e,t,r,n,S)},sharedContext:{buildId:I,deploymentId:E}},V=new c.NodeNextRequest(e),G=new c.NodeNextResponse(t),X=u.NextRequestAdapter.fromNodeNextRequest(V,(0,u.signalFromNodeResponse)(t));try{let i,o=async e=>T.handle(X,J).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let a=B.getRootSpanAttributes();if(!a)return;if(a.get("next.span_type")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${a.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=a.get("next.route");if(n){let t=`${$} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),i&&i!==e&&(i.setAttribute("http.route",n),i.updateName(t))}else e.updateName(`${$} ${r}`)}),l=async i=>{var s,l;let d=async({previousCacheEntry:n})=>{try{if(!W&&x&&_&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let r=await o(i);e.fetchMetrics=J.renderOpts.fetchMetrics;let s=J.renderOpts.pendingWaitUntil;s&&a.waitUntil&&(a.waitUntil(s),s=void 0);let l=J.renderOpts.collectedTags;if(!P)return await (0,m.sendResponse)(V,G,r,J.renderOpts.pendingWaitUntil),null;{let e=await r.blob(),t=(0,w.toNodeOutgoingHttpHeaders)(r.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let a=void 0!==J.renderOpts.collectedRevalidate&&!(J.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&J.renderOpts.collectedRevalidate,n=void 0===J.renderOpts.collectedExpire||J.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:J.renderOpts.collectedExpire;return{value:{kind:R.CachedRouteKind.APP_ROUTE,status:r.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:a,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await T.onRequestError(e,t,{routerKind:"App Router",routePath:r,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:x})},!1,S),t}},c=await T.handleResponse({req:e,nextConfig:k,cacheKey:j,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:x,revalidateOnlyGenerated:_,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:W});if(!P)return null;if((null==c||null==(s=c.value)?void 0:s.kind)!==R.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(l=c.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});W||t.setHeader("x-nextjs-cache",x?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,w.fromNodeOutgoingHttpHeaders)(c.value.headers);return W&&P||u.delete(g.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,f.getCacheControlHeader)(c.cacheControl)),await (0,m.sendResponse)(V,G,new Response(c.value.body,{headers:u,status:c.value.status||200})),null};L&&D?await l(D):(i=B.getActiveScopeSpan(),await B.withPropagatedContext(e.headers,()=>B.trace(p.BaseServerSpan.handleRequest,{spanName:`${$} ${r}`,kind:s.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},l),void 0,!L))}catch(t){if(t instanceof y.NoFallbackError||await T.onRequestError(e,t,{routerKind:"App Router",routePath:M,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:K,isOnDemandRevalidate:x})},!1,S),P)throw t;return await (0,m.sendResponse)(V,G,new Response(null,{status:500})),null}}e.s(["handler",0,v,"patchFetch",0,function(){return(0,i.patchFetch)({workAsyncStorage:k,workUnitAsyncStorage:b})},"routeModule",0,T,"serverHooks",0,A,"workAsyncStorage",0,k,"workUnitAsyncStorage",0,b]),a()}catch(e){a(e)}},!1)];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=_09ivzvb._.js.map
|