vibepulse 0.2.2 → 0.3.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/BUILD_ID +1 -1
- package/.next/app-path-routes-manifest.json +1 -0
- package/.next/build-manifest.json +2 -2
- package/.next/cache/.previewinfo +1 -1
- package/.next/cache/.rscinfo +1 -1
- package/.next/cache/.tsbuildinfo +1 -1
- package/.next/cache/config.json +3 -3
- package/.next/fallback-build-manifest.json +2 -2
- package/.next/prerender-manifest.json +3 -3
- package/.next/routes-manifest.json +8 -0
- package/.next/server/app/_global-error/page.js +1 -1
- package/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/server/app/_global-error.html +2 -2
- package/.next/server/app/_global-error.rsc +1 -1
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page.js +1 -1
- package/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_not-found.html +1 -1
- package/.next/server/app/_not-found.rsc +2 -2
- package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/api/node/sessions/[id]/open-editor/route.js.nft.json +1 -1
- package/.next/server/app/api/node/sessions/route.js +5 -3
- package/.next/server/app/api/node/sessions/route.js.nft.json +1 -1
- package/.next/server/app/api/opencode-config/route.js.nft.json +1 -1
- package/.next/server/app/api/opencode-config/status/route.js.nft.json +1 -1
- package/.next/server/app/api/profiles/[id]/apply/route.js.nft.json +1 -1
- package/.next/server/app/api/profiles/[id]/export/route.js.nft.json +1 -1
- package/.next/server/app/api/profiles/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/profiles/import/route.js.nft.json +1 -1
- package/.next/server/app/api/profiles/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/archive/route.js +3 -2
- package/.next/server/app/api/sessions/[id]/archive/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/delete/route.js +3 -2
- package/.next/server/app/api/sessions/[id]/delete/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/open-editor/route.js +1 -1
- package/.next/server/app/api/sessions/[id]/open-editor/route.js.nft.json +1 -1
- package/.next/server/app/api/sessions/[id]/restore/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/sessions/[id]/restore/route/build-manifest.json +11 -0
- package/.next/server/app/api/sessions/[id]/restore/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/sessions/[id]/restore/route.js +8 -0
- package/.next/server/app/api/sessions/[id]/restore/route.js.map +5 -0
- package/.next/server/app/api/sessions/[id]/restore/route.js.nft.json +1 -0
- package/.next/server/app/api/sessions/[id]/restore/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/sessions/route.js +4 -2
- package/.next/server/app/api/sessions/route.js.nft.json +1 -1
- package/.next/server/app/index.html +1 -1
- package/.next/server/app/index.rsc +3 -3
- package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +1 -0
- package/.next/server/chunks/[root-of-the-server]__31d19c5c._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__31d19c5c._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__56f5f249._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__56f5f249._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__5e0a0e38._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__5e0a0e38._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__98073dd6._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__98073dd6._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__b7b717eb._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__b7b717eb._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__d8e61048._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__d8e61048._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__f441109e._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__f441109e._.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_sessions_[id]_restore_route_actions_af7d6b6c.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_sessions_[id]_restore_route_actions_af7d6b6c.js.map +1 -0
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_2edc9589.js +3 -0
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_2edc9589.js.map +1 -0
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_7f178d4a.js +3 -0
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_7f178d4a.js.map +1 -0
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_aca45402.js +1 -1
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_aca45402.js.map +1 -1
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_b054aff3.js +1 -1
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_b054aff3.js.map +1 -1
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_d0c0f338.js +3 -0
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_d0c0f338.js.map +1 -0
- package/.next/server/chunks/src_lib_session-providers_claudeCode_ts_0f9590ed._.js +3 -0
- package/.next/server/chunks/src_lib_session-providers_claudeCode_ts_0f9590ed._.js.map +1 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__631e12d0._.js → [root-of-the-server]__c91a8380._.js} +2 -2
- package/.next/server/chunks/ssr/{[root-of-the-server]__631e12d0._.js.map → [root-of-the-server]__c91a8380._.js.map} +1 -1
- package/.next/server/chunks/ssr/src_app_page_tsx_a7111f3e._.js +3 -3
- package/.next/server/chunks/ssr/src_app_page_tsx_a7111f3e._.js.map +1 -1
- package/.next/server/pages/404.html +1 -1
- package/.next/server/pages/500.html +2 -2
- package/.next/server/server-reference-manifest.js +1 -1
- package/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-path-routes-manifest.json +1 -0
- package/.next/standalone/.next/build-manifest.json +2 -2
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/routes-manifest.json +8 -0
- package/.next/standalone/.next/server/app/_global-error/page.js +1 -1
- package/.next/standalone/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/_global-error.html +2 -2
- 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.js +1 -1
- 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/_not-found.html +1 -1
- package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/api/node/sessions/[id]/open-editor/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/node/sessions/route.js +5 -3
- package/.next/standalone/.next/server/app/api/node/sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/opencode-config/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/opencode-config/status/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/profiles/[id]/apply/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/profiles/[id]/export/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/profiles/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/profiles/import/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/profiles/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[id]/archive/route.js +3 -2
- package/.next/standalone/.next/server/app/api/sessions/[id]/archive/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[id]/delete/route.js +3 -2
- package/.next/standalone/.next/server/app/api/sessions/[id]/delete/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[id]/open-editor/route.js +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[id]/open-editor/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/sessions/[id]/restore/route/app-paths-manifest.json +3 -0
- package/.next/standalone/.next/server/app/api/sessions/[id]/restore/route/build-manifest.json +11 -0
- package/.next/standalone/.next/server/app/api/sessions/[id]/restore/route/server-reference-manifest.json +4 -0
- package/.next/standalone/.next/server/app/api/sessions/[id]/restore/route.js +8 -0
- package/.next/standalone/.next/server/app/api/sessions/[id]/restore/route.js.map +5 -0
- package/.next/standalone/.next/server/app/api/sessions/[id]/restore/route.js.nft.json +1 -0
- package/.next/standalone/.next/server/app/api/sessions/[id]/restore/route_client-reference-manifest.js +2 -0
- package/.next/standalone/.next/server/app/api/sessions/route.js +4 -2
- package/.next/standalone/.next/server/app/api/sessions/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/index.html +1 -1
- package/.next/standalone/.next/server/app/index.rsc +3 -3
- package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/.next/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/standalone/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app-paths-manifest.json +1 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__31d19c5c._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__56f5f249._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__5e0a0e38._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__98073dd6._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__b7b717eb._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__d8e61048._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__f441109e._.js +3 -0
- package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_sessions_[id]_restore_route_actions_af7d6b6c.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_2edc9589.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_7f178d4a.js +3 -0
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_aca45402.js +1 -1
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_b054aff3.js +1 -1
- package/.next/standalone/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_d0c0f338.js +3 -0
- package/.next/standalone/.next/server/chunks/src_lib_session-providers_claudeCode_ts_0f9590ed._.js +3 -0
- package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__631e12d0._.js → [root-of-the-server]__c91a8380._.js} +2 -2
- package/.next/standalone/.next/server/chunks/ssr/src_app_page_tsx_a7111f3e._.js +3 -3
- package/.next/standalone/.next/server/pages/404.html +1 -1
- package/.next/standalone/.next/server/pages/500.html +2 -2
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/static/chunks/b3bc362202331708.css +3 -0
- package/.next/standalone/.next/static/chunks/{65d5354ba0add961.js → c1294e057d8d4681.js} +3 -3
- package/.next/standalone/README.md +29 -5
- package/.next/standalone/docs/session-status-detection.md +36 -0
- package/.next/standalone/docs/superpowers/specs/2026-04-09-claude-capability-alignment-design.md +39 -0
- package/.next/standalone/package-lock.json +2 -2
- package/.next/standalone/package.json +1 -1
- package/.next/standalone/src/app/api/node/sessions/[id]/archive/route.test.ts +60 -1
- package/.next/standalone/src/app/api/node/sessions/[id]/archive/route.ts +77 -22
- package/.next/standalone/src/app/api/node/sessions/route.test.ts +282 -0
- package/.next/standalone/src/app/api/node/sessions/route.ts +141 -17
- package/.next/standalone/src/app/api/opencode-events/route.test.ts +3 -1
- package/.next/standalone/src/app/api/sessions/[id]/archive/route.test.ts +101 -0
- package/.next/standalone/src/app/api/sessions/[id]/archive/route.ts +47 -12
- package/.next/standalone/src/app/api/sessions/[id]/delete/route.test.ts +92 -0
- package/.next/standalone/src/app/api/sessions/[id]/delete/route.ts +45 -10
- package/.next/standalone/src/app/api/sessions/[id]/open-editor/route.test.ts +74 -0
- package/.next/standalone/src/app/api/sessions/[id]/open-editor/route.ts +22 -2
- package/.next/standalone/src/app/api/sessions/[id]/restore/route.test.ts +186 -0
- package/.next/standalone/src/app/api/sessions/[id]/restore/route.ts +184 -0
- package/.next/standalone/src/app/api/sessions/route.test.ts +1889 -107
- package/.next/standalone/src/app/api/sessions/route.ts +365 -981
- package/.next/standalone/src/components/KanbanBoard.test.tsx +307 -1
- package/.next/standalone/src/components/KanbanBoard.tsx +105 -18
- package/.next/standalone/src/components/ProjectCard.test.tsx +416 -2
- package/.next/standalone/src/components/ProjectCard.tsx +238 -86
- package/.next/standalone/src/components/SessionCard.test.tsx +253 -2
- package/.next/standalone/src/components/SessionCard.tsx +182 -76
- package/.next/standalone/src/hooks/useOpencodeSync.test.ts +321 -1
- package/.next/standalone/src/hooks/useOpencodeSync.ts +16 -12
- package/.next/standalone/src/lib/claudeSessionOverrides.test.ts +75 -0
- package/.next/standalone/src/lib/claudeSessionOverrides.ts +169 -0
- package/.next/standalone/src/lib/session-providers/claudeCode.test.ts +2288 -0
- package/.next/standalone/src/lib/session-providers/claudeCode.ts +1083 -0
- package/.next/standalone/src/lib/session-providers/localAggregator.test.ts +322 -0
- package/.next/standalone/src/lib/session-providers/localAggregator.ts +302 -0
- package/.next/standalone/src/lib/session-providers/opencodeProvider.ts +723 -0
- package/.next/standalone/src/lib/session-providers/providerIds.test.ts +337 -0
- package/.next/standalone/src/lib/session-providers/providerIds.ts +176 -0
- package/.next/standalone/src/lib/session-providers/types.ts +131 -0
- package/.next/standalone/src/lib/transform.test.ts +253 -0
- package/.next/standalone/src/lib/transform.ts +96 -37
- package/.next/standalone/src/types/index.ts +23 -17
- package/.next/static/chunks/b3bc362202331708.css +3 -0
- package/.next/static/chunks/{65d5354ba0add961.js → c1294e057d8d4681.js} +3 -3
- package/.next/trace +1 -1
- package/.next/trace-build +1 -1
- package/.next/types/routes.d.ts +2 -1
- package/.next/types/validator.ts +9 -0
- package/README.md +29 -5
- package/package.json +1 -1
- package/.next/server/chunks/[root-of-the-server]__2f981540._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__2f981540._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__3745b314._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__3745b314._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__6c428a24._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__6c428a24._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__73a00b88._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__73a00b88._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__db285678._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__db285678._.js.map +0 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__2f981540._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__3745b314._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__6c428a24._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__73a00b88._.js +0 -3
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__db285678._.js +0 -3
- package/.next/standalone/.next/static/chunks/f42202943f6742e5.css +0 -3
- package/.next/static/chunks/f42202943f6742e5.css +0 -3
- /package/.next/standalone/.next/static/{5kq9DtuBFVxu4jsgmL5Q- → bsWNvgDS7Zp38Yt9q0DUg}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{5kq9DtuBFVxu4jsgmL5Q- → bsWNvgDS7Zp38Yt9q0DUg}/_clientMiddlewareManifest.json +0 -0
- /package/.next/standalone/.next/static/{5kq9DtuBFVxu4jsgmL5Q- → bsWNvgDS7Zp38Yt9q0DUg}/_ssgManifest.js +0 -0
- /package/.next/static/{5kq9DtuBFVxu4jsgmL5Q- → bsWNvgDS7Zp38Yt9q0DUg}/_buildManifest.js +0 -0
- /package/.next/static/{5kq9DtuBFVxu4jsgmL5Q- → bsWNvgDS7Zp38Yt9q0DUg}/_clientMiddlewareManifest.json +0 -0
- /package/.next/static/{5kq9DtuBFVxu4jsgmL5Q- → bsWNvgDS7Zp38Yt9q0DUg}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
:HL["/_next/static/chunks/
|
|
1
|
+
:HL["/_next/static/chunks/b3bc362202331708.css","style"]
|
|
2
2
|
:HL["/_next/static/media/797e433ab948586e-s.p.dbea232f.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
|
3
3
|
:HL["/_next/static/media/caa3a2e1cccd8315-s.p.853070df.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
|
4
|
-
0:{"buildId":"
|
|
4
|
+
0:{"buildId":"bsWNvgDS7Zp38Yt9q0DUg","tree":{"name":"","paramType":null,"paramKey":"","hasRuntimePrefetch":false,"slots":{"children":{"name":"__PAGE__","paramType":null,"paramKey":"__PAGE__","hasRuntimePrefetch":false,"slots":null,"isRootLayout":false}},"isRootLayout":true},"staleTime":300}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
globalThis.__RSC_MANIFEST = globalThis.__RSC_MANIFEST || {};
|
|
2
|
-
globalThis.__RSC_MANIFEST["/page"] = {"moduleLoading":{"prefix":"","crossOrigin":null},"clientModules":{"[project]/node_modules/next/dist/esm/client/components/layout-router.js <module evaluation>":{"id":39756,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/layout-router.js":{"id":39756,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js <module evaluation>":{"id":37457,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":37457,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js <module evaluation>":{"id":47257,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js":{"id":47257,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js <module evaluation>":{"id":92825,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js":{"id":92825,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js <module evaluation>":{"id":68017,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":68017,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js <module evaluation>":{"id":27201,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":27201,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js <module evaluation>":{"id":97367,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":97367,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/client/components/builtin/global-error.js <module evaluation>":{"id":68027,"name":"*","chunks":[],"async":false},"[project]/node_modules/next/dist/client/components/builtin/global-error.js":{"id":68027,"name":"*","chunks":[],"async":false},"[project]/src/components/QueryProvider.tsx <module evaluation>":{"id":22433,"name":"*","chunks":["/_next/static/chunks/4ea83956c15c04d4.js"],"async":false},"[project]/src/components/QueryProvider.tsx":{"id":22433,"name":"*","chunks":["/_next/static/chunks/4ea83956c15c04d4.js"],"async":false},"[project]/src/app/page.tsx <module evaluation>":{"id":52683,"name":"*","chunks":["/_next/static/chunks/4ea83956c15c04d4.js","/_next/static/chunks/
|
|
2
|
+
globalThis.__RSC_MANIFEST["/page"] = {"moduleLoading":{"prefix":"","crossOrigin":null},"clientModules":{"[project]/node_modules/next/dist/esm/client/components/layout-router.js <module evaluation>":{"id":39756,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/layout-router.js":{"id":39756,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js <module evaluation>":{"id":37457,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/render-from-template-context.js":{"id":37457,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js <module evaluation>":{"id":47257,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-page.js":{"id":47257,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js <module evaluation>":{"id":92825,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/client-segment.js":{"id":92825,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js <module evaluation>":{"id":68017,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/client/components/http-access-fallback/error-boundary.js":{"id":68017,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js <module evaluation>":{"id":27201,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/metadata/generate/icon-mark.js":{"id":27201,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js <module evaluation>":{"id":97367,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/esm/lib/framework/boundary-components.js":{"id":97367,"name":"*","chunks":["/_next/static/chunks/2f236954d6a65e12.js"],"async":false},"[project]/node_modules/next/dist/client/components/builtin/global-error.js <module evaluation>":{"id":68027,"name":"*","chunks":[],"async":false},"[project]/node_modules/next/dist/client/components/builtin/global-error.js":{"id":68027,"name":"*","chunks":[],"async":false},"[project]/src/components/QueryProvider.tsx <module evaluation>":{"id":22433,"name":"*","chunks":["/_next/static/chunks/4ea83956c15c04d4.js"],"async":false},"[project]/src/components/QueryProvider.tsx":{"id":22433,"name":"*","chunks":["/_next/static/chunks/4ea83956c15c04d4.js"],"async":false},"[project]/src/app/page.tsx <module evaluation>":{"id":52683,"name":"*","chunks":["/_next/static/chunks/4ea83956c15c04d4.js","/_next/static/chunks/c1294e057d8d4681.js"],"async":false},"[project]/src/app/page.tsx":{"id":52683,"name":"*","chunks":["/_next/static/chunks/4ea83956c15c04d4.js","/_next/static/chunks/c1294e057d8d4681.js"],"async":false}},"ssrModuleMapping":{"39756":{"*":{"id":2420,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__b188cb29._.js","server/chunks/ssr/node_modules_next_dist_6c178803._.js"],"async":false}},"37457":{"*":{"id":24017,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__b188cb29._.js","server/chunks/ssr/node_modules_next_dist_6c178803._.js"],"async":false}},"47257":{"*":{"id":77682,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__b188cb29._.js","server/chunks/ssr/node_modules_next_dist_6c178803._.js"],"async":false}},"92825":{"*":{"id":97296,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__b188cb29._.js","server/chunks/ssr/node_modules_next_dist_6c178803._.js"],"async":false}},"68017":{"*":{"id":61660,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__b188cb29._.js","server/chunks/ssr/node_modules_next_dist_6c178803._.js"],"async":false}},"27201":{"*":{"id":60704,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__b188cb29._.js","server/chunks/ssr/node_modules_next_dist_6c178803._.js"],"async":false}},"97367":{"*":{"id":90574,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__b188cb29._.js","server/chunks/ssr/node_modules_next_dist_6c178803._.js"],"async":false}},"68027":{"*":{"id":40622,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__a457c799._.js"],"async":false}},"22433":{"*":{"id":87226,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__250afd85._.js","server/chunks/ssr/node_modules_@tanstack_ea43b65b._.js"],"async":false}},"52683":{"*":{"id":40777,"name":"*","chunks":["server/chunks/ssr/[root-of-the-server]__250afd85._.js","server/chunks/ssr/node_modules_@tanstack_ea43b65b._.js","server/chunks/ssr/d4b1c_modules_next_dist_server_route-modules_app-page_vendored_ssr_react-dom_6ef9314a.js","server/chunks/ssr/src_app_page_tsx_a7111f3e._.js"],"async":false}}},"edgeSSRModuleMapping":{},"rscModuleMapping":{"39756":{"*":{"id":26768,"name":"*","chunks":[],"async":false}},"37457":{"*":{"id":17910,"name":"*","chunks":[],"async":false}},"47257":{"*":{"id":92977,"name":"*","chunks":[],"async":false}},"92825":{"*":{"id":48552,"name":"*","chunks":[],"async":false}},"68017":{"*":{"id":83919,"name":"*","chunks":[],"async":false}},"27201":{"*":{"id":40771,"name":"*","chunks":[],"async":false}},"97367":{"*":{"id":24150,"name":"*","chunks":[],"async":false}},"68027":{"*":{"id":82509,"name":"*","chunks":[],"async":false}},"22433":{"*":{"id":36557,"name":"*","chunks":[],"async":false}},"52683":{"*":{"id":56983,"name":"*","chunks":[],"async":false}}},"edgeRscModuleMapping":{},"entryCSSFiles":{"[project]/src/app/favicon.ico":[],"[project]/node_modules/next/dist/client/components/builtin/global-error":[],"[project]/src/app/layout":[{"path":"static/chunks/b3bc362202331708.css","inlined":false}],"[project]/src/app/page":[{"path":"static/chunks/b3bc362202331708.css","inlined":false}]},"entryJSFiles":{"[project]/src/app/favicon.ico":["static/chunks/2f236954d6a65e12.js"],"[project]/node_modules/next/dist/client/components/builtin/global-error":[],"[project]/src/app/layout":["static/chunks/4ea83956c15c04d4.js"],"[project]/src/app/page":["static/chunks/4ea83956c15c04d4.js","static/chunks/c1294e057d8d4681.js"]}}
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
"/api/sessions/[id]/archive/route": "app/api/sessions/[id]/archive/route.js",
|
|
21
21
|
"/api/sessions/[id]/delete/route": "app/api/sessions/[id]/delete/route.js",
|
|
22
22
|
"/api/sessions/[id]/open-editor/route": "app/api/sessions/[id]/open-editor/route.js",
|
|
23
|
+
"/api/sessions/[id]/restore/route": "app/api/sessions/[id]/restore/route.js",
|
|
23
24
|
"/api/sessions/[id]/route": "app/api/sessions/[id]/route.js",
|
|
24
25
|
"/api/sessions/route": "app/api/sessions/route.js",
|
|
25
26
|
"/favicon.ico/route": "app/favicon.ico/route.js",
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[81951,e=>{"use strict";e.s(["RUNTIME_ROLE_ENV_VAR",0,"VIBEPULSE_RUNTIME_ROLE"])},68817,e=>{"use strict";var t=e.i(81951);let n="x-vibepulse-node-version",r={unauthorized:401,unsupported_node_version:426,node_misconfigured:503,upstream_unreachable:503,upstream_timeout:504};function o(e){return"string"!=typeof e?null:e.trim()||null}function i(e,t){let r=new Headers(t);r.set(n,"1");let i=o(e??null);return i&&r.set("authorization",`Bearer ${i}`),r}function s(e,t){return{ok:!1,reason:e,protocolVersion:"1",..."node_misconfigured"===e||"upstream_unreachable"===e||"upstream_timeout"===e?{degraded:!0}:{},...t??{}}}function d(e,t){return Response.json(s(e,t),{status:r[e]})}function a(e){return Response.json(e.body,{status:e.status})}function u(e,i={}){if("node"!==(i.runtimeRole??i.env?.[t.RUNTIME_ROLE_ENV_VAR]??process.env[t.RUNTIME_ROLE_ENV_VAR]))return{ok:!1,status:r.node_misconfigured,body:s("node_misconfigured")};let d=o(i.expectedToken)??function(e=process.env){return o(e.VIBEPULSE_NODE_TOKEN)}(i.env??process.env);if("1"!==e.headers.get(n))return{ok:!1,status:r.unsupported_node_version,body:s("unsupported_node_version")};if(d){var a;let t,n=(a=e.headers.get("authorization"),t=a?.match(/^Bearer\s+(.+)$/i),o(t?.[1]));if(!n||n!==d)return{ok:!1,status:r.unauthorized,body:s("unauthorized")}}return{ok:!0}}e.s(["NODE_PROTOCOL_VERSION",0,"1","createNodeFailureResponse",()=>d,"createNodeRequestHeaders",()=>i,"guardNodeRequest",()=>u,"toNodeRequestGuardResponse",()=>a])},33405,(e,t,n)=>{t.exports=e.x("child_process",()=>require("child_process"))},99686,e=>{"use strict";var t=e.i(33405);let n=new Set;function r(){let e=Number(process.env.OPENCODE_DISCOVERY_TIMEOUT_MS);return Number.isFinite(e)&&e>0?e:5e3}function o(e){if(!(e instanceof Error))return!1;let t=e.message.toLowerCase();return"ETIMEDOUT"===e.code||t.includes("timed out")||t.includes("etimedout")}function i(e){let t=e.deadlineMs-Date.now();return t<=0?(e.timedOut=!0,null):Math.max(1,Math.min(e.timeoutMs,t))}function s(e){return Array.from(new Set(e.filter(e=>Number.isInteger(e)&&e>0&&e<=65535))).sort((e,t)=>e-t)}function d(){let e=r(),d={timedOut:!1,timeoutMs:e,deadlineMs:Date.now()+e},a=s([...function(e){try{let n=i(e);if(null===n)return[];let r=(0,t.execSync)("lsof -nP -iTCP -sTCP:LISTEN",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:n}).split("\n"),o=[];for(let e of r){let t=e.trim();if(!t||t.startsWith("COMMAND"))continue;let n=t.split(/\s+/),r=n[0]?.toLowerCase();if("opencode"!==r)continue;let i=t.match(/:(\d+)\s+\(LISTEN\)/);if(!i)continue;let s=parseInt(i[1],10);Number.isFinite(s)&&o.push(s)}return o}catch(t){return o(t)&&(e.timedOut=!0),[]}}(d),...function(e){try{let n=i(e);if(null===n)return[];return[...(0,t.execSync)("ps -axo command",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:n}).matchAll(/\bopencode\b[^\n]*\b--port(?:=|\s+)(\d+)\b/g)].map(e=>parseInt(e[1],10)).filter(e=>Number.isFinite(e))}catch(t){return o(t)&&(e.timedOut=!0),[]}}(d)]);for(let e of a)n.add(e);return{ports:s([...a,...Array.from(n)]),timedOut:d.timedOut}}function a(){let e=r(),n={timedOut:!1,timeoutMs:e,deadlineMs:Date.now()+e},s=function(e){try{let n=i(e);if(null===n)return[];let r=(0,t.execSync)("ps -axo pid=,command=",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:n}),o=[];for(let e of r.split("\n")){let t=e.trim();if(!t)continue;let n=t.match(/^(\d+)\s+(.+)$/);if(!n)continue;let r=parseInt(n[1],10),i=n[2];Number.isFinite(r)&&/\bopencode\b/.test(i)&&(/\b--port(?:=|\s+)\d+\b/.test(i)||o.push(r))}return Array.from(new Set(o))}catch(t){return o(t)&&(e.timedOut=!0),[]}}(n);if(!s.length)return{processes:[],timedOut:n.timedOut};let d=[],a=new Set;for(let e of s){let r=function(e,n){try{let r=i(n);if(null===r)return null;let o=(0,t.execSync)(`lsof -nP -a -p ${e} -d cwd -Fn`,{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}).split("\n").find(e=>e.startsWith("n")&&e.length>1);if(!o)return null;return o.slice(1)}catch(e){return o(e)&&(n.timedOut=!0),null}}(e,n);if(!r)continue;let s=`${e}:${r}`;a.has(s)||(a.add(s),d.push({pid:e,cwd:r}))}return{processes:d,timedOut:n.timedOut}}e.s(["discoverOpencodePortsWithMeta",()=>d,"discoverOpencodeProcessCwdsWithoutPortWithMeta",()=>a])},74579,e=>{"use strict";let t=new Map,n=new Map;function r(e){for(let[t,r]of n)e-r>6e5&&n.delete(t);if(n.size<=5e3)return;let t=n.size-5e3,r=Array.from(n.entries()).sort((e,t)=>e[1]-t[1]);for(let e=0;e<t;e++){let[t]=r[e]??[];if(!t)break;n.delete(t)}}function o(e){for(let[n,r]of t)e-r.markedAt>12096e5&&t.delete(n);if(t.size<=5e3)return;let n=t.size-5e3,r=Array.from(t.entries()).sort((e,t)=>e[1].lastSeenAt-t[1].lastSeenAt);for(let e=0;e<n;e++){let[n]=r[e]??[];if(!n)break;t.delete(n)}}function i(e,n=Date.now()){let r=t.get(e);t.set(e,{markedAt:r?.markedAt??n,lastSeenAt:n}),o(n)}function s(e){t.delete(e)}function d(e,t=Date.now()){n.set(e,t),r(t)}function a(e){n.delete(e)}function u(e,t=Date.now()){let r=n.get(e);return"number"==typeof r&&(t-r>6e5?(n.delete(e),!1):(n.delete(e),!0))}function l(e=Date.now()){r(e)}function c(e,n=Date.now()){let r=t.get(e);return!!r&&(n-r.markedAt>12096e5?(t.delete(e),!1):(t.set(e,{...r,lastSeenAt:n}),!0))}function f(e=Date.now()){o(e)}e.s(["clearSessionForceUnarchived",()=>s,"clearSessionStickyStatusBlocked",()=>a,"markSessionForceUnarchived",()=>i,"markSessionStickyStatusBlocked",()=>d,"pruneSessionForceUnarchived",()=>f,"pruneSessionStickyStatusBlocked",()=>l,"shouldForceSessionUnarchived",()=>c,"takeSessionStickyStatusBlocked",()=>u])},17506,e=>{"use strict";var t=e.i(22734),n=e.i(24868),r=e.i(46786),o=e.i(14747),i=e.i(89196);let s=(0,o.join)((0,r.homedir)(),".config","vibepulse"),d=(0,o.join)(s,"claude-session-overrides.jsonc"),a=Promise.resolve();function u(){(0,t.existsSync)(s)||(0,t.mkdirSync)(s,{recursive:!0})}function l(){return{version:1,sessions:[]}}function c(e){return e&&"object"==typeof e?"string"!=typeof e.sessionId||"number"!=typeof e.updatedAt||void 0!==e.archivedAt&&"number"!=typeof e.archivedAt||void 0!==e.deletedAt&&"number"!=typeof e.deletedAt||void 0!==e.restoredAt&&"number"!=typeof e.restoredAt?null:{sessionId:e.sessionId,updatedAt:e.updatedAt,..."number"==typeof e.archivedAt?{archivedAt:e.archivedAt}:{},..."number"==typeof e.deletedAt?{deletedAt:e.deletedAt}:{},..."number"==typeof e.restoredAt?{restoredAt:e.restoredAt}:{}}:null}async function f(){try{if(u(),!(0,t.existsSync)(d)){let e=l();return await p(e),e}let e=await (0,n.readFile)(d,"utf-8"),r=(0,i.parse)(e,null,!1);if(!r||"object"!=typeof r)return l();let o=Array.isArray(r.sessions)?r.sessions.map(c).filter(e=>null!==e):[];return{version:"number"==typeof r.version?r.version:1,sessions:o}}catch{return l()}}async function p(e){u();let t=`${d}.tmp`;await (0,n.writeFile)(t,(0,i.stringify)(e,null,2),"utf-8"),await (0,n.rename)(t,d)}async function m(){return(await f()).sessions}async function y(e,t){let n=async()=>{let n=await f(),r=Date.now(),o=t(n.sessions.find(t=>t.sessionId===e)??null,r),i=n.sessions.filter(t=>t.sessionId!==e);n.sessions=o?[...i,o]:i,await p(n)},r=a.then(n,n);a=r.then(()=>void 0,()=>void 0),await r}async function b(e,t=Date.now()){await y(e,(n,r)=>({sessionId:e,archivedAt:t,deletedAt:n?.deletedAt,restoredAt:void 0,updatedAt:r}))}async function h(e,t=Date.now()){await y(e,(n,r)=>({sessionId:e,deletedAt:t,restoredAt:void 0,updatedAt:r}))}async function v(e){await y(e,(t,n)=>t?void 0!==t.deletedAt?{sessionId:e,deletedAt:t.deletedAt,restoredAt:n,updatedAt:n}:{sessionId:e,restoredAt:n,updatedAt:n}:null)}e.s(["clearClaudeSessionArchived",()=>v,"listClaudeSessionOverrides",()=>m,"markClaudeSessionArchived",()=>b,"markClaudeSessionDeleted",()=>h])},93695,(e,t,n)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},32319,(e,t,n)=>{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"))},18622,(e,t,n)=>{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"))},56704,(e,t,n)=>{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"))},70406,(e,t,n)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},14747,(e,t,n)=>{t.exports=e.x("path",()=>require("path"))},54799,(e,t,n)=>{t.exports=e.x("crypto",()=>require("crypto"))},82414,e=>{"use strict";var t=e.i(22734),n=e.i(24868),r=e.i(46786),o=e.i(14747),i=e.i(54799),s=e.i(89196);let d=(0,o.join)((0,r.homedir)(),".config","vibepulse"),a=(0,o.join)(d,"nodes.jsonc");class u extends Error{code;constructor(e,t){super(t),this.name="NodeRegistryError",this.code=e}}function l(e){let t=e.trim();if(!t)return{ok:!1,error:"empty"};try{let e=new URL(t);if("http:"!==e.protocol&&"https:"!==e.protocol)return{ok:!1,error:"unsupported_protocol"};if(e.username||e.password)return{ok:!1,error:"credentials_not_allowed"};return{ok:!0,normalizedBaseUrl:(e.search="",e.hash="",e.toString().replace(/\/+$/,""))}}catch{return{ok:!1,error:"invalid"}}}function c(e){if(!e||"object"!=typeof e||"string"!=typeof e.nodeId||"string"!=typeof e.nodeLabel||"string"!=typeof e.baseUrl||"boolean"!=typeof e.enabled||"string"!=typeof e.token||"string"!=typeof e.createdAt||"string"!=typeof e.updatedAt)return null;let t=l(e.baseUrl);if(!t.ok)return null;let n=e.nodeId.trim(),r=e.nodeLabel.trim();return n&&r?{nodeId:n,nodeLabel:r,baseUrl:t.normalizedBaseUrl,enabled:e.enabled,token:e.token.trim(),createdAt:e.createdAt,updatedAt:e.updatedAt}:null}function f(){(0,t.existsSync)(d)||(0,t.mkdirSync)(d,{recursive:!0})}function p(){return{version:1,nodes:[]}}async function m(){try{if(f(),!(0,t.existsSync)(a)){let e=p();return await y(e),e}let e=await (0,n.readFile)(a,"utf-8"),r=(0,s.parse)(e,null,!1);if(!r||"object"!=typeof r||!Array.isArray(r.nodes))return p();let o=r.nodes.map(c).filter(e=>null!==e),i=[],d=new Set;for(let e of o)d.has(e.baseUrl)||(d.add(e.baseUrl),i.push(e));return{version:"number"==typeof r.version?r.version:1,nodes:i}}catch{return p()}}async function y(e){f();let t=(0,s.stringify)(e,null,2);await (0,n.writeFile)(a,t,"utf-8")}function b(e){return{nodeId:e.nodeId,nodeLabel:e.nodeLabel,baseUrl:e.baseUrl,enabled:e.enabled,createdAt:e.createdAt,updatedAt:e.updatedAt,tokenConfigured:e.token.trim().length>0}}function h(e){if("string"!=typeof e||""===e.trim())throw new u("node_label_required","nodeLabel is required and must be a non-empty string");return e.trim()}function v(e){if("string"!=typeof e||""===e.trim())throw new u("node_id_required","nodeId is required and must be a non-empty string");return e.trim()}function w(e){if(null==e)return"";if("string"!=typeof e)throw new u("invalid_token","token must be a string when provided");return e.trim()}function g(e){if("boolean"!=typeof e)throw new u("invalid_enabled","enabled must be a boolean");return e}function A(e){if("string"!=typeof e)throw new u("invalid_base_url","baseUrl must be a string");let t=l(e);if(!t.ok)throw new u("invalid_base_url",`baseUrl validation failed: ${t.error}`);return t.normalizedBaseUrl}function I(e,t,n){if(e.find(e=>e.baseUrl===t&&e.nodeId!==n))throw new u("duplicate_base_url",`A node with baseUrl '${t}' already exists`)}async function S(){return[...(await m()).nodes]}async function _(){return(await S()).map(b)}async function x(e){let t=h(e.nodeLabel),n=A(e.baseUrl),r=w(e.token),o=void 0===e.enabled||g(e.enabled),s=await m();I(s.nodes,n);let d=new Date().toISOString(),a={nodeId:(0,i.randomUUID)(),nodeLabel:t,baseUrl:n,enabled:o,token:r,createdAt:d,updatedAt:d};return s.nodes.push(a),await y(s),b(a)}async function k(e,t){let n=v(e);if(void 0===t.nodeLabel&&void 0===t.baseUrl&&void 0===t.token&&void 0===t.enabled)throw new u("no_updates","At least one update field is required");let r=await m(),o=r.nodes.findIndex(e=>e.nodeId===n);if(-1===o)throw new u("node_not_found",`Node '${n}' not found`);let i=r.nodes[o],s=void 0===t.nodeLabel?i.nodeLabel:h(t.nodeLabel),d=void 0===t.baseUrl?i.baseUrl:A(t.baseUrl),a=void 0===t.token?i.token:w(t.token),l=void 0===t.enabled?i.enabled:g(t.enabled);I(r.nodes,d,i.nodeId);let c={...i,nodeLabel:s,baseUrl:d,token:a,enabled:l,updatedAt:new Date().toISOString()};return r.nodes[o]=c,await y(r),b(c)}async function E(e,t){let n=v(e),r=await m(),o=r.nodes.findIndex(e=>e.nodeId===n);if(-1===o)throw new u("node_not_found",`Node '${n}' not found`);let i=r.nodes[o],s=void 0===t?!i.enabled:g(t),d={...i,enabled:s,updatedAt:new Date().toISOString()};return r.nodes[o]=d,await y(r),b(d)}async function O(e){let t=v(e),n=await m(),r=n.nodes.filter(e=>e.nodeId!==t);return r.length!==n.nodes.length&&(n.nodes=r,await y(n),!0)}e.s(["NodeRegistryError",()=>u,"createNode",()=>x,"deleteNode",()=>O,"listNodeRecords",()=>S,"listNodes",()=>_,"toggleNode",()=>E,"updateNode",()=>k])},586,e=>{"use strict";function t(e,t){if(!e||""===e.trim())throw Error("Invalid hostId: cannot be empty");if(!t||""===t.trim())throw Error("Invalid sessionId: cannot be empty");if(e.includes(":")||t.includes(":"))throw Error("Invalid hostId or sessionId: colon character not allowed");return`${e}:${t}`}function n(e){if("string"!=typeof e)throw Error("Invalid sourceKey: must be a string");let t=e.split(":");if(2!==t.length)throw Error("Invalid sourceKey: must contain exactly one colon separator");let[n,r]=t,o=n.trim(),i=r.trim();if(""===o||""===i)throw Error("Invalid sourceKey: hostId and sessionId cannot be empty");return{hostId:o,sessionId:i}}function r(e){try{let{sessionId:t}=n(e);return t}catch{return null}}function o(e){if("string"!=typeof e)throw Error("Invalid action session id: must be a string");let t=e.trim();if(""===t)throw Error("Invalid action session id: cannot be empty");if(!t.includes(":"))return{hostId:"local",sessionId:t,isRemote:!1};let{hostId:r,sessionId:o}=n(t);return{hostId:r,sessionId:o,isRemote:"local"!==r}}function i(e){try{let t=o(e);return t.isRemote?null:t.sessionId}catch{return null}}e.s(["composeSourceKey",()=>t,"getSessionIdFromSourceKey",()=>r,"parseActionSessionReference",()=>o,"parseSourceKey",()=>n,"resolveLocalActionSessionId",()=>i])},39948,e=>{"use strict";var t=e.i(586);let n={provider:"opencode",readOnly:!1,capabilities:{openProject:!0,openEditor:!0,archive:!0,delete:!0},topology:{childSessions:"authoritative"}},r={provider:"claude-code",readOnly:!0,capabilities:{openProject:!0,openEditor:!1,archive:!0,delete:!0},topology:{childSessions:"flat"}};function o(e){return"claude-code"===e?r:n}let i="claude~";function s(e){return!!e.startsWith(i)&&d(e.slice(i.length))}function d(e){return/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)}function a(e){let n=(0,t.getSessionIdFromSourceKey)(e)??e;return s(n)||function(e){let t=e.indexOf("__");if(t<=0)return!1;let n=e.slice(0,t);return!!e.slice(t+2).startsWith("agent-")&&(d(n)||s(n))}(n)?"claude-code":"opencode"}function u(e){return d(e)?`${i}${e}`:e}function l(e){return s(e)?e.slice(i.length):e}function c(e,n,r){let{normalizedId:i,provider:d}=function(e,t){if(s(e))throw Error(`Invalid raw session id: reserved claude namespace (${e})`);let n=t??a(e);return"claude-code"===n?{normalizedId:u(e),provider:n}:{normalizedId:e,provider:n}}(n,r?.provider),l=o(d),c=l.readOnly,f=r?.readOnly??c,p=r?.capabilities??l.capabilities,m=r?.topology??l.topology;return{sourceKey:(0,t.composeSourceKey)(e,i),provider:d,readOnly:f,capabilities:p,topology:m,providerRawId:n}}function f(e){let n=(0,t.getSessionIdFromSourceKey)(e);return n?l(n):l(e)}e.s(["READONLY_PROVIDER_CONTEXT",0,r,"composeProviderSourceKey",()=>c,"detectProviderFromRawId",()=>a,"extractProviderRawId",()=>f,"getDefaultProviderContext",()=>o,"namespaceClaudeRawId",()=>u])}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__31d19c5c._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[93695,(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"))},32319,(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"))},18622,(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"))},56704,(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"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},33405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},99686,e=>{"use strict";var t=e.i(33405);let r=new Set;function n(){let e=Number(process.env.OPENCODE_DISCOVERY_TIMEOUT_MS);return Number.isFinite(e)&&e>0?e:5e3}function o(e){if(!(e instanceof Error))return!1;let t=e.message.toLowerCase();return"ETIMEDOUT"===e.code||t.includes("timed out")||t.includes("etimedout")}function i(e){let t=e.deadlineMs-Date.now();return t<=0?(e.timedOut=!0,null):Math.max(1,Math.min(e.timeoutMs,t))}function s(e){return Array.from(new Set(e.filter(e=>Number.isInteger(e)&&e>0&&e<=65535))).sort((e,t)=>e-t)}function a(){let e=n(),a={timedOut:!1,timeoutMs:e,deadlineMs:Date.now()+e},l=s([...function(e){try{let r=i(e);if(null===r)return[];let n=(0,t.execSync)("lsof -nP -iTCP -sTCP:LISTEN",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}).split("\n"),o=[];for(let e of n){let t=e.trim();if(!t||t.startsWith("COMMAND"))continue;let r=t.split(/\s+/),n=r[0]?.toLowerCase();if("opencode"!==n)continue;let i=t.match(/:(\d+)\s+\(LISTEN\)/);if(!i)continue;let s=parseInt(i[1],10);Number.isFinite(s)&&o.push(s)}return o}catch(t){return o(t)&&(e.timedOut=!0),[]}}(a),...function(e){try{let r=i(e);if(null===r)return[];return[...(0,t.execSync)("ps -axo command",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}).matchAll(/\bopencode\b[^\n]*\b--port(?:=|\s+)(\d+)\b/g)].map(e=>parseInt(e[1],10)).filter(e=>Number.isFinite(e))}catch(t){return o(t)&&(e.timedOut=!0),[]}}(a)]);for(let e of l)r.add(e);return{ports:s([...l,...Array.from(r)]),timedOut:a.timedOut}}function l(){let e=n(),r={timedOut:!1,timeoutMs:e,deadlineMs:Date.now()+e},s=function(e){try{let r=i(e);if(null===r)return[];let n=(0,t.execSync)("ps -axo pid=,command=",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}),o=[];for(let e of n.split("\n")){let t=e.trim();if(!t)continue;let r=t.match(/^(\d+)\s+(.+)$/);if(!r)continue;let n=parseInt(r[1],10),i=r[2];Number.isFinite(n)&&/\bopencode\b/.test(i)&&(/\b--port(?:=|\s+)\d+\b/.test(i)||o.push(n))}return Array.from(new Set(o))}catch(t){return o(t)&&(e.timedOut=!0),[]}}(r);if(!s.length)return{processes:[],timedOut:r.timedOut};let a=[],l=new Set;for(let e of s){let n=function(e,r){try{let n=i(r);if(null===n)return null;let o=(0,t.execSync)(`lsof -nP -a -p ${e} -d cwd -Fn`,{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:n}).split("\n").find(e=>e.startsWith("n")&&e.length>1);if(!o)return null;return o.slice(1)}catch(e){return o(e)&&(r.timedOut=!0),null}}(e,r);if(!n)continue;let s=`${e}:${n}`;l.has(s)||(l.add(s),a.push({pid:e,cwd:n}))}return{processes:a,timedOut:r.timedOut}}e.s(["discoverOpencodePortsWithMeta",()=>a,"discoverOpencodeProcessCwdsWithoutPortWithMeta",()=>l])},586,e=>{"use strict";function t(e,t){if(!e||""===e.trim())throw Error("Invalid hostId: cannot be empty");if(!t||""===t.trim())throw Error("Invalid sessionId: cannot be empty");if(e.includes(":")||t.includes(":"))throw Error("Invalid hostId or sessionId: colon character not allowed");return`${e}:${t}`}function r(e){if("string"!=typeof e)throw Error("Invalid sourceKey: must be a string");let t=e.split(":");if(2!==t.length)throw Error("Invalid sourceKey: must contain exactly one colon separator");let[r,n]=t,o=r.trim(),i=n.trim();if(""===o||""===i)throw Error("Invalid sourceKey: hostId and sessionId cannot be empty");return{hostId:o,sessionId:i}}function n(e){if("string"!=typeof e)throw Error("Invalid action session id: must be a string");let t=e.trim();if(""===t)throw Error("Invalid action session id: cannot be empty");if(!t.includes(":"))return{hostId:"local",sessionId:t,isRemote:!1};let{hostId:n,sessionId:o}=r(t);return{hostId:n,sessionId:o,isRemote:"local"!==n}}function o(e){try{let t=n(e);return t.isRemote?null:t.sessionId}catch{return null}}e.s(["composeSourceKey",()=>t,"parseActionSessionReference",()=>n,"parseSourceKey",()=>r,"resolveLocalActionSessionId",()=>o])},96279,e=>{"use strict";var t=e.i(47909),r=e.i(74017),n=e.i(96250),o=e.i(59756),i=e.i(61916),s=e.i(74677),a=e.i(69741),l=e.i(16795),u=e.i(87718),d=e.i(95169),c=e.i(47587),p=e.i(66012),h=e.i(70101),f=e.i(26937),m=e.i(10372),x=e.i(93695);e.i(52474);var g=e.i(220);e.i(39354);var R=e.i(34959),v=e.i(99686),E=e.i(586);async function y(e,{params:t}){let{id:r}=await t,n=function(e){if(!e.includes(":"))return e;try{let{hostId:t,sessionId:r}=(0,E.parseSourceKey)(e);return"local"===t?r:null}catch{return null}}(r);if(!n)return Response.json({error:"Session not found"},{status:404});let{ports:o,timedOut:i}=(0,v.discoverOpencodePortsWithMeta)();if(!o.length)return i?Response.json({error:"OpenCode discovery timed out",hint:"Host process discovery exceeded timeout. Retry shortly, or increase OPENCODE_DISCOVERY_TIMEOUT_MS."},{status:503}):Response.json({error:"OpenCode server not found",hint:"Make sure OpenCode is running with an exposed API port. Example: opencode --port <PORT> (VibePulse auto-detects active ports)."},{status:503});try{for(let e of o)try{let t=(0,R.createOpencodeClient)({baseUrl:`http://localhost:${e}`}),r=await t.session.get({path:{id:n}});if(r.data)return Response.json({session:r.data})}catch{}return Response.json({error:"Session not found"},{status:404})}catch(e){return console.error("Error fetching session:",e),Response.json({error:"Failed to fetch session",details:e instanceof Error?e.message:String(e),hint:"Make sure OpenCode is running with an exposed API port. Example: opencode --port <PORT> (VibePulse auto-detects active ports)."},{status:500})}}e.s(["GET",()=>y],13346);var w=e.i(13346);let O=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/sessions/[id]/route",pathname:"/api/sessions/[id]",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/sessions/[id]/route.ts",nextConfigOutput:"standalone",userland:w}),{workAsyncStorage:b,workUnitAsyncStorage:C,serverHooks:I}=O;function S(){return(0,n.patchFetch)({workAsyncStorage:b,workUnitAsyncStorage:C})}async function P(e,t,n){O.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/sessions/[id]/route";R=R.replace(/\/index$/,"")||"/";let v=await O.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:E,params:y,nextConfig:w,parsedUrl:b,isDraftMode:C,prerenderManifest:I,routerServerContext:S,isOnDemandRevalidate:P,revalidateOnlyGenerated:A,resolvedPathname:T,clientReferenceManifest:N,serverActionsManifest:M}=v,_=(0,a.normalizeAppPath)(R),D=!!(I.dynamicRoutes[_]||I.routes[T]),j=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,b,!1):t.end("This page could not be found"),null);if(D&&!C){let e=!!I.routes[T],t=I.dynamicRoutes[_];if(t&&!1===t.fallback&&!e){if(w.experimental.adapterPath)return await j();throw new x.NoFallbackError}}let k=null;!D||O.isDev||C||(k="/index"===(k=T)?"/":k);let q=!0===O.isDev||!D,U=D&&!q;M&&N&&(0,s.setManifestsSingleton)({page:R,clientReferenceManifest:N,serverActionsManifest:M});let H=e.method||"GET",$=(0,i.getTracer)(),F=$.getActiveScopeSpan(),K={params:y,prerenderManifest:I,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:q,incrementalCache:(0,o.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:w.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,o)=>O.onRequestError(e,t,n,o,S)},sharedContext:{buildId:E}},L=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),V=u.NextRequestAdapter.fromNodeNextRequest(L,(0,u.signalFromNodeResponse)(t));try{let s=async e=>O.handle(V,K).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")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${H} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${H} ${R}`)}),a=!!(0,o.getRequestMeta)(e,"minimalMode"),l=async o=>{var i,l;let u=async({previousCacheEntry:r})=>{try{if(!a&&P&&A&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await s(o);e.fetchMetrics=K.renderOpts.fetchMetrics;let l=K.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let u=K.renderOpts.collectedTags;if(!D)return await (0,p.sendResponse)(L,W,i,K.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(i.headers);u&&(t[m.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==K.renderOpts.collectedRevalidate&&!(K.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,n=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:K.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await O.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:P})},!1,S),t}},d=await O.handleResponse({req:e,nextConfig:w,cacheKey:k,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:I,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:A,responseGenerator:u,waitUntil:n.waitUntil,isMinimalMode:a});if(!D)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});a||t.setHeader("x-nextjs-cache",P?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let x=(0,h.fromNodeOutgoingHttpHeaders)(d.value.headers);return a&&D||x.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||x.get("Cache-Control")||x.set("Cache-Control",(0,f.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(L,W,new Response(d.value.body,{headers:x,status:d.value.status||200})),null};F?await l(F):await $.withPropagatedContext(e.headers,()=>$.trace(d.BaseServerSpan.handleRequest,{spanName:`${H} ${R}`,kind:i.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},l))}catch(t){if(t instanceof x.NoFallbackError||await O.onRequestError(e,t,{routerKind:"App Router",routePath:_,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:P})},!1,S),D)throw t;return await (0,p.sendResponse)(L,W,new Response(null,{status:500})),null}}e.s(["handler",()=>P,"patchFetch",()=>S,"routeModule",()=>O,"serverHooks",()=>I,"workAsyncStorage",()=>b,"workUnitAsyncStorage",()=>C],96279)}];
|
|
1
|
+
module.exports=[93695,(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"))},32319,(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"))},18622,(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"))},56704,(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"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},33405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},99686,e=>{"use strict";var t=e.i(33405);let r=new Set;function n(){let e=Number(process.env.OPENCODE_DISCOVERY_TIMEOUT_MS);return Number.isFinite(e)&&e>0?e:5e3}function o(e){if(!(e instanceof Error))return!1;let t=e.message.toLowerCase();return"ETIMEDOUT"===e.code||t.includes("timed out")||t.includes("etimedout")}function i(e){let t=e.deadlineMs-Date.now();return t<=0?(e.timedOut=!0,null):Math.max(1,Math.min(e.timeoutMs,t))}function s(e){return Array.from(new Set(e.filter(e=>Number.isInteger(e)&&e>0&&e<=65535))).sort((e,t)=>e-t)}function a(){let e=n(),a={timedOut:!1,timeoutMs:e,deadlineMs:Date.now()+e},l=s([...function(e){try{let r=i(e);if(null===r)return[];let n=(0,t.execSync)("lsof -nP -iTCP -sTCP:LISTEN",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}).split("\n"),o=[];for(let e of n){let t=e.trim();if(!t||t.startsWith("COMMAND"))continue;let r=t.split(/\s+/),n=r[0]?.toLowerCase();if("opencode"!==n)continue;let i=t.match(/:(\d+)\s+\(LISTEN\)/);if(!i)continue;let s=parseInt(i[1],10);Number.isFinite(s)&&o.push(s)}return o}catch(t){return o(t)&&(e.timedOut=!0),[]}}(a),...function(e){try{let r=i(e);if(null===r)return[];return[...(0,t.execSync)("ps -axo command",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}).matchAll(/\bopencode\b[^\n]*\b--port(?:=|\s+)(\d+)\b/g)].map(e=>parseInt(e[1],10)).filter(e=>Number.isFinite(e))}catch(t){return o(t)&&(e.timedOut=!0),[]}}(a)]);for(let e of l)r.add(e);return{ports:s([...l,...Array.from(r)]),timedOut:a.timedOut}}function l(){let e=n(),r={timedOut:!1,timeoutMs:e,deadlineMs:Date.now()+e},s=function(e){try{let r=i(e);if(null===r)return[];let n=(0,t.execSync)("ps -axo pid=,command=",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}),o=[];for(let e of n.split("\n")){let t=e.trim();if(!t)continue;let r=t.match(/^(\d+)\s+(.+)$/);if(!r)continue;let n=parseInt(r[1],10),i=r[2];Number.isFinite(n)&&/\bopencode\b/.test(i)&&(/\b--port(?:=|\s+)\d+\b/.test(i)||o.push(n))}return Array.from(new Set(o))}catch(t){return o(t)&&(e.timedOut=!0),[]}}(r);if(!s.length)return{processes:[],timedOut:r.timedOut};let a=[],l=new Set;for(let e of s){let n=function(e,r){try{let n=i(r);if(null===n)return null;let o=(0,t.execSync)(`lsof -nP -a -p ${e} -d cwd -Fn`,{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:n}).split("\n").find(e=>e.startsWith("n")&&e.length>1);if(!o)return null;return o.slice(1)}catch(e){return o(e)&&(r.timedOut=!0),null}}(e,r);if(!n)continue;let s=`${e}:${n}`;l.has(s)||(l.add(s),a.push({pid:e,cwd:n}))}return{processes:a,timedOut:r.timedOut}}e.s(["discoverOpencodePortsWithMeta",()=>a,"discoverOpencodeProcessCwdsWithoutPortWithMeta",()=>l])},586,e=>{"use strict";function t(e,t){if(!e||""===e.trim())throw Error("Invalid hostId: cannot be empty");if(!t||""===t.trim())throw Error("Invalid sessionId: cannot be empty");if(e.includes(":")||t.includes(":"))throw Error("Invalid hostId or sessionId: colon character not allowed");return`${e}:${t}`}function r(e){if("string"!=typeof e)throw Error("Invalid sourceKey: must be a string");let t=e.split(":");if(2!==t.length)throw Error("Invalid sourceKey: must contain exactly one colon separator");let[r,n]=t,o=r.trim(),i=n.trim();if(""===o||""===i)throw Error("Invalid sourceKey: hostId and sessionId cannot be empty");return{hostId:o,sessionId:i}}function n(e){try{let{sessionId:t}=r(e);return t}catch{return null}}function o(e){if("string"!=typeof e)throw Error("Invalid action session id: must be a string");let t=e.trim();if(""===t)throw Error("Invalid action session id: cannot be empty");if(!t.includes(":"))return{hostId:"local",sessionId:t,isRemote:!1};let{hostId:n,sessionId:o}=r(t);return{hostId:n,sessionId:o,isRemote:"local"!==n}}function i(e){try{let t=o(e);return t.isRemote?null:t.sessionId}catch{return null}}e.s(["composeSourceKey",()=>t,"getSessionIdFromSourceKey",()=>n,"parseActionSessionReference",()=>o,"parseSourceKey",()=>r,"resolveLocalActionSessionId",()=>i])},96279,e=>{"use strict";var t=e.i(47909),r=e.i(74017),n=e.i(96250),o=e.i(59756),i=e.i(61916),s=e.i(74677),a=e.i(69741),l=e.i(16795),u=e.i(87718),d=e.i(95169),c=e.i(47587),p=e.i(66012),h=e.i(70101),f=e.i(26937),m=e.i(10372),x=e.i(93695);e.i(52474);var g=e.i(220);e.i(39354);var R=e.i(34959),v=e.i(99686),y=e.i(586);async function E(e,{params:t}){let{id:r}=await t,n=function(e){if(!e.includes(":"))return e;try{let{hostId:t,sessionId:r}=(0,y.parseSourceKey)(e);return"local"===t?r:null}catch{return null}}(r);if(!n)return Response.json({error:"Session not found"},{status:404});let{ports:o,timedOut:i}=(0,v.discoverOpencodePortsWithMeta)();if(!o.length)return i?Response.json({error:"OpenCode discovery timed out",hint:"Host process discovery exceeded timeout. Retry shortly, or increase OPENCODE_DISCOVERY_TIMEOUT_MS."},{status:503}):Response.json({error:"OpenCode server not found",hint:"Make sure OpenCode is running with an exposed API port. Example: opencode --port <PORT> (VibePulse auto-detects active ports)."},{status:503});try{for(let e of o)try{let t=(0,R.createOpencodeClient)({baseUrl:`http://localhost:${e}`}),r=await t.session.get({path:{id:n}});if(r.data)return Response.json({session:r.data})}catch{}return Response.json({error:"Session not found"},{status:404})}catch(e){return console.error("Error fetching session:",e),Response.json({error:"Failed to fetch session",details:e instanceof Error?e.message:String(e),hint:"Make sure OpenCode is running with an exposed API port. Example: opencode --port <PORT> (VibePulse auto-detects active ports)."},{status:500})}}e.s(["GET",()=>E],13346);var w=e.i(13346);let O=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/sessions/[id]/route",pathname:"/api/sessions/[id]",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/sessions/[id]/route.ts",nextConfigOutput:"standalone",userland:w}),{workAsyncStorage:b,workUnitAsyncStorage:C,serverHooks:I}=O;function S(){return(0,n.patchFetch)({workAsyncStorage:b,workUnitAsyncStorage:C})}async function P(e,t,n){O.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/sessions/[id]/route";R=R.replace(/\/index$/,"")||"/";let v=await O.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:y,params:E,nextConfig:w,parsedUrl:b,isDraftMode:C,prerenderManifest:I,routerServerContext:S,isOnDemandRevalidate:P,revalidateOnlyGenerated:A,resolvedPathname:T,clientReferenceManifest:N,serverActionsManifest:M}=v,_=(0,a.normalizeAppPath)(R),D=!!(I.dynamicRoutes[_]||I.routes[T]),j=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,b,!1):t.end("This page could not be found"),null);if(D&&!C){let e=!!I.routes[T],t=I.dynamicRoutes[_];if(t&&!1===t.fallback&&!e){if(w.experimental.adapterPath)return await j();throw new x.NoFallbackError}}let k=null;!D||O.isDev||C||(k="/index"===(k=T)?"/":k);let q=!0===O.isDev||!D,U=D&&!q;M&&N&&(0,s.setManifestsSingleton)({page:R,clientReferenceManifest:N,serverActionsManifest:M});let H=e.method||"GET",$=(0,i.getTracer)(),F=$.getActiveScopeSpan(),K={params:E,prerenderManifest:I,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:q,incrementalCache:(0,o.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:w.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,o)=>O.onRequestError(e,t,n,o,S)},sharedContext:{buildId:y}},L=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),V=u.NextRequestAdapter.fromNodeNextRequest(L,(0,u.signalFromNodeResponse)(t));try{let s=async e=>O.handle(V,K).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")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${H} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${H} ${R}`)}),a=!!(0,o.getRequestMeta)(e,"minimalMode"),l=async o=>{var i,l;let u=async({previousCacheEntry:r})=>{try{if(!a&&P&&A&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await s(o);e.fetchMetrics=K.renderOpts.fetchMetrics;let l=K.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let u=K.renderOpts.collectedTags;if(!D)return await (0,p.sendResponse)(L,W,i,K.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(i.headers);u&&(t[m.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==K.renderOpts.collectedRevalidate&&!(K.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,n=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:K.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await O.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:P})},!1,S),t}},d=await O.handleResponse({req:e,nextConfig:w,cacheKey:k,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:I,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:A,responseGenerator:u,waitUntil:n.waitUntil,isMinimalMode:a});if(!D)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});a||t.setHeader("x-nextjs-cache",P?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let x=(0,h.fromNodeOutgoingHttpHeaders)(d.value.headers);return a&&D||x.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||x.get("Cache-Control")||x.set("Cache-Control",(0,f.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(L,W,new Response(d.value.body,{headers:x,status:d.value.status||200})),null};F?await l(F):await $.withPropagatedContext(e.headers,()=>$.trace(d.BaseServerSpan.handleRequest,{spanName:`${H} ${R}`,kind:i.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},l))}catch(t){if(t instanceof x.NoFallbackError||await O.onRequestError(e,t,{routerKind:"App Router",routePath:_,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:P})},!1,S),D)throw t;return await (0,p.sendResponse)(L,W,new Response(null,{status:500})),null}}e.s(["handler",()=>P,"patchFetch",()=>S,"routeModule",()=>O,"serverHooks",()=>I,"workAsyncStorage",()=>b,"workUnitAsyncStorage",()=>C],96279)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=%5Broot-of-the-server%5D__56f5f249._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[93695,(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"))},32319,(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"))},18622,(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"))},56704,(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"))},70406,(e,r,t)=>{r.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},14747,(e,r,t)=>{r.exports=e.x("path",()=>require("path"))},57181,e=>{"use strict";var r=e.i(24868),t=e.i(22734),n=e.i(14747),o=e.i(46786),i=e.i(89196);let s=(0,n.join)((0,o.homedir)(),".config","opencode"),a=(0,n.join)(s,"oh-my-openagent.jsonc"),c=(0,n.join)(s,"oh-my-opencode.jsonc"),p="https://raw.githubusercontent.com/code-yeongyu/oh-my-openagent/v3.15.2/assets/oh-my-opencode.schema.json";function d(e){let r="object"!=typeof e||null===e||Array.isArray(e)?{}:{...e};return{...r,openEditorTargetMode:"hub"===r.openEditorTargetMode?"hub":"remote"}}function u(e=a){return e!==a?e:(0,t.existsSync)(a)?a:(0,t.existsSync)(c)?c:a}function l(e=a){try{return(0,t.existsSync)(u(e))}catch{return!1}}async function x(e=a){try{let t=await (0,r.readFile)(u(e),"utf-8");return(0,i.parse)(t,null,!1)}catch{return{}}}async function y(e,o=a){try{let s=(0,n.join)(o,"..");(0,t.existsSync)(s)||(0,t.mkdirSync)(s,{recursive:!0});let c=o===a?{...e,$schema:e.$schema||p}:e,d=(0,i.stringify)(c,null,2);await (0,r.writeFile)(o,d,"utf-8")}catch(e){throw Error(`Failed to write config: ${e}`)}}e.s(["OH_MY_OPENAGENT_CONFIG_SCHEMA",0,p,"detectConfig",()=>l,"normalizeVibePulseConfig",()=>d,"readConfig",()=>x,"resolveConfigPath",()=>u,"writeConfig",()=>y])}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__5e0a0e38._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[93695,(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"))},32319,(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"))},18622,(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"))},56704,(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"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},82414,e=>{"use strict";var t=e.i(22734),r=e.i(24868),n=e.i(46786),o=e.i(14747),i=e.i(54799),s=e.i(89196);let a=(0,o.join)((0,n.homedir)(),".config","vibepulse"),d=(0,o.join)(a,"nodes.jsonc");class l extends Error{code;constructor(e,t){super(t),this.name="NodeRegistryError",this.code=e}}function u(e){let t=e.trim();if(!t)return{ok:!1,error:"empty"};try{let e=new URL(t);if("http:"!==e.protocol&&"https:"!==e.protocol)return{ok:!1,error:"unsupported_protocol"};if(e.username||e.password)return{ok:!1,error:"credentials_not_allowed"};return{ok:!0,normalizedBaseUrl:(e.search="",e.hash="",e.toString().replace(/\/+$/,""))}}catch{return{ok:!1,error:"invalid"}}}function c(e){if(!e||"object"!=typeof e||"string"!=typeof e.nodeId||"string"!=typeof e.nodeLabel||"string"!=typeof e.baseUrl||"boolean"!=typeof e.enabled||"string"!=typeof e.token||"string"!=typeof e.createdAt||"string"!=typeof e.updatedAt)return null;let t=u(e.baseUrl);if(!t.ok)return null;let r=e.nodeId.trim(),n=e.nodeLabel.trim();return r&&n?{nodeId:r,nodeLabel:n,baseUrl:t.normalizedBaseUrl,enabled:e.enabled,token:e.token.trim(),createdAt:e.createdAt,updatedAt:e.updatedAt}:null}function p(){(0,t.existsSync)(a)||(0,t.mkdirSync)(a,{recursive:!0})}function f(){return{version:1,nodes:[]}}async function h(){try{if(p(),!(0,t.existsSync)(d)){let e=f();return await m(e),e}let e=await (0,r.readFile)(d,"utf-8"),n=(0,s.parse)(e,null,!1);if(!n||"object"!=typeof n||!Array.isArray(n.nodes))return f();let o=n.nodes.map(c).filter(e=>null!==e),i=[],a=new Set;for(let e of o)a.has(e.baseUrl)||(a.add(e.baseUrl),i.push(e));return{version:"number"==typeof n.version?n.version:1,nodes:i}}catch{return f()}}async function m(e){p();let t=(0,s.stringify)(e,null,2);await (0,r.writeFile)(d,t,"utf-8")}function v(e){return{nodeId:e.nodeId,nodeLabel:e.nodeLabel,baseUrl:e.baseUrl,enabled:e.enabled,createdAt:e.createdAt,updatedAt:e.updatedAt,tokenConfigured:e.token.trim().length>0}}function y(e){if("string"!=typeof e||""===e.trim())throw new l("node_label_required","nodeLabel is required and must be a non-empty string");return e.trim()}function b(e){if("string"!=typeof e||""===e.trim())throw new l("node_id_required","nodeId is required and must be a non-empty string");return e.trim()}function R(e){if(null==e)return"";if("string"!=typeof e)throw new l("invalid_token","token must be a string when provided");return e.trim()}function w(e){if("boolean"!=typeof e)throw new l("invalid_enabled","enabled must be a boolean");return e}function g(e){if("string"!=typeof e)throw new l("invalid_base_url","baseUrl must be a string");let t=u(e);if(!t.ok)throw new l("invalid_base_url",`baseUrl validation failed: ${t.error}`);return t.normalizedBaseUrl}function _(e,t,r){if(e.find(e=>e.baseUrl===t&&e.nodeId!==r))throw new l("duplicate_base_url",`A node with baseUrl '${t}' already exists`)}async function E(){return[...(await h()).nodes]}async function I(){return(await E()).map(v)}async function x(e){let t=y(e.nodeLabel),r=g(e.baseUrl),n=R(e.token),o=void 0===e.enabled||w(e.enabled),s=await h();_(s.nodes,r);let a=new Date().toISOString(),d={nodeId:(0,i.randomUUID)(),nodeLabel:t,baseUrl:r,enabled:o,token:n,createdAt:a,updatedAt:a};return s.nodes.push(d),await m(s),v(d)}async function A(e,t){let r=b(e);if(void 0===t.nodeLabel&&void 0===t.baseUrl&&void 0===t.token&&void 0===t.enabled)throw new l("no_updates","At least one update field is required");let n=await h(),o=n.nodes.findIndex(e=>e.nodeId===r);if(-1===o)throw new l("node_not_found",`Node '${r}' not found`);let i=n.nodes[o],s=void 0===t.nodeLabel?i.nodeLabel:y(t.nodeLabel),a=void 0===t.baseUrl?i.baseUrl:g(t.baseUrl),d=void 0===t.token?i.token:R(t.token),u=void 0===t.enabled?i.enabled:w(t.enabled);_(n.nodes,a,i.nodeId);let c={...i,nodeLabel:s,baseUrl:a,token:d,enabled:u,updatedAt:new Date().toISOString()};return n.nodes[o]=c,await m(n),v(c)}async function N(e,t){let r=b(e),n=await h(),o=n.nodes.findIndex(e=>e.nodeId===r);if(-1===o)throw new l("node_not_found",`Node '${r}' not found`);let i=n.nodes[o],s=void 0===t?!i.enabled:w(t),a={...i,enabled:s,updatedAt:new Date().toISOString()};return n.nodes[o]=a,await m(n),v(a)}async function S(e){let t=b(e),r=await h(),n=r.nodes.filter(e=>e.nodeId!==t);return n.length!==r.nodes.length&&(r.nodes=n,await m(r),!0)}e.s(["NodeRegistryError",()=>l,"createNode",()=>x,"deleteNode",()=>S,"listNodeRecords",()=>E,"listNodes",()=>I,"toggleNode",()=>N,"updateNode",()=>A])},39948,e=>{"use strict";var t=e.i(586);let r={provider:"opencode",readOnly:!1,capabilities:{openProject:!0,openEditor:!0,archive:!0,delete:!0},topology:{childSessions:"authoritative"}},n={provider:"claude-code",readOnly:!0,capabilities:{openProject:!0,openEditor:!1,archive:!0,delete:!0},topology:{childSessions:"flat"}};function o(e){return"claude-code"===e?n:r}let i="claude~";function s(e){return!!e.startsWith(i)&&a(e.slice(i.length))}function a(e){return/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)}function d(e){let r=(0,t.getSessionIdFromSourceKey)(e)??e;return s(r)||function(e){let t=e.indexOf("__");if(t<=0)return!1;let r=e.slice(0,t);return!!e.slice(t+2).startsWith("agent-")&&(a(r)||s(r))}(r)?"claude-code":"opencode"}function l(e){return a(e)?`${i}${e}`:e}function u(e){return s(e)?e.slice(i.length):e}function c(e,r,n){let{normalizedId:i,provider:a}=function(e,t){if(s(e))throw Error(`Invalid raw session id: reserved claude namespace (${e})`);let r=t??d(e);return"claude-code"===r?{normalizedId:l(e),provider:r}:{normalizedId:e,provider:r}}(r,n?.provider),u=o(a),c=u.readOnly,p=n?.readOnly??c,f=n?.capabilities??u.capabilities,h=n?.topology??u.topology;return{sourceKey:(0,t.composeSourceKey)(e,i),provider:a,readOnly:p,capabilities:f,topology:h,providerRawId:r}}function p(e){let r=(0,t.getSessionIdFromSourceKey)(e);return r?u(r):u(e)}e.s(["READONLY_PROVIDER_CONTEXT",0,n,"composeProviderSourceKey",()=>c,"detectProviderFromRawId",()=>d,"extractProviderRawId",()=>p,"getDefaultProviderContext",()=>o,"namespaceClaudeRawId",()=>l])},81951,e=>{"use strict";e.s(["RUNTIME_ROLE_ENV_VAR",0,"VIBEPULSE_RUNTIME_ROLE"])},68817,e=>{"use strict";var t=e.i(81951);let r="x-vibepulse-node-version",n={unauthorized:401,unsupported_node_version:426,node_misconfigured:503,upstream_unreachable:503,upstream_timeout:504};function o(e){return"string"!=typeof e?null:e.trim()||null}function i(e,t){let n=new Headers(t);n.set(r,"1");let i=o(e??null);return i&&n.set("authorization",`Bearer ${i}`),n}function s(e,t){return{ok:!1,reason:e,protocolVersion:"1",..."node_misconfigured"===e||"upstream_unreachable"===e||"upstream_timeout"===e?{degraded:!0}:{},...t??{}}}function a(e,t){return Response.json(s(e,t),{status:n[e]})}function d(e){return Response.json(e.body,{status:e.status})}function l(e,i={}){if("node"!==(i.runtimeRole??i.env?.[t.RUNTIME_ROLE_ENV_VAR]??process.env[t.RUNTIME_ROLE_ENV_VAR]))return{ok:!1,status:n.node_misconfigured,body:s("node_misconfigured")};let a=o(i.expectedToken)??function(e=process.env){return o(e.VIBEPULSE_NODE_TOKEN)}(i.env??process.env);if("1"!==e.headers.get(r))return{ok:!1,status:n.unsupported_node_version,body:s("unsupported_node_version")};if(a){var d;let t,r=(d=e.headers.get("authorization"),t=d?.match(/^Bearer\s+(.+)$/i),o(t?.[1]));if(!r||r!==a)return{ok:!1,status:n.unauthorized,body:s("unauthorized")}}return{ok:!0}}e.s(["NODE_PROTOCOL_VERSION",0,"1","createNodeFailureResponse",()=>a,"createNodeRequestHeaders",()=>i,"guardNodeRequest",()=>l,"toNodeRequestGuardResponse",()=>d])},586,e=>{"use strict";function t(e,t){if(!e||""===e.trim())throw Error("Invalid hostId: cannot be empty");if(!t||""===t.trim())throw Error("Invalid sessionId: cannot be empty");if(e.includes(":")||t.includes(":"))throw Error("Invalid hostId or sessionId: colon character not allowed");return`${e}:${t}`}function r(e){if("string"!=typeof e)throw Error("Invalid sourceKey: must be a string");let t=e.split(":");if(2!==t.length)throw Error("Invalid sourceKey: must contain exactly one colon separator");let[r,n]=t,o=r.trim(),i=n.trim();if(""===o||""===i)throw Error("Invalid sourceKey: hostId and sessionId cannot be empty");return{hostId:o,sessionId:i}}function n(e){try{let{sessionId:t}=r(e);return t}catch{return null}}function o(e){if("string"!=typeof e)throw Error("Invalid action session id: must be a string");let t=e.trim();if(""===t)throw Error("Invalid action session id: cannot be empty");if(!t.includes(":"))return{hostId:"local",sessionId:t,isRemote:!1};let{hostId:n,sessionId:o}=r(t);return{hostId:n,sessionId:o,isRemote:"local"!==n}}function i(e){try{let t=o(e);return t.isRemote?null:t.sessionId}catch{return null}}e.s(["composeSourceKey",()=>t,"getSessionIdFromSourceKey",()=>n,"parseActionSessionReference",()=>o,"parseSourceKey",()=>r,"resolveLocalActionSessionId",()=>i])},32798,e=>{"use strict";var t=e.i(47909),r=e.i(74017),n=e.i(96250),o=e.i(59756),i=e.i(61916),s=e.i(74677),a=e.i(69741),d=e.i(16795),l=e.i(87718),u=e.i(95169),c=e.i(47587),p=e.i(66012),f=e.i(70101),h=e.i(26937),m=e.i(10372),v=e.i(93695);e.i(52474);var y=e.i(220),b=e.i(586),R=e.i(82414),w=e.i(68817),g=e.i(39948);function _(){return Response.json({error:"Invalid action session id",reason:"invalid_action_session_id"},{status:400})}async function E(e,{params:t}){let r,{id:n}=await t;try{r=(0,b.parseActionSessionReference)(n)}catch{return _()}let o=(0,g.detectProviderFromRawId)(r.sessionId);if(!(0,g.getDefaultProviderContext)(o).capabilities.openEditor){var i;let e;return i=r.sessionId,e=(0,g.detectProviderFromRawId)(i),Response.json({error:"Session action not supported by provider",reason:"provider_capability_unsupported",provider:e,capability:"openEditor"},{status:403})}if(!r.isRemote)return _();let s=await e.json().catch(()=>({})),a=(await (0,R.listNodeRecords)()).find(e=>e.nodeId===r.hostId);if(!a||!a.enabled)return Response.json({error:"Session not found",reason:"session_not_found"},{status:404});let d=new AbortController,l=!1,u=setTimeout(()=>{l=!0,d.abort()},5e3);try{let e=await fetch(`${a.baseUrl}/api/node/sessions/${r.sessionId}/open-editor`,{method:"POST",headers:(0,w.createNodeRequestHeaders)(a.token,{"Content-Type":"application/json"}),body:JSON.stringify(s),signal:d.signal}),t=await e.json().catch(()=>({}));if(!e.ok){let r="string"==typeof t.reason?t.reason:`node_request_failed_${e.status}`;return Response.json({error:"string"==typeof t.error?t.error:"Remote open-editor failed",reason:r,..."string"==typeof t.message?{message:t.message}:{}},{status:e.status})}return Response.json(t,{status:e.status})}catch{return Response.json({error:l?"Remote node request timed out":"Remote node request failed",reason:l?"upstream_timeout":"upstream_unreachable"},{status:l?504:503})}finally{clearTimeout(u)}}e.s(["POST",()=>E],91749);var I=e.i(91749);let x=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/sessions/[id]/open-editor/route",pathname:"/api/sessions/[id]/open-editor",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/sessions/[id]/open-editor/route.ts",nextConfigOutput:"standalone",userland:I}),{workAsyncStorage:A,workUnitAsyncStorage:N,serverHooks:S}=x;function k(){return(0,n.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:N})}async function O(e,t,n){x.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let b="/api/sessions/[id]/open-editor/route";b=b.replace(/\/index$/,"")||"/";let R=await x.prepare(e,t,{srcPage:b,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:w,params:g,nextConfig:_,parsedUrl:E,isDraftMode:I,prerenderManifest:A,routerServerContext:N,isOnDemandRevalidate:S,revalidateOnlyGenerated:k,resolvedPathname:O,clientReferenceManifest:U,serverActionsManifest:C}=R,P=(0,a.normalizeAppPath)(b),T=!!(A.dynamicRoutes[P]||A.routes[O]),j=async()=>((null==N?void 0:N.render404)?await N.render404(e,t,E,!1):t.end("This page could not be found"),null);if(T&&!I){let e=!!A.routes[O],t=A.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(_.experimental.adapterPath)return await j();throw new v.NoFallbackError}}let q=null;!T||x.isDev||I||(q="/index"===(q=O)?"/":q);let L=!0===x.isDev||!T,$=T&&!L;C&&U&&(0,s.setManifestsSingleton)({page:b,clientReferenceManifest:U,serverActionsManifest:C});let D=e.method||"GET",H=(0,i.getTracer)(),K=H.getActiveScopeSpan(),F={params:g,prerenderManifest:A,renderOpts:{experimental:{authInterrupts:!!_.experimental.authInterrupts},cacheComponents:!!_.cacheComponents,supportsDynamicResponse:L,incrementalCache:(0,o.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:_.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,o)=>x.onRequestError(e,t,n,o,N)},sharedContext:{buildId:w}},M=new d.NodeNextRequest(e),V=new d.NodeNextResponse(t),B=l.NextRequestAdapter.fromNodeNextRequest(M,(0,l.signalFromNodeResponse)(t));try{let s=async e=>x.handle(B,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.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=`${D} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${b}`)}),a=!!(0,o.getRequestMeta)(e,"minimalMode"),d=async o=>{var i,d;let l=async({previousCacheEntry:r})=>{try{if(!a&&S&&k&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await s(o);e.fetchMetrics=F.renderOpts.fetchMetrics;let d=F.renderOpts.pendingWaitUntil;d&&n.waitUntil&&(n.waitUntil(d),d=void 0);let l=F.renderOpts.collectedTags;if(!T)return await (0,p.sendResponse)(M,V,i,F.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(i.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,n=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await x.onRequestError(e,t,{routerKind:"App Router",routePath:b,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,N),t}},u=await x.handleResponse({req:e,nextConfig:_,cacheKey:q,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:k,responseGenerator:l,waitUntil:n.waitUntil,isMinimalMode:a});if(!T)return null;if((null==u||null==(i=u.value)?void 0:i.kind)!==y.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(d=u.value)?void 0:d.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});a||t.setHeader("x-nextjs-cache",S?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),I&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let v=(0,f.fromNodeOutgoingHttpHeaders)(u.value.headers);return a&&T||v.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||v.get("Cache-Control")||v.set("Cache-Control",(0,h.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(M,V,new Response(u.value.body,{headers:v,status:u.value.status||200})),null};K?await d(K):await H.withPropagatedContext(e.headers,()=>H.trace(u.BaseServerSpan.handleRequest,{spanName:`${D} ${b}`,kind:i.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},d))}catch(t){if(t instanceof v.NoFallbackError||await x.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,N),T)throw t;return await (0,p.sendResponse)(M,V,new Response(null,{status:500})),null}}e.s(["handler",()=>O,"patchFetch",()=>k,"routeModule",()=>x,"serverHooks",()=>S,"workAsyncStorage",()=>A,"workUnitAsyncStorage",()=>N],32798)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__98073dd6._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[17506,e=>{"use strict";var t=e.i(22734),n=e.i(24868),r=e.i(46786),o=e.i(14747),i=e.i(89196);let s=(0,o.join)((0,r.homedir)(),".config","vibepulse"),u=(0,o.join)(s,"claude-session-overrides.jsonc"),d=Promise.resolve();function a(){(0,t.existsSync)(s)||(0,t.mkdirSync)(s,{recursive:!0})}function c(){return{version:1,sessions:[]}}function l(e){return e&&"object"==typeof e?"string"!=typeof e.sessionId||"number"!=typeof e.updatedAt||void 0!==e.archivedAt&&"number"!=typeof e.archivedAt||void 0!==e.deletedAt&&"number"!=typeof e.deletedAt||void 0!==e.restoredAt&&"number"!=typeof e.restoredAt?null:{sessionId:e.sessionId,updatedAt:e.updatedAt,..."number"==typeof e.archivedAt?{archivedAt:e.archivedAt}:{},..."number"==typeof e.deletedAt?{deletedAt:e.deletedAt}:{},..."number"==typeof e.restoredAt?{restoredAt:e.restoredAt}:{}}:null}async function f(){try{if(a(),!(0,t.existsSync)(u)){let e=c();return await p(e),e}let e=await (0,n.readFile)(u,"utf-8"),r=(0,i.parse)(e,null,!1);if(!r||"object"!=typeof r)return c();let o=Array.isArray(r.sessions)?r.sessions.map(l).filter(e=>null!==e):[];return{version:"number"==typeof r.version?r.version:1,sessions:o}}catch{return c()}}async function p(e){a();let t=`${u}.tmp`;await (0,n.writeFile)(t,(0,i.stringify)(e,null,2),"utf-8"),await (0,n.rename)(t,u)}async function m(){return(await f()).sessions}async function y(e,t){let n=async()=>{let n=await f(),r=Date.now(),o=t(n.sessions.find(t=>t.sessionId===e)??null,r),i=n.sessions.filter(t=>t.sessionId!==e);n.sessions=o?[...i,o]:i,await p(n)},r=d.then(n,n);d=r.then(()=>void 0,()=>void 0),await r}async function h(e,t=Date.now()){await y(e,(n,r)=>({sessionId:e,archivedAt:t,deletedAt:n?.deletedAt,restoredAt:void 0,updatedAt:r}))}async function v(e,t=Date.now()){await y(e,(n,r)=>({sessionId:e,deletedAt:t,restoredAt:void 0,updatedAt:r}))}async function A(e){await y(e,(t,n)=>t?void 0!==t.deletedAt?{sessionId:e,deletedAt:t.deletedAt,restoredAt:n,updatedAt:n}:{sessionId:e,restoredAt:n,updatedAt:n}:null)}e.s(["clearClaudeSessionArchived",()=>A,"listClaudeSessionOverrides",()=>m,"markClaudeSessionArchived",()=>h,"markClaudeSessionDeleted",()=>v])},81951,e=>{"use strict";e.s(["RUNTIME_ROLE_ENV_VAR",0,"VIBEPULSE_RUNTIME_ROLE"])},68817,e=>{"use strict";var t=e.i(81951);let n="x-vibepulse-node-version",r={unauthorized:401,unsupported_node_version:426,node_misconfigured:503,upstream_unreachable:503,upstream_timeout:504};function o(e){return"string"!=typeof e?null:e.trim()||null}function i(e,t){let r=new Headers(t);r.set(n,"1");let i=o(e??null);return i&&r.set("authorization",`Bearer ${i}`),r}function s(e,t){return{ok:!1,reason:e,protocolVersion:"1",..."node_misconfigured"===e||"upstream_unreachable"===e||"upstream_timeout"===e?{degraded:!0}:{},...t??{}}}function u(e,t){return Response.json(s(e,t),{status:r[e]})}function d(e){return Response.json(e.body,{status:e.status})}function a(e,i={}){if("node"!==(i.runtimeRole??i.env?.[t.RUNTIME_ROLE_ENV_VAR]??process.env[t.RUNTIME_ROLE_ENV_VAR]))return{ok:!1,status:r.node_misconfigured,body:s("node_misconfigured")};let u=o(i.expectedToken)??function(e=process.env){return o(e.VIBEPULSE_NODE_TOKEN)}(i.env??process.env);if("1"!==e.headers.get(n))return{ok:!1,status:r.unsupported_node_version,body:s("unsupported_node_version")};if(u){var d;let t,n=(d=e.headers.get("authorization"),t=d?.match(/^Bearer\s+(.+)$/i),o(t?.[1]));if(!n||n!==u)return{ok:!1,status:r.unauthorized,body:s("unauthorized")}}return{ok:!0}}e.s(["NODE_PROTOCOL_VERSION",0,"1","createNodeFailureResponse",()=>u,"createNodeRequestHeaders",()=>i,"guardNodeRequest",()=>a,"toNodeRequestGuardResponse",()=>d])},33405,(e,t,n)=>{t.exports=e.x("child_process",()=>require("child_process"))},99686,e=>{"use strict";var t=e.i(33405);let n=new Set;function r(){let e=Number(process.env.OPENCODE_DISCOVERY_TIMEOUT_MS);return Number.isFinite(e)&&e>0?e:5e3}function o(e){if(!(e instanceof Error))return!1;let t=e.message.toLowerCase();return"ETIMEDOUT"===e.code||t.includes("timed out")||t.includes("etimedout")}function i(e){let t=e.deadlineMs-Date.now();return t<=0?(e.timedOut=!0,null):Math.max(1,Math.min(e.timeoutMs,t))}function s(e){return Array.from(new Set(e.filter(e=>Number.isInteger(e)&&e>0&&e<=65535))).sort((e,t)=>e-t)}function u(){let e=r(),u={timedOut:!1,timeoutMs:e,deadlineMs:Date.now()+e},d=s([...function(e){try{let n=i(e);if(null===n)return[];let r=(0,t.execSync)("lsof -nP -iTCP -sTCP:LISTEN",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:n}).split("\n"),o=[];for(let e of r){let t=e.trim();if(!t||t.startsWith("COMMAND"))continue;let n=t.split(/\s+/),r=n[0]?.toLowerCase();if("opencode"!==r)continue;let i=t.match(/:(\d+)\s+\(LISTEN\)/);if(!i)continue;let s=parseInt(i[1],10);Number.isFinite(s)&&o.push(s)}return o}catch(t){return o(t)&&(e.timedOut=!0),[]}}(u),...function(e){try{let n=i(e);if(null===n)return[];return[...(0,t.execSync)("ps -axo command",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:n}).matchAll(/\bopencode\b[^\n]*\b--port(?:=|\s+)(\d+)\b/g)].map(e=>parseInt(e[1],10)).filter(e=>Number.isFinite(e))}catch(t){return o(t)&&(e.timedOut=!0),[]}}(u)]);for(let e of d)n.add(e);return{ports:s([...d,...Array.from(n)]),timedOut:u.timedOut}}function d(){let e=r(),n={timedOut:!1,timeoutMs:e,deadlineMs:Date.now()+e},s=function(e){try{let n=i(e);if(null===n)return[];let r=(0,t.execSync)("ps -axo pid=,command=",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:n}),o=[];for(let e of r.split("\n")){let t=e.trim();if(!t)continue;let n=t.match(/^(\d+)\s+(.+)$/);if(!n)continue;let r=parseInt(n[1],10),i=n[2];Number.isFinite(r)&&/\bopencode\b/.test(i)&&(/\b--port(?:=|\s+)\d+\b/.test(i)||o.push(r))}return Array.from(new Set(o))}catch(t){return o(t)&&(e.timedOut=!0),[]}}(n);if(!s.length)return{processes:[],timedOut:n.timedOut};let u=[],d=new Set;for(let e of s){let r=function(e,n){try{let r=i(n);if(null===r)return null;let o=(0,t.execSync)(`lsof -nP -a -p ${e} -d cwd -Fn`,{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}).split("\n").find(e=>e.startsWith("n")&&e.length>1);if(!o)return null;return o.slice(1)}catch(e){return o(e)&&(n.timedOut=!0),null}}(e,n);if(!r)continue;let s=`${e}:${r}`;d.has(s)||(d.add(s),u.push({pid:e,cwd:r}))}return{processes:u,timedOut:n.timedOut}}e.s(["discoverOpencodePortsWithMeta",()=>u,"discoverOpencodeProcessCwdsWithoutPortWithMeta",()=>d])},74579,e=>{"use strict";let t=new Map,n=new Map;function r(e){for(let[t,r]of n)e-r>6e5&&n.delete(t);if(n.size<=5e3)return;let t=n.size-5e3,r=Array.from(n.entries()).sort((e,t)=>e[1]-t[1]);for(let e=0;e<t;e++){let[t]=r[e]??[];if(!t)break;n.delete(t)}}function o(e){for(let[n,r]of t)e-r.markedAt>12096e5&&t.delete(n);if(t.size<=5e3)return;let n=t.size-5e3,r=Array.from(t.entries()).sort((e,t)=>e[1].lastSeenAt-t[1].lastSeenAt);for(let e=0;e<n;e++){let[n]=r[e]??[];if(!n)break;t.delete(n)}}function i(e,n=Date.now()){let r=t.get(e);t.set(e,{markedAt:r?.markedAt??n,lastSeenAt:n}),o(n)}function s(e){t.delete(e)}function u(e,t=Date.now()){n.set(e,t),r(t)}function d(e){n.delete(e)}function a(e,t=Date.now()){let r=n.get(e);return"number"==typeof r&&(t-r>6e5?(n.delete(e),!1):(n.delete(e),!0))}function c(e=Date.now()){r(e)}function l(e,n=Date.now()){let r=t.get(e);return!!r&&(n-r.markedAt>12096e5?(t.delete(e),!1):(t.set(e,{...r,lastSeenAt:n}),!0))}function f(e=Date.now()){o(e)}e.s(["clearSessionForceUnarchived",()=>s,"clearSessionStickyStatusBlocked",()=>d,"markSessionForceUnarchived",()=>i,"markSessionStickyStatusBlocked",()=>u,"pruneSessionForceUnarchived",()=>f,"pruneSessionStickyStatusBlocked",()=>c,"shouldForceSessionUnarchived",()=>l,"takeSessionStickyStatusBlocked",()=>a])},586,e=>{"use strict";function t(e,t){if(!e||""===e.trim())throw Error("Invalid hostId: cannot be empty");if(!t||""===t.trim())throw Error("Invalid sessionId: cannot be empty");if(e.includes(":")||t.includes(":"))throw Error("Invalid hostId or sessionId: colon character not allowed");return`${e}:${t}`}function n(e){if("string"!=typeof e)throw Error("Invalid sourceKey: must be a string");let t=e.split(":");if(2!==t.length)throw Error("Invalid sourceKey: must contain exactly one colon separator");let[n,r]=t,o=n.trim(),i=r.trim();if(""===o||""===i)throw Error("Invalid sourceKey: hostId and sessionId cannot be empty");return{hostId:o,sessionId:i}}function r(e){try{let{sessionId:t}=n(e);return t}catch{return null}}function o(e){if("string"!=typeof e)throw Error("Invalid action session id: must be a string");let t=e.trim();if(""===t)throw Error("Invalid action session id: cannot be empty");if(!t.includes(":"))return{hostId:"local",sessionId:t,isRemote:!1};let{hostId:r,sessionId:o}=n(t);return{hostId:r,sessionId:o,isRemote:"local"!==r}}function i(e){try{let t=o(e);return t.isRemote?null:t.sessionId}catch{return null}}e.s(["composeSourceKey",()=>t,"getSessionIdFromSourceKey",()=>r,"parseActionSessionReference",()=>o,"parseSourceKey",()=>n,"resolveLocalActionSessionId",()=>i])},39948,e=>{"use strict";var t=e.i(586);let n={provider:"opencode",readOnly:!1,capabilities:{openProject:!0,openEditor:!0,archive:!0,delete:!0},topology:{childSessions:"authoritative"}},r={provider:"claude-code",readOnly:!0,capabilities:{openProject:!0,openEditor:!1,archive:!0,delete:!0},topology:{childSessions:"flat"}};function o(e){return"claude-code"===e?r:n}let i="claude~";function s(e){return!!e.startsWith(i)&&u(e.slice(i.length))}function u(e){return/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)}function d(e){let n=(0,t.getSessionIdFromSourceKey)(e)??e;return s(n)||function(e){let t=e.indexOf("__");if(t<=0)return!1;let n=e.slice(0,t);return!!e.slice(t+2).startsWith("agent-")&&(u(n)||s(n))}(n)?"claude-code":"opencode"}function a(e){return u(e)?`${i}${e}`:e}function c(e){return s(e)?e.slice(i.length):e}function l(e,n,r){let{normalizedId:i,provider:u}=function(e,t){if(s(e))throw Error(`Invalid raw session id: reserved claude namespace (${e})`);let n=t??d(e);return"claude-code"===n?{normalizedId:a(e),provider:n}:{normalizedId:e,provider:n}}(n,r?.provider),c=o(u),l=c.readOnly,f=r?.readOnly??l,p=r?.capabilities??c.capabilities,m=r?.topology??c.topology;return{sourceKey:(0,t.composeSourceKey)(e,i),provider:u,readOnly:f,capabilities:p,topology:m,providerRawId:n}}function f(e){let n=(0,t.getSessionIdFromSourceKey)(e);return n?c(n):c(e)}e.s(["READONLY_PROVIDER_CONTEXT",0,r,"composeProviderSourceKey",()=>l,"detectProviderFromRawId",()=>d,"extractProviderRawId",()=>f,"getDefaultProviderContext",()=>o,"namespaceClaudeRawId",()=>a])}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__b7b717eb._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[81951,e=>{"use strict";e.s(["RUNTIME_ROLE_ENV_VAR",0,"VIBEPULSE_RUNTIME_ROLE"])},68817,e=>{"use strict";var t=e.i(81951);let r="x-vibepulse-node-version",n={unauthorized:401,unsupported_node_version:426,node_misconfigured:503,upstream_unreachable:503,upstream_timeout:504};function o(e){return"string"!=typeof e?null:e.trim()||null}function s(e,t){let n=new Headers(t);n.set(r,"1");let s=o(e??null);return s&&n.set("authorization",`Bearer ${s}`),n}function i(e,t){return{ok:!1,reason:e,protocolVersion:"1",..."node_misconfigured"===e||"upstream_unreachable"===e||"upstream_timeout"===e?{degraded:!0}:{},...t??{}}}function a(e,t){return Response.json(i(e,t),{status:n[e]})}function u(e){return Response.json(e.body,{status:e.status})}function l(e,s={}){if("node"!==(s.runtimeRole??s.env?.[t.RUNTIME_ROLE_ENV_VAR]??process.env[t.RUNTIME_ROLE_ENV_VAR]))return{ok:!1,status:n.node_misconfigured,body:i("node_misconfigured")};let a=o(s.expectedToken)??function(e=process.env){return o(e.VIBEPULSE_NODE_TOKEN)}(s.env??process.env);if("1"!==e.headers.get(r))return{ok:!1,status:n.unsupported_node_version,body:i("unsupported_node_version")};if(a){var u;let t,r=(u=e.headers.get("authorization"),t=u?.match(/^Bearer\s+(.+)$/i),o(t?.[1]));if(!r||r!==a)return{ok:!1,status:n.unauthorized,body:i("unauthorized")}}return{ok:!0}}e.s(["NODE_PROTOCOL_VERSION",0,"1","createNodeFailureResponse",()=>a,"createNodeRequestHeaders",()=>s,"guardNodeRequest",()=>l,"toNodeRequestGuardResponse",()=>u])},93695,(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"))},32319,(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"))},18622,(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"))},56704,(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"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},33405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},99686,e=>{"use strict";var t=e.i(33405);let r=new Set;function n(){let e=Number(process.env.OPENCODE_DISCOVERY_TIMEOUT_MS);return Number.isFinite(e)&&e>0?e:5e3}function o(e){if(!(e instanceof Error))return!1;let t=e.message.toLowerCase();return"ETIMEDOUT"===e.code||t.includes("timed out")||t.includes("etimedout")}function s(e){let t=e.deadlineMs-Date.now();return t<=0?(e.timedOut=!0,null):Math.max(1,Math.min(e.timeoutMs,t))}function i(e){return Array.from(new Set(e.filter(e=>Number.isInteger(e)&&e>0&&e<=65535))).sort((e,t)=>e-t)}function a(){let e=n(),a={timedOut:!1,timeoutMs:e,deadlineMs:Date.now()+e},u=i([...function(e){try{let r=s(e);if(null===r)return[];let n=(0,t.execSync)("lsof -nP -iTCP -sTCP:LISTEN",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}).split("\n"),o=[];for(let e of n){let t=e.trim();if(!t||t.startsWith("COMMAND"))continue;let r=t.split(/\s+/),n=r[0]?.toLowerCase();if("opencode"!==n)continue;let s=t.match(/:(\d+)\s+\(LISTEN\)/);if(!s)continue;let i=parseInt(s[1],10);Number.isFinite(i)&&o.push(i)}return o}catch(t){return o(t)&&(e.timedOut=!0),[]}}(a),...function(e){try{let r=s(e);if(null===r)return[];return[...(0,t.execSync)("ps -axo command",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}).matchAll(/\bopencode\b[^\n]*\b--port(?:=|\s+)(\d+)\b/g)].map(e=>parseInt(e[1],10)).filter(e=>Number.isFinite(e))}catch(t){return o(t)&&(e.timedOut=!0),[]}}(a)]);for(let e of u)r.add(e);return{ports:i([...u,...Array.from(r)]),timedOut:a.timedOut}}function u(){let e=n(),r={timedOut:!1,timeoutMs:e,deadlineMs:Date.now()+e},i=function(e){try{let r=s(e);if(null===r)return[];let n=(0,t.execSync)("ps -axo pid=,command=",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}),o=[];for(let e of n.split("\n")){let t=e.trim();if(!t)continue;let r=t.match(/^(\d+)\s+(.+)$/);if(!r)continue;let n=parseInt(r[1],10),s=r[2];Number.isFinite(n)&&/\bopencode\b/.test(s)&&(/\b--port(?:=|\s+)\d+\b/.test(s)||o.push(n))}return Array.from(new Set(o))}catch(t){return o(t)&&(e.timedOut=!0),[]}}(r);if(!i.length)return{processes:[],timedOut:r.timedOut};let a=[],u=new Set;for(let e of i){let n=function(e,r){try{let n=s(r);if(null===n)return null;let o=(0,t.execSync)(`lsof -nP -a -p ${e} -d cwd -Fn`,{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:n}).split("\n").find(e=>e.startsWith("n")&&e.length>1);if(!o)return null;return o.slice(1)}catch(e){return o(e)&&(r.timedOut=!0),null}}(e,r);if(!n)continue;let i=`${e}:${n}`;u.has(i)||(u.add(i),a.push({pid:e,cwd:n}))}return{processes:a,timedOut:r.timedOut}}e.s(["discoverOpencodePortsWithMeta",()=>a,"discoverOpencodeProcessCwdsWithoutPortWithMeta",()=>u])},74579,e=>{"use strict";let t=new Map,r=new Map;function n(e){for(let[t,n]of r)e-n>6e5&&r.delete(t);if(r.size<=5e3)return;let t=r.size-5e3,n=Array.from(r.entries()).sort((e,t)=>e[1]-t[1]);for(let e=0;e<t;e++){let[t]=n[e]??[];if(!t)break;r.delete(t)}}function o(e){for(let[r,n]of t)e-n.markedAt>12096e5&&t.delete(r);if(t.size<=5e3)return;let r=t.size-5e3,n=Array.from(t.entries()).sort((e,t)=>e[1].lastSeenAt-t[1].lastSeenAt);for(let e=0;e<r;e++){let[r]=n[e]??[];if(!r)break;t.delete(r)}}function s(e,r=Date.now()){let n=t.get(e);t.set(e,{markedAt:n?.markedAt??r,lastSeenAt:r}),o(r)}function i(e){t.delete(e)}function a(e,t=Date.now()){r.set(e,t),n(t)}function u(e){r.delete(e)}function l(e,t=Date.now()){let n=r.get(e);return"number"==typeof n&&(t-n>6e5?(r.delete(e),!1):(r.delete(e),!0))}function d(e=Date.now()){n(e)}function c(e,r=Date.now()){let n=t.get(e);return!!n&&(r-n.markedAt>12096e5?(t.delete(e),!1):(t.set(e,{...n,lastSeenAt:r}),!0))}function p(e=Date.now()){o(e)}e.s(["clearSessionForceUnarchived",()=>i,"clearSessionStickyStatusBlocked",()=>u,"markSessionForceUnarchived",()=>s,"markSessionStickyStatusBlocked",()=>a,"pruneSessionForceUnarchived",()=>p,"pruneSessionStickyStatusBlocked",()=>d,"shouldForceSessionUnarchived",()=>c,"takeSessionStickyStatusBlocked",()=>l])},69917,e=>{"use strict";var t=e.i(47909),r=e.i(74017),n=e.i(96250),o=e.i(59756),s=e.i(61916),i=e.i(74677),a=e.i(69741),u=e.i(16795),l=e.i(87718),d=e.i(95169),c=e.i(47587),p=e.i(66012),f=e.i(70101),h=e.i(26937),m=e.i(10372),R=e.i(93695);e.i(52474);var v=e.i(220),g=e.i(99686),x=e.i(68817),E=e.i(74579);async function w(e,{params:t}){let r,n,o=(0,x.guardNodeRequest)(e);if(!o.ok)return(0,x.toNodeRequestGuardResponse)(o);let{id:s}=await t,i=!(n=s.trim())||n.includes(":")?null:n;if(!i)return Response.json({error:"Invalid node session id"},{status:400});let{ports:a,timedOut:u}=(0,g.discoverOpencodePortsWithMeta)();if(!a.length)return(0,x.createNodeFailureResponse)(u?"upstream_timeout":"upstream_unreachable",{role:"node",upstream:{kind:"opencode",reachable:!1}});let l=null;for(let e of a)try{let t=await fetch(`http://localhost:${e}/session/${i}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({time:{archived:Date.now()}})});if(t.ok)return(0,E.clearSessionForceUnarchived)(i),(0,E.markSessionStickyStatusBlocked)(i),Response.json({success:!0});if(404===t.status)continue;l=t.status,r=await t.text().catch(()=>"")||void 0}catch(e){l=503,r=e instanceof Error?e.message:String(e)}return null!==l?Response.json({error:"Failed to archive session",reason:503===l?"upstream_unreachable":`node_request_failed_${l}`,...r?{message:r}:{}},{status:l}):Response.json({error:"Session not found",reason:"session_not_found"},{status:404})}e.s(["POST",()=>w,"dynamic",0,"force-dynamic"],86580);var y=e.i(86580);let S=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/node/sessions/[id]/archive/route",pathname:"/api/node/sessions/[id]/archive",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/node/sessions/[id]/archive/route.ts",nextConfigOutput:"standalone",userland:y}),{workAsyncStorage:_,workUnitAsyncStorage:O,serverHooks:b}=S;function N(){return(0,n.patchFetch)({workAsyncStorage:_,workUnitAsyncStorage:O})}async function k(e,t,n){S.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/node/sessions/[id]/archive/route";g=g.replace(/\/index$/,"")||"/";let x=await S.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!x)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:E,params:w,nextConfig:y,parsedUrl:_,isDraftMode:O,prerenderManifest:b,routerServerContext:N,isOnDemandRevalidate:k,revalidateOnlyGenerated:A,resolvedPathname:C,clientReferenceManifest:T,serverActionsManifest:P}=x,I=(0,a.normalizeAppPath)(g),M=!!(b.dynamicRoutes[I]||b.routes[C]),D=async()=>((null==N?void 0:N.render404)?await N.render404(e,t,_,!1):t.end("This page could not be found"),null);if(M&&!O){let e=!!b.routes[C],t=b.dynamicRoutes[I];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await D();throw new R.NoFallbackError}}let U=null;!M||S.isDev||O||(U="/index"===(U=C)?"/":U);let q=!0===S.isDev||!M,j=M&&!q;P&&T&&(0,i.setManifestsSingleton)({page:g,clientReferenceManifest:T,serverActionsManifest:P});let F=e.method||"GET",H=(0,s.getTracer)(),$=H.getActiveScopeSpan(),L={params:w,prerenderManifest:b,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:q,incrementalCache:(0,o.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,o)=>S.onRequestError(e,t,n,o,N)},sharedContext:{buildId:E}},B=new u.NodeNextRequest(e),V=new u.NodeNextResponse(t),z=l.NextRequestAdapter.fromNodeNextRequest(B,(0,l.signalFromNodeResponse)(t));try{let i=async e=>S.handle(z,L).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${F} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${F} ${g}`)}),a=!!(0,o.getRequestMeta)(e,"minimalMode"),u=async o=>{var s,u;let l=async({previousCacheEntry:r})=>{try{if(!a&&k&&A&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(o);e.fetchMetrics=L.renderOpts.fetchMetrics;let u=L.renderOpts.pendingWaitUntil;u&&n.waitUntil&&(n.waitUntil(u),u=void 0);let l=L.renderOpts.collectedTags;if(!M)return await (0,p.sendResponse)(B,V,s,L.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==L.renderOpts.collectedRevalidate&&!(L.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&L.renderOpts.collectedRevalidate,n=void 0===L.renderOpts.collectedExpire||L.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:L.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:k})},!1,N),t}},d=await S.handleResponse({req:e,nextConfig:y,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:k,revalidateOnlyGenerated:A,responseGenerator:l,waitUntil:n.waitUntil,isMinimalMode:a});if(!M)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(u=d.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});a||t.setHeader("x-nextjs-cache",k?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),O&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let R=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return a&&M||R.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||R.get("Cache-Control")||R.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(B,V,new Response(d.value.body,{headers:R,status:d.value.status||200})),null};$?await u($):await H.withPropagatedContext(e.headers,()=>H.trace(d.BaseServerSpan.handleRequest,{spanName:`${F} ${g}`,kind:s.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},u))}catch(t){if(t instanceof R.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:k})},!1,N),M)throw t;return await (0,p.sendResponse)(B,V,new Response(null,{status:500})),null}}e.s(["handler",()=>k,"patchFetch",()=>N,"routeModule",()=>S,"serverHooks",()=>b,"workAsyncStorage",()=>_,"workUnitAsyncStorage",()=>O],69917)}];
|
|
1
|
+
module.exports=[81951,e=>{"use strict";e.s(["RUNTIME_ROLE_ENV_VAR",0,"VIBEPULSE_RUNTIME_ROLE"])},68817,e=>{"use strict";var t=e.i(81951);let r="x-vibepulse-node-version",n={unauthorized:401,unsupported_node_version:426,node_misconfigured:503,upstream_unreachable:503,upstream_timeout:504};function o(e){return"string"!=typeof e?null:e.trim()||null}function s(e,t){let n=new Headers(t);n.set(r,"1");let s=o(e??null);return s&&n.set("authorization",`Bearer ${s}`),n}function i(e,t){return{ok:!1,reason:e,protocolVersion:"1",..."node_misconfigured"===e||"upstream_unreachable"===e||"upstream_timeout"===e?{degraded:!0}:{},...t??{}}}function a(e,t){return Response.json(i(e,t),{status:n[e]})}function u(e){return Response.json(e.body,{status:e.status})}function l(e,s={}){if("node"!==(s.runtimeRole??s.env?.[t.RUNTIME_ROLE_ENV_VAR]??process.env[t.RUNTIME_ROLE_ENV_VAR]))return{ok:!1,status:n.node_misconfigured,body:i("node_misconfigured")};let a=o(s.expectedToken)??function(e=process.env){return o(e.VIBEPULSE_NODE_TOKEN)}(s.env??process.env);if("1"!==e.headers.get(r))return{ok:!1,status:n.unsupported_node_version,body:i("unsupported_node_version")};if(a){var u;let t,r=(u=e.headers.get("authorization"),t=u?.match(/^Bearer\s+(.+)$/i),o(t?.[1]));if(!r||r!==a)return{ok:!1,status:n.unauthorized,body:i("unauthorized")}}return{ok:!0}}e.s(["NODE_PROTOCOL_VERSION",0,"1","createNodeFailureResponse",()=>a,"createNodeRequestHeaders",()=>s,"guardNodeRequest",()=>l,"toNodeRequestGuardResponse",()=>u])},93695,(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"))},32319,(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"))},18622,(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"))},56704,(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"))},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},33405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},99686,e=>{"use strict";var t=e.i(33405);let r=new Set;function n(){let e=Number(process.env.OPENCODE_DISCOVERY_TIMEOUT_MS);return Number.isFinite(e)&&e>0?e:5e3}function o(e){if(!(e instanceof Error))return!1;let t=e.message.toLowerCase();return"ETIMEDOUT"===e.code||t.includes("timed out")||t.includes("etimedout")}function s(e){let t=e.deadlineMs-Date.now();return t<=0?(e.timedOut=!0,null):Math.max(1,Math.min(e.timeoutMs,t))}function i(e){return Array.from(new Set(e.filter(e=>Number.isInteger(e)&&e>0&&e<=65535))).sort((e,t)=>e-t)}function a(){let e=n(),a={timedOut:!1,timeoutMs:e,deadlineMs:Date.now()+e},u=i([...function(e){try{let r=s(e);if(null===r)return[];let n=(0,t.execSync)("lsof -nP -iTCP -sTCP:LISTEN",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}).split("\n"),o=[];for(let e of n){let t=e.trim();if(!t||t.startsWith("COMMAND"))continue;let r=t.split(/\s+/),n=r[0]?.toLowerCase();if("opencode"!==n)continue;let s=t.match(/:(\d+)\s+\(LISTEN\)/);if(!s)continue;let i=parseInt(s[1],10);Number.isFinite(i)&&o.push(i)}return o}catch(t){return o(t)&&(e.timedOut=!0),[]}}(a),...function(e){try{let r=s(e);if(null===r)return[];return[...(0,t.execSync)("ps -axo command",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}).matchAll(/\bopencode\b[^\n]*\b--port(?:=|\s+)(\d+)\b/g)].map(e=>parseInt(e[1],10)).filter(e=>Number.isFinite(e))}catch(t){return o(t)&&(e.timedOut=!0),[]}}(a)]);for(let e of u)r.add(e);return{ports:i([...u,...Array.from(r)]),timedOut:a.timedOut}}function u(){let e=n(),r={timedOut:!1,timeoutMs:e,deadlineMs:Date.now()+e},i=function(e){try{let r=s(e);if(null===r)return[];let n=(0,t.execSync)("ps -axo pid=,command=",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}),o=[];for(let e of n.split("\n")){let t=e.trim();if(!t)continue;let r=t.match(/^(\d+)\s+(.+)$/);if(!r)continue;let n=parseInt(r[1],10),s=r[2];Number.isFinite(n)&&/\bopencode\b/.test(s)&&(/\b--port(?:=|\s+)\d+\b/.test(s)||o.push(n))}return Array.from(new Set(o))}catch(t){return o(t)&&(e.timedOut=!0),[]}}(r);if(!i.length)return{processes:[],timedOut:r.timedOut};let a=[],u=new Set;for(let e of i){let n=function(e,r){try{let n=s(r);if(null===n)return null;let o=(0,t.execSync)(`lsof -nP -a -p ${e} -d cwd -Fn`,{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:n}).split("\n").find(e=>e.startsWith("n")&&e.length>1);if(!o)return null;return o.slice(1)}catch(e){return o(e)&&(r.timedOut=!0),null}}(e,r);if(!n)continue;let i=`${e}:${n}`;u.has(i)||(u.add(i),a.push({pid:e,cwd:n}))}return{processes:a,timedOut:r.timedOut}}e.s(["discoverOpencodePortsWithMeta",()=>a,"discoverOpencodeProcessCwdsWithoutPortWithMeta",()=>u])},74579,e=>{"use strict";let t=new Map,r=new Map;function n(e){for(let[t,n]of r)e-n>6e5&&r.delete(t);if(r.size<=5e3)return;let t=r.size-5e3,n=Array.from(r.entries()).sort((e,t)=>e[1]-t[1]);for(let e=0;e<t;e++){let[t]=n[e]??[];if(!t)break;r.delete(t)}}function o(e){for(let[r,n]of t)e-n.markedAt>12096e5&&t.delete(r);if(t.size<=5e3)return;let r=t.size-5e3,n=Array.from(t.entries()).sort((e,t)=>e[1].lastSeenAt-t[1].lastSeenAt);for(let e=0;e<r;e++){let[r]=n[e]??[];if(!r)break;t.delete(r)}}function s(e,r=Date.now()){let n=t.get(e);t.set(e,{markedAt:n?.markedAt??r,lastSeenAt:r}),o(r)}function i(e){t.delete(e)}function a(e,t=Date.now()){r.set(e,t),n(t)}function u(e){r.delete(e)}function l(e,t=Date.now()){let n=r.get(e);return"number"==typeof n&&(t-n>6e5?(r.delete(e),!1):(r.delete(e),!0))}function d(e=Date.now()){n(e)}function c(e,r=Date.now()){let n=t.get(e);return!!n&&(r-n.markedAt>12096e5?(t.delete(e),!1):(t.set(e,{...n,lastSeenAt:r}),!0))}function p(e=Date.now()){o(e)}e.s(["clearSessionForceUnarchived",()=>i,"clearSessionStickyStatusBlocked",()=>u,"markSessionForceUnarchived",()=>s,"markSessionStickyStatusBlocked",()=>a,"pruneSessionForceUnarchived",()=>p,"pruneSessionStickyStatusBlocked",()=>d,"shouldForceSessionUnarchived",()=>c,"takeSessionStickyStatusBlocked",()=>l])},69917,e=>{"use strict";var t=e.i(47909),r=e.i(74017),n=e.i(96250),o=e.i(59756),s=e.i(61916),i=e.i(74677),a=e.i(69741),u=e.i(16795),l=e.i(87718),d=e.i(95169),c=e.i(47587),p=e.i(66012),f=e.i(70101),h=e.i(26937),m=e.i(10372),R=e.i(93695);e.i(52474);var v=e.i(220),g=e.i(99686),E=e.i(68817),x=e.i(74579);function S(e){let t=e.trim();return!t||t.includes(":")?null:t}function y(){return Response.json({error:"Invalid node session id"},{status:400})}async function w({sessionId:e,archived:t,failureMessage:r,onSuccess:n}){let o,{ports:s,timedOut:i}=(0,g.discoverOpencodePortsWithMeta)();if(!s.length)return(0,E.createNodeFailureResponse)(i?"upstream_timeout":"upstream_unreachable",{role:"node",upstream:{kind:"opencode",reachable:!1}});let a=null;for(let r of s)try{let s=await fetch(`http://localhost:${r}/session/${e}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({time:{archived:t}})});if(s.ok)return n(),Response.json({success:!0});if(404===s.status)continue;a=s.status,o=await s.text().catch(()=>"")||void 0}catch(e){a=503,o=e instanceof Error?e.message:String(e)}return null!==a?Response.json({error:r,reason:503===a?"upstream_unreachable":`node_request_failed_${a}`,...o?{message:o}:{}},{status:a}):Response.json({error:"Session not found",reason:"session_not_found"},{status:404})}async function _(e,{params:t}){let r=(0,E.guardNodeRequest)(e);if(!r.ok)return(0,E.toNodeRequestGuardResponse)(r);let{id:n}=await t,o=S(n);return o?w({sessionId:o,archived:Date.now(),failureMessage:"Failed to archive session",onSuccess:()=>{(0,x.clearSessionForceUnarchived)(o),(0,x.markSessionStickyStatusBlocked)(o)}}):y()}async function O(e,{params:t}){let r=(0,E.guardNodeRequest)(e);if(!r.ok)return(0,E.toNodeRequestGuardResponse)(r);let{id:n}=await t,o=S(n);return o?w({sessionId:o,archived:null,failureMessage:"Failed to restore session",onSuccess:()=>{(0,x.markSessionForceUnarchived)(o),(0,x.clearSessionStickyStatusBlocked)(o)}}):y()}e.s(["DELETE",()=>O,"POST",()=>_,"dynamic",0,"force-dynamic"],86580);var b=e.i(86580);let N=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/node/sessions/[id]/archive/route",pathname:"/api/node/sessions/[id]/archive",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/node/sessions/[id]/archive/route.ts",nextConfigOutput:"standalone",userland:b}),{workAsyncStorage:k,workUnitAsyncStorage:A,serverHooks:C}=N;function T(){return(0,n.patchFetch)({workAsyncStorage:k,workUnitAsyncStorage:A})}async function P(e,t,n){N.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/node/sessions/[id]/archive/route";g=g.replace(/\/index$/,"")||"/";let E=await N.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!E)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:x,params:S,nextConfig:y,parsedUrl:w,isDraftMode:_,prerenderManifest:O,routerServerContext:b,isOnDemandRevalidate:k,revalidateOnlyGenerated:A,resolvedPathname:C,clientReferenceManifest:T,serverActionsManifest:P}=E,M=(0,a.normalizeAppPath)(g),I=!!(O.dynamicRoutes[M]||O.routes[C]),D=async()=>((null==b?void 0:b.render404)?await b.render404(e,t,w,!1):t.end("This page could not be found"),null);if(I&&!_){let e=!!O.routes[C],t=O.dynamicRoutes[M];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await D();throw new R.NoFallbackError}}let U=null;!I||N.isDev||_||(U="/index"===(U=C)?"/":U);let q=!0===N.isDev||!I,F=I&&!q;P&&T&&(0,i.setManifestsSingleton)({page:g,clientReferenceManifest:T,serverActionsManifest:P});let j=e.method||"GET",H=(0,s.getTracer)(),$=H.getActiveScopeSpan(),L={params:S,prerenderManifest:O,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:q,incrementalCache:(0,o.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,o)=>N.onRequestError(e,t,n,o,b)},sharedContext:{buildId:x}},B=new u.NodeNextRequest(e),V=new u.NodeNextResponse(t),z=l.NextRequestAdapter.fromNodeNextRequest(B,(0,l.signalFromNodeResponse)(t));try{let i=async e=>N.handle(z,L).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${j} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${j} ${g}`)}),a=!!(0,o.getRequestMeta)(e,"minimalMode"),u=async o=>{var s,u;let l=async({previousCacheEntry:r})=>{try{if(!a&&k&&A&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(o);e.fetchMetrics=L.renderOpts.fetchMetrics;let u=L.renderOpts.pendingWaitUntil;u&&n.waitUntil&&(n.waitUntil(u),u=void 0);let l=L.renderOpts.collectedTags;if(!I)return await (0,p.sendResponse)(B,V,s,L.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==L.renderOpts.collectedRevalidate&&!(L.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&L.renderOpts.collectedRevalidate,n=void 0===L.renderOpts.collectedExpire||L.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:L.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await N.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:F,isOnDemandRevalidate:k})},!1,b),t}},d=await N.handleResponse({req:e,nextConfig:y,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:O,isRoutePPREnabled:!1,isOnDemandRevalidate:k,revalidateOnlyGenerated:A,responseGenerator:l,waitUntil:n.waitUntil,isMinimalMode:a});if(!I)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(u=d.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});a||t.setHeader("x-nextjs-cache",k?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),_&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let R=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return a&&I||R.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||R.get("Cache-Control")||R.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(B,V,new Response(d.value.body,{headers:R,status:d.value.status||200})),null};$?await u($):await H.withPropagatedContext(e.headers,()=>H.trace(d.BaseServerSpan.handleRequest,{spanName:`${j} ${g}`,kind:s.SpanKind.SERVER,attributes:{"http.method":j,"http.target":e.url}},u))}catch(t){if(t instanceof R.NoFallbackError||await N.onRequestError(e,t,{routerKind:"App Router",routePath:M,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:F,isOnDemandRevalidate:k})},!1,b),I)throw t;return await (0,p.sendResponse)(B,V,new Response(null,{status:500})),null}}e.s(["handler",()=>P,"patchFetch",()=>T,"routeModule",()=>N,"serverHooks",()=>C,"workAsyncStorage",()=>k,"workUnitAsyncStorage",()=>A],69917)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=%5Broot-of-the-server%5D__d8e61048._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[54799,(e,t,n)=>{t.exports=e.x("crypto",()=>require("crypto"))},82414,e=>{"use strict";var t=e.i(22734),n=e.i(24868),r=e.i(46786),o=e.i(14747),i=e.i(54799),s=e.i(89196);let d=(0,o.join)((0,r.homedir)(),".config","vibepulse"),a=(0,o.join)(d,"nodes.jsonc");class u extends Error{code;constructor(e,t){super(t),this.name="NodeRegistryError",this.code=e}}function l(e){let t=e.trim();if(!t)return{ok:!1,error:"empty"};try{let e=new URL(t);if("http:"!==e.protocol&&"https:"!==e.protocol)return{ok:!1,error:"unsupported_protocol"};if(e.username||e.password)return{ok:!1,error:"credentials_not_allowed"};return{ok:!0,normalizedBaseUrl:(e.search="",e.hash="",e.toString().replace(/\/+$/,""))}}catch{return{ok:!1,error:"invalid"}}}function c(e){if(!e||"object"!=typeof e||"string"!=typeof e.nodeId||"string"!=typeof e.nodeLabel||"string"!=typeof e.baseUrl||"boolean"!=typeof e.enabled||"string"!=typeof e.token||"string"!=typeof e.createdAt||"string"!=typeof e.updatedAt)return null;let t=l(e.baseUrl);if(!t.ok)return null;let n=e.nodeId.trim(),r=e.nodeLabel.trim();return n&&r?{nodeId:n,nodeLabel:r,baseUrl:t.normalizedBaseUrl,enabled:e.enabled,token:e.token.trim(),createdAt:e.createdAt,updatedAt:e.updatedAt}:null}function f(){(0,t.existsSync)(d)||(0,t.mkdirSync)(d,{recursive:!0})}function p(){return{version:1,nodes:[]}}async function m(){try{if(f(),!(0,t.existsSync)(a)){let e=p();return await y(e),e}let e=await (0,n.readFile)(a,"utf-8"),r=(0,s.parse)(e,null,!1);if(!r||"object"!=typeof r||!Array.isArray(r.nodes))return p();let o=r.nodes.map(c).filter(e=>null!==e),i=[],d=new Set;for(let e of o)d.has(e.baseUrl)||(d.add(e.baseUrl),i.push(e));return{version:"number"==typeof r.version?r.version:1,nodes:i}}catch{return p()}}async function y(e){f();let t=(0,s.stringify)(e,null,2);await (0,n.writeFile)(a,t,"utf-8")}function b(e){return{nodeId:e.nodeId,nodeLabel:e.nodeLabel,baseUrl:e.baseUrl,enabled:e.enabled,createdAt:e.createdAt,updatedAt:e.updatedAt,tokenConfigured:e.token.trim().length>0}}function h(e){if("string"!=typeof e||""===e.trim())throw new u("node_label_required","nodeLabel is required and must be a non-empty string");return e.trim()}function w(e){if("string"!=typeof e||""===e.trim())throw new u("node_id_required","nodeId is required and must be a non-empty string");return e.trim()}function v(e){if(null==e)return"";if("string"!=typeof e)throw new u("invalid_token","token must be a string when provided");return e.trim()}function g(e){if("boolean"!=typeof e)throw new u("invalid_enabled","enabled must be a boolean");return e}function A(e){if("string"!=typeof e)throw new u("invalid_base_url","baseUrl must be a string");let t=l(e);if(!t.ok)throw new u("invalid_base_url",`baseUrl validation failed: ${t.error}`);return t.normalizedBaseUrl}function I(e,t,n){if(e.find(e=>e.baseUrl===t&&e.nodeId!==n))throw new u("duplicate_base_url",`A node with baseUrl '${t}' already exists`)}async function S(){return[...(await m()).nodes]}async function _(){return(await S()).map(b)}async function k(e){let t=h(e.nodeLabel),n=A(e.baseUrl),r=v(e.token),o=void 0===e.enabled||g(e.enabled),s=await m();I(s.nodes,n);let d=new Date().toISOString(),a={nodeId:(0,i.randomUUID)(),nodeLabel:t,baseUrl:n,enabled:o,token:r,createdAt:d,updatedAt:d};return s.nodes.push(a),await y(s),b(a)}async function E(e,t){let n=w(e);if(void 0===t.nodeLabel&&void 0===t.baseUrl&&void 0===t.token&&void 0===t.enabled)throw new u("no_updates","At least one update field is required");let r=await m(),o=r.nodes.findIndex(e=>e.nodeId===n);if(-1===o)throw new u("node_not_found",`Node '${n}' not found`);let i=r.nodes[o],s=void 0===t.nodeLabel?i.nodeLabel:h(t.nodeLabel),d=void 0===t.baseUrl?i.baseUrl:A(t.baseUrl),a=void 0===t.token?i.token:v(t.token),l=void 0===t.enabled?i.enabled:g(t.enabled);I(r.nodes,d,i.nodeId);let c={...i,nodeLabel:s,baseUrl:d,token:a,enabled:l,updatedAt:new Date().toISOString()};return r.nodes[o]=c,await y(r),b(c)}async function O(e,t){let n=w(e),r=await m(),o=r.nodes.findIndex(e=>e.nodeId===n);if(-1===o)throw new u("node_not_found",`Node '${n}' not found`);let i=r.nodes[o],s=void 0===t?!i.enabled:g(t),d={...i,enabled:s,updatedAt:new Date().toISOString()};return r.nodes[o]=d,await y(r),b(d)}async function N(e){let t=w(e),n=await m(),r=n.nodes.filter(e=>e.nodeId!==t);return r.length!==n.nodes.length&&(n.nodes=r,await y(n),!0)}e.s(["NodeRegistryError",()=>u,"createNode",()=>k,"deleteNode",()=>N,"listNodeRecords",()=>S,"listNodes",()=>_,"toggleNode",()=>O,"updateNode",()=>E])},586,e=>{"use strict";function t(e,t){if(!e||""===e.trim())throw Error("Invalid hostId: cannot be empty");if(!t||""===t.trim())throw Error("Invalid sessionId: cannot be empty");if(e.includes(":")||t.includes(":"))throw Error("Invalid hostId or sessionId: colon character not allowed");return`${e}:${t}`}function n(e){if("string"!=typeof e)throw Error("Invalid sourceKey: must be a string");let t=e.split(":");if(2!==t.length)throw Error("Invalid sourceKey: must contain exactly one colon separator");let[n,r]=t,o=n.trim(),i=r.trim();if(""===o||""===i)throw Error("Invalid sourceKey: hostId and sessionId cannot be empty");return{hostId:o,sessionId:i}}function r(e){try{let{sessionId:t}=n(e);return t}catch{return null}}function o(e){if("string"!=typeof e)throw Error("Invalid action session id: must be a string");let t=e.trim();if(""===t)throw Error("Invalid action session id: cannot be empty");if(!t.includes(":"))return{hostId:"local",sessionId:t,isRemote:!1};let{hostId:r,sessionId:o}=n(t);return{hostId:r,sessionId:o,isRemote:"local"!==r}}function i(e){try{let t=o(e);return t.isRemote?null:t.sessionId}catch{return null}}e.s(["composeSourceKey",()=>t,"getSessionIdFromSourceKey",()=>r,"parseActionSessionReference",()=>o,"parseSourceKey",()=>n,"resolveLocalActionSessionId",()=>i])},39948,e=>{"use strict";var t=e.i(586);let n={provider:"opencode",readOnly:!1,capabilities:{openProject:!0,openEditor:!0,archive:!0,delete:!0},topology:{childSessions:"authoritative"}},r={provider:"claude-code",readOnly:!0,capabilities:{openProject:!0,openEditor:!1,archive:!0,delete:!0},topology:{childSessions:"flat"}};function o(e){return"claude-code"===e?r:n}let i="claude~";function s(e){return!!e.startsWith(i)&&d(e.slice(i.length))}function d(e){return/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(e)}function a(e){let n=(0,t.getSessionIdFromSourceKey)(e)??e;return s(n)||function(e){let t=e.indexOf("__");if(t<=0)return!1;let n=e.slice(0,t);return!!e.slice(t+2).startsWith("agent-")&&(d(n)||s(n))}(n)?"claude-code":"opencode"}function u(e){return d(e)?`${i}${e}`:e}function l(e){return s(e)?e.slice(i.length):e}function c(e,n,r){let{normalizedId:i,provider:d}=function(e,t){if(s(e))throw Error(`Invalid raw session id: reserved claude namespace (${e})`);let n=t??a(e);return"claude-code"===n?{normalizedId:u(e),provider:n}:{normalizedId:e,provider:n}}(n,r?.provider),l=o(d),c=l.readOnly,f=r?.readOnly??c,p=r?.capabilities??l.capabilities,m=r?.topology??l.topology;return{sourceKey:(0,t.composeSourceKey)(e,i),provider:d,readOnly:f,capabilities:p,topology:m,providerRawId:n}}function f(e){let n=(0,t.getSessionIdFromSourceKey)(e);return n?l(n):l(e)}e.s(["READONLY_PROVIDER_CONTEXT",0,r,"composeProviderSourceKey",()=>c,"detectProviderFromRawId",()=>a,"extractProviderRawId",()=>f,"getDefaultProviderContext",()=>o,"namespaceClaudeRawId",()=>u])},81951,e=>{"use strict";e.s(["RUNTIME_ROLE_ENV_VAR",0,"VIBEPULSE_RUNTIME_ROLE"])},68817,e=>{"use strict";var t=e.i(81951);let n="x-vibepulse-node-version",r={unauthorized:401,unsupported_node_version:426,node_misconfigured:503,upstream_unreachable:503,upstream_timeout:504};function o(e){return"string"!=typeof e?null:e.trim()||null}function i(e,t){let r=new Headers(t);r.set(n,"1");let i=o(e??null);return i&&r.set("authorization",`Bearer ${i}`),r}function s(e,t){return{ok:!1,reason:e,protocolVersion:"1",..."node_misconfigured"===e||"upstream_unreachable"===e||"upstream_timeout"===e?{degraded:!0}:{},...t??{}}}function d(e,t){return Response.json(s(e,t),{status:r[e]})}function a(e){return Response.json(e.body,{status:e.status})}function u(e,i={}){if("node"!==(i.runtimeRole??i.env?.[t.RUNTIME_ROLE_ENV_VAR]??process.env[t.RUNTIME_ROLE_ENV_VAR]))return{ok:!1,status:r.node_misconfigured,body:s("node_misconfigured")};let d=o(i.expectedToken)??function(e=process.env){return o(e.VIBEPULSE_NODE_TOKEN)}(i.env??process.env);if("1"!==e.headers.get(n))return{ok:!1,status:r.unsupported_node_version,body:s("unsupported_node_version")};if(d){var a;let t,n=(a=e.headers.get("authorization"),t=a?.match(/^Bearer\s+(.+)$/i),o(t?.[1]));if(!n||n!==d)return{ok:!1,status:r.unauthorized,body:s("unauthorized")}}return{ok:!0}}e.s(["NODE_PROTOCOL_VERSION",0,"1","createNodeFailureResponse",()=>d,"createNodeRequestHeaders",()=>i,"guardNodeRequest",()=>u,"toNodeRequestGuardResponse",()=>a])},33405,(e,t,n)=>{t.exports=e.x("child_process",()=>require("child_process"))},99686,e=>{"use strict";var t=e.i(33405);let n=new Set;function r(){let e=Number(process.env.OPENCODE_DISCOVERY_TIMEOUT_MS);return Number.isFinite(e)&&e>0?e:5e3}function o(e){if(!(e instanceof Error))return!1;let t=e.message.toLowerCase();return"ETIMEDOUT"===e.code||t.includes("timed out")||t.includes("etimedout")}function i(e){let t=e.deadlineMs-Date.now();return t<=0?(e.timedOut=!0,null):Math.max(1,Math.min(e.timeoutMs,t))}function s(e){return Array.from(new Set(e.filter(e=>Number.isInteger(e)&&e>0&&e<=65535))).sort((e,t)=>e-t)}function d(){let e=r(),d={timedOut:!1,timeoutMs:e,deadlineMs:Date.now()+e},a=s([...function(e){try{let n=i(e);if(null===n)return[];let r=(0,t.execSync)("lsof -nP -iTCP -sTCP:LISTEN",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:n}).split("\n"),o=[];for(let e of r){let t=e.trim();if(!t||t.startsWith("COMMAND"))continue;let n=t.split(/\s+/),r=n[0]?.toLowerCase();if("opencode"!==r)continue;let i=t.match(/:(\d+)\s+\(LISTEN\)/);if(!i)continue;let s=parseInt(i[1],10);Number.isFinite(s)&&o.push(s)}return o}catch(t){return o(t)&&(e.timedOut=!0),[]}}(d),...function(e){try{let n=i(e);if(null===n)return[];return[...(0,t.execSync)("ps -axo command",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:n}).matchAll(/\bopencode\b[^\n]*\b--port(?:=|\s+)(\d+)\b/g)].map(e=>parseInt(e[1],10)).filter(e=>Number.isFinite(e))}catch(t){return o(t)&&(e.timedOut=!0),[]}}(d)]);for(let e of a)n.add(e);return{ports:s([...a,...Array.from(n)]),timedOut:d.timedOut}}function a(){let e=r(),n={timedOut:!1,timeoutMs:e,deadlineMs:Date.now()+e},s=function(e){try{let n=i(e);if(null===n)return[];let r=(0,t.execSync)("ps -axo pid=,command=",{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:n}),o=[];for(let e of r.split("\n")){let t=e.trim();if(!t)continue;let n=t.match(/^(\d+)\s+(.+)$/);if(!n)continue;let r=parseInt(n[1],10),i=n[2];Number.isFinite(r)&&/\bopencode\b/.test(i)&&(/\b--port(?:=|\s+)\d+\b/.test(i)||o.push(r))}return Array.from(new Set(o))}catch(t){return o(t)&&(e.timedOut=!0),[]}}(n);if(!s.length)return{processes:[],timedOut:n.timedOut};let d=[],a=new Set;for(let e of s){let r=function(e,n){try{let r=i(n);if(null===r)return null;let o=(0,t.execSync)(`lsof -nP -a -p ${e} -d cwd -Fn`,{encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:r}).split("\n").find(e=>e.startsWith("n")&&e.length>1);if(!o)return null;return o.slice(1)}catch(e){return o(e)&&(n.timedOut=!0),null}}(e,n);if(!r)continue;let s=`${e}:${r}`;a.has(s)||(a.add(s),d.push({pid:e,cwd:r}))}return{processes:d,timedOut:n.timedOut}}e.s(["discoverOpencodePortsWithMeta",()=>d,"discoverOpencodeProcessCwdsWithoutPortWithMeta",()=>a])},74579,e=>{"use strict";let t=new Map,n=new Map;function r(e){for(let[t,r]of n)e-r>6e5&&n.delete(t);if(n.size<=5e3)return;let t=n.size-5e3,r=Array.from(n.entries()).sort((e,t)=>e[1]-t[1]);for(let e=0;e<t;e++){let[t]=r[e]??[];if(!t)break;n.delete(t)}}function o(e){for(let[n,r]of t)e-r.markedAt>12096e5&&t.delete(n);if(t.size<=5e3)return;let n=t.size-5e3,r=Array.from(t.entries()).sort((e,t)=>e[1].lastSeenAt-t[1].lastSeenAt);for(let e=0;e<n;e++){let[n]=r[e]??[];if(!n)break;t.delete(n)}}function i(e,n=Date.now()){let r=t.get(e);t.set(e,{markedAt:r?.markedAt??n,lastSeenAt:n}),o(n)}function s(e){t.delete(e)}function d(e,t=Date.now()){n.set(e,t),r(t)}function a(e){n.delete(e)}function u(e,t=Date.now()){let r=n.get(e);return"number"==typeof r&&(t-r>6e5?(n.delete(e),!1):(n.delete(e),!0))}function l(e=Date.now()){r(e)}function c(e,n=Date.now()){let r=t.get(e);return!!r&&(n-r.markedAt>12096e5?(t.delete(e),!1):(t.set(e,{...r,lastSeenAt:n}),!0))}function f(e=Date.now()){o(e)}e.s(["clearSessionForceUnarchived",()=>s,"clearSessionStickyStatusBlocked",()=>a,"markSessionForceUnarchived",()=>i,"markSessionStickyStatusBlocked",()=>d,"pruneSessionForceUnarchived",()=>f,"pruneSessionStickyStatusBlocked",()=>l,"shouldForceSessionUnarchived",()=>c,"takeSessionStickyStatusBlocked",()=>u])},17506,e=>{"use strict";var t=e.i(22734),n=e.i(24868),r=e.i(46786),o=e.i(14747),i=e.i(89196);let s=(0,o.join)((0,r.homedir)(),".config","vibepulse"),d=(0,o.join)(s,"claude-session-overrides.jsonc"),a=Promise.resolve();function u(){(0,t.existsSync)(s)||(0,t.mkdirSync)(s,{recursive:!0})}function l(){return{version:1,sessions:[]}}function c(e){return e&&"object"==typeof e?"string"!=typeof e.sessionId||"number"!=typeof e.updatedAt||void 0!==e.archivedAt&&"number"!=typeof e.archivedAt||void 0!==e.deletedAt&&"number"!=typeof e.deletedAt||void 0!==e.restoredAt&&"number"!=typeof e.restoredAt?null:{sessionId:e.sessionId,updatedAt:e.updatedAt,..."number"==typeof e.archivedAt?{archivedAt:e.archivedAt}:{},..."number"==typeof e.deletedAt?{deletedAt:e.deletedAt}:{},..."number"==typeof e.restoredAt?{restoredAt:e.restoredAt}:{}}:null}async function f(){try{if(u(),!(0,t.existsSync)(d)){let e=l();return await p(e),e}let e=await (0,n.readFile)(d,"utf-8"),r=(0,i.parse)(e,null,!1);if(!r||"object"!=typeof r)return l();let o=Array.isArray(r.sessions)?r.sessions.map(c).filter(e=>null!==e):[];return{version:"number"==typeof r.version?r.version:1,sessions:o}}catch{return l()}}async function p(e){u();let t=`${d}.tmp`;await (0,n.writeFile)(t,(0,i.stringify)(e,null,2),"utf-8"),await (0,n.rename)(t,d)}async function m(){return(await f()).sessions}async function y(e,t){let n=async()=>{let n=await f(),r=Date.now(),o=t(n.sessions.find(t=>t.sessionId===e)??null,r),i=n.sessions.filter(t=>t.sessionId!==e);n.sessions=o?[...i,o]:i,await p(n)},r=a.then(n,n);a=r.then(()=>void 0,()=>void 0),await r}async function b(e,t=Date.now()){await y(e,(n,r)=>({sessionId:e,archivedAt:t,deletedAt:n?.deletedAt,restoredAt:void 0,updatedAt:r}))}async function h(e,t=Date.now()){await y(e,(n,r)=>({sessionId:e,deletedAt:t,restoredAt:void 0,updatedAt:r}))}async function w(e){await y(e,(t,n)=>t?void 0!==t.deletedAt?{sessionId:e,deletedAt:t.deletedAt,restoredAt:n,updatedAt:n}:{sessionId:e,restoredAt:n,updatedAt:n}:null)}e.s(["clearClaudeSessionArchived",()=>w,"listClaudeSessionOverrides",()=>m,"markClaudeSessionArchived",()=>b,"markClaudeSessionDeleted",()=>h])}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__f441109e._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[20266,e=>{"use strict";var t=e.i(47909),r=e.i(74017),s=e.i(96250),n=e.i(59756),o=e.i(61916),a=e.i(74677),i=e.i(69741),l=e.i(16795),d=e.i(87718),u=e.i(95169),c=e.i(47587),p=e.i(66012),h=e.i(70101),R=e.i(26937),f=e.i(10372),v=e.i(93695);e.i(52474);var m=e.i(220),w=e.i(99686),g=e.i(586),E=e.i(82414),y=e.i(68817),C=e.i(39948),_=e.i(74579),S=e.i(17506);function A(){return Response.json({error:"Invalid action session id",reason:"invalid_action_session_id"},{status:400})}function x(){return Response.json({error:"Session not found",reason:"session_not_found"},{status:404})}function b(e,t,r="restore_request_failed"){return Response.json({error:"Failed to restore session",reason:r,...t?{message:t}:{}},{status:e})}async function P(e,t){let r=(await (0,E.listNodeRecords)()).find(t=>t.nodeId===e);if(!r||!r.enabled)return x();let s=new AbortController,n=!1,o=setTimeout(()=>{n=!0,s.abort()},5e3);try{let e=await fetch(`${r.baseUrl}/api/node/sessions/${t}/archive`,{method:"DELETE",headers:(0,y.createNodeRequestHeaders)(r.token),signal:s.signal});if(e.ok)return Response.json({success:!0});let n=await e.json().catch(()=>({}));return Response.json({error:"Remote restore failed",reason:"string"==typeof n.reason?n.reason:`node_request_failed_${e.status}`},{status:e.status})}catch{return Response.json({error:n?"Remote node request timed out":"Remote node request failed",reason:n?"upstream_timeout":"upstream_unreachable"},{status:n?504:503})}finally{clearTimeout(o)}}async function T(e,{params:t}){let r,s,{id:n}=await t;try{r=(0,g.parseActionSessionReference)(n)}catch{return A()}let o=(0,C.detectProviderFromRawId)(r.sessionId);if(!(0,C.getDefaultProviderContext)(o).capabilities.archive||"claude-code"===o&&r.isRemote){var a;let e;return a=r.sessionId,e=(0,C.detectProviderFromRawId)(a),Response.json({error:"Session action not supported by provider",reason:"provider_capability_unsupported",provider:e,capability:"archive"},{status:403})}if("claude-code"===o){let e=(0,g.resolveLocalActionSessionId)(n);return e&&((0,_.markSessionForceUnarchived)(e),(0,_.clearSessionStickyStatusBlocked)(e)),await (0,S.clearClaudeSessionArchived)((0,C.extractProviderRawId)(r.sessionId)),Response.json({success:!0})}let i=(0,g.resolveLocalActionSessionId)(n);if(!i&&r.isRemote)return P(r.hostId,r.sessionId);if(!i)return A();let{ports:l,timedOut:d}=(0,w.discoverOpencodePortsWithMeta)();if(!l.length)return Response.json({error:d?"OpenCode discovery timed out":"OpenCode server not found"},{status:503});let u=!1,c=null,p="restore_request_failed";for(let e of l)try{let t=await fetch(`http://localhost:${e}/session/${i}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({time:{archived:null}})});if(t.ok)return(0,_.markSessionForceUnarchived)(i),(0,_.clearSessionStickyStatusBlocked)(i),Response.json({success:!0});if(404===t.status){u=!0;continue}let r=await t.text();console.error(`Failed to restore session on port ${e}:`,r),c=t.status,s=r||void 0,p="restore_request_failed"}catch(t){console.error(`Failed to restore session on port ${e}:`,t),c=503,s=t instanceof Error?t.message:String(t),p="upstream_unreachable"}return null!==c?b(c,s,p):u?x():b(500)}e.s(["POST",()=>T],64593);var I=e.i(64593);let N=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/sessions/[id]/restore/route",pathname:"/api/sessions/[id]/restore",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/sessions/[id]/restore/route.ts",nextConfigOutput:"standalone",userland:I}),{workAsyncStorage:O,workUnitAsyncStorage:k,serverHooks:q}=N;function j(){return(0,s.patchFetch)({workAsyncStorage:O,workUnitAsyncStorage:k})}async function H(e,t,s){N.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/sessions/[id]/restore/route";w=w.replace(/\/index$/,"")||"/";let g=await N.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:E,params:y,nextConfig:C,parsedUrl:_,isDraftMode:S,prerenderManifest:A,routerServerContext:x,isOnDemandRevalidate:b,revalidateOnlyGenerated:P,resolvedPathname:T,clientReferenceManifest:I,serverActionsManifest:O}=g,k=(0,i.normalizeAppPath)(w),q=!!(A.dynamicRoutes[k]||A.routes[T]),j=async()=>((null==x?void 0:x.render404)?await x.render404(e,t,_,!1):t.end("This page could not be found"),null);if(q&&!S){let e=!!A.routes[T],t=A.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(C.experimental.adapterPath)return await j();throw new v.NoFallbackError}}let H=null;!q||N.isDev||S||(H="/index"===(H=T)?"/":H);let U=!0===N.isDev||!q,$=q&&!U;O&&I&&(0,a.setManifestsSingleton)({page:w,clientReferenceManifest:I,serverActionsManifest:O});let D=e.method||"GET",F=(0,o.getTracer)(),M=F.getActiveScopeSpan(),K={params:y,prerenderManifest:A,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts},cacheComponents:!!C.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:C.cacheLife,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,n)=>N.onRequestError(e,t,s,n,x)},sharedContext:{buildId:E}},L=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),G=d.NextRequestAdapter.fromNodeNextRequest(L,(0,d.signalFromNodeResponse)(t));try{let a=async e=>N.handle(G,K).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 s=r.get("next.route");if(s){let t=`${D} ${s}`;e.setAttributes({"next.route":s,"http.route":s,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${w}`)}),i=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var o,l;let d=async({previousCacheEntry:r})=>{try{if(!i&&b&&P&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await a(n);e.fetchMetrics=K.renderOpts.fetchMetrics;let l=K.renderOpts.pendingWaitUntil;l&&s.waitUntil&&(s.waitUntil(l),l=void 0);let d=K.renderOpts.collectedTags;if(!q)return await (0,p.sendResponse)(L,B,o,K.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(o.headers);d&&(t[f.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==K.renderOpts.collectedRevalidate&&!(K.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,s=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:K.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:s}}}}catch(t){throw(null==r?void 0:r.isStale)&&await N.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:b})},!1,x),t}},u=await N.handleResponse({req:e,nextConfig:C,cacheKey:H,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:b,revalidateOnlyGenerated:P,responseGenerator:d,waitUntil:s.waitUntil,isMinimalMode:i});if(!q)return null;if((null==u||null==(o=u.value)?void 0:o.kind)!==m.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});i||t.setHeader("x-nextjs-cache",b?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let v=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return i&&q||v.delete(f.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||v.get("Cache-Control")||v.set("Cache-Control",(0,R.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(L,B,new Response(u.value.body,{headers:v,status:u.value.status||200})),null};M?await l(M):await F.withPropagatedContext(e.headers,()=>F.trace(u.BaseServerSpan.handleRequest,{spanName:`${D} ${w}`,kind:o.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof v.NoFallbackError||await N.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:b})},!1,x),q)throw t;return await (0,p.sendResponse)(L,B,new Response(null,{status:500})),null}}e.s(["handler",()=>H,"patchFetch",()=>j,"routeModule",()=>N,"serverHooks",()=>q,"workAsyncStorage",()=>O,"workUnitAsyncStorage",()=>k],20266)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=node_modules_next_dist_esm_build_templates_app-route_2edc9589.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[21445,e=>{"use strict";var t=e.i(47909),s=e.i(74017),r=e.i(96250),n=e.i(59756),a=e.i(61916),o=e.i(74677),i=e.i(69741),l=e.i(16795),d=e.i(87718),u=e.i(95169),c=e.i(47587),p=e.i(66012),h=e.i(70101),R=e.i(26937),f=e.i(10372),v=e.i(93695);e.i(52474);var m=e.i(220);e.i(39354);var g=e.i(34959),w=e.i(99686),C=e.i(586),E=e.i(82414),y=e.i(68817),S=e.i(39948),x=e.i(74579),A=e.i(17506);function _(){return Response.json({error:"Invalid action session id",reason:"invalid_action_session_id"},{status:400})}function b(e){return Response.json({error:"Session not found",reason:"session_not_found",...e?{message:e}:{}},{status:404})}async function P(e,t){let s=(await (0,E.listNodeRecords)()).find(t=>t.nodeId===e);if(!s||!s.enabled)return b();let r=new AbortController,n=!1,a=setTimeout(()=>{n=!0,r.abort()},5e3);try{let e=await fetch(`${s.baseUrl}/api/node/sessions/${t}/delete`,{method:"POST",headers:(0,y.createNodeRequestHeaders)(s.token),signal:r.signal});if(e.ok)return Response.json({success:!0});let n=await e.json().catch(()=>({}));return Response.json({error:"Remote delete failed",reason:"string"==typeof n.reason?n.reason:`node_request_failed_${e.status}`},{status:e.status})}catch{return Response.json({error:n?"Remote node request timed out":"Remote node request failed",reason:n?"upstream_timeout":"upstream_unreachable"},{status:n?504:503})}finally{clearTimeout(a)}}async function T(e,{params:t}){let s,{id:r}=await t;try{s=(0,C.parseActionSessionReference)(r)}catch{return _()}let n=(0,S.detectProviderFromRawId)(s.sessionId);if(!(0,S.getDefaultProviderContext)(n).capabilities.delete||"claude-code"===n&&s.isRemote){var a,o;let e;return a="delete",o=s.sessionId,e=(0,S.detectProviderFromRawId)(o),Response.json({error:"Session action not supported by provider",reason:"provider_capability_unsupported",provider:e,capability:a},{status:403})}if("claude-code"===n){await (0,A.markClaudeSessionDeleted)((0,S.extractProviderRawId)(s.sessionId));let e=(0,C.resolveLocalActionSessionId)(r);return e&&((0,x.clearSessionForceUnarchived)(e),(0,x.clearSessionStickyStatusBlocked)(e)),Response.json({success:!0})}let i=(0,C.resolveLocalActionSessionId)(r);if(!i&&s.isRemote)return P(s.hostId,s.sessionId);if(!i)return _();let{ports:l,timedOut:d}=(0,w.discoverOpencodePortsWithMeta)();if(!l.length)return d?Response.json({error:"OpenCode discovery timed out"},{status:503}):Response.json({error:"OpenCode server not found"},{status:503});let u=[];for(let e of l)try{let t=(0,g.createOpencodeClient)({baseUrl:`http://localhost:${e}`});return await t.session.delete({path:{id:i}}),(0,x.clearSessionForceUnarchived)(i),(0,x.clearSessionStickyStatusBlocked)(i),Response.json({success:!0})}catch(e){u.push(e)}let c=u[u.length-1];return u.length>0&&u.every(e=>/not found|404/i.test(e.message))?b(c?.message):Response.json({error:"Failed to delete session",message:c?.message,portsTried:l.length},{status:500})}e.s(["POST",()=>T],45247);var I=e.i(45247);let O=new t.AppRouteRouteModule({definition:{kind:s.RouteKind.APP_ROUTE,page:"/api/sessions/[id]/delete/route",pathname:"/api/sessions/[id]/delete",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/sessions/[id]/delete/route.ts",nextConfigOutput:"standalone",userland:I}),{workAsyncStorage:N,workUnitAsyncStorage:k,serverHooks:U}=O;function j(){return(0,r.patchFetch)({workAsyncStorage:N,workUnitAsyncStorage:k})}async function q(e,t,r){O.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/sessions/[id]/delete/route";g=g.replace(/\/index$/,"")||"/";let w=await O.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!w)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:C,params:E,nextConfig:y,parsedUrl:S,isDraftMode:x,prerenderManifest:A,routerServerContext:_,isOnDemandRevalidate:b,revalidateOnlyGenerated:P,resolvedPathname:T,clientReferenceManifest:I,serverActionsManifest:N}=w,k=(0,i.normalizeAppPath)(g),U=!!(A.dynamicRoutes[k]||A.routes[T]),j=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,S,!1):t.end("This page could not be found"),null);if(U&&!x){let e=!!A.routes[T],t=A.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await j();throw new v.NoFallbackError}}let q=null;!U||O.isDev||x||(q="/index"===(q=T)?"/":q);let H=!0===O.isDev||!U,D=U&&!H;N&&I&&(0,o.setManifestsSingleton)({page:g,clientReferenceManifest:I,serverActionsManifest:N});let F=e.method||"GET",M=(0,a.getTracer)(),$=M.getActiveScopeSpan(),K={params:E,prerenderManifest:A,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:H,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,s,r,n)=>O.onRequestError(e,t,r,n,_)},sharedContext:{buildId:C}},B=new l.NodeNextRequest(e),L=new l.NodeNextResponse(t),G=d.NextRequestAdapter.fromNodeNextRequest(B,(0,d.signalFromNodeResponse)(t));try{let o=async e=>O.handle(G,K).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let s=M.getRootSpanAttributes();if(!s)return;if(s.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${s.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let r=s.get("next.route");if(r){let t=`${F} ${r}`;e.setAttributes({"next.route":r,"http.route":r,"next.span_name":t}),e.updateName(t)}else e.updateName(`${F} ${g}`)}),i=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var a,l;let d=async({previousCacheEntry:s})=>{try{if(!i&&b&&P&&!s)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await o(n);e.fetchMetrics=K.renderOpts.fetchMetrics;let l=K.renderOpts.pendingWaitUntil;l&&r.waitUntil&&(r.waitUntil(l),l=void 0);let d=K.renderOpts.collectedTags;if(!U)return await (0,p.sendResponse)(B,L,a,K.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(a.headers);d&&(t[f.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let s=void 0!==K.renderOpts.collectedRevalidate&&!(K.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,r=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:K.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:s,expire:r}}}}catch(t){throw(null==s?void 0:s.isStale)&&await O.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:b})},!1,_),t}},u=await O.handleResponse({req:e,nextConfig:y,cacheKey:q,routeKind:s.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:b,revalidateOnlyGenerated:P,responseGenerator:d,waitUntil:r.waitUntil,isMinimalMode:i});if(!U)return null;if((null==u||null==(a=u.value)?void 0:a.kind)!==m.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});i||t.setHeader("x-nextjs-cache",b?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),x&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let v=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return i&&U||v.delete(f.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||v.get("Cache-Control")||v.set("Cache-Control",(0,R.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(B,L,new Response(u.value.body,{headers:v,status:u.value.status||200})),null};$?await l($):await M.withPropagatedContext(e.headers,()=>M.trace(u.BaseServerSpan.handleRequest,{spanName:`${F} ${g}`,kind:a.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},l))}catch(t){if(t instanceof v.NoFallbackError||await O.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:b})},!1,_),U)throw t;return await (0,p.sendResponse)(B,L,new Response(null,{status:500})),null}}e.s(["handler",()=>q,"patchFetch",()=>j,"routeModule",()=>O,"serverHooks",()=>U,"workAsyncStorage",()=>N,"workUnitAsyncStorage",()=>k],21445)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=node_modules_next_dist_esm_build_templates_app-route_7f178d4a.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[92777,e=>{"use strict";var t=e.i(47909),r=e.i(74017),i=e.i(96250),a=e.i(59756),n=e.i(61916),s=e.i(74677),o=e.i(69741),l=e.i(16795),d=e.i(87718),u=e.i(95169),c=e.i(47587),p=e.i(66012),h=e.i(70101),f=e.i(26937),m=e.i(10372),g=e.i(93695);e.i(52474);var y=e.i(220);e.i(39354);var S=e.i(34959),v=e.i(33405),w=e.i(14747),b=e.i(99686),R=e.i(57181),I=e.i(586),E=e.i(68817),T=e.i(74579);let C=D("OPENCODE_SESSIONS_LIST_TIMEOUT_MS",6e3),_=D("OPENCODE_SESSIONS_STATUS_TIMEOUT_MS",4e3),O=D("OPENCODE_SESSIONS_MESSAGES_TIMEOUT_MS",2500),A={hostId:"local",hostLabel:"Local",hostKind:"local"},U=new Map,N=new Set(["awaiting-input","awaiting_input","input-required","input_required","requires-input","requires_input","blocked","paused"]);async function P(e){let t=(0,E.guardNodeRequest)(e);if(!t.ok)return(0,E.toNodeRequestGuardResponse)(t);let r=await B(),i=await z(r);if(!i.ok)return(0,E.createNodeFailureResponse)(i.reason,i.extras);let a=G(i.meta),n={ok:!0,role:"node",protocolVersion:E.NODE_PROTOCOL_VERSION,source:A,upstream:{kind:"opencode",reachable:!0},sessions:i.payload.sessions.map(e=>{var t;let r,i;return r=(t=e).rawSessionId??t.id,i=(0,I.composeSourceKey)(A.hostId,r),{...t,id:i,parentID:t.parentID?(0,I.composeSourceKey)(A.hostId,t.parentID):t.parentID,hostId:A.hostId,hostLabel:A.hostLabel,hostKind:A.hostKind,rawSessionId:r,sourceSessionKey:i,readOnly:!1,children:t.children.map(e=>{let t,r;return t=e.rawSessionId??e.id,r=(0,I.composeSourceKey)(A.hostId,t),{...e,id:r,parentID:e.parentID?(0,I.composeSourceKey)(A.hostId,e.parentID):e.parentID,hostId:A.hostId,hostLabel:A.hostLabel,hostKind:A.hostKind,rawSessionId:t,sourceSessionKey:r,readOnly:!1}})}}),processHints:i.payload.processHints,hosts:[a],hostStatuses:[a],...i.payload.failedPorts?{failedPorts:i.payload.failedPorts}:{},...i.payload.degraded?{degraded:!0}:{}};return Response.json(n)}function D(e,t){let r=Number(process.env[e]);return Number.isFinite(r)&&r>0?Math.floor(r):t}function F(e,t,r){let i,a=Error(`${r} timed out after ${t}ms`),n=new AbortController,s=new Promise((e,r)=>{i=setTimeout(()=>{n.abort(),r(a)},t)});return Promise.race([e(n.signal).catch(e=>{if(n.signal.aborted)throw a;throw e}),s]).finally(()=>{i&&clearTimeout(i)})}function x(e){return e.trim().toLowerCase()}function k(e){return N.has(x(e))}async function M(e,t,r){var i=(await F(r=>e.session.messages({path:{id:t},query:{limit:8},signal:r}),r,`session.messages(${t})`)).data||[];let a=[];for(let e of i)for(let t of e.parts||[]){let e=t?.state?.status;if("string"==typeof e){let t=x(e);t&&a.push(t)}}return a}function q(e){return e.time?.updated||e.time?.created||0}function H(e){return"busy"===e||"retry"===e?e:"idle"}function K(e){U.delete(e),U.delete(`child:${e}`)}function $(e,t,r,i){let a=U.get(e)??{lastBusyAt:0,lastSeenAt:r};if("busy"===t)return a.lastBusyAt=r,a.lastSeenAt=r,U.set(e,a),t;if("retry"===t)return a.lastSeenAt=r,U.set(e,a),t;let n=a.lastBusyAt>0&&r-a.lastBusyAt<=i;return a.lastSeenAt=r,U.set(e,a),n?"busy":"idle"}function L(e,t){let r;for(let[r,i]of U){let a=e-i.lastSeenAt,n=t.has(r);(a>864e5||!n&&a>18e5)&&U.delete(r)}let i=Number.isFinite(r=Number(process.env.OPENCODE_STATUS_STICKY_MAX_ENTRIES))&&r>0?Math.floor(r):5e3;if(U.size<=i)return;let a=U.size-i,n=Array.from(U.entries()).sort((e,t)=>e[1].lastSeenAt-t[1].lastSeenAt),s=0;for(let[e]of n){if(s>=a)break;!t.has(e)&&(U.delete(e),s++)}if(!(s>=a))for(let[e]of n){if(s>=a)break;U.has(e)&&(U.delete(e),s++)}}function W(e,t,r=!1){return{id:e.id,slug:e.slug,title:e.title,directory:e.directory,debugReason:e.debugReason,parentID:e.parentID,time:e.time,realTimeStatus:t,waitingForUser:r}}function j(e){return w.default.basename(e)}async function B(){let e=1e3;try{let t=await (0,R.readConfig)(),r=(t.vibepulse&&"object"==typeof t.vibepulse&&!Array.isArray(t.vibepulse)?t.vibepulse:{}).stickyBusyDelayMs;"number"==typeof r&&Number.isFinite(r)&&r>=0&&(e=r)}catch{}return e}function G(e){return{hostId:A.hostId,hostLabel:A.hostLabel,hostKind:A.hostKind,online:e.online,...e.degraded?{degraded:!0}:{},...e.reason?{reason:e.reason}:{}}}function V(e){return e.toLowerCase().includes("timed out")}function X(e,t,r={}){let i="upstream_timeout"===e?{statusReason:"OpenCode discovery timed out",reachable:!1}:{statusReason:"OpenCode server not found",reachable:!1},a=G({online:!1,degraded:!0,reason:i.statusReason});return{ok:!1,reason:e,extras:{role:"node",source:A,upstream:{kind:"opencode",reachable:i.reachable},processHints:t,hosts:[a],hostStatuses:[a],...r}}}async function z(e){let{processes:t,timedOut:r}=(0,b.discoverOpencodeProcessCwdsWithoutPortWithMeta)(),i=new Map;for(let e of t)!(!e.cwd||e.cwd.startsWith("/private/tmp/opencode"))&&(i.has(e.cwd)||i.set(e.cwd,{pid:e.pid,directory:e.cwd,projectName:j(e.cwd),reason:"process_without_api_port"}));let a=Array.from(i.values()),{ports:n,timedOut:s}=(0,b.discoverOpencodePortsWithMeta)();if(!n.length)return s||r?X("upstream_timeout",a):X("upstream_unreachable",a);try{var o;let t=await Promise.allSettled(n.map(async e=>{let t=(0,S.createOpencodeClient)({baseUrl:`http://localhost:${e}`}),r=await F(e=>t.session.list({signal:e}),C,`session.list(${e})`),i=await F(e=>t.session.status({signal:e}),_,`session.status(${e})`).catch(()=>({data:{}}));return{port:e,client:t,sessions:r.data||[],status:i.data||{}}})),r=[],i={},s={},l={},d=[];for(let e=0;e<t.length;e++){let a=t[e],o=n[e];if("fulfilled"!==a.status){d.push({port:o,reason:a.reason instanceof Error?a.reason.message:String(a.reason)});continue}for(let e of(r.push(...a.value.sessions),Object.assign(i,a.value.status),s[a.value.port]=a.value.client,a.value.sessions))e.id in l||(l[e.id]=a.value.port)}let u=[],c=new Set;for(let e of r)c.has(e.id)||(c.add(e.id),u.push(e));let p=u.filter(e=>!e.parentID),h=u.filter(e=>!!e.parentID),f=Date.now();for(let e of((0,T.pruneSessionForceUnarchived)(f),(0,T.pruneSessionStickyStatusBlocked)(f),p))e.time?.archived!==void 0&&(0,T.shouldForceSessionUnarchived)(e.id,f)&&(e.time={...e.time,archived:void 0});for(let e of h)e.time?.archived!==void 0&&(0,T.shouldForceSessionUnarchived)(e.id,f)&&(e.time={...e.time,archived:void 0});if(t.length>0&&d.length===t.length)return L(Date.now(),new Set),X((o=d.map(e=>e.reason)).length>0&&o.every(V)?"upstream_timeout":"upstream_unreachable",a,{failedPorts:d});let m=p.map(e=>({...e,projectName:j(e.directory),branch:function(e){if(!function(e){try{let t=(0,v.execSync)("git rev-parse --is-inside-work-tree",{cwd:e,encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:1200});return"true"===t.trim()}catch{return!1}}(e))return null;try{return(0,v.execSync)("git branch --show-current",{cwd:e,encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:1200}).trim()||null}catch{return null}}(e.directory),realTimeStatus:i[e.id]?.type||"idle",waitingForUser:!1,children:[]})),g=new Map(m.map(e=>[e.id,e])),y=Date.now(),w=[];for(let e of h){let t=e.parentID?g.get(e.parentID):void 0;if(!t){let r=m.filter(t=>t.directory===e.directory).sort((e,t)=>q(t)-q(e));t=r.find(e=>"busy"===e.realTimeStatus||"retry"===e.realTimeStatus)||r[0]}if(!t)continue;let r=i[e.id]?.type,a=q(e),n=a>0&&y-a<=18e5;!(e.time?.archived&&!r&&!n)&&(r&&"idle"!==r?t.children.push(W(e,r)):n&&w.length<50&&w.push({parentId:t.id,child:e,childUpdatedAt:a}))}if(w.length>0)for(let e of(await Promise.allSettled(w.map(async({parentId:e,child:t,childUpdatedAt:r})=>{let i=l[t.id]??l[e],a=i?s[i]:void 0,n=r>0&&y-r<=12e4;if(!a)return{parentId:e,child:t,childStatus:n?"busy":"idle"};try{let i=await M(a,t.id,O),s=i.some(e=>"running"===e),o=!s&&i.some(k);return{parentId:e,child:t,childWaitingForUser:o,childStatus:o||s||r>0&&y-r<=3e5||n?"busy":"idle"}}catch{return{parentId:e,child:t,childWaitingForUser:!1,childStatus:n?"busy":"idle"}}})))){if("fulfilled"!==e.status||"idle"===e.value.childStatus)continue;let t=g.get(e.value.parentId);t&&t.children.push(W(e.value.child,e.value.childStatus,e.value.childWaitingForUser))}let b=m.filter(e=>{if("idle"!==e.realTimeStatus)return!1;let t=q(e);return t>0&&y-t<=18e5||!!e.time?.archived}).sort((e,t)=>q(t)-q(e)).slice(0,50);if(b.length>0)for(let e of(await Promise.allSettled(b.map(async e=>{let t=q(e),r=t>0&&y-t<=12e4,i=l[e.id],a=i?s[i]:void 0;if(!a)return{sessionId:e.id,status:r?"busy":"idle",waitingForUser:!1};try{let t,i=await M(a,e.id,O),n=i.some(e=>"running"===e),s=!n&&i.some(k),o=i.length>0&&i.every(e=>"completed"===e),l=!!(t=e.time?.updated)&&y-t<=3e4;return{sessionId:e.id,status:n||s?"busy":o&&!l?"idle":r||l?"busy":"idle",waitingForUser:s}}catch{return{sessionId:e.id,status:r?"busy":"idle",waitingForUser:!1}}})))){if("fulfilled"!==e.status||"idle"===e.value.status)continue;let t=g.get(e.value.sessionId);t&&(t.realTimeStatus=e.value.status,e.value.waitingForUser&&(t.waitingForUser=!0))}for(let e of m)e.children.length>0&&e.children.sort((e,t)=>{let r="busy"===e.realTimeStatus||"retry"===e.realTimeStatus,i="busy"===t.realTimeStatus||"retry"===t.realTimeStatus;if(r&&!i)return -1;if(!r&&i)return 1;let a=e.time?.updated||e.time?.created||0;return(t.time?.updated||t.time?.created||0)-a});let R=m.filter(e=>"busy"===e.realTimeStatus||!!e.time?.archived||e.children.some(e=>"busy"===e.realTimeStatus||"retry"===e.realTimeStatus));if(R.length>0)for(let e of(await Promise.allSettled(R.map(async e=>{let t=l[e.id],r=t?s[t]:void 0;if(!r)return{sessionId:e.id,parentWaiting:!1,running:!1,waitingChildIds:new Set};try{let t=await M(r,e.id,O),i=t.some(e=>"running"===e),a=!i&&t.some(k),n=await Promise.allSettled(e.children.filter(e=>"busy"===e.realTimeStatus||"retry"===e.realTimeStatus).map(async t=>{let r=l[t.id]??l[e.id],i=r?s[r]:void 0;if(!i)return{childId:t.id,waiting:!1};try{let e=await M(i,t.id,O),r=e.some(e=>"running"===e);return{childId:t.id,waiting:!r&&e.some(k)}}catch{return{childId:t.id,waiting:!1}}})),o=new Set(n.filter(e=>"fulfilled"===e.status).filter(e=>e.value.waiting).map(e=>e.value.childId));return{sessionId:e.id,parentWaiting:a,running:i,waitingChildIds:o}}catch{return{sessionId:e.id,parentWaiting:!1,running:!1,waitingChildIds:new Set}}})))){if("fulfilled"!==e.status)continue;let t=m.find(t=>t.id===e.value.sessionId);if(t){for(let r of t.children)e.value.waitingChildIds.has(r.id)&&(r.waitingForUser=!0);e.value.running&&(t.realTimeStatus="busy"),e.value.parentWaiting&&(t.waitingForUser=!0)}}let I=Date.now(),E=new Set;for(let e of m)for(let t of(E.add(e.id),e.children))E.add(`child:${t.id}`);for(let t of m)(!((0,T.takeSessionStickyStatusBlocked)(t.id,I)||t.time?.archived)||(function(e){for(let t of(K(e.id),(0,T.clearSessionForceUnarchived)(e.id),e.children))K(`child:${t.id}`),(0,T.clearSessionForceUnarchived)(t.id)}(t),0))&&function(e,t,r){for(let i of e.children){if(i.time?.archived){K(`child:${i.id}`),(0,T.clearSessionForceUnarchived)(i.id);continue}let e=H(i.realTimeStatus),a=i.waitingForUser&&"idle"===e?"retry":e;i.realTimeStatus=$(`child:${i.id}`,a,t,r),("busy"===i.realTimeStatus||"retry"===i.realTimeStatus||i.waitingForUser)&&(0,T.markSessionForceUnarchived)(i.id,t)}let i=H(e.realTimeStatus),a=e.waitingForUser&&"idle"===i?"retry":i;e.realTimeStatus=$(e.id,a,t,r);let n=e.children.some(e=>"busy"===e.realTimeStatus||"retry"===e.realTimeStatus||e.waitingForUser);("busy"===e.realTimeStatus||"retry"===e.realTimeStatus||e.waitingForUser||n)&&(0,T.markSessionForceUnarchived)(e.id,t)}(t,I,e);L(I,E);let A=new Set;for(let e of u)e.directory&&A.add(e.directory);let U=a.filter(e=>!A.has(e.directory));return{ok:!0,payload:{sessions:m,processHints:U,...d.length>0?{failedPorts:d,degraded:!0}:{}},meta:{online:!0,...d.length>0?{degraded:!0}:{}}}}catch(e){return console.error("Error fetching node-local sessions:",e),X(e instanceof Error&&V(e.message)?"upstream_timeout":"upstream_unreachable",a,{details:e instanceof Error?e.message:String(e)})}}e.s(["GET",()=>P,"dynamic",0,"force-dynamic"],87009);var Y=e.i(87009);let Z=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/node/sessions/route",pathname:"/api/node/sessions",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/node/sessions/route.ts",nextConfigOutput:"standalone",userland:Y}),{workAsyncStorage:J,workUnitAsyncStorage:Q,serverHooks:ee}=Z;function et(){return(0,i.patchFetch)({workAsyncStorage:J,workUnitAsyncStorage:Q})}async function er(e,t,i){Z.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let S="/api/node/sessions/route";S=S.replace(/\/index$/,"")||"/";let v=await Z.prepare(e,t,{srcPage:S,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve()),null;let{buildId:w,params:b,nextConfig:R,parsedUrl:I,isDraftMode:E,prerenderManifest:T,routerServerContext:C,isOnDemandRevalidate:_,revalidateOnlyGenerated:O,resolvedPathname:A,clientReferenceManifest:U,serverActionsManifest:N}=v,P=(0,o.normalizeAppPath)(S),D=!!(T.dynamicRoutes[P]||T.routes[A]),F=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,I,!1):t.end("This page could not be found"),null);if(D&&!E){let e=!!T.routes[A],t=T.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(R.experimental.adapterPath)return await F();throw new g.NoFallbackError}}let x=null;!D||Z.isDev||E||(x="/index"===(x=A)?"/":x);let k=!0===Z.isDev||!D,M=D&&!k;N&&U&&(0,s.setManifestsSingleton)({page:S,clientReferenceManifest:U,serverActionsManifest:N});let q=e.method||"GET",H=(0,n.getTracer)(),K=H.getActiveScopeSpan(),$={params:b,prerenderManifest:T,renderOpts:{experimental:{authInterrupts:!!R.experimental.authInterrupts},cacheComponents:!!R.cacheComponents,supportsDynamicResponse:k,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:R.cacheLife,waitUntil:i.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,i,a)=>Z.onRequestError(e,t,i,a,C)},sharedContext:{buildId:w}},L=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),j=d.NextRequestAdapter.fromNodeNextRequest(L,(0,d.signalFromNodeResponse)(t));try{let s=async e=>Z.handle(j,$).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.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 i=r.get("next.route");if(i){let t=`${q} ${i}`;e.setAttributes({"next.route":i,"http.route":i,"next.span_name":t}),e.updateName(t)}else e.updateName(`${q} ${S}`)}),o=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var n,l;let d=async({previousCacheEntry:r})=>{try{if(!o&&_&&O&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await s(a);e.fetchMetrics=$.renderOpts.fetchMetrics;let l=$.renderOpts.pendingWaitUntil;l&&i.waitUntil&&(i.waitUntil(l),l=void 0);let d=$.renderOpts.collectedTags;if(!D)return await (0,p.sendResponse)(L,W,n,$.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(n.headers);d&&(t[m.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,i=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:$.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:i}}}}catch(t){throw(null==r?void 0:r.isStale)&&await Z.onRequestError(e,t,{routerKind:"App Router",routePath:S,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:_})},!1,C),t}},u=await Z.handleResponse({req:e,nextConfig:R,cacheKey:x,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:T,isRoutePPREnabled:!1,isOnDemandRevalidate:_,revalidateOnlyGenerated:O,responseGenerator:d,waitUntil:i.waitUntil,isMinimalMode:o});if(!D)return null;if((null==u||null==(n=u.value)?void 0:n.kind)!==y.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});o||t.setHeader("x-nextjs-cache",_?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return o&&D||g.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,f.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(L,W,new Response(u.value.body,{headers:g,status:u.value.status||200})),null};K?await l(K):await H.withPropagatedContext(e.headers,()=>H.trace(u.BaseServerSpan.handleRequest,{spanName:`${q} ${S}`,kind:n.SpanKind.SERVER,attributes:{"http.method":q,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await Z.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:_})},!1,C),D)throw t;return await (0,p.sendResponse)(L,W,new Response(null,{status:500})),null}}e.s(["handler",()=>er,"patchFetch",()=>et,"routeModule",()=>Z,"serverHooks",()=>ee,"workAsyncStorage",()=>J,"workUnitAsyncStorage",()=>Q],92777)}];
|
|
1
|
+
module.exports=[92777,e=>{"use strict";var t=e.i(47909),r=e.i(74017),i=e.i(96250),a=e.i(59756),s=e.i(61916),n=e.i(74677),o=e.i(69741),l=e.i(16795),d=e.i(87718),u=e.i(95169),c=e.i(47587),p=e.i(66012),h=e.i(70101),f=e.i(26937),y=e.i(10372),m=e.i(93695);e.i(52474);var g=e.i(220);e.i(39354);var v=e.i(34959),w=e.i(33405),S=e.i(14747),b=e.i(99686),R=e.i(57181),I=e.i(63127),E=e.i(39948),T=e.i(68817),O=e.i(74579);let A=F("OPENCODE_SESSIONS_LIST_TIMEOUT_MS",6e3),C=F("OPENCODE_SESSIONS_STATUS_TIMEOUT_MS",4e3),_=F("OPENCODE_SESSIONS_MESSAGES_TIMEOUT_MS",2500),P={hostId:"local",hostLabel:"Local",hostKind:"local"},U=new Map,N=new Set(["awaiting-input","awaiting_input","input-required","input_required","requires-input","requires_input","blocked","paused"]);async function x(e){let t=(0,T.guardNodeRequest)(e);if(!t.ok)return(0,T.toNodeRequestGuardResponse)(t);let r=await G(),i=await Q(r);if(!i.ok)return(0,T.createNodeFailureResponse)(i.reason,i.extras);let a=z(i.meta),s={ok:!0,role:"node",protocolVersion:T.NODE_PROTOCOL_VERSION,source:P,upstream:{kind:"opencode",reachable:!0},sessions:i.payload.sessions.map(e=>{var t;let r,i,a,s,n;return r=(t=e).rawSessionId??(0,E.extractProviderRawId)(t.id),a=X(r,{provider:i=t.provider??(0,E.detectProviderFromRawId)(t.id),readOnly:t.readOnly,capabilities:t.capabilities,topology:t.topology}),n=(s=t.parentID?(0,E.extractProviderRawId)(t.parentID):void 0)?X(s,{provider:i}).sourceKey:t.parentID,{...t,id:a.sourceKey,parentID:n,hostId:P.hostId,hostLabel:P.hostLabel,hostKind:P.hostKind,rawSessionId:r,sourceSessionKey:a.sourceKey,provider:i,providerRawId:t.providerRawId??a.providerRawId,readOnly:t.readOnly??a.readOnly,capabilities:t.capabilities??a.capabilities,topology:t.topology??a.topology,children:t.children.map(e=>{var t;let r,s,n,o,l,d;return t=a.sourceKey,r=e.rawSessionId??(0,E.extractProviderRawId)(e.id),o=X(r,{provider:n="claude-code"===(s=e.provider??(0,E.detectProviderFromRawId)(e.id))?s:i??s,readOnly:e.readOnly,capabilities:e.capabilities,topology:e.topology}),l=e.parentID?(0,E.extractProviderRawId)(e.parentID):void 0,d=t??(l?X(l,{provider:n}).sourceKey:e.parentID),{...e,id:o.sourceKey,parentID:d,hostId:P.hostId,hostLabel:P.hostLabel,hostKind:P.hostKind,rawSessionId:r,sourceSessionKey:o.sourceKey,provider:n,providerRawId:e.providerRawId??o.providerRawId,readOnly:e.readOnly??o.readOnly,capabilities:e.capabilities??o.capabilities,topology:e.topology??o.topology}})}}),processHints:i.payload.processHints,hosts:[a],hostStatuses:[a],...i.payload.failedPorts?{failedPorts:i.payload.failedPorts}:{},...i.payload.degraded?{degraded:!0}:{}};return Response.json(s)}function F(e,t){let r=Number(process.env[e]);return Number.isFinite(r)&&r>0?Math.floor(r):t}function D(e,t,r){let i,a=Error(`${r} timed out after ${t}ms`),s=new AbortController,n=new Promise((e,r)=>{i=setTimeout(()=>{s.abort(),r(a)},t)});return Promise.race([e(s.signal).catch(e=>{if(s.signal.aborted)throw a;throw e}),n]).finally(()=>{i&&clearTimeout(i)})}function k(e){return e.trim().toLowerCase()}function H(e){return N.has(k(e))}async function M(e,t,r){var i=(await D(r=>e.session.messages({path:{id:t},query:{limit:8},signal:r}),r,`session.messages(${t})`)).data||[];let a=[];for(let e of i)for(let t of e.parts||[]){let e=t?.state?.status;if("string"==typeof e){let t=k(e);t&&a.push(t)}}return a}function K(e){return e.time?.updated||e.time?.created||0}function q(e){return"busy"===e||"retry"===e?e:"idle"}function $(e){U.delete(e),U.delete(`child:${e}`)}function L(e,t,r,i){let a=U.get(e)??{lastBusyAt:0,lastSeenAt:r};if("busy"===t)return a.lastBusyAt=r,a.lastSeenAt=r,U.set(e,a),t;if("retry"===t)return a.lastSeenAt=r,U.set(e,a),t;let s=a.lastBusyAt>0&&r-a.lastBusyAt<=i;return a.lastSeenAt=r,U.set(e,a),s?"busy":"idle"}function j(e,t){let r;for(let[r,i]of U){let a=e-i.lastSeenAt,s=t.has(r);(a>864e5||!s&&a>18e5)&&U.delete(r)}let i=Number.isFinite(r=Number(process.env.OPENCODE_STATUS_STICKY_MAX_ENTRIES))&&r>0?Math.floor(r):5e3;if(U.size<=i)return;let a=U.size-i,s=Array.from(U.entries()).sort((e,t)=>e[1].lastSeenAt-t[1].lastSeenAt),n=0;for(let[e]of s){if(n>=a)break;!t.has(e)&&(U.delete(e),n++)}if(!(n>=a))for(let[e]of s){if(n>=a)break;U.has(e)&&(U.delete(e),n++)}}function W(e,t,r=!1){return{id:e.id,slug:e.slug,title:e.title,directory:e.directory,debugReason:e.debugReason,parentID:e.parentID,time:e.time,realTimeStatus:t,waitingForUser:r}}function B(e){return S.default.basename(e)}async function G(){let e=1e3;try{let t=await (0,R.readConfig)(),r=(t.vibepulse&&"object"==typeof t.vibepulse&&!Array.isArray(t.vibepulse)?t.vibepulse:{}).stickyBusyDelayMs;"number"==typeof r&&Number.isFinite(r)&&r>=0&&(e=r)}catch{}return e}async function V(e){try{var t;return!(t=(await I.claudeCodeLocalSessionProvider.getSessionsResult({stickyBusyDelayMs:e})).payload)||"object"!=typeof t||Array.isArray(t)?{sessions:[],processHints:[]}:{sessions:Array.isArray(t.sessions)?t.sessions:[],processHints:Array.isArray(t.processHints)?t.processHints:[]}}catch{return{sessions:[],processHints:[]}}}function X(e,t){return(0,E.composeProviderSourceKey)(P.hostId,e,{...t.provider?{provider:t.provider}:{},...void 0!==t.readOnly?{readOnly:t.readOnly}:{},...t.capabilities?{capabilities:t.capabilities}:{},...t.topology?{topology:t.topology}:{}})}function z(e){return{hostId:P.hostId,hostLabel:P.hostLabel,hostKind:P.hostKind,online:e.online,...e.degraded?{degraded:!0}:{},...e.reason?{reason:e.reason}:{}}}function Y(e){return e.toLowerCase().includes("timed out")}function Z(e,t,r={}){let i="upstream_timeout"===e?{statusReason:"OpenCode discovery timed out",reachable:!1}:{statusReason:"OpenCode server not found",reachable:!1},a=z({online:!1,degraded:!0,reason:i.statusReason});return{ok:!1,reason:e,extras:{role:"node",source:P,upstream:{kind:"opencode",reachable:i.reachable},processHints:t,hosts:[a],hostStatuses:[a],...r}}}function J(e){return e.length>0&&e.every(Y)?"upstream_timeout":"upstream_unreachable"}async function Q(e){let{processes:t,timedOut:r}=(0,b.discoverOpencodeProcessCwdsWithoutPortWithMeta)(),i=new Map;for(let e of t)!(!e.cwd||e.cwd.startsWith("/private/tmp/opencode"))&&(i.has(e.cwd)||i.set(e.cwd,{pid:e.pid,directory:e.cwd,projectName:B(e.cwd),reason:"process_without_api_port"}));let a=Array.from(i.values()),{ports:s,timedOut:n}=(0,b.discoverOpencodePortsWithMeta)();if(!s.length){if(n||r)return Z("upstream_timeout",a);let t=await V(e);return t.sessions.length>0||t.processHints.length>0?{ok:!0,payload:{sessions:t.sessions,processHints:[...a,...t.processHints]},meta:{online:!0}}:Z("upstream_unreachable",a)}try{let t=await Promise.allSettled(s.map(async e=>{let t=(0,v.createOpencodeClient)({baseUrl:`http://localhost:${e}`}),r=await D(e=>t.session.list({signal:e}),A,`session.list(${e})`),i=await D(e=>t.session.status({signal:e}),C,`session.status(${e})`).catch(()=>({data:{}}));return{port:e,client:t,sessions:r.data||[],status:i.data||{}}})),r=[],i={},n={},o={},l=[];for(let e=0;e<t.length;e++){let a=t[e],d=s[e];if("fulfilled"!==a.status){l.push({port:d,reason:a.reason instanceof Error?a.reason.message:String(a.reason)});continue}for(let e of(r.push(...a.value.sessions),Object.assign(i,a.value.status),n[a.value.port]=a.value.client,a.value.sessions))e.id in o||(o[e.id]=a.value.port)}let d=[],u=new Set;for(let e of r)u.has(e.id)||(u.add(e.id),d.push(e));let c=d.filter(e=>!e.parentID),p=d.filter(e=>!!e.parentID),h=Date.now();for(let e of((0,O.pruneSessionForceUnarchived)(h),(0,O.pruneSessionStickyStatusBlocked)(h),c))e.time?.archived!==void 0&&(0,O.shouldForceSessionUnarchived)(e.id,h)&&(e.time={...e.time,archived:void 0});for(let e of p)e.time?.archived!==void 0&&(0,O.shouldForceSessionUnarchived)(e.id,h)&&(e.time={...e.time,archived:void 0});if(t.length>0&&l.length===t.length){let t=await V(e);if(t.sessions.length>0||t.processHints.length>0)return{ok:!0,payload:{sessions:t.sessions,processHints:[...a,...t.processHints],failedPorts:l,degraded:!0},meta:{online:!0,degraded:!0,reason:J(l.map(e=>e.reason))}};return j(Date.now(),new Set),Z(J(l.map(e=>e.reason)),a,{failedPorts:l})}let f=c.map(e=>({...e,projectName:B(e.directory),branch:function(e){if(!function(e){try{let t=(0,w.execSync)("git rev-parse --is-inside-work-tree",{cwd:e,encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:1200});return"true"===t.trim()}catch{return!1}}(e))return null;try{return(0,w.execSync)("git branch --show-current",{cwd:e,encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:1200}).trim()||null}catch{return null}}(e.directory),realTimeStatus:i[e.id]?.type||"idle",waitingForUser:!1,children:[]})),y=new Map(f.map(e=>[e.id,e])),m=Date.now(),g=[];for(let e of p){let t=e.parentID?y.get(e.parentID):void 0;if(!t){let r=f.filter(t=>t.directory===e.directory).sort((e,t)=>K(t)-K(e));t=r.find(e=>"busy"===e.realTimeStatus||"retry"===e.realTimeStatus)||r[0]}if(!t)continue;let r=i[e.id]?.type,a=K(e),s=a>0&&m-a<=18e5;!(e.time?.archived&&!r&&!s)&&(r&&"idle"!==r?t.children.push(W(e,r)):s&&g.length<50&&g.push({parentId:t.id,child:e,childUpdatedAt:a}))}if(g.length>0)for(let e of(await Promise.allSettled(g.map(async({parentId:e,child:t,childUpdatedAt:r})=>{let i=o[t.id]??o[e],a=i?n[i]:void 0,s=r>0&&m-r<=12e4;if(!a)return{parentId:e,child:t,childStatus:s?"busy":"idle"};try{let i=await M(a,t.id,_),n=i.some(e=>"running"===e),o=!n&&i.some(H);return{parentId:e,child:t,childWaitingForUser:o,childStatus:o||n||r>0&&m-r<=3e5||s?"busy":"idle"}}catch{return{parentId:e,child:t,childWaitingForUser:!1,childStatus:s?"busy":"idle"}}})))){if("fulfilled"!==e.status||"idle"===e.value.childStatus)continue;let t=y.get(e.value.parentId);t&&t.children.push(W(e.value.child,e.value.childStatus,e.value.childWaitingForUser))}let S=f.filter(e=>{if("idle"!==e.realTimeStatus)return!1;let t=K(e);return t>0&&m-t<=18e5||!!e.time?.archived}).sort((e,t)=>K(t)-K(e)).slice(0,50);if(S.length>0)for(let e of(await Promise.allSettled(S.map(async e=>{let t=K(e),r=t>0&&m-t<=12e4,i=o[e.id],a=i?n[i]:void 0;if(!a)return{sessionId:e.id,status:r?"busy":"idle",waitingForUser:!1};try{let t,i=await M(a,e.id,_),s=i.some(e=>"running"===e),n=!s&&i.some(H),o=i.length>0&&i.every(e=>"completed"===e),l=!!(t=e.time?.updated)&&m-t<=3e4;return{sessionId:e.id,status:s||n?"busy":o&&!l?"idle":r||l?"busy":"idle",waitingForUser:n}}catch{return{sessionId:e.id,status:r?"busy":"idle",waitingForUser:!1}}})))){if("fulfilled"!==e.status||"idle"===e.value.status)continue;let t=y.get(e.value.sessionId);t&&(t.realTimeStatus=e.value.status,e.value.waitingForUser&&(t.waitingForUser=!0))}for(let e of f)e.children.length>0&&e.children.sort((e,t)=>{let r="busy"===e.realTimeStatus||"retry"===e.realTimeStatus,i="busy"===t.realTimeStatus||"retry"===t.realTimeStatus;if(r&&!i)return -1;if(!r&&i)return 1;let a=e.time?.updated||e.time?.created||0;return(t.time?.updated||t.time?.created||0)-a});let b=f.filter(e=>"busy"===e.realTimeStatus||!!e.time?.archived||e.children.some(e=>"busy"===e.realTimeStatus||"retry"===e.realTimeStatus));if(b.length>0)for(let e of(await Promise.allSettled(b.map(async e=>{let t=o[e.id],r=t?n[t]:void 0;if(!r)return{sessionId:e.id,parentWaiting:!1,running:!1,waitingChildIds:new Set};try{let t=await M(r,e.id,_),i=t.some(e=>"running"===e),a=!i&&t.some(H),s=await Promise.allSettled(e.children.filter(e=>"busy"===e.realTimeStatus||"retry"===e.realTimeStatus).map(async t=>{let r=o[t.id]??o[e.id],i=r?n[r]:void 0;if(!i)return{childId:t.id,waiting:!1};try{let e=await M(i,t.id,_),r=e.some(e=>"running"===e);return{childId:t.id,waiting:!r&&e.some(H)}}catch{return{childId:t.id,waiting:!1}}})),l=new Set(s.filter(e=>"fulfilled"===e.status).filter(e=>e.value.waiting).map(e=>e.value.childId));return{sessionId:e.id,parentWaiting:a,running:i,waitingChildIds:l}}catch{return{sessionId:e.id,parentWaiting:!1,running:!1,waitingChildIds:new Set}}})))){if("fulfilled"!==e.status)continue;let t=f.find(t=>t.id===e.value.sessionId);if(t){for(let r of t.children)e.value.waitingChildIds.has(r.id)&&(r.waitingForUser=!0);e.value.running&&(t.realTimeStatus="busy"),e.value.parentWaiting&&(t.waitingForUser=!0)}}let R=Date.now(),I=new Set;for(let e of f)for(let t of(I.add(e.id),e.children))I.add(`child:${t.id}`);for(let t of f)(!((0,O.takeSessionStickyStatusBlocked)(t.id,R)||t.time?.archived)||(function(e){for(let t of($(e.id),(0,O.clearSessionForceUnarchived)(e.id),e.children))$(`child:${t.id}`),(0,O.clearSessionForceUnarchived)(t.id)}(t),0))&&function(e,t,r){for(let i of e.children){if(i.time?.archived){$(`child:${i.id}`),(0,O.clearSessionForceUnarchived)(i.id);continue}let e=q(i.realTimeStatus),a=i.waitingForUser&&"idle"===e?"retry":e;i.realTimeStatus=L(`child:${i.id}`,a,t,r),("busy"===i.realTimeStatus||"retry"===i.realTimeStatus||i.waitingForUser)&&(0,O.markSessionForceUnarchived)(i.id,t)}let i=q(e.realTimeStatus),a=e.waitingForUser&&"idle"===i?"retry":i;e.realTimeStatus=L(e.id,a,t,r);let s=e.children.some(e=>"busy"===e.realTimeStatus||"retry"===e.realTimeStatus||e.waitingForUser);("busy"===e.realTimeStatus||"retry"===e.realTimeStatus||e.waitingForUser||s)&&(0,O.markSessionForceUnarchived)(e.id,t)}(t,R,e);j(R,I);let E=new Set;for(let e of d)e.directory&&E.add(e.directory);let T=a.filter(e=>!E.has(e.directory)),P=await V(e);return{ok:!0,payload:{sessions:[...f,...P.sessions],processHints:[...T,...P.processHints],...l.length>0?{failedPorts:l,degraded:!0}:{}},meta:{online:!0,...l.length>0?{degraded:!0}:{}}}}catch(e){return console.error("Error fetching node-local sessions:",e),Z(e instanceof Error&&Y(e.message)?"upstream_timeout":"upstream_unreachable",a,{details:e instanceof Error?e.message:String(e)})}}e.s(["GET",()=>x,"dynamic",0,"force-dynamic"],87009);var ee=e.i(87009);let et=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/node/sessions/route",pathname:"/api/node/sessions",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/node/sessions/route.ts",nextConfigOutput:"standalone",userland:ee}),{workAsyncStorage:er,workUnitAsyncStorage:ei,serverHooks:ea}=et;function es(){return(0,i.patchFetch)({workAsyncStorage:er,workUnitAsyncStorage:ei})}async function en(e,t,i){et.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/node/sessions/route";v=v.replace(/\/index$/,"")||"/";let w=await et.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!w)return t.statusCode=400,t.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve()),null;let{buildId:S,params:b,nextConfig:R,parsedUrl:I,isDraftMode:E,prerenderManifest:T,routerServerContext:O,isOnDemandRevalidate:A,revalidateOnlyGenerated:C,resolvedPathname:_,clientReferenceManifest:P,serverActionsManifest:U}=w,N=(0,o.normalizeAppPath)(v),x=!!(T.dynamicRoutes[N]||T.routes[_]),F=async()=>((null==O?void 0:O.render404)?await O.render404(e,t,I,!1):t.end("This page could not be found"),null);if(x&&!E){let e=!!T.routes[_],t=T.dynamicRoutes[N];if(t&&!1===t.fallback&&!e){if(R.experimental.adapterPath)return await F();throw new m.NoFallbackError}}let D=null;!x||et.isDev||E||(D="/index"===(D=_)?"/":D);let k=!0===et.isDev||!x,H=x&&!k;U&&P&&(0,n.setManifestsSingleton)({page:v,clientReferenceManifest:P,serverActionsManifest:U});let M=e.method||"GET",K=(0,s.getTracer)(),q=K.getActiveScopeSpan(),$={params:b,prerenderManifest:T,renderOpts:{experimental:{authInterrupts:!!R.experimental.authInterrupts},cacheComponents:!!R.cacheComponents,supportsDynamicResponse:k,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:R.cacheLife,waitUntil:i.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,i,a)=>et.onRequestError(e,t,i,a,O)},sharedContext:{buildId:S}},L=new l.NodeNextRequest(e),j=new l.NodeNextResponse(t),W=d.NextRequestAdapter.fromNodeNextRequest(L,(0,d.signalFromNodeResponse)(t));try{let n=async e=>et.handle(W,$).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=K.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 i=r.get("next.route");if(i){let t=`${M} ${i}`;e.setAttributes({"next.route":i,"http.route":i,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${v}`)}),o=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var s,l;let d=async({previousCacheEntry:r})=>{try{if(!o&&A&&C&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await n(a);e.fetchMetrics=$.renderOpts.fetchMetrics;let l=$.renderOpts.pendingWaitUntil;l&&i.waitUntil&&(i.waitUntil(l),l=void 0);let d=$.renderOpts.collectedTags;if(!x)return await (0,p.sendResponse)(L,j,s,$.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);d&&(t[y.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=y.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,i=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=y.INFINITE_CACHE?void 0:$.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:i}}}}catch(t){throw(null==r?void 0:r.isStale)&&await et.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:A})},!1,O),t}},u=await et.handleResponse({req:e,nextConfig:R,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:T,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:C,responseGenerator:d,waitUntil:i.waitUntil,isMinimalMode:o});if(!x)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==g.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});o||t.setHeader("x-nextjs-cache",A?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return o&&x||m.delete(y.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,f.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(L,j,new Response(u.value.body,{headers:m,status:u.value.status||200})),null};q?await l(q):await K.withPropagatedContext(e.headers,()=>K.trace(u.BaseServerSpan.handleRequest,{spanName:`${M} ${v}`,kind:s.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},l))}catch(t){if(t instanceof m.NoFallbackError||await et.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:A})},!1,O),x)throw t;return await (0,p.sendResponse)(L,j,new Response(null,{status:500})),null}}e.s(["handler",()=>en,"patchFetch",()=>es,"routeModule",()=>et,"serverHooks",()=>ea,"workAsyncStorage",()=>er,"workUnitAsyncStorage",()=>ei],92777)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=node_modules_next_dist_esm_build_templates_app-route_aca45402.js.map
|