vibepulse 0.2.1 → 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 +5 -3
- 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]__56690af0._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__56690af0._.js.map +1 -1
- 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]__59175de4._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__59175de4._.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]__64fffc02._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__64fffc02._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__89c5eeab._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__89c5eeab._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__8da6c5a8._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__8da6c5a8._.js.map +1 -1
- 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]__b796d06c._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__b796d06c._.js.map +1 -1
- 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]__c2ce5c0f._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__c2ce5c0f._.js.map +1 -1
- 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 +4 -4
- 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 +5 -3
- 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]__56690af0._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__56f5f249._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__59175de4._.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]__64fffc02._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__89c5eeab._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__8da6c5a8._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__98073dd6._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__b796d06c._.js +1 -1
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__b7b717eb._.js +3 -0
- package/.next/standalone/.next/server/chunks/[root-of-the-server]__c2ce5c0f._.js +1 -1
- 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 +4 -4
- 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/c1294e057d8d4681.js +13 -0
- package/.next/standalone/AGENTS.md +2 -2
- package/.next/standalone/README.md +30 -7
- package/.next/standalone/docs/session-status-detection.md +36 -0
- package/.next/standalone/docs/superpowers/plans/2026-04-05-oh-my-openagent-migration.md +57 -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/AGENTS.md +2 -2
- 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-config/status/route.ts +6 -7
- 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/AGENTS.md +2 -2
- 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/components/opencode-config/AgentConfigForm.test.tsx +28 -0
- package/.next/standalone/src/components/opencode-config/AgentConfigForm.tsx +9 -9
- package/.next/standalone/src/components/opencode-config/ConfigButton.tsx +4 -4
- package/.next/standalone/src/components/opencode-config/categories/CategoriesList.tsx +10 -8
- package/.next/standalone/src/components/opencode-config/categories/CategoriesManager.test.tsx +29 -1
- package/.next/standalone/src/components/opencode-config/categories/CategoryConfigForm.test.tsx +49 -0
- package/.next/standalone/src/components/opencode-config/categories/CategoryConfigForm.tsx +6 -6
- package/.next/standalone/src/hooks/useOpencodeSync.test.ts +321 -1
- package/.next/standalone/src/hooks/useOpencodeSync.ts +16 -12
- package/.next/standalone/src/index.ts +1 -1
- package/.next/standalone/src/lib/claudeSessionOverrides.test.ts +75 -0
- package/.next/standalone/src/lib/claudeSessionOverrides.ts +169 -0
- package/.next/standalone/src/lib/opencodeConfig.test.ts +53 -4
- package/.next/standalone/src/lib/opencodeConfig.ts +24 -12
- package/.next/standalone/src/lib/profiles/storage.test.ts +38 -1
- package/.next/standalone/src/lib/profiles/storage.ts +17 -17
- 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/standalone/src/types/opencodeConfig.ts +1 -9
- package/.next/static/chunks/b3bc362202331708.css +3 -0
- package/.next/static/chunks/c1294e057d8d4681.js +13 -0
- 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 +30 -7
- 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/7ac19aaef01f4a03.js +0 -13
- package/.next/standalone/.next/static/chunks/f42202943f6742e5.css +0 -3
- package/.next/static/chunks/7ac19aaef01f4a03.js +0 -13
- package/.next/static/chunks/f42202943f6742e5.css +0 -3
- /package/.next/standalone/.next/static/{Fw2R3y-fHX4B2SWxNy_4X → bsWNvgDS7Zp38Yt9q0DUg}/_buildManifest.js +0 -0
- /package/.next/standalone/.next/static/{Fw2R3y-fHX4B2SWxNy_4X → bsWNvgDS7Zp38Yt9q0DUg}/_clientMiddlewareManifest.json +0 -0
- /package/.next/standalone/.next/static/{Fw2R3y-fHX4B2SWxNy_4X → bsWNvgDS7Zp38Yt9q0DUg}/_ssgManifest.js +0 -0
- /package/.next/static/{Fw2R3y-fHX4B2SWxNy_4X → bsWNvgDS7Zp38Yt9q0DUg}/_buildManifest.js +0 -0
- /package/.next/static/{Fw2R3y-fHX4B2SWxNy_4X → bsWNvgDS7Zp38Yt9q0DUg}/_clientMiddlewareManifest.json +0 -0
- /package/.next/static/{Fw2R3y-fHX4B2SWxNy_4X → bsWNvgDS7Zp38Yt9q0DUg}/_ssgManifest.js +0 -0
|
@@ -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
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[86100,e=>{"use strict";var t=e.i(47909),r=e.i(74017),s=e.i(96250),i=e.i(59756),n=e.i(61916),a=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),f=e.i(70101),h=e.i(26937),y=e.i(10372),g=e.i(93695);e.i(52474);var m=e.i(220);e.i(39354);var S=e.i(34959),w=e.i(33405),v=e.i(14747),b=e.i(99686),I=e.i(57181),E=e.i(74579),T=e.i(586),R=e.i(68817),A=e.i(82414),O=e.i(81951);let _=H("OPENCODE_SESSIONS_LIST_TIMEOUT_MS",6e3),U=H("OPENCODE_SESSIONS_STATUS_TIMEOUT_MS",4e3),C=H("OPENCODE_SESSIONS_MESSAGES_TIMEOUT_MS",2500),P=H("VIBEPULSE_NODE_SESSIONS_TIMEOUT_MS",6e3),M=new Map;function N(e){M.delete(e),M.delete(`child:${e}`)}let D={hostId:"local",hostLabel:"Local",hostKind:"local"};async function F(){return ef()}async function x(e){return eh(e)}function H(e,t){let r=Number(process.env[e]);return Number.isFinite(r)&&r>0?Math.floor(r):t}function k(e,t,r){let s,i=Error(`${r} timed out after ${t}ms`),n=new AbortController,a=new Promise((e,r)=>{s=setTimeout(()=>{n.abort(),r(i)},t)});return Promise.race([e(n.signal).catch(e=>{if(n.signal.aborted)throw i;throw e}),a]).finally(()=>{s&&clearTimeout(s)})}let K=new Set(["awaiting-input","awaiting_input","input-required","input_required","requires-input","requires_input","blocked","paused"]);function L(e){return e.trim().toLowerCase()}function $(e){return K.has(L(e))}async function j(e,t,r){var s=(await k(r=>e.session.messages({path:{id:t},query:{limit:8},signal:r}),r,`session.messages(${t})`)).data||[];let i=[];for(let e of s)for(let t of e.parts||[]){let e=t?.state?.status;if("string"==typeof e){let t=L(e);t&&i.push(t)}}return i}function q(e){return e.time?.updated||e.time?.created||0}function B(e){return"busy"===e||"retry"===e?e:"idle"}function W(e,t,r,s){let i=M.get(e)??{lastBusyAt:0,lastSeenAt:r};if("busy"===t)return i.lastBusyAt=r,i.lastSeenAt=r,M.set(e,i),t;if("retry"===t)return i.lastSeenAt=r,M.set(e,i),t;let n=i.lastBusyAt>0&&r-i.lastBusyAt<=s;return i.lastSeenAt=r,M.set(e,i),n?"busy":"idle"}function V(e,t){let r;for(let[r,s]of M){let i=e-s.lastSeenAt,n=t.has(r);(i>864e5||!n&&i>18e5)&&M.delete(r)}let s=Number.isFinite(r=Number(process.env.OPENCODE_STATUS_STICKY_MAX_ENTRIES))&&r>0?Math.floor(r):5e3;if(M.size<=s)return;let i=M.size-s,n=Array.from(M.entries()).sort((e,t)=>e[1].lastSeenAt-t[1].lastSeenAt),a=0;for(let[e]of n){if(a>=i)break;!t.has(e)&&(M.delete(e),a++)}if(!(a>=i))for(let[e]of n){if(a>=i)break;M.has(e)&&(M.delete(e),a++)}}function z(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 G(e,t){return!!((0,E.takeSessionStickyStatusBlocked)(e.id,t)||e.time?.archived)&&(function(e){for(let t of(N(e.id),(0,E.clearSessionForceUnarchived)(e.id),e.children))N(`child:${t.id}`),(0,E.clearSessionForceUnarchived)(t.id)}(e),!0)}function X(e,t,r){for(let s of e.children){if(s.time?.archived){N(`child:${s.id}`),(0,E.clearSessionForceUnarchived)(s.id);continue}let e=B(s.realTimeStatus),i=s.waitingForUser&&"idle"===e?"retry":e;s.realTimeStatus=W(`child:${s.id}`,i,t,r),("busy"===s.realTimeStatus||"retry"===s.realTimeStatus||s.waitingForUser)&&(0,E.markSessionForceUnarchived)(s.id,t)}let s=B(e.realTimeStatus),i=e.waitingForUser&&"idle"===s?"retry":s;e.realTimeStatus=W(e.id,i,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,E.markSessionForceUnarchived)(e.id,t)}function Y(e){return v.default.basename(e)}async function J(){let e=1e3;try{let t=await (0,I.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 Z(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function Q(e){return"remote"===e.hostKind}function ee(e){return"idle"===e||"busy"===e||"retry"===e}function et(e){if(!Z(e))return!1;let t=e.created,r=e.updated,s=e.archived;return"number"==typeof t&&"number"==typeof r&&(void 0===s||"number"==typeof s)}function er(e){if(!Z(e))return null;let t="string"==typeof e.hostId?e.hostId.trim():e.hostId,r="string"==typeof e.hostLabel?e.hostLabel.trim():e.hostLabel,s=e.hostKind;if(t===D.hostId&&r===D.hostLabel&&s===D.hostKind)return D;let i=e.baseUrl,n=e.enabled;if("string"!=typeof t||"string"!=typeof r||"remote"!==s||"string"!=typeof i||"boolean"!=typeof n)return null;let a=function(e){let t=e.trim();if(!t)return null;try{let e=new URL(t);if("http:"!==e.protocol&&"https:"!==e.protocol||e.username||e.password)return null;return e.hash="",e.toString().replace(/\/+$/,"")}catch{return null}}(i);return a?{hostId:t,hostLabel:r,hostKind:s,baseUrl:a,enabled:n}:null}function es(e){return e.status?Response.json(e.payload,{status:e.status}):Response.json(e.payload)}function ei(e,t){return{hostId:e.hostId,hostLabel:e.hostLabel,hostKind:e.hostKind,online:t.online,...t.degraded?{degraded:!0}:{},...t.reason?{reason:t.reason}:{},...Q(e)?{baseUrl:e.baseUrl}:{}}}function en(e,t){return{...e,hosts:t,hostStatuses:t}}function ea(e){if(!e.includes(":"))return e;try{return(0,T.parseSourceKey)(e).sessionId}catch{return e}}function eo(e,t){try{return(0,T.composeSourceKey)(e,t)}catch{return}}function el(e,t){let r=e.rawSessionId??ea(e.id),s=e.parentID?ea(e.parentID):e.parentID,i=eo(t.hostId,r);if(!i)return null;let n=s?eo(t.hostId,s)??void 0:void 0,a=[];for(let r of e.children){let e=function(e,t){let r=e.rawSessionId??ea(e.id),s=e.parentID?ea(e.parentID):e.parentID,i=eo(t.hostId,r);if(!i)return null;let n=s?eo(t.hostId,s)??void 0:void 0;return{...e,id:i,parentID:n,hostId:t.hostId,hostLabel:t.hostLabel,hostKind:t.hostKind,...Q(t)?{hostBaseUrl:t.baseUrl}:{},rawSessionId:r,sourceSessionKey:i,readOnly:!1}}(r,t);e&&a.push(e)}return{...e,id:i,parentID:n,hostId:t.hostId,hostLabel:t.hostLabel,hostKind:t.hostKind,...Q(t)?{hostBaseUrl:t.baseUrl}:{},rawSessionId:r,sourceSessionKey:i,readOnly:!1,children:a}}async function ed(e){try{return await e.json()}catch{return null}}async function eu(e,t){let r=`node.sessions(${e.hostId})`,s=new AbortController,i=!1,n=setTimeout(()=>{i=!0,s.abort()},P);try{return await fetch(`${t.baseUrl}/api/node/sessions`,{method:"GET",headers:(0,R.createNodeRequestHeaders)(t.token),signal:s.signal})}catch(e){if(i)throw Error(`${r} timed out after ${P}ms`);throw e}finally{clearTimeout(n)}}async function ec(e,t){if(!t)return{payload:{sessions:[],processHints:[],degraded:!0},sourceMeta:{online:!1,degraded:!0,reason:"node_not_configured"}};if(!t.enabled)return{payload:{sessions:[],processHints:[],degraded:!0},sourceMeta:{online:!1,degraded:!0,reason:"node_disabled"}};try{let r=await eu(e,t),s=await ed(r);if(!r.ok){let e=Z(s)&&"string"==typeof s.reason?s.reason:`node_request_failed_${r.status}`;return{payload:{sessions:[],processHints:[],degraded:!0},sourceMeta:{online:!0,degraded:!0,reason:e}}}let i=function(e){if(!Z(e)||!0!==e.ok||"node"!==e.role||e.protocolVersion!==R.NODE_PROTOCOL_VERSION)return null;let t=e.source;if(!Z(t)||"local"!==t.hostId||"Local"!==t.hostLabel||"local"!==t.hostKind)return null;let r=e.upstream;if(!Z(r)||"opencode"!==r.kind||"boolean"!=typeof r.reachable)return null;let s=e.sessions,i=e.processHints;return!Array.isArray(s)||s.some(e=>!function(e){if(!Z(e)||"string"!=typeof e.id||"string"!=typeof e.directory||"string"!=typeof e.projectName)return!1;let t=e.branch;if(null!=t&&"string"!=typeof t||!ee(e.realTimeStatus)||"boolean"!=typeof e.waitingForUser)return!1;let r=e.children;if(!Array.isArray(r)||r.some(e=>!function(e){if(!Z(e)||"string"!=typeof e.id||!ee(e.realTimeStatus)||"boolean"!=typeof e.waitingForUser)return!1;let t=e.parentID,r=e.directory,s=e.time;return(void 0===t||"string"==typeof t)&&(void 0===r||"string"==typeof r)&&(void 0===s||!!et(s))}(e)))return!1;let s=e.time;return void 0===s||!!et(s)}(e))||!Array.isArray(i)||i.some(e=>!(Z(e)&&"number"==typeof e.pid&&"string"==typeof e.directory&&"string"==typeof e.projectName&&"process_without_api_port"===e.reason))?null:{sessions:s,processHints:i,degraded:!0===e.degraded}}(s);if(!i)return{payload:{sessions:[],processHints:[],degraded:!0},sourceMeta:{online:!0,degraded:!0,reason:"node_payload_invalid"}};return{payload:{sessions:i.sessions,processHints:i.processHints,...i.degraded?{degraded:!0}:{}},sourceMeta:{online:!0,...i.degraded?{degraded:!0}:{}}}}catch(e){return{payload:{sessions:[],processHints:[],degraded:!0},sourceMeta:{online:!1,degraded:!0,reason:e instanceof Error?e.message:String(e)}}}}async function ep(e){let{processes:t,timedOut:r}=(0,b.discoverOpencodeProcessCwdsWithoutPortWithMeta)(),s=new Map;for(let e of t)!(!e.cwd||e.cwd.startsWith("/private/tmp/opencode"))&&(s.has(e.cwd)||s.set(e.cwd,{pid:e.pid,directory:e.cwd,projectName:Y(e.cwd),reason:"process_without_api_port"}));let{ports:i,timedOut:n}=(0,b.discoverOpencodePortsWithMeta)();if(!i.length){let e=Array.from(s.values());return n||r?{payload:{error:"OpenCode discovery timed out",hint:"Host process discovery exceeded timeout. Retry shortly, or increase OPENCODE_DISCOVERY_TIMEOUT_MS.",...e.length>0?{processHints:e}:{}},status:503,sourceMeta:{online:!1,degraded:!0,reason:"OpenCode discovery timed out"}}:e.length>0?{payload:{sessions:[],processHints:e},sourceMeta:{online:!1,reason:"OpenCode server not found"}}:{payload:{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,sourceMeta:{online:!1,reason:"OpenCode server not found"}}}try{let t=await Promise.allSettled(i.map(async e=>{let t=(0,S.createOpencodeClient)({baseUrl:`http://localhost:${e}`}),r=await k(e=>t.session.list({signal:e}),_,`session.list(${e})`),s=await k(e=>t.session.status({signal:e}),U,`session.status(${e})`).catch(()=>({data:{}}));return{port:e,client:t,sessions:r.data||[],status:s.data||{}}})),r=[],n={},a={},o={},l=[];for(let e=0;e<t.length;e++){let s=t[e],d=i[e];if("fulfilled"!==s.status){l.push({port:d,reason:s.reason instanceof Error?s.reason.message:String(s.reason)});continue}for(let e of(r.push(...s.value.sessions),Object.assign(n,s.value.status),a[s.value.port]=s.value.client,s.value.sessions))e.id in o||(o[e.id]=s.value.port)}let d=new Set,u=r.filter(e=>!d.has(e.id)&&(d.add(e.id),!0)),c=u.filter(e=>!e.parentID),p=u.filter(e=>!!e.parentID),f=Date.now();for(let e of((0,E.pruneSessionForceUnarchived)(f),(0,E.pruneSessionStickyStatusBlocked)(f),c))e.time?.archived!==void 0&&(0,E.shouldForceSessionUnarchived)(e.id,f)&&(e.time={...e.time,archived:void 0});for(let e of p)e.time?.archived!==void 0&&(0,E.shouldForceSessionUnarchived)(e.id,f)&&(e.time={...e.time,archived:void 0});if(t.length>0&&l.length===t.length)return V(Date.now(),new Set),{payload:{error:"Failed to fetch sessions from OpenCode ports",hint:"All discovered OpenCode API ports timed out or failed. Retry shortly or increase OPENCODE_SESSIONS_LIST_TIMEOUT_MS.",failedPorts:l},status:503,sourceMeta:{online:!1,degraded:!0,reason:"Failed to fetch sessions from OpenCode ports"}};if(l.length>0&&0===c.length&&0===p.length){V(Date.now(),new Set);let e=Array.from(s.values());return{payload:{sessions:[],processHints:e,failedPorts:l,degraded:!0},sourceMeta:{online:!0,degraded:!0}}}let h=c.map(e=>{let t=Y(e.directory),r=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);return{...e,projectName:t,branch:r,realTimeStatus:n[e.id]?.type||"idle",waitingForUser:!1,children:[]}}),y=new Map(h.map(e=>[e.id,e])),g=Date.now(),m=[];for(let e of p){let t=e.parentID?h.find(t=>t.id===e.parentID):null;if(!t){let r=h.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=n[e.id]?.type,s=q(e),i=s>0&&g-s<=18e5;if(!(e.time?.archived&&!r&&!i))if(r&&"idle"!==r)t.children.push(z(e,r));else{if(!i)continue;m.length<50&&m.push({parentId:t.id,child:e,childUpdatedAt:s})}}if(m.length>0)for(let e of(await Promise.allSettled(m.map(async({parentId:e,child:t,childUpdatedAt:r})=>{let s=o[t.id]??o[e],i=s?a[s]:void 0,n=r>0&&g-r<=12e4;if(!i)return{parentId:e,child:t,childStatus:n?"busy":"idle"};try{let s=await j(i,t.id,C),a=s.some(e=>"running"===e),o=!a&&s.some($);return{parentId:e,child:t,childWaitingForUser:o,childStatus:o||a||r>0&&g-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=y.get(e.value.parentId);t&&t.children.push(z(e.value.child,e.value.childStatus,e.value.childWaitingForUser))}let v=h.filter(e=>{if("idle"!==e.realTimeStatus)return!1;let t=q(e);return t>0&&g-t<=18e5||!!e.time?.archived}).sort((e,t)=>q(t)-q(e)).slice(0,50);if(v.length>0)for(let e of(await Promise.allSettled(v.map(async e=>{let t=q(e),r=t>0&&g-t<=12e4,s=o[e.id],i=s?a[s]:void 0;if(!i)return{sessionId:e.id,status:r?"busy":"idle",waitingForUser:!1};try{let t,s=await j(i,e.id,C),n=s.some(e=>"running"===e),a=!n&&s.some($),o=s.length>0&&s.every(e=>"completed"===e),l=!!(t=e.time?.updated)&&g-t<=3e4;return{sessionId:e.id,status:n||a?"busy":o&&!l?"idle":r||l?"busy":"idle",waitingForUser:a}}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 h)e.children.length>0&&e.children.sort((e,t)=>{let r="busy"===e.realTimeStatus||"retry"===e.realTimeStatus,s="busy"===t.realTimeStatus||"retry"===t.realTimeStatus;if(r&&!s)return -1;if(!r&&s)return 1;let i=e.time?.updated||e.time?.created||0;return(t.time?.updated||t.time?.created||0)-i});let b=h.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?a[t]:void 0;if(!r)return{sessionId:e.id,parentWaiting:!1,waiting:!1,running:!1,waitingChildIds:new Set};try{let t=await j(r,e.id,C),s=t.some(e=>"running"===e),i=!s&&t.some($),n=await Promise.allSettled(e.children.filter(e=>"busy"===e.realTimeStatus||"retry"===e.realTimeStatus).map(async t=>{let r=o[t.id]??o[e.id],s=r?a[r]:void 0;if(!s)return{childId:t.id,waiting:!1};try{let e=await j(s,t.id,C),r=e.some(e=>"running"===e);return{childId:t.id,waiting:!r&&e.some($)}}catch{return{childId:t.id,waiting:!1}}})),l=new Set(n.filter(e=>"fulfilled"===e.status).filter(e=>e.value.waiting).map(e=>e.value.childId)),d=l.size>0||e.children.some(e=>e.waitingForUser||"retry"===e.realTimeStatus);return{sessionId:e.id,parentWaiting:i,waiting:i||d,running:s,waitingChildIds:l}}catch{return{sessionId:e.id,parentWaiting:!1,waiting:!1,running:!1,waitingChildIds:new Set}}}))))if("fulfilled"===e.status){let t=h.find(t=>t.id===e.value.sessionId);if(!t)continue;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(),T=new Set;for(let e of h)for(let t of(T.add(e.id),e.children))T.add(`child:${t.id}`);for(let t of h)G(t,I)||X(t,I,e);V(I,T);let R=new Set;for(let e of u)e.directory&&R.add(e.directory);let A=Array.from(s.values()).filter(e=>!R.has(e.directory)),O={sessions:h,processHints:A};return l.length>0&&(O.failedPorts=l,O.degraded=!0),{payload:O,sourceMeta:{online:!0,...l.length>0?{degraded:!0}:{}}}}catch(e){return console.error("Error fetching sessions:",e),{payload:{error:"Failed to fetch sessions",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,sourceMeta:{online:!1,degraded:!0,reason:"Failed to fetch sessions"}}}}async function ef(){let e=await J();return es(await ep(e))}async function eh(e){let t;try{let r=await e.json();t=function(e){if(!Z(e)||!Array.isArray(e.sources)||0===e.sources.length)throw Error("Invalid sources payload");let t=e.sources.map(er);if(t.some(e=>null===e))throw Error("Invalid sources payload");return t}(r)}catch{return Response.json({error:"Invalid sources payload",hint:"POST /api/sessions expects a JSON body with a non-empty sources array."},{status:400})}let r="node"===process.env[O.RUNTIME_ROLE_ENV_VAR]?[D]:t.filter(e=>"local"===e.hostKind||e.enabled);if(0===r.length)return Response.json({sessions:[],processHints:[],hosts:[],hostStatuses:[]});if(1===r.length&&"local"===r[0].hostKind){let e=await J(),t=await ep(e),r=t.sourceMeta??{online:!t.status,...t.status?{degraded:!0}:{}},s=r.online?r:{...r,degraded:!0},i=ei(D,s),n=!s.online&&Z(t.payload)?en({sessions:[],processHints:Array.isArray(t.payload.processHints)?t.payload.processHints:[],degraded:!0},[i]):null;if(n){let e=t.status??503;return Response.json(n,{status:e})}return es({...t,payload:Z(t.payload)?en(function(e,t){if(!Array.isArray(e.sessions))return e;let r=[],s=0;for(let i of e.sessions){let e=el(i,t);if(e){r.push(e);continue}s+=1}let i=!0===e.degraded;return{...e,sessions:r,...i||s>0?{degraded:!0}:{}}}(t.payload,D),[i]):t.payload})}let s=r.some(e=>"local"===e.hostKind)?await J():0,i=new Map((await (0,A.listNodeRecords)()).map(e=>[e.nodeId,e])),n=r.map(e=>{if(!Q(e))return e;let t=i.get(e.hostId);return t?{...e,baseUrl:t.baseUrl,enabled:t.enabled}:e}),a=await Promise.allSettled(n.map(async e=>({source:e,result:"local"===e.hostKind?await ep(s):await ec(e,i.get(e.hostId))}))),o=[],l=[],d=[],u=!1;for(let e of a){if("fulfilled"!==e.status){u=!0;continue}let{source:t,result:r}=e.value,s=r.sourceMeta??{online:!r.status,...r.status?{degraded:!0}:{}},i=function(e){if(!Z(e.payload))return{sessions:[],processHints:[]};let t=Array.isArray(e.payload.sessions)?e.payload.sessions:[],r=Array.isArray(e.payload.processHints)?e.payload.processHints:[],s=Array.isArray(e.payload.failedPorts)?e.payload.failedPorts:void 0,i=!0===e.payload.degraded;return{sessions:t,processHints:r,...s?{failedPorts:s}:{},...i?{degraded:!0}:{}}}(r),n=!1;for(let e of(d.push(...i.processHints),i.sessions)){let r=el(e,t);if(r){l.push(r);continue}n=!0}let a=n?{...s,degraded:!0,reason:s.reason??"node_payload_invalid_session_id"}:s;o.push(ei(t,a)),(!a.online||a.degraded||i.degraded)&&(u=!0)}return Response.json({sessions:l,processHints:d,hosts:o,hostStatuses:o,...u?{degraded:!0}:{}})}e.s(["GET",()=>F,"POST",()=>x,"applyStickyBusyStatus",()=>W,"applyStickyStatusStabilization",()=>X,"dynamic",0,"force-dynamic","shouldSkipSessionStatusStabilization",()=>G],72626);var ey=e.i(72626);let eg=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/sessions/route",pathname:"/api/sessions",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/sessions/route.ts",nextConfigOutput:"standalone",userland:ey}),{workAsyncStorage:em,workUnitAsyncStorage:eS,serverHooks:ew}=eg;function ev(){return(0,s.patchFetch)({workAsyncStorage:em,workUnitAsyncStorage:eS})}async function eb(e,t,s){eg.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let S="/api/sessions/route";S=S.replace(/\/index$/,"")||"/";let w=await eg.prepare(e,t,{srcPage:S,multiZoneDraftMode:!1});if(!w)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:v,params:b,nextConfig:I,parsedUrl:E,isDraftMode:T,prerenderManifest:R,routerServerContext:A,isOnDemandRevalidate:O,revalidateOnlyGenerated:_,resolvedPathname:U,clientReferenceManifest:C,serverActionsManifest:P}=w,M=(0,o.normalizeAppPath)(S),N=!!(R.dynamicRoutes[M]||R.routes[U]),D=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,E,!1):t.end("This page could not be found"),null);if(N&&!T){let e=!!R.routes[U],t=R.dynamicRoutes[M];if(t&&!1===t.fallback&&!e){if(I.experimental.adapterPath)return await D();throw new g.NoFallbackError}}let F=null;!N||eg.isDev||T||(F="/index"===(F=U)?"/":F);let x=!0===eg.isDev||!N,H=N&&!x;P&&C&&(0,a.setManifestsSingleton)({page:S,clientReferenceManifest:C,serverActionsManifest:P});let k=e.method||"GET",K=(0,n.getTracer)(),L=K.getActiveScopeSpan(),$={params:b,prerenderManifest:R,renderOpts:{experimental:{authInterrupts:!!I.experimental.authInterrupts},cacheComponents:!!I.cacheComponents,supportsDynamicResponse:x,incrementalCache:(0,i.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:I.cacheLife,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,i)=>eg.onRequestError(e,t,s,i,A)},sharedContext:{buildId:v}},j=new l.NodeNextRequest(e),q=new l.NodeNextResponse(t),B=d.NextRequestAdapter.fromNodeNextRequest(j,(0,d.signalFromNodeResponse)(t));try{let a=async e=>eg.handle(B,$).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 s=r.get("next.route");if(s){let t=`${k} ${s}`;e.setAttributes({"next.route":s,"http.route":s,"next.span_name":t}),e.updateName(t)}else e.updateName(`${k} ${S}`)}),o=!!(0,i.getRequestMeta)(e,"minimalMode"),l=async i=>{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 a(i);e.fetchMetrics=$.renderOpts.fetchMetrics;let l=$.renderOpts.pendingWaitUntil;l&&s.waitUntil&&(s.waitUntil(l),l=void 0);let d=$.renderOpts.collectedTags;if(!N)return await (0,p.sendResponse)(j,q,n,$.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(n.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,s=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=y.INFINITE_CACHE?void 0:$.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:s}}}}catch(t){throw(null==r?void 0:r.isStale)&&await eg.onRequestError(e,t,{routerKind:"App Router",routePath:S,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:O})},!1,A),t}},u=await eg.handleResponse({req:e,nextConfig:I,cacheKey:F,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:R,isRoutePPREnabled:!1,isOnDemandRevalidate:O,revalidateOnlyGenerated:_,responseGenerator:d,waitUntil:s.waitUntil,isMinimalMode:o});if(!N)return null;if((null==u||null==(n=u.value)?void 0:n.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});o||t.setHeader("x-nextjs-cache",O?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),T&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,f.fromNodeOutgoingHttpHeaders)(u.value.headers);return o&&N||g.delete(y.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,h.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(j,q,new Response(u.value.body,{headers:g,status:u.value.status||200})),null};L?await l(L):await K.withPropagatedContext(e.headers,()=>K.trace(u.BaseServerSpan.handleRequest,{spanName:`${k} ${S}`,kind:n.SpanKind.SERVER,attributes:{"http.method":k,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await eg.onRequestError(e,t,{routerKind:"App Router",routePath:M,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:O})},!1,A),N)throw t;return await (0,p.sendResponse)(j,q,new Response(null,{status:500})),null}}e.s(["handler",()=>eb,"patchFetch",()=>ev,"routeModule",()=>eg,"serverHooks",()=>ew,"workAsyncStorage",()=>em,"workUnitAsyncStorage",()=>eS],86100)}];
|
|
1
|
+
module.exports=[86100,e=>{"use strict";let t;var r=e.i(47909),i=e.i(74017),s=e.i(96250),n=e.i(59756),a=e.i(61916),o=e.i(74677),d=e.i(69741),l=e.i(16795),u=e.i(87718),c=e.i(95169),p=e.i(47587),f=e.i(66012),h=e.i(70101),y=e.i(26937),g=e.i(10372),m=e.i(93695);e.i(52474);var v=e.i(220),S=e.i(57181),w=e.i(63127),b=e.i(74579);let I=new Map;function T(e){I.delete(e),I.delete(`child:${e}`)}async function E({stickyBusyDelayMs:e,providers:t}){let r;if(0===t.length)return{payload:{sessions:[],processHints:[]},sourceMeta:{online:!1,degraded:!0,reason:"No local session provider configured"}};let i=await Promise.allSettled(t.map(t=>t.getSessionsResult({stickyBusyDelayMs:e}))),s=[],n=[],a=[],o=null,d=!1,l=!1;for(let e of i){if("fulfilled"!==e.status){l=!0,r||(r=e.reason instanceof Error?e.reason.message:String(e.reason));continue}let t=e.value,i=function(e){if(!e||"object"!=typeof e||Array.isArray(e))return{sessions:[],processHints:[]};let t=Array.isArray(e.sessions)?e.sessions:[],r=Array.isArray(e.processHints)?e.processHints:[],i=Array.isArray(e.failedPorts)?e.failedPorts:void 0,s=!0===e.degraded;return{sessions:t,processHints:r,...i?{failedPorts:i}:{},...s?{degraded:!0}:{}}}(t.payload),u=t.sourceMeta??{online:i.sessions.length>0,...t.status?{degraded:!0}:{}};!o&&t.status&&0===i.sessions.length&&0===i.processHints.length&&(o=t),(i.sessions.length>0||i.processHints.length>0||(i.failedPorts?.length??0)>0)&&(s.push(...i.sessions),n.push(...i.processHints),i.failedPorts&&a.push(...i.failedPorts)),(u.online||i.sessions.length>0)&&(d=!0),d||r||!u.reason||(r=u.reason),(u.degraded||i.degraded)&&(l=!0)}if(0===s.length&&0===n.length&&o)return o;let u=d?{online:!0,...l?{degraded:!0}:{}}:{online:!1,...l?{degraded:!0}:{},...r?{reason:r}:{}};return{payload:{sessions:s,processHints:n,...a.length>0?{failedPorts:a}:{},...l?{degraded:!0}:{}},sourceMeta:u}}function R(e,t,r,i){let s=I.get(e)??{lastBusyAt:0,lastSeenAt:r};if("busy"===t)return s.lastBusyAt=r,s.lastSeenAt=r,I.set(e,s),t;if("retry"===t)return s.lastSeenAt=r,I.set(e,s),t;let n=s.lastBusyAt>0&&r-s.lastBusyAt<=i;return s.lastSeenAt=r,I.set(e,s),n?"busy":"idle"}function A(e,t){let r;for(let[r,i]of I){let s=e-i.lastSeenAt,n=t.has(r);(s>864e5||!n&&s>18e5)&&I.delete(r)}let i=Number.isFinite(r=Number(process.env.OPENCODE_STATUS_STICKY_MAX_ENTRIES))&&r>0?Math.floor(r):5e3;if(I.size<=i)return;let s=I.size-i,n=Array.from(I.entries()).sort((e,t)=>e[1].lastSeenAt-t[1].lastSeenAt),a=0;for(let[e]of n){if(a>=s)break;!t.has(e)&&(I.delete(e),a++)}if(!(a>=s))for(let[e]of n){if(a>=s)break;I.has(e)&&(I.delete(e),a++)}}function O(e){return"busy"===e||"retry"===e?e:"idle"}function _(e,t){return!!((0,b.takeSessionStickyStatusBlocked)(e.id,t)||e.time?.archived)&&(function(e){for(let t of(T(e.id),(0,b.clearSessionForceUnarchived)(e.id),e.children))T(`child:${t.id}`),(0,b.clearSessionForceUnarchived)(t.id)}(e),!0)}function P(e,t,r){for(let i of e.children){if(i.time?.archived){T(`child:${i.id}`),(0,b.clearSessionForceUnarchived)(i.id);continue}let e=O(i.realTimeStatus),s=i.waitingForUser&&"idle"===e?"retry":e;i.realTimeStatus=R(`child:${i.id}`,s,t,r),("busy"===i.realTimeStatus||"retry"===i.realTimeStatus||i.waitingForUser)&&(0,b.markSessionForceUnarchived)(i.id,t)}let i=O(e.realTimeStatus),s=e.waitingForUser&&"idle"===i?"retry":i;e.realTimeStatus=R(e.id,s,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,b.markSessionForceUnarchived)(e.id,t)}e.i(39354);var M=e.i(34959),U=e.i(33405),C=e.i(14747),N=e.i(99686);let D=k("OPENCODE_SESSIONS_LIST_TIMEOUT_MS",6e3),F=k("OPENCODE_SESSIONS_STATUS_TIMEOUT_MS",4e3),H=k("OPENCODE_SESSIONS_MESSAGES_TIMEOUT_MS",2500),x=new Set(["awaiting-input","awaiting_input","input-required","input_required","requires-input","requires_input","blocked","paused"]);function k(e,t){let r=Number(process.env[e]);return Number.isFinite(r)&&r>0?Math.floor(r):t}function K(e,t,r){let i,s=Error(`${r} timed out after ${t}ms`),n=new AbortController,a=new Promise((e,r)=>{i=setTimeout(()=>{n.abort(),r(s)},t)});return Promise.race([e(n.signal).catch(e=>{if(n.signal.aborted)throw s;throw e}),a]).finally(()=>{i&&clearTimeout(i)})}function j(e){return e.trim().toLowerCase()}function L(e){return x.has(j(e))}async function $(e,t,r){var i=(await K(r=>e.session.messages({path:{id:t},query:{limit:8},signal:r}),r,`session.messages(${t})`)).data||[];let s=[];for(let e of i)for(let t of e.parts||[]){let e=t?.state?.status;if("string"==typeof e){let t=j(e);t&&s.push(t)}}return s}function q(e){return e.time?.updated||e.time?.created||0}function B(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 G(e){return C.default.basename(e)}var W=e.i(586),V=e.i(68817),z=e.i(39948),X=e.i(82414),Y=e.i(81951);let J=Number.isFinite(t=Number(process.env.VIBEPULSE_NODE_SESSIONS_TIMEOUT_MS))&&t>0?Math.floor(t):6e3,Z={hostId:"local",hostLabel:"Local",hostKind:"local"},Q=[{id:"opencode",async getSessionsResult({stickyBusyDelayMs:e}){let{processes:t,timedOut:r}=(0,N.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:G(e.cwd),reason:"process_without_api_port"}));let{ports:s,timedOut:n}=(0,N.discoverOpencodePortsWithMeta)();if(!s.length){let e=Array.from(i.values());return n||r?{payload:{error:"OpenCode discovery timed out",hint:"Host process discovery exceeded timeout. Retry shortly, or increase OPENCODE_DISCOVERY_TIMEOUT_MS.",...e.length>0?{processHints:e}:{}},status:503,sourceMeta:{online:!1,degraded:!0,reason:"OpenCode discovery timed out"}}:e.length>0?{payload:{sessions:[],processHints:e},sourceMeta:{online:!1,reason:"OpenCode server not found"}}:{payload:{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,sourceMeta:{online:!1,reason:"OpenCode server not found"}}}try{let t=await Promise.allSettled(s.map(async e=>{let t=(0,M.createOpencodeClient)({baseUrl:`http://localhost:${e}`}),r=await K(e=>t.session.list({signal:e}),D,`session.list(${e})`),i=await K(e=>t.session.status({signal:e}),F,`session.status(${e})`).catch(()=>({data:{}}));return{port:e,client:t,sessions:r.data||[],status:i.data||{}}})),r=[],n={},a={},o={},d=[];for(let e=0;e<t.length;e++){let i=t[e],l=s[e];if("fulfilled"!==i.status){d.push({port:l,reason:i.reason instanceof Error?i.reason.message:String(i.reason)});continue}for(let e of(r.push(...i.value.sessions),Object.assign(n,i.value.status),a[i.value.port]=i.value.client,i.value.sessions))e.id in o||(o[e.id]=i.value.port)}let l=[],u=new Set;for(let e of r)u.has(e.id)||(u.add(e.id),l.push(e));let c=l.filter(e=>!e.parentID),p=l.filter(e=>!!e.parentID),f=Date.now();for(let e of((0,b.pruneSessionForceUnarchived)(f),(0,b.pruneSessionStickyStatusBlocked)(f),c))e.time?.archived!==void 0&&(0,b.shouldForceSessionUnarchived)(e.id,f)&&(e.time={...e.time,archived:void 0});for(let e of p)e.time?.archived!==void 0&&(0,b.shouldForceSessionUnarchived)(e.id,f)&&(e.time={...e.time,archived:void 0});if(t.length>0&&d.length===t.length)return A(Date.now(),new Set),{payload:{error:"Failed to fetch sessions from OpenCode ports",hint:"All discovered OpenCode API ports timed out or failed. Retry shortly or increase OPENCODE_SESSIONS_LIST_TIMEOUT_MS.",failedPorts:d},status:503,sourceMeta:{online:!1,degraded:!0,reason:"Failed to fetch sessions from OpenCode ports"}};if(d.length>0&&0===c.length&&0===p.length)return A(Date.now(),new Set),{payload:{sessions:[],processHints:Array.from(i.values()),failedPorts:d,degraded:!0},sourceMeta:{online:!0,degraded:!0}};let h=c.map(e=>({...e,projectName:G(e.directory),branch:function(e){if(!function(e){try{let t=(0,U.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,U.execSync)("git branch --show-current",{cwd:e,encoding:"utf-8",stdio:["ignore","pipe","ignore"],timeout:1200}).trim()||null}catch{return null}}(e.directory),realTimeStatus:n[e.id]?.type||"idle",waitingForUser:!1,children:[]})),y=new Map(h.map(e=>[e.id,e])),g=Date.now(),m=[];for(let e of p){let t=e.parentID?y.get(e.parentID):void 0;if(!t){let r=h.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=n[e.id]?.type,i=q(e),s=i>0&&g-i<=18e5;if(!(e.time?.archived&&!r&&!s))if(r&&"idle"!==r)t.children.push(B(e,r));else{if(!s)continue;m.length<50&&m.push({parentId:t.id,child:e,childUpdatedAt:i})}}if(m.length>0)for(let e of(await Promise.allSettled(m.map(async({parentId:e,child:t,childUpdatedAt:r})=>{let i=o[t.id]??o[e],s=i?a[i]:void 0,n=r>0&&g-r<=12e4;if(!s)return{parentId:e,child:t,childStatus:n?"busy":"idle"};try{let i=await $(s,t.id,H),a=i.some(e=>"running"===e),o=!a&&i.some(L);return{parentId:e,child:t,childWaitingForUser:o,childStatus:o||a||r>0&&g-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=y.get(e.value.parentId);t&&t.children.push(B(e.value.child,e.value.childStatus,e.value.childWaitingForUser))}let v=h.filter(e=>{if("idle"!==e.realTimeStatus)return!1;let t=q(e);return t>0&&g-t<=18e5||!!e.time?.archived}).sort((e,t)=>q(t)-q(e)).slice(0,50);if(v.length>0)for(let e of(await Promise.allSettled(v.map(async e=>{let t=q(e),r=t>0&&g-t<=12e4,i=o[e.id],s=i?a[i]:void 0;if(!s)return{sessionId:e.id,status:r?"busy":"idle",waitingForUser:!1};try{let t,i=await $(s,e.id,H),n=i.some(e=>"running"===e),a=!n&&i.some(L),o=i.length>0&&i.every(e=>"completed"===e),d=!!(t=e.time?.updated)&&g-t<=3e4;return{sessionId:e.id,status:n||a?"busy":o&&!d?"idle":r||d?"busy":"idle",waitingForUser:a}}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 h)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 s=e.time?.updated||e.time?.created||0;return(t.time?.updated||t.time?.created||0)-s});let S=h.filter(e=>"busy"===e.realTimeStatus||!!e.time?.archived||e.children.some(e=>"busy"===e.realTimeStatus||"retry"===e.realTimeStatus));if(S.length>0){for(let e of(await Promise.allSettled(S.map(async e=>{let t=o[e.id],r=t?a[t]:void 0;if(!r)return{sessionId:e.id,parentWaiting:!1,waiting:!1,running:!1,waitingChildIds:new Set};try{let t=await $(r,e.id,H),i=t.some(e=>"running"===e),s=!i&&t.some(L),n=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?a[r]:void 0;if(!i)return{childId:t.id,waiting:!1};try{let e=await $(i,t.id,H),r=e.some(e=>"running"===e);return{childId:t.id,waiting:!r&&e.some(L)}}catch{return{childId:t.id,waiting:!1}}})),d=new Set(n.filter(e=>"fulfilled"===e.status).filter(e=>e.value.waiting).map(e=>e.value.childId)),l=d.size>0||e.children.some(e=>e.waitingForUser||"retry"===e.realTimeStatus);return{sessionId:e.id,parentWaiting:s,waiting:s||l,running:i,waitingChildIds:d}}catch{return{sessionId:e.id,parentWaiting:!1,waiting:!1,running:!1,waitingChildIds:new Set}}}))))if("fulfilled"===e.status){let t=h.find(t=>t.id===e.value.sessionId);if(!t)continue;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 w=Date.now(),I=new Set;for(let e of h)for(let t of(I.add(e.id),e.children))I.add(`child:${t.id}`);for(let t of h)_(t,w)||P(t,w,e);A(w,I);let T=new Set;for(let e of l)e.directory&&T.add(e.directory);let E=Array.from(i.values()).filter(e=>!T.has(e.directory)),R={sessions:h,processHints:E};return d.length>0&&(R.failedPorts=d,R.degraded=!0),{payload:R,sourceMeta:{online:!0,...d.length>0?{degraded:!0}:{}}}}catch(e){return console.error("Error fetching sessions:",e),{payload:{error:"Failed to fetch sessions",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,sourceMeta:{online:!1,degraded:!0,reason:"Failed to fetch sessions"}}}}},w.claudeCodeLocalSessionProvider],ee="force-dynamic";async function et(){return eA()}async function er(e){return eO(e)}async function ei(){let e=1e3;try{let t=await (0,S.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 es(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function en(e){return"remote"===e.hostKind}function ea(e,t,r){return en(r)&&"claude-code"===t?{openProject:e?.openProject??!0,openEditor:!1,archive:!1,delete:!1}:e}function eo(e){return"idle"===e||"busy"===e||"retry"===e}function ed(e){if(!es(e))return!1;let t=e.created,r=e.updated,i=e.archived;return"number"==typeof t&&"number"==typeof r&&(null==i||"number"==typeof i)}function el(e){return e&&null===e.archived?{created:e.created,updated:e.updated}:e}function eu(e){if(!es(e))return null;let t="string"==typeof e.hostId?e.hostId.trim():e.hostId,r="string"==typeof e.hostLabel?e.hostLabel.trim():e.hostLabel,i=e.hostKind;if(t===Z.hostId&&r===Z.hostLabel&&i===Z.hostKind)return Z;let s=e.baseUrl,n=e.enabled;if("string"!=typeof t||"string"!=typeof r||"remote"!==i||"string"!=typeof s||"boolean"!=typeof n)return null;let a=function(e){let t=e.trim();if(!t)return null;try{let e=new URL(t);if("http:"!==e.protocol&&"https:"!==e.protocol||e.username||e.password)return null;return e.hash="",e.toString().replace(/\/+$/,"")}catch{return null}}(s);return a?{hostId:t,hostLabel:r,hostKind:i,baseUrl:a,enabled:n}:null}function ec(e){return e.status?Response.json(e.payload,{status:e.status}):Response.json(e.payload)}function ep(e,t){return{hostId:e.hostId,hostLabel:e.hostLabel,hostKind:e.hostKind,online:t.online,...t.degraded?{degraded:!0}:{},...t.reason?{reason:t.reason}:{},...en(e)?{baseUrl:e.baseUrl}:{}}}function ef(e,t){return{...e,hosts:t,hostStatuses:t}}function eh(e){return(0,z.extractProviderRawId)(function(e){if(!e.includes(":"))return e;try{return(0,W.parseSourceKey)(e).sessionId}catch{return e}}(e))}function ey(e,t,r,i){try{return(0,z.composeProviderSourceKey)(e,t,{readOnly:r,...i?{provider:i}:{}}).sourceKey}catch{return}}function eg(e,t){let r=e.rawSessionId??eh(e.id),i=e.parentID?eh(e.parentID):e.parentID,s=(0,z.detectProviderFromRawId)(e.id),n=ea(e.capabilities,s,t),a=ey(t.hostId,r,e.readOnly,s);if(!a)return null;let o=i?ey(t.hostId,i,void 0,s)??void 0:void 0,d=e.provider??("claude-code"===s?s:void 0),l="claude-code"===d?e.providerRawId??r:e.providerRawId,u=[];for(let r of e.children){let e=function(e,t,r){let i=e.rawSessionId??eh(e.id),s=e.parentID?eh(e.parentID):e.parentID,n=(0,z.detectProviderFromRawId)(e.id),a=r?(0,z.detectProviderFromRawId)(r):void 0,o="claude-code"===n?n:a??n,d=ea(e.capabilities,o,t),l=ey(t.hostId,i,e.readOnly,o);if(!l)return null;let u=r?eh(r):void 0,c="string"==typeof s&&"string"==typeof r&&u===s,p=s?c?r:ey(t.hostId,s,void 0,o)??void 0:void 0,f=e.provider??("claude-code"===o?o:void 0),h="claude-code"===f?e.providerRawId??i:e.providerRawId;return{...e,id:l,parentID:p,hostId:t.hostId,hostLabel:t.hostLabel,hostKind:t.hostKind,...en(t)?{hostBaseUrl:t.baseUrl}:{},time:el(e.time),rawSessionId:i,sourceSessionKey:l,readOnly:e.readOnly??!1,capabilities:d,...f?{provider:f}:{},...h?{providerRawId:h}:{}}}(r,t,a);e&&u.push(e)}return{...e,id:a,parentID:o,hostId:t.hostId,hostLabel:t.hostLabel,hostKind:t.hostKind,...en(t)?{hostBaseUrl:t.baseUrl}:{},time:el(e.time),rawSessionId:r,sourceSessionKey:a,readOnly:e.readOnly??!1,capabilities:n,...d?{provider:d}:{},...l?{providerRawId:l}:{},children:u}}function em(e){return"claude-code"===e.provider}function ev(e){return"number"==typeof e&&Number.isFinite(e)?e:void 0}function eS(e){return ev(e.time?.created)}function ew(e){return ev(e.time?.updated)}function eb(e,t){return e.hostId===t.hostId&&e.hostKind===t.hostKind}function eI(e){let t=new Map(e.map(e=>[e.id,e])),r=new Set,i=(e,i)=>{let s=i,n=new Set([e.id]);for(;s&&!n.has(s.id);){if(n.add(s.id),!r.has(s.id))return s;if("string"!=typeof s.parentID)break;s=t.get(s.parentID)}};for(let s of[...e].sort((e,t)=>{let r=(eS(t)??0)-(eS(e)??0);return 0!==r?r:(ew(t)??0)-(ew(e)??0)})){let n;if(!em(s)||r.has(s.id))continue;if("string"==typeof s.parentID){let e=t.get(s.parentID);if(e){if(e===s||!em(e)||!eb(e,s))continue;let t=i(s,e);if(!t){r.has(e.id)&&(s.parentID=void 0);continue}n=t,s.parentID!==t.id&&(s.parentID=t.id)}}if(!n&&(n=function(e,t,r){if(e.topology?.childSessions==="authoritative")return;let i=eS(e);if(void 0===i)return;let s=ew(e)??i,n=[];for(let a of t){if(a.id===e.id||r.has(a.id)||!em(a)||!eb(a,e)||"string"==typeof a.parentID||a.directory!==e.directory||a.projectName!==e.projectName)continue;let t=eS(a);if(void 0===t||t>i)continue;let o=i-t;if(o>6e4||!("busy"===a.realTimeStatus||"retry"===a.realTimeStatus||a.waitingForUser))continue;let d=Math.abs(s-(ew(a)??t));n.push({parent:a,createdGapMs:o,updatedGapMs:d})}if(0===n.length)return;n.sort((e,t)=>e.createdGapMs!==t.createdGapMs?e.createdGapMs-t.createdGapMs:e.updatedGapMs-t.updatedGapMs);let a=n[0],o=n[1];if(!(o&&5e3>=Math.abs(o.createdGapMs-a.createdGapMs)))return a.parent}(s,e,r))&&(s.parentID=n.id),!n||s.children.length>0)continue;let a=function(e){let{children:t,...r}=e;return r}(s),o=n.children.findIndex(e=>e.id===a.id);o>=0?n.children[o]={...n.children[o],...a}:n.children.push(a),n.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 s=e.time?.updated||e.time?.created||0;return(t.time?.updated||t.time?.created||0)-s}),r.add(s.id)}return e.filter(e=>!r.has(e.id))}async function eT(e){try{return await e.json()}catch{return null}}async function eE(e,t){let r=`node.sessions(${e.hostId})`,i=new AbortController,s=!1,n=setTimeout(()=>{s=!0,i.abort()},J);try{return await fetch(`${t.baseUrl}/api/node/sessions`,{method:"GET",headers:(0,V.createNodeRequestHeaders)(t.token),signal:i.signal})}catch(e){if(s)throw Error(`${r} timed out after ${J}ms`);throw e}finally{clearTimeout(n)}}async function eR(e,t){if(!t)return{payload:{sessions:[],processHints:[],degraded:!0},sourceMeta:{online:!1,degraded:!0,reason:"node_not_configured"}};if(!t.enabled)return{payload:{sessions:[],processHints:[],degraded:!0},sourceMeta:{online:!1,degraded:!0,reason:"node_disabled"}};try{let r=await eE(e,t),i=await eT(r);if(!r.ok){let e=es(i)&&"string"==typeof i.reason?i.reason:`node_request_failed_${r.status}`;return{payload:{sessions:[],processHints:[],degraded:!0},sourceMeta:{online:!0,degraded:!0,reason:e}}}let s=function(e){if(!es(e)||!0!==e.ok||"node"!==e.role||e.protocolVersion!==V.NODE_PROTOCOL_VERSION)return null;let t=e.source;if(!es(t)||"local"!==t.hostId||"Local"!==t.hostLabel||"local"!==t.hostKind)return null;let r=e.upstream;if(!es(r)||"opencode"!==r.kind||"boolean"!=typeof r.reachable)return null;let i=e.sessions,s=e.processHints;return!Array.isArray(i)||i.some(e=>!function(e){if(!es(e)||"string"!=typeof e.id||"string"!=typeof e.directory||"string"!=typeof e.projectName)return!1;let t=e.branch;if(null!=t&&"string"!=typeof t||!eo(e.realTimeStatus)||"boolean"!=typeof e.waitingForUser)return!1;let r=e.children;if(!Array.isArray(r)||r.some(e=>!function(e){if(!es(e)||"string"!=typeof e.id||!eo(e.realTimeStatus)||"boolean"!=typeof e.waitingForUser)return!1;let t=e.parentID,r=e.directory,i=e.time;return(void 0===t||"string"==typeof t)&&(void 0===r||"string"==typeof r)&&(void 0===i||!!ed(i))}(e)))return!1;let i=e.time;return void 0===i||!!ed(i)}(e))||!Array.isArray(s)||s.some(e=>!(es(e)&&"number"==typeof e.pid&&"string"==typeof e.directory&&"string"==typeof e.projectName&&"process_without_api_port"===e.reason))?null:{sessions:i,processHints:s,degraded:!0===e.degraded}}(i);if(!s)return{payload:{sessions:[],processHints:[],degraded:!0},sourceMeta:{online:!0,degraded:!0,reason:"node_payload_invalid"}};return{payload:{sessions:s.sessions,processHints:s.processHints,...s.degraded?{degraded:!0}:{}},sourceMeta:{online:!0,...s.degraded?{degraded:!0}:{}}}}catch(e){return{payload:{sessions:[],processHints:[],degraded:!0},sourceMeta:{online:!1,degraded:!0,reason:e instanceof Error?e.message:String(e)}}}}async function eA(){let e=await ei();return ec(await E({stickyBusyDelayMs:e,providers:[...Q]}))}async function eO(e){let t;try{let r=await e.json();t=function(e){if(!es(e)||!Array.isArray(e.sources)||0===e.sources.length)throw Error("Invalid sources payload");let t=e.sources.map(eu);if(t.some(e=>null===e))throw Error("Invalid sources payload");return t}(r)}catch{return Response.json({error:"Invalid sources payload",hint:"POST /api/sessions expects a JSON body with a non-empty sources array."},{status:400})}let r="node"===process.env[Y.RUNTIME_ROLE_ENV_VAR]?[Z]:t.filter(e=>"local"===e.hostKind||e.enabled);if(0===r.length)return Response.json({sessions:[],processHints:[],hosts:[],hostStatuses:[]});if(1===r.length&&"local"===r[0].hostKind){let e=await ei(),t=await E({stickyBusyDelayMs:e,providers:[...Q]}),r=t.sourceMeta??{online:!t.status,...t.status?{degraded:!0}:{}},i=r.online?r:{...r,degraded:!0},s=ep(Z,i),n=!i.online&&es(t.payload)?ef({sessions:[],processHints:Array.isArray(t.payload.processHints)?t.payload.processHints:[],degraded:!0},[s]):null;if(n){let e=t.status??503;return Response.json(n,{status:e})}return ec({...t,payload:es(t.payload)?ef(function(e,t){if(!Array.isArray(e.sessions))return e;let r=[],i=0;for(let s of e.sessions){let e=eg(s,t);if(e){r.push(e);continue}i+=1}let s=!0===e.degraded;return{...e,sessions:eI(r),...s||i>0?{degraded:!0}:{}}}(t.payload,Z),[s]):t.payload})}let i=r.some(e=>"local"===e.hostKind)?await ei():0,s=new Map((await (0,X.listNodeRecords)()).map(e=>[e.nodeId,e])),n=r.map(e=>{if(!en(e))return e;let t=s.get(e.hostId);return t?{...e,baseUrl:t.baseUrl,enabled:t.enabled}:e}),a=await Promise.allSettled(n.map(async e=>({source:e,result:"local"===e.hostKind?await E({stickyBusyDelayMs:i,providers:[...Q]}):await eR(e,s.get(e.hostId))}))),o=[],d=[],l=[],u=!1;for(let e of a){if("fulfilled"!==e.status){u=!0;continue}let{source:t,result:r}=e.value,i=r.sourceMeta??{online:!r.status,...r.status?{degraded:!0}:{}},s=function(e){if(!es(e.payload))return{sessions:[],processHints:[]};let t=Array.isArray(e.payload.sessions)?e.payload.sessions:[],r=Array.isArray(e.payload.processHints)?e.payload.processHints:[],i=Array.isArray(e.payload.failedPorts)?e.payload.failedPorts:void 0,s=!0===e.payload.degraded;return{sessions:t,processHints:r,...i?{failedPorts:i}:{},...s?{degraded:!0}:{}}}(r),n=!1;for(let e of(l.push(...s.processHints),s.sessions)){let r=eg(e,t);if(r){d.push(r);continue}n=!0}let a=n?{...i,degraded:!0,reason:i.reason??"node_payload_invalid_session_id"}:i;o.push(ep(t,a)),(!a.online||a.degraded||s.degraded)&&(u=!0)}return Response.json({sessions:eI(d),processHints:l,hosts:o,hostStatuses:o,...u?{degraded:!0}:{}})}e.s(["GET",()=>et,"POST",()=>er,"dynamic",0,ee],27809),e.i(27809),e.s(["GET",()=>et,"POST",()=>er,"applyStickyBusyStatus",()=>R,"applyStickyStatusStabilization",()=>P,"dynamic",0,ee,"shouldSkipSessionStatusStabilization",()=>_],72626);var e_=e.i(72626);let eP=new r.AppRouteRouteModule({definition:{kind:i.RouteKind.APP_ROUTE,page:"/api/sessions/route",pathname:"/api/sessions",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/sessions/route.ts",nextConfigOutput:"standalone",userland:e_}),{workAsyncStorage:eM,workUnitAsyncStorage:eU,serverHooks:eC}=eP;function eN(){return(0,s.patchFetch)({workAsyncStorage:eM,workUnitAsyncStorage:eU})}async function eD(e,t,r){eP.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let s="/api/sessions/route";s=s.replace(/\/index$/,"")||"/";let S=await eP.prepare(e,t,{srcPage:s,multiZoneDraftMode:!1});if(!S)return t.statusCode=400,t.end("Bad Request"),null==r.waitUntil||r.waitUntil.call(r,Promise.resolve()),null;let{buildId:w,params:b,nextConfig:I,parsedUrl:T,isDraftMode:E,prerenderManifest:R,routerServerContext:A,isOnDemandRevalidate:O,revalidateOnlyGenerated:_,resolvedPathname:P,clientReferenceManifest:M,serverActionsManifest:U}=S,C=(0,d.normalizeAppPath)(s),N=!!(R.dynamicRoutes[C]||R.routes[P]),D=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,T,!1):t.end("This page could not be found"),null);if(N&&!E){let e=!!R.routes[P],t=R.dynamicRoutes[C];if(t&&!1===t.fallback&&!e){if(I.experimental.adapterPath)return await D();throw new m.NoFallbackError}}let F=null;!N||eP.isDev||E||(F="/index"===(F=P)?"/":F);let H=!0===eP.isDev||!N,x=N&&!H;U&&M&&(0,o.setManifestsSingleton)({page:s,clientReferenceManifest:M,serverActionsManifest:U});let k=e.method||"GET",K=(0,a.getTracer)(),j=K.getActiveScopeSpan(),L={params:b,prerenderManifest:R,renderOpts:{experimental:{authInterrupts:!!I.experimental.authInterrupts},cacheComponents:!!I.cacheComponents,supportsDynamicResponse:H,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:I.cacheLife,waitUntil:r.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,i,s)=>eP.onRequestError(e,t,i,s,A)},sharedContext:{buildId:w}},$=new l.NodeNextRequest(e),q=new l.NodeNextResponse(t),B=u.NextRequestAdapter.fromNodeNextRequest($,(0,u.signalFromNodeResponse)(t));try{let o=async e=>eP.handle(B,L).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")!==c.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=`${k} ${i}`;e.setAttributes({"next.route":i,"http.route":i,"next.span_name":t}),e.updateName(t)}else e.updateName(`${k} ${s}`)}),d=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var a,l;let u=async({previousCacheEntry:i})=>{try{if(!d&&O&&_&&!i)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(n);e.fetchMetrics=L.renderOpts.fetchMetrics;let a=L.renderOpts.pendingWaitUntil;a&&r.waitUntil&&(r.waitUntil(a),a=void 0);let l=L.renderOpts.collectedTags;if(!N)return await (0,f.sendResponse)($,q,s,L.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);l&&(t[g.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>=g.INFINITE_CACHE)&&L.renderOpts.collectedRevalidate,i=void 0===L.renderOpts.collectedExpire||L.renderOpts.collectedExpire>=g.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:i}}}}catch(t){throw(null==i?void 0:i.isStale)&&await eP.onRequestError(e,t,{routerKind:"App Router",routePath:s,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:x,isOnDemandRevalidate:O})},!1,A),t}},c=await eP.handleResponse({req:e,nextConfig:I,cacheKey:F,routeKind:i.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:R,isRoutePPREnabled:!1,isOnDemandRevalidate:O,revalidateOnlyGenerated:_,responseGenerator:u,waitUntil:r.waitUntil,isMinimalMode:d});if(!N)return null;if((null==c||null==(a=c.value)?void 0:a.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(l=c.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});d||t.setHeader("x-nextjs-cache",O?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,h.fromNodeOutgoingHttpHeaders)(c.value.headers);return d&&N||m.delete(g.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,y.getCacheControlHeader)(c.cacheControl)),await (0,f.sendResponse)($,q,new Response(c.value.body,{headers:m,status:c.value.status||200})),null};j?await l(j):await K.withPropagatedContext(e.headers,()=>K.trace(c.BaseServerSpan.handleRequest,{spanName:`${k} ${s}`,kind:a.SpanKind.SERVER,attributes:{"http.method":k,"http.target":e.url}},l))}catch(t){if(t instanceof m.NoFallbackError||await eP.onRequestError(e,t,{routerKind:"App Router",routePath:C,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:x,isOnDemandRevalidate:O})},!1,A),N)throw t;return await (0,f.sendResponse)($,q,new Response(null,{status:500})),null}}e.s(["handler",()=>eD,"patchFetch",()=>eN,"routeModule",()=>eP,"serverHooks",()=>eC,"workAsyncStorage",()=>eM,"workUnitAsyncStorage",()=>eU],86100)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=node_modules_next_dist_esm_build_templates_app-route_b054aff3.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[12080,e=>{"use strict";var t=e.i(47909),r=e.i(74017),n=e.i(96250),s=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),v=e.i(10372),f=e.i(93695);e.i(52474);var m=e.i(220),w=e.i(99686),g=e.i(586),C=e.i(82414),E=e.i(68817),y=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="archive_request_failed"){return Response.json({error:"Failed to archive session",reason:r,...t?{message:t}:{}},{status:e})}async function P(e,t){let r=(await (0,C.listNodeRecords)()).find(t=>t.nodeId===e);if(!r||!r.enabled)return x();let n=new AbortController,s=!1,a=setTimeout(()=>{s=!0,n.abort()},5e3);try{let e=await fetch(`${r.baseUrl}/api/node/sessions/${t}/archive`,{method:"POST",headers:(0,E.createNodeRequestHeaders)(r.token),signal:n.signal});if(e.ok)return Response.json({success:!0});let s=await e.json().catch(()=>({}));return Response.json({error:"Remote archive failed",reason:"string"==typeof s.reason?s.reason:`node_request_failed_${e.status}`},{status:e.status})}catch{return Response.json({error:s?"Remote node request timed out":"Remote node request failed",reason:s?"upstream_timeout":"upstream_unreachable"},{status:s?504:503})}finally{clearTimeout(a)}}async function T(e,{params:t}){let r,n,{id:s}=await t;try{r=(0,g.parseActionSessionReference)(s)}catch{return A()}let a=(0,y.detectProviderFromRawId)(r.sessionId);if(!(0,y.getDefaultProviderContext)(a).capabilities.archive||"claude-code"===a&&r.isRemote){var o,i;let e;return o="archive",i=r.sessionId,e=(0,y.detectProviderFromRawId)(i),Response.json({error:"Session action not supported by provider",reason:"provider_capability_unsupported",provider:e,capability:o},{status:403})}if("claude-code"===a){await (0,S.markClaudeSessionArchived)((0,y.extractProviderRawId)(r.sessionId));let e=(0,g.resolveLocalActionSessionId)(s);return e&&((0,_.clearSessionForceUnarchived)(e),(0,_.markSessionStickyStatusBlocked)(e)),Response.json({success:!0})}let l=(0,g.resolveLocalActionSessionId)(s);if(!l&&r.isRemote)return P(r.hostId,r.sessionId);if(!l)return A();let{ports:d,timedOut:u}=(0,w.discoverOpencodePortsWithMeta)();if(!d.length)return u?Response.json({error:"OpenCode discovery timed out"},{status:503}):Response.json({error:"OpenCode server not found"},{status:503});let c=!1,p=null,h="archive_request_failed";for(let e of d)try{let t=`http://localhost:${e}`,r=await fetch(`${t}/session/${l}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({time:{archived:Date.now()}})});if(r.ok)return(0,_.clearSessionForceUnarchived)(l),(0,_.markSessionStickyStatusBlocked)(l),Response.json({success:!0});let s=await r.text();if(console.error(`Failed to archive session on port ${e}:`,s),404===r.status){c=!0;continue}p=r.status,n=s||void 0,h="archive_request_failed"}catch(t){console.error(`Failed to archive session on port ${e}:`,t),p=503,n=t instanceof Error?t.message:String(t),h="upstream_unreachable"}return null!==p?b(p,n,h):c?x():b(500)}e.s(["POST",()=>T],844);var I=e.i(844);let O=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/sessions/[id]/archive/route",pathname:"/api/sessions/[id]/archive",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/sessions/[id]/archive/route.ts",nextConfigOutput:"standalone",userland:I}),{workAsyncStorage:N,workUnitAsyncStorage:k,serverHooks:q}=O;function j(){return(0,n.patchFetch)({workAsyncStorage:N,workUnitAsyncStorage:k})}async function H(e,t,n){O.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/sessions/[id]/archive/route";w=w.replace(/\/index$/,"")||"/";let g=await O.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:C,params:E,nextConfig:y,parsedUrl:_,isDraftMode:S,prerenderManifest:A,routerServerContext:x,isOnDemandRevalidate:b,revalidateOnlyGenerated:P,resolvedPathname:T,clientReferenceManifest:I,serverActionsManifest:N}=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(y.experimental.adapterPath)return await j();throw new f.NoFallbackError}}let H=null;!q||O.isDev||S||(H="/index"===(H=T)?"/":H);let U=!0===O.isDev||!q,$=q&&!U;N&&I&&(0,o.setManifestsSingleton)({page:w,clientReferenceManifest:I,serverActionsManifest:N});let D=e.method||"GET",F=(0,a.getTracer)(),M=F.getActiveScopeSpan(),K={params:E,prerenderManifest:A,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,s)=>O.onRequestError(e,t,n,s,x)},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 r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${D} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${w}`)}),i=!!(0,s.getRequestMeta)(e,"minimalMode"),l=async s=>{var a,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 a=await o(s);e.fetchMetrics=K.renderOpts.fetchMetrics;let l=K.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let d=K.renderOpts.collectedTags;if(!q)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[v.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>=v.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,n=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=v.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:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await O.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:b})},!1,x),t}},u=await O.handleResponse({req:e,nextConfig:y,cacheKey:H,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:b,revalidateOnlyGenerated:P,responseGenerator:d,waitUntil:n.waitUntil,isMinimalMode:i});if(!q)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"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let f=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return i&&q||f.delete(v.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||f.get("Cache-Control")||f.set("Cache-Control",(0,R.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(B,L,new Response(u.value.body,{headers:f,status:u.value.status||200})),null};M?await l(M):await F.withPropagatedContext(e.headers,()=>F.trace(u.BaseServerSpan.handleRequest,{spanName:`${D} ${w}`,kind:a.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof f.NoFallbackError||await O.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)(B,L,new Response(null,{status:500})),null}}e.s(["handler",()=>H,"patchFetch",()=>j,"routeModule",()=>O,"serverHooks",()=>q,"workAsyncStorage",()=>N,"workUnitAsyncStorage",()=>k],12080)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=node_modules_next_dist_esm_build_templates_app-route_d0c0f338.js.map
|
package/.next/standalone/.next/server/chunks/src_lib_session-providers_claudeCode_ts_0f9590ed._.js
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[63127,t=>{"use strict";var e=t.i(22734),i=t.i(24868),n=t.i(46786),r=t.i(14747),s=t.i(17506),a=t.i(39948);let o=["command-message","local-command-caveat"],l=[/^\s*<ide_[a-z0-9_-]+(?=[\s>/]|$)/i,/^the\s+user\s+opened\s+(?:\.\.\/|\.\/|~\/|\/|[a-zA-Z]:[\\/])/i];function c(t){let e=(function(t){let e=t;for(let t of o){let i=RegExp(`<${t}(?=[\\s>/]|$)\\s*/?>?`,"ig"),n=RegExp(`</${t}(?=[\\s>]|$)\\s*>?`,"ig");e=e.replace(i," ").replace(n," ")}return e.trim()})(t).replace(/\s+/g," ").trim();return e.length<=72?e:`${e.slice(0,69)}...`}function u(t){var e,i;let n=c(t);return!n||(e=t,!(i=n)||l.some(t=>t.test(e)||t.test(i)))?null:n}function d(t){return(0,a.namespaceClaudeRawId)(t)}function f(t){var e;let i,n=d(t.sessionId),r="string"==typeof t.title?c(t.title):"",s=(e=t.topology,e?.childSessions==="authoritative"?e:a.READONLY_PROVIDER_CONTEXT.topology);return{id:n,slug:t.sessionId,title:r||((i=t.sessionId.trim())?i.slice(0,8):"Session"),directory:t.cwd,projectName:t.projectName,...t.gitBranch?{branch:t.gitBranch}:{},time:{created:t.createdAt,updated:t.updatedAt,..."number"==typeof t.archivedAt?{archived:t.archivedAt}:{}},rawSessionId:t.sessionId,providerRawId:t.sessionId,provider:"claude-code",readOnly:!0,capabilities:a.READONLY_PROVIDER_CONTEXT.capabilities,topology:s,realTimeStatus:t.waitingForUser?"idle":t.isRunning?"busy":"idle",waitingForUser:t.waitingForUser,children:[]}}function p(t){let e=0;return"number"==typeof t.runningPid&&(e+=2),"number"==typeof t.startedAt&&(e+=1),e}async function y(t){try{return await (0,i.access)(t,e.constants.F_OK),!0}catch{return!1}}async function g(t){try{return await (0,i.realpath)(t)}catch{return null}}async function m(t,e){let n;try{n=await (0,i.open)(t,"r");let r=Buffer.alloc(e),{bytesRead:s}=await n.read(r,0,e,0);return r.subarray(0,s).toString("utf8")}catch{return null}finally{await n?.close().catch(()=>void 0)}}async function h(t,e){try{let n=await (0,i.stat)(t);if(!n.isFile()||n.size>e)return null}catch{return null}let n=await m(t,e);if(!n)return null;try{return JSON.parse(n)}catch{return null}}async function w(t,e){let i=(0,r.join)(t,"sessions-index.json"),n=await h(i,e);if(!n?.originalPath||"string"!=typeof n.originalPath)return null;let s=await g(n.originalPath);return s||null}async function I(t,e){let i=await m(t,e);if(null===i)return null;let n={};for(let t of i.split("\n")){let e=t.trim();if(e){try{let t=JSON.parse(e);if("string"!=typeof t.cwd||n.cwd||(n.cwd=t.cwd),"string"!=typeof t.sessionId||n.sessionId||(n.sessionId=t.sessionId),"string"==typeof t.agentId&&!n.agentId){let e=t.agentId.trim();e&&(n.agentId=e)}if("boolean"==typeof t.isSidechain&&void 0===n.isSidechain&&(n.isSidechain=t.isSidechain),"string"!=typeof t.gitBranch||n.gitBranch||(n.gitBranch=t.gitBranch),!n.title){let e=function(t){let e=t.type,i=t.message,n=i&&"object"==typeof i?i.role:void 0;if("user"!==e&&"user"!==n)return null;let r=i&&"object"==typeof i?i.content:t.content;if("string"==typeof r)return u(r);if(Array.isArray(r))for(let t of r){if(!t||"object"!=typeof t||"string"==typeof t.type&&"text"!==t.type)continue;let e="string"==typeof t.text?t.text:"string"==typeof t.content?t.content:null;if(!e)continue;let i=u(e);if(i)return i}return null}(t);e&&(n.title=e)}if(!n.explicitParentSessionId){let e=function(t){let e=t.parentSessionId??t.parent_session_id??t.parentSessionID;return"string"!=typeof e?null:e.trim()||null}(t);e&&(n.explicitParentSessionId=e)}let i=function(t){if("number"==typeof t&&Number.isFinite(t))return t;if("string"==typeof t){let e=Date.parse(t);if(Number.isFinite(e))return e}}(t.timestamp);void 0!==i&&void 0===n.timestampMs&&(n.timestampMs=i)}catch{continue}if(n.cwd&&n.sessionId&&n.gitBranch&&void 0!==n.timestampMs&&n.title&&n.explicitParentSessionId)break}}return n}async function v(t){let e;try{e=await (0,i.readdir)(t,{withFileTypes:!0})}catch{return[]}let n=[];for(let s of e){let e,a=(0,r.join)(t,s.name);if(s.isFile()&&s.name.endsWith(".jsonl")){n.push(a);continue}if(!s.isDirectory())continue;let o=(0,r.join)(a,"subagents");try{e=await (0,i.readdir)(o,{withFileTypes:!0})}catch{continue}for(let t of e)t.isFile()&&t.name.endsWith(".jsonl")&&n.push((0,r.join)(o,t.name))}return n}async function b(t,e){let n;try{let r=await (0,i.stat)(t);if(!r.isFile())return null;n=await (0,i.open)(t,"r");let s=Math.min(e,r.size),a=Math.max(0,r.size-s),o=Buffer.alloc(s),{bytesRead:l}=await n.read(o,0,s,a);return o.subarray(0,l).toString("utf8")}catch{return null}finally{await n?.close().catch(()=>void 0)}}async function S(t,e){let i=Array.from(new Set([Math.max(1,e),Math.max(4*e,262144)])),n=null;for(let e of i){let i=await I(t,e);if(i&&(n=i).title)break}return n}async function A(t,e){if(Date.now()-e>6e5)return{waitingForUser:!1,trailingParseErrors:!1};let i=await b(t,65536);if(!i)return{waitingForUser:!1,trailingParseErrors:!1};let n=i.split("\n").map(t=>t.trim()).filter(Boolean),r=!1;for(let t=n.length-1;t>=0;t--)try{let e=JSON.parse(n[t]),i=e.type,o=e.message,l=o&&"object"==typeof o?o.role:void 0;if("user"===i||"user"===l)return{waitingForUser:!1,trailingParseErrors:r};if("assistant"===i&&o&&"object"==typeof o){var s,a;let t=o.stop_reason,e=(s=o.content,"string"==typeof s?s.trim()||null:Array.isArray(s)&&s.map(t=>t&&"object"==typeof t&&"string"==typeof t.text?t.text:null).filter(t=>!!t).join("\n").trim()||null);if("tool_use"===t||(a=o.content,Array.isArray(a)&&a.some(t=>t&&"object"==typeof t&&"tool_use"===t.type))||"end_turn"===t&&"string"==typeof e&&function(t){let e=t.trim();return e.endsWith("?")||e.endsWith("?")}(e))return{waitingForUser:!0,trailingParseErrors:r};break}}catch{r=!0;continue}return{waitingForUser:!1,trailingParseErrors:r}}async function F(t){try{return process.kill(t,0),!0}catch{return!1}}async function j(t,e,n){let s,a=(0,r.join)(t,"sessions");try{s=(await (0,i.readdir)(a,{withFileTypes:!0})).sort((t,e)=>t.name.localeCompare(e.name))}catch{return new Map}let o=new Map;for(let t of s){if(!t.isFile()||!t.name.endsWith(".json"))continue;let i=await h((0,r.join)(a,t.name),e);if(!i?.sessionId||"string"!=typeof i.sessionId||"string"!=typeof i.cwd)continue;let s=await g(i.cwd);if(!s)continue;let l={sessionId:i.sessionId,cwd:s,startedAt:"number"==typeof i.startedAt&&Number.isFinite(i.startedAt)?i.startedAt:void 0};if("number"==typeof i.pid&&Number.isInteger(i.pid)&&i.pid>0){let t=!1;try{t=await n(i.pid)}catch{t=!1}t&&void 0!==l.startedAt&&(l.runningPid=i.pid)}let c=o.get(i.sessionId);if(!c){o.set(i.sessionId,l);continue}o.set(i.sessionId,function(t,e){let i=p(t),n=p(e);if(n>i)return e;if(n<i)return t;let r=t.startedAt??-1/0;return(e.startedAt??-1/0)>r?e:t}(c,l))}return o}async function M(t={}){let e,a=function({claudeDir:t,homeDir:e}){return t||(0,r.join)(e??(0,n.homedir)(),".claude")}(t),o=(0,r.join)(a,"projects");if(!await y(o))return[];let l=t.smallFileLimitBytes??131072,c=t.jsonlHeadLimitBytes??65536,u=await j(a,l,t.isPidAlive??F);try{e=await (0,i.readdir)(o,{withFileTypes:!0})}catch{return[]}let d=new Map,f=new Map,p=new Map((await (0,s.listClaudeSessionOverrides)()).map(t=>[t.sessionId,t])),m=Date.now();for(let t of e){if(!t.isDirectory())continue;let e=(0,r.join)(o,t.name),n=await w(e,l);for(let t of(await v(e))){let e,s=(0,r.basename)(t).slice(0,-6);if(!s)continue;let a=u.get(s);try{if(!(e=await (0,i.stat)(t)).isFile())continue}catch{continue}let o=await S(t,c);if(null===o)continue;let l=n;if("string"==typeof o.cwd){let t=await g(o.cwd);if(!t||n&&t!==n)continue;l=t}if(!l)continue;let y=function(t,e){if(!(t.startsWith("agent-")&&t.length>6))return null;let i=t.slice(6),n="string"==typeof e.agentId?e.agentId.trim():"";if(n&&n!==i||!0!==e.isSidechain&&!n)return null;let r="string"==typeof e.sessionId?e.sessionId.trim():"";return r&&r!==t?r:null}(s,o),h="string"==typeof y,w=o.sessionId??s;if(!h&&w!==s)continue;let I=o.title,v=y?`${y}__${s}`:s,b=p.get(v),F=y?p.get(y):void 0,j="number"==typeof b?.deletedAt?b:F;if("number"==typeof j?.deletedAt)continue;let M=a?.cwd===l?a:void 0,P=Math.max(e.mtimeMs,o.timestampMs??0),x=m-P<=1e4,_="number"==typeof b?.restoredAt&&b.restoredAt>=P?{waitingForUser:!1,trailingParseErrors:!1}:await A(t,P),B="number"==typeof M?.runningPid||h,N=_.waitingForUser&&_.trailingParseErrors&&x&&B,O=!!B&&!N&&_.waitingForUser,R=!O&&x&&B,U=M?.runningPid!==void 0?M.startedAt??o.timestampMs??e.birthtimeMs??e.mtimeMs:o.timestampMs??e.birthtimeMs??e.mtimeMs;d.set(v,{sessionId:v,...I?{title:I}:{},cwd:l,projectPath:l,projectName:(0,r.basename)(l),artifactPath:t,gitBranch:o.gitBranch??null,createdAt:U,updatedAt:P,startedAt:M?.runningPid!==void 0?M.startedAt:void 0,pid:M?.runningPid,isRunning:R,waitingForUser:O,..."number"==typeof b?.archivedAt?{archivedAt:b.archivedAt}:{}}),o.explicitParentSessionId?f.set(v,o.explicitParentSessionId):y&&f.set(v,y)}}if(0===d.size)return[];for(let[t,e]of f){let i=d.get(t),n=d.get(e);i&&n&&t!==e&&(d.set(t,{...i,parentSessionId:e,topology:{childSessions:"authoritative"}}),d.set(e,{...n,topology:{childSessions:"authoritative"}}))}return Array.from(d.values()).sort((t,e)=>e.updatedAt-t.updatedAt)}t.s(["claudeCodeLocalSessionProvider",0,{id:"claude-code",async getSessionsResult(){try{let t=function(t){let e=t.map(f),i=new Map(e.map(t=>[t.id,t])),n=new Map,r=new Map,s=new Set,a=t=>{let e=new Set([t]),i=n.get(t);for(;i&&!e.has(i);){e.add(i);let t=n.get(i);if(!t)return i;i=t}};for(let e of t){if(e.topology?.childSessions!=="authoritative"||!e.parentSessionId)continue;let t=d(e.sessionId),r=d(e.parentSessionId),s=i.get(t),a=i.get(r);s&&a&&t!==r&&"authoritative"===a.topology.childSessions&&n.set(t,r)}for(let[t]of n){let e=i.get(t);if(!e)continue;let n=a(t);if(!n||n===t)continue;let o=i.get(n);if(!o||"authoritative"!==o.topology.childSessions)continue;let l=r.get(n)??[];l.push({id:e.id,slug:e.slug,title:e.title,directory:e.directory,parentID:n,time:e.time,realTimeStatus:e.realTimeStatus,waitingForUser:e.waitingForUser,readOnly:e.readOnly,capabilities:e.capabilities,rawSessionId:e.rawSessionId,provider:e.provider,providerRawId:e.providerRawId,topology:e.topology}),r.set(n,l),s.add(t)}return e.filter(t=>!s.has(t.id)).map(t=>({...t,children:r.get(t.id)??[]}))}(await M({repoPath:process.cwd()}));return{payload:{sessions:t,processHints:[]},sourceMeta:{online:t.length>0}}}catch{return{payload:{sessions:[],processHints:[]},sourceMeta:{online:!1,degraded:!0,reason:"Claude Code discovery failed"}}}}}])}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=src_lib_session-providers_claudeCode_ts_0f9590ed._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[32319,(a,b,c)=>{b.exports=a.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,(a,b,c)=>{b.exports=a.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,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},70406,(a,b,c)=>{b.exports=a.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},14747,(a,b,c)=>{b.exports=a.x("path",()=>require("path"))},
|
|
1
|
+
module.exports=[32319,(a,b,c)=>{b.exports=a.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,(a,b,c)=>{b.exports=a.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,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},70406,(a,b,c)=>{b.exports=a.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},14747,(a,b,c)=>{b.exports=a.x("path",()=>require("path"))},4276,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(11857);a.n(d("[project]/node_modules/next/dist/client/components/builtin/global-error.js <module evaluation>"))},82509,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(11857);a.n(d("[project]/node_modules/next/dist/client/components/builtin/global-error.js"))},66114,a=>{"use strict";a.i(4276);var b=a.i(82509);a.n(b)},24725,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},20635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},43285,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/dynamic-access-async-storage.external.js",()=>require("next/dist/server/app-render/dynamic-access-async-storage.external.js"))},11857,(a,b,c)=>{"use strict";b.exports=a.r(24951).vendored["react-rsc"].ReactServerDOMTurbopackServer},24361,(a,b,c)=>{b.exports=a.x("util",()=>require("util"))},24951,(a,b,c)=>{"use strict";b.exports=a.r(18622)},7997,(a,b,c)=>{"use strict";b.exports=a.r(24951).vendored["react-rsc"].ReactJsxRuntime},717,(a,b,c)=>{"use strict";b.exports=a.r(24951).vendored["react-rsc"].React}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__c91a8380._.js.map
|