tower-studio 0.2.39 → 0.2.41
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/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/build-manifest.json +3 -3
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/server/app/_global-error.html +1 -1
- package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/_not-found/page/server-reference-manifest.json +31 -31
- package/.next/standalone/.next/server/app/_not-found/page.js +3 -3
- package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/adapters/test/route.js +1 -1
- package/.next/standalone/.next/server/app/api/adapters/test/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/browse-fs/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/files/assets/[projectId]/[filename]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/files/assets/[projectId]/[filename]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/git/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/assets/[projectId]/[filename]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/assets/[projectId]/[filename]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/assets/reveal/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/assistant/attachments/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/assistant/attachments/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/assistant/chat/route.js +2 -2
- package/.next/standalone/.next/server/app/api/internal/assistant/chat/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/assistant/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/assistant/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/assistant/sessions/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/assistant/sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/backup/import/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/backup/import/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/cache/[...segments]/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/cache/[...segments]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/hooks/install/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/hooks/install/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/hooks/stop/route.js +2 -2
- package/.next/standalone/.next/server/app/api/internal/hooks/stop/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/hooks/upload/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/hooks/upload/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/monaco/[...path]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/buffer/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/buffer/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/input/route.js +1 -1
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/input/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/start/route.js +3 -3
- package/.next/standalone/.next/server/app/api/internal/terminal/[taskId]/start/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[taskId]/diff/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[taskId]/merge/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/missions/page/react-loadable-manifest.json +2 -2
- package/.next/standalone/.next/server/app/missions/page/server-reference-manifest.json +70 -70
- package/.next/standalone/.next/server/app/missions/page.js +6 -6
- package/.next/standalone/.next/server/app/missions/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/missions/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/onboarding/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/onboarding/page/server-reference-manifest.json +31 -31
- package/.next/standalone/.next/server/app/onboarding/page.js +3 -3
- package/.next/standalone/.next/server/app/onboarding/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/page/server-reference-manifest.json +31 -31
- package/.next/standalone/.next/server/app/page.js +3 -3
- package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/settings/page/server-reference-manifest.json +48 -48
- package/.next/standalone/.next/server/app/settings/page.js +5 -5
- package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page/server-reference-manifest.json +106 -106
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page.js +5 -5
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/archive/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page/server-reference-manifest.json +87 -87
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page.js +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/assets/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page/server-reference-manifest.json +74 -74
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page.js +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/notes/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page/server-reference-manifest.json +79 -79
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page.js +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page/server-reference-manifest.json +31 -31
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page.js +4 -4
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page/server-reference-manifest.json +71 -71
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page.js +5 -5
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/projects/[projectId]/versions/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/react-loadable-manifest.json +4 -4
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page/server-reference-manifest.json +82 -82
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page.js +6 -6
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/[workspaceId]/tasks/[taskId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workspaces/page/react-loadable-manifest.json +3 -3
- package/.next/standalone/.next/server/app/workspaces/page/server-reference-manifest.json +49 -49
- package/.next/standalone/.next/server/app/workspaces/page.js +3 -3
- package/.next/standalone/.next/server/app/workspaces/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workspaces/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/chunks/07-d_@anthropic-ai_claude-agent-sdk_sdk_mjs_0.721uk._.js +16 -9
- package/.next/standalone/.next/server/chunks/0se9_next_dist_esm_build_templates_app-route_0eh8dj_.js +5 -5
- package/.next/standalone/.next/server/chunks/0se9_next_dist_esm_build_templates_app-route_0hrprmi.js +2 -2
- package/.next/standalone/.next/server/chunks/0zjb_server_app_api_internal_assets_[projectId]_[filename]_route_actions_08y.jen.js +1 -1
- package/.next/standalone/.next/server/chunks/[externals]__0izylsq._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0lioghc._.js → [root-of-the-server]__0-~q463._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.z8.oi._.js +4 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__00llstz._.js → [root-of-the-server]__02jy80j._.js} +3 -3
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0dy~osn._.js → [root-of-the-server]__032d9pl._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__08u6wg.._.js → [root-of-the-server]__037x-0a._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__08xus7y._.js → [root-of-the-server]__04jduyo._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__04u7b2g._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__05nz.tg._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ai09na._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__00mjz~7._.js → [root-of-the-server]__0az764e._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__12ohpl.._.js → [root-of-the-server]__0b3m.jm._.js} +2 -2
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0_3ce_3._.js → [root-of-the-server]__0c7z.~a._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fp8qv9._.js +28 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0d2japj._.js → [root-of-the-server]__0giry~0._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0j05vlm._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__01n7exm._.js → [root-of-the-server]__0kexk71._.js} +3 -3
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0qif839._.js → [root-of-the-server]__0kuo6q5._.js} +3 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0l1-djp._.js +1 -1
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0~foo~5._.js → [root-of-the-server]__0np.553._.js} +3 -3
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0q8.khe._.js → [root-of-the-server]__0r-6wmj._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t_yyy8._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0omyrab._.js → [root-of-the-server]__0u_-4~7._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xswbi9._.js +3 -0
- package/.next/standalone/.next/server/chunks/{[root-of-the-server]__0tys9pv._.js → [root-of-the-server]__0z20rmt._.js} +2 -2
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__11l3gud._.js +3 -0
- package/.next/standalone/.next/server/chunks/{_0lb0q5p._.js → _06.mxka._.js} +1 -1
- package/.next/standalone/.next/server/chunks/{src_0bkvm8c._.js → src_02ruq-1._.js} +2 -2
- package/.next/standalone/.next/server/chunks/src_0weytpz._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_02llcit._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_12xey8u._.js +1 -1
- package/.next/standalone/.next/server/chunks/src_lib_ai_0xx6y51._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/0iu._[workspaceId]_projects_[projectId]_versions_version-timeline-client_tsx_07o_kyi._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0.-z9ts._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0f88ua~._.js → [root-of-the-server]__0.2h0ux._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__07_o.al._.js → [root-of-the-server]__0.infp2._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__04rp1ck._.js → [root-of-the-server]__0.u-t.1._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0k-mx8r._.js → [root-of-the-server]__02j1enz._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0guqcva._.js → [root-of-the-server]__038u_kv._.js} +4 -4
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0_1zewr._.js → [root-of-the-server]__0391jsv._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0_i7zpd._.js → [root-of-the-server]__03fujv7._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__04wbr9x._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0-tolks._.js → [root-of-the-server]__058rbx5._.js} +4 -4
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__05xg05r._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__08w4.zf._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0lozqxc._.js → [root-of-the-server]__094t44p._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__02ur64h._.js → [root-of-the-server]__09t~p.u._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0m7ydqb._.js → [root-of-the-server]__09z_ddd._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0p0te97._.js → [root-of-the-server]__0ce3fpq._.js} +4 -4
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__062b.yt._.js → [root-of-the-server]__0da~mv~._.js} +4 -4
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0dn90me._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0qqbb31._.js → [root-of-the-server]__0dux7x.._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0gtqd5o._.js +4 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0th-t1a._.js → [root-of-the-server]__0h589~0._.js} +4 -4
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0jymb~t._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__00~jawi._.js → [root-of-the-server]__0l6bt9t._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0m80~su._.js → [root-of-the-server]__0mmypbn._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0mpjat-._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__09s~cme._.js → [root-of-the-server]__0mq0f94._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0ni-_7_._.js +30 -0
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0nwisa8._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0scj6ed._.js → [root-of-the-server]__0odeai5._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0siyg1p._.js → [root-of-the-server]__0oq-j16._.js} +4 -4
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0na8eiv._.js → [root-of-the-server]__0pmjob9._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0lz4wdp._.js → [root-of-the-server]__0pvaj~l._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0wofia_._.js → [root-of-the-server]__0rckee~._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0e-k-gl._.js → [root-of-the-server]__0w--i~y._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0y~ooou._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0z7je5_._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0k1ivnj._.js → [root-of-the-server]__0zkpwjj._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0t6f4lq._.js → [root-of-the-server]__10s67lq._.js} +4 -4
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__093tt4a._.js → [root-of-the-server]__12w35bx._.js} +4 -4
- package/.next/standalone/.next/server/chunks/ssr/{_0e-zyn2._.js → _0-_yznx._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0-~9em3._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_00t6138._.js → _03lt1_x._.js} +4 -4
- package/.next/standalone/.next/server/chunks/ssr/_03v~rg0._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0l3l_d6._.js → _04bt0.3._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_06nlsbw._.js → _04mn9go._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0cxhub8._.js → _04~zqvy._.js} +4 -4
- package/.next/standalone/.next/server/chunks/ssr/_070t_mh._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0gb8a9_._.js → _0_6ss3p._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/_0_9i_x2._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0_z-t6g._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0b.qjaj._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0cj9a7y._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0t0oltj._.js → _0dzx554._.js} +3 -3
- package/.next/standalone/.next/server/chunks/ssr/_0mdqhxi._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_02encue._.js → _0mm~wxj._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_07fnvnm._.js → _0n4bq0m._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0n54odq._.js → _0n5do.z._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0ng0eku._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0n1l7yo._.js → _0p6p_68._.js} +4 -4
- package/.next/standalone/.next/server/chunks/ssr/{_0clhm~f._.js → _0py1s-f._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0r-flc_._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/_0rdyrfd._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0rkdyad._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{_0mzwe90._.js → _0rrzd20._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0k9b94s._.js → _0t863nl._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_00kwrmr._.js → _0tsu0gq._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0_hnt09._.js → _0tvm5af._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0mpce0d._.js → _0u7c6bz._.js} +4 -4
- package/.next/standalone/.next/server/chunks/ssr/{_0hu0tyg._.js → _0u_uywm._.js} +1 -1
- package/.next/standalone/.next/server/chunks/ssr/_0wbcp88._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{_0v66l8c._.js → _0z6ji0d._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{_0muaopo._.js → _12ca88g._.js} +4 -4
- package/.next/standalone/.next/server/chunks/ssr/src_0djxlqx._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_0eufeyj._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_actions_agent-actions_ts_0~wc.sy._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_actions_file-actions_ts_0gcvqwm._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_missions_missions-client_tsx_11429lj._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_onboarding_page_tsx_0xf7hpz._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_settings_page_tsx_0h9v7dr._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_assets_assets-page-client_tsx_0wyzpam._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_board-page-client_tsx_0gips66._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_notes_notes-page-client_tsx_10gyo3v._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_app_workspaces_[workspaceId]_tasks_[taskId]_task-page-client_tsx_02t7blt._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/src_components_ui_select_tsx_0d2ra01._.js +1 -1
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_01xtio2._.js → src_lib_02~3_5t._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_03p6skw._.js → src_lib_04d~c.c._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_05mu4f0._.js → src_lib_08wv1le._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/{src_lib_06nbc41._.js → src_lib_0_9avpk._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0a60u40._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0fu5szn._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0gve57o._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0koe0p0._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0qdh-v4._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0ramp4w._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0sms4xl._.js +2 -2
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0sn1z-s._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_110am8v._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_11w~.ge._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/src_lib_worktree_ts_06cucy3._.js +1 -1
- package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +301 -301
- package/.next/standalone/.next/static/chunks/0-x5eie9u3i_2.js +1 -0
- package/.next/standalone/.next/static/chunks/00w9dd4fooyic.js +1 -0
- package/.next/standalone/.next/static/chunks/{112wpv9rqw4dp.js → 02o~o8tgt860j.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0h73q-9fyea0t.js → 03sdutmq6~3v-.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0e9ykduz3_0e1.js → 04zy.uc7eru64.js} +1 -1
- package/.next/standalone/.next/static/chunks/{01ijm9dpmm34q.js → 05zm_-7x0fubq.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0t_3wwd~mmc.1.js → 05~2gwcex7hv0.js} +1 -1
- package/.next/standalone/.next/static/chunks/062.w.nsp3886.js +1 -0
- package/.next/standalone/.next/static/chunks/06lla3jtd~xb4.js +1 -0
- package/.next/standalone/.next/static/chunks/{0dha37i1oc6z~.js → 06s-d8my6b9t7.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0u.3xek3m2ud..js → 0ad0ou7l2.r6e.js} +1 -1
- package/.next/standalone/.next/static/chunks/{11.r6a56ss7qu.js → 0babmd83h6ejs.js} +1 -1
- package/.next/standalone/.next/static/chunks/0c8c6pcmlzgmi.js +1 -0
- package/.next/standalone/.next/static/chunks/0c~~56wny5m2u.js +1 -0
- package/.next/standalone/.next/static/chunks/{0h4k3cicu7g-w.js → 0ev98toavtr6..js} +1 -1
- package/.next/standalone/.next/static/chunks/{0u.b0t7fueh-x.js → 0fz47g1x5o2xj.js} +1 -1
- package/.next/standalone/.next/static/chunks/0i2soupf1735z.js +1 -0
- package/.next/standalone/.next/static/chunks/{050agjgyp545k.js → 0l25d0nc5ygyd.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0_-2es-r~03mg.js → 0lnsj7fwkprxe.js} +1 -1
- package/.next/standalone/.next/static/chunks/{0a._hcvzq4ko7.js → 0oz8sw6j078vm.js} +2 -2
- package/.next/standalone/.next/static/chunks/0tfmi08mzcieh.js +1 -0
- package/.next/standalone/.next/static/chunks/{023v9juzhzc~d.js → 0umi7ddtiv8sw.js} +1 -1
- package/.next/standalone/.next/static/chunks/0w33dj~dfamnr.css +1 -0
- package/.next/standalone/.next/static/chunks/0y3a2-c-i9t~t.js +1 -0
- package/.next/standalone/.next/static/chunks/10qltt-r5q91p.js +1 -0
- package/.next/standalone/.next/static/chunks/{0p5rare_o5zb1.js → 1195ux3t_r-rb.js} +2 -2
- package/.next/standalone/.next/static/chunks/{0w14di5d0vw6-.js → 11sqt~58g35be.js} +1 -1
- package/.next/standalone/.next/static/chunks/12rj7-g8lxjew.js +1 -0
- package/.next/standalone/package.json +1 -1
- package/bin/tower.mjs +10 -1
- package/dist/mcp-server.cjs +266 -145
- package/package.json +1 -1
- package/scripts/migrations/0004-relocate-misplaced-assets.ts +172 -0
- package/.next/standalone/.next/server/chunks/[externals]__0k7u3dx._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0.a1443._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__00~-bvt._.js +0 -28
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__01yu.gw._.js +0 -4
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0965p6t._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0c513um._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qijr4h._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__0rc0ntp._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0.~z1-.._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__05sv58d._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0gzafdq._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0i0o7w5._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0kgd-1s._.js +0 -4
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0qnzkj3._.js +0 -30
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0qp5cw1._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0xte.35._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0-qd2ss._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_05jv_cy._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_07c-9da._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0gxccup._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0m.34j8._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/_0w9~m7o._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_06okbb2._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0741dos._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0cbuy0_._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0e27xy7._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0n5-vk5._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0rk2hla._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0t5xz2y._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0u5_gf2._.js +0 -3
- package/.next/standalone/.next/server/chunks/ssr/src_lib_0v6s6se._.js +0 -3
- package/.next/standalone/.next/static/chunks/0.euy5rie4v3d.js +0 -1
- package/.next/standalone/.next/static/chunks/01.nidb8sf6bh.js +0 -1
- package/.next/standalone/.next/static/chunks/02jsekc779t5~.js +0 -1
- package/.next/standalone/.next/static/chunks/0fy6w5d_zyro0.js +0 -1
- package/.next/standalone/.next/static/chunks/0g-gbdkcssn.g.js +0 -1
- package/.next/standalone/.next/static/chunks/0h7~fn.p-fxz_.js +0 -1
- package/.next/standalone/.next/static/chunks/0j2n.h0~von8h.js +0 -1
- package/.next/standalone/.next/static/chunks/0k.hp06ufx4yp.js +0 -1
- package/.next/standalone/.next/static/chunks/0lk-i0jm2ubea.css +0 -1
- package/.next/standalone/.next/static/chunks/0q~4dhw.phxg3.js +0 -1
- package/.next/standalone/.next/static/chunks/0z2blg_osfipv.js +0 -1
- package/.next/standalone/.next/static/chunks/134c60acdsr_g.js +0 -1
- /package/.next/standalone/.next/static/{JutVIyokVf-YrN6j2WEwG → zSKVtiYaR_yWxx7AopTMR}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{JutVIyokVf-YrN6j2WEwG → zSKVtiYaR_yWxx7AopTMR}/_clientMiddlewareManifest.js +0 -0
- /package/.next/standalone/.next/static/{JutVIyokVf-YrN6j2WEwG → zSKVtiYaR_yWxx7AopTMR}/_ssgManifest.js +0 -0
package/package.json
CHANGED
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Relocate ProjectAsset files that an old create_task bug wrote OUTSIDE the
|
|
3
|
+
* Tower storage root, and rewrite the absolute path stored on each row.
|
|
4
|
+
*
|
|
5
|
+
* Why: create_task used to build the asset dir from the install/cwd location
|
|
6
|
+
* instead of the storage root:
|
|
7
|
+
* join(resolve(__dirname, "../../.."), "data", "assets", projectId, file)
|
|
8
|
+
* so attachments landed under e.g.
|
|
9
|
+
* ~/project/data/assets/<projectId>/... (a local checkout)
|
|
10
|
+
* /usr/local/lib/.../data/assets/<projectId>/... (global npm install — often unwritable)
|
|
11
|
+
* C:\...\node_modules\...\data\assets\... (Windows global install)
|
|
12
|
+
* instead of the correct <storage>/assets/<projectId>/... (storage = ~/.tower/
|
|
13
|
+
* storage, or a custom Settings location).
|
|
14
|
+
*
|
|
15
|
+
* What: for every ProjectAsset whose path carries the bug signature
|
|
16
|
+
* (…/data/assets/…), move the on-disk file (if present on THIS machine) into the
|
|
17
|
+
* canonical assets dir and update the row. Runs once per DB via the
|
|
18
|
+
* AppliedMigration ledger (dev and prod each carry their own).
|
|
19
|
+
*
|
|
20
|
+
* Safety:
|
|
21
|
+
* - Detection is restricted to the `data/assets` signature. The correct layout
|
|
22
|
+
* is `storage/assets` and never contains `data/assets`, so rows that merely
|
|
23
|
+
* live under a DIFFERENT but legitimate storage root (e.g. a dev DB that
|
|
24
|
+
* references the prod ~/.tower path) are LEFT UNTOUCHED — moving them could
|
|
25
|
+
* break the environment that owns the file.
|
|
26
|
+
* - copyFileSync is cross-volume safe; we copy first, update the DB, then drop
|
|
27
|
+
* the source, so a crash mid-move never loses the file.
|
|
28
|
+
* - Idempotent: once a file is under the storage root the row is skipped, so a
|
|
29
|
+
* re-run (e.g. if the ledger were lost) is a no-op.
|
|
30
|
+
* - Per-file failures (permissions, locks) are logged and skipped — one bad
|
|
31
|
+
* file neither blocks startup nor prevents this migration from being recorded.
|
|
32
|
+
*
|
|
33
|
+
* Storage-root resolution is INLINED on purpose: a migration is a point-in-time
|
|
34
|
+
* snapshot, and the published npm package contains scripts/ but NOT src/, so it
|
|
35
|
+
* cannot import src/lib/tower-dir. The logic mirrors getStorageDir() as of this
|
|
36
|
+
* migration: TOWER_STORAGE_DIR env → storage-location pointer file → default
|
|
37
|
+
* <data-dir>/storage, where data-dir is TOWER_DATA_DIR or ~/.tower.
|
|
38
|
+
*/
|
|
39
|
+
|
|
40
|
+
import { PrismaClient } from "@prisma/client";
|
|
41
|
+
import {
|
|
42
|
+
existsSync,
|
|
43
|
+
statSync,
|
|
44
|
+
copyFileSync,
|
|
45
|
+
mkdirSync,
|
|
46
|
+
rmSync,
|
|
47
|
+
readFileSync,
|
|
48
|
+
} from "fs";
|
|
49
|
+
import { basename, extname, join, resolve, sep } from "path";
|
|
50
|
+
import { homedir } from "os";
|
|
51
|
+
|
|
52
|
+
function getTowerDir(): string {
|
|
53
|
+
return process.env.TOWER_DATA_DIR || join(homedir(), ".tower");
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
function readStoragePointer(): string | null {
|
|
57
|
+
try {
|
|
58
|
+
const p = readFileSync(join(getTowerDir(), "storage-location"), "utf-8").trim();
|
|
59
|
+
return p.length > 0 ? p : null;
|
|
60
|
+
} catch {
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
function getStorageDir(): string {
|
|
66
|
+
const override = process.env.TOWER_STORAGE_DIR || readStoragePointer();
|
|
67
|
+
return override && override.length > 0 ? override : join(getTowerDir(), "storage");
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
/** True when `p` already lives under the canonical assets root. Exported for tests. */
|
|
71
|
+
export function isUnderRoot(p: string, root: string): boolean {
|
|
72
|
+
const rp = resolve(p);
|
|
73
|
+
const rr = resolve(root);
|
|
74
|
+
return rp === rr || rp.startsWith(rr + sep);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* The bug always built paths as join(X, "data", "assets", …), so every victim
|
|
79
|
+
* contains a `/data/assets/` segment. The correct layout (`storage/assets`)
|
|
80
|
+
* never does. Match ONLY this signature to avoid touching legitimately
|
|
81
|
+
* relocated files under another storage root. Exported for tests.
|
|
82
|
+
*/
|
|
83
|
+
export function hasBugSignature(p: string): boolean {
|
|
84
|
+
return /(^|\/)data\/assets\//.test(p.replace(/\\/g, "/"));
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/** A non-colliding destination inside `dir`, reusing an identical existing file. */
|
|
88
|
+
function uniqueDest(dir: string, filename: string, srcSize: number): string {
|
|
89
|
+
let candidate = join(dir, filename);
|
|
90
|
+
if (!existsSync(candidate)) return candidate;
|
|
91
|
+
try {
|
|
92
|
+
if (statSync(candidate).size === srcSize) return candidate; // same file already
|
|
93
|
+
} catch {
|
|
94
|
+
/* fall through to renaming */
|
|
95
|
+
}
|
|
96
|
+
const ext = extname(filename);
|
|
97
|
+
const base = basename(filename, ext);
|
|
98
|
+
let counter = 1;
|
|
99
|
+
do {
|
|
100
|
+
candidate = join(dir, `${base} (${counter})${ext}`);
|
|
101
|
+
counter++;
|
|
102
|
+
} while (existsSync(candidate));
|
|
103
|
+
return candidate;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
export async function up(prisma: PrismaClient): Promise<void> {
|
|
107
|
+
const assetsRoot = join(getStorageDir(), "assets");
|
|
108
|
+
|
|
109
|
+
const assets: { id: string; projectId: string; filename: string; path: string }[] =
|
|
110
|
+
await prisma.projectAsset.findMany({
|
|
111
|
+
select: { id: true, projectId: true, filename: true, path: true },
|
|
112
|
+
});
|
|
113
|
+
|
|
114
|
+
let moved = 0;
|
|
115
|
+
let dbFixed = 0; // file already at target, only the stale DB path was rewritten
|
|
116
|
+
let missing = 0; // bug-victim file absent on this machine — cannot migrate
|
|
117
|
+
let otherLocation = 0; // outside root but NOT the bug signature — left untouched
|
|
118
|
+
let failed = 0;
|
|
119
|
+
|
|
120
|
+
for (const a of assets) {
|
|
121
|
+
if (isUnderRoot(a.path, assetsRoot)) continue; // already correct
|
|
122
|
+
if (!hasBugSignature(a.path)) {
|
|
123
|
+
otherLocation++;
|
|
124
|
+
continue;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
const targetDir = join(assetsRoot, a.projectId);
|
|
128
|
+
const fileName = basename(a.path) || a.filename;
|
|
129
|
+
const srcExists = existsSync(a.path);
|
|
130
|
+
const presumedTarget = join(targetDir, fileName);
|
|
131
|
+
const targetAlreadyThere = !srcExists && existsSync(presumedTarget);
|
|
132
|
+
|
|
133
|
+
if (!srcExists && !targetAlreadyThere) {
|
|
134
|
+
missing++;
|
|
135
|
+
continue;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
try {
|
|
139
|
+
if (targetAlreadyThere) {
|
|
140
|
+
await prisma.projectAsset.update({ where: { id: a.id }, data: { path: presumedTarget } });
|
|
141
|
+
dbFixed++;
|
|
142
|
+
continue;
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
const srcSize = statSync(a.path).size;
|
|
146
|
+
const dest = uniqueDest(targetDir, fileName, srcSize);
|
|
147
|
+
mkdirSync(targetDir, { recursive: true });
|
|
148
|
+
const sameAlready = existsSync(dest) && statSync(dest).size === srcSize;
|
|
149
|
+
if (!sameAlready) copyFileSync(a.path, dest);
|
|
150
|
+
await prisma.projectAsset.update({ where: { id: a.id }, data: { path: dest } });
|
|
151
|
+
try {
|
|
152
|
+
rmSync(a.path, { force: true });
|
|
153
|
+
} catch {
|
|
154
|
+
/* old file left behind — harmless; the DB already points at the new copy */
|
|
155
|
+
}
|
|
156
|
+
moved++;
|
|
157
|
+
} catch (err) {
|
|
158
|
+
failed++;
|
|
159
|
+
console.warn(
|
|
160
|
+
` failed to relocate ${a.path}: ${err instanceof Error ? err.message : String(err)}`
|
|
161
|
+
);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
if (moved || dbFixed || missing || failed) {
|
|
166
|
+
console.log(
|
|
167
|
+
` relocated assets — moved ${moved}, db-path-fixed ${dbFixed}, ` +
|
|
168
|
+
`missing-source ${missing}, failed ${failed}` +
|
|
169
|
+
(otherLocation ? `, other-location-left ${otherLocation}` : "")
|
|
170
|
+
);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[750227,(e,o,r)=>{o.exports=e.x("node:path",()=>require("node:path"))},902157,(e,o,r)=>{o.exports=e.x("node:fs",()=>require("node:fs"))},874533,(e,o,r)=>{o.exports=e.x("node:child_process",()=>require("node:child_process"))},980738,(e,o,r)=>{o.exports=e.x("node-pty-c710df912a232c01",()=>require("node-pty-c710df912a232c01"))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Bexternals%5D__0k7u3dx._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},874533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},980738,(e,t,r)=>{t.exports=e.x("node-pty-c710df912a232c01",()=>require("node-pty-c710df912a232c01"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},198840,e=>{"use strict";var t=e.i(855104);let r=["localhost","127.0.0.1","[::1]"],a=new Set(["127.0.0.1","::1","::ffff:127.0.0.1"]),n=/^c[a-z0-9]{20,30}$/;e.s(["requireLocalhost",0,function(e){let n=e.headers.get("x-forwarded-for");if(n&&!n.split(",").map(e=>e.trim()).every(e=>a.has(e)))return t.NextResponse.json({error:"Forbidden"},{status:403});let s=e.headers.get("host")??"";return r.some(e=>s.startsWith(e))?null:t.NextResponse.json({error:"Forbidden"},{status:403})},"validateProjectId",0,function(e){return n.test(e)?null:t.NextResponse.json({error:"Invalid projectId format"},{status:400})},"validateTaskId",0,function(e){return n.test(e)?null:t.NextResponse.json({error:"Invalid taskId format"},{status:400})}])},907465,e=>{"use strict";var t=e.i(765876),r=e.i(675896),a=e.i(959160),n=e.i(97944),s=e.i(86757),o=e.i(204144),i=e.i(273436),l=e.i(743641),d=e.i(813766),u=e.i(840884),p=e.i(498814),c=e.i(780006),x=e.i(544432),h=e.i(772005),v=e.i(450223),f=e.i(193695);e.i(628400);var R=e.i(800071),m=e.i(855104),g=e.i(78091),w=e.i(83721),y=e.i(198840);let E=g.z.object({text:g.z.string().min(1).max(1e4)});async function C(e,{params:t}){let r,a=(0,y.requireLocalhost)(e);if(a)return a;let{taskId:n}=await t,s=(0,y.validateTaskId)(n);if(s)return s;try{let t=await e.json();r=E.safeParse(t)}catch{return m.NextResponse.json({error:"Invalid body: text field required (string, 1-10000 chars)"},{status:400})}if(!r.success)return m.NextResponse.json({error:"Invalid body: text field required (string, 1-10000 chars)"},{status:400});let o=(0,w.getSession)(n);return o?o.killed?m.NextResponse.json({error:"Session has exited"},{status:410}):(o.write(r.data.text),m.NextResponse.json({ok:!0,taskId:n})):m.NextResponse.json({error:"No active session"},{status:404})}e.s(["POST",0,C,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],459081);var N=e.i(459081);let b=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/internal/terminal/[taskId]/input/route",pathname:"/api/internal/terminal/[taskId]/input",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/internal/terminal/[taskId]/input/route.ts",nextConfigOutput:"standalone",userland:N}),{workAsyncStorage:q,workUnitAsyncStorage:j,serverHooks:A}=b;async function k(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),b.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let m="/api/internal/terminal/[taskId]/input/route";m=m.replace(/\/index$/,"")||"/";let g=await b.prepare(e,t,{srcPage:m,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:w,params:y,nextConfig:E,parsedUrl:C,isDraftMode:N,prerenderManifest:q,routerServerContext:j,isOnDemandRevalidate:A,revalidateOnlyGenerated:k,resolvedPathname:I,clientReferenceManifest:T,serverActionsManifest:P}=g,S=(0,i.normalizeAppPath)(m),_=!!(q.dynamicRoutes[S]||q.routes[I]),O=async()=>((null==j?void 0:j.render404)?await j.render404(e,t,C,!1):t.end("This page could not be found"),null);if(_&&!N){let e=!!q.routes[I],t=q.dynamicRoutes[S];if(t&&!1===t.fallback&&!e){if(E.adapterPath)return await O();throw new f.NoFallbackError}}let H=null;!_||b.isDev||N||(H="/index"===(H=I)?"/":H);let U=!0===b.isDev||!_,M=_&&!U;P&&T&&(0,o.setManifestsSingleton)({page:m,clientReferenceManifest:T,serverActionsManifest:P});let D=e.method||"GET",F=(0,s.getTracer)(),$=F.getActiveScopeSpan(),K=!!(null==j?void 0:j.isWrappedByNextServer),L=!!(0,n.getRequestMeta)(e,"minimalMode"),B=(0,n.getRequestMeta)(e,"incrementalCache")||await b.getIncrementalCache(e,E,q,L);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let z={params:y,previewProps:q.preview,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:U,incrementalCache:B,cacheLifeProfiles:E.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>b.onRequestError(e,t,a,n,j)},sharedContext:{buildId:w}},W=new l.NodeNextRequest(e),G=new l.NodeNextResponse(t),V=d.NextRequestAdapter.fromNodeNextRequest(W,(0,d.signalFromNodeResponse)(t));try{let n,o=async e=>b.handle(V,z).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.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 a=r.get("next.route");if(a){let t=`${D} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${D} ${m}`)}),i=async n=>{var s,i;let l=async({previousCacheEntry:r})=>{try{if(!L&&A&&k&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(n);e.fetchMetrics=z.renderOpts.fetchMetrics;let i=z.renderOpts.pendingWaitUntil;i&&a.waitUntil&&(a.waitUntil(i),i=void 0);let l=z.renderOpts.collectedTags;if(!_)return await (0,c.sendResponse)(W,G,s,z.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,x.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[v.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==z.renderOpts.collectedRevalidate&&!(z.renderOpts.collectedRevalidate>=v.INFINITE_CACHE)&&z.renderOpts.collectedRevalidate,a=void 0===z.renderOpts.collectedExpire||z.renderOpts.collectedExpire>=v.INFINITE_CACHE?void 0:z.renderOpts.collectedExpire;return{value:{kind:R.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await b.onRequestError(e,t,{routerKind:"App Router",routePath:m,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:A})},!1,j),t}},d=await b.handleResponse({req:e,nextConfig:E,cacheKey:H,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:q,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:k,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:L});if(!_)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==R.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(i=d.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});L||t.setHeader("x-nextjs-cache",A?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),N&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,x.fromNodeOutgoingHttpHeaders)(d.value.headers);return L&&_||u.delete(v.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,c.sendResponse)(W,G,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};K&&$?await i($):(n=F.getActiveScopeSpan(),await F.withPropagatedContext(e.headers,()=>F.trace(u.BaseServerSpan.handleRequest,{spanName:`${D} ${m}`,kind:s.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},i),void 0,!K))}catch(t){if(t instanceof f.NoFallbackError||await b.onRequestError(e,t,{routerKind:"App Router",routePath:S,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:A})},!1,j),_)throw t;return await (0,c.sendResponse)(W,G,new Response(null,{status:500})),null}}e.s(["handler",0,k,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:q,workUnitAsyncStorage:j})},"routeModule",0,b,"serverHooks",0,A,"workAsyncStorage",0,q,"workUnitAsyncStorage",0,j],907465)}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0.a1443._.js.map
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
module.exports=[324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},874533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},198840,e=>{"use strict";var t=e.i(855104);let r=["localhost","127.0.0.1","[::1]"],n=new Set(["127.0.0.1","::1","::ffff:127.0.0.1"]),s=/^c[a-z0-9]{20,30}$/;e.s(["requireLocalhost",0,function(e){let s=e.headers.get("x-forwarded-for");if(s&&!s.split(",").map(e=>e.trim()).every(e=>n.has(e)))return t.NextResponse.json({error:"Forbidden"},{status:403});let a=e.headers.get("host")??"";return r.some(e=>a.startsWith(e))?null:t.NextResponse.json({error:"Forbidden"},{status:403})},"validateProjectId",0,function(e){return s.test(e)?null:t.NextResponse.json({error:"Invalid projectId format"},{status:400})},"validateTaskId",0,function(e){return s.test(e)?null:t.NextResponse.json({error:"Invalid taskId format"},{status:400})}])},192520,e=>{"use strict";let t;var r=e.i(750227),n=e.i(660526),s=e.i(902157);function a(){return t||(t=process.env.TOWER_DATA_DIR||(0,r.join)((0,n.homedir)(),".tower"),(0,s.existsSync)(t)||(0,s.mkdirSync)(t,{recursive:!0})),t}e.s(["getAssistantDir",0,function(){let e=(0,r.join)(a(),"assistant");return(0,s.existsSync)(e)||(0,s.mkdirSync)(e,{recursive:!0}),e},"getBackupsDir",0,function(){let e=(0,r.join)(a(),"backups");return(0,s.existsSync)(e)||(0,s.mkdirSync)(e,{recursive:!0}),e},"getExtensionsDir",0,function(){let e=(0,r.join)(a(),"extensions");return(0,s.existsSync)(e)||(0,s.mkdirSync)(e,{recursive:!0}),e},"getStorageDir",0,function(){let e=process.env.TOWER_STORAGE_DIR||function(){try{let e=(0,s.readFileSync)((0,r.join)(a(),"storage-location"),"utf-8").trim();return e.length>0?e:null}catch{return null}}(),t=e&&e.length>0?e:(0,r.join)(a(),"storage");return(0,s.existsSync)(t)||(0,s.mkdirSync)(t,{recursive:!0}),t},"getTowerDbPath",0,function(){let e;return(0,r.join)((e=(0,r.join)(a(),"database"),(0,s.existsSync)(e)||(0,s.mkdirSync)(e,{recursive:!0}),e),"tower.db")},"getTowerDir",0,a])},471552,e=>{"use strict";var t=e.i(522734),r=e.i(814747),n=e.i(192520),s=e.i(173215),a=e.i(53674);let o=`# Tower Assistant
|
|
2
|
-
|
|
3
|
-
你是 Tower Assistant — Tower 任务管理平台的内置 AI 操作员。
|
|
4
|
-
|
|
5
|
-
## 身份
|
|
6
|
-
|
|
7
|
-
- 你是一个**任务管理操作员**,不是编程助手
|
|
8
|
-
- 你通过 Tower MCP 工具帮助用户管理工作区、项目、任务
|
|
9
|
-
- 你**不能**读写文件、运行命令、编辑代码、搜索网页
|
|
10
|
-
- 如果用户请求你无法完成的操作,告诉他们需要通过开发 MCP 扩展来支持
|
|
11
|
-
|
|
12
|
-
## 回复风格
|
|
13
|
-
|
|
14
|
-
- 使用用户的语言回复(中文问中文答,英文问英文答)
|
|
15
|
-
- 简洁明了,不要冗长的解释
|
|
16
|
-
- 主动使用工具查询信息,而不是猜测
|
|
17
|
-
- 当用户问"你能做什么"时,只列出 Tower MCP 工具提供的能力
|
|
18
|
-
|
|
19
|
-
## 行动准则(最重要)
|
|
20
|
-
|
|
21
|
-
- **说到就做,绝不只announce不action**:一旦信息足够,就在**同一轮回复里直接调用对应的 MCP 工具**完成操作。
|
|
22
|
-
- **严禁**只回复「我现在立即创建」「好的,立即创建」「马上为你处理」这类话却不实际发出工具调用。这种回复等于没做事,会让用户反复追问。
|
|
23
|
-
- 信息不足时(例如缺项目、缺必填项),**直接提出具体问题**问用户,而不是含糊地说「我来创建」。
|
|
24
|
-
- 创建任务时如果工具返回 \`needsDefaultsSetup: true\`,**立刻**向用户询问两件事(是否默认用 Git worktree 隔离、是否创建后自动开始执行),拿到答复就调用 \`set_task_defaults\` 保存,然后**再次调用** \`create_task\`——不要停在「我来创建」这句话上。
|
|
25
|
-
- 用户催你(如「创建了吗?」「快创建」)时,说明上一轮你没真正调用工具——这一轮必须立即发出工具调用,而不是再次口头答应。
|
|
26
|
-
`;function i(e){try{return(0,t.readFileSync)(e,"utf-8")}catch{return null}}e.s(["ensureTowerDir",0,function(){let e=(0,n.getAssistantDir)(),l=(0,r.join)(e,"CLAUDE.md"),c=(0,a.getPackageRoot)(),u=(0,r.join)(c,"skills","tower","SKILL.md"),d=(0,r.join)(e,".claude","skills","tower"),p=(0,r.join)(d,"SKILL.md");if((0,t.existsSync)(l)&&i(l)===o||((0,t.writeFileSync)(l,o,"utf-8"),console.error(`[init-tower] Wrote ${l}`)),(0,t.existsSync)(u)){let e=i(u);null===e||(0,t.existsSync)(p)&&i(p)===e||((0,t.mkdirSync)(d,{recursive:!0}),(0,t.copyFileSync)(u,p),console.error(`[init-tower] Copied SKILL.md → ${d}`))}return function(e){let n=(0,r.join)(e,".claude","settings.json");if((0,t.existsSync)(n))try{let e=JSON.parse((0,t.readFileSync)(n,"utf-8"));e&&"mcpServers"in e&&(delete e.mcpServers,(0,t.writeFileSync)(n,JSON.stringify(e,null,2)+"\n","utf-8"),console.error(`[init-tower] Removed legacy mcpServers from ${n}`))}catch{}let a=(0,r.join)(e,".mcp.json");if((0,t.existsSync)(a))try{let e=(0,s.getTowerMcpName)(),r=JSON.parse((0,t.readFileSync)(a,"utf-8")),n=r.mcpServers??{};e in n&&(delete n[e],0===Object.keys(n).length?delete r.mcpServers:r.mcpServers=n,(0,t.writeFileSync)(a,JSON.stringify(r,null,2)+"\n","utf-8"),console.error(`[init-tower] Removed legacy tower entry from ${a}`))}catch{}}(e),e}])},137382,e=>{"use strict";var t=e.i(765876),r=e.i(675896),n=e.i(959160),s=e.i(97944),a=e.i(86757),o=e.i(204144),i=e.i(273436),l=e.i(743641),c=e.i(813766),u=e.i(840884),d=e.i(498814),p=e.i(780006),h=e.i(544432),m=e.i(772005),x=e.i(450223),f=e.i(193695);e.i(628400);var v=e.i(800071),y=e.i(855104),g=e.i(198840),w=e.i(471552);function R(){return"u">typeof crypto&&crypto.randomUUID?crypto.randomUUID():`msg-${Date.now()}-${Math.random().toString(36).slice(2,9)}`}async function S(t){let r=(0,g.requireLocalhost)(t);if(r)return r;let n=t.nextUrl.searchParams.get("sessionId");if(!n)return y.NextResponse.json({error:"sessionId required"},{status:400});let s=(0,w.ensureTowerDir)();try{let{getSessionMessages:t}=await e.A(145135),r=await t(n,{dir:s}),a=function(e){let t=[];for(let n of e)switch(n.type){case"user":{var r;let e=n.message,s="string"==typeof e?.content?e.content:"";s.startsWith("/tower ")&&(s=s.slice(7));let a=s.match(/<command-args>([\s\S]*?)<\/command-args>/);a&&(s=a[1].trim()),s=s.replace(/\n---\nThe user has attached the following file\(s\)[\s\S]*$/,"").replace(/\n---\nThe user has attached the following image\(s\)[\s\S]*$/,"").trim();let o=void(Array.isArray(r=e?.content)&&r.filter(e=>"image"===e.type&&e.source?.data).length);s&&t.push({id:R(),role:"user",content:s,attachmentFilenames:o});break}case"assistant":{let e=n.message,r=Array.isArray(e?.content)?e.content:[],s=r.filter(e=>"text"===e.type&&e.text).map(e=>e.text);for(let e of(s.length>0&&t.push({id:R(),role:"assistant",content:s.join("")}),r))"tool_use"===e.type&&e.name&&t.push({id:R(),role:"tool",content:JSON.stringify(e.input??{},null,2),toolName:e.name});break}case"system":{let e=n.message;e?.subtype==="tool_result"&&e.content&&t.push({id:R(),role:"tool",content:e.content,toolName:`${e.tool_name??"tool"} (result)`})}}return t}(r);return y.NextResponse.json({messages:a})}catch(t){let e=t instanceof Error?t.message:String(t);return console.error("[assistant-sessions] Error:",e),y.NextResponse.json({error:e},{status:500})}}e.s(["GET",0,S,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],866197);var _=e.i(866197);let j=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/internal/assistant/sessions/route",pathname:"/api/internal/assistant/sessions",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/internal/assistant/sessions/route.ts",nextConfigOutput:"standalone",userland:_}),{workAsyncStorage:k,workUnitAsyncStorage:E,serverHooks:A}=j;async function C(e,t,n){n.requestMeta&&(0,s.setRequestMeta)(e,n.requestMeta),j.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let y="/api/internal/assistant/sessions/route";y=y.replace(/\/index$/,"")||"/";let g=await j.prepare(e,t,{srcPage:y,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:w,params:R,nextConfig:S,parsedUrl:_,isDraftMode:k,prerenderManifest:E,routerServerContext:A,isOnDemandRevalidate:C,revalidateOnlyGenerated:T,resolvedPathname:N,clientReferenceManifest:b,serverActionsManifest:P}=g,q=(0,i.normalizeAppPath)(y),I=!!(E.dynamicRoutes[q]||E.routes[N]),D=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,_,!1):t.end("This page could not be found"),null);if(I&&!k){let e=!!E.routes[N],t=E.dynamicRoutes[q];if(t&&!1===t.fallback&&!e){if(S.adapterPath)return await D();throw new f.NoFallbackError}}let O=null;!I||j.isDev||k||(O="/index"===(O=N)?"/":O);let U=!0===j.isDev||!I,M=I&&!U;P&&b&&(0,o.setManifestsSingleton)({page:y,clientReferenceManifest:b,serverActionsManifest:P});let $=e.method||"GET",F=(0,a.getTracer)(),H=F.getActiveScopeSpan(),L=!!(null==A?void 0:A.isWrappedByNextServer),K=!!(0,s.getRequestMeta)(e,"minimalMode"),W=(0,s.getRequestMeta)(e,"incrementalCache")||await j.getIncrementalCache(e,S,E,K);null==W||W.resetRequestCache(),globalThis.__incrementalCache=W;let B={params:R,previewProps:E.preview,renderOpts:{experimental:{authInterrupts:!!S.experimental.authInterrupts},cacheComponents:!!S.cacheComponents,supportsDynamicResponse:U,incrementalCache:W,cacheLifeProfiles:S.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,s)=>j.onRequestError(e,t,n,s,A)},sharedContext:{buildId:w}},G=new l.NodeNextRequest(e),J=new l.NodeNextResponse(t),V=c.NextRequestAdapter.fromNodeNextRequest(G,(0,c.signalFromNodeResponse)(t));try{let s,o=async e=>j.handle(V,B).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.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 n=r.get("next.route");if(n){let t=`${$} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),s&&s!==e&&(s.setAttribute("http.route",n),s.updateName(t))}else e.updateName(`${$} ${y}`)}),i=async s=>{var a,i;let l=async({previousCacheEntry:r})=>{try{if(!K&&C&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(s);e.fetchMetrics=B.renderOpts.fetchMetrics;let i=B.renderOpts.pendingWaitUntil;i&&n.waitUntil&&(n.waitUntil(i),i=void 0);let l=B.renderOpts.collectedTags;if(!I)return await (0,p.sendResponse)(G,J,a,B.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[x.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==B.renderOpts.collectedRevalidate&&!(B.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&B.renderOpts.collectedRevalidate,n=void 0===B.renderOpts.collectedExpire||B.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:B.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await j.onRequestError(e,t,{routerKind:"App Router",routePath:y,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,A),t}},c=await j.handleResponse({req:e,nextConfig:S,cacheKey:O,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:E,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:T,responseGenerator:l,waitUntil:n.waitUntil,isMinimalMode:K});if(!I)return null;if((null==c||null==(a=c.value)?void 0:a.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(i=c.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});K||t.setHeader("x-nextjs-cache",C?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),k&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,h.fromNodeOutgoingHttpHeaders)(c.value.headers);return K&&I||u.delete(x.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,m.getCacheControlHeader)(c.cacheControl)),await (0,p.sendResponse)(G,J,new Response(c.value.body,{headers:u,status:c.value.status||200})),null};L&&H?await i(H):(s=F.getActiveScopeSpan(),await F.withPropagatedContext(e.headers,()=>F.trace(u.BaseServerSpan.handleRequest,{spanName:`${$} ${y}`,kind:a.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},i),void 0,!L))}catch(t){if(t instanceof f.NoFallbackError||await j.onRequestError(e,t,{routerKind:"App Router",routePath:q,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:C})},!1,A),I)throw t;return await (0,p.sendResponse)(G,J,new Response(null,{status:500})),null}}e.s(["handler",0,C,"patchFetch",0,function(){return(0,n.patchFetch)({workAsyncStorage:k,workUnitAsyncStorage:E})},"routeModule",0,j,"serverHooks",0,A,"workAsyncStorage",0,k,"workUnitAsyncStorage",0,E],137382)},482848,e=>{e.v(e=>Promise.resolve().then(()=>e(874533)))},268548,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_node_util_0xr.y7p._.js"].map(t=>e.l(t))).then(()=>t(812057)))},144264,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_child_process_0pwkpv9._.js"].map(t=>e.l(t))).then(()=>t(233405)))},534777,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_util_0wtvqkc._.js"].map(t=>e.l(t))).then(()=>t(224361)))},200628,e=>{e.v(e=>Promise.resolve().then(()=>e(769310)))},145135,e=>{e.v(t=>Promise.all(["server/chunks/[externals]__00yf3l2._.js","server/chunks/07-d_@anthropic-ai_claude-agent-sdk_sdk_mjs_0.721uk._.js"].map(t=>e.l(t))).then(()=>t(217040)))}];
|
|
27
|
-
|
|
28
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__00~-bvt._.js.map
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
module.exports=[324725,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,r,t)=>{r.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},198840,e=>{"use strict";var r=e.i(855104);let t=["localhost","127.0.0.1","[::1]"],n=new Set(["127.0.0.1","::1","::ffff:127.0.0.1"]),s=/^c[a-z0-9]{20,30}$/;e.s(["requireLocalhost",0,function(e){let s=e.headers.get("x-forwarded-for");if(s&&!s.split(",").map(e=>e.trim()).every(e=>n.has(e)))return r.NextResponse.json({error:"Forbidden"},{status:403});let i=e.headers.get("host")??"";return t.some(e=>i.startsWith(e))?null:r.NextResponse.json({error:"Forbidden"},{status:403})},"validateProjectId",0,function(e){return s.test(e)?null:r.NextResponse.json({error:"Invalid projectId format"},{status:400})},"validateTaskId",0,function(e){return s.test(e)?null:r.NextResponse.json({error:"Invalid taskId format"},{status:400})}])},522734,(e,r,t)=>{r.exports=e.x("fs",()=>require("fs"))},233405,(e,r,t)=>{r.exports=e.x("child_process",()=>require("child_process"))},933919,(e,r,t)=>{r.exports=e.x("@prisma/client-9249dd53ac5b6a44",()=>require("@prisma/client-9249dd53ac5b6a44"))},750227,(e,r,t)=>{r.exports=e.x("node:path",()=>require("node:path"))},902157,(e,r,t)=>{r.exports=e.x("node:fs",()=>require("node:fs"))},874533,(e,r,t)=>{r.exports=e.x("node:child_process",()=>require("node:child_process"))},660526,(e,r,t)=>{r.exports=e.x("node:os",()=>require("node:os"))},980738,(e,r,t)=>{r.exports=e.x("node-pty-c710df912a232c01",()=>require("node-pty-c710df912a232c01"))},918622,(e,r,t)=>{r.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},270406,(e,r,t)=>{r.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},814747,(e,r,t)=>{r.exports=e.x("path",()=>require("path"))},446786,(e,r,t)=>{r.exports=e.x("os",()=>require("os"))},924868,(e,r,t)=>{r.exports=e.x("fs/promises",()=>require("fs/promises"))},843793,e=>{"use strict";var r=e.i(933919);let t=globalThis.prisma??new r.PrismaClient({log:[]});process.on("SIGTERM",()=>{t.$disconnect().catch(()=>{})}),process.on("SIGINT",()=>{t.$disconnect().catch(()=>{})}),e.s(["db",0,t])},572173,e=>{"use strict";var r=e.i(843793);async function t(e,t){let n=await r.db.systemConfig.findUnique({where:{key:e}});if(!n)return t;try{return JSON.parse(n.value)}catch{return t}}e.s(["readConfigValue",0,t])},248434,e=>{"use strict";var r=e.i(233405),t=e.i(522734),n=e.i(924868),s=e.i(814747),i=e.i(446786),o=e.i(50377);function a(e){return e.startsWith("~/")||"~"===e?s.default.join(i.default.homedir(),e.slice(1)):e}async function c(e,i,c,d){let u=a(e),p=s.default.join(u,".worktrees","task-"+i),f="task/"+i;if(!(0,t.existsSync)(u))throw Error(`项目本地路径不存在:${u}`);try{(0,r.execFileSync)("git",["rev-parse","--is-inside-work-tree"],{cwd:u,encoding:"utf-8",timeout:5e3,stdio:["pipe","pipe","pipe"]})}catch{throw Error(`项目本地路径不是 Git 仓库,无法创建 worktree:${u}`)}await (0,n.mkdir)(s.default.join(u,".worktrees"),{recursive:!0});let v=(0,r.execFileSync)("git",["worktree","list","--porcelain"],{cwd:u,encoding:"utf-8",timeout:1e4}),x=s.default.normalize(p).replace(/\\/g,"/");if(v.split("\n").some(e=>e.startsWith("worktree ")&&e.slice(9).replace(/\\/g,"/")===x))return l(u,p,d),{worktreePath:p,worktreeBranch:f};if((0,t.existsSync)(p)&&(o.logger.warn(`[worktree] Directory exists but not tracked by git, removing: ${p}`),(0,r.execFileSync)("git",["worktree","remove",p,"--force"],{cwd:u,encoding:"utf-8",timeout:3e4})),(0,r.execFileSync)("git",["branch","--list",f],{cwd:u,encoding:"utf-8",timeout:5e3}).trim())(0,r.execFileSync)("git",["worktree","add",p,f],{cwd:u,encoding:"utf-8",timeout:3e4});else{let e=c;try{(0,r.execFileSync)("git",["rev-parse","--verify",c],{cwd:u,encoding:"utf-8",timeout:5e3,stdio:["pipe","pipe","pipe"]})}catch{try{(0,r.execFileSync)("git",["rev-parse","--verify",`origin/${c}`],{cwd:u,encoding:"utf-8",timeout:5e3,stdio:["pipe","pipe","pipe"]}),e=`origin/${c}`}catch{throw Error(`Base branch '${c}' does not exist locally or on remote. Available branches: `+(0,r.execFileSync)("git",["branch","-a","--format=%(refname:short)"],{cwd:u,encoding:"utf-8",timeout:5e3}).trim().split("\n").join(", "))}}(0,r.execFileSync)("git",["worktree","add","-b",f,p,e],{cwd:u,encoding:"utf-8",timeout:3e4})}return l(u,p,d),{worktreePath:p,worktreeBranch:f}}function l(e,r,n){let i=o.logger.create("worktree"),a=["node_modules",".next"];for(let o of n?["",n]:[""])if((0,t.existsSync)(s.default.join(e,o,"package.json")))for(let n of a){let a=o?s.default.join(o,n):n,c=s.default.join(e,a),l=s.default.join(r,a);if((0,t.existsSync)(c)){try{(0,t.lstatSync)(l);continue}catch{}try{(0,t.symlinkSync)(c,l,"junction"),i.info(`Symlinked ${a}`,{from:c,to:l})}catch(e){i.warn(`Failed to symlink ${a}`,{error:String(e)})}}}}async function d(e,n){let i=a(e),o=s.default.join(i,".worktrees","task-"+n),c="task/"+n;(0,t.existsSync)(o)&&(0,r.execFileSync)("git",["worktree","remove",o,"--force"],{cwd:i,encoding:"utf-8",timeout:3e4}),(0,r.execFileSync)("git",["branch","--list",c],{cwd:i,encoding:"utf-8",timeout:5e3}).trim()&&(0,r.execFileSync)("git",["branch","-D",c],{cwd:i,encoding:"utf-8",timeout:5e3})}e.s(["createWorktree",0,c,"removeWorktree",0,d])},482819,(e,r,t)=>{"use strict";r.exports=e.r(583981).vendored["react-rsc"].ReactServerDOMTurbopackServer},921675,(e,r,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"registerServerReference",{enumerable:!0,get:function(){return n.registerServerReference}});let n=e.r(482819)},86708,(e,r,t)=>{"use strict";function n(e){for(let r=0;r<e.length;r++){let t=e[r];if("function"!=typeof t)throw Object.defineProperty(Error(`A "use server" file can only export async functions, found ${typeof t}.
|
|
2
|
-
Read more: https://nextjs.org/docs/messages/invalid-use-server-value`),"__NEXT_ERROR_CODE",{value:"E352",enumerable:!1,configurable:!0})}}Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ensureServerEntryExports",{enumerable:!0,get:function(){return n}})},932583,e=>{"use strict";var r=e.i(921675),t=e.i(843793);async function n(e,r={}){let s=r.report,i=s?JSON.stringify(s):null;await t.db.providerConnection.upsert({where:{provider:e},create:{provider:e,lastTestedAt:new Date,testOk:!0,version:r.version??null,mcpInstalled:s?.mcp?.ok??!1,hooksInstalled:s?.hooks?.ok??!1,skillsInstalled:s?.skill?.ok??!1,installLog:i},update:{lastTestedAt:new Date,testOk:!0,version:r.version??null,mcpInstalled:s?.mcp?.ok??!1,hooksInstalled:s?.hooks?.ok??!1,skillsInstalled:s?.skill?.ok??!1,installLog:i}})}async function s(e,r={}){await t.db.providerConnection.upsert({where:{provider:e},create:{provider:e,lastTestedAt:new Date,testOk:!1,installLog:r.reason??null},update:{lastTestedAt:new Date,testOk:!1,mcpInstalled:!1,hooksInstalled:!1,skillsInstalled:!1,installLog:r.reason??null}})}async function i(e){let r=await t.db.providerConnection.findUnique({where:{provider:e}});return!!r&&r.testOk}async function o(){return(await t.db.providerConnection.findMany({where:{testOk:!0},select:{provider:!0},orderBy:{provider:"asc"}})).map(e=>e.provider)}async function a(){return t.db.providerConnection.findMany({select:{provider:!0,lastTestedAt:!0,testOk:!0,version:!0,mcpInstalled:!0,hooksInstalled:!0,skillsInstalled:!0,installLog:!0},orderBy:{provider:"asc"}})}(0,e.i(86708).ensureServerEntryExports)([n,s,i,o,a]),(0,r.registerServerReference)(n,"60778381a8ca3051c9ac18367cd85d95e9649c48eb",null),(0,r.registerServerReference)(s,"6048a40d14e59d770ddaa5e464e4bd18b1a0af5fe7",null),(0,r.registerServerReference)(i,"40b75027faa4f7cfd2e1cd616a4d0f10950dacb771",null),(0,r.registerServerReference)(o,"0011ec24b440700c44a0a3244eb45f5efb7abfa21b",null),(0,r.registerServerReference)(a,"00f20f3822b5ef1e75f2fc462cf462911f6daf6be9",null),e.s(["getConnectedProviders",0,o,"isProviderConnected",0,i,"markProviderConnected",0,n,"markProviderDisconnected",0,s])},89428,e=>{"use strict";var r=e.i(843793),t=e.i(279711);class n extends Error{code;provider;constructor(e,r,t){super(t),this.code=e,this.provider=r,this.name="AiProviderError"}}var s=e.i(932583);let i="claude",o="请到 Settings → Test Connection 测试该 Provider 后再使用(未注入的 CLI 不能被插槽选中)";async function a(e){return r.db.aiCapabilityConfig.findUnique({where:{slot:e}})}async function c(e){if(e){if(await (0,s.isProviderConnected)(e))return e;throw new n("CLI_NOT_FOUND",e,`Provider "${e}" 未连接:${o}`)}let r=await (0,s.getConnectedProviders)();if(0===r.length)throw new n("CLI_NOT_FOUND",i,`没有任何 AI Provider 已连接:${o}`);return r.includes(i)?i:r[0]}async function l(e){let r=await a(e),s=r?.model??void 0,i=await c(r?.provider??null),o=t.providerRegistry.get(i);if(!o)throw new n("CLI_NOT_FOUND",i,`Provider "${i}" 未注册`);let l=o.cli?.adapter;if(!l)throw new n("UNSUPPORTED_MODE",i,`Provider "${i}" 不支持 CLI 模式`);return{adapter:l,provider:o,model:s}}e.s(["resolveCliAdapter",0,l],89428)},482848,e=>{e.v(e=>Promise.resolve().then(()=>e(874533)))},268548,e=>{e.v(r=>Promise.all(["server/chunks/[externals]_node_util_0xr.y7p._.js"].map(r=>e.l(r))).then(()=>r(812057)))},144264,e=>{e.v(e=>Promise.resolve().then(()=>e(233405)))},534777,e=>{e.v(r=>Promise.all(["server/chunks/[externals]_util_0wtvqkc._.js"].map(r=>e.l(r))).then(()=>r(224361)))},200628,e=>{e.v(e=>Promise.resolve().then(()=>e(769310)))},217260,e=>{e.v(e=>Promise.resolve().then(()=>e(83721)))},507603,e=>{e.v(r=>Promise.all(["server/chunks/_0lb0q5p._.js"].map(r=>e.l(r))).then(()=>r(283373)))},136565,e=>{e.v(r=>Promise.all(["server/chunks/src_0bkvm8c._.js"].map(r=>e.l(r))).then(()=>r(215624)))},260815,e=>{e.v(e=>Promise.resolve().then(()=>e(924868)))}];
|
|
3
|
-
|
|
4
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__01yu.gw._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[933919,(e,r,t)=>{r.exports=e.x("@prisma/client-9249dd53ac5b6a44",()=>require("@prisma/client-9249dd53ac5b6a44"))},233405,(e,r,t)=>{r.exports=e.x("child_process",()=>require("child_process"))},543108,e=>{"use strict";var r=e.i(933919);let t=globalThis.prisma??new r.PrismaClient({log:[]}),a=!1;async function n(){return a||(await t.$connect(),await t.$queryRaw`PRAGMA journal_mode=WAL`,await t.$queryRaw`PRAGMA busy_timeout=5000`,a=!0),t}process.on("SIGTERM",()=>{t.$disconnect().catch(()=>{})}),process.on("SIGINT",()=>{t.$disconnect().catch(()=>{})}),e.s(["db",0,t,"initDb",0,n])},271856,e=>{"use strict";var r=e.i(233405),t=e.i(543108);function a(e,r,t,a){let n=new Date().toISOString(),o=`[${n}] ${e.toUpperCase()} [${r}] ${t}`;return a&&Object.keys(a).length>0?`${o} ${JSON.stringify(a)}`:o}let n=({create:function(e){return{info(r,t){console.log(a("info",e,r,t))},warn(r,t){console.warn(a("warn",e,r,t))},error(r,t,n){console.error(a("error",e,r,t instanceof Error?{...n,error:t.message,stack:t.stack}:{...n,error:String(t)}))}}},info(e,r){console.log(a("info","app",e,r))},warn(e,r){console.warn(a("warn","app",e,r))},error(e,r,t){console.error(a("error","app",e,r instanceof Error?{...t,error:r.message,stack:r.stack}:{...t,error:String(r)}))}}).create("instrumentation");async function o(){try{await (0,t.initDb)();let e=await t.db.taskExecution.updateMany({where:{status:"RUNNING"},data:{status:"FAILED",endedAt:new Date}});e.count>0&&n.warn(`Cleaned up ${e.count} stale RUNNING execution(s)`)}catch(e){n.error("Stale execution cleanup failed",e)}}async function i(){try{await (0,t.initDb)();let e=await t.db.workspace.count();0===e&&(await t.db.workspace.create({data:{name:"Default Workspace"}}),n.info("Created default workspace"))}catch(e){n.error("Failed to ensure default workspace",e)}}async function c(){try{await (0,t.initDb)();let{TOWER_LABEL_NAME:r,TOWER_LABEL_COLOR:a}=await e.A(622305);await t.db.label.findFirst({where:{name:r,isBuiltin:!0}})||(await t.db.label.create({data:{name:r,color:a,isBuiltin:!0}}),n.info("Created builtin Tower label"))}catch(e){n.error("Failed to ensure Tower label",e)}}async function s(){try{for(let e of(await (0,t.initDb)(),await t.db.project.findMany({where:{type:"GIT",localPath:{not:null}},select:{id:!0,localPath:!0,name:!0}})))try{(0,r.execFileSync)("git",["worktree","prune"],{cwd:e.localPath,encoding:"utf-8",timeout:1e4})}catch(r){n.error(`git worktree prune failed for "${e.name}"`,r,{localPath:e.localPath})}}catch(e){n.error("Worktree prune startup task failed",e)}}e.s(["cleanupStaleExecutions",0,o,"ensureDefaultWorkspace",0,i,"ensureTowerLabel",0,c,"pruneOrphanedWorktrees",0,s],271856)},622305,e=>{e.v(r=>Promise.all(["server/chunks/src_lib_constants_ts_04kowl~._.js"].map(r=>e.l(r))).then(()=>r(542117)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0965p6t._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[933919,(e,t,n)=>{t.exports=e.x("@prisma/client-9249dd53ac5b6a44",()=>require("@prisma/client-9249dd53ac5b6a44"))},750227,(e,t,n)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,n)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},874533,(e,t,n)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},980738,(e,t,n)=>{t.exports=e.x("node-pty-c710df912a232c01",()=>require("node-pty-c710df912a232c01"))},433541,e=>e.a(async(t,n)=>{try{let t=await e.y("ws-4df7fc762dfa9a52");e.n(t),n()}catch(e){n(e)}},!0),504446,(e,t,n)=>{t.exports=e.x("net",()=>require("net"))},603484,e=>{"use strict";var t=e.i(902157),n=e.i(874533),r=e.i(750227);function o(e=process.platform){return"win32"===e}function i(e){let t=e.replace(/\r\n|\r|\n/g," ");if(!t.length)return'""';let n=t.replace(/"/g,'""');return/[\s"&<>|^()]/.test(n)?`"${n}"`:n}let s=["CLAUDECODE","CLAUDE_CODE_ENTRYPOINT","CLAUDE_CODE_SESSION","CLAUDE_CODE_PARENT_SESSION"];async function a(e,t={}){let n=t.cwd??process.cwd(),i=t.env??process.env,s=t.platform??process.platform;if(e.includes("/")||e.includes("\\")){let t=r.default.isAbsolute(e)?e:r.default.resolve(n,e);return await u(t,s)?t:null}let c=i.PATH??i.Path??"",l=o(s)?";":":",d=c.split(l).filter(Boolean),f=o(s)?(i.PATHEXT??".EXE;.CMD;.BAT;.COM").split(";").filter(Boolean):[""],p=o(s)&&r.default.extname(e).length>0;for(let t of d)for(let n of o(s)?p?[r.default.join(t,e)]:f.map(n=>r.default.join(t,`${e}${n}`)):[r.default.join(t,e)])if(await u(n,s))return n;return null}let c=e=>(0,n.execSync)(e,{encoding:"utf-8",timeout:5e3,stdio:["ignore","pipe","ignore"]});async function l(e,t,n={}){let s=n.env??process.env,c=n.platform??process.platform;var u=await a(e,n)??e,d=t,f=s,p=c;if(!o(p))return{command:u,args:d};let m=r.default.extname(u).toLowerCase();return".cmd"===m||".bat"===m||".com"===m?{command:f.ComSpec||"cmd.exe",args:["/d","/s","/c",[i(u),...d.map(i)].join(" ")]}:{command:u,args:d}}async function u(e,n=process.platform){try{return await t.promises.access(e,o(n)?t.constants.F_OK:t.constants.X_OK),!0}catch{return!1}}e.s(["ensurePathInEnv",0,function(e,t=process.platform){let n=o(t)?"Path":"PATH";return(e.PATH??e.Path??"").length>0?e:{...e,[n]:function(e=process.platform){return o(e)?"C:\\Windows\\System32;C:\\Windows;C:\\Windows\\System32\\Wbem":"/usr/local/bin:/opt/homebrew/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin"}(t)}},"isWindows",0,o,"resolveCommandPathSync",0,function(e,t=process.platform,i=c){if(r.default.extname(e)||e.includes("/")||e.includes("\\"))return e;if(!o(t)){try{let t=(0,n.execFileSync)("which",[e],{encoding:"utf-8",timeout:5e3,stdio:["ignore","pipe","ignore"]}).trim();if(t)return t}catch{}return e}try{let t=i(`where ${e}`).trim().split("\n").map(e=>e.trim()).filter(Boolean),n=t.find(e=>/\.(cmd|bat|exe)$/i.test(e));if(n)return n;if(t.length>0)return t[0]}catch{}return e},"resolveSpawnTarget",0,l,"stripClaudeNestingEnv",0,function(e){let t={...e};for(let e of s)delete t[e];return t}])},543108,e=>{"use strict";var t=e.i(933919);let n=globalThis.prisma??new t.PrismaClient({log:[]}),r=!1;async function o(){return r||(await n.$connect(),await n.$queryRaw`PRAGMA journal_mode=WAL`,await n.$queryRaw`PRAGMA busy_timeout=5000`,r=!0),n}process.on("SIGTERM",()=>{n.$disconnect().catch(()=>{})}),process.on("SIGINT",()=>{n.$disconnect().catch(()=>{})}),e.s(["db",0,n,"initDb",0,o])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0c513um._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[933919,(e,t,r)=>{t.exports=e.x("@prisma/client-9249dd53ac5b6a44",()=>require("@prisma/client-9249dd53ac5b6a44"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},874533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},980738,(e,t,r)=>{t.exports=e.x("node-pty-c710df912a232c01",()=>require("node-pty-c710df912a232c01"))},433541,e=>e.a(async(t,r)=>{try{let t=await e.y("ws-4df7fc762dfa9a52");e.n(t),r()}catch(e){r(e)}},!0),504446,(e,t,r)=>{t.exports=e.x("net",()=>require("net"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},198840,e=>{"use strict";var t=e.i(855104);let r=["localhost","127.0.0.1","[::1]"],a=new Set(["127.0.0.1","::1","::ffff:127.0.0.1"]),n=/^c[a-z0-9]{20,30}$/;e.s(["requireLocalhost",0,function(e){let n=e.headers.get("x-forwarded-for");if(n&&!n.split(",").map(e=>e.trim()).every(e=>a.has(e)))return t.NextResponse.json({error:"Forbidden"},{status:403});let s=e.headers.get("host")??"";return r.some(e=>s.startsWith(e))?null:t.NextResponse.json({error:"Forbidden"},{status:403})},"validateProjectId",0,function(e){return n.test(e)?null:t.NextResponse.json({error:"Invalid projectId format"},{status:400})},"validateTaskId",0,function(e){return n.test(e)?null:t.NextResponse.json({error:"Invalid taskId format"},{status:400})}])},843793,e=>{"use strict";var t=e.i(933919);let r=globalThis.prisma??new t.PrismaClient({log:[]});process.on("SIGTERM",()=>{r.$disconnect().catch(()=>{})}),process.on("SIGINT",()=>{r.$disconnect().catch(()=>{})}),e.s(["db",0,r])},572173,e=>{"use strict";var t=e.i(843793);async function r(e,r){let a=await t.db.systemConfig.findUnique({where:{key:e}});if(!a)return r;try{return JSON.parse(a.value)}catch{return r}}e.s(["readConfigValue",0,r])},658053,e=>{"use strict";e.s(["ASSISTANT_SESSION_KEY",0,"__assistant__"])},395436,e=>e.a(async(t,r)=>{try{var a=e.i(855104),n=e.i(198840),s=e.i(843793),o=e.i(721390),i=t([o]);async function l(e){let t,r=(0,n.requireLocalhost)(e);if(r)return r;try{t=await e.json()}catch{return a.NextResponse.json({error:"Invalid JSON"},{status:400})}let{taskId:i,sessionId:l}=t;if(!i||"string"!=typeof i)return a.NextResponse.json({error:"taskId required"},{status:400});let d=await s.db.task.findUnique({where:{id:i},select:{id:!0,title:!0,project:{select:{name:!0,workspaceId:!0,workspace:{select:{name:!0}}}}}});if(!d)return a.NextResponse.json({error:"Task not found"},{status:404});let u={taskId:d.id,taskTitle:d.title,sessionId:l??"",workspaceId:d.project.workspaceId,workspaceName:d.project.workspace.name,projectName:d.project.name,type:"stop",timestamp:new Date().toISOString()};return(0,o.broadcastNotification)(u),a.NextResponse.json({ok:!0})}[o]=i.then?(await i)():i,e.s(["POST",0,l,"dynamic",0,"force-dynamic","runtime",0,"nodejs"]),r()}catch(e){r(e)}},!1),835333,e=>e.a(async(t,r)=>{try{var a=e.i(765876),n=e.i(675896),s=e.i(959160),o=e.i(97944),i=e.i(86757),l=e.i(204144),d=e.i(273436),u=e.i(743641),c=e.i(813766),p=e.i(840884),h=e.i(498814),x=e.i(780006),f=e.i(544432),v=e.i(772005),R=e.i(450223),m=e.i(193695);e.i(628400);var w=e.i(800071),g=e.i(395436),y=t([g]);[g]=y.then?(await y)():y;let N=new a.AppRouteRouteModule({definition:{kind:n.RouteKind.APP_ROUTE,page:"/api/internal/hooks/stop/route",pathname:"/api/internal/hooks/stop",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/internal/hooks/stop/route.ts",nextConfigOutput:"standalone",userland:g}),{workAsyncStorage:C,workUnitAsyncStorage:k,serverHooks:b}=N;async function E(e,t,r){r.requestMeta&&(0,o.setRequestMeta)(e,r.requestMeta),N.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let a="/api/internal/hooks/stop/route";a=a.replace(/\/index$/,"")||"/";let s=await N.prepare(e,t,{srcPage:a,multiZoneDraftMode:!1});if(!s)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:g,params:y,nextConfig:E,parsedUrl:C,isDraftMode:k,prerenderManifest:b,routerServerContext:S,isOnDemandRevalidate:q,revalidateOnlyGenerated:I,resolvedPathname:j,clientReferenceManifest:T,serverActionsManifest:A}=s,_=(0,d.normalizeAppPath)(a),P=!!(b.dynamicRoutes[_]||b.routes[j]),O=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,C,!1):t.end("This page could not be found"),null);if(P&&!k){let e=!!b.routes[j],t=b.dynamicRoutes[_];if(t&&!1===t.fallback&&!e){if(E.adapterPath)return await O();throw new m.NoFallbackError}}let U=null;!P||N.isDev||k||(U=j,U="/index"===U?"/":U);let H=!0===N.isDev||!P,M=P&&!H;A&&T&&(0,l.setManifestsSingleton)({page:a,clientReferenceManifest:T,serverActionsManifest:A});let D=e.method||"GET",$=(0,i.getTracer)(),F=$.getActiveScopeSpan(),K=!!(null==S?void 0:S.isWrappedByNextServer),L=!!(0,o.getRequestMeta)(e,"minimalMode"),B=(0,o.getRequestMeta)(e,"incrementalCache")||await N.getIncrementalCache(e,E,b,L);null==B||B.resetRequestCache(),globalThis.__incrementalCache=B;let G={params:y,previewProps:b.preview,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:H,incrementalCache:B,cacheLifeProfiles:E.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>N.onRequestError(e,t,a,n,S)},sharedContext:{buildId:g}},V=new u.NodeNextRequest(e),W=new u.NodeNextResponse(t),X=c.NextRequestAdapter.fromNodeNextRequest(V,(0,c.signalFromNodeResponse)(t));try{let s,o=async e=>N.handle(X,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==p.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 n=r.get("next.route");if(n){let t=`${D} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t),s&&s!==e&&(s.setAttribute("http.route",n),s.updateName(t))}else e.updateName(`${D} ${a}`)}),l=async s=>{var i,l;let d=async({previousCacheEntry:n})=>{try{if(!L&&q&&I&&!n)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(s);e.fetchMetrics=G.renderOpts.fetchMetrics;let i=G.renderOpts.pendingWaitUntil;i&&r.waitUntil&&(r.waitUntil(i),i=void 0);let l=G.renderOpts.collectedTags;if(!P)return await (0,x.sendResponse)(V,W,a,G.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(a.headers);l&&(t[R.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=R.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,n=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=R.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:w.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==n?void 0:n.isStale)&&await N.onRequestError(e,t,{routerKind:"App Router",routePath:a,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:q})},!1,S),t}},u=await N.handleResponse({req:e,nextConfig:E,cacheKey:U,routeKind:n.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:q,revalidateOnlyGenerated:I,responseGenerator:d,waitUntil:r.waitUntil,isMinimalMode:L});if(!P)return null;if((null==u||null==(i=u.value)?void 0:i.kind)!==w.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(l=u.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});L||t.setHeader("x-nextjs-cache",q?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),k&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let c=(0,f.fromNodeOutgoingHttpHeaders)(u.value.headers);return L&&P||c.delete(R.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||c.get("Cache-Control")||c.set("Cache-Control",(0,v.getCacheControlHeader)(u.cacheControl)),await (0,x.sendResponse)(V,W,new Response(u.value.body,{headers:c,status:u.value.status||200})),null};K&&F?await l(F):(s=$.getActiveScopeSpan(),await $.withPropagatedContext(e.headers,()=>$.trace(p.BaseServerSpan.handleRequest,{spanName:`${D} ${a}`,kind:i.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l),void 0,!K))}catch(t){if(t instanceof m.NoFallbackError||await N.onRequestError(e,t,{routerKind:"App Router",routePath:_,routeType:"route",revalidateReason:(0,h.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:q})},!1,S),P)throw t;return await (0,x.sendResponse)(V,W,new Response(null,{status:500})),null}}e.s(["handler",0,E,"patchFetch",0,function(){return(0,s.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:k})},"routeModule",0,N,"serverHooks",0,b,"workAsyncStorage",0,C,"workUnitAsyncStorage",0,k]),r()}catch(e){r(e)}},!1)];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0qijr4h._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},874533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},980738,(e,t,r)=>{t.exports=e.x("node-pty-c710df912a232c01",()=>require("node-pty-c710df912a232c01"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},270406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},198840,e=>{"use strict";var t=e.i(855104);let r=["localhost","127.0.0.1","[::1]"],a=new Set(["127.0.0.1","::1","::ffff:127.0.0.1"]),n=/^c[a-z0-9]{20,30}$/;e.s(["requireLocalhost",0,function(e){let n=e.headers.get("x-forwarded-for");if(n&&!n.split(",").map(e=>e.trim()).every(e=>a.has(e)))return t.NextResponse.json({error:"Forbidden"},{status:403});let s=e.headers.get("host")??"";return r.some(e=>s.startsWith(e))?null:t.NextResponse.json({error:"Forbidden"},{status:403})},"validateProjectId",0,function(e){return n.test(e)?null:t.NextResponse.json({error:"Invalid projectId format"},{status:400})},"validateTaskId",0,function(e){return n.test(e)?null:t.NextResponse.json({error:"Invalid taskId format"},{status:400})}])},262598,e=>{"use strict";var t=e.i(765876),r=e.i(675896),a=e.i(959160),n=e.i(97944),s=e.i(86757),o=e.i(204144),i=e.i(273436),l=e.i(743641),d=e.i(813766),u=e.i(840884),p=e.i(498814),c=e.i(780006),h=e.i(544432),x=e.i(772005),f=e.i(450223),v=e.i(193695);e.i(628400);var R=e.i(800071),m=e.i(855104),g=e.i(78091),w=e.i(83721),E=e.i(198840);let y=g.z.coerce.number().int().min(1).max(500).default(100);async function C(e,{params:t}){let r=(0,E.requireLocalhost)(e);if(r)return r;let{taskId:a}=await t,n=(0,E.validateTaskId)(a);if(n)return n;let s=(0,w.getSession)(a);if(!s)return m.NextResponse.json({error:"No active session"},{status:404});let o=e.nextUrl.searchParams.get("lines"),i=y.safeParse(o??void 0),l=i.success?i.data:100,d=s.getBuffer().split("\n").slice(-l);return m.NextResponse.json({taskId:a,lines:d,total:d.length,killed:s.killed})}e.s(["GET",0,C,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],170004);var b=e.i(170004);let N=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/internal/terminal/[taskId]/buffer/route",pathname:"/api/internal/terminal/[taskId]/buffer",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/internal/terminal/[taskId]/buffer/route.ts",nextConfigOutput:"standalone",userland:b}),{workAsyncStorage:A,workUnitAsyncStorage:k,serverHooks:q}=N;async function T(e,t,a){a.requestMeta&&(0,n.setRequestMeta)(e,a.requestMeta),N.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let m="/api/internal/terminal/[taskId]/buffer/route";m=m.replace(/\/index$/,"")||"/";let g=await N.prepare(e,t,{srcPage:m,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:w,params:E,nextConfig:y,parsedUrl:C,isDraftMode:b,prerenderManifest:A,routerServerContext:k,isOnDemandRevalidate:q,revalidateOnlyGenerated:T,resolvedPathname:I,clientReferenceManifest:P,serverActionsManifest:j}=g,S=(0,i.normalizeAppPath)(m),_=!!(A.dynamicRoutes[S]||A.routes[I]),O=async()=>((null==k?void 0:k.render404)?await k.render404(e,t,C,!1):t.end("This page could not be found"),null);if(_&&!b){let e=!!A.routes[I],t=A.dynamicRoutes[S];if(t&&!1===t.fallback&&!e){if(y.adapterPath)return await O();throw new v.NoFallbackError}}let H=null;!_||N.isDev||b||(H="/index"===(H=I)?"/":H);let U=!0===N.isDev||!_,M=_&&!U;j&&P&&(0,o.setManifestsSingleton)({page:m,clientReferenceManifest:P,serverActionsManifest:j});let D=e.method||"GET",F=(0,s.getTracer)(),$=F.getActiveScopeSpan(),K=!!(null==k?void 0:k.isWrappedByNextServer),B=!!(0,n.getRequestMeta)(e,"minimalMode"),L=(0,n.getRequestMeta)(e,"incrementalCache")||await N.getIncrementalCache(e,y,A,B);null==L||L.resetRequestCache(),globalThis.__incrementalCache=L;let G={params:E,previewProps:A.preview,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:U,incrementalCache:L,cacheLifeProfiles:y.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>N.onRequestError(e,t,a,n,k)},sharedContext:{buildId:w}},W=new l.NodeNextRequest(e),z=new l.NodeNextResponse(t),V=d.NextRequestAdapter.fromNodeNextRequest(W,(0,d.signalFromNodeResponse)(t));try{let n,o=async e=>N.handle(V,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.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 a=r.get("next.route");if(a){let t=`${D} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t),n&&n!==e&&(n.setAttribute("http.route",a),n.updateName(t))}else e.updateName(`${D} ${m}`)}),i=async n=>{var s,i;let l=async({previousCacheEntry:r})=>{try{if(!B&&q&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(n);e.fetchMetrics=G.renderOpts.fetchMetrics;let i=G.renderOpts.pendingWaitUntil;i&&a.waitUntil&&(a.waitUntil(i),i=void 0);let l=G.renderOpts.collectedTags;if(!_)return await (0,c.sendResponse)(W,z,s,G.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[f.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:R.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await N.onRequestError(e,t,{routerKind:"App Router",routePath:m,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:q})},!1,k),t}},d=await N.handleResponse({req:e,nextConfig:y,cacheKey:H,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:q,revalidateOnlyGenerated:T,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:B});if(!_)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==R.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(i=d.value)?void 0:i.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});B||t.setHeader("x-nextjs-cache",q?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let u=(0,h.fromNodeOutgoingHttpHeaders)(d.value.headers);return B&&_||u.delete(f.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||u.get("Cache-Control")||u.set("Cache-Control",(0,x.getCacheControlHeader)(d.cacheControl)),await (0,c.sendResponse)(W,z,new Response(d.value.body,{headers:u,status:d.value.status||200})),null};K&&$?await i($):(n=F.getActiveScopeSpan(),await F.withPropagatedContext(e.headers,()=>F.trace(u.BaseServerSpan.handleRequest,{spanName:`${D} ${m}`,kind:s.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},i),void 0,!K))}catch(t){if(t instanceof v.NoFallbackError||await N.onRequestError(e,t,{routerKind:"App Router",routePath:S,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:q})},!1,k),_)throw t;return await (0,c.sendResponse)(W,z,new Response(null,{status:500})),null}}e.s(["handler",0,T,"patchFetch",0,function(){return(0,a.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:k})},"routeModule",0,N,"serverHooks",0,q,"workAsyncStorage",0,A,"workUnitAsyncStorage",0,k],262598)}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0rc0ntp._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[750227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},913284,468862,a=>{"use strict";var b=a.i(884664);a.s(["CheckCircle2",()=>b.default],913284);let c=(0,a.i(711796).default)("circle-x",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);a.s(["XCircle",0,c],468862)},264589,a=>{"use strict";let b=(0,a.i(711796).default)("package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);a.s(["Package",0,b],264589)},10390,a=>{"use strict";var b=a.i(421992);a.s(["ChevronRight",()=>b.default])},648512,a=>{"use strict";let b=(0,a.i(711796).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",0,b],648512)},912868,a=>{"use strict";let b=(0,a.i(711796).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);a.s(["ChevronLeft",0,b],912868)},786304,a=>{"use strict";var b=a.i(475295),c=a.i(213200),d=a.i(142261),e=a.i(368114);let f=(0,d.cva)("group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",secondary:"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",destructive:"bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20",outline:"border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",ghost:"hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",link:"text-primary underline-offset-4 hover:underline"}},defaultVariants:{variant:"default"}});a.s(["Badge",0,function({className:a,variant:d="default",render:g,...h}){var i;return i={defaultTagName:"span",props:(0,b.mergeProps)({className:(0,e.cn)(f({variant:d}),a)},h),render:g,state:{slot:"badge",variant:d}},(0,c.useRenderElement)(i.defaultTagName??"div",i,i)}],786304)},747798,a=>{"use strict";let b=(0,a.i(711796).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);a.s(["RotateCcw",0,b],747798)},435393,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40bd6bd14273f742080b119c49ce1ae4226a0ea9ae",b.callServer,void 0,b.findSourceMapURL,"getConfigValues");a.s(["getConfigValues",0,c])},412783,22761,a=>{"use strict";var b=a.i(728778),c=a.i(368114);a.s(["Label",0,function({className:a,...d}){return(0,b.jsx)("label",{"data-slot":"label",className:(0,c.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",a),...d})}],412783);let d=(0,a.i(711796).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);a.s(["Copy",0,d],22761)},269280,a=>{"use strict";let b=(0,a.i(711796).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",0,b],269280)},751838,901759,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("402267c2c38e93dab04259f43e1a7495e1628abd45",b.callServer,void 0,b.findSourceMapURL,"openInFileManager");a.s(["openInFileManager",0,c],751838);let d=(0,b.createServerReference)("40efafaef4f35ec883fb17805980ce195985954dd2",b.callServer,void 0,b.findSourceMapURL,"openInEditor");a.s(["openInEditor",0,d],901759)},165614,a=>{"use strict";let b=(0,a.i(711796).default)("circle-play",[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);a.s(["PlayCircle",0,b],165614)},625892,939859,a=>{"use strict";var b=a.i(711796);let c=(0,b.default)("folder-search",[["path",{d:"M10.7 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v4.1",key:"1bw5m7"}],["path",{d:"m21 21-1.9-1.9",key:"1g2n9r"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}]]);a.s(["FolderSearch",0,c],625892);let d=(0,b.default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);a.s(["Code",0,d],939859)},509405,a=>{"use strict";let b=(0,a.i(711796).default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",0,b],509405)},551578,a=>{"use strict";var b=a.i(728778);let c=(0,a.i(711796).default)("milestone",[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M12 3v3",key:"1n5kay"}],["path",{d:"M18.172 6a2 2 0 0 1 1.414.586l2.06 2.06a1.207 1.207 0 0 1 0 1.708l-2.06 2.06a2 2 0 0 1-1.414.586H4a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1z",key:"8gz4t4"}]]);var d=a.i(951192);let e=["bg-sky-500/20 text-sky-300 border border-sky-500/30","bg-amber-500/20 text-amber-300 border border-amber-500/30","bg-violet-500/20 text-violet-300 border border-violet-500/30","bg-emerald-500/20 text-emerald-300 border border-emerald-500/30","bg-rose-500/20 text-rose-300 border border-rose-500/30","bg-cyan-500/20 text-cyan-300 border border-cyan-500/30","bg-indigo-500/20 text-indigo-300 border border-indigo-500/30"];function f(a){return e[function(a){let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)>>>0;return b}(a)%e.length]}let g={PLANNED:"bg-slate-500/20 text-slate-300 border border-slate-500/30",ACTIVE:"bg-emerald-500/20 text-emerald-300 border border-emerald-500/30",RELEASED:"bg-zinc-500/20 text-zinc-400 border border-zinc-500/30"};a.s(["TaskVersionTag",0,function({number:a,name:d,showName:e=!1,className:f="",title:g}){return(0,b.jsxs)("span",{className:`inline-flex items-center gap-1 rounded-md border border-border bg-muted px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground ${f}`,title:g??(d?`${a} \xb7 ${d}`:a),children:[(0,b.jsx)(c,{className:"h-2.5 w-2.5 shrink-0"}),(0,b.jsx)("span",{className:"font-mono",children:a}),e&&d?(0,b.jsx)("span",{className:"max-w-[140px] truncate",children:d}):null]})},"VersionStatusBadge",0,function({status:a}){let{t:c}=(0,d.useI18n)();return(0,b.jsx)("span",{className:`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${g[a]}`,children:c(`version.status.${a}`)})},"VersionTypeBadge",0,function({name:a}){let{t:c}=(0,d.useI18n)();return a?(0,b.jsx)("span",{className:`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${f(a)}`,children:a}):(0,b.jsx)("span",{className:"inline-flex items-center rounded-full border border-border bg-muted/40 px-2 py-0.5 text-xs font-medium text-muted-foreground",children:c("version.type.uncategorized")})},"typeBadgeColor",0,f],551578)},865011,a=>{"use strict";var b=a.i(728778),c=a.i(634910),d=a.i(553798),e=a.i(269280),f=a.i(350739),g=a.i(347165),h=a.i(607219),i=a.i(951192);let j=[{key:"notes",icon:f.FileText},{key:"assets",icon:g.FolderOpen},{key:"archive",icon:h.Archive}];a.s(["SubPageNav",0,function({workspaceId:a}){let{t:f}=(0,i.useI18n)(),g=(0,d.usePathname)(),h=j.find(a=>g.includes(`/${a.key}`))?.key;return(0,b.jsxs)("div",{className:"header-sm flex items-center gap-1 px-4",children:[(0,b.jsxs)(c.default,{href:`/workspaces/${a}`,className:"mr-2 inline-flex h-8 items-center gap-1.5 rounded-md px-2 text-xs text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",children:[(0,b.jsx)(e.ArrowLeft,{className:"h-3.5 w-3.5"}),(0,b.jsx)("span",{children:f("archive.backToBoard")})]}),(0,b.jsx)("span",{className:"mr-2 h-4 w-px bg-border"}),j.map(d=>{let e=d.icon,g=h===d.key;return(0,b.jsxs)(c.default,{href:`/workspaces/${a}/${d.key}`,className:`inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs font-medium transition-colors ${g?"bg-accent text-foreground":"text-muted-foreground hover:bg-accent/50 hover:text-foreground"}`,children:[(0,b.jsx)(e,{className:"h-3.5 w-3.5"}),(0,b.jsx)("span",{children:f(`sidebar.${d.key}`)})]},d.key)})]})}])},149234,a=>{"use strict";var b=a.i(728778),c=a.i(374637),d=a.i(607219),e=a.i(913284),f=a.i(468862),g=a.i(704494),h=a.i(573242),i=a.i(580701),j=a.i(951192),k=a.i(865011),l=a.i(780410);let m=(0,l.createServerReference)("40f88754fa4ff3ba0a38dfd64e6cfd9a3687d71f26",l.callServer,void 0,l.findSourceMapURL,"getArchivedTasks");var n=a.i(972420),o=a.i(551578);function p(a){return new Date(a).toLocaleDateString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"})}function q({priority:a}){return(0,b.jsx)("span",{className:`inline-block h-1.5 w-1.5 rounded-full ${{LOW:"bg-slate-400",MEDIUM:"bg-amber-400",HIGH:"bg-orange-500",CRITICAL:"bg-rose-500"}[a]??"bg-slate-400"}`})}a.s(["ArchivePageClient",0,function({allWorkspaces:a,initialWorkspaceId:l,initialProjectId:r,initialTasks:s}){let t,{t:u}=(0,j.useI18n)(),[v,w]=(0,c.useTransition)(),[x,y]=(0,c.useState)(l),[z,A]=(0,c.useState)(r),[B,C]=(0,c.useState)(s),[D,E]=(0,c.useState)(null),[F,G]=(0,c.useState)(""),H=a.find(a=>a.id===x),I=H?.projects??[],J=F.trim().toLowerCase(),K=J?B.filter(a=>a.title.toLowerCase().includes(J)):B,L=(0,c.useCallback)(a=>{a?w(async()=>{C(await m(a))}):C([])},[w]);return(0,b.jsxs)("div",{className:"flex h-full flex-col overflow-hidden",children:[(0,b.jsx)(k.SubPageNav,{workspaceId:x}),(0,b.jsxs)("div",{className:"header-sm flex items-center gap-3 px-6 py-2",children:[(0,b.jsxs)(i.Select,{value:x,onValueChange:b=>b&&(b=>{if(b===x)return;y(b);let c=a.find(a=>a.id===b),d=c?.projects[0]??null;A(d?.id??null),L(d?.id??null)})(b),children:[(0,b.jsx)(i.SelectTrigger,{className:"h-8 w-auto min-w-[120px]",children:(0,b.jsx)("span",{className:"truncate",children:H?.name??x})}),(0,b.jsx)(i.SelectContent,{children:a.map(a=>(0,b.jsx)(i.SelectItem,{value:a.id,children:a.name},a.id))})]}),I.length>0&&(0,b.jsxs)(i.Select,{value:z??"",onValueChange:a=>a&&void(a!==z&&(A(a),L(a))),children:[(0,b.jsx)(i.SelectTrigger,{className:"h-8 w-auto min-w-[140px]",children:(0,b.jsx)("span",{className:"truncate",children:(t=I.find(a=>a.id===z))?t.alias?`${t.name} (${t.alias})`:t.name:""})}),(0,b.jsx)(i.SelectContent,{children:I.map(a=>(0,b.jsxs)(i.SelectItem,{value:a.id,children:[a.name,a.alias?` (${a.alias})`:""]},a.id))})]}),(0,b.jsxs)("div",{className:"relative ml-auto",children:[(0,b.jsx)(h.Search,{className:"pointer-events-none absolute left-2.5 top-1/2 h-3.5 w-3.5 -translate-y-1/2 text-muted-foreground"}),(0,b.jsx)("input",{type:"text",value:F,onChange:a=>G(a.target.value),placeholder:u("archive.searchPlaceholder"),className:"h-8 w-48 rounded-md border border-border bg-background pl-8 pr-3 text-sm text-foreground placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring"})]}),(0,b.jsxs)("span",{className:"rounded-full bg-muted px-2.5 py-0.5 text-[11px] text-muted-foreground",children:[K.length," ",u("archive.tasksCount")]})]}),(0,b.jsx)("div",{className:"flex-1 overflow-auto px-6 py-4",children:(0,b.jsxs)("div",{className:`relative ${v?"opacity-40 pointer-events-none":""} transition-opacity`,children:[v&&(0,b.jsx)("div",{className:"absolute inset-0 z-10 flex items-center justify-center",children:(0,b.jsx)(g.Loader2,{className:"size-5 animate-spin text-muted-foreground"})}),0===K.length?(0,b.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2 py-16 text-center",children:[(0,b.jsx)(d.Archive,{className:"h-10 w-10 text-muted-foreground/30"}),(0,b.jsx)("p",{className:"text-sm font-medium text-muted-foreground",children:J?u("archive.noSearchResults"):u("archive.noTasks")}),(0,b.jsx)("p",{className:"text-xs text-muted-foreground/60",children:J?u("archive.noSearchResultsDesc"):u("archive.noTasksDesc")})]}):(0,b.jsx)("div",{className:"space-y-2",children:K.map(a=>{let c="DONE"===a.status,d=a.executions[0];return(0,b.jsx)("div",{role:"button",tabIndex:0,onClick:()=>E(a.id),onKeyDown:b=>{("Enter"===b.key||" "===b.key)&&(b.preventDefault(),E(a.id))},className:"group cursor-pointer rounded-lg border border-border bg-card px-4 py-3 transition-colors hover:border-border/80 hover:bg-accent/30 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:ring-offset-background",children:(0,b.jsxs)("div",{className:"flex items-start gap-3",children:[(0,b.jsx)("div",{className:"mt-0.5 shrink-0",children:c?(0,b.jsx)(e.CheckCircle2,{className:"h-4 w-4 text-emerald-500"}):(0,b.jsx)(f.XCircle,{className:"h-4 w-4 text-rose-500"})}),(0,b.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,b.jsxs)("div",{className:"flex items-center gap-2",children:[(0,b.jsx)(q,{priority:a.priority}),(0,b.jsx)("span",{className:"truncate text-sm font-medium text-foreground",children:a.title}),(0,b.jsx)("span",{className:`ml-1 shrink-0 rounded-full px-2 py-0.5 text-[10px] font-medium ${c?"bg-emerald-500/10 text-emerald-400 ring-1 ring-emerald-500/20":"bg-rose-500/10 text-rose-400 ring-1 ring-rose-500/20"}`,children:c?u("archive.status.done"):u("archive.status.cancelled")}),a.version&&(0,b.jsx)(o.TaskVersionTag,{number:a.version.number,name:a.version.name,showName:!0,className:"shrink-0"})]}),a.labels.length>0&&(0,b.jsx)("div",{className:"mt-1.5 flex flex-wrap gap-1",children:a.labels.map(a=>(0,b.jsx)("span",{className:"rounded-full px-1.5 py-0.5 text-[10px] font-medium",style:{backgroundColor:`${a.label.color}20`,color:a.label.color,outline:`1px solid ${a.label.color}40`},children:a.label.name},a.label.id))}),(0,b.jsxs)("div",{className:"mt-2 flex flex-wrap items-center gap-3 text-[11px] text-muted-foreground",children:[(0,b.jsxs)("span",{children:[u("archive.createdAt"),": ",p(a.createdAt)]}),(0,b.jsxs)("span",{children:[c?u("archive.completedAt"):u("archive.cancelledAt"),": ",p(a.updatedAt)]}),d&&(0,b.jsxs)("span",{className:"flex items-center gap-1",children:[u("archive.lastExecution"),":"," ",(0,b.jsx)("span",{className:`rounded px-1 py-0.5 font-mono text-[10px] ${"COMPLETED"===d.status?"bg-emerald-500/10 text-emerald-400":"FAILED"===d.status?"bg-rose-500/10 text-rose-400":"bg-amber-500/10 text-amber-400"}`,children:d.status})]})]})]})]})},a.id)})})]})}),(0,b.jsx)(n.TaskOverviewDrawer,{open:!!D,onOpenChange:a=>{a||E(null)},taskId:D,hideEnvActions:!0})]})}],149234)},574046,a=>{a.v(b=>Promise.all(["server/chunks/ssr/04y0_streamdown_dist_highlighted-body-OFNGDK62_0dm8t_v.js"].map(b=>a.l(b))).then(()=>b(514138)))},170967,a=>{a.v(b=>Promise.all(["server/chunks/ssr/04y0_streamdown_dist_mermaid-GHXKKRXX_0oxtju0.js"].map(b=>a.l(b))).then(()=>b(729004)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0.~z1-.._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[750227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},902157,(a,b,c)=>{b.exports=a.x("node:fs",()=>require("node:fs"))},874533,(a,b,c)=>{b.exports=a.x("node:child_process",()=>require("node:child_process"))},660526,(a,b,c)=>{b.exports=a.x("node:os",()=>require("node:os"))},163812,a=>{"use strict";var b=a.i(902157),c=a.i(874533),d=a.i(750227);function e(a=process.platform){return"win32"===a}function f(a){let b=a.replace(/\r\n|\r|\n/g," ");if(!b.length)return'""';let c=b.replace(/"/g,'""');return/[\s"&<>|^()]/.test(c)?`"${c}"`:c}let g=["CLAUDECODE","CLAUDE_CODE_ENTRYPOINT","CLAUDE_CODE_SESSION","CLAUDE_CODE_PARENT_SESSION"];async function h(a,b={}){let c=b.cwd??process.cwd(),f=b.env??process.env,g=b.platform??process.platform;if(a.includes("/")||a.includes("\\")){let b=d.default.isAbsolute(a)?a:d.default.resolve(c,a);return await m(b,g)?b:null}let i=f.PATH??f.Path??"",j=e(g)?";":":",k=i.split(j).filter(Boolean),l=e(g)?(f.PATHEXT??".EXE;.CMD;.BAT;.COM").split(";").filter(Boolean):[""],n=e(g)&&d.default.extname(a).length>0;for(let b of k)for(let c of e(g)?n?[d.default.join(b,a)]:l.map(c=>d.default.join(b,`${a}${c}`)):[d.default.join(b,a)])if(await m(c,g))return c;return null}let i=a=>(0,c.execSync)(a,{encoding:"utf-8",timeout:5e3,stdio:["ignore","pipe","ignore"]});function j(a,b=process.platform,f=i){if(d.default.extname(a)||a.includes("/")||a.includes("\\"))return a;if(!e(b)){try{let b=(0,c.execFileSync)("which",[a],{encoding:"utf-8",timeout:5e3,stdio:["ignore","pipe","ignore"]}).trim();if(b)return b}catch{}return a}try{let b=f(`where ${a}`).trim().split("\n").map(a=>a.trim()).filter(Boolean),c=b.find(a=>/\.(cmd|bat|exe)$/i.test(a));if(c)return c;if(b.length>0)return b[0]}catch{}return a}async function k(a,b,c={}){let d=c.env??process.env,e=c.platform??process.platform;return l(await h(a,c)??a,b,d,e)}function l(a,b,c,g){if(!e(g))return{command:a,args:b};let h=d.default.extname(a).toLowerCase();return".cmd"===h||".bat"===h||".com"===h?{command:c.ComSpec||"cmd.exe",args:["/d","/s","/c",[f(a),...b.map(f)].join(" ")]}:{command:a,args:b}}async function m(a,c=process.platform){try{return await b.promises.access(a,e(c)?b.constants.F_OK:b.constants.X_OK),!0}catch{return!1}}async function n(a=process.platform){return e(a)?p():o()}async function o(){try{let a=await b.promises.readFile("/etc/shells","utf-8"),c=[],e=new Map;for(let b of a.split("\n")){let a=b.replace(/#.*/,"").trim();if(!a||!a.startsWith("/")||!await m(a))continue;let f=d.default.basename(a),g=e.get(f)??0;e.set(f,g+1),g>0&&(f=`${f} (${g+1})`),c.push({name:f,path:a})}return c}catch{let a=[];for(let b of["/bin/zsh","/bin/bash","/bin/sh"])await m(b)&&a.push({name:d.default.basename(b),path:b});return a}}async function p(){let a=[],b=[],c=await h("git",{platform:"win32"});if(c){let a=d.default.resolve(d.default.dirname(c),"..","..");b.push(d.default.join(a,"bin","bash.exe"),d.default.join(a,"usr","bin","bash.exe"))}for(let a of[process.env.ProgramW6432,process.env.ProgramFiles,process.env["ProgramFiles(x86)"],process.env.LocalAppData?d.default.join(process.env.LocalAppData,"Programs"):null].filter(Boolean))b.push(d.default.join(a,"Git","bin","bash.exe"),d.default.join(a,"Git","usr","bin","bash.exe"));let e=process.env.USERPROFILE??"";for(let c of(e&&b.push(d.default.join(e,"scoop","apps","git","current","bin","bash.exe")),process.env.CLAUDE_CODE_GIT_BASH_PATH&&b.unshift(process.env.CLAUDE_CODE_GIT_BASH_PATH),b))if(await m(c,"win32")){a.push({name:"Git Bash",path:c});break}let f=await h("pwsh",{platform:"win32"});f&&a.push({name:"PowerShell",path:f});let g=process.env.windir??"C:\\WINDOWS",i=d.default.join(g,"System32","WindowsPowerShell","v1.0","powershell.exe");await m(i,"win32")&&a.push({name:"Windows PowerShell",path:i});let j=process.env.ComSpec??d.default.join(g,"System32","cmd.exe");return await m(j,"win32")&&a.push({name:"Command Prompt",path:j}),a}let q=[{name:"Terminal",bundleName:"Terminal"},{name:"iTerm2",bundleName:"iTerm"},{name:"Warp",bundleName:"Warp"},{name:"Alacritty",bundleName:"Alacritty"},{name:"WezTerm",bundleName:"WezTerm"},{name:"kitty",bundleName:"kitty"},{name:"Hyper",bundleName:"Hyper"}];async function r(a=process.platform){if("darwin"===a){let b=[];for(let c of q){let d=await m(`/Applications/${c.bundleName}.app`,a);b.push({name:c.name,value:c.bundleName,installed:d})}return b}if(e(a)){let b=[],c=await h("wt",{platform:a});return c&&b.push({name:"Windows Terminal",value:c,installed:!0}),b}return[]}let s=[{name:"VS Code",command:"code"},{name:"VS Code Insiders",command:"code-insiders"},{name:"Cursor",command:"cursor"},{name:"Windsurf",command:"windsurf"},{name:"Zed",command:"zed"},{name:"Sublime Text",command:"subl"},{name:"IntelliJ IDEA",command:"idea"},{name:"WebStorm",command:"webstorm"},{name:"PyCharm",command:"pycharm"},{name:"GoLand",command:"goland"},{name:"RubyMine",command:"rubymine"},{name:"PhpStorm",command:"phpstorm"},{name:"CLion",command:"clion"},{name:"Rider",command:"rider"}],t={code:{darwin:["/Applications/Visual Studio Code.app/Contents/Resources/app/bin/code"],win32:["%LOCALAPPDATA%\\Programs\\Microsoft VS Code\\bin\\code.cmd","%ProgramFiles%\\Microsoft VS Code\\bin\\code.cmd"]},"code-insiders":{darwin:["/Applications/Visual Studio Code - Insiders.app/Contents/Resources/app/bin/code-insiders"],win32:["%LOCALAPPDATA%\\Programs\\Microsoft VS Code Insiders\\bin\\code-insiders.cmd","%ProgramFiles%\\Microsoft VS Code Insiders\\bin\\code-insiders.cmd"]},cursor:{darwin:["/Applications/Cursor.app/Contents/Resources/app/bin/cursor"],win32:["%LOCALAPPDATA%\\Programs\\cursor\\resources\\app\\bin\\cursor.cmd"]},windsurf:{darwin:["/Applications/Windsurf.app/Contents/Resources/app/bin/windsurf"],win32:["%LOCALAPPDATA%\\Programs\\Windsurf\\bin\\windsurf.cmd"]},zed:{darwin:["/Applications/Zed.app/Contents/MacOS/cli"]},subl:{darwin:["/Applications/Sublime Text.app/Contents/SharedSupport/bin/subl"],win32:["%ProgramFiles%\\Sublime Text\\subl.exe","%ProgramFiles%\\Sublime Text 3\\subl.exe"]},idea:{darwin:["/Applications/IntelliJ IDEA.app/Contents/MacOS/idea","/Applications/IntelliJ IDEA CE.app/Contents/MacOS/idea"]},webstorm:{darwin:["/Applications/WebStorm.app/Contents/MacOS/webstorm"]},pycharm:{darwin:["/Applications/PyCharm.app/Contents/MacOS/pycharm","/Applications/PyCharm CE.app/Contents/MacOS/pycharm"]},goland:{darwin:["/Applications/GoLand.app/Contents/MacOS/goland"]},rubymine:{darwin:["/Applications/RubyMine.app/Contents/MacOS/rubymine"]},phpstorm:{darwin:["/Applications/PhpStorm.app/Contents/MacOS/phpstorm"]},clion:{darwin:["/Applications/CLion.app/Contents/MacOS/clion"]},rider:{darwin:["/Applications/Rider.app/Contents/MacOS/rider"]}};async function u(a,b={}){let c=b.platform??process.platform,d=b.env??process.env,f=await h(a,b);if(f)return f;for(let b of t[a]?.[c]??[]){let a=e(c)?function(a,b){return a.replace(/%([^%]+)%/g,(a,c)=>{let d=b[c];if(void 0!==d)return d;let e=Object.keys(b).find(a=>a.toLowerCase()===c.toLowerCase());return e?b[e]??a:a})}(b,d):b;if(await m(a,c))return a}return null}async function v(a=process.platform){let b=[];for(let c of s){let d=!!await u(c.command,{platform:a});b.push({name:c.name,command:c.command,installed:d})}return b}a.s(["detectEditors",0,v,"detectShells",0,n,"detectTerminalApps",0,r,"ensurePathInEnv",0,function(a,b=process.platform){let c=e(b)?"Path":"PATH";return(a.PATH??a.Path??"").length>0?a:{...a,[c]:function(a=process.platform){return e(a)?"C:\\Windows\\System32;C:\\Windows;C:\\Windows\\System32\\Wbem":"/usr/local/bin:/opt/homebrew/bin:/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin"}(b)}},"isWindows",0,e,"resolveCommandPathSync",0,j,"resolveEditorBinary",0,u,"resolveSpawnTarget",0,k,"resolveSpawnTargetSync",0,function(a,b,c=process.platform,d){return l(j(a,c,d),b,process.env,c)},"stripClaudeNestingEnv",0,function(a){let b={...a};for(let a of g)delete b[a];return b}])},446786,(a,b,c)=>{b.exports=a.x("os",()=>require("os"))},522734,(a,b,c)=>{b.exports=a.x("fs",()=>require("fs"))},233405,(a,b,c)=>{b.exports=a.x("child_process",()=>require("child_process"))},432201,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0}),Object.defineProperty(c,"InvariantError",{enumerable:!0,get:function(){return d}});class d extends Error{constructor(a,b){super(`Invariant: ${a.endsWith(".")?a:a+"."} This is a bug in Next.js.`,b),this.name="InvariantError"}}},933919,(a,b,c)=>{b.exports=a.x("@prisma/client-9249dd53ac5b6a44",()=>require("@prisma/client-9249dd53ac5b6a44"))},761469,a=>{"use strict";var b=a.i(933919);let c=globalThis.prisma??new b.PrismaClient({log:[]}),d=!1;async function e(){return d||(await c.$connect(),await c.$queryRaw`PRAGMA journal_mode=WAL`,await c.$queryRaw`PRAGMA busy_timeout=5000`,d=!0),c}async function f(){try{await c.$disconnect()}catch{}d=!1,await e()}process.on("SIGTERM",()=>{c.$disconnect().catch(()=>{})}),process.on("SIGINT",()=>{c.$disconnect().catch(()=>{})}),a.s(["db",0,c,"resetDbConnection",0,f])},26683,a=>{"use strict";function b(a,b,c,d){let e=new Date().toISOString(),f=`[${e}] ${a.toUpperCase()} [${b}] ${c}`;return d&&Object.keys(d).length>0?`${f} ${JSON.stringify(d)}`:f}a.s(["logger",0,{create:function(a){return{info(c,d){console.log(b("info",a,c,d))},warn(c,d){console.warn(b("warn",a,c,d))},error(c,d,e){console.error(b("error",a,c,d instanceof Error?{...e,error:d.message,stack:d.stack}:{...e,error:String(d)}))}}},info(a,c){console.log(b("info","app",a,c))},warn(a,c){console.warn(b("warn","app",a,c))},error(a,c,d){console.error(b("error","app",a,c instanceof Error?{...d,error:c.message,stack:c.stack}:{...d,error:String(c)}))}}])},319997,a=>{"use strict";let b;var c=a.i(750227),d=a.i(660526),e=a.i(902157);function f(){return b||(b=process.env.TOWER_DATA_DIR||(0,c.join)((0,d.homedir)(),".tower"),(0,e.existsSync)(b)||(0,e.mkdirSync)(b,{recursive:!0})),b}function g(){return(0,c.join)(f(),"storage")}function h(){return(0,c.join)(f(),"storage-location")}function i(){try{let a=(0,e.readFileSync)(h(),"utf-8").trim();return a.length>0?a:null}catch{return null}}a.s(["getBackupsDir",0,function(){let a=(0,c.join)(f(),"backups");return(0,e.existsSync)(a)||(0,e.mkdirSync)(a,{recursive:!0}),a},"getDefaultStorageDir",0,g,"getExtensionsDir",0,function(){let a=(0,c.join)(f(),"extensions");return(0,e.existsSync)(a)||(0,e.mkdirSync)(a,{recursive:!0}),a},"getStorageDir",0,function(){let a=process.env.TOWER_STORAGE_DIR||i(),b=a&&a.length>0?a:g();return(0,e.existsSync)(b)||(0,e.mkdirSync)(b,{recursive:!0}),b},"getTowerDir",0,f,"readStoragePointer",0,i,"writeStoragePointer",0,function(a){let b=h();null===a?(0,e.rmSync)(b,{force:!0}):(0,e.writeFileSync)(b,a,"utf-8")}])},427699,(a,b,c)=>{b.exports=a.x("events",()=>require("events"))},666680,(a,b,c)=>{b.exports=a.x("node:crypto",()=>require("node:crypto"))},912714,(a,b,c)=>{b.exports=a.x("node:fs/promises",()=>require("node:fs/promises"))},687769,(a,b,c)=>{b.exports=a.x("node:events",()=>require("node:events"))},81111,(a,b,c)=>{b.exports=a.x("node:stream",()=>require("node:stream"))},899871,(a,b,c)=>{b.exports=a.x("node:string_decoder",()=>require("node:string_decoder"))},449719,(a,b,c)=>{b.exports=a.x("assert",()=>require("assert"))},500874,(a,b,c)=>{b.exports=a.x("buffer",()=>require("buffer"))},406461,(a,b,c)=>{b.exports=a.x("zlib",()=>require("zlib"))},57328,(a,b,c)=>{b.exports=a.x("node:assert",()=>require("node:assert"))},4634,a=>{"use strict";var b=a.i(815429),c=a.i(761469),d=a.i(188139),e=a.i(26683),f=a.i(630048);let g=["onboarding.completed","onboarding.lastStep","onboarding.username"];async function h(){let a=await c.db.systemConfig.findMany({where:{key:{in:[...g]}}}),b={};for(let c of a)try{b[c.key]=JSON.parse(c.value)}catch{b[c.key]=null}let d=!0===b["onboarding.completed"],e=b["onboarding.lastStep"],f=b["onboarding.username"];return{isFirstRun:!d,isCompleted:d,lastStep:"number"==typeof e?e:0,username:"string"==typeof f&&f.length>0?f:null}}async function i(a){await c.db.systemConfig.upsert({where:{key:"onboarding.lastStep"},create:{key:"onboarding.lastStep",value:JSON.stringify(a)},update:{value:JSON.stringify(a)}}),(0,d.revalidatePath)("/","layout")}async function j(a,b=4){if(await c.db.systemConfig.upsert({where:{key:"onboarding.completed"},create:{key:"onboarding.completed",value:"true"},update:{value:"true"}}),await c.db.systemConfig.upsert({where:{key:"onboarding.lastStep"},create:{key:"onboarding.lastStep",value:String(b)},update:{value:String(b)}}),void 0!==a){let b=a.trim().slice(0,64).replace(/[\r\n]/g," ");b.length>0&&await c.db.systemConfig.upsert({where:{key:"onboarding.username"},create:{key:"onboarding.username",value:JSON.stringify(b)},update:{value:JSON.stringify(b)}})}(0,d.revalidatePath)("/","layout")}async function k(a,b){await c.db.systemConfig.upsert({where:{key:"onboarding.extensions.requested"},create:{key:"onboarding.extensions.requested",value:JSON.stringify(a)},update:{value:JSON.stringify(a)}}),await c.db.systemConfig.upsert({where:{key:"onboarding.extensions.completed"},create:{key:"onboarding.extensions.completed",value:JSON.stringify(b)},update:{value:JSON.stringify(b)}}),(0,d.revalidatePath)("/","layout")}async function l(b){try{e.logger.create("task-completion").info("Task completion event dispatched",{taskId:b.taskId,taskTitle:b.taskTitle,status:b.status,executionId:b.executionId});let{broadcastNotification:c}=await a.A(904454);c({...b,type:"completion"})}catch{}}(0,f.ensureServerEntryExports)([h,i,j,k,l]),(0,b.registerServerReference)(h,"00592b2050dca8305e2268efac020dae8b2fdb5ee0",null),(0,b.registerServerReference)(i,"40f772df9c5ef70aa3f0c91a6dc2716b97ed40d3a1",null),(0,b.registerServerReference)(j,"60d40c8f11280124b357c0af9e03f73ddef4889dc1",null),(0,b.registerServerReference)(k,"6049009cebae9501b35174bc10f6e95392e15c1415",null),(0,b.registerServerReference)(l,"4057ffbbbeabb40cc3e03af5715687d8e537dc4639",null),a.s(["completeOnboarding",0,j,"dispatchTaskCompletionEvent",0,l,"getOnboardingStatus",0,h,"setOnboardingExtensions",0,k,"setOnboardingProgress",0,i])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__05sv58d._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[980738,(a,b,c)=>{b.exports=a.x("node-pty-c710df912a232c01",()=>require("node-pty-c710df912a232c01"))},433541,a=>a.a(async(b,c)=>{try{let b=await a.y("ws-4df7fc762dfa9a52");a.n(b),c()}catch(a){c(a)}},!0),504446,(a,b,c)=>{b.exports=a.x("net",()=>require("net"))},42847,a=>{"use strict";var b=a.i(980738),c=a.i(163812);class d{taskId;_pty;killed=!1;disconnectTimer=null;_buffer="";static BUFFER_MAX=51200;_onData;_exitListeners=[];_idleTimer=null;_idleThresholdMs;_onIdle;_idleFired=!1;constructor(a,e,f,g,h,i,j,k,l){this.taskId=a,this._onData=h,this._onIdle=k??null,this._idleThresholdMs=Math.max(l??18e4,18e4);const m={...(0,c.stripClaudeNestingEnv)((0,c.ensurePathInEnv)(process.env)),TERM:"xterm-color",...j};try{this._pty=b.spawn(e,f,{name:"xterm-color",cols:80,rows:24,cwd:g,env:m})}catch(a){throw console.error(`[pty] spawn failed: command="${e}", cwd="${g}", PATH="${m.PATH?.slice(0,200)}"`),a}this._pty.onData(a=>{this._buffer+=a,this._buffer.length>d.BUFFER_MAX&&(this._buffer=this._buffer.slice(this._buffer.length-d.BUFFER_MAX)),this._resetIdleTimer(),this._onData(a)}),this._pty.onExit(({exitCode:a,signal:b})=>{for(let c of(this.killed=!0,this._idleTimer&&(clearTimeout(this._idleTimer),this._idleTimer=null),i(a,b),this._exitListeners))c(a)}),this._resetIdleTimer()}_resetIdleTimer(){this._idleTimer&&(clearTimeout(this._idleTimer),this._idleTimer=null),null===this._onIdle||this.killed||this._idleFired||(this._idleTimer=setTimeout(()=>{this._idleFired=!0,this._onIdle?.()},this._idleThresholdMs))}setDataListener(a){this._onData=a}setExitListener(a){this._exitListeners=[a]}write(a){this.killed||(this._resetIdleTimer(),this._pty.write(a))}resize(a,b){this.killed||this._pty.resize(a,b)}getBuffer(){return this._buffer}get isIdle(){return this._idleFired}kill(a){if(!this.killed){this.killed=!0,this._idleTimer&&(clearTimeout(this._idleTimer),this._idleTimer=null);try{this._pty.kill(a)}catch{}}}forceKill(){try{this._pty.kill("SIGKILL")}catch{}this.killed=!0}}a.s(["PtySession",0,d])},962620,a=>{"use strict";var b=a.i(42847),c=a.i(163812);let d=globalThis;d.__ptySessions||(d.__ptySessions=new Map);let e=d.__ptySessions;function f(a){let b=e.get(a);b&&(e.delete(a),b.disconnectTimer&&(clearTimeout(b.disconnectTimer),b.disconnectTimer=null),b.kill())}function g(){for(let a of e.keys())f(a)}let h=globalThis;"phase-production-build"===process.env.NEXT_PHASE||h.__ptySignalHandlersRegistered||(h.__ptySignalHandlersRegistered=!0,process.once("SIGTERM",()=>{console.error("[session-store] SIGTERM received — cleaning up PTY sessions"),g()}),process.once("SIGINT",()=>{console.error("[session-store] SIGINT received — cleaning up PTY sessions"),g()})),a.s(["createSession",0,function(a,d,g,h,i,j,k,l,m){f(a);let{command:n,args:o}=(0,c.resolveSpawnTargetSync)(d,g),p=new b.PtySession(a,n,o,h,i,j,k,l,m);return e.set(a,p),p},"destroyAllSessions",0,g,"destroySession",0,f,"getSession",0,function(a){return e.get(a)}])},312369,a=>{"use strict";var b=a.i(761469);async function c(a,c){let d=await b.db.systemConfig.findUnique({where:{key:a}});if(!d)return c;try{return JSON.parse(d.value)}catch{return c}}a.s(["readConfigValue",0,c])},830296,a=>{"use strict";a.s(["CONFIG_DEFAULTS",0,{"git.pathMappingRules":{defaultValue:[],type:"object",label:"Git Path Mapping Rules"},"system.maxUploadBytes":{defaultValue:0x3200000,type:"number",label:"Max Upload Size (bytes)"},"system.maxConcurrentExecutions":{defaultValue:20,type:"number",label:"Max Concurrent Executions"},"system.maxReadableFileBytes":{defaultValue:5242880,type:"number",label:"Max Readable File Size (bytes)"},"system.backupDir":{defaultValue:"",type:"string",label:"Backup Directory"},"git.timeoutSec":{defaultValue:30,type:"number",label:"Git Operation Timeout (seconds)"},"search.resultLimit":{defaultValue:20,type:"number",label:"Search Result Limit"},"search.allModeCap":{defaultValue:5,type:"number",label:"All-Mode Per-Type Cap"},"search.debounceMs":{defaultValue:250,type:"number",label:"Search Debounce (ms)"},"search.snippetLength":{defaultValue:80,type:"number",label:"Snippet Length (characters)"},"search.codeTimeoutSec":{defaultValue:30,type:"number",label:"Code Search Timeout (seconds)"},"board.archiveDelayDays":{defaultValue:7,type:"number",label:"Archive Delay (days)"},"missions.grid.minCols":{defaultValue:1,type:"number",label:"Grid Min Columns"},"missions.grid.maxCols":{defaultValue:5,type:"number",label:"Grid Max Columns"},"missions.grid.minRows":{defaultValue:1,type:"number",label:"Grid Min Rows"},"missions.grid.maxRows":{defaultValue:5,type:"number",label:"Grid Max Rows"},"terminal.app":{defaultValue:"Terminal",type:"string",label:"Default Terminal App"},"editor.command":{defaultValue:"",type:"string",label:"Default Editor Command"},"terminal.wsPort":{defaultValue:3001,type:"number",label:"WebSocket Port"},"terminal.idleTimeoutSec":{defaultValue:180,type:"number",label:"Idle Timeout (seconds)"},"terminal.fontSize":{defaultValue:13,type:"number",label:"Terminal Font Size"},"terminal.fontFamily":{defaultValue:"Menlo, Monaco, 'Courier New', monospace",type:"string",label:"Terminal Font Family"},"assistant.systemPrompt":{defaultValue:'You are Tower Assistant — the built-in AI operator for the Tower task management platform.\n\n## Identity\n- You are a task management operator, NOT a coding assistant.\n- You can ONLY use Tower MCP tools. You CANNOT read files, edit code, run shell commands, or search the web.\n- Always respond in the same language the user uses.\n\n## Capabilities\nWhen users ask what you can do, respond with EXACTLY these 6 groups. Translate to the user\'s language.\n\n1. **Workspace & Project** — View, create, update, delete workspaces and projects. Search projects and repositories.\n2. **Task Management** — Create tasks (priority, labels, worktree branch isolation, sub-path, auto-start). Move task status (TODO → IN_PROGRESS → IN_REVIEW → DONE / CANCELLED). Update task info and labels.\n3. **Execution Monitor** — Start task execution, check execution status, get terminal output, send commands to running terminals.\n4. **Daily Report & Todo** — Generate daily work summary (completed + in-progress). View pending task list sorted by priority.\n5. **Labels & Notes & Assets** — Manage workspace labels, project notes, and file attachments.\n6. **Global Search** — Search tasks, projects, repositories, notes, and assets by keyword.\n\nDo NOT list any capabilities beyond the above. Do NOT mention code editing, debugging, testing, git operations, or any development capabilities.\n\n## Scope Boundary\nIf the user asks you to write code, explain code, debug, search the web, read/write files, or anything outside Tower task management, reply:\n"抱歉,我只能帮你管理工作区、项目和任务。编码、调试等操作请在任务终端中完成。"',type:"string",label:"Assistant System Prompt"},"assistant.displayMode":{defaultValue:"sidebar",type:"string",label:"Assistant Display Mode"},"assistant.communicationMode":{defaultValue:"chat",type:"string",label:"Assistant Communication Mode"},"task.defaultUseWorktree":{defaultValue:!0,type:"boolean",label:"Default: Use Worktree"},"task.defaultAutoStart":{defaultValue:!1,type:"boolean",label:"Default: Auto-start Execution"},"task.mcpDefaultsConfigured":{defaultValue:!1,type:"boolean",label:"MCP Task Defaults Configured"}}])},279697,a=>{"use strict";function b(a,b){let c=new Date(b);c.setHours(0,0,0,0);let d=new Date(c);return d.setDate(d.getDate()-(a-1)),{startOfToday:c,doneCutoff:d}}a.s(["ARCHIVE_DELAY_KEY",0,"board.archiveDelayDays","DEFAULT_ARCHIVE_DELAY_DAYS",0,7,"archivedTaskWhere",0,function(a,c=new Date){let{startOfToday:d,doneCutoff:e}=b(a,c);return{status:{in:["DONE","CANCELLED"]},OR:[{status:"CANCELLED",updatedAt:{lt:d}},{status:"DONE",doneAt:{lt:e}},{status:"DONE",doneAt:null}]}},"normalizeArchiveDelayDays",0,function(a){let b=Math.floor(Number(a));return Number.isFinite(b)?Math.min(Math.max(b,1),365):7},"visibleTaskWhere",0,function(a,c=new Date){let{startOfToday:d,doneCutoff:e}=b(a,c);return{OR:[{status:{notIn:["DONE","CANCELLED"]}},{status:"CANCELLED",updatedAt:{gte:d}},{status:"DONE",doneAt:{gte:e}}]}}])},980999,a=>a.a(async(b,c)=>{try{var d=a.i(815429),e=a.i(761469),f=a.i(830296),g=a.i(279697),h=a.i(989927),i=a.i(163812),j=a.i(823615),k=a.i(630048),l=b([j]);async function m(a,b){let c=await e.db.systemConfig.findUnique({where:{key:a}});if(!c)return b;try{return JSON.parse(c.value)}catch{return b}}async function n(a,b){await e.db.systemConfig.upsert({where:{key:a},create:{key:a,value:JSON.stringify(b)},update:{value:JSON.stringify(b)}})}async function o(){let a=await m(g.ARCHIVE_DELAY_KEY,g.DEFAULT_ARCHIVE_DELAY_DAYS);return(0,g.normalizeArchiveDelayDays)(a)}async function p(a){let b=a.trim();if(!b)return{path:"",source:"empty"};try{let a=await m("git.pathMappingRules",[]),c=(0,h.matchGitPathRule)(b,a);if(c)return{path:c,source:"rule"};return{path:(0,h.gitUrlToLocalPath)(b),source:"fallback"}}catch{return{path:(0,h.gitUrlToLocalPath)(b),source:"fallback"}}}async function q(a){let{path:b}=await p(a);return b}async function r(a){let b=await e.db.systemConfig.findMany({where:{key:{in:a}}}),c=Object.fromEntries(b.map(a=>{try{return[a.key,JSON.parse(a.value)]}catch{return[a.key,null]}})),d={};for(let b of a)d[b]=b in c?c[b]:f.CONFIG_DEFAULTS[b]?.defaultValue??null;return d}async function s(){return(0,i.detectShells)()}async function t(){return(0,i.detectTerminalApps)()}async function u(){return(0,i.detectEditors)()}async function v(){return{platform:process.platform}}async function w(){let a=(0,j.getActiveWsPort)();if(null!==a)return a;let b=parseInt(process.env.PORT||"3000",10);return m("terminal.wsPort",b+1)}[j]=l.then?(await l)():l,(0,k.ensureServerEntryExports)([m,n,o,p,q,r,s,t,u,v,w]),(0,d.registerServerReference)(m,"60d2d75acc239bcc3016922e2bcf473c4b443f3ca9",null),(0,d.registerServerReference)(n,"60b661b64158203fc3f2bfee77e830c7f050c1d9c7",null),(0,d.registerServerReference)(o,"003f9d5fdf8fb396447637bdd5abc276e2ff990e7a",null),(0,d.registerServerReference)(p,"404e7cc0e8e3765926dd1f7911020f0d67988d9696",null),(0,d.registerServerReference)(q,"403c3eb99fad3fed76d481d40f018e89b581ec53ea",null),(0,d.registerServerReference)(r,"40bd6bd14273f742080b119c49ce1ae4226a0ea9ae",null),(0,d.registerServerReference)(s,"009eb01594df9b75b93002e86c595d5631bc8ed4a1",null),(0,d.registerServerReference)(t,"00a9b88fdb6f5d2ed889612ced6fe0412b32143347",null),(0,d.registerServerReference)(u,"00fc8b1d62e542629a0e6007ad82949d0c44f5f5d6",null),(0,d.registerServerReference)(v,"0036cbe219e738f8cbdffb75cb454d4b5b1adfacb2",null),(0,d.registerServerReference)(w,"003cda51028de7d8ca1763a51d13223b9acbae6c96",null),a.s(["getActualWsPort",0,w,"getArchiveDelayDays",0,o,"getAvailableEditors",0,u,"getAvailableShells",0,s,"getAvailableTerminalApps",0,t,"getConfigValue",0,m,"getConfigValues",0,r,"getPlatformInfo",0,v,"resolveGitLocalPath",0,q,"resolveGitLocalPathWithSource",0,p,"setConfigValue",0,n]),c()}catch(a){c(a)}},!1),495370,a=>{"use strict";var b=a.i(815429),c=a.i(761469),d=a.i(188139),e=a.i(352475);async function f(a){return c.db.label.findMany({where:{OR:[{isBuiltin:!0},{workspaceId:a}]},orderBy:[{isBuiltin:"desc"},{name:"asc"}]})}async function g(a){let b=e.createLabelSchema.parse(a),f=await c.db.label.create({data:{name:b.name,color:b.color,workspaceId:b.workspaceId}});return(0,d.revalidatePath)("/workspaces"),f}async function h(a){let b=await c.db.label.findUnique({where:{id:a}});if(!b)throw Error("Label not found");if(b.isBuiltin)throw Error("Cannot delete builtin labels");await c.db.label.delete({where:{id:a}}),(0,d.revalidatePath)("/workspaces")}async function i(a,b){await c.db.$transaction(async c=>{await c.taskLabel.deleteMany({where:{taskId:a}}),b.length>0&&await c.taskLabel.createMany({data:b.map(b=>({taskId:a,labelId:b}))})}),(0,d.revalidatePath)("/workspaces")}async function j(a){return(await c.db.taskLabel.findMany({where:{taskId:a},include:{label:!0}})).map(a=>a.label)}(0,a.i(630048).ensureServerEntryExports)([f,g,h,i,j]),(0,b.registerServerReference)(f,"403b5916a159649caf9f3f60a8a609eff6478fbbb3",null),(0,b.registerServerReference)(g,"40787eafcd84a6469dab06156a248a9fe75248326d",null),(0,b.registerServerReference)(h,"4010642c30732cf2c92871a2410bf6c83ad967b50d",null),(0,b.registerServerReference)(i,"60775e9b84ebb45fe49a00b26020950edf733eceec",null),(0,b.registerServerReference)(j,"40db7cf675311187c928e7e098ab036e70c422d02b",null),a.s(["createLabel",0,g,"deleteLabel",0,h,"getLabelsForWorkspace",0,f,"getTaskLabels",0,j,"setTaskLabels",0,i])}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0gzafdq._.js.map
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
module.exports=[750227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},579834,a=>{"use strict";var b=a.i(728778),c=a.i(368114);a.s(["EmptyState",0,function({icon:a,title:d,description:e,action:f,className:g}){return(0,b.jsxs)("div",{className:(0,c.cn)("flex h-48 flex-col items-center justify-center gap-2 text-center",g),children:[a&&(0,b.jsx)(a,{className:"h-10 w-10 text-muted-foreground/40"}),(0,b.jsx)("p",{className:"text-sm font-medium text-muted-foreground",children:d}),e&&(0,b.jsx)("p",{className:"text-xs text-muted-foreground/60",children:e}),f&&(0,b.jsx)("div",{className:"mt-2",children:f})]})}])},264589,a=>{"use strict";let b=(0,a.i(711796).default)("package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);a.s(["Package",0,b],264589)},10390,a=>{"use strict";var b=a.i(421992);a.s(["ChevronRight",()=>b.default])},648512,a=>{"use strict";let b=(0,a.i(711796).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",0,b],648512)},912868,a=>{"use strict";let b=(0,a.i(711796).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);a.s(["ChevronLeft",0,b],912868)},747798,a=>{"use strict";let b=(0,a.i(711796).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);a.s(["RotateCcw",0,b],747798)},786304,a=>{"use strict";var b=a.i(475295),c=a.i(213200),d=a.i(142261),e=a.i(368114);let f=(0,d.cva)("group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",secondary:"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",destructive:"bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20",outline:"border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",ghost:"hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",link:"text-primary underline-offset-4 hover:underline"}},defaultVariants:{variant:"default"}});a.s(["Badge",0,function({className:a,variant:d="default",render:g,...h}){var i;return i={defaultTagName:"span",props:(0,b.mergeProps)({className:(0,e.cn)(f({variant:d}),a)},h),render:g,state:{slot:"badge",variant:d}},(0,c.useRenderElement)(i.defaultTagName??"div",i,i)}],786304)},435393,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40bd6bd14273f742080b119c49ce1ae4226a0ea9ae",b.callServer,void 0,b.findSourceMapURL,"getConfigValues");a.s(["getConfigValues",0,c])},412783,22761,a=>{"use strict";var b=a.i(728778),c=a.i(368114);a.s(["Label",0,function({className:a,...d}){return(0,b.jsx)("label",{"data-slot":"label",className:(0,c.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",a),...d})}],412783);let d=(0,a.i(711796).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);a.s(["Copy",0,d],22761)},269280,a=>{"use strict";let b=(0,a.i(711796).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",0,b],269280)},509405,a=>{"use strict";let b=(0,a.i(711796).default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",0,b],509405)},751838,901759,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("402267c2c38e93dab04259f43e1a7495e1628abd45",b.callServer,void 0,b.findSourceMapURL,"openInFileManager");a.s(["openInFileManager",0,c],751838);let d=(0,b.createServerReference)("40efafaef4f35ec883fb17805980ce195985954dd2",b.callServer,void 0,b.findSourceMapURL,"openInEditor");a.s(["openInEditor",0,d],901759)},165614,a=>{"use strict";let b=(0,a.i(711796).default)("circle-play",[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);a.s(["PlayCircle",0,b],165614)},625892,939859,a=>{"use strict";var b=a.i(711796);let c=(0,b.default)("folder-search",[["path",{d:"M10.7 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v4.1",key:"1bw5m7"}],["path",{d:"m21 21-1.9-1.9",key:"1g2n9r"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}]]);a.s(["FolderSearch",0,c],625892);let d=(0,b.default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);a.s(["Code",0,d],939859)},551578,a=>{"use strict";var b=a.i(728778);let c=(0,a.i(711796).default)("milestone",[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M12 3v3",key:"1n5kay"}],["path",{d:"M18.172 6a2 2 0 0 1 1.414.586l2.06 2.06a1.207 1.207 0 0 1 0 1.708l-2.06 2.06a2 2 0 0 1-1.414.586H4a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1z",key:"8gz4t4"}]]);var d=a.i(951192);let e=["bg-sky-500/20 text-sky-300 border border-sky-500/30","bg-amber-500/20 text-amber-300 border border-amber-500/30","bg-violet-500/20 text-violet-300 border border-violet-500/30","bg-emerald-500/20 text-emerald-300 border border-emerald-500/30","bg-rose-500/20 text-rose-300 border border-rose-500/30","bg-cyan-500/20 text-cyan-300 border border-cyan-500/30","bg-indigo-500/20 text-indigo-300 border border-indigo-500/30"];function f(a){return e[function(a){let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)>>>0;return b}(a)%e.length]}let g={PLANNED:"bg-slate-500/20 text-slate-300 border border-slate-500/30",ACTIVE:"bg-emerald-500/20 text-emerald-300 border border-emerald-500/30",RELEASED:"bg-zinc-500/20 text-zinc-400 border border-zinc-500/30"};a.s(["TaskVersionTag",0,function({number:a,name:d,showName:e=!1,className:f="",title:g}){return(0,b.jsxs)("span",{className:`inline-flex items-center gap-1 rounded-md border border-border bg-muted px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground ${f}`,title:g??(d?`${a} \xb7 ${d}`:a),children:[(0,b.jsx)(c,{className:"h-2.5 w-2.5 shrink-0"}),(0,b.jsx)("span",{className:"font-mono",children:a}),e&&d?(0,b.jsx)("span",{className:"max-w-[140px] truncate",children:d}):null]})},"VersionStatusBadge",0,function({status:a}){let{t:c}=(0,d.useI18n)();return(0,b.jsx)("span",{className:`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${g[a]}`,children:c(`version.status.${a}`)})},"VersionTypeBadge",0,function({name:a}){let{t:c}=(0,d.useI18n)();return a?(0,b.jsx)("span",{className:`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${f(a)}`,children:a}):(0,b.jsx)("span",{className:"inline-flex items-center rounded-full border border-border bg-muted/40 px-2 py-0.5 text-xs font-medium text-muted-foreground",children:c("version.type.uncategorized")})},"typeBadgeColor",0,f],551578)},865011,a=>{"use strict";var b=a.i(728778),c=a.i(634910),d=a.i(553798),e=a.i(269280),f=a.i(350739),g=a.i(347165),h=a.i(607219),i=a.i(951192);let j=[{key:"notes",icon:f.FileText},{key:"assets",icon:g.FolderOpen},{key:"archive",icon:h.Archive}];a.s(["SubPageNav",0,function({workspaceId:a}){let{t:f}=(0,i.useI18n)(),g=(0,d.usePathname)(),h=j.find(a=>g.includes(`/${a.key}`))?.key;return(0,b.jsxs)("div",{className:"header-sm flex items-center gap-1 px-4",children:[(0,b.jsxs)(c.default,{href:`/workspaces/${a}`,className:"mr-2 inline-flex h-8 items-center gap-1.5 rounded-md px-2 text-xs text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",children:[(0,b.jsx)(e.ArrowLeft,{className:"h-3.5 w-3.5"}),(0,b.jsx)("span",{children:f("archive.backToBoard")})]}),(0,b.jsx)("span",{className:"mr-2 h-4 w-px bg-border"}),j.map(d=>{let e=d.icon,g=h===d.key;return(0,b.jsxs)(c.default,{href:`/workspaces/${a}/${d.key}`,className:`inline-flex h-8 items-center gap-1.5 rounded-md px-3 text-xs font-medium transition-colors ${g?"bg-accent text-foreground":"text-muted-foreground hover:bg-accent/50 hover:text-foreground"}`,children:[(0,b.jsx)(e,{className:"h-3.5 w-3.5"}),(0,b.jsx)("span",{children:f(`sidebar.${d.key}`)})]},d.key)})]})}])},324954,a=>{"use strict";let b=(0,a.i(711796).default)("upload",[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]]);a.s(["Upload",0,b],324954)},731333,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40210797f0040786db86f0d815003f858cbb40f2c4",b.callServer,void 0,b.findSourceMapURL,"deleteAsset");a.s(["deleteAsset",0,c])},931739,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("403aef25069f4957dd5bd16a162617f05e9de9b04c",b.callServer,void 0,b.findSourceMapURL,"uploadAsset");a.s(["uploadAsset",0,c])},574046,a=>{a.v(b=>Promise.all(["server/chunks/ssr/04y0_streamdown_dist_highlighted-body-OFNGDK62_0dm8t_v.js"].map(b=>a.l(b))).then(()=>b(514138)))},170967,a=>{a.v(b=>Promise.all(["server/chunks/ssr/04y0_streamdown_dist_mermaid-GHXKKRXX_0oxtju0.js"].map(b=>a.l(b))).then(()=>b(729004)))}];
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0i0o7w5._.js.map
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
module.exports=[750227,(a,b,c)=>{b.exports=a.x("node:path",()=>require("node:path"))},264589,a=>{"use strict";let b=(0,a.i(711796).default)("package",[["path",{d:"M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z",key:"1a0edw"}],["path",{d:"M12 22V12",key:"d0xqtd"}],["polyline",{points:"3.29 7 12 12 20.71 7",key:"ousv84"}],["path",{d:"m7.5 4.27 9 5.15",key:"1c824w"}]]);a.s(["Package",0,b],264589)},10390,a=>{"use strict";var b=a.i(421992);a.s(["ChevronRight",()=>b.default])},648512,a=>{"use strict";let b=(0,a.i(711796).default)("terminal",[["path",{d:"M12 19h8",key:"baeox8"}],["path",{d:"m4 17 6-6-6-6",key:"1yngyt"}]]);a.s(["Terminal",0,b],648512)},912868,a=>{"use strict";let b=(0,a.i(711796).default)("chevron-left",[["path",{d:"m15 18-6-6 6-6",key:"1wnfg3"}]]);a.s(["ChevronLeft",0,b],912868)},786304,a=>{"use strict";var b=a.i(475295),c=a.i(213200),d=a.i(142261),e=a.i(368114);let f=(0,d.cva)("group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-4xl border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!",{variants:{variant:{default:"bg-primary text-primary-foreground [a]:hover:bg-primary/80",secondary:"bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",destructive:"bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20",outline:"border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",ghost:"hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",link:"text-primary underline-offset-4 hover:underline"}},defaultVariants:{variant:"default"}});a.s(["Badge",0,function({className:a,variant:d="default",render:g,...h}){var i;return i={defaultTagName:"span",props:(0,b.mergeProps)({className:(0,e.cn)(f({variant:d}),a)},h),render:g,state:{slot:"badge",variant:d}},(0,c.useRenderElement)(i.defaultTagName??"div",i,i)}],786304)},747798,a=>{"use strict";let b=(0,a.i(711796).default)("rotate-ccw",[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]]);a.s(["RotateCcw",0,b],747798)},435393,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("40bd6bd14273f742080b119c49ce1ae4226a0ea9ae",b.callServer,void 0,b.findSourceMapURL,"getConfigValues");a.s(["getConfigValues",0,c])},412783,22761,a=>{"use strict";var b=a.i(728778),c=a.i(368114);a.s(["Label",0,function({className:a,...d}){return(0,b.jsx)("label",{"data-slot":"label",className:(0,c.cn)("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",a),...d})}],412783);let d=(0,a.i(711796).default)("copy",[["rect",{width:"14",height:"14",x:"8",y:"8",rx:"2",ry:"2",key:"17jyea"}],["path",{d:"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2",key:"zix9uf"}]]);a.s(["Copy",0,d],22761)},269280,a=>{"use strict";let b=(0,a.i(711796).default)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]]);a.s(["ArrowLeft",0,b],269280)},551578,a=>{"use strict";var b=a.i(728778);let c=(0,a.i(711796).default)("milestone",[["path",{d:"M12 13v8",key:"1l5pq0"}],["path",{d:"M12 3v3",key:"1n5kay"}],["path",{d:"M18.172 6a2 2 0 0 1 1.414.586l2.06 2.06a1.207 1.207 0 0 1 0 1.708l-2.06 2.06a2 2 0 0 1-1.414.586H4a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1z",key:"8gz4t4"}]]);var d=a.i(951192);let e=["bg-sky-500/20 text-sky-300 border border-sky-500/30","bg-amber-500/20 text-amber-300 border border-amber-500/30","bg-violet-500/20 text-violet-300 border border-violet-500/30","bg-emerald-500/20 text-emerald-300 border border-emerald-500/30","bg-rose-500/20 text-rose-300 border border-rose-500/30","bg-cyan-500/20 text-cyan-300 border border-cyan-500/30","bg-indigo-500/20 text-indigo-300 border border-indigo-500/30"];function f(a){return e[function(a){let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)>>>0;return b}(a)%e.length]}let g={PLANNED:"bg-slate-500/20 text-slate-300 border border-slate-500/30",ACTIVE:"bg-emerald-500/20 text-emerald-300 border border-emerald-500/30",RELEASED:"bg-zinc-500/20 text-zinc-400 border border-zinc-500/30"};a.s(["TaskVersionTag",0,function({number:a,name:d,showName:e=!1,className:f="",title:g}){return(0,b.jsxs)("span",{className:`inline-flex items-center gap-1 rounded-md border border-border bg-muted px-1.5 py-0.5 text-[10px] font-medium text-muted-foreground ${f}`,title:g??(d?`${a} \xb7 ${d}`:a),children:[(0,b.jsx)(c,{className:"h-2.5 w-2.5 shrink-0"}),(0,b.jsx)("span",{className:"font-mono",children:a}),e&&d?(0,b.jsx)("span",{className:"max-w-[140px] truncate",children:d}):null]})},"VersionStatusBadge",0,function({status:a}){let{t:c}=(0,d.useI18n)();return(0,b.jsx)("span",{className:`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${g[a]}`,children:c(`version.status.${a}`)})},"VersionTypeBadge",0,function({name:a}){let{t:c}=(0,d.useI18n)();return a?(0,b.jsx)("span",{className:`inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${f(a)}`,children:a}):(0,b.jsx)("span",{className:"inline-flex items-center rounded-full border border-border bg-muted/40 px-2 py-0.5 text-xs font-medium text-muted-foreground",children:c("version.type.uncategorized")})},"typeBadgeColor",0,f],551578)},751838,901759,a=>{"use strict";var b=a.i(780410);let c=(0,b.createServerReference)("402267c2c38e93dab04259f43e1a7495e1628abd45",b.callServer,void 0,b.findSourceMapURL,"openInFileManager");a.s(["openInFileManager",0,c],751838);let d=(0,b.createServerReference)("40efafaef4f35ec883fb17805980ce195985954dd2",b.callServer,void 0,b.findSourceMapURL,"openInEditor");a.s(["openInEditor",0,d],901759)},165614,a=>{"use strict";let b=(0,a.i(711796).default)("circle-play",[["path",{d:"M9 9.003a1 1 0 0 1 1.517-.859l4.997 2.997a1 1 0 0 1 0 1.718l-4.997 2.997A1 1 0 0 1 9 14.996z",key:"kmsa83"}],["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]]);a.s(["PlayCircle",0,b],165614)},625892,939859,a=>{"use strict";var b=a.i(711796);let c=(0,b.default)("folder-search",[["path",{d:"M10.7 20H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v4.1",key:"1bw5m7"}],["path",{d:"m21 21-1.9-1.9",key:"1g2n9r"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}]]);a.s(["FolderSearch",0,c],625892);let d=(0,b.default)("code",[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]]);a.s(["Code",0,d],939859)},509405,a=>{"use strict";let b=(0,a.i(711796).default)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Eye",0,b],509405)},207339,a=>{"use strict";let b=(0,a.i(711796).default)("git-commit-horizontal",[["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}],["line",{x1:"3",x2:"9",y1:"12",y2:"12",key:"1dyftd"}],["line",{x1:"15",x2:"21",y1:"12",y2:"12",key:"oup4p8"}]]);a.s(["GitCommitHorizontal",0,b],207339)},394869,a=>{"use strict";let b=(0,a.i(711796).default)("git-compare",[["circle",{cx:"18",cy:"18",r:"3",key:"1xkwt0"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["path",{d:"M13 6h3a2 2 0 0 1 2 2v7",key:"1yeb86"}],["path",{d:"M11 18H8a2 2 0 0 1-2-2V9",key:"19pyzm"}]]);a.s(["GitCompare",0,b],394869)},945513,(a,b,c)=>{b.exports=a=>{if(!a||"string"!=typeof a||a.match(/^\s+$/))return[];let b=a.split(`
|
|
2
|
-
`);if(0===b.length)return[];let c=[],d=null,e=null,g=0,i=0,j=null,k=a=>{let[b,e]=f(a)??[];d={chunks:[],deletions:0,additions:0,from:b,to:e},c.push(d)},l=()=>{(!d||d.chunks.length)&&k()},m=a=>{if(!e)return;let[b]=e.changes.slice(-1);e.changes.push({type:b.type,[b.type]:!0,ln1:b.ln1,ln2:b.ln2,ln:b.ln,content:a})},n=[[/^diff\s/,k],[/^new file mode (\d+)$/,(a,b)=>{l(),d.new=!0,d.newMode=b[1],d.from="/dev/null"}],[/^deleted file mode (\d+)$/,(a,b)=>{l(),d.deleted=!0,d.oldMode=b[1],d.to="/dev/null"}],[/^old mode (\d+)$/,(a,b)=>{l(),d.oldMode=b[1]}],[/^new mode (\d+)$/,(a,b)=>{l(),d.newMode=b[1]}],[/^index\s[\da-zA-Z]+\.\.[\da-zA-Z]+(\s(\d+))?$/,(a,b)=>{l(),d.index=a.split(" ").slice(1),b[1]&&(d.oldMode=d.newMode=b[1].trim())}],[/^---\s/,a=>{l(),d.from=h(a)}],[/^\+\+\+\s/,a=>{l(),d.to=h(a)}],[/^@@\s+-(\d+),?(\d+)?\s+\+(\d+),?(\d+)?\s@@/,(a,b)=>{d||k(a);let[c,f,h,l]=b.slice(1);g=+c,i=+h,e={content:a,changes:[],oldStart:+c,oldLines:+(f||1),newStart:+h,newLines:+(l||1)},j={oldLines:+(f||1),newLines:+(l||1)},d.chunks.push(e)}],[/^\$/,m]],o=[[/^\$/,m],[/^-/,a=>{e&&(e.changes.push({type:"del",del:!0,ln:g++,content:a}),d.deletions++,j.oldLines--)}],[/^\+/,a=>{e&&(e.changes.push({type:"add",add:!0,ln:i++,content:a}),d.additions++,j.newLines--)}],[/^\s*/,a=>{e?.changes.push({type:"normal",normal:!0,ln1:g++,ln2:i++,content:a}),j.oldLines--,j.newLines--}]],p=a=>{j?(a=>{for(let[b,c]of o){let d=a.match(b);if(d){c(a,d);break}}0===j.oldLines&&0===j.newLines&&(j=null)})(a):(a=>{for(let[b,c]of n){let d=a.match(b);if(d){c(a,d);break}}})(a)};for(let a of b)p(a);return c};let d=/(a|i|w|c|o|1|2)\/.*(?=["']? ["']?(b|i|w|c|o|1|2)\/)|(b|i|w|c|o|1|2)\/.*$/g,e=/^(a|b|i|w|c|o|1|2)\//,f=a=>a?.match(d)?.map(a=>a.replace(e,"").replace(/("|')$/,"")),g=/^\\?['"]|\\?['"]$/g,h=a=>{let b=i(a,"-+").trim();return(b=k(b)).replace(g,"").replace(e,"")},i=(a,b)=>{if(a=m(a),!b&&String.prototype.trimLeft)return a.trimLeft();let c=l(b);return a.replace(RegExp(`^${c}+`),"")},j=/\t.*|\d{4}-\d\d-\d\d\s\d\d:\d\d:\d\d(.\d+)?\s(\+|-)\d\d\d\d/,k=a=>{let b=j.exec(a);return b&&(a=a.substring(0,b.index).trim()),a},l=a=>null==a?"\\s":a instanceof RegExp?a.source:`[${m(a).replace(/([.*+?^=!:${}()|[\]/\\])/g,"\\$1")}]`,m=a=>`${a??""}`},514872,a=>{"use strict";var b=a.i(945513);function c(a){return a.replace(/\r\n/g,"\n")}a.s(["normalizeLF",0,c,"parseUnifiedDiff",0,function(a){return(0,b.default)(c(a))}])},574046,a=>{a.v(b=>Promise.all(["server/chunks/ssr/04y0_streamdown_dist_highlighted-body-OFNGDK62_0dm8t_v.js"].map(b=>a.l(b))).then(()=>b(514138)))},170967,a=>{a.v(b=>Promise.all(["server/chunks/ssr/04y0_streamdown_dist_mermaid-GHXKKRXX_0oxtju0.js"].map(b=>a.l(b))).then(()=>b(729004)))}];
|
|
3
|
-
|
|
4
|
-
//# sourceMappingURL=%5Broot-of-the-server%5D__0kgd-1s._.js.map
|