@jiggai/kitchen 0.3.28 → 0.3.30
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 +11 -0
- package/.next/build-manifest.json +5 -5
- package/.next/prerender-manifest.json +3 -3
- package/.next/routes-manifest.json +76 -0
- package/.next/server/app/_global-error/page/build-manifest.json +3 -3
- package/.next/server/app/_global-error/page.js +2 -2
- package/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/server/app/_global-error.html +2 -2
- package/.next/server/app/_global-error.rsc +8 -8
- package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/_global-error.segments/_full.segment.rsc +8 -8
- package/.next/server/app/_global-error.segments/_head.segment.rsc +4 -4
- package/.next/server/app/_global-error.segments/_index.segment.rsc +3 -3
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/.next/server/app/_not-found/page/build-manifest.json +3 -3
- package/.next/server/app/_not-found/page.js +2 -2
- 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 +11 -11
- package/.next/server/app/_not-found.segments/_full.segment.rsc +11 -11
- package/.next/server/app/_not-found.segments/_head.segment.rsc +4 -4
- package/.next/server/app/_not-found.segments/_index.segment.rsc +5 -5
- package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
- package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/agents/[agentId]/page/build-manifest.json +3 -3
- package/.next/server/app/agents/[agentId]/page.js +2 -2
- package/.next/server/app/agents/[agentId]/page.js.nft.json +1 -1
- package/.next/server/app/agents/[agentId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/api/agents/[id]/route.js +1 -1
- package/.next/server/app/api/agents/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/add/route.js +1 -1
- package/.next/server/app/api/agents/add/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/file/route.js +1 -1
- package/.next/server/app/api/agents/file/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/files/route.js +1 -1
- package/.next/server/app/api/agents/files/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/skills/install/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/skills/route.js +1 -1
- package/.next/server/app/api/agents/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/agents/update/route.js +1 -1
- package/.next/server/app/api/agents/update/route.js.nft.json +1 -1
- package/.next/server/app/api/channels/bindings/route.js +1 -1
- package/.next/server/app/api/channels/bindings/route.js.nft.json +1 -1
- package/.next/server/app/api/cron/add/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/cron/add/route/build-manifest.json +11 -0
- package/.next/server/app/api/cron/add/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/cron/add/route.js +6 -0
- package/.next/server/app/api/cron/add/route.js.map +5 -0
- package/.next/server/app/api/cron/add/route.js.nft.json +1 -0
- package/.next/server/app/api/cron/add/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/cron/delete/route.js +1 -1
- package/.next/server/app/api/cron/delete/route.js.nft.json +1 -1
- package/.next/server/app/api/cron/edit/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/cron/edit/route/build-manifest.json +11 -0
- package/.next/server/app/api/cron/edit/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/cron/edit/route.js +6 -0
- package/.next/server/app/api/cron/edit/route.js.map +5 -0
- package/.next/server/app/api/cron/edit/route.js.nft.json +1 -0
- package/.next/server/app/api/cron/edit/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/cron/jobs/route.js.nft.json +1 -1
- package/.next/server/app/api/cron/recipe-installed/route.js +1 -1
- package/.next/server/app/api/cron/recipe-installed/route.js.nft.json +1 -1
- package/.next/server/app/api/cron/worker/route.js +1 -1
- package/.next/server/app/api/cron/worker/route.js.nft.json +1 -1
- package/.next/server/app/api/goals/[id]/promote/route.js +1 -1
- package/.next/server/app/api/goals/[id]/promote/route.js.nft.json +1 -1
- package/.next/server/app/api/goals/[id]/route.js +1 -1
- package/.next/server/app/api/goals/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/goals/route.js +1 -1
- package/.next/server/app/api/goals/route.js.nft.json +1 -1
- package/.next/server/app/api/ids/check/route.js +1 -1
- package/.next/server/app/api/ids/check/route.js.nft.json +1 -1
- package/.next/server/app/api/marketplace/recipes/[slug]/route.js +1 -1
- package/.next/server/app/api/marketplace/recipes/[slug]/route.js.nft.json +1 -1
- package/.next/server/app/api/marketplace/recipes/route.js +1 -1
- package/.next/server/app/api/marketplace/recipes/route.js.nft.json +1 -1
- package/.next/server/app/api/plugins/[pluginId]/[...path]/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/plugins/[pluginId]/[...path]/route/build-manifest.json +11 -0
- package/.next/server/app/api/plugins/[pluginId]/[...path]/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/plugins/[pluginId]/[...path]/route.js +7 -0
- package/.next/server/app/api/plugins/[pluginId]/[...path]/route.js.map +5 -0
- package/.next/server/app/api/plugins/[pluginId]/[...path]/route.js.nft.json +1 -0
- package/.next/server/app/api/plugins/[pluginId]/[...path]/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/plugins/[pluginId]/tabs/[tabId]/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/plugins/[pluginId]/tabs/[tabId]/route/build-manifest.json +11 -0
- package/.next/server/app/api/plugins/[pluginId]/tabs/[tabId]/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/plugins/[pluginId]/tabs/[tabId]/route.js +7 -0
- package/.next/server/app/api/plugins/[pluginId]/tabs/[tabId]/route.js.map +5 -0
- package/.next/server/app/api/plugins/[pluginId]/tabs/[tabId]/route.js.nft.json +1 -0
- package/.next/server/app/api/plugins/[pluginId]/tabs/[tabId]/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/plugins/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/plugins/route/build-manifest.json +11 -0
- package/.next/server/app/api/plugins/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/plugins/route.js +7 -0
- package/.next/server/app/api/plugins/route.js.map +5 -0
- package/.next/server/app/api/plugins/route.js.nft.json +1 -0
- package/.next/server/app/api/plugins/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/plugins/test/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/plugins/test/route/build-manifest.json +11 -0
- package/.next/server/app/api/plugins/test/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/plugins/test/route.js +7 -0
- package/.next/server/app/api/plugins/test/route.js.map +5 -0
- package/.next/server/app/api/plugins/test/route.js.nft.json +1 -0
- package/.next/server/app/api/plugins/test/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/recipes/[id]/route.js +1 -1
- package/.next/server/app/api/recipes/[id]/route.js.nft.json +1 -1
- package/.next/server/app/api/recipes/clone/route.js +1 -1
- package/.next/server/app/api/recipes/clone/route.js.nft.json +1 -1
- package/.next/server/app/api/recipes/custom-team/route.js +1 -1
- package/.next/server/app/api/recipes/custom-team/route.js.nft.json +1 -1
- package/.next/server/app/api/recipes/delete/route.js.nft.json +1 -1
- package/.next/server/app/api/recipes/local-agent-catalog/route.js +1 -1
- package/.next/server/app/api/recipes/local-agent-catalog/route.js.nft.json +1 -1
- package/.next/server/app/api/recipes/team-agents/route.js +1 -1
- package/.next/server/app/api/recipes/team-agents/route.js.nft.json +1 -1
- package/.next/server/app/api/scaffold/route.js +1 -1
- package/.next/server/app/api/scaffold/route.js.nft.json +1 -1
- package/.next/server/app/api/settings/cron-installation/route.js +1 -1
- package/.next/server/app/api/settings/cron-installation/route.js.nft.json +1 -1
- package/.next/server/app/api/settings/model-options/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/settings/model-options/route/build-manifest.json +11 -0
- package/.next/server/app/api/settings/model-options/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/settings/model-options/route.js +6 -0
- package/.next/server/app/api/settings/model-options/route.js.map +5 -0
- package/.next/server/app/api/settings/model-options/route.js.nft.json +1 -0
- package/.next/server/app/api/settings/model-options/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/skills/available/route.js +1 -1
- package/.next/server/app/api/skills/available/route.js.nft.json +1 -1
- package/.next/server/app/api/swarms/start/route.js +3 -3
- package/.next/server/app/api/swarms/start/route.js.nft.json +1 -1
- package/.next/server/app/api/swarms/status/route.js +1 -1
- package/.next/server/app/api/swarms/status/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/[teamId]/media-providers/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/teams/[teamId]/media-providers/route/build-manifest.json +11 -0
- package/.next/server/app/api/teams/[teamId]/media-providers/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/teams/[teamId]/media-providers/route.js +6 -0
- package/.next/server/app/api/teams/[teamId]/media-providers/route.js.map +5 -0
- package/.next/server/app/api/teams/[teamId]/media-providers/route.js.nft.json +1 -0
- package/.next/server/app/api/teams/[teamId]/media-providers/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/teams/[teamId]/tickets/assign/route.js +1 -1
- package/.next/server/app/api/teams/[teamId]/tickets/assign/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/[teamId]/tickets/assignees/route.js +3 -3
- package/.next/server/app/api/teams/[teamId]/tickets/assignees/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/[teamId]/tickets/comment/route.js +1 -1
- package/.next/server/app/api/teams/[teamId]/tickets/comment/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/[teamId]/tickets/delete/route.js +1 -1
- package/.next/server/app/api/teams/[teamId]/tickets/delete/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/[teamId]/tickets/move/route.js +1 -1
- package/.next/server/app/api/teams/[teamId]/tickets/move/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/[teamId]/tickets/move-to-goals/route.js +1 -1
- package/.next/server/app/api/teams/[teamId]/tickets/move-to-goals/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/file/route.js +1 -1
- package/.next/server/app/api/teams/file/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/files/route.js +1 -1
- package/.next/server/app/api/teams/files/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/memory/route.js +2 -1
- package/.next/server/app/api/teams/memory/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/meta/route.js +1 -1
- package/.next/server/app/api/teams/meta/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/orchestrator/install/route.js +1 -1
- package/.next/server/app/api/teams/orchestrator/install/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/orchestrator/route.js +1 -1
- package/.next/server/app/api/teams/orchestrator/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/remove-team/route.js +1 -1
- package/.next/server/app/api/teams/remove-team/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/skills/install/route.js +1 -1
- package/.next/server/app/api/teams/skills/install/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/skills/route.js +1 -1
- package/.next/server/app/api/teams/skills/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/workflow-deliverables/file/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/teams/workflow-deliverables/file/route/build-manifest.json +11 -0
- package/.next/server/app/api/teams/workflow-deliverables/file/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/teams/workflow-deliverables/file/route.js +6 -0
- package/.next/server/app/api/teams/workflow-deliverables/file/route.js.map +5 -0
- package/.next/server/app/api/teams/workflow-deliverables/file/route.js.nft.json +1 -0
- package/.next/server/app/api/teams/workflow-deliverables/file/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/teams/workflow-deliverables/route/app-paths-manifest.json +3 -0
- package/.next/server/app/api/teams/workflow-deliverables/route/build-manifest.json +11 -0
- package/.next/server/app/api/teams/workflow-deliverables/route/server-reference-manifest.json +4 -0
- package/.next/server/app/api/teams/workflow-deliverables/route.js +6 -0
- package/.next/server/app/api/teams/workflow-deliverables/route.js.map +5 -0
- package/.next/server/app/api/teams/workflow-deliverables/route.js.nft.json +1 -0
- package/.next/server/app/api/teams/workflow-deliverables/route_client-reference-manifest.js +2 -0
- package/.next/server/app/api/teams/workflow-runs/route.js +1 -1
- package/.next/server/app/api/teams/workflow-runs/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/workflow-templates/route.js +1 -1
- package/.next/server/app/api/teams/workflow-templates/route.js.nft.json +1 -1
- package/.next/server/app/api/teams/workflows/route.js +1 -1
- package/.next/server/app/api/teams/workflows/route.js.nft.json +1 -1
- package/.next/server/app/api/tickets/assign/route.js +1 -1
- package/.next/server/app/api/tickets/assign/route.js.nft.json +1 -1
- package/.next/server/app/api/tickets/assignees/route.js +1 -1
- package/.next/server/app/api/tickets/assignees/route.js.nft.json +1 -1
- package/.next/server/app/api/tickets/move/route.js +1 -1
- package/.next/server/app/api/tickets/move/route.js.nft.json +1 -1
- package/.next/server/app/channels/page/build-manifest.json +3 -3
- package/.next/server/app/channels/page.js +2 -2
- package/.next/server/app/channels/page.js.nft.json +1 -1
- package/.next/server/app/channels/page_client-reference-manifest.js +1 -1
- package/.next/server/app/channels.html +2 -2
- package/.next/server/app/channels.rsc +12 -12
- package/.next/server/app/channels.segments/_full.segment.rsc +12 -12
- package/.next/server/app/channels.segments/_head.segment.rsc +4 -4
- package/.next/server/app/channels.segments/_index.segment.rsc +5 -5
- package/.next/server/app/channels.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/channels.segments/channels/__PAGE__.segment.rsc +3 -3
- package/.next/server/app/channels.segments/channels.segment.rsc +3 -3
- package/.next/server/app/cron-jobs/page/build-manifest.json +3 -3
- package/.next/server/app/cron-jobs/page.js +2 -2
- package/.next/server/app/cron-jobs/page.js.nft.json +1 -1
- package/.next/server/app/cron-jobs/page_client-reference-manifest.js +1 -1
- package/.next/server/app/goals/[id]/page/build-manifest.json +3 -3
- package/.next/server/app/goals/[id]/page.js +2 -2
- package/.next/server/app/goals/[id]/page.js.nft.json +1 -1
- package/.next/server/app/goals/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/goals/new/page/build-manifest.json +3 -3
- package/.next/server/app/goals/new/page.js +2 -2
- package/.next/server/app/goals/new/page.js.nft.json +1 -1
- package/.next/server/app/goals/new/page_client-reference-manifest.js +1 -1
- package/.next/server/app/goals/new.html +2 -2
- package/.next/server/app/goals/new.rsc +13 -13
- package/.next/server/app/goals/new.segments/_full.segment.rsc +13 -13
- package/.next/server/app/goals/new.segments/_head.segment.rsc +4 -4
- package/.next/server/app/goals/new.segments/_index.segment.rsc +5 -5
- package/.next/server/app/goals/new.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/goals/new.segments/goals/new/__PAGE__.segment.rsc +4 -4
- package/.next/server/app/goals/new.segments/goals/new.segment.rsc +3 -3
- package/.next/server/app/goals/new.segments/goals.segment.rsc +3 -3
- package/.next/server/app/goals/page/build-manifest.json +3 -3
- package/.next/server/app/goals/page.js +2 -2
- package/.next/server/app/goals/page.js.nft.json +1 -1
- package/.next/server/app/goals/page_client-reference-manifest.js +1 -1
- package/.next/server/app/goals.html +1 -1
- package/.next/server/app/goals.rsc +12 -12
- package/.next/server/app/goals.segments/_full.segment.rsc +12 -12
- package/.next/server/app/goals.segments/_head.segment.rsc +4 -4
- package/.next/server/app/goals.segments/_index.segment.rsc +5 -5
- package/.next/server/app/goals.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/goals.segments/goals/__PAGE__.segment.rsc +3 -3
- package/.next/server/app/goals.segments/goals.segment.rsc +3 -3
- package/.next/server/app/page/build-manifest.json +3 -3
- package/.next/server/app/page.js +4 -4
- package/.next/server/app/page.js.nft.json +1 -1
- package/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/server/app/recipes/[id]/page/build-manifest.json +3 -3
- package/.next/server/app/recipes/[id]/page.js +4 -4
- package/.next/server/app/recipes/[id]/page.js.nft.json +1 -1
- package/.next/server/app/recipes/[id]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/recipes/page/build-manifest.json +3 -3
- package/.next/server/app/recipes/page.js +2 -2
- package/.next/server/app/recipes/page.js.nft.json +1 -1
- package/.next/server/app/recipes/page_client-reference-manifest.js +1 -1
- package/.next/server/app/runs/page/build-manifest.json +3 -3
- package/.next/server/app/runs/page.js +6 -5
- package/.next/server/app/runs/page.js.nft.json +1 -1
- package/.next/server/app/runs/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings/page/build-manifest.json +3 -3
- package/.next/server/app/settings/page.js +2 -2
- package/.next/server/app/settings/page.js.nft.json +1 -1
- package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/server/app/settings.html +1 -1
- package/.next/server/app/settings.rsc +12 -12
- package/.next/server/app/settings.segments/_full.segment.rsc +12 -12
- package/.next/server/app/settings.segments/_head.segment.rsc +4 -4
- package/.next/server/app/settings.segments/_index.segment.rsc +5 -5
- package/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +3 -3
- package/.next/server/app/settings.segments/settings.segment.rsc +3 -3
- package/.next/server/app/teams/[teamId]/deliverables/page/app-paths-manifest.json +3 -0
- package/.next/server/app/teams/[teamId]/deliverables/page/build-manifest.json +17 -0
- package/.next/server/app/teams/[teamId]/deliverables/page/next-font-manifest.json +11 -0
- package/.next/server/app/teams/[teamId]/deliverables/page/react-loadable-manifest.json +1 -0
- package/.next/server/app/teams/[teamId]/deliverables/page/server-reference-manifest.json +4 -0
- package/.next/server/app/teams/[teamId]/deliverables/page.js +21 -0
- package/.next/server/app/teams/[teamId]/deliverables/page.js.map +5 -0
- package/.next/server/app/teams/[teamId]/deliverables/page.js.nft.json +1 -0
- package/.next/server/app/teams/[teamId]/deliverables/page_client-reference-manifest.js +2 -0
- package/.next/server/app/teams/[teamId]/page/build-manifest.json +3 -3
- package/.next/server/app/teams/[teamId]/page.js +4 -4
- package/.next/server/app/teams/[teamId]/page.js.nft.json +1 -1
- package/.next/server/app/teams/[teamId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/teams/[teamId]/runs/[workflowId]/[runId]/page/build-manifest.json +3 -3
- package/.next/server/app/teams/[teamId]/runs/[workflowId]/[runId]/page.js +6 -5
- package/.next/server/app/teams/[teamId]/runs/[workflowId]/[runId]/page.js.nft.json +1 -1
- package/.next/server/app/teams/[teamId]/runs/[workflowId]/[runId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/teams/[teamId]/runs/page/build-manifest.json +3 -3
- package/.next/server/app/teams/[teamId]/runs/page.js +2 -2
- package/.next/server/app/teams/[teamId]/runs/page.js.nft.json +1 -1
- package/.next/server/app/teams/[teamId]/runs/page_client-reference-manifest.js +1 -1
- package/.next/server/app/teams/[teamId]/tickets/[ticket]/page/build-manifest.json +3 -3
- package/.next/server/app/teams/[teamId]/tickets/[ticket]/page.js +3 -3
- package/.next/server/app/teams/[teamId]/tickets/[ticket]/page.js.nft.json +1 -1
- package/.next/server/app/teams/[teamId]/tickets/[ticket]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/teams/[teamId]/tickets/page/build-manifest.json +3 -3
- package/.next/server/app/teams/[teamId]/tickets/page.js +3 -3
- package/.next/server/app/teams/[teamId]/tickets/page.js.nft.json +1 -1
- package/.next/server/app/teams/[teamId]/tickets/page_client-reference-manifest.js +1 -1
- package/.next/server/app/teams/[teamId]/workflows/[workflowId]/page/build-manifest.json +3 -3
- package/.next/server/app/teams/[teamId]/workflows/[workflowId]/page.js +2 -2
- package/.next/server/app/teams/[teamId]/workflows/[workflowId]/page.js.nft.json +1 -1
- package/.next/server/app/teams/[teamId]/workflows/[workflowId]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/teams/[teamId]/workflows/page/build-manifest.json +3 -3
- package/.next/server/app/teams/[teamId]/workflows/page.js +4 -4
- package/.next/server/app/teams/[teamId]/workflows/page.js.nft.json +1 -1
- package/.next/server/app/teams/[teamId]/workflows/page_client-reference-manifest.js +1 -1
- package/.next/server/app/tickets/[ticket]/page/build-manifest.json +3 -3
- package/.next/server/app/tickets/[ticket]/page.js +3 -3
- package/.next/server/app/tickets/[ticket]/page.js.nft.json +1 -1
- package/.next/server/app/tickets/[ticket]/page_client-reference-manifest.js +1 -1
- package/.next/server/app/tickets/page/build-manifest.json +3 -3
- package/.next/server/app/tickets/page.js +3 -3
- package/.next/server/app/tickets/page.js.nft.json +1 -1
- package/.next/server/app/tickets/page_client-reference-manifest.js +1 -1
- package/.next/server/app-paths-manifest.json +11 -0
- package/.next/server/chunks/[root-of-the-server]__00a30f40._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__00a30f40._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__04f289da._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__04f289da._.js.map +1 -1
- package/.next/server/chunks/{[root-of-the-server]__26c618a3._.js → [root-of-the-server]__0883634a._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__08b4c8f2._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__08b4c8f2._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__0bea0f71._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__0bea0f71._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__fef7183d._.js → [root-of-the-server]__0f55461f._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__1311d7a3._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__1311d7a3._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__1480ffda._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1480ffda._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__17124952._.js +4 -0
- package/.next/server/chunks/[root-of-the-server]__17124952._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__18423bab._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__18423bab._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__1873f417._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__1873f417._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__05f5e243._.js → [root-of-the-server]__1f1e62ac._.js} +2 -2
- package/.next/server/chunks/{[root-of-the-server]__864a08dd._.js → [root-of-the-server]__20b1f42d._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__21ad9eeb._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__21ad9eeb._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__2c207e60._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__2c207e60._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__69be1758._.js → [root-of-the-server]__2dd1afff._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__3021a250._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__3021a250._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__30cd38e9._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__30cd38e9._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__343776df._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__343776df._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__35ec765d._.js +13 -0
- package/.next/server/chunks/[root-of-the-server]__35ec765d._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__392e585d._.js +2 -2
- package/.next/server/chunks/[root-of-the-server]__3b2d0020._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__3b2d0020._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__3bfad714._.js +6 -0
- package/.next/server/chunks/[root-of-the-server]__3bfad714._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__3c92e5aa._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__3c92e5aa._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__3d15e850._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__3d15e850._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__3f648b9b._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__3f648b9b._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__482575d2._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__482575d2._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__4898071c._.js +4 -4
- package/.next/server/chunks/{[root-of-the-server]__bbdb6dcb._.js → [root-of-the-server]__4ee12514._.js} +3 -3
- package/.next/server/chunks/[root-of-the-server]__4ee12514._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__55defc7c._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__55defc7c._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__698cf062._.js → [root-of-the-server]__5aa1dc93._.js} +2 -2
- package/.next/server/chunks/{[root-of-the-server]__b002764e._.js → [root-of-the-server]__5c5990a6._.js} +2 -2
- package/.next/server/chunks/{[root-of-the-server]__7a331e51._.js → [root-of-the-server]__603cb0fa._.js} +3 -3
- package/.next/server/chunks/[root-of-the-server]__6131b7e2._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__6131b7e2._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__d924e5ac._.js → [root-of-the-server]__636919a0._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__663e79ff._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__663e79ff._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__69c065ce._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__69c065ce._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__c63a9f28._.js → [root-of-the-server]__74b80ca4._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__74e2a9ba._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__74e2a9ba._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__7bdf9f6e._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__7bdf9f6e._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__7e12b9f4._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__7e12b9f4._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__813dd669._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__813dd669._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__5ceff0f3._.js → [root-of-the-server]__87875179._.js} +3 -3
- package/.next/server/chunks/[root-of-the-server]__87875179._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__5ea38a67._.js → [root-of-the-server]__8f8e110f._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__91d0cce1._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__91d0cce1._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__e40409a2._.js → [root-of-the-server]__9853b72d._.js} +2 -2
- package/.next/server/chunks/{[root-of-the-server]__95ddb81a._.js → [root-of-the-server]__9dba20b3._.js} +2 -2
- package/.next/server/chunks/{[root-of-the-server]__ff69832c._.js → [root-of-the-server]__9e96d37b._.js} +2 -2
- package/.next/server/chunks/{[root-of-the-server]__8e27e9f7._.js → [root-of-the-server]__aba68368._.js} +3 -3
- package/.next/server/chunks/[root-of-the-server]__aed4e4f2._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__aed4e4f2._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__b457b884._.js +22 -0
- package/.next/server/chunks/[root-of-the-server]__b457b884._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__b6cff26d._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__b6cff26d._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__bf608f29._.js → [root-of-the-server]__be5f57b2._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__c15c5141._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__c15c5141._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__c1b0d50e._.js +4 -0
- package/.next/server/chunks/[root-of-the-server]__c1b0d50e._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__c50e4bc4._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__c50e4bc4._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__c5e88cbb._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__c5e88cbb._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__cc0860cb._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__cc0860cb._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__8ea22d0a._.js → [root-of-the-server]__d302afb4._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__d4a8660e._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__d4a8660e._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__da7df58d._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__da7df58d._.js.map +1 -0
- package/.next/server/chunks/[root-of-the-server]__e478ef0d._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__e478ef0d._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__e9acbabd._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__e9acbabd._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__47eb3111._.js → [root-of-the-server]__e9d9d570._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__f408c708._.js +2 -2
- package/.next/server/chunks/{[root-of-the-server]__59a6cf09._.js → [root-of-the-server]__f45ceefb._.js} +2 -2
- package/.next/server/chunks/[root-of-the-server]__f4cbadf7._.js +1 -1
- package/.next/server/chunks/[root-of-the-server]__f4cbadf7._.js.map +1 -1
- package/.next/server/chunks/[root-of-the-server]__f5cd81f1._.js +3 -0
- package/.next/server/chunks/[root-of-the-server]__f5cd81f1._.js.map +1 -0
- package/.next/server/chunks/{[root-of-the-server]__3cfdf0b3._.js → [root-of-the-server]__f994dc62._.js} +3 -3
- package/.next/server/chunks/[root-of-the-server]__f994dc62._.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_cron_add_route_actions_f9053a93.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_cron_add_route_actions_f9053a93.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_cron_edit_route_actions_3b551424.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_cron_edit_route_actions_3b551424.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_plugins_route_actions_0aabd6b3.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_plugins_route_actions_0aabd6b3.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_plugins_test_route_actions_8babbe5c.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_plugins_test_route_actions_8babbe5c.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_settings_model-options_route_actions_bccf115a.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_settings_model-options_route_actions_bccf115a.js.map +1 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_workflow-deliverables_route_actions_9de4298b.js +3 -0
- package/.next/server/chunks/_next-internal_server_app_api_teams_workflow-deliverables_route_actions_9de4298b.js.map +1 -0
- package/.next/server/chunks/ce889_server_app_api_plugins_[pluginId]_[___path]_route_actions_471be8ce.js +3 -0
- package/.next/server/chunks/ce889_server_app_api_plugins_[pluginId]_[___path]_route_actions_471be8ce.js.map +1 -0
- package/.next/server/chunks/ce889_server_app_api_plugins_[pluginId]_tabs_[tabId]_route_actions_9420efec.js +3 -0
- package/.next/server/chunks/ce889_server_app_api_plugins_[pluginId]_tabs_[tabId]_route_actions_9420efec.js.map +1 -0
- package/.next/server/chunks/ce889_server_app_api_teams_[teamId]_media-providers_route_actions_1ea823f1.js +3 -0
- package/.next/server/chunks/ce889_server_app_api_teams_[teamId]_media-providers_route_actions_1ea823f1.js.map +1 -0
- package/.next/server/chunks/ce889_server_app_api_teams_workflow-deliverables_file_route_actions_332fd6ea.js +3 -0
- package/.next/server/chunks/ce889_server_app_api_teams_workflow-deliverables_file_route_actions_332fd6ea.js.map +1 -0
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_1fe98a49.js +1 -1
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_1fe98a49.js.map +1 -1
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_3a1b29e4.js +3 -0
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_3a1b29e4.js.map +1 -0
- package/.next/server/chunks/node_modules_next_dist_esm_build_templates_app-route_f5680d9e.js +1 -1
- package/.next/server/chunks/node_modules_yaml_dist_49c13b35._.js +4 -4
- package/.next/server/chunks/node_modules_yaml_dist_49c13b35._.js.map +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__0a5cb3ca._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__0a5cb3ca._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__177cec74._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__177cec74._.js.map +1 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__195421b7._.js +12 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__195421b7._.js.map +1 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__17b046ea._.js → [root-of-the-server]__388bae11._.js} +2 -2
- package/.next/server/chunks/ssr/[root-of-the-server]__3b880807._.js +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__3b880807._.js.map +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__51e26a01._.js +3 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__4c66998a._.js.map → [root-of-the-server]__51e26a01._.js.map} +1 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__6b6b7595._.js +3 -0
- package/.next/server/chunks/ssr/[root-of-the-server]__6b6b7595._.js.map +1 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__2db9d262._.js → [root-of-the-server]__8f9585b9._.js} +2 -2
- package/.next/server/chunks/ssr/{[root-of-the-server]__2db9d262._.js.map → [root-of-the-server]__8f9585b9._.js.map} +1 -1
- package/.next/server/chunks/ssr/{[root-of-the-server]__9a7d79aa._.js → [root-of-the-server]__997aa62c._.js} +2 -2
- package/.next/server/chunks/ssr/{[root-of-the-server]__0df430db._.js → [root-of-the-server]__9e400864._.js} +2 -2
- package/.next/server/chunks/ssr/{[root-of-the-server]__8a588fad._.js → [root-of-the-server]__a6348eaa._.js} +2 -2
- package/.next/server/chunks/ssr/{[root-of-the-server]__49281b4c._.js → [root-of-the-server]__af792402._.js} +2 -2
- package/.next/server/chunks/ssr/{[root-of-the-server]__68c20e8e._.js → [root-of-the-server]__b5aa14b8._.js} +2 -2
- package/.next/server/chunks/ssr/{[root-of-the-server]__68c20e8e._.js.map → [root-of-the-server]__b5aa14b8._.js.map} +1 -1
- package/.next/server/chunks/ssr/{[root-of-the-server]__8756d76d._.js → [root-of-the-server]__b8998a21._.js} +2 -2
- package/.next/server/chunks/ssr/{[root-of-the-server]__c777e326._.js → [root-of-the-server]__df23886e._.js} +2 -2
- package/.next/server/chunks/ssr/{[root-of-the-server]__02e6ccaa._.js → [root-of-the-server]__e9bd9b71._.js} +2 -2
- package/.next/server/chunks/ssr/_018dfe6b._.js +2 -2
- package/.next/server/chunks/ssr/_2d8d7232._.js +3 -0
- package/.next/server/chunks/ssr/_2d8d7232._.js.map +1 -0
- package/.next/server/chunks/ssr/_7f9e89d2._.js +1 -1
- package/.next/server/chunks/ssr/_7f9e89d2._.js.map +1 -1
- package/.next/server/chunks/ssr/_8538617d._.js +3 -0
- package/.next/server/chunks/ssr/_8538617d._.js.map +1 -0
- package/.next/server/chunks/ssr/_a506fcf8._.js +3 -0
- package/.next/server/chunks/ssr/_a506fcf8._.js.map +1 -0
- package/.next/server/chunks/ssr/_deb7a691._.js +5 -0
- package/.next/server/chunks/ssr/_deb7a691._.js.map +1 -0
- package/.next/server/chunks/ssr/_ec0b0b83._.js +4 -0
- package/.next/server/chunks/ssr/_ec0b0b83._.js.map +1 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_teams_[teamId]_deliverables_page_actions_f44ae7c7.js +3 -0
- package/.next/server/chunks/ssr/_next-internal_server_app_teams_[teamId]_deliverables_page_actions_f44ae7c7.js.map +1 -0
- package/.next/server/chunks/ssr/b1a17_app_teams_[teamId]_workflows_[workflowId]_workflows-editor-client_tsx_5e714aa2._.js +1 -1
- package/.next/server/chunks/ssr/b1a17_app_teams_[teamId]_workflows_[workflowId]_workflows-editor-client_tsx_5e714aa2._.js.map +1 -1
- package/.next/server/chunks/ssr/d4b1c_modules_next_dist_server_route-modules_app-page_vendored_ssr_react-dom_6ef9314a.js +3 -0
- package/.next/server/chunks/ssr/d4b1c_modules_next_dist_server_route-modules_app-page_vendored_ssr_react-dom_6ef9314a.js.map +1 -0
- package/.next/server/chunks/ssr/node_modules_next_dist_1038a5b9._.js +10 -0
- package/.next/server/chunks/ssr/{[root-of-the-server]__4fd003c7._.js.map → node_modules_next_dist_1038a5b9._.js.map} +1 -1
- package/.next/server/chunks/ssr/node_modules_next_dist_25a30daf._.js +1 -1
- package/.next/server/chunks/ssr/node_modules_next_dist_25a30daf._.js.map +1 -1
- package/.next/server/chunks/ssr/node_modules_yaml_dist_18db9ed7._.js +2 -2
- package/.next/server/chunks/ssr/src_app_cron-jobs_cron-jobs-client_tsx_ec91a73d._.js +3 -0
- package/.next/server/chunks/ssr/src_app_cron-jobs_cron-jobs-client_tsx_ec91a73d._.js.map +1 -0
- package/.next/server/middleware-build-manifest.js +3 -3
- package/.next/server/next-font-manifest.js +1 -1
- package/.next/server/next-font-manifest.json +4 -0
- 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/static/chunks/{d2be314c3ece3fbe.js → 0bd6498bda341889.js} +1 -1
- package/.next/static/chunks/{c27f767f683b017a.js → 410dc851d0e3033d.js} +1 -1
- package/.next/static/chunks/{2ad8e6acac0ede2c.js → 4e38b3f280ced64c.js} +1 -1
- package/.next/static/chunks/{236ef28eb649c432.js → 4f2b8a07ace7e02b.js} +1 -1
- package/.next/static/chunks/57ad5290f7e92ffd.css +3 -0
- package/.next/static/chunks/{e854e56ea8cb6236.js → 87879d67a1601ee0.js} +1 -1
- package/.next/static/chunks/8a919077b73862da.js +1 -0
- package/.next/static/chunks/9906444fb1191bb4.js +1 -0
- package/.next/static/chunks/{43d0024279c6160e.js → a625725b4cd85ea3.js} +1 -1
- package/.next/static/chunks/{3e1fe6be993c61fb.js → ac32974713c57cb3.js} +1 -1
- package/.next/static/chunks/{f2f58a7e93290fbb.js → aebc3b6d791f68d2.js} +1 -1
- package/.next/static/chunks/{e083bcf4a197beae.js → b83c1ca03c3b8c6d.js} +1 -1
- package/.next/static/chunks/{e7bbb90aada90fdf.js → bdb7ebd88ea13111.js} +1 -1
- package/.next/static/chunks/bfcfbe145220d365.js +1 -0
- package/.next/static/chunks/c0d9f53d91cc65c5.js +10 -0
- package/.next/static/chunks/{36aff6bd42d53c8b.js → c0e2f959abc4cc13.js} +1 -1
- package/.next/static/chunks/{62e0c437eb8fc2da.js → c822e53f79a492c7.js} +1 -1
- package/.next/static/chunks/{fd0cb4d03fd17cf6.js → ce6b2024d13b4333.js} +1 -1
- package/.next/static/chunks/d13249af74d111cf.js +3 -0
- package/.next/static/chunks/{4a6dcf80b293d7a4.js → d16f64ca3a8ed208.js} +1 -1
- package/.next/static/chunks/{c84580993f22c17a.js → d6e1b7307a9274ce.js} +1 -1
- package/.next/static/chunks/d7541a171116ec9c.js +1 -0
- package/.next/static/chunks/{93719e85369dd453.js → e03137fd069b1514.js} +1 -1
- package/.next/static/chunks/{db4da5ee45033817.js → e10faa9296c8b246.js} +1 -1
- package/.next/static/chunks/ec24877f7b7f82c5.js +3 -0
- package/.next/static/chunks/{f179280598d329b2.js → ff3bbb5df40b2cc4.js} +1 -1
- package/.next/static/chunks/{turbopack-0236a74c4f471967.js → turbopack-dbf3078dbf5863bd.js} +1 -1
- package/openclaw.plugin.json +1 -1
- package/package.json +11 -2
- package/tsconfig.json +2 -1
- package/.next/server/chunks/[root-of-the-server]__01863a8b._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__01863a8b._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__0c4fc3d3._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__0c4fc3d3._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__150bf0bf._.js +0 -4
- package/.next/server/chunks/[root-of-the-server]__150bf0bf._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__1c6c2e43._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__1c6c2e43._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__3cfdf0b3._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__3fdbc43e._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__3fdbc43e._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__4079fa2b._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__4079fa2b._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__453333f5._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__453333f5._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__502825d0._.js +0 -13
- package/.next/server/chunks/[root-of-the-server]__502825d0._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__50fe6ff8._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__50fe6ff8._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__51198e25._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__51198e25._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__542a081b._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__542a081b._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__5ceff0f3._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__63715de8._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__63715de8._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__69c45937._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__69c45937._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__6caa8f2d._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__6caa8f2d._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__6f4e90a0._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__6f4e90a0._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__7459129e._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__7459129e._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__7bf889c1._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__7bf889c1._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__89605574._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__89605574._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__99b12bcb._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__99b12bcb._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__9d0ea07b._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__9d0ea07b._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__a49c534d._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__a49c534d._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__a74a32d5._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__a74a32d5._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__b64936a3._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__b64936a3._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__bbdb6dcb._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__bccfb2c0._.js +0 -6
- package/.next/server/chunks/[root-of-the-server]__bccfb2c0._.js.map +0 -1
- package/.next/server/chunks/[root-of-the-server]__e063a986._.js +0 -3
- package/.next/server/chunks/[root-of-the-server]__e063a986._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__162d7d9d._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__162d7d9d._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__255506f2._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__255506f2._.js.map +0 -1
- package/.next/server/chunks/ssr/[root-of-the-server]__4c66998a._.js +0 -3
- package/.next/server/chunks/ssr/[root-of-the-server]__4fd003c7._.js +0 -10
- package/.next/server/chunks/ssr/_d9520bea._.js +0 -3
- package/.next/server/chunks/ssr/_d9520bea._.js.map +0 -1
- package/.next/server/chunks/ssr/src_app_teams_[teamId]_runs_[workflowId]_[runId]_run-detail-client_tsx_56f0cbd7._.js +0 -3
- package/.next/server/chunks/ssr/src_app_teams_[teamId]_runs_[workflowId]_[runId]_run-detail-client_tsx_56f0cbd7._.js.map +0 -1
- package/.next/server/chunks/ssr/src_app_teams_[teamId]_team-editor_index_tsx_e68e9cbc._.js +0 -12
- package/.next/server/chunks/ssr/src_app_teams_[teamId]_team-editor_index_tsx_e68e9cbc._.js.map +0 -1
- package/.next/static/chunks/33959503ed1ef5fe.css +0 -3
- package/.next/static/chunks/474635d658546626.js +0 -1
- package/.next/static/chunks/4d4876ec71727e38.js +0 -1
- package/.next/static/chunks/579cd9be685abc65.js +0 -1
- package/.next/static/chunks/5e3b1d0f61a651bf.js +0 -1
- package/.next/static/chunks/a719c5f36ffeec2a.js +0 -10
- package/.next/static/chunks/ca07f0194f384207.js +0 -1
- /package/.next/server/chunks/{[root-of-the-server]__26c618a3._.js.map → [root-of-the-server]__0883634a._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__fef7183d._.js.map → [root-of-the-server]__0f55461f._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__05f5e243._.js.map → [root-of-the-server]__1f1e62ac._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__864a08dd._.js.map → [root-of-the-server]__20b1f42d._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__69be1758._.js.map → [root-of-the-server]__2dd1afff._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__698cf062._.js.map → [root-of-the-server]__5aa1dc93._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__b002764e._.js.map → [root-of-the-server]__5c5990a6._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__7a331e51._.js.map → [root-of-the-server]__603cb0fa._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__d924e5ac._.js.map → [root-of-the-server]__636919a0._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__c63a9f28._.js.map → [root-of-the-server]__74b80ca4._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__5ea38a67._.js.map → [root-of-the-server]__8f8e110f._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__e40409a2._.js.map → [root-of-the-server]__9853b72d._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__95ddb81a._.js.map → [root-of-the-server]__9dba20b3._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__ff69832c._.js.map → [root-of-the-server]__9e96d37b._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__8e27e9f7._.js.map → [root-of-the-server]__aba68368._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__bf608f29._.js.map → [root-of-the-server]__be5f57b2._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__8ea22d0a._.js.map → [root-of-the-server]__d302afb4._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__47eb3111._.js.map → [root-of-the-server]__e9d9d570._.js.map} +0 -0
- /package/.next/server/chunks/{[root-of-the-server]__59a6cf09._.js.map → [root-of-the-server]__f45ceefb._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{[root-of-the-server]__17b046ea._.js.map → [root-of-the-server]__388bae11._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{[root-of-the-server]__9a7d79aa._.js.map → [root-of-the-server]__997aa62c._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{[root-of-the-server]__0df430db._.js.map → [root-of-the-server]__9e400864._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{[root-of-the-server]__8a588fad._.js.map → [root-of-the-server]__a6348eaa._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{[root-of-the-server]__49281b4c._.js.map → [root-of-the-server]__af792402._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{[root-of-the-server]__8756d76d._.js.map → [root-of-the-server]__b8998a21._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{[root-of-the-server]__c777e326._.js.map → [root-of-the-server]__df23886e._.js.map} +0 -0
- /package/.next/server/chunks/ssr/{[root-of-the-server]__02e6ccaa._.js.map → [root-of-the-server]__e9bd9b71._.js.map} +0 -0
- /package/.next/static/{xL1Ph-1X9rdYxDgzULIJA → O_6k_lqrD6rgSIl4YQjxa}/_buildManifest.js +0 -0
- /package/.next/static/{xL1Ph-1X9rdYxDgzULIJA → O_6k_lqrD6rgSIl4YQjxa}/_clientMiddlewareManifest.json +0 -0
- /package/.next/static/{xL1Ph-1X9rdYxDgzULIJA → O_6k_lqrD6rgSIl4YQjxa}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},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"))},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"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},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"))},12714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},60526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},7367,e=>{"use strict";var t=e.i(12714),r=e.i(60526),s=e.i(50227);async function a(){let e=s.default.join(r.default.homedir(),".openclaw","openclaw.json");return JSON.parse(await t.default.readFile(e,"utf8"))}async function n(){let e=await a(),t=e.agents?.defaults?.workspace;if(!t)throw Error("agents.defaults.workspace is not set in ~/.openclaw/openclaw.json");return t}async function o(){let e=await n();return s.default.join(e,"recipes")}async function i(){let e=await n(),r=s.default.join(e,"goals");try{if((await t.default.stat(r)).isDirectory())return r}catch{}return s.default.join(e,"notes","goals")}async function l(e){let t=r.default.homedir();if(!t)throw Error("Could not resolve home directory");return s.default.join(t,".openclaw",`workspace-${e}`)}function u(e,t){return"main"===t?s.default.resolve(e):s.default.resolve(e,"..",`workspace-${t}`)}function p(e){let t=e.replace(/\\/g,"/");if(!t||t.startsWith("/")||t.includes(".."))throw Error("Invalid file name");return t}async function d(){let e=await a(),t=e.plugins?.installs?.recipes?.installPath||e.plugins?.installs?.recipes?.sourcePath||e.plugins?.load?.paths?.[0];if(!t)throw Error("Could not determine recipes plugin install path from ~/.openclaw/openclaw.json");return s.default.join(t,"recipes","default")}e.s(["assertSafeRelativeFileName",()=>p,"getBuiltinRecipesDir",()=>d,"getTeamWorkspaceDir",()=>l,"getWorkspaceDir",()=>n,"getWorkspaceGoalsDir",()=>i,"getWorkspaceRecipesDir",()=>o,"readOpenClawConfig",()=>a,"teamDirFromBaseWorkspace",()=>u])},70820,e=>{"use strict";var t=e.i(47909),r=e.i(74017),s=e.i(96250),a=e.i(59756),n=e.i(61916),o=e.i(74677),i=e.i(69741),l=e.i(16795),u=e.i(87718),p=e.i(95169),d=e.i(47587),c=e.i(66012),h=e.i(70101),m=e.i(26937),f=e.i(10372),x=e.i(93695);e.i(52474);var g=e.i(220),w=e.i(12714),R=e.i(50227),y=e.i(89171),v=e.i(7367);function E(e){return/^[a-z0-9][a-z0-9_-]{1,62}$/.test(e)}function N(e){let t=e.replace(/\r\n/g,"\n").trimEnd();return t?/^[A-Za-z0-9 _.,:;()\[\]{}\-+/@]+$/.test(t)&&!/[:#\n]/.test(t)?t:JSON.stringify(t):'""'}async function k(e){let t=await e.json(),r=!!t.dryRun,s=String(t.recipeId??t.teamId??"").trim(),a=String(t.teamId??s).trim(),n="string"==typeof t.name?t.name.trim():"",o="string"==typeof t.description?t.description.trim():"",i=Array.isArray(t.roles)?t.roles:[];if(!s)return y.NextResponse.json({ok:!1,error:"recipeId is required"},{status:400});if(!a)return y.NextResponse.json({ok:!1,error:"teamId is required"},{status:400});if(!E(s))return y.NextResponse.json({ok:!1,error:"Invalid recipeId. Use lowercase letters/numbers with - or _ (2-63 chars)."},{status:400});if(!E(a))return y.NextResponse.json({ok:!1,error:"Invalid teamId. Use lowercase letters/numbers with - or _ (2-63 chars)."},{status:400});if(!a.endsWith("-team"))return y.NextResponse.json({ok:!1,error:"teamId must end with -team"},{status:400});if(i.length<1)return y.NextResponse.json({ok:!1,error:"Select at least one role/agent"},{status:400});let l=i.map(e=>({roleId:String(e.roleId??"").trim(),displayName:"string"==typeof e.displayName?e.displayName.trim():""})).filter(e=>e.roleId);if(l.length<1)return y.NextResponse.json({ok:!1,error:"Each selected agent must have a roleId"},{status:400});let u=new Set;for(let e of l){if(!E(e.roleId))return y.NextResponse.json({ok:!1,error:`Invalid roleId: ${e.roleId}. Use lowercase letters/numbers with - or _.`},{status:400});if(u.has(e.roleId))return y.NextResponse.json({ok:!1,error:`Duplicate roleId: ${e.roleId}`},{status:400});u.add(e.roleId)}let p=await (0,v.getWorkspaceRecipesDir)(),d=R.default.join(p,`${s}.md`);try{return await w.default.access(d),y.NextResponse.json({ok:!1,error:`Recipe already exists: ${s}`},{status:409})}catch{}let c=[];for(let e of(c.push("---"),c.push(`id: ${s}`),c.push(`name: ${N(n||s)}`),c.push("version: 0.1.0"),o&&c.push(`description: ${N(o)}`),c.push("kind: team"),c.push("requiredSkills: []"),c.push("team:"),c.push(` teamId: ${a}`),c.push("agents:"),l))c.push(` - role: ${e.roleId}`),e.displayName&&c.push(` name: ${N(e.displayName)}`),c.push(" tools:"),c.push(" profile: coding"),c.push(" allow:"),c.push(" - group:fs"),c.push(" - group:web"),c.push(" - group:runtime"),c.push(" deny:"),c.push(" - exec");for(let e of(c.push("templates:"),l)){let t=e.roleId;c.push(` ${t}.soul: |`),c.push(" # SOUL.md"),c.push(" "),c.push(` Role: ${t}`),c.push(" "),c.push(` ${t}.agents: |`),c.push(" # AGENTS.md"),c.push(" "),c.push(` You are the ${t} role in team ${a}.`),c.push(" "),c.push(` ${t}.tools: |`),c.push(" # TOOLS.md"),c.push(" "),c.push(" - (empty)"),c.push(" "),c.push(` ${t}.status: |`),c.push(" # STATUS.md"),c.push(" "),c.push(" - (empty)"),c.push(" "),c.push(` ${t}.notes: |`),c.push(" # NOTES.md"),c.push(" "),c.push(" - (empty)"),c.push("")}c.push("files:"),c.push(" - path: SOUL.md"),c.push(" template: soul"),c.push(" mode: createOnly"),c.push(" - path: AGENTS.md"),c.push(" template: agents"),c.push(" mode: createOnly"),c.push(" - path: TOOLS.md"),c.push(" template: tools"),c.push(" mode: createOnly"),c.push(" - path: STATUS.md"),c.push(" template: status"),c.push(" mode: createOnly"),c.push(" - path: NOTES.md"),c.push(" template: notes"),c.push(" mode: createOnly"),c.push("---"),c.push(""),c.push("# Custom team recipe"),c.push(""),c.push("Generated by ClawKitchen Custom Team Builder."),c.push("");let h=c.join("\n");return r?y.NextResponse.json({ok:!0,dryRun:!0,recipeId:s,teamId:a,filePath:d,md:h}):(await w.default.writeFile(d,h,"utf8"),y.NextResponse.json({ok:!0,recipeId:s,teamId:a,filePath:d}))}e.s(["POST",()=>k],65231);var C=e.i(65231);let j=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/recipes/custom-team/route",pathname:"/api/recipes/custom-team",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/recipes/custom-team/route.ts",nextConfigOutput:"standalone",userland:C}),{workAsyncStorage:I,workUnitAsyncStorage:S,serverHooks:O}=j;function T(){return(0,s.patchFetch)({workAsyncStorage:I,workUnitAsyncStorage:S})}async function A(e,t,s){j.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/recipes/custom-team/route";w=w.replace(/\/index$/,"")||"/";let R=await j.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:y,params:v,nextConfig:E,parsedUrl:N,isDraftMode:k,prerenderManifest:C,routerServerContext:I,isOnDemandRevalidate:S,revalidateOnlyGenerated:O,resolvedPathname:T,clientReferenceManifest:A,serverActionsManifest:b}=R,$=(0,i.normalizeAppPath)(w),q=!!(C.dynamicRoutes[$]||C.routes[T]),P=async()=>((null==I?void 0:I.render404)?await I.render404(e,t,N,!1):t.end("This page could not be found"),null);if(q&&!k){let e=!!C.routes[T],t=C.dynamicRoutes[$];if(t&&!1===t.fallback&&!e){if(E.experimental.adapterPath)return await P();throw new x.NoFallbackError}}let _=null;!q||j.isDev||k||(_="/index"===(_=T)?"/":_);let U=!0===j.isDev||!q,D=q&&!U;b&&A&&(0,o.setManifestsSingleton)({page:w,clientReferenceManifest:A,serverActionsManifest:b});let H=e.method||"GET",F=(0,n.getTracer)(),M=F.getActiveScopeSpan(),W={params:v,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:E.cacheLife,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,a)=>j.onRequestError(e,t,s,a,I)},sharedContext:{buildId:y}},K=new l.NodeNextRequest(e),L=new l.NodeNextResponse(t),B=u.NextRequestAdapter.fromNodeNextRequest(K,(0,u.signalFromNodeResponse)(t));try{let o=async e=>j.handle(B,W).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")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=r.get("next.route");if(s){let t=`${H} ${s}`;e.setAttributes({"next.route":s,"http.route":s,"next.span_name":t}),e.updateName(t)}else e.updateName(`${H} ${w}`)}),i=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var n,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&S&&O&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await o(a);e.fetchMetrics=W.renderOpts.fetchMetrics;let l=W.renderOpts.pendingWaitUntil;l&&s.waitUntil&&(s.waitUntil(l),l=void 0);let u=W.renderOpts.collectedTags;if(!q)return await (0,c.sendResponse)(K,L,n,W.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(n.headers);u&&(t[f.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==W.renderOpts.collectedRevalidate&&!(W.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&W.renderOpts.collectedRevalidate,s=void 0===W.renderOpts.collectedExpire||W.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:W.renderOpts.collectedExpire;return{value:{kind:g.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 j.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:S})},!1,I),t}},p=await j.handleResponse({req:e,nextConfig:E,cacheKey:_,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:O,responseGenerator:u,waitUntil:s.waitUntil,isMinimalMode:i});if(!q)return null;if((null==p||null==(n=p.value)?void 0:n.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==p||null==(l=p.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",S?"REVALIDATED":p.isMiss?"MISS":p.isStale?"STALE":"HIT"),k&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let x=(0,h.fromNodeOutgoingHttpHeaders)(p.value.headers);return i&&q||x.delete(f.NEXT_CACHE_TAGS_HEADER),!p.cacheControl||t.getHeader("Cache-Control")||x.get("Cache-Control")||x.set("Cache-Control",(0,m.getCacheControlHeader)(p.cacheControl)),await (0,c.sendResponse)(K,L,new Response(p.value.body,{headers:x,status:p.value.status||200})),null};M?await l(M):await F.withPropagatedContext(e.headers,()=>F.trace(p.BaseServerSpan.handleRequest,{spanName:`${H} ${w}`,kind:n.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},l))}catch(t){if(t instanceof x.NoFallbackError||await j.onRequestError(e,t,{routerKind:"App Router",routePath:$,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:S})},!1,I),q)throw t;return await (0,c.sendResponse)(K,L,new Response(null,{status:500})),null}}e.s(["handler",()=>A,"patchFetch",()=>T,"routeModule",()=>j,"serverHooks",()=>O,"workAsyncStorage",()=>I,"workUnitAsyncStorage",()=>S],70820)}];
|
|
1
|
+
module.exports=[70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},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"))},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"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},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"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},12714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},60526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},7367,e=>{"use strict";var t=e.i(12714),r=e.i(60526),s=e.i(50227);async function a(){let e=s.default.join(r.default.homedir(),".openclaw","openclaw.json");return JSON.parse(await t.default.readFile(e,"utf8"))}async function n(){let e=await a(),t=e.agents?.defaults?.workspace;if(!t)throw Error("agents.defaults.workspace is not set in ~/.openclaw/openclaw.json");return t}async function o(){let e=await n();return s.default.join(e,"recipes")}async function i(){let e=await n(),r=s.default.join(e,"goals");try{if((await t.default.stat(r)).isDirectory())return r}catch{}return s.default.join(e,"notes","goals")}async function l(e){let t=r.default.homedir();if(!t)throw Error("Could not resolve home directory");return s.default.join(t,".openclaw",`workspace-${e}`)}function u(e,t){return"main"===t?s.default.resolve(e):s.default.resolve(e,"..",`workspace-${t}`)}function p(e){let t=e.replace(/\\/g,"/");if(!t||t.startsWith("/")||t.includes(".."))throw Error("Invalid file name");return t}async function d(){let e=await a(),t=e.plugins?.installs?.recipes?.installPath||e.plugins?.installs?.recipes?.sourcePath||e.plugins?.load?.paths?.[0];if(!t)throw Error("Could not determine recipes plugin install path from ~/.openclaw/openclaw.json");return s.default.join(t,"recipes","default")}e.s(["assertSafeRelativeFileName",()=>p,"getBuiltinRecipesDir",()=>d,"getTeamWorkspaceDir",()=>l,"getWorkspaceDir",()=>n,"getWorkspaceGoalsDir",()=>i,"getWorkspaceRecipesDir",()=>o,"readOpenClawConfig",()=>a,"teamDirFromBaseWorkspace",()=>u])},70820,e=>{"use strict";var t=e.i(47909),r=e.i(74017),s=e.i(96250),a=e.i(59756),n=e.i(61916),o=e.i(74677),i=e.i(69741),l=e.i(16795),u=e.i(87718),p=e.i(95169),d=e.i(47587),c=e.i(66012),h=e.i(70101),m=e.i(54468),f=e.i(10372),x=e.i(93695);e.i(52474);var g=e.i(220),w=e.i(12714),R=e.i(50227),y=e.i(89171),v=e.i(7367);function E(e){return/^[a-z0-9][a-z0-9_-]{1,62}$/.test(e)}function N(e){let t=e.replace(/\r\n/g,"\n").trimEnd();return t?/^[A-Za-z0-9 _.,:;()\[\]{}\-+/@]+$/.test(t)&&!/[:#\n]/.test(t)?t:JSON.stringify(t):'""'}async function k(e){let t=await e.json(),r=!!t.dryRun,s=String(t.recipeId??t.teamId??"").trim(),a=String(t.teamId??s).trim(),n="string"==typeof t.name?t.name.trim():"",o="string"==typeof t.description?t.description.trim():"",i=Array.isArray(t.roles)?t.roles:[];if(!s)return y.NextResponse.json({ok:!1,error:"recipeId is required"},{status:400});if(!a)return y.NextResponse.json({ok:!1,error:"teamId is required"},{status:400});if(!E(s))return y.NextResponse.json({ok:!1,error:"Invalid recipeId. Use lowercase letters/numbers with - or _ (2-63 chars)."},{status:400});if(!E(a))return y.NextResponse.json({ok:!1,error:"Invalid teamId. Use lowercase letters/numbers with - or _ (2-63 chars)."},{status:400});if(!a.endsWith("-team"))return y.NextResponse.json({ok:!1,error:"teamId must end with -team"},{status:400});if(i.length<1)return y.NextResponse.json({ok:!1,error:"Select at least one role/agent"},{status:400});let l=i.map(e=>({roleId:String(e.roleId??"").trim(),displayName:"string"==typeof e.displayName?e.displayName.trim():""})).filter(e=>e.roleId);if(l.length<1)return y.NextResponse.json({ok:!1,error:"Each selected agent must have a roleId"},{status:400});let u=new Set;for(let e of l){if(!E(e.roleId))return y.NextResponse.json({ok:!1,error:`Invalid roleId: ${e.roleId}. Use lowercase letters/numbers with - or _.`},{status:400});if(u.has(e.roleId))return y.NextResponse.json({ok:!1,error:`Duplicate roleId: ${e.roleId}`},{status:400});u.add(e.roleId)}let p=await (0,v.getWorkspaceRecipesDir)(),d=R.default.join(p,`${s}.md`);try{return await w.default.access(d),y.NextResponse.json({ok:!1,error:`Recipe already exists: ${s}`},{status:409})}catch{}let c=[];for(let e of(c.push("---"),c.push(`id: ${s}`),c.push(`name: ${N(n||s)}`),c.push("version: 0.1.0"),o&&c.push(`description: ${N(o)}`),c.push("kind: team"),c.push("requiredSkills: []"),c.push("team:"),c.push(` teamId: ${a}`),c.push("agents:"),l))c.push(` - role: ${e.roleId}`),e.displayName&&c.push(` name: ${N(e.displayName)}`),c.push(" tools:"),c.push(" profile: coding"),c.push(" allow:"),c.push(" - group:fs"),c.push(" - group:web"),c.push(" - group:runtime"),c.push(" deny:"),c.push(" - exec");for(let e of(c.push("templates:"),l)){let t=e.roleId;c.push(` ${t}.soul: |`),c.push(" # SOUL.md"),c.push(" "),c.push(` Role: ${t}`),c.push(" "),c.push(` ${t}.agents: |`),c.push(" # AGENTS.md"),c.push(" "),c.push(` You are the ${t} role in team ${a}.`),c.push(" "),c.push(` ${t}.tools: |`),c.push(" # TOOLS.md"),c.push(" "),c.push(" - (empty)"),c.push(" "),c.push(` ${t}.status: |`),c.push(" # STATUS.md"),c.push(" "),c.push(" - (empty)"),c.push(" "),c.push(` ${t}.notes: |`),c.push(" # NOTES.md"),c.push(" "),c.push(" - (empty)"),c.push("")}c.push("files:"),c.push(" - path: SOUL.md"),c.push(" template: soul"),c.push(" mode: createOnly"),c.push(" - path: AGENTS.md"),c.push(" template: agents"),c.push(" mode: createOnly"),c.push(" - path: TOOLS.md"),c.push(" template: tools"),c.push(" mode: createOnly"),c.push(" - path: STATUS.md"),c.push(" template: status"),c.push(" mode: createOnly"),c.push(" - path: NOTES.md"),c.push(" template: notes"),c.push(" mode: createOnly"),c.push("---"),c.push(""),c.push("# Custom team recipe"),c.push(""),c.push("Generated by ClawKitchen Custom Team Builder."),c.push("");let h=c.join("\n");return r?y.NextResponse.json({ok:!0,dryRun:!0,recipeId:s,teamId:a,filePath:d,md:h}):(await w.default.writeFile(d,h,"utf8"),y.NextResponse.json({ok:!0,recipeId:s,teamId:a,filePath:d}))}e.s(["POST",()=>k],65231);var C=e.i(65231);let j=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/recipes/custom-team/route",pathname:"/api/recipes/custom-team",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/recipes/custom-team/route.ts",nextConfigOutput:"standalone",userland:C}),{workAsyncStorage:I,workUnitAsyncStorage:S,serverHooks:O}=j;function T(){return(0,s.patchFetch)({workAsyncStorage:I,workUnitAsyncStorage:S})}async function A(e,t,s){j.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/recipes/custom-team/route";w=w.replace(/\/index$/,"")||"/";let R=await j.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:y,params:v,nextConfig:E,parsedUrl:N,isDraftMode:k,prerenderManifest:C,routerServerContext:I,isOnDemandRevalidate:S,revalidateOnlyGenerated:O,resolvedPathname:T,clientReferenceManifest:A,serverActionsManifest:b}=R,$=(0,i.normalizeAppPath)(w),q=!!(C.dynamicRoutes[$]||C.routes[T]),P=async()=>((null==I?void 0:I.render404)?await I.render404(e,t,N,!1):t.end("This page could not be found"),null);if(q&&!k){let e=!!C.routes[T],t=C.dynamicRoutes[$];if(t&&!1===t.fallback&&!e){if(E.experimental.adapterPath)return await P();throw new x.NoFallbackError}}let _=null;!q||j.isDev||k||(_="/index"===(_=T)?"/":_);let U=!0===j.isDev||!q,D=q&&!U;b&&A&&(0,o.setManifestsSingleton)({page:w,clientReferenceManifest:A,serverActionsManifest:b});let H=e.method||"GET",F=(0,n.getTracer)(),M=F.getActiveScopeSpan(),W={params:v,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:E.cacheLife,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,a)=>j.onRequestError(e,t,s,a,I)},sharedContext:{buildId:y}},K=new l.NodeNextRequest(e),L=new l.NodeNextResponse(t),B=u.NextRequestAdapter.fromNodeNextRequest(K,(0,u.signalFromNodeResponse)(t));try{let o=async e=>j.handle(B,W).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")!==p.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let s=r.get("next.route");if(s){let t=`${H} ${s}`;e.setAttributes({"next.route":s,"http.route":s,"next.span_name":t}),e.updateName(t)}else e.updateName(`${H} ${w}`)}),i=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var n,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&S&&O&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await o(a);e.fetchMetrics=W.renderOpts.fetchMetrics;let l=W.renderOpts.pendingWaitUntil;l&&s.waitUntil&&(s.waitUntil(l),l=void 0);let u=W.renderOpts.collectedTags;if(!q)return await (0,c.sendResponse)(K,L,n,W.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(n.headers);u&&(t[f.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==W.renderOpts.collectedRevalidate&&!(W.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&W.renderOpts.collectedRevalidate,s=void 0===W.renderOpts.collectedExpire||W.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:W.renderOpts.collectedExpire;return{value:{kind:g.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 j.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:S})},!1,I),t}},p=await j.handleResponse({req:e,nextConfig:E,cacheKey:_,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:O,responseGenerator:u,waitUntil:s.waitUntil,isMinimalMode:i});if(!q)return null;if((null==p||null==(n=p.value)?void 0:n.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==p||null==(l=p.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",S?"REVALIDATED":p.isMiss?"MISS":p.isStale?"STALE":"HIT"),k&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let x=(0,h.fromNodeOutgoingHttpHeaders)(p.value.headers);return i&&q||x.delete(f.NEXT_CACHE_TAGS_HEADER),!p.cacheControl||t.getHeader("Cache-Control")||x.get("Cache-Control")||x.set("Cache-Control",(0,m.getCacheControlHeader)(p.cacheControl)),await (0,c.sendResponse)(K,L,new Response(p.value.body,{headers:x,status:p.value.status||200})),null};M?await l(M):await F.withPropagatedContext(e.headers,()=>F.trace(p.BaseServerSpan.handleRequest,{spanName:`${H} ${w}`,kind:n.SpanKind.SERVER,attributes:{"http.method":H,"http.target":e.url}},l))}catch(t){if(t instanceof x.NoFallbackError||await j.onRequestError(e,t,{routerKind:"App Router",routePath:$,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:S})},!1,I),q)throw t;return await (0,c.sendResponse)(K,L,new Response(null,{status:500})),null}}e.s(["handler",()=>A,"patchFetch",()=>T,"routeModule",()=>j,"serverHooks",()=>O,"workAsyncStorage",()=>I,"workUnitAsyncStorage",()=>S],70820)}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__9853b72d._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},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"))},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"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},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"))},12714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},60526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},7367,e=>{"use strict";var t=e.i(12714),r=e.i(60526),a=e.i(50227);async function n(){let e=a.default.join(r.default.homedir(),".openclaw","openclaw.json");return JSON.parse(await t.default.readFile(e,"utf8"))}async function i(){let e=await n(),t=e.agents?.defaults?.workspace;if(!t)throw Error("agents.defaults.workspace is not set in ~/.openclaw/openclaw.json");return t}async function o(){let e=await i();return a.default.join(e,"recipes")}async function s(){let e=await i(),r=a.default.join(e,"goals");try{if((await t.default.stat(r)).isDirectory())return r}catch{}return a.default.join(e,"notes","goals")}async function l(e){let t=r.default.homedir();if(!t)throw Error("Could not resolve home directory");return a.default.join(t,".openclaw",`workspace-${e}`)}function d(e,t){return"main"===t?a.default.resolve(e):a.default.resolve(e,"..",`workspace-${t}`)}function u(e){let t=e.replace(/\\/g,"/");if(!t||t.startsWith("/")||t.includes(".."))throw Error("Invalid file name");return t}async function c(){let e=await n(),t=e.plugins?.installs?.recipes?.installPath||e.plugins?.installs?.recipes?.sourcePath||e.plugins?.load?.paths?.[0];if(!t)throw Error("Could not determine recipes plugin install path from ~/.openclaw/openclaw.json");return a.default.join(t,"recipes","default")}e.s(["assertSafeRelativeFileName",()=>u,"getBuiltinRecipesDir",()=>c,"getTeamWorkspaceDir",()=>l,"getWorkspaceDir",()=>i,"getWorkspaceGoalsDir",()=>s,"getWorkspaceRecipesDir",()=>o,"readOpenClawConfig",()=>n,"teamDirFromBaseWorkspace",()=>d])},5365,(e,t,r)=>{t.exports=e.x("process",()=>require("process"))},874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},93518,e=>{"use strict";function t(e){if(!e.startsWith("---\n"))throw Error("Recipe markdown must start with YAML frontmatter (---)");let t=e.indexOf("\n---\n",4);if(-1===t)throw Error("Recipe frontmatter not terminated (---)");return{yamlText:e.slice(4,t+1),rest:e.slice(t+5)}}function r(e){let t=e.trim();if(!t)throw Error("role is required");if(!/^[a-z][a-z0-9-]{0,62}$/i.test(t))throw Error("role must be alphanumeric/dash");return t}e.s(["normalizeRole",()=>r,"splitRecipeFrontmatter",()=>t])},35154,e=>{"use strict";var t=e.i(47909),r=e.i(74017),a=e.i(96250),n=e.i(59756),i=e.i(61916),o=e.i(74677),s=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),m=e.i(10372),w=e.i(93695);e.i(52474);var g=e.i(220),x=e.i(12714),R=e.i(50227),v=e.i(89171),y=e.i(23008),E=e.i(7367),k=e.i(93518);let C=null;async function j(){let e=await (0,E.getWorkspaceRecipesDir)(),t=await (0,E.getBuiltinRecipesDir)();async function r(e){try{return(await x.default.readdir(e,{withFileTypes:!0})).filter(e=>e.isFile()&&e.name.endsWith(".md")).map(e=>e.name)}catch{return[]}}let a=await r(e),n=await r(t),i=new Map;for(let e of n)i.set(R.default.basename(e,".md"),R.default.join(t,e));for(let t of a)i.set(R.default.basename(t,".md"),R.default.join(e,t));return Array.from(i.entries()).map(([e,t])=>({id:e,filePath:t})).sort((e,t)=>e.id.localeCompare(t.id))}async function b(){let e=R.default.resolve(await (0,E.getWorkspaceRecipesDir)(),".."),t=[];try{t=await x.default.readdir(e,{withFileTypes:!0})}catch{return new Set}let r=new Set;for(let a of t){if(!a.isDirectory()||!a.name.startsWith("workspace-"))continue;let t=R.default.join(e,a.name),n=R.default.join(t,"team.json");try{let e=await x.default.readFile(n,"utf8"),t=JSON.parse(e),a=String(t?.recipeId??"").trim();a&&r.add(a)}catch{}}return r}async function A(){let e=Date.now();if(C&&e-C.ts<3e5)return v.NextResponse.json({ok:!0,items:C.items,cached:!0});let t=await j(),r=[];for(let e of t){let t="";try{t=await x.default.readFile(e.filePath,"utf8")}catch{continue}r.push(...function(e,t){let r;try{r=function(e){let t=e.indexOf("---\n");if(-1===t)throw Error("Recipe markdown must include YAML frontmatter (---)");let r=e.slice(t),{yamlText:a}=(0,k.splitRecipeFrontmatter)(r);return y.default.parse(a)}(t)}catch{return[]}let a=r&&"object"==typeof r?r:{},n=String(a.kind??"").trim(),i=String(a.name??e).trim()||e,o=[];if("team"===n)for(let t of Array.isArray(a.agents)?a.agents:[]){let r=t&&"object"==typeof t?t:{},a=String(r.role??"").trim();if(!a)continue;let n=r.name?String(r.name).trim():"";o.push({kind:"team-role",recipeId:e,recipeName:i,roleId:a,roleName:n||void 0})}if("agent"===n){let t=a.description?String(a.description).trim():"";o.push({kind:"single-agent",recipeId:e,recipeName:i,description:t||void 0})}return o}(e.id,t))}let a=function(e,t){let r=new Set,a=new Map;for(let n of e){if("single-agent"===n.kind){let e=n.recipeId;if(r.has(e))continue;r.add(e);continue}let e=a.get(n.roleId);if(!e){a.set(n.roleId,n);continue}let i=t.has(e.recipeId),o=t.has(n.recipeId);(!i||o)&&!i&&o&&a.set(n.roleId,n)}let n=[];for(let t of e)if("single-agent"===t.kind){if(!r.has(t.recipeId))continue;r.delete(t.recipeId),n.push(t)}for(let e of a.values())n.push(e);return n}(r,await b());return a.sort((e,t)=>{if(e.kind!==t.kind)return"team-role"===e.kind?-1:1;let r=e.recipeId.localeCompare(t.recipeId);return r||("team-role"===e.kind&&"team-role"===t.kind?e.roleId.localeCompare(t.roleId):0)}),C={ts:e,items:a},v.NextResponse.json({ok:!0,items:a,cached:!1})}e.s(["GET",()=>A,"dynamic",0,"force-dynamic"],9557);var S=e.i(9557);let I=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/recipes/local-agent-catalog/route",pathname:"/api/recipes/local-agent-catalog",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/recipes/local-agent-catalog/route.ts",nextConfigOutput:"standalone",userland:S}),{workAsyncStorage:N,workUnitAsyncStorage:T,serverHooks:q}=I;function O(){return(0,a.patchFetch)({workAsyncStorage:N,workUnitAsyncStorage:T})}async function P(e,t,a){I.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let x="/api/recipes/local-agent-catalog/route";x=x.replace(/\/index$/,"")||"/";let R=await I.prepare(e,t,{srcPage:x,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:v,params:y,nextConfig:E,parsedUrl:k,isDraftMode:C,prerenderManifest:j,routerServerContext:b,isOnDemandRevalidate:A,revalidateOnlyGenerated:S,resolvedPathname:N,clientReferenceManifest:T,serverActionsManifest:q}=R,O=(0,s.normalizeAppPath)(x),P=!!(j.dynamicRoutes[O]||j.routes[N]),D=async()=>((null==b?void 0:b.render404)?await b.render404(e,t,k,!1):t.end("This page could not be found"),null);if(P&&!C){let e=!!j.routes[N],t=j.dynamicRoutes[O];if(t&&!1===t.fallback&&!e){if(E.experimental.adapterPath)return await D();throw new w.NoFallbackError}}let _=null;!P||I.isDev||C||(_="/index"===(_=N)?"/":_);let F=!0===I.isDev||!P,H=P&&!F;q&&T&&(0,o.setManifestsSingleton)({page:x,clientReferenceManifest:T,serverActionsManifest:q});let M=e.method||"GET",U=(0,i.getTracer)(),W=U.getActiveScopeSpan(),$={params:y,prerenderManifest:j,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:F,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:E.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>I.onRequestError(e,t,a,n,b)},sharedContext:{buildId:v}},B=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),L=d.NextRequestAdapter.fromNodeNextRequest(B,(0,d.signalFromNodeResponse)(t));try{let o=async e=>I.handle(L,$).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=U.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${M} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${x}`)}),s=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var i,l;let d=async({previousCacheEntry:r})=>{try{if(!s&&A&&S&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await o(n);e.fetchMetrics=$.renderOpts.fetchMetrics;let l=$.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let d=$.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(B,K,i,$.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(i.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,a=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:$.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await I.onRequestError(e,t,{routerKind:"App Router",routePath:x,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:A})},!1,b),t}},u=await I.handleResponse({req:e,nextConfig:E,cacheKey:_,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:j,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:S,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:s});if(!P)return null;if((null==u||null==(i=u.value)?void 0:i.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});s||t.setHeader("x-nextjs-cache",A?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let w=(0,f.fromNodeOutgoingHttpHeaders)(u.value.headers);return s&&P||w.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||w.get("Cache-Control")||w.set("Cache-Control",(0,h.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(B,K,new Response(u.value.body,{headers:w,status:u.value.status||200})),null};W?await l(W):await U.withPropagatedContext(e.headers,()=>U.trace(u.BaseServerSpan.handleRequest,{spanName:`${M} ${x}`,kind:i.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},l))}catch(t){if(t instanceof w.NoFallbackError||await I.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:A})},!1,b),P)throw t;return await (0,p.sendResponse)(B,K,new Response(null,{status:500})),null}}e.s(["handler",()=>P,"patchFetch",()=>O,"routeModule",()=>I,"serverHooks",()=>q,"workAsyncStorage",()=>N,"workUnitAsyncStorage",()=>T],35154)}];
|
|
1
|
+
module.exports=[70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},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"))},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"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},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"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},12714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},60526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},7367,e=>{"use strict";var t=e.i(12714),r=e.i(60526),a=e.i(50227);async function n(){let e=a.default.join(r.default.homedir(),".openclaw","openclaw.json");return JSON.parse(await t.default.readFile(e,"utf8"))}async function i(){let e=await n(),t=e.agents?.defaults?.workspace;if(!t)throw Error("agents.defaults.workspace is not set in ~/.openclaw/openclaw.json");return t}async function o(){let e=await i();return a.default.join(e,"recipes")}async function s(){let e=await i(),r=a.default.join(e,"goals");try{if((await t.default.stat(r)).isDirectory())return r}catch{}return a.default.join(e,"notes","goals")}async function l(e){let t=r.default.homedir();if(!t)throw Error("Could not resolve home directory");return a.default.join(t,".openclaw",`workspace-${e}`)}function d(e,t){return"main"===t?a.default.resolve(e):a.default.resolve(e,"..",`workspace-${t}`)}function u(e){let t=e.replace(/\\/g,"/");if(!t||t.startsWith("/")||t.includes(".."))throw Error("Invalid file name");return t}async function c(){let e=await n(),t=e.plugins?.installs?.recipes?.installPath||e.plugins?.installs?.recipes?.sourcePath||e.plugins?.load?.paths?.[0];if(!t)throw Error("Could not determine recipes plugin install path from ~/.openclaw/openclaw.json");return a.default.join(t,"recipes","default")}e.s(["assertSafeRelativeFileName",()=>u,"getBuiltinRecipesDir",()=>c,"getTeamWorkspaceDir",()=>l,"getWorkspaceDir",()=>i,"getWorkspaceGoalsDir",()=>s,"getWorkspaceRecipesDir",()=>o,"readOpenClawConfig",()=>n,"teamDirFromBaseWorkspace",()=>d])},5365,(e,t,r)=>{t.exports=e.x("process",()=>require("process"))},874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},93518,e=>{"use strict";function t(e){if(!e.startsWith("---\n"))throw Error("Recipe markdown must start with YAML frontmatter (---)");let t=e.indexOf("\n---\n",4);if(-1===t)throw Error("Recipe frontmatter not terminated (---)");return{yamlText:e.slice(4,t+1),rest:e.slice(t+5)}}function r(e){let t=e.trim();if(!t)throw Error("role is required");if(!/^[a-z][a-z0-9-]{0,62}$/i.test(t))throw Error("role must be alphanumeric/dash");return t}e.s(["normalizeRole",()=>r,"splitRecipeFrontmatter",()=>t])},35154,e=>{"use strict";var t=e.i(47909),r=e.i(74017),a=e.i(96250),n=e.i(59756),i=e.i(61916),o=e.i(74677),s=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(54468),m=e.i(10372),w=e.i(93695);e.i(52474);var g=e.i(220),x=e.i(12714),R=e.i(50227),v=e.i(89171),y=e.i(23008),E=e.i(7367),k=e.i(93518);let C=null;async function j(){let e=await (0,E.getWorkspaceRecipesDir)(),t=await (0,E.getBuiltinRecipesDir)();async function r(e){try{return(await x.default.readdir(e,{withFileTypes:!0})).filter(e=>e.isFile()&&e.name.endsWith(".md")).map(e=>e.name)}catch{return[]}}let a=await r(e),n=await r(t),i=new Map;for(let e of n)i.set(R.default.basename(e,".md"),R.default.join(t,e));for(let t of a)i.set(R.default.basename(t,".md"),R.default.join(e,t));return Array.from(i.entries()).map(([e,t])=>({id:e,filePath:t})).sort((e,t)=>e.id.localeCompare(t.id))}async function b(){let e=R.default.resolve(await (0,E.getWorkspaceRecipesDir)(),".."),t=[];try{t=await x.default.readdir(e,{withFileTypes:!0})}catch{return new Set}let r=new Set;for(let a of t){if(!a.isDirectory()||!a.name.startsWith("workspace-"))continue;let t=R.default.join(e,a.name),n=R.default.join(t,"team.json");try{let e=await x.default.readFile(n,"utf8"),t=JSON.parse(e),a=String(t?.recipeId??"").trim();a&&r.add(a)}catch{}}return r}async function A(){let e=Date.now();if(C&&e-C.ts<3e5)return v.NextResponse.json({ok:!0,items:C.items,cached:!0});let t=await j(),r=[];for(let e of t){let t="";try{t=await x.default.readFile(e.filePath,"utf8")}catch{continue}r.push(...function(e,t){let r;try{r=function(e){let t=e.indexOf("---\n");if(-1===t)throw Error("Recipe markdown must include YAML frontmatter (---)");let r=e.slice(t),{yamlText:a}=(0,k.splitRecipeFrontmatter)(r);return y.default.parse(a)}(t)}catch{return[]}let a=r&&"object"==typeof r?r:{},n=String(a.kind??"").trim(),i=String(a.name??e).trim()||e,o=[];if("team"===n)for(let t of Array.isArray(a.agents)?a.agents:[]){let r=t&&"object"==typeof t?t:{},a=String(r.role??"").trim();if(!a)continue;let n=r.name?String(r.name).trim():"";o.push({kind:"team-role",recipeId:e,recipeName:i,roleId:a,roleName:n||void 0})}if("agent"===n){let t=a.description?String(a.description).trim():"";o.push({kind:"single-agent",recipeId:e,recipeName:i,description:t||void 0})}return o}(e.id,t))}let a=function(e,t){let r=new Set,a=new Map;for(let n of e){if("single-agent"===n.kind){let e=n.recipeId;if(r.has(e))continue;r.add(e);continue}let e=a.get(n.roleId);if(!e){a.set(n.roleId,n);continue}let i=t.has(e.recipeId),o=t.has(n.recipeId);(!i||o)&&!i&&o&&a.set(n.roleId,n)}let n=[];for(let t of e)if("single-agent"===t.kind){if(!r.has(t.recipeId))continue;r.delete(t.recipeId),n.push(t)}for(let e of a.values())n.push(e);return n}(r,await b());return a.sort((e,t)=>{if(e.kind!==t.kind)return"team-role"===e.kind?-1:1;let r=e.recipeId.localeCompare(t.recipeId);return r||("team-role"===e.kind&&"team-role"===t.kind?e.roleId.localeCompare(t.roleId):0)}),C={ts:e,items:a},v.NextResponse.json({ok:!0,items:a,cached:!1})}e.s(["GET",()=>A,"dynamic",0,"force-dynamic"],9557);var S=e.i(9557);let I=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/recipes/local-agent-catalog/route",pathname:"/api/recipes/local-agent-catalog",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/recipes/local-agent-catalog/route.ts",nextConfigOutput:"standalone",userland:S}),{workAsyncStorage:N,workUnitAsyncStorage:T,serverHooks:q}=I;function O(){return(0,a.patchFetch)({workAsyncStorage:N,workUnitAsyncStorage:T})}async function P(e,t,a){I.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let x="/api/recipes/local-agent-catalog/route";x=x.replace(/\/index$/,"")||"/";let R=await I.prepare(e,t,{srcPage:x,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:v,params:y,nextConfig:E,parsedUrl:k,isDraftMode:C,prerenderManifest:j,routerServerContext:b,isOnDemandRevalidate:A,revalidateOnlyGenerated:S,resolvedPathname:N,clientReferenceManifest:T,serverActionsManifest:q}=R,O=(0,s.normalizeAppPath)(x),P=!!(j.dynamicRoutes[O]||j.routes[N]),D=async()=>((null==b?void 0:b.render404)?await b.render404(e,t,k,!1):t.end("This page could not be found"),null);if(P&&!C){let e=!!j.routes[N],t=j.dynamicRoutes[O];if(t&&!1===t.fallback&&!e){if(E.experimental.adapterPath)return await D();throw new w.NoFallbackError}}let _=null;!P||I.isDev||C||(_="/index"===(_=N)?"/":_);let F=!0===I.isDev||!P,H=P&&!F;q&&T&&(0,o.setManifestsSingleton)({page:x,clientReferenceManifest:T,serverActionsManifest:q});let M=e.method||"GET",U=(0,i.getTracer)(),W=U.getActiveScopeSpan(),$={params:y,prerenderManifest:j,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:F,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:E.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>I.onRequestError(e,t,a,n,b)},sharedContext:{buildId:v}},B=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),L=d.NextRequestAdapter.fromNodeNextRequest(B,(0,d.signalFromNodeResponse)(t));try{let o=async e=>I.handle(L,$).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=U.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${M} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${x}`)}),s=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var i,l;let d=async({previousCacheEntry:r})=>{try{if(!s&&A&&S&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await o(n);e.fetchMetrics=$.renderOpts.fetchMetrics;let l=$.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let d=$.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(B,K,i,$.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(i.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,a=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:$.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await I.onRequestError(e,t,{routerKind:"App Router",routePath:x,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:A})},!1,b),t}},u=await I.handleResponse({req:e,nextConfig:E,cacheKey:_,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:j,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:S,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:s});if(!P)return null;if((null==u||null==(i=u.value)?void 0:i.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});s||t.setHeader("x-nextjs-cache",A?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let w=(0,f.fromNodeOutgoingHttpHeaders)(u.value.headers);return s&&P||w.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||w.get("Cache-Control")||w.set("Cache-Control",(0,h.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(B,K,new Response(u.value.body,{headers:w,status:u.value.status||200})),null};W?await l(W):await U.withPropagatedContext(e.headers,()=>U.trace(u.BaseServerSpan.handleRequest,{spanName:`${M} ${x}`,kind:i.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},l))}catch(t){if(t instanceof w.NoFallbackError||await I.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:A})},!1,b),P)throw t;return await (0,p.sendResponse)(B,K,new Response(null,{status:500})),null}}e.s(["handler",()=>P,"patchFetch",()=>O,"routeModule",()=>I,"serverHooks",()=>q,"workAsyncStorage",()=>N,"workUnitAsyncStorage",()=>T],35154)}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__9dba20b3._.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
module.exports=[70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},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"))},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"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},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"))},
|
|
1
|
+
module.exports=[70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},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"))},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"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},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"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},12714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},60526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},40317,e=>{"use strict";function t(e){return e instanceof Error?e.message:String(e)}e.s(["errorMessage",()=>t])},26837,e=>{"use strict";var t=e.i(12714),r=e.i(60526),n=e.i(50227);function a(e){return e.includes("/")||e.includes("\\")}function i(e){if(!/^[a-z0-9][a-z0-9-]{1,63}$/.test(e))throw Error(`Invalid teamId "${e}"`);return n.default.join(r.default.homedir(),".openclaw",`workspace-${e}`)}function s(e){if(e)return i(e);let t=process.env.CK_TEAM_ID;if(!t&&!process.env.CK_TEAM_WORKSPACE_DIR)throw Error("No team specified. Pass a teamId or set CK_TEAM_ID / CK_TEAM_WORKSPACE_DIR.");return process.env.CK_TEAM_WORKSPACE_DIR??i(t)}function o(e,t){let r=a(t)?t:i(t);return n.default.join(r,{backlog:"work/backlog","in-progress":"work/in-progress",testing:"work/testing",done:"work/done"}[e])}async function l(e){let r,i=a(e)?"workspace"===(r=n.default.basename(e))?"main":r.startsWith("workspace-")?r.slice(10):r:e,s=[];for(let r of["backlog","in-progress","testing","done"]){let a=[];try{a=await t.default.readdir(o(r,e))}catch{a=[]}for(let l of a){if(!l.endsWith(".md"))continue;let a=function(e){let t=e.match(/^(\d{4})-/);return t?Number(t[1]):null}(l);if(null==a)continue;let u=n.default.join(o(r,e),l),[d,c]=await Promise.all([t.default.readFile(u,"utf8"),t.default.stat(u)]),p=function(e){let t=e.split("\n")[0]??"",r=t.startsWith("# ")?t.slice(2).trim():"",n=r.indexOf(" ");if(n>0){let e=r.slice(n+1).trim();if(e)return e}let a=r.replace(/^\d{4}-/,"").replace(/[-_]+/g," ").replace(/\s+/g," ").trim(),i=new Set(["api","cli","ui","ux","gpu","cpu","npm","pr","ci","cd","json","yaml","md"]),s=a?a.split(" ").filter(Boolean).map(e=>{let t=e.toLowerCase();return i.has(t)?e.toUpperCase():t.startsWith("v")&&/^\d/.test(t.slice(1))||/^[\d.]+$/.test(e)?e:e.slice(0,1).toUpperCase()+e.slice(1)}).join(" "):"";return s||r||"(untitled)"}(d),m=function(e,t){let r=RegExp(`^${t}:\\s*(.*)$`,"mi"),n=e.match(r);return n?.[1]?.trim()||null}(d,"Owner"),f=c.mtime.toISOString(),h=(Date.now()-c.mtimeMs)/36e5;s.push({teamId:i,number:a,id:l.replace(/\.md$/,""),title:p,owner:m,stage:r,file:u,updatedAt:f,ageHours:h})}}return s.sort((e,t)=>e.number-t.number),s}async function u(e,t){let r=await l(t),n=e.trim(),a=n.match(/^\d+$/)?r.find(e=>e.number===Number(n)):null;return r.find(e=>e.id===n)??a??null}async function d(e,t){return u(t,e)}async function c(e,r){let n=await u(r,e);return n?{teamId:n.teamId,id:n.id,file:n.file,markdown:await t.default.readFile(n.file,"utf8"),owner:n.owner,stage:n.stage}:null}e.s(["getTeamWorkspaceDir",()=>s,"getTicketByIdOrNumber",()=>u,"getTicketMarkdown",()=>c,"listTickets",()=>l,"resolveTicket",()=>d,"stageDir",()=>o,"teamWorkspace",()=>i])},88177,e=>{"use strict";var t=e.i(47909),r=e.i(74017),n=e.i(96250),a=e.i(59756),i=e.i(61916),s=e.i(74677),o=e.i(69741),l=e.i(16795),u=e.i(87718),d=e.i(95169),c=e.i(47587),p=e.i(66012),m=e.i(70101),f=e.i(54468),h=e.i(10372),w=e.i(93695);e.i(52474);var x=e.i(220),g=e.i(12714),R=e.i(50227),v=e.i(89171),E=e.i(40317),y=e.i(26837);async function k(e){await new Promise(t=>setTimeout(t,e))}async function C(e,t){let r=Date.now();for(;;)try{let r=await g.default.open(e,"wx");try{await t()}finally{await r.close(),await g.default.unlink(e).catch(()=>null)}return}catch(e){if("EEXIST"!==("object"==typeof e&&e&&"code"in e?e.code:void 0))throw e;if(Date.now()-r>2e3)throw Error("Ticket is busy; please retry.");await k(50)}}function b(e){return/\n## Comments\n/i.test(e)||/^## Comments\n/im.test(e)?e:e.replace(/\s*$/,"\n\n## Comments\n")}async function T(e,t){try{var r;let n,a,{teamId:i}=await t.params,s=await e.json().catch(()=>null),o=s?.ticket?.trim(),l=s?.comment?.trim(),u=s?.author?.trim()||"unknown";if(!o)return v.NextResponse.json({error:"Missing ticket."},{status:400});if(!l)return v.NextResponse.json({error:"Comment cannot be empty."},{status:400});if(l.length>1e4)return v.NextResponse.json({error:"Comment is too long."},{status:400});let d=await (0,y.resolveTicket)(i,o);if(!d)return v.NextResponse.json({error:"Ticket not found."},{status:404});let c=(n=(r={timestamp:new Date().toISOString().replace("T"," ").replace(/\.\d{3}Z$/," UTC"),author:u,body:l}).body.trim().replace(/\r\n/g,"\n").split("\n").map(e=>` ${e}`).join("\n"),a=r.author?.trim()||"unknown",`
|
|
2
2
|
- **${r.timestamp}** — ${a}:
|
|
3
3
|
${n}
|
|
4
4
|
`),p=R.default.join(R.default.dirname(d.file),`.${R.default.basename(d.file)}.comment.lock`);return await C(p,async()=>{let e=await g.default.readFile(d.file,"utf8"),t=function(e,t){let r=/^## Comments\s*$/gim.exec(e);if(!r)return b(e)+t;let n=r.index+r[0].length,a=e.slice(n).search(/^##\s+/m);if(-1===a)return e.replace(/\s*$/,"")+t+"\n";let i=n+a;return e.slice(0,i).replace(/\s*$/,"")+t+"\n\n"+e.slice(i).replace(/^\s+/,"")}(b(e),c),r=`${d.file}.tmp`;await g.default.writeFile(r,t,"utf8"),await g.default.rename(r,d.file)}),v.NextResponse.json({ok:!0})}catch(e){return v.NextResponse.json({error:(0,E.errorMessage)(e)},{status:500})}}e.s(["POST",()=>T],45503);var A=e.i(45503);let _=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/teams/[teamId]/tickets/comment/route",pathname:"/api/teams/[teamId]/tickets/comment",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/teams/[teamId]/tickets/comment/route.ts",nextConfigOutput:"standalone",userland:A}),{workAsyncStorage:I,workUnitAsyncStorage:N,serverHooks:j}=_;function O(){return(0,n.patchFetch)({workAsyncStorage:I,workUnitAsyncStorage:N})}async function P(e,t,n){_.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/teams/[teamId]/tickets/comment/route";g=g.replace(/\/index$/,"")||"/";let R=await _.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:v,params:E,nextConfig:y,parsedUrl:k,isDraftMode:C,prerenderManifest:b,routerServerContext:T,isOnDemandRevalidate:A,revalidateOnlyGenerated:I,resolvedPathname:N,clientReferenceManifest:j,serverActionsManifest:O}=R,P=(0,o.normalizeAppPath)(g),S=!!(b.dynamicRoutes[P]||b.routes[N]),$=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,k,!1):t.end("This page could not be found"),null);if(S&&!C){let e=!!b.routes[N],t=b.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await $();throw new w.NoFallbackError}}let D=null;!S||_.isDev||C||(D="/index"===(D=N)?"/":D);let q=!0===_.isDev||!S,M=S&&!q;O&&j&&(0,s.setManifestsSingleton)({page:g,clientReferenceManifest:j,serverActionsManifest:O});let U=e.method||"GET",H=(0,i.getTracer)(),K=H.getActiveScopeSpan(),F={params:E,prerenderManifest:b,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:q,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>_.onRequestError(e,t,n,a,T)},sharedContext:{buildId:v}},W=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),L=u.NextRequestAdapter.fromNodeNextRequest(W,(0,u.signalFromNodeResponse)(t));try{let s=async e=>_.handle(L,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==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=`${U} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${U} ${g}`)}),o=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var i,l;let u=async({previousCacheEntry:r})=>{try{if(!o&&A&&I&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await s(a);e.fetchMetrics=F.renderOpts.fetchMetrics;let l=F.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let u=F.renderOpts.collectedTags;if(!S)return await (0,p.sendResponse)(W,B,i,F.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(i.headers);u&&(t[h.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=h.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,n=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=h.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await _.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:A})},!1,T),t}},d=await _.handleResponse({req:e,nextConfig:y,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:I,responseGenerator:u,waitUntil:n.waitUntil,isMinimalMode:o});if(!S)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==x.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",A?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),C&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let w=(0,m.fromNodeOutgoingHttpHeaders)(d.value.headers);return o&&S||w.delete(h.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||w.get("Cache-Control")||w.set("Cache-Control",(0,f.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(W,B,new Response(d.value.body,{headers:w,status:d.value.status||200})),null};K?await l(K):await H.withPropagatedContext(e.headers,()=>H.trace(d.BaseServerSpan.handleRequest,{spanName:`${U} ${g}`,kind:i.SpanKind.SERVER,attributes:{"http.method":U,"http.target":e.url}},l))}catch(t){if(t instanceof w.NoFallbackError||await _.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:A})},!1,T),S)throw t;return await (0,p.sendResponse)(W,B,new Response(null,{status:500})),null}}e.s(["handler",()=>P,"patchFetch",()=>O,"routeModule",()=>_,"serverHooks",()=>j,"workAsyncStorage",()=>I,"workUnitAsyncStorage",()=>N],88177)}];
|
|
5
5
|
|
|
6
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
6
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__9e96d37b._.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
module.exports=[70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},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"))},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"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},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"))},
|
|
1
|
+
module.exports=[70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},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"))},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"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},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"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},12714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},60526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},7367,e=>{"use strict";var t=e.i(12714),r=e.i(60526),a=e.i(50227);async function n(){let e=a.default.join(r.default.homedir(),".openclaw","openclaw.json");return JSON.parse(await t.default.readFile(e,"utf8"))}async function s(){let e=await n(),t=e.agents?.defaults?.workspace;if(!t)throw Error("agents.defaults.workspace is not set in ~/.openclaw/openclaw.json");return t}async function i(){let e=await s();return a.default.join(e,"recipes")}async function o(){let e=await s(),r=a.default.join(e,"goals");try{if((await t.default.stat(r)).isDirectory())return r}catch{}return a.default.join(e,"notes","goals")}async function l(e){let t=r.default.homedir();if(!t)throw Error("Could not resolve home directory");return a.default.join(t,".openclaw",`workspace-${e}`)}function u(e,t){return"main"===t?a.default.resolve(e):a.default.resolve(e,"..",`workspace-${t}`)}function d(e){let t=e.replace(/\\/g,"/");if(!t||t.startsWith("/")||t.includes(".."))throw Error("Invalid file name");return t}async function c(){let e=await n(),t=e.plugins?.installs?.recipes?.installPath||e.plugins?.installs?.recipes?.sourcePath||e.plugins?.load?.paths?.[0];if(!t)throw Error("Could not determine recipes plugin install path from ~/.openclaw/openclaw.json");return a.default.join(t,"recipes","default")}e.s(["assertSafeRelativeFileName",()=>d,"getBuiltinRecipesDir",()=>c,"getTeamWorkspaceDir",()=>l,"getWorkspaceDir",()=>s,"getWorkspaceGoalsDir",()=>o,"getWorkspaceRecipesDir",()=>i,"readOpenClawConfig",()=>n,"teamDirFromBaseWorkspace",()=>u])},40317,e=>{"use strict";function t(e){return e instanceof Error?e.message:String(e)}e.s(["errorMessage",()=>t])},5365,(e,t,r)=>{t.exports=e.x("process",()=>require("process"))},874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},25092,e=>{"use strict";var t=e.i(12714),r=e.i(50227),a=e.i(89171),n=e.i(23008),s=e.i(40317),i=e.i(7367);let o=/^[a-z0-9][a-z0-9-]{1,63}$/;function l(e){let t=(0,s.errorMessage)(e),r=/Invalid goal id|Path traversal/.test(t)?400:500;return a.NextResponse.json({error:t},{status:r})}function u(e){if(e.startsWith("---\n")){let t=e.indexOf("\n---\n",4);if(-1!==t){let r=e.slice(4,t+1),a=e.slice(t+5);return{fm:n.default.parse(r)??{},body:a}}}return{fm:{},body:e}}function d(e,t,r){let a=new Date().toISOString(),n=e&&"object"==typeof e?e:{},s=String(n.id??t).trim(),i=String(n.title??r??s).trim()||s,o=String(n.status??"planned").trim(),l=Array.isArray(n.tags)?n.tags.map(String):[];return{id:s,title:i,status:"active"===o||"done"===o?o:"planned",tags:l,teams:Array.isArray(n.teams)?n.teams.map(String):[],updatedAt:String(n.updatedAt??a)}}async function c(){let e=await (0,i.getWorkspaceGoalsDir)();return await t.default.mkdir(e,{recursive:!0}),e}async function p(e){if(!o.test(e))throw Error(`Invalid goal id "${e}". Use 2-64 chars: lowercase letters, numbers, hyphens. Example: "increase-trial-activation".`);let t=await c(),a=r.default.join(t,`${e}.md`),n=r.default.resolve(t)+r.default.sep;if(!r.default.resolve(a).startsWith(n))throw Error("Path traversal rejected");return{root:t,full:a}}async function f(){let e=await c(),a=(await t.default.readdir(e)).filter(e=>e.endsWith(".md")),n=[];for(let s of a){let a=r.default.join(e,s),i=await t.default.readFile(a,"utf8"),o=s.replace(/\.md$/,""),{fm:l}=u(i),c=d(l,o,o);n.push({...c,filename:s})}let s={active:0,planned:1,done:2};return n.sort((e,t)=>{let r=s[e.status],a=s[t.status];return r!==a?r-a:String(t.updatedAt).localeCompare(String(e.updatedAt))}),n}async function g(e){let{full:r}=await p(e);try{let a=await t.default.readFile(r,"utf8"),{fm:n,body:s}=u(a),i=n&&"object"==typeof n?n:{};return{frontmatter:d(n,e,String(i.title??e)),body:s,raw:a}}catch(e){if("object"==typeof e&&e&&"ENOENT"===e.code)return null;throw e}}async function h(e){let{id:r}=e,{full:a}=await p(r),s=new Date().toISOString(),i={id:r,title:e.title,status:e.status??"planned",tags:e.tags??[],teams:e.teams??[],updatedAt:s},o=`---
|
|
2
2
|
${n.default.stringify(i).trim()}
|
|
3
3
|
---
|
|
4
4
|
|
|
5
5
|
${(e.body??"").trim()}
|
|
6
|
-
`;return await t.default.writeFile(a,o,"utf8"),{frontmatter:i,raw:o}}async function w(e){let{full:r}=await p(e);try{return await t.default.unlink(r),{ok:!0}}catch(e){if("object"==typeof e&&e&&"ENOENT"===e.code)return{ok:!1,reason:"not_found"};throw e}}e.s(["deleteGoal",()=>w,"goalErrorResponse",()=>l,"listGoals",()=>f,"readGoal",()=>g,"writeGoal",()=>h])},41314,e=>{"use strict";var t=e.i(47909),r=e.i(74017),a=e.i(96250),n=e.i(59756),s=e.i(61916),i=e.i(74677),o=e.i(69741),l=e.i(16795),u=e.i(87718),d=e.i(95169),c=e.i(47587),p=e.i(66012),f=e.i(70101),g=e.i(
|
|
6
|
+
`;return await t.default.writeFile(a,o,"utf8"),{frontmatter:i,raw:o}}async function w(e){let{full:r}=await p(e);try{return await t.default.unlink(r),{ok:!0}}catch(e){if("object"==typeof e&&e&&"ENOENT"===e.code)return{ok:!1,reason:"not_found"};throw e}}e.s(["deleteGoal",()=>w,"goalErrorResponse",()=>l,"listGoals",()=>f,"readGoal",()=>g,"writeGoal",()=>h])},41314,e=>{"use strict";var t=e.i(47909),r=e.i(74017),a=e.i(96250),n=e.i(59756),s=e.i(61916),i=e.i(74677),o=e.i(69741),l=e.i(16795),u=e.i(87718),d=e.i(95169),c=e.i(47587),p=e.i(66012),f=e.i(70101),g=e.i(54468),h=e.i(10372),w=e.i(93695);e.i(52474);var m=e.i(220),x=e.i(89171),y=e.i(25092);async function R(e,{params:t}){let{id:r}=await t;try{let e=await (0,y.readGoal)(r);if(!e)return x.NextResponse.json({error:"Not found"},{status:404});return x.NextResponse.json({goal:e.frontmatter,body:e.body,raw:e.raw})}catch(e){return(0,y.goalErrorResponse)(e)}}async function v(e,{params:t}){let{id:r}=await t;try{let t=await e.json(),a=String(t?.title??"").trim();if(!a)return x.NextResponse.json({error:"title is required"},{status:400});let n=await (0,y.writeGoal)({id:r,title:a,status:t?.status,tags:Array.isArray(t?.tags)?t.tags:[],teams:Array.isArray(t?.teams)?t.teams:[],body:String(t?.body??"")});return x.NextResponse.json({goal:n.frontmatter})}catch(e){return(0,y.goalErrorResponse)(e)}}async function E(e,{params:t}){let{id:r}=await t;try{if(!(await (0,y.deleteGoal)(r)).ok)return x.NextResponse.json({error:"Not found"},{status:404});return x.NextResponse.json({ok:!0})}catch(e){return(0,y.goalErrorResponse)(e)}}e.s(["DELETE",()=>E,"GET",()=>R,"PUT",()=>v],34015);var j=e.i(34015);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/goals/[id]/route",pathname:"/api/goals/[id]",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/goals/[id]/route.ts",nextConfigOutput:"standalone",userland:j}),{workAsyncStorage:b,workUnitAsyncStorage:C,serverHooks:N}=A;function k(){return(0,a.patchFetch)({workAsyncStorage:b,workUnitAsyncStorage:C})}async function S(e,t,a){A.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let x="/api/goals/[id]/route";x=x.replace(/\/index$/,"")||"/";let y=await A.prepare(e,t,{srcPage:x,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:R,params:v,nextConfig:E,parsedUrl:j,isDraftMode:b,prerenderManifest:C,routerServerContext:N,isOnDemandRevalidate:k,revalidateOnlyGenerated:S,resolvedPathname:T,clientReferenceManifest:O,serverActionsManifest:P}=y,q=(0,o.normalizeAppPath)(x),D=!!(C.dynamicRoutes[q]||C.routes[T]),_=async()=>((null==N?void 0:N.render404)?await N.render404(e,t,j,!1):t.end("This page could not be found"),null);if(D&&!b){let e=!!C.routes[T],t=C.dynamicRoutes[q];if(t&&!1===t.fallback&&!e){if(E.experimental.adapterPath)return await _();throw new w.NoFallbackError}}let I=null;!D||A.isDev||b||(I="/index"===(I=T)?"/":I);let U=!0===A.isDev||!D,H=D&&!U;P&&O&&(0,i.setManifestsSingleton)({page:x,clientReferenceManifest:O,serverActionsManifest:P});let $=e.method||"GET",F=(0,s.getTracer)(),M=F.getActiveScopeSpan(),G={params:v,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:E.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>A.onRequestError(e,t,a,n,N)},sharedContext:{buildId:R}},W=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),B=u.NextRequestAdapter.fromNodeNextRequest(W,(0,u.signalFromNodeResponse)(t));try{let i=async e=>A.handle(B,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==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 a=r.get("next.route");if(a){let t=`${$} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${$} ${x}`)}),o=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var s,l;let u=async({previousCacheEntry:r})=>{try{if(!o&&k&&S&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(n);e.fetchMetrics=G.renderOpts.fetchMetrics;let l=G.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let u=G.renderOpts.collectedTags;if(!D)return await (0,p.sendResponse)(W,K,s,G.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[h.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=h.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=h.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:x,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:k})},!1,N),t}},d=await A.handleResponse({req:e,nextConfig:E,cacheKey:I,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:k,revalidateOnlyGenerated:S,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:o});if(!D)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",k?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let w=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return o&&D||w.delete(h.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||w.get("Cache-Control")||w.set("Cache-Control",(0,g.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(W,K,new Response(d.value.body,{headers:w,status:d.value.status||200})),null};M?await l(M):await F.withPropagatedContext(e.headers,()=>F.trace(d.BaseServerSpan.handleRequest,{spanName:`${$} ${x}`,kind:s.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},l))}catch(t){if(t instanceof w.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:q,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:k})},!1,N),D)throw t;return await (0,p.sendResponse)(W,K,new Response(null,{status:500})),null}}e.s(["handler",()=>S,"patchFetch",()=>k,"routeModule",()=>A,"serverHooks",()=>N,"workAsyncStorage",()=>b,"workUnitAsyncStorage",()=>C],41314)}];
|
|
7
7
|
|
|
8
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
8
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__aba68368._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[40317,e=>{"use strict";function t(e){return e instanceof Error?e.message:String(e)}e.s(["errorMessage",()=>t])},74533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},12057,(e,t,r)=>{t.exports=e.x("node:util",()=>require("node:util"))},59494,e=>{"use strict";function t(){let e=globalThis.__clawkitchen_api;if(!e)throw Error("ClawKitchen: OpenClaw plugin API not available. (This should only happen if Kitchen is started outside the gateway process.)");return e}e.s(["getKitchenApi",()=>t])},5003,e=>{"use strict";var t=e.i(59494),r=e.i(74533);let n=(0,e.i(12057).promisify)(r.execFile);function a(e){return"string"==typeof e.stdout?e.stdout:e.stdout&&"object"==typeof e.stdout&&"toString"in e.stdout?String(e.stdout.toString()):""}function s(e,t){return"string"==typeof e.stderr?e.stderr:e.stderr&&"object"==typeof e.stderr&&"toString"in e.stderr?String(e.stderr.toString()):"string"==typeof e.message?e.message:String(t)}function o(e){let t=e.trim();if(!t)return e;let r=t[0];if("["===r||"{"===r||'"'===r)return e;let n=t.split("\n"),a=n.findIndex(e=>/^\s*[[\{"]/.test(e));if(a>0){let e=n.slice(a).join("\n");try{return JSON.parse(e),e}catch{}}return e}async function i(e,t={}){let{sanitizeStdout:r=!0}=t;try{process.platform;let t=await n("openclaw",e,{timeout:12e4,windowsHide:!0,maxBuffer:0xa00000}),a=String(t.stdout??"");return{ok:!0,exitCode:0,stdout:r?o(a):a,stderr:String(t.stderr??"")}}catch(t){let e="number"==typeof t.code?t.code:1;return{ok:!1,exitCode:e,stdout:a(t),stderr:s(t,t)}}}function u(e){let t=e.trim();if(!t)return null;try{return JSON.parse(t)}catch{}let r=t.split("\n"),n=r.findIndex(e=>/^\s*[[\{]/.test(e));if(n>=0){let e=r.slice(n).join("\n");try{return JSON.parse(e)}catch{}}for(let e=r.length-1;e>=0;e--)if(/^\s*[\]}]/.test(r[e])){for(let t=e;t>=0;t--)if(/^\s*[[\{]/.test(r[t]))try{return JSON.parse(r.slice(t,e+1).join("\n"))}catch{}}return null}async function l(e){return i(e,{sanitizeStdout:!1})}async function d(e){if("cron"===e[0]||"recipes"===e[0]&&"workflows"===e[1]&&["runner-once","runner-tick","worker-tick"].includes(e[2]))return i(e);let r=(0,t.getKitchenApi)();try{let t=await r.runtime.system.runCommandWithTimeout(["openclaw",...e],{timeoutMs:12e4}),n=o(String(t.stdout??"")),a=String(t.stderr??""),s="number"==typeof t.exitCode?t.exitCode:"number"==typeof t.code?t.code:"number"==typeof t.status?t.status:0;if(0!==s)return{ok:!1,exitCode:s,stdout:n,stderr:a};return{ok:!0,exitCode:0,stdout:n,stderr:a}}catch(t){let e="number"==typeof t.code?t.code:1;return{ok:!1,exitCode:e,stdout:a(t),stderr:s(t,t)}}}e.s(["extractJson",()=>u,"runOpenClaw",()=>d,"runOpenClawRaw",()=>l])},70406,(e,t,r)=>{t.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},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"))},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"))},24725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},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"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},12714,(e,t,r)=>{t.exports=e.x("node:fs/promises",()=>require("node:fs/promises"))},60526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},7367,e=>{"use strict";var t=e.i(12714),r=e.i(60526),n=e.i(50227);async function a(){let e=n.default.join(r.default.homedir(),".openclaw","openclaw.json");return JSON.parse(await t.default.readFile(e,"utf8"))}async function s(){let e=await a(),t=e.agents?.defaults?.workspace;if(!t)throw Error("agents.defaults.workspace is not set in ~/.openclaw/openclaw.json");return t}async function o(){let e=await s();return n.default.join(e,"recipes")}async function i(){let e=await s(),r=n.default.join(e,"goals");try{if((await t.default.stat(r)).isDirectory())return r}catch{}return n.default.join(e,"notes","goals")}async function u(e){let t=r.default.homedir();if(!t)throw Error("Could not resolve home directory");return n.default.join(t,".openclaw",`workspace-${e}`)}function l(e,t){return"main"===t?n.default.resolve(e):n.default.resolve(e,"..",`workspace-${t}`)}function d(e){let t=e.replace(/\\/g,"/");if(!t||t.startsWith("/")||t.includes(".."))throw Error("Invalid file name");return t}async function c(){let e=await a(),t=e.plugins?.installs?.recipes?.installPath||e.plugins?.installs?.recipes?.sourcePath||e.plugins?.load?.paths?.[0];if(!t)throw Error("Could not determine recipes plugin install path from ~/.openclaw/openclaw.json");return n.default.join(t,"recipes","default")}e.s(["assertSafeRelativeFileName",()=>d,"getBuiltinRecipesDir",()=>c,"getTeamWorkspaceDir",()=>u,"getWorkspaceDir",()=>s,"getWorkspaceGoalsDir",()=>i,"getWorkspaceRecipesDir",()=>o,"readOpenClawConfig",()=>a,"teamDirFromBaseWorkspace",()=>l])},85067,e=>{"use strict";var t=e.i(12714),r=e.i(50227),n=e.i(89171),a=e.i(5003);async function s(e){let{stdout:t}=await (0,a.runOpenClaw)(["agents","list","--json"]),r=JSON.parse(t).find(t=>t.id===e);if(!r?.workspace)throw Error(`Agent workspace not found for ${e}`);return r.workspace}var o=e.i(40317),i=e.i(7367);async function u(e){let t;try{t=await e.json()}catch{return n.NextResponse.json({ok:!1,error:"Invalid JSON"},{status:400})}return{body:t&&"object"==typeof t?t:{}}}function l(e){let t=Object.fromEntries(Object.entries(e).filter(([e])=>"ok"!==e));return n.NextResponse.json({ok:!0,...t})}async function d(e){try{return l(await e())}catch(e){return n.NextResponse.json({ok:!1,error:(0,o.errorMessage)(e)},{status:500})}}function c(e,t,r){let a=t.stdout?.trim(),s=t.stderr?.trim();return n.NextResponse.json({ok:!1,error:s||a||`openclaw ${e.join(" ")} failed (exit=${t.exitCode})`,stdout:t.stdout,stderr:t.stderr,...r},{status:500})}async function p(e){if(!e)return n.NextResponse.json({ok:!1,error:"teamId is required"},{status:400});let t=await (0,i.readOpenClawConfig)(),r=String(t.agents?.defaults?.workspace??"").trim();if(!r)return n.NextResponse.json({ok:!1,error:"agents.defaults.workspace not set"},{status:500});let a=(0,i.teamDirFromBaseWorkspace)(r,e);return{teamId:e,teamDir:a}}async function f(e){let{searchParams:t}=new URL(e.url);return p(String(t.get("teamId")??"").trim())}async function m(e,t){let r=await f(e);return r instanceof n.NextResponse?r:t(r)}async function g(e){return p(String(e.teamId??"").trim())}async function h(e){let{searchParams:t}=new URL(e.url);return w(String(t.get("agentId")??"").trim())}async function x(e){return w(String(e.agentId??"").trim())}async function w(e){if(!e)return n.NextResponse.json({ok:!1,error:"agentId is required"},{status:400});try{let t=await s(e);return{agentId:e,ws:t}}catch(e){return n.NextResponse.json({ok:!1,error:(0,o.errorMessage)(e)},{status:404})}}async function y(e,n){return Promise.all(n.map(async n=>{let a=r.default.join(e,n.name);try{let e=await t.default.stat(a);return{name:n.name,required:n.required,rationale:n.rationale,path:a,missing:!1,size:e.size,updatedAtMs:e.mtimeMs}}catch{return{name:n.name,required:n.required,rationale:n.rationale,path:a,missing:!0}}}))}e.s(["getAgentContextFromBody",()=>x,"getAgentContextFromQuery",()=>h,"getTeamContextFromBody",()=>g,"getTeamContextFromQuery",()=>f,"installSkillErrorResponse",()=>c,"jsonOkRest",()=>l,"listWorkspaceFiles",()=>y,"parseJsonBody",()=>u,"withStorageError",()=>d,"withTeamContextFromQuery",()=>m],85067)},77155,e=>{"use strict";var t=e.i(47909),r=e.i(74017),n=e.i(96250),a=e.i(59756),s=e.i(61916),o=e.i(74677),i=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),m=e.i(54468),g=e.i(10372),h=e.i(93695);e.i(52474);var x=e.i(220),w=e.i(12714),y=e.i(50227),R=e.i(89171),v=e.i(85067);async function k(e){return(0,v.withTeamContextFromQuery)(e,async({teamId:e,teamDir:t})=>{let r=y.default.join(t,"team.json");try{let n=await w.default.readFile(r,"utf8"),a=JSON.parse(n);return R.NextResponse.json({ok:!0,teamId:e,teamDir:t,metaPath:r,meta:a})}catch{return R.NextResponse.json({ok:!0,teamId:e,teamDir:t,metaPath:r,meta:null,missing:!0})}})}async function C(e){let t=await e.json(),r=await (0,v.getTeamContextFromBody)(t);if(r instanceof R.NextResponse)return r;let{teamId:n,teamDir:a}=r,s=String(t.recipeId??"").trim(),o="string"==typeof t.recipeName?t.recipeName:"";if(!s)return R.NextResponse.json({ok:!1,error:"recipeId is required"},{status:400});let i=y.default.join(a,"team.json"),u={teamId:n,recipeId:s,recipeName:o,attachedAt:new Date().toISOString()};return await w.default.mkdir(a,{recursive:!0}),await w.default.writeFile(i,JSON.stringify(u,null,2)+"\n","utf8"),R.NextResponse.json({ok:!0,teamId:n,teamDir:a,metaPath:i,meta:u})}e.s(["GET",()=>k,"POST",()=>C],14566);var j=e.i(14566);let S=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/teams/meta/route",pathname:"/api/teams/meta",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/src/app/api/teams/meta/route.ts",nextConfigOutput:"standalone",userland:j}),{workAsyncStorage:E,workUnitAsyncStorage:N,serverHooks:O}=S;function b(){return(0,n.patchFetch)({workAsyncStorage:E,workUnitAsyncStorage:N})}async function A(e,t,n){S.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/teams/meta/route";w=w.replace(/\/index$/,"")||"/";let y=await S.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:R,params:v,nextConfig:k,parsedUrl:C,isDraftMode:j,prerenderManifest:E,routerServerContext:N,isOnDemandRevalidate:O,revalidateOnlyGenerated:b,resolvedPathname:A,clientReferenceManifest:T,serverActionsManifest:q}=y,I=(0,i.normalizeAppPath)(w),P=!!(E.dynamicRoutes[I]||E.routes[A]),_=async()=>((null==N?void 0:N.render404)?await N.render404(e,t,C,!1):t.end("This page could not be found"),null);if(P&&!j){let e=!!E.routes[A],t=E.dynamicRoutes[I];if(t&&!1===t.fallback&&!e){if(k.experimental.adapterPath)return await _();throw new h.NoFallbackError}}let F=null;!P||S.isDev||j||(F="/index"===(F=A)?"/":F);let D=!0===S.isDev||!P,H=P&&!D;q&&T&&(0,o.setManifestsSingleton)({page:w,clientReferenceManifest:T,serverActionsManifest:q});let M=e.method||"GET",U=(0,s.getTracer)(),$=U.getActiveScopeSpan(),B={params:v,prerenderManifest:E,renderOpts:{experimental:{authInterrupts:!!k.experimental.authInterrupts},cacheComponents:!!k.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:k.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>S.onRequestError(e,t,n,a,N)},sharedContext:{buildId:R}},K=new u.NodeNextRequest(e),J=new u.NodeNextResponse(t),W=l.NextRequestAdapter.fromNodeNextRequest(K,(0,l.signalFromNodeResponse)(t));try{let o=async e=>S.handle(W,B).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=U.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=`${M} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${w}`)}),i=!!(0,a.getRequestMeta)(e,"minimalMode"),u=async a=>{var s,u;let l=async({previousCacheEntry:r})=>{try{if(!i&&O&&b&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(a);e.fetchMetrics=B.renderOpts.fetchMetrics;let u=B.renderOpts.pendingWaitUntil;u&&n.waitUntil&&(n.waitUntil(u),u=void 0);let l=B.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(K,J,s,B.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.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!==B.renderOpts.collectedRevalidate&&!(B.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&B.renderOpts.collectedRevalidate,n=void 0===B.renderOpts.collectedExpire||B.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:B.renderOpts.collectedExpire;return{value:{kind:x.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:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:O})},!1,N),t}},d=await S.handleResponse({req:e,nextConfig:k,cacheKey:F,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:E,isRoutePPREnabled:!1,isOnDemandRevalidate:O,revalidateOnlyGenerated:b,responseGenerator:l,waitUntil:n.waitUntil,isMinimalMode:i});if(!P)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==x.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});i||t.setHeader("x-nextjs-cache",O?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),j&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&P||h.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,m.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(K,J,new Response(d.value.body,{headers:h,status:d.value.status||200})),null};$?await u($):await U.withPropagatedContext(e.headers,()=>U.trace(d.BaseServerSpan.handleRequest,{spanName:`${M} ${w}`,kind:s.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},u))}catch(t){if(t instanceof h.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:I,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:O})},!1,N),P)throw t;return await (0,p.sendResponse)(K,J,new Response(null,{status:500})),null}}e.s(["handler",()=>A,"patchFetch",()=>b,"routeModule",()=>S,"serverHooks",()=>O,"workAsyncStorage",()=>E,"workUnitAsyncStorage",()=>N],77155)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__aed4e4f2._.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/errors.ts","../../../src/lib/kitchen-api.ts","../../../src/lib/openclaw.ts","../../../src/lib/paths.ts","../../../src/lib/api-route-helpers.ts","../../../src/lib/agents.ts","../../../node_modules/next/dist/esm/build/templates/app-route.js","../../../src/app/api/teams/meta/route.ts"],"sourcesContent":["/**\n * Extracts a string message from an unknown error value.\n * Used consistently across API routes and client components.\n */\nexport function errorMessage(e: unknown): string {\n return e instanceof Error ? e.message : String(e);\n}\n","// NOTE: This file is compiled by Next.js.\n// Do not import `openclaw/plugin-sdk` here (it is provided by the gateway runtime, not as an npm dep).\n\ntype KitchenApi = {\n config: unknown;\n runtime: {\n system: { runCommandWithTimeout: (argv: string[], opts: { timeoutMs: number }) => Promise<{ stdout?: string; stderr?: string }> };\n };\n};\n\nexport function getKitchenApi(): KitchenApi {\n const api = (globalThis as unknown as { __clawkitchen_api?: KitchenApi }).__clawkitchen_api;\n if (!api) {\n throw new Error(\n \"ClawKitchen: OpenClaw plugin API not available. (This should only happen if Kitchen is started outside the gateway process.)\",\n );\n }\n return api;\n}\n","import { getKitchenApi } from \"@/lib/kitchen-api\";\nimport { execFile } from \"node:child_process\";\nimport { promisify } from \"node:util\";\n\nconst execFileAsync = promisify(execFile);\n\nexport type OpenClawExecResult = {\n ok: boolean;\n exitCode: number;\n stdout: string;\n stderr: string;\n};\n\nfunction extractStdout(err: { stdout?: unknown }): string {\n if (typeof err.stdout === \"string\") return err.stdout;\n if (err.stdout && typeof err.stdout === \"object\" && \"toString\" in err.stdout) {\n return String((err.stdout as { toString: () => string }).toString());\n }\n return \"\";\n}\n\nfunction resolveExitCode(res: { exitCode?: unknown; code?: unknown; status?: unknown }): number {\n if (typeof res.exitCode === \"number\") return res.exitCode;\n if (typeof res.code === \"number\") return res.code;\n if (typeof res.status === \"number\") return res.status;\n return 0;\n}\n\nfunction extractStderr(err: { stderr?: unknown; message?: unknown }, fallback: unknown): string {\n if (typeof err.stderr === \"string\") return err.stderr;\n if (err.stderr && typeof err.stderr === \"object\" && \"toString\" in err.stderr) {\n return String((err.stderr as { toString: () => string }).toString());\n }\n if (typeof err.message === \"string\") return err.message;\n return String(fallback);\n}\n\n/**\n * Strip non-JSON diagnostic lines from stdout.\n *\n * OpenClaw may print plugin/doctor/diagnostic lines to stdout before the\n * actual JSON payload (e.g. \"[doctor] ...\", \"[plugins] ...\", \"🦞 OpenClaw ...\").\n * This breaks callers that do JSON.parse(stdout).\n *\n * If stdout looks like it contains a JSON payload with leading noise, strip the\n * noise lines. Otherwise return as-is (non-JSON commands like `config get` may\n * return plain text).\n */\nfunction sanitizeStdout(raw: string): string {\n const trimmed = raw.trim();\n if (!trimmed) return raw;\n\n // Fast path: already starts with JSON\n const firstChar = trimmed[0];\n if (firstChar === \"[\" || firstChar === \"{\" || firstChar === '\"') return raw;\n\n // Look for the first line starting with a JSON token\n const lines = trimmed.split(\"\\n\");\n const jsonStartIdx = lines.findIndex((l) => /^\\s*[[\\{\"]/.test(l));\n if (jsonStartIdx > 0) {\n // Verify the remainder is valid JSON before stripping\n const candidate = lines.slice(jsonStartIdx).join(\"\\n\");\n try {\n JSON.parse(candidate);\n return candidate;\n } catch {\n // Not valid JSON after stripping — return original\n }\n }\n\n return raw;\n}\n\nasync function runOpenClawLocal(args: string[], options: { sanitizeStdout?: boolean } = {}): Promise<OpenClawExecResult> {\n const { sanitizeStdout: shouldSanitize = true } = options;\n \n try {\n const isWindows = process.platform === \"win32\";\n const res = await execFileAsync(\"openclaw\", args, {\n timeout: 120000,\n windowsHide: true,\n maxBuffer: 10 * 1024 * 1024,\n // Windows requires shell:true to resolve executables on PATH via PATHEXT.\n // Without it, execFile throws ENOENT even when openclaw is installed globally.\n ...(isWindows ? { shell: true } : {}),\n });\n\n const rawStdout = String(res.stdout ?? \"\");\n \n return {\n ok: true,\n exitCode: 0,\n stdout: shouldSanitize ? sanitizeStdout(rawStdout) : rawStdout,\n stderr: String(res.stderr ?? \"\"),\n };\n } catch (e: unknown) {\n const err = e as { code?: unknown; stdout?: unknown; stderr?: unknown; message?: unknown };\n const exitCode = typeof err.code === \"number\" ? err.code : 1;\n const stdout = extractStdout(err);\n const stderr = extractStderr(err, e);\n return { ok: false, exitCode, stdout, stderr };\n }\n}\n\n/**\n * Extract a JSON payload from stdout that may contain non-JSON diagnostic lines\n * (e.g. [doctor], [plugins], [recipes] log lines before the actual JSON).\n * Returns the parsed value or null if no JSON found.\n */\nexport function extractJson<T = unknown>(stdout: string): T | null {\n const trimmed = stdout.trim();\n if (!trimmed) return null;\n\n // Fast path: pure JSON\n try {\n return JSON.parse(trimmed) as T;\n } catch {\n // fall through\n }\n\n // Find the first line starting with [ or { (JSON array/object)\n const lines = trimmed.split(\"\\n\");\n const jsonStartIdx = lines.findIndex((l) => /^\\s*[[\\{]/.test(l));\n if (jsonStartIdx >= 0) {\n const jsonSlice = lines.slice(jsonStartIdx).join(\"\\n\");\n try {\n return JSON.parse(jsonSlice) as T;\n } catch {\n // fall through\n }\n }\n\n // Last resort: find the last JSON block (scan from end)\n for (let i = lines.length - 1; i >= 0; i--) {\n if (/^\\s*[\\]}]/.test(lines[i])) {\n // Walk backward to find the matching open\n for (let j = i; j >= 0; j--) {\n if (/^\\s*[[\\{]/.test(lines[j])) {\n try {\n return JSON.parse(lines.slice(j, i + 1).join(\"\\n\")) as T;\n } catch {\n // continue searching\n }\n }\n }\n }\n }\n\n return null;\n}\n\n/**\n * Run OpenClaw without stdout sanitization (for raw text output like recipe markdown)\n */\nexport async function runOpenClawRaw(args: string[]): Promise<OpenClawExecResult> {\n // Always use local exec for raw content to avoid Kitchen runtime restrictions\n return runOpenClawLocal(args, { sanitizeStdout: false });\n}\n\nexport async function runOpenClaw(args: string[]): Promise<OpenClawExecResult> {\n // In some Kitchen runtime contexts, `api.runtime.system.runCommandWithTimeout`\n // is executed with a restricted allowlist that does not include the `cron` tool,\n // causing `openclaw cron ...` to fail with \"Tool not available: cron\".\n //\n // Cron routes need to work in the gateway-run Kitchen environment, so for cron\n // specifically we prefer a local exec (host OpenClaw).\n if (args[0] === \"cron\") return runOpenClawLocal(args);\n\n // Workflow runner/worker commands are long-running orchestration processes that\n // acquire locks and claims. The runtime command wrapper (runCommandWithTimeout)\n // has a 120s hard timeout that can kill these mid-execution, orphaning locks and\n // leaving runs stuck in waiting_workers. Route them through local exec instead.\n if (\n args[0] === \"recipes\" &&\n args[1] === \"workflows\" &&\n [\"runner-once\", \"runner-tick\", \"worker-tick\"].includes(args[2])\n ) {\n return runOpenClawLocal(args);\n }\n\n const api = getKitchenApi();\n try {\n const res = (await api.runtime.system.runCommandWithTimeout([\"openclaw\", ...args], { timeoutMs: 120000 })) as {\n stdout?: unknown;\n stderr?: unknown;\n exitCode?: unknown;\n code?: unknown;\n status?: unknown;\n };\n\n const stdout = sanitizeStdout(String(res.stdout ?? \"\"));\n const stderr = String(res.stderr ?? \"\");\n const exitCode = resolveExitCode(res);\n\n if (exitCode !== 0) return { ok: false, exitCode, stdout, stderr };\n return { ok: true, exitCode: 0, stdout, stderr };\n } catch (e: unknown) {\n const err = e as { code?: unknown; stdout?: unknown; stderr?: unknown; message?: unknown };\n const exitCode = typeof err.code === \"number\" ? err.code : 1;\n const stdout = extractStdout(err);\n const stderr = extractStderr(err, e);\n return { ok: false, exitCode, stdout, stderr };\n }\n}\n","import fs from \"node:fs/promises\";\nimport os from \"node:os\";\nimport path from \"node:path\";\n\ntype OpenClawConfig = {\n agents?: { defaults?: { workspace?: string } };\n gateway?: { port?: number; auth?: { token?: string } };\n tools?: {\n agentToAgent?: {\n enabled?: boolean;\n allow?: string[];\n };\n };\n plugins?: {\n installs?: { recipes?: { installPath?: string; sourcePath?: string } };\n load?: { paths?: string[] };\n };\n // OpenClaw message routing bindings (used for HITL approvals, etc.)\n bindings?: unknown[];\n};\n\nexport async function readOpenClawConfig(): Promise<OpenClawConfig> {\n const p = path.join(os.homedir(), \".openclaw\", \"openclaw.json\");\n const text = await fs.readFile(p, \"utf8\");\n return JSON.parse(text) as OpenClawConfig;\n}\n\nexport async function getWorkspaceDir() {\n const cfg = await readOpenClawConfig();\n const ws = cfg.agents?.defaults?.workspace;\n if (!ws) throw new Error(\"agents.defaults.workspace is not set in ~/.openclaw/openclaw.json\");\n return ws;\n}\n\nexport async function getWorkspaceRecipesDir() {\n const ws = await getWorkspaceDir();\n return path.join(ws, \"recipes\");\n}\n\nexport async function getWorkspaceGoalsDir() {\n const ws = await getWorkspaceDir();\n\n // Back-compat: some installs keep goals at <workspace>/goals.\n // Prefer that when present, otherwise fall back to <workspace>/notes/goals.\n const direct = path.join(ws, \"goals\");\n try {\n const st = await fs.stat(direct);\n if (st.isDirectory()) return direct;\n } catch {\n // ignore\n }\n\n return path.join(ws, \"notes\", \"goals\");\n}\n\nexport async function getTeamWorkspaceDir(teamId: string) {\n const home = os.homedir();\n if (!home) throw new Error(\"Could not resolve home directory\");\n return path.join(home, \".openclaw\", `workspace-${teamId}`);\n}\n\n/** Team workspace dir derived from agents.defaults.workspace (sibling: .. / workspace-{teamId}) */\nexport function teamDirFromBaseWorkspace(baseWorkspace: string, teamId: string) {\n // Special-case: treat \"main\" as the personal workspace (agents.defaults.workspace).\n // This lets Kitchen expose a selectable \"main\" scope without creating a separate\n // ~/.openclaw/workspace-main folder.\n if (teamId === \"main\") return path.resolve(baseWorkspace);\n return path.resolve(baseWorkspace, \"..\", `workspace-${teamId}`);\n}\n\n/** Rejects path traversal and empty names; returns normalized name. */\nexport function assertSafeRelativeFileName(name: string): string {\n const n = name.replace(/\\\\/g, \"/\");\n if (!n || n.startsWith(\"/\") || n.includes(\"..\")) throw new Error(\"Invalid file name\");\n return n;\n}\n\nexport async function getBuiltinRecipesDir() {\n const cfg = await readOpenClawConfig();\n const p =\n cfg.plugins?.installs?.recipes?.installPath ||\n cfg.plugins?.installs?.recipes?.sourcePath ||\n cfg.plugins?.load?.paths?.[0];\n if (!p) throw new Error(\"Could not determine recipes plugin install path from ~/.openclaw/openclaw.json\");\n return path.join(p, \"recipes\", \"default\");\n}\n","import fs from \"node:fs/promises\";\nimport path from \"node:path\";\nimport { NextResponse } from \"next/server\";\n\n/** Parses JSON body; returns 400 on parse error. */\nexport async function parseJsonBody(req: Request): Promise<{ body: Record<string, unknown> } | NextResponse> {\n let body: unknown;\n try {\n body = await req.json();\n } catch {\n return NextResponse.json({ ok: false, error: \"Invalid JSON\" }, { status: 400 });\n }\n const o = body && typeof body === \"object\" ? (body as Record<string, unknown>) : {};\n return { body: o };\n}\n\n/** Returns NextResponse.json({ ok: true, ...rest }) from a storage result with ok field. */\nexport function jsonOkRest<T extends { ok: boolean }>(r: T): NextResponse {\n const rest = Object.fromEntries(Object.entries(r as Record<string, unknown>).filter(([k]) => k !== \"ok\"));\n return NextResponse.json({ ok: true, ...rest });\n}\n\nimport { resolveAgentWorkspace } from \"@/lib/agents\";\nimport { errorMessage } from \"@/lib/errors\";\n\n/** Runs async storage fn and returns jsonOkRest on success, or 500 on error. */\nexport async function withStorageError<T extends { ok: boolean }>(\n fn: () => Promise<T>\n): Promise<NextResponse> {\n try {\n return jsonOkRest(await fn());\n } catch (err: unknown) {\n return NextResponse.json({ ok: false, error: errorMessage(err) }, { status: 500 });\n }\n}\nimport { readOpenClawConfig, teamDirFromBaseWorkspace } from \"@/lib/paths\";\n\nexport type TeamContext = { teamId: string; teamDir: string };\n\n/** Error response for install-skill openclaw failures. Use when runOpenClaw returns !ok. */\nexport function installSkillErrorResponse(\n args: string[],\n res: { stdout?: string; stderr?: string; exitCode?: number },\n extra?: Record<string, unknown>\n): NextResponse {\n const stdout = res.stdout?.trim();\n const stderr = res.stderr?.trim();\n return NextResponse.json(\n {\n ok: false,\n error: stderr || stdout || `openclaw ${args.join(\" \")} failed (exit=${res.exitCode})`,\n stdout: res.stdout,\n stderr: res.stderr,\n ...extra,\n },\n { status: 500 }\n );\n}\n\nasync function resolveTeamContext(teamId: string): Promise<TeamContext | NextResponse> {\n if (!teamId) return NextResponse.json({ ok: false, error: \"teamId is required\" }, { status: 400 });\n\n const cfg = await readOpenClawConfig();\n const baseWorkspace = String(cfg.agents?.defaults?.workspace ?? \"\").trim();\n if (!baseWorkspace) {\n return NextResponse.json({ ok: false, error: \"agents.defaults.workspace not set\" }, { status: 500 });\n }\n\n const teamDir = teamDirFromBaseWorkspace(baseWorkspace, teamId);\n return { teamId, teamDir };\n}\n\n/** Resolves teamId and teamDir from URL search params. Returns error response if invalid. */\nexport async function getTeamContextFromQuery(req: Request): Promise<TeamContext | NextResponse> {\n const { searchParams } = new URL(req.url);\n const teamId = String(searchParams.get(\"teamId\") ?? \"\").trim();\n return resolveTeamContext(teamId);\n}\n\n/** Runs handler with team context from query; returns error response if context invalid. */\nexport async function withTeamContextFromQuery(\n req: Request,\n handler: (ctx: TeamContext) => Promise<NextResponse>\n): Promise<NextResponse> {\n const ctx = await getTeamContextFromQuery(req);\n if (ctx instanceof NextResponse) return ctx;\n return handler(ctx);\n}\n\n/** Resolves teamId and teamDir from parsed body. Caller must parse req.json() first. */\nexport async function getTeamContextFromBody(body: { teamId?: string }): Promise<TeamContext | NextResponse> {\n const teamId = String(body.teamId ?? \"\").trim();\n return resolveTeamContext(teamId);\n}\n\nexport type AgentContext = { agentId: string; ws: string };\n\n/** Resolves agentId and workspace from URL search params. Returns error response if invalid. */\nexport async function getAgentContextFromQuery(req: Request): Promise<AgentContext | NextResponse> {\n const { searchParams } = new URL(req.url);\n const agentId = String(searchParams.get(\"agentId\") ?? \"\").trim();\n return resolveAgentContext(agentId);\n}\n\n/** Resolves agentId and workspace from parsed body. Caller must parse req.json() first. */\nexport async function getAgentContextFromBody(body: { agentId?: string }): Promise<AgentContext | NextResponse> {\n const agentId = String(body.agentId ?? \"\").trim();\n return resolveAgentContext(agentId);\n}\n\nasync function resolveAgentContext(agentId: string): Promise<AgentContext | NextResponse> {\n if (!agentId) return NextResponse.json({ ok: false, error: \"agentId is required\" }, { status: 400 });\n try {\n const ws = await resolveAgentWorkspace(agentId);\n return { agentId, ws };\n } catch (e: unknown) {\n return NextResponse.json({ ok: false, error: errorMessage(e) }, { status: 404 });\n }\n}\n\nexport type FileCandidate = { name: string; required: boolean; rationale: string };\n\n/** Lists workspace files with presence/size info. */\nexport async function listWorkspaceFiles(\n baseDir: string,\n candidates: FileCandidate[]\n): Promise<\n Array<{\n name: string;\n required: boolean;\n rationale: string;\n path: string;\n missing: boolean;\n size?: number;\n updatedAtMs?: number;\n }>\n> {\n return Promise.all(\n candidates.map(async (c) => {\n const p = path.join(baseDir, c.name);\n try {\n const st = await fs.stat(p);\n return {\n name: c.name,\n required: c.required,\n rationale: c.rationale,\n path: p,\n missing: false,\n size: st.size,\n updatedAtMs: st.mtimeMs,\n };\n } catch {\n return { name: c.name, required: c.required, rationale: c.rationale, path: p, missing: true };\n }\n })\n );\n}\n","import { runOpenClaw } from \"./openclaw\";\n\nexport type AgentListItem = {\n id: string;\n identityName?: string;\n workspace?: string;\n model?: string;\n isDefault?: boolean;\n};\n\nexport async function resolveAgentWorkspace(agentId: string): Promise<string> {\n const { stdout } = await runOpenClaw([\"agents\", \"list\", \"--json\"]);\n const list = JSON.parse(stdout) as AgentListItem[];\n const agent = list.find((a) => a.id === agentId);\n if (!agent?.workspace) throw new Error(`Agent workspace not found for ${agentId}`);\n return agent.workspace;\n}\n","import { AppRouteRouteModule } from \"next/dist/esm/server/route-modules/app-route/module.compiled\";\nimport { RouteKind } from \"next/dist/esm/server/route-kind\";\nimport { patchFetch as _patchFetch } from \"next/dist/esm/server/lib/patch-fetch\";\nimport { addRequestMeta, getRequestMeta } from \"next/dist/esm/server/request-meta\";\nimport { getTracer, SpanKind } from \"next/dist/esm/server/lib/trace/tracer\";\nimport { setManifestsSingleton } from \"next/dist/esm/server/app-render/manifests-singleton\";\nimport { normalizeAppPath } from \"next/dist/esm/shared/lib/router/utils/app-paths\";\nimport { NodeNextRequest, NodeNextResponse } from \"next/dist/esm/server/base-http/node\";\nimport { NextRequestAdapter, signalFromNodeResponse } from \"next/dist/esm/server/web/spec-extension/adapters/next-request\";\nimport { BaseServerSpan } from \"next/dist/esm/server/lib/trace/constants\";\nimport { getRevalidateReason } from \"next/dist/esm/server/instrumentation/utils\";\nimport { sendResponse } from \"next/dist/esm/server/send-response\";\nimport { fromNodeOutgoingHttpHeaders, toNodeOutgoingHttpHeaders } from \"next/dist/esm/server/web/utils\";\nimport { getCacheControlHeader } from \"next/dist/esm/server/lib/cache-control\";\nimport { INFINITE_CACHE, NEXT_CACHE_TAGS_HEADER } from \"next/dist/esm/lib/constants\";\nimport { NoFallbackError } from \"next/dist/esm/shared/lib/no-fallback-error.external\";\nimport { CachedRouteKind } from \"next/dist/esm/server/response-cache\";\nimport * as userland from \"INNER_APP_ROUTE\";\n// We inject the nextConfigOutput here so that we can use them in the route\n// module.\nconst nextConfigOutput = \"standalone\"\nconst routeModule = new AppRouteRouteModule({\n definition: {\n kind: RouteKind.APP_ROUTE,\n page: \"/api/teams/meta/route\",\n pathname: \"/api/teams/meta\",\n filename: \"route\",\n bundlePath: \"\"\n },\n distDir: process.env.__NEXT_RELATIVE_DIST_DIR || '',\n relativeProjectDir: process.env.__NEXT_RELATIVE_PROJECT_DIR || '',\n resolvedPagePath: \"[project]/src/app/api/teams/meta/route.ts\",\n nextConfigOutput,\n userland\n});\n// Pull out the exports that we need to expose from the module. This should\n// be eliminated when we've moved the other routes to the new format. These\n// are used to hook into the route.\nconst { workAsyncStorage, workUnitAsyncStorage, serverHooks } = routeModule;\nfunction patchFetch() {\n return _patchFetch({\n workAsyncStorage,\n workUnitAsyncStorage\n });\n}\nexport { routeModule, workAsyncStorage, workUnitAsyncStorage, serverHooks, patchFetch, };\nexport async function handler(req, res, ctx) {\n if (routeModule.isDev) {\n addRequestMeta(req, 'devRequestTimingInternalsEnd', process.hrtime.bigint());\n }\n let srcPage = \"/api/teams/meta/route\";\n // turbopack doesn't normalize `/index` in the page name\n // so we need to to process dynamic routes properly\n // TODO: fix turbopack providing differing value from webpack\n if (process.env.TURBOPACK) {\n srcPage = srcPage.replace(/\\/index$/, '') || '/';\n } else if (srcPage === '/index') {\n // we always normalize /index specifically\n srcPage = '/';\n }\n const multiZoneDraftMode = process.env.__NEXT_MULTI_ZONE_DRAFT_MODE;\n const prepareResult = await routeModule.prepare(req, res, {\n srcPage,\n multiZoneDraftMode\n });\n if (!prepareResult) {\n res.statusCode = 400;\n res.end('Bad Request');\n ctx.waitUntil == null ? void 0 : ctx.waitUntil.call(ctx, Promise.resolve());\n return null;\n }\n const { buildId, params, nextConfig, parsedUrl, isDraftMode, prerenderManifest, routerServerContext, isOnDemandRevalidate, revalidateOnlyGenerated, resolvedPathname, clientReferenceManifest, serverActionsManifest } = prepareResult;\n const normalizedSrcPage = normalizeAppPath(srcPage);\n let isIsr = Boolean(prerenderManifest.dynamicRoutes[normalizedSrcPage] || prerenderManifest.routes[resolvedPathname]);\n const render404 = async ()=>{\n // TODO: should route-module itself handle rendering the 404\n if (routerServerContext == null ? void 0 : routerServerContext.render404) {\n await routerServerContext.render404(req, res, parsedUrl, false);\n } else {\n res.end('This page could not be found');\n }\n return null;\n };\n if (isIsr && !isDraftMode) {\n const isPrerendered = Boolean(prerenderManifest.routes[resolvedPathname]);\n const prerenderInfo = prerenderManifest.dynamicRoutes[normalizedSrcPage];\n if (prerenderInfo) {\n if (prerenderInfo.fallback === false && !isPrerendered) {\n if (nextConfig.experimental.adapterPath) {\n return await render404();\n }\n throw new NoFallbackError();\n }\n }\n }\n let cacheKey = null;\n if (isIsr && !routeModule.isDev && !isDraftMode) {\n cacheKey = resolvedPathname;\n // ensure /index and / is normalized to one key\n cacheKey = cacheKey === '/index' ? '/' : cacheKey;\n }\n const supportsDynamicResponse = // If we're in development, we always support dynamic HTML\n routeModule.isDev === true || // If this is not SSG or does not have static paths, then it supports\n // dynamic HTML.\n !isIsr;\n // This is a revalidation request if the request is for a static\n // page and it is not being resumed from a postponed render and\n // it is not a dynamic RSC request then it is a revalidation\n // request.\n const isStaticGeneration = isIsr && !supportsDynamicResponse;\n // Before rendering (which initializes component tree modules), we have to\n // set the reference manifests to our global store so Server Action's\n // encryption util can access to them at the top level of the page module.\n if (serverActionsManifest && clientReferenceManifest) {\n setManifestsSingleton({\n page: srcPage,\n clientReferenceManifest,\n serverActionsManifest\n });\n }\n const method = req.method || 'GET';\n const tracer = getTracer();\n const activeSpan = tracer.getActiveScopeSpan();\n const context = {\n params,\n prerenderManifest,\n renderOpts: {\n experimental: {\n authInterrupts: Boolean(nextConfig.experimental.authInterrupts)\n },\n cacheComponents: Boolean(nextConfig.cacheComponents),\n supportsDynamicResponse,\n incrementalCache: getRequestMeta(req, 'incrementalCache'),\n cacheLifeProfiles: nextConfig.cacheLife,\n waitUntil: ctx.waitUntil,\n onClose: (cb)=>{\n res.on('close', cb);\n },\n onAfterTaskError: undefined,\n onInstrumentationRequestError: (error, _request, errorContext, silenceLog)=>routeModule.onRequestError(req, error, errorContext, silenceLog, routerServerContext)\n },\n sharedContext: {\n buildId\n }\n };\n const nodeNextReq = new NodeNextRequest(req);\n const nodeNextRes = new NodeNextResponse(res);\n const nextReq = NextRequestAdapter.fromNodeNextRequest(nodeNextReq, signalFromNodeResponse(res));\n try {\n const invokeRouteModule = async (span)=>{\n return routeModule.handle(nextReq, context).finally(()=>{\n if (!span) return;\n span.setAttributes({\n 'http.status_code': res.statusCode,\n 'next.rsc': false\n });\n const rootSpanAttributes = tracer.getRootSpanAttributes();\n // We were unable to get attributes, probably OTEL is not enabled\n if (!rootSpanAttributes) {\n return;\n }\n if (rootSpanAttributes.get('next.span_type') !== BaseServerSpan.handleRequest) {\n console.warn(`Unexpected root span type '${rootSpanAttributes.get('next.span_type')}'. Please report this Next.js issue https://github.com/vercel/next.js`);\n return;\n }\n const route = rootSpanAttributes.get('next.route');\n if (route) {\n const name = `${method} ${route}`;\n span.setAttributes({\n 'next.route': route,\n 'http.route': route,\n 'next.span_name': name\n });\n span.updateName(name);\n } else {\n span.updateName(`${method} ${srcPage}`);\n }\n });\n };\n const isMinimalMode = Boolean(process.env.MINIMAL_MODE || getRequestMeta(req, 'minimalMode'));\n const handleResponse = async (currentSpan)=>{\n var _cacheEntry_value;\n const responseGenerator = async ({ previousCacheEntry })=>{\n try {\n if (!isMinimalMode && isOnDemandRevalidate && revalidateOnlyGenerated && !previousCacheEntry) {\n res.statusCode = 404;\n // on-demand revalidate always sets this header\n res.setHeader('x-nextjs-cache', 'REVALIDATED');\n res.end('This page could not be found');\n return null;\n }\n const response = await invokeRouteModule(currentSpan);\n req.fetchMetrics = context.renderOpts.fetchMetrics;\n let pendingWaitUntil = context.renderOpts.pendingWaitUntil;\n // Attempt using provided waitUntil if available\n // if it's not we fallback to sendResponse's handling\n if (pendingWaitUntil) {\n if (ctx.waitUntil) {\n ctx.waitUntil(pendingWaitUntil);\n pendingWaitUntil = undefined;\n }\n }\n const cacheTags = context.renderOpts.collectedTags;\n // If the request is for a static response, we can cache it so long\n // as it's not edge.\n if (isIsr) {\n const blob = await response.blob();\n // Copy the headers from the response.\n const headers = toNodeOutgoingHttpHeaders(response.headers);\n if (cacheTags) {\n headers[NEXT_CACHE_TAGS_HEADER] = cacheTags;\n }\n if (!headers['content-type'] && blob.type) {\n headers['content-type'] = blob.type;\n }\n const revalidate = typeof context.renderOpts.collectedRevalidate === 'undefined' || context.renderOpts.collectedRevalidate >= INFINITE_CACHE ? false : context.renderOpts.collectedRevalidate;\n const expire = typeof context.renderOpts.collectedExpire === 'undefined' || context.renderOpts.collectedExpire >= INFINITE_CACHE ? undefined : context.renderOpts.collectedExpire;\n // Create the cache entry for the response.\n const cacheEntry = {\n value: {\n kind: CachedRouteKind.APP_ROUTE,\n status: response.status,\n body: Buffer.from(await blob.arrayBuffer()),\n headers\n },\n cacheControl: {\n revalidate,\n expire\n }\n };\n return cacheEntry;\n } else {\n // send response without caching if not ISR\n await sendResponse(nodeNextReq, nodeNextRes, response, context.renderOpts.pendingWaitUntil);\n return null;\n }\n } catch (err) {\n // if this is a background revalidate we need to report\n // the request error here as it won't be bubbled\n if (previousCacheEntry == null ? void 0 : previousCacheEntry.isStale) {\n const silenceLog = false;\n await routeModule.onRequestError(req, err, {\n routerKind: 'App Router',\n routePath: srcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isStaticGeneration,\n isOnDemandRevalidate\n })\n }, silenceLog, routerServerContext);\n }\n throw err;\n }\n };\n const cacheEntry = await routeModule.handleResponse({\n req,\n nextConfig,\n cacheKey,\n routeKind: RouteKind.APP_ROUTE,\n isFallback: false,\n prerenderManifest,\n isRoutePPREnabled: false,\n isOnDemandRevalidate,\n revalidateOnlyGenerated,\n responseGenerator,\n waitUntil: ctx.waitUntil,\n isMinimalMode\n });\n // we don't create a cacheEntry for ISR\n if (!isIsr) {\n return null;\n }\n if ((cacheEntry == null ? void 0 : (_cacheEntry_value = cacheEntry.value) == null ? void 0 : _cacheEntry_value.kind) !== CachedRouteKind.APP_ROUTE) {\n var _cacheEntry_value1;\n throw Object.defineProperty(new Error(`Invariant: app-route received invalid cache entry ${cacheEntry == null ? void 0 : (_cacheEntry_value1 = cacheEntry.value) == null ? void 0 : _cacheEntry_value1.kind}`), \"__NEXT_ERROR_CODE\", {\n value: \"E701\",\n enumerable: false,\n configurable: true\n });\n }\n if (!isMinimalMode) {\n res.setHeader('x-nextjs-cache', isOnDemandRevalidate ? 'REVALIDATED' : cacheEntry.isMiss ? 'MISS' : cacheEntry.isStale ? 'STALE' : 'HIT');\n }\n // Draft mode should never be cached\n if (isDraftMode) {\n res.setHeader('Cache-Control', 'private, no-cache, no-store, max-age=0, must-revalidate');\n }\n const headers = fromNodeOutgoingHttpHeaders(cacheEntry.value.headers);\n if (!(isMinimalMode && isIsr)) {\n headers.delete(NEXT_CACHE_TAGS_HEADER);\n }\n // If cache control is already set on the response we don't\n // override it to allow users to customize it via next.config\n if (cacheEntry.cacheControl && !res.getHeader('Cache-Control') && !headers.get('Cache-Control')) {\n headers.set('Cache-Control', getCacheControlHeader(cacheEntry.cacheControl));\n }\n await sendResponse(nodeNextReq, nodeNextRes, // @ts-expect-error - Argument of type 'Buffer<ArrayBufferLike>' is not assignable to parameter of type 'BodyInit | null | undefined'.\n new Response(cacheEntry.value.body, {\n headers,\n status: cacheEntry.value.status || 200\n }));\n return null;\n };\n // TODO: activeSpan code path is for when wrapped by\n // next-server can be removed when this is no longer used\n if (activeSpan) {\n await handleResponse(activeSpan);\n } else {\n await tracer.withPropagatedContext(req.headers, ()=>tracer.trace(BaseServerSpan.handleRequest, {\n spanName: `${method} ${srcPage}`,\n kind: SpanKind.SERVER,\n attributes: {\n 'http.method': method,\n 'http.target': req.url\n }\n }, handleResponse));\n }\n } catch (err) {\n if (!(err instanceof NoFallbackError)) {\n const silenceLog = false;\n await routeModule.onRequestError(req, err, {\n routerKind: 'App Router',\n routePath: normalizedSrcPage,\n routeType: 'route',\n revalidateReason: getRevalidateReason({\n isStaticGeneration,\n isOnDemandRevalidate\n })\n }, silenceLog, routerServerContext);\n }\n // rethrow so that we can handle serving error page\n // If this is during static generation, throw the error again.\n if (isIsr) throw err;\n // Otherwise, send a 500 response.\n await sendResponse(nodeNextReq, nodeNextRes, new Response(null, {\n status: 500\n }));\n return null;\n }\n}\n\n//# sourceMappingURL=app-route.js.map\n","import fs from \"node:fs/promises\";\nimport path from \"node:path\";\nimport { NextResponse } from \"next/server\";\nimport { getTeamContextFromBody, withTeamContextFromQuery } from \"@/lib/api-route-helpers\";\n\nexport async function GET(req: Request) {\n return withTeamContextFromQuery(req, async ({ teamId, teamDir }) => {\n const metaPath = path.join(teamDir, \"team.json\");\n\n try {\n const raw = await fs.readFile(metaPath, \"utf8\");\n const meta = JSON.parse(raw) as Record<string, unknown>;\n return NextResponse.json({ ok: true, teamId, teamDir, metaPath, meta });\n } catch {\n return NextResponse.json({ ok: true, teamId, teamDir, metaPath, meta: null, missing: true });\n }\n });\n}\n\nexport async function POST(req: Request) {\n const body = (await req.json()) as { teamId?: string; recipeId?: string; recipeName?: string };\n const ctx = await getTeamContextFromBody(body);\n if (ctx instanceof NextResponse) return ctx;\n const { teamId, teamDir } = ctx;\n\n const recipeId = String(body.recipeId ?? \"\").trim();\n const recipeName = typeof body.recipeName === \"string\" ? body.recipeName : \"\";\n if (!recipeId) return NextResponse.json({ ok: false, error: \"recipeId is required\" }, { status: 400 });\n\n const metaPath = path.join(teamDir, \"team.json\");\n\n const meta = {\n teamId,\n recipeId,\n recipeName,\n attachedAt: new Date().toISOString(),\n };\n\n await fs.mkdir(teamDir, { recursive: true });\n await fs.writeFile(metaPath, JSON.stringify(meta, null, 2) + \"\\n\", \"utf8\");\n\n return NextResponse.json({ ok: true, teamId, teamDir, metaPath, meta });\n}\n"],"names":[],"mappings":"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","ignoreList":[6]}
|