@mndrk/agx 2.4.6 → 2.4.8
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/cloud-runtime/standalone/apps/local/.next/BUILD_ID +1 -1
- package/cloud-runtime/standalone/apps/local/.next/app-path-routes-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/build-manifest.json +2 -2
- package/cloud-runtime/standalone/apps/local/.next/prerender-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/routes-manifest.json +33 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/file-search/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route.js +13 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/program/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route.js +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/export/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route.js +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/workspace/import/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/check/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/available/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/history/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/status/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/summarize/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/recap/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/scripted/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github/select-repos/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github/select-repos.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/build-manifest.json +18 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/next-font-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/react-loadable-manifest.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app-paths-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_projects_[id]_workspace_export_route_actions_e161f108.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_projects_[id]_workspace_import_route_actions_10d2bce2.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/7255d_app_api_projects_[id]_objectives_[objectiveId]_program_route_actions_e6cdbc76.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1563ebff._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__3fdd57cb._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__45af4365._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__683b7ad7._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__736d5859._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__96b5ea56._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__ba72d342._.js +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c3188470._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__eb69343e._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_1d99e7a5._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_29a06140._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_4d88e4dc._.js +91 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_4dec65a2._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_50e3a6e3._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_56a2544c._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_5843a1a1._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_a15e73a6._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_bd72806a._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_c101ba9e._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_c530bd77._.js +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_d69937f2._.js +91 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_e2867b32._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_e32b0cab._.js +91 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_5ab8f104._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_db_ts_77c23d6c._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0da96_local__next-internal_server_app_projects_[slug]_thread_page_actions_3ceeb59b.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__1e0fd816._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__42499ecf._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__5f31e40b._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__636799fb._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__4bf7d5b9._.js → [root-of-the-server]__74436f61._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__9434d6d7._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__bd339da0._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__d08d7899._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__e02a457c._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__e3a1fef0._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__f802e7d1._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__ff96bb77._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_6a2ba8f0._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_7cb6b08a._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_a0f42923._.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_a93c1059._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_components_PromptJobBoard_tsx_281b2873._.js → apps_local_04cb9fd5._.js} +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_15502af8._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_16eaf7ae._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_3c11c068._.js +8 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_89b49aad._.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_988d29c0._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_ae1a134f._.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_agents_page_tsx_2a02508d._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_folders_page_tsx_72fb68e5._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_layout_tsx_3bb31889._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_page_tsx_76330306._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_b8e580cc._.js +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_TrackerBoard_tsx_98970bab._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_app_projects_[slug]_thread_[threadId]_page_tsx_2a1d1d5e._.js → apps_local_components_chat-ui_ChatContainer_tsx_47371955._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_projects_ProjectObjectivesWorkspace_tsx_751ab3d3._.js +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_eb223411._.js +18 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_eec36ab6._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_7d1abfbf._.js → apps_local_f1c9872a._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_fed01721._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/functions-config-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/middleware-manifest.json +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/pages/404.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/pages/500.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/08e75b35d6c52269.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0d22a723b9b96e65.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{cb19d71dd7ffb935.js → 1585dd5f9ec4866a.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/1bc8cc9cbb99c1ed.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/2586c0baa16e9a0d.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/2aa24a251622fd06.js +5 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/39513207112d6828.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/3fce625820bc2bd4.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{8d8fe711583a59f0.js → 41ae15220fc19bf7.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/67b36c70b72e0e10.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/7bfbfcd072f8d61e.js +20 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/7cf26dd04166f32f.js +6 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{74e3a3e93be78db8.js → 8b87c2521c519a1f.js} +9 -9
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/90dd4ab03ab145d1.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/93749b45e2700808.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{48feca51cf97c8a7.js → 9bb8f1406365af81.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/b4aa71020acae46f.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/c352706a0ad7e35d.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/c5436b2b7e8f0ca9.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{1600dd6ff8607d8f.js → c9a2c4b55bb76f4f.js} +6 -6
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{1fbcd40dccee738f.js → cf33cb29946990e3.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/d6a9cc66254693b8.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{9e703dd5d95e9557.js → e3bdd1e0f385114e.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/ed606d6f94457578.css +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{6ffcd12eabd7c65e.js → f71d73895d228547.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/f750d2f1882d31a8.js +5 -0
- package/cloud-runtime/standalone/apps/local/app/api/automations/route.ts +2 -10
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/program/route.ts +77 -0
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/workspace/export/route.ts +35 -0
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/workspace/import/route.ts +91 -0
- package/cloud-runtime/standalone/apps/local/app/api/prompt-jobs/route.ts +1 -8
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/layout.tsx +1 -1
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/thread/page.tsx +14 -0
- package/cloud-runtime/standalone/apps/local/components/AutomationsBoard.tsx +15 -15
- package/cloud-runtime/standalone/apps/local/components/PromptJobBoard.tsx +7 -12
- package/cloud-runtime/standalone/apps/local/components/TrackerBoard.tsx +39 -1
- package/cloud-runtime/standalone/apps/local/components/projects/FoldersSummaryCard.tsx +51 -196
- package/cloud-runtime/standalone/apps/local/components/projects/FoldersView.tsx +662 -784
- package/cloud-runtime/standalone/apps/local/components/projects/ObjectiveScheduledTasksPanel.tsx +7 -10
- package/cloud-runtime/standalone/apps/local/components/projects/ProjectHome.tsx +4 -4
- package/cloud-runtime/standalone/apps/local/components/projects/ProjectObjectivesWorkspace.tsx +118 -0
- package/cloud-runtime/standalone/apps/local/components/projects/ProjectSettings.tsx +81 -7
- package/cloud-runtime/standalone/apps/local/components/thread/WorkspaceSidebar.tsx +13 -3
- package/cloud-runtime/standalone/apps/local/components/tracking/TrackerSetup.tsx +22 -14
- package/cloud-runtime/standalone/apps/local/hooks/useProjectWorkspace.ts +117 -0
- package/cloud-runtime/standalone/apps/local/lib/db/projects.ts +14 -10
- package/cloud-runtime/standalone/apps/local/lib/project-workspace.ts +80 -0
- package/cloud-runtime/standalone/apps/local/lib/task-context.ts +39 -4
- package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/github/adapter.tsx +40 -4
- package/cloud-runtime/standalone/apps/local/lib/workspace-yaml.ts +164 -0
- package/cloud-runtime/standalone/apps/local/src/objectives/program/index.ts +7 -0
- package/cloud-runtime/standalone/apps/local/src/objectives/program/repository.ts +60 -0
- package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/objective-worker.ts +12 -0
- package/cloud-runtime/standalone/apps/local/src/scheduling/status.ts +42 -0
- package/cloud-runtime/standalone/apps/local/worker/index.js +14 -9
- package/lib/commands/workspace.js +145 -7
- package/package.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_09d85861._.js +0 -91
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_25136564._.js +0 -11
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_2caf4398._.js +0 -91
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_31ca7a35._.js +0 -91
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/9fb8c_lucide-react_dist_esm_icons_8c8ee1bc._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__23838f87._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__3b4708d5._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__49cbf624._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__49cdd178._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__55ed4ff9._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__7a31a76d._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__a61463b8._.js +0 -7
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__bb42490f._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__ee9351f9._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_0ecd68e8._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_347d036d._.js +0 -7
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_5c140c38._.js +0 -7
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_f99c22fd._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_30d021de._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_3b90cb76._.js +0 -18
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_9f36c765._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_8cc1a335._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/1d8b2726979134e5.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/692103d55fcd0328.js +0 -5
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/6952b44e247d594a.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/6bfdc40a24e65ca2.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/7ff071e8a33d2fd8.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/87e4fb11329a358d.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/92467c495ad08a85.js +0 -5
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/941f7f3626ec442c.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/94a66d2d19268d25.js +0 -5
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/add53c2fe147af75.css +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/b35865f64b56d6f4.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/d662272e49df1950.js +0 -20
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/e0d68c6af17c8c87.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/f154e2ed7753f8ee.js +0 -16
- /package/cloud-runtime/standalone/apps/local/.next/static/{fipnHmd6JPn9sTuFdYS0y → O3Yu8lY-DN5fauB8GipIL}/_buildManifest.js +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{fipnHmd6JPn9sTuFdYS0y → O3Yu8lY-DN5fauB8GipIL}/_clientMiddlewareManifest.json +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{fipnHmd6JPn9sTuFdYS0y → O3Yu8lY-DN5fauB8GipIL}/_ssgManifest.js +0 -0
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[404258,e=>{"use strict";function t(e){let t=e?.trim();return t?t.replace(/\/+$/,""):null}let r="http://localhost:41741";function a(){return t(process.env.NEXT_PUBLIC_APP_URL)??t(process.env.AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_AGX_BOARD_URL)??r}function s(){return t(process.env.AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_APP_URL)??r}function i(){let e=new Set([r,"http://127.0.0.1:41741"]);for(let r of[process.env.NEXT_PUBLIC_APP_URL,process.env.AGX_BOARD_URL,process.env.NEXT_PUBLIC_AGX_BOARD_URL]){let a=t(r);a&&e.add(a)}return Array.from(e)}e.s(["getAllowedOrigins",()=>i,"getConfiguredAppBaseUrl",()=>a,"getConfiguredBoardBaseUrl",()=>s])},323218,e=>{"use strict";var t=e.i(254799),r=e.i(173426),a=e.i(779429),s=e.i(689303),i=e.i(33878),o=e.i(488877),n=e.i(582743);e.i(426491);var l=e.i(515140),d=e.i(448643),u=e.i(863014),p=e.i(38193);async function c(e){let t=(0,r.createAdminDbClient)(),{data:a,error:s}=await t.from("task_comments").select("*").eq("task_id",e).is("deleted_at",null).order("created_at",{ascending:!0}).order("id",{ascending:!0});if(s){let e="string"==typeof s.message?s.message:"";if("42P01"===s.code||"PGRST205"===s.code||e.includes('relation "task_comments" does not exist')||e.includes("Could not find the table 'agx.task_comments'")||e.includes("Could not find the table 'public.task_comments'"))return[];throw s}return a||[]}async function g(e){let t=(0,r.createAdminDbClient)(),a=e.user_id,s=t.from("learnings").select("*").eq("scope","task").eq("scope_id",e.id);a&&s.eq("user_id",a);let[{data:i,error:n}]=await Promise.all([s]);if(n)throw n;return{task:i||[],project:[],global:o.vaultStore.getLearnings("global")||[]}}async function m(e){let t,a=e.stage;if(!a)return{prompt:null};let s=(0,r.createAdminDbClient)(),i=(t=e.workflow_id)&&/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(t)?e.workflow_id:"";if(!i&&e.project_id)try{let t=await (0,u.getProjectWithRepos)(e.project_id,e.user_id);t?.workflow_id&&(i=t.workflow_id)}catch{}i||(i=p.DEFAULT_WORKFLOW_ID);try{let{data:e,error:t}=await s.from("workflow_nodes").select("*").eq("workflow_id",i).eq("name",a).maybeSingle();if(!t&&e){let t=e.metadata&&"object"==typeof e.metadata?e.metadata:{},r="boolean"==typeof t.swarm&&t.swarm,a=Array.isArray(t.swarm_models)?t.swarm_models:void 0;if(e.prompt)return{prompt:e.prompt,swarm:r,provider:e.provider||void 0,model:e.model||void 0,swarm_models:a};return{prompt:null,swarm:r,provider:e.provider||void 0,model:e.model||void 0,swarm_models:a}}}catch{}try{let t=[];t.push(s.from("stage_prompts").select("*").eq("stage",a).eq("is_default",!0).eq("workflow_id",i).maybeSingle()),e.user_id&&t.push(s.from("stage_prompts").select("*").eq("stage",a).eq("user_id",e.user_id).eq("workflow_id",i).maybeSingle());let r=await Promise.all(t),o=r[0]?.data||null,n=e.user_id?r[1]?.data:null,l=n?.prompt||o?.prompt||null;if(l)return{prompt:l,swarm:n?.swarm??o?.swarm??!1,provider:n?.provider||o?.provider,model:n?.model||o?.model,swarm_models:n?.swarm_models||o?.swarm_models}}catch{}let o=p.defaultStagePrompts[a];return o?.prompt?{prompt:o.prompt,swarm:o.swarm??!1,provider:o.provider,model:o.model,swarm_models:o.swarm_models}:{prompt:null}}async function f(e,t){let r=e.project_id,a=e.project||void 0,o=null;if(r&&(o=await (0,u.getProjectWithRepos)(r,e.user_id)),!o&&a){let t=await (0,u.getProjectBySlug)(a,e.user_id);if(t){let e=await (0,u.getProjectRepos)(t.id);o={...t,repos:e}}}if(!o)return null;let n=await (0,u.getProjectMemory)(o.id,"human"),l=(0,i.getKnowledgeNote)("project",o.id);if(o.repos.length>0){let e=(0,s.listResolvedRepoKnowledge)(o.repos),t=new Map;for(let r of e){if(!r.repoId)continue;let e="system"===r.producer?`[System-generated] ${r.content}`:r.content,a=t.get(r.repoId)??[];a.push(e),t.set(r.repoId,a)}o={...o,repos:o.repos.map(e=>({...e,notes:t.has(e.id)?t.get(e.id).join("\n\n"):e.notes}))}}return{project:o,repos:o.repos??[],learnings:[...n.map(e=>e.content),...l?.content?[`[System-generated] ${l.content}`]:[]]}}async function _(e){let r,[s,i,o,u]=await Promise.all([c(e.id),g(e),m(e),e.user_id?(0,d.getUserSettings)(e.user_id):Promise.resolve(null)]),p=await f(e,i.project),{frontmatter:_}=(0,l.parseFrontmatter)(e.content),h=(0,n.resolveMemoryAgentId)({defaultUserId:e.user_id||"system",frontmatter:_}),v=_.no_memory?[]:function(e,t=5){try{return(0,a.getSQLiteDb)().prepare("SELECT content FROM agent_memory WHERE agent_id = ? ORDER BY created_at DESC LIMIT ?").all(e,t).map(e=>e.content)}catch{return[]}}(h),w=(r=JSON.stringify(s.map(e=>({id:e.id,task_id:e.task_id,author_type:e.author_type||null,author_id:e.author_id||null,content:e.content||"",created_at:e.created_at||null}))),(0,t.createHash)("sha256").update(r).digest("hex")),y="string"==typeof e.stage&&e.stage.trim()?e.stage.trim():"",R=o.prompt??null,k={};if(R&&y){k[y]=R;let e=y.toLowerCase();k[e]||(k[e]=R)}let A=R&&y?[{stage:y,prompt:R}]:[];return{comments:s,learnings:i,agent_memories:v,stage_config:o,stage_prompt:R,stage_prompts:k,stage_objective:R,stageObjective:R,stagePrompts:A,project_context:p,comments_digest:w,user_settings:u}}e.s(["buildTaskContext",()=>_])},828032,e=>{"use strict";e.i(254799);var t=e.i(404258),r=e.i(173426);e.i(650837);var a=e.i(640911);let s=[/rm\s+(-rf?|--recursive)\s+[\/~]/i,/rm\s+-rf?\s+\*/i,/chmod\s+(777|a\+rwx)/i,/chown\s+.*\s+\//i,/>\s*\/dev\/sd[a-z]/i,/\.env/i,/credentials?\.json/i,/api[_-]?key/i,/secret[_-]?key/i,/private[_-]?key/i,/password/i,/curl.*\|\s*(ba)?sh/i,/wget.*\|\s*(ba)?sh/i,/nc\s+-l/i,/socat/i,/sudo\s+/i,/su\s+-/i,/mkfs\./i,/dd\s+if=/i,/eval\s*\(/i,/exec\s*\(/i,/child_process/i,/__import__/i,/base64.*>/i,/xxd/i,/tar.*-c.*\|.*curl/i];function i(e){let t=[];for(let r of s)r.test(e)&&t.push(r.source);let r="low";return/rm\s+(-rf?|--recursive)\s*[\/~\*]|sudo\s+|mkfs\.|dd\s+if=/i.test(e)?r="critical":/curl.*\|\s*(ba)?sh|wget.*\|\s*(ba)?sh|chmod\s+(777|a\+rwx)|\.env\b/i.test(e)?r="high":/password|api[_-]?key|secret[_-]?key|private[_-]?key|credentials?\.json/i.test(e)&&(r="medium"),{isDangerous:t.length>0,patterns:t,severity:r}}async function o(e){let t=(0,r.createAdminDbClient)(),{data:s,error:i}=await t.from("task_audit_log").insert({user_id:e.user_id,task_id:e.task_id,action:e.action,payload:e.payload,signature:e.signature,ip_address:e.ip_address,user_agent:e.user_agent,result:e.result||"pending"}).select("id").single();if(i)throw a.logger.error("Failed to write audit log",a.logger.formatError(i)),Error("Audit log write failed");return s.id}let n=["https://agx-cloud.vercel.app",...(0,t.getAllowedOrigins)()];function l(e){return!!e&&n.includes(e)}async function d(e){if(!e?.startsWith("Bearer "))return{valid:!1};let t=e.slice(7),a=(0,r.createAdminDbClient)(),{data:{user:s},error:i}=await a.auth.getUser(t);return i||!s?{valid:!1}:{valid:!0,userId:s.id}}e.s(["detectDangerousOperations",()=>i,"isValidOrigin",()=>l,"validateBearerToken",()=>d,"writeAuditLog",()=>o])},703329,550201,e=>{"use strict";function t(e,t){if(void 0===e)return t;let r=e.trim().toLowerCase();return"1"===r||"true"===r||"yes"===r||"on"===r||"0"!==r&&"false"!==r&&"no"!==r&&"off"!==r&&t}function r(){return t(process.env.AGX_GRAPH_DUAL_WRITE,!0)}function a(){return t(process.env.AGX_GRAPH_PARITY_LOGGING,!0)}function s(){return!t(process.env.AGX_GRAPH_READ_PATH_KILL_SWITCH,!1)&&"v2"===(process.env.AGX_GRAPH_READ_PATH_MODE||"v1").trim().toLowerCase()}e.s(["isDualWriteEnabled",()=>r,"isParityLoggingEnabled",()=>a,"isV2ReadPathEnabled",()=>s],550201);let i=new Set(["done","passed","failed","skipped"]),o=new Set(["running","awaiting_human","blocked"]),n=new Set(["done","passed","skipped"]);function l(e,t){let r=String(e||"").trim().toUpperCase();return"INTAKE"===r||"PROGRESS"===r||"DONE"===r?r:t}function d(e){let t,r=Object.values(e.nodes);if(0===r.length)return"queued";let a=r.filter(e=>"gate"===e.type&&e.required).every(e=>"passed"===e.status||"skipped"===e.status);return 0!==(t=e.doneCriteria?.completionSinkNodeIds??[]).length&&t.every(t=>{let r=e.nodes[t];return!!(r&&n.has(r.status))})&&a||r.every(e=>i.has(e.status))&&a?"completed":r.some(e=>"failed"===e.status)?"failed":r.some(e=>"blocked"===e.status)?"blocked":r.some(e=>o.has(e.status))||r.filter(e=>"done"===e.status||"passed"===e.status).length>0?"in_progress":"queued"}function u(e,t="INTAKE"){let r,a,s=d(e),o="completed"===(r=d(e))?"DONE":"in_progress"===r||"blocked"===r||"failed"===r?"PROGRESS":t,n="completed"===s?100:0===(a=Object.values(e.nodes)).length?0:Math.max(0,Math.min(100,Math.round(a.filter(e=>i.has(e.status)).length/a.length*100)));return{status:s,stage:o,progressPercent:n}}function p(e){var t;let r,s,i,o,n,d=(t={taskId:e.task.id,source:e.source,legacy:{status:e.task.status,stage:e.task.stage,progressPercent:e.legacyProgressPercent??null},v2:u(e.graph,l(e.task.stage||"INTAKE","INTAKE"))},s=[],i="queued"===(r=String(t.legacy.status||"").trim().toLowerCase())||"in_progress"===r||"blocked"===r||"completed"===r||"failed"===r?r:"queued",o=l(t.legacy.stage,"INTAKE"),n=Number.isFinite(Number(t.legacy.progressPercent))?Number(t.legacy.progressPercent):null,(i!==t.v2.status&&s.push({field:"status",legacy:i,v2:t.v2.status}),o!==t.v2.stage&&s.push({field:"stage",legacy:o,v2:t.v2.stage}),null!==n&&n!==t.v2.progressPercent&&s.push({field:"progressPercent",legacy:n,v2:t.v2.progressPercent}),0===s.length)?null:{taskId:t.taskId,source:t.source,diffs:s});return d&&a()&&console.warn("[graph-parity-diff]",JSON.stringify(d)),d}e.s(["logParityDiff",()=>p,"projectLegacyCompatFromGraph",()=>u],703329)},574749,e=>{"use strict";e.i(426491);var t=e.i(515140),r=e.i(550201),a=e.i(703329),s=e.i(951336);function i(e){if(!e)return[];if(Array.isArray(e))return Array.from(new Set(e.map(e=>String(e||"").trim()).filter(Boolean)));if("string"==typeof e){let t=e.trim();if(!t)return[];try{let e=JSON.parse(t);if(Array.isArray(e))return Array.from(new Set(e.map(e=>String(e||"").trim()).filter(Boolean)))}catch{}return Array.from(new Set(t.split(",").map(e=>e.trim()).filter(Boolean)))}return[]}function o(e){if(i(e.depends_on).length||"string"!=typeof e?.content)return e;let{frontmatter:r}=(0,t.parseFrontmatter)(e.content||""),a=i(r.depends_on);return a.length?{...e,depends_on:a}:e}function n(e){return"blocked"!==e.status||e.blocked_reason||e.stage&&"intake"!==e.stage.toLowerCase()?e.blocked_reason:"Awaiting approval"}async function l(e){if(!(0,r.isV2ReadPathEnabled)())return{...o(e),blocked_reason:n(e),read_path_source:"v1"};try{let t=await (0,s.getGraph)(e.id);if(!t)return{...o(e),read_path_source:"v1"};let r=(0,a.projectLegacyCompatFromGraph)(t,e.stage||"INTAKE"),i="queued"===r.status&&e.status&&"queued"!==e.status?e.status:r.status,l="completed"===i?"DONE":r.stage;(0,a.logParityDiff)({source:"read_path",task:e,graph:t});let d={...o(e),status:i,stage:l};return{...d,blocked_reason:n(d),read_path_source:"v2"}}catch(t){return console.error("Failed to project task from v2 graph; using v1 compatibility mode",t),{...o(e),read_path_source:"v1"}}}async function d(e){return Promise.all(e.map(e=>l(e)))}e.s(["projectTaskReadModel",()=>l,"projectTaskReadModels",()=>d])},20275,e=>{"use strict";var t=e.i(254799),r=e.i(466713);let a=/^\s*---\s*\r?\n[\s\S]*?\r?\n---\s*/,s=/^#\s+(.+?)(?:\r?\n|$)/;function i(e){return"string"==typeof e?e.trim():""}function o(e,t){let r=i(t),o=i(e);if(!o)return r;let n=o.replace(a,"").trim();if(!n)return r;let l=n.match(s);if(!l)return n;let d=n.slice(l[0].length).trim();return d||l[1].trim()||r}let n={...r.DEFAULT_EXECUTION_POLICY,replanBudgetInitial:3,replanBudgetRemaining:3,verifyBudgetInitial:5,verifyBudgetRemaining:5,maxConcurrentAutoChecks:1,maxConcurrent:1,priorityMode:"fifo"};function l(e,r){let a=new Date().toISOString(),s={type:"root",status:"pending",deps:[],title:e.title||"Untitled task",objective:function(e){let t=i(e.description);if(t)return o(t,e.title);let r=i(e.content);if(r)return o(r,e.title);let a=i(e.objective);return a?o(a,e.title):i(e.title)}(e),graphCreated:!1,criteria:[]};return{id:r?.graphId??(0,t.randomUUID)(),taskId:e.id,graphVersion:1,mode:"SIMPLE",nodes:{root:s,plan:{type:"work",status:"pending",deps:["root"],title:"Generate execution plan",description:"Analyze the task and generate a detailed execution graph with work nodes, gates, and dependencies.",attempts:0,maxAttempts:2,retryPolicy:{backoffMs:5e3,onExhaust:"escalate"}},"plan-approval":{type:"gate",status:"pending",gateType:"approval_gate",required:!0,deps:["plan"],verificationStrategy:{type:"human"}}},edges:[{from:"root",to:"plan",type:"hard",condition:"always"},{from:"plan",to:"plan-approval",type:"hard",condition:"always"}],policy:{...n},doneCriteria:{allRequiredGatesPassed:!0,noRunnableOrPendingWork:!0,completionSinkNodeIds:["plan-approval"]},versionHistory:[],runtimeEvents:[],createdAt:a,updatedAt:a}}e.s(["createRootOnlyGraph",()=>l],20275)},533986,e=>{"use strict";var t=e.i(692988),r=e.i(635595),a=e.i(75473),s=e.i(923435),i=e.i(418475),o=e.i(303482),n=e.i(976287),l=e.i(774462),d=e.i(111998),u=e.i(201516),p=e.i(68877),c=e.i(259460),g=e.i(257714),m=e.i(502073),f=e.i(187345),_=e.i(193695);e.i(293777);var h=e.i(274321),v=e.i(732470),w=e.i(764541);e.i(426491);var y=e.i(515140),R=e.i(173426),k=e.i(744071),A=e.i(828032),b=e.i(323218),E=e.i(353476),P=e.i(550201),C=e.i(20275),T=e.i(703329),S=e.i(951336),I=e.i(627013);async function O(e){if(!(0,P.isDualWriteEnabled)())return{enabled:!1,result:"disabled"};try{let t=await (0,S.getGraph)(e.id);if(t)return(0,T.logParityDiff)({source:"task_create_dual_write",task:e,graph:t}),{enabled:!0,result:"existing",graphId:t.id};let r=(0,C.createRootOnlyGraph)({id:e.id,title:e.title||void 0,description:e.description||void 0,content:e.content||void 0}),a=(0,I.validateGraph)(r);if(!a.valid)return{enabled:!0,result:"failed",error:`validateGraph failed: ${JSON.stringify(a.errors)}`};let s=await (0,S.createGraph)(r);return(0,T.logParityDiff)({source:"task_create_dual_write",task:e,graph:s}),{enabled:!0,result:"created",graphId:s.id}}catch(t){if(t instanceof S.GraphTaskAlreadyBoundError){let r=await (0,S.getGraph)(e.id);return r&&(0,T.logParityDiff)({source:"task_create_dual_write",task:e,graph:r}),{enabled:!0,result:"existing",graphId:t.existingGraphId}}return{enabled:!0,result:"failed",error:t instanceof Error?t.message:String(t)}}}var x=e.i(574749);e.i(650837);var j=e.i(640911);async function N(e){try{let t=k.LOCAL_USER.id,{searchParams:r}=new URL(e.url),a=r.get("project")||void 0,s="1"===r.get("orphan"),i=r.get("status"),o=r.get("slug"),n=r.get("search")||void 0;if(o){let e=await w.db.getTaskBySlug(o,t);if(!e)return v.NextResponse.json({error:"Task not found"},{status:404});let r=await (0,x.projectTaskReadModel)(e),a=await (0,b.buildTaskContext)(e),s=(0,y.resolveTaskConfig)(e,a.stage_config,a.user_settings),i={...r,...a,resolved_provider:s.provider,resolved_model:s.model??void 0,resolved_swarm:s.swarm,resolved_swarm_models:s.swarm_models};return v.NextResponse.json({task:i,stage_prompt:i.stage_prompt,stage_prompts:i.stage_prompts,stage_objective:i.stage_objective,stageObjective:i.stageObjective,stagePrompts:i.stagePrompts})}let l=await w.db.getTasks(t,{project:a,status:i||void 0,search:n,orphan:s}),d=await (0,x.projectTaskReadModels)(l);return v.NextResponse.json({tasks:d})}catch(e){return j.logger.error("Error fetching tasks",j.logger.formatError(e)),v.NextResponse.json({error:"Failed to fetch tasks"},{status:500})}}async function D(e){try{let t=k.LOCAL_USER.id,r=await e.json(),{content:a,swarm_models:s,project_id:i,title:o}=r,n=Array.isArray(r?.depends_on)?r.depends_on:"string"==typeof r?.depends_on?[r.depends_on]:void 0;if(!a)return v.NextResponse.json({error:"Content is required"},{status:400});let l=(0,A.detectDangerousOperations)(a);if(l.isDangerous&&"critical"===l.severity)return v.NextResponse.json({error:"Task contains potentially dangerous operations",dangerous:!0,severity:l.severity,patterns:l.patterns,message:"This task has been blocked. Please review and remove dangerous commands."},{status:400});let d=await w.db.createTask(a,t,{swarmModels:s,dependsOn:n,projectId:"string"==typeof i?i:void 0,title:"string"==typeof o?o:void 0});await (0,E.attemptStartTask)(d.id,t);let u=await w.db.getTask(d.id,t)||d,p=await O(u);if("failed"===p.result&&j.logger.error("Task dual-write graph creation failed",{taskId:u.id,error:p.error}),p.graphId){let e=(0,R.createAdminDbClient)();await e.from("tasks").update({graph_id:p.graphId}).eq("id",u.id),u.graph_id=p.graphId}let c=await (0,b.buildTaskContext)(u),{comments_digest:g,stage_config:m}=c,f=(0,y.resolveTaskConfig)(u,m,c.user_settings),_=e.headers.get("x-forwarded-for")?.split(",")[0].trim()||e.headers.get("x-real-ip")||void 0,h=e.headers.get("user-agent")||void 0;await (0,A.writeAuditLog)({user_id:t,task_id:u.id,action:"dispatch",payload:{title:u.title,stage:u.stage,engine:u.engine,provider:f.provider,model:f.model??void 0,swarm:f.swarm,swarm_models:f.swarm_models,project:u.project,dangerous:l.isDangerous?{severity:l.severity,patterns:l.patterns}:null},signature:"unsigned",ip_address:_,user_agent:h,result:"pending"});let P={...u,...c,resolved_provider:f.provider,resolved_model:f.model??void 0,resolved_swarm:f.swarm,resolved_swarm_models:f.swarm_models},C={id:u.id,task:P,stage_prompt:P.stage_prompt,stage_prompts:P.stage_prompts,stage_objective:P.stage_objective,stageObjective:P.stageObjective,stagePrompts:P.stagePrompts,graph_dual_write:p};return l.isDangerous&&(C.warning={message:"Task contains potentially dangerous operations. Daemon may prompt for confirmation.",severity:l.severity,patterns:l.patterns}),v.NextResponse.json(C,{status:201})}catch(e){return j.logger.error("Error creating task",j.logger.formatError(e)),v.NextResponse.json({error:"Failed to create task"},{status:500})}}e.s(["GET",()=>N,"POST",()=>D],241235);var L=e.i(241235);let U=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/tasks/route",pathname:"/api/tasks",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/local/app/api/tasks/route.ts",nextConfigOutput:"standalone",userland:L}),{workAsyncStorage:G,workUnitAsyncStorage:q,serverHooks:B}=U;function M(){return(0,a.patchFetch)({workAsyncStorage:G,workUnitAsyncStorage:q})}async function H(e,t,a){U.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/tasks/route";v=v.replace(/\/index$/,"")||"/";let w=await U.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!w)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:y,params:R,nextConfig:k,parsedUrl:A,isDraftMode:b,prerenderManifest:E,routerServerContext:P,isOnDemandRevalidate:C,revalidateOnlyGenerated:T,resolvedPathname:S,clientReferenceManifest:I,serverActionsManifest:O}=w,x=(0,n.normalizeAppPath)(v),j=!!(E.dynamicRoutes[x]||E.routes[S]),N=async()=>((null==P?void 0:P.render404)?await P.render404(e,t,A,!1):t.end("This page could not be found"),null);if(j&&!b){let e=!!E.routes[S],t=E.dynamicRoutes[x];if(t&&!1===t.fallback&&!e){if(k.experimental.adapterPath)return await N();throw new _.NoFallbackError}}let D=null;!j||U.isDev||b||(D="/index"===(D=S)?"/":D);let L=!0===U.isDev||!j,G=j&&!L;O&&I&&(0,o.setManifestsSingleton)({page:v,clientReferenceManifest:I,serverActionsManifest:O});let q=e.method||"GET",B=(0,i.getTracer)(),M=B.getActiveScopeSpan(),H={params:R,prerenderManifest:E,renderOpts:{experimental:{authInterrupts:!!k.experimental.authInterrupts},cacheComponents:!!k.cacheComponents,supportsDynamicResponse:L,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:k.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>U.onRequestError(e,t,a,s,P)},sharedContext:{buildId:y}},F=new l.NodeNextRequest(e),X=new l.NodeNextResponse(t),K=d.NextRequestAdapter.fromNodeNextRequest(F,(0,d.signalFromNodeResponse)(t));try{let o=async e=>U.handle(K,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=B.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=`${q} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${q} ${v}`)}),n=!!(0,s.getRequestMeta)(e,"minimalMode"),l=async s=>{var i,l;let d=async({previousCacheEntry:r})=>{try{if(!n&&C&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await o(s);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let d=H.renderOpts.collectedTags;if(!j)return await (0,c.sendResponse)(F,X,i,H.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,g.toNodeOutgoingHttpHeaders)(i.headers);d&&(t[f.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:h.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 U.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:G,isOnDemandRevalidate:C})},!1,P),t}},u=await U.handleResponse({req:e,nextConfig:k,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:E,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:T,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:n});if(!j)return null;if((null==u||null==(i=u.value)?void 0:i.kind)!==h.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});n||t.setHeader("x-nextjs-cache",C?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let _=(0,g.fromNodeOutgoingHttpHeaders)(u.value.headers);return n&&j||_.delete(f.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||_.get("Cache-Control")||_.set("Cache-Control",(0,m.getCacheControlHeader)(u.cacheControl)),await (0,c.sendResponse)(F,X,new Response(u.value.body,{headers:_,status:u.value.status||200})),null};M?await l(M):await B.withPropagatedContext(e.headers,()=>B.trace(u.BaseServerSpan.handleRequest,{spanName:`${q} ${v}`,kind:i.SpanKind.SERVER,attributes:{"http.method":q,"http.target":e.url}},l))}catch(t){if(t instanceof _.NoFallbackError||await U.onRequestError(e,t,{routerKind:"App Router",routePath:x,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:G,isOnDemandRevalidate:C})},!1,P),j)throw t;return await (0,c.sendResponse)(F,X,new Response(null,{status:500})),null}}e.s(["handler",()=>H,"patchFetch",()=>M,"routeModule",()=>U,"serverHooks",()=>B,"workAsyncStorage",()=>G,"workUnitAsyncStorage",()=>q],533986)}];
|
|
1
|
+
module.exports=[404258,e=>{"use strict";function t(e){let t=e?.trim();return t?t.replace(/\/+$/,""):null}let r="http://localhost:41741";function a(){return t(process.env.NEXT_PUBLIC_APP_URL)??t(process.env.AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_AGX_BOARD_URL)??r}function s(){return t(process.env.AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_APP_URL)??r}function i(){let e=new Set([r,"http://127.0.0.1:41741"]);for(let r of[process.env.NEXT_PUBLIC_APP_URL,process.env.AGX_BOARD_URL,process.env.NEXT_PUBLIC_AGX_BOARD_URL]){let a=t(r);a&&e.add(a)}return Array.from(e)}e.s(["getAllowedOrigins",()=>i,"getConfiguredAppBaseUrl",()=>a,"getConfiguredBoardBaseUrl",()=>s])},323218,e=>{"use strict";var t=e.i(254799),r=e.i(173426),a=e.i(779429),s=e.i(689303),i=e.i(33878),o=e.i(488877),n=e.i(582743);e.i(426491);var l=e.i(515140),d=e.i(448643),u=e.i(863014),p=e.i(38193);async function c(e){let t=(0,r.createAdminDbClient)(),{data:a,error:s}=await t.from("task_comments").select("*").eq("task_id",e).is("deleted_at",null).order("created_at",{ascending:!0}).order("id",{ascending:!0});if(s){let e="string"==typeof s.message?s.message:"";if("42P01"===s.code||"PGRST205"===s.code||e.includes('relation "task_comments" does not exist')||e.includes("Could not find the table 'agx.task_comments'")||e.includes("Could not find the table 'public.task_comments'"))return[];throw s}return a||[]}async function g(e){let t=(0,r.createAdminDbClient)(),a=e.user_id,s=t.from("learnings").select("*").eq("scope","task").eq("scope_id",e.id);a&&s.eq("user_id",a);let[{data:i,error:n}]=await Promise.all([s]);if(n)throw n;return{task:i||[],project:[],global:o.vaultStore.getLearnings("global")||[]}}async function m(e){let t,a=e.stage;if(!a)return{prompt:null};let s=(0,r.createAdminDbClient)(),i=(t=e.workflow_id)&&/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(t)?e.workflow_id:"";if(!i&&e.project_id)try{let t=await (0,u.getProjectWithRepos)(e.project_id,e.user_id);t?.workflow_id&&(i=t.workflow_id)}catch{}i||(i=p.DEFAULT_WORKFLOW_ID);try{let{data:e,error:t}=await s.from("workflow_nodes").select("*").eq("workflow_id",i).eq("name",a).maybeSingle();if(!t&&e){let t=e.metadata&&"object"==typeof e.metadata?e.metadata:{},r="boolean"==typeof t.swarm&&t.swarm,a=Array.isArray(t.swarm_models)?t.swarm_models:void 0;if(e.prompt)return{prompt:e.prompt,swarm:r,provider:e.provider||void 0,model:e.model||void 0,swarm_models:a};return{prompt:null,swarm:r,provider:e.provider||void 0,model:e.model||void 0,swarm_models:a}}}catch{}try{let t=[];t.push(s.from("stage_prompts").select("*").eq("stage",a).eq("is_default",!0).eq("workflow_id",i).maybeSingle()),e.user_id&&t.push(s.from("stage_prompts").select("*").eq("stage",a).eq("user_id",e.user_id).eq("workflow_id",i).maybeSingle());let r=await Promise.all(t),o=r[0]?.data||null,n=e.user_id?r[1]?.data:null,l=n?.prompt||o?.prompt||null;if(l)return{prompt:l,swarm:n?.swarm??o?.swarm??!1,provider:n?.provider||o?.provider,model:n?.model||o?.model,swarm_models:n?.swarm_models||o?.swarm_models}}catch{}let o=p.defaultStagePrompts[a];return o?.prompt?{prompt:o.prompt,swarm:o.swarm??!1,provider:o.provider,model:o.model,swarm_models:o.swarm_models}:{prompt:null}}async function f(e,t){let r=e.project_id,a=e.project||void 0,o=null;if(r&&(o=await (0,u.getProjectWithRepos)(r,e.user_id)),!o&&a){let t=await (0,u.getProjectBySlug)(a,e.user_id);if(t){let e=await (0,u.getProjectRepos)(t.id);o={...t,repos:e}}}if(!o)return null;let[n,l]=await Promise.all([(0,u.getProjectMemory)(o.id,"human"),(0,u.getWorkspaceMapForContext)(o.id)]),d=(0,i.getKnowledgeNote)("project",o.id);if(o.repos.length>0){let e=(0,s.listResolvedRepoKnowledge)(o.repos),t=new Map;for(let r of e){if(!r.repoId)continue;let e="system"===r.producer?`[System-generated] ${r.content}`:r.content,a=t.get(r.repoId)??[];a.push(e),t.set(r.repoId,a)}o={...o,repos:o.repos.map(e=>({...e,notes:t.has(e.id)?t.get(e.id).join("\n\n"):e.notes}))}}return{project:o,repos:o.repos??[],workspace_map:l,learnings:[...n.map(e=>e.content),...d?.content?[`[System-generated] ${d.content}`]:[]]}}async function _(e){let r,[s,i,o,u]=await Promise.all([c(e.id),g(e),m(e),e.user_id?(0,d.getUserSettings)(e.user_id):Promise.resolve(null)]),p=await f(e,i.project),{frontmatter:_}=(0,l.parseFrontmatter)(e.content),h=(0,n.resolveMemoryAgentId)({defaultUserId:e.user_id||"system",frontmatter:_}),v=_.no_memory?[]:function(e,t=5){try{return(0,a.getSQLiteDb)().prepare("SELECT content FROM agent_memory WHERE agent_id = ? ORDER BY created_at DESC LIMIT ?").all(e,t).map(e=>e.content)}catch{return[]}}(h),w=(r=JSON.stringify(s.map(e=>({id:e.id,task_id:e.task_id,author_type:e.author_type||null,author_id:e.author_id||null,content:e.content||"",created_at:e.created_at||null}))),(0,t.createHash)("sha256").update(r).digest("hex")),y="string"==typeof e.stage&&e.stage.trim()?e.stage.trim():"",R=o.prompt??null,k={};if(R&&y){k[y]=R;let e=y.toLowerCase();k[e]||(k[e]=R)}let A=R&&y?[{stage:y,prompt:R}]:[];return{comments:s,learnings:i,agent_memories:v,stage_config:o,stage_prompt:R,stage_prompts:k,stage_objective:R,stageObjective:R,stagePrompts:A,project_context:p,comments_digest:w,user_settings:u}}e.s(["buildTaskContext",()=>_])},828032,e=>{"use strict";e.i(254799);var t=e.i(404258),r=e.i(173426);e.i(650837);var a=e.i(640911);let s=[/rm\s+(-rf?|--recursive)\s+[\/~]/i,/rm\s+-rf?\s+\*/i,/chmod\s+(777|a\+rwx)/i,/chown\s+.*\s+\//i,/>\s*\/dev\/sd[a-z]/i,/\.env/i,/credentials?\.json/i,/api[_-]?key/i,/secret[_-]?key/i,/private[_-]?key/i,/password/i,/curl.*\|\s*(ba)?sh/i,/wget.*\|\s*(ba)?sh/i,/nc\s+-l/i,/socat/i,/sudo\s+/i,/su\s+-/i,/mkfs\./i,/dd\s+if=/i,/eval\s*\(/i,/exec\s*\(/i,/child_process/i,/__import__/i,/base64.*>/i,/xxd/i,/tar.*-c.*\|.*curl/i];function i(e){let t=[];for(let r of s)r.test(e)&&t.push(r.source);let r="low";return/rm\s+(-rf?|--recursive)\s*[\/~\*]|sudo\s+|mkfs\.|dd\s+if=/i.test(e)?r="critical":/curl.*\|\s*(ba)?sh|wget.*\|\s*(ba)?sh|chmod\s+(777|a\+rwx)|\.env\b/i.test(e)?r="high":/password|api[_-]?key|secret[_-]?key|private[_-]?key|credentials?\.json/i.test(e)&&(r="medium"),{isDangerous:t.length>0,patterns:t,severity:r}}async function o(e){let t=(0,r.createAdminDbClient)(),{data:s,error:i}=await t.from("task_audit_log").insert({user_id:e.user_id,task_id:e.task_id,action:e.action,payload:e.payload,signature:e.signature,ip_address:e.ip_address,user_agent:e.user_agent,result:e.result||"pending"}).select("id").single();if(i)throw a.logger.error("Failed to write audit log",a.logger.formatError(i)),Error("Audit log write failed");return s.id}let n=["https://agx-cloud.vercel.app",...(0,t.getAllowedOrigins)()];function l(e){return!!e&&n.includes(e)}async function d(e){if(!e?.startsWith("Bearer "))return{valid:!1};let t=e.slice(7),a=(0,r.createAdminDbClient)(),{data:{user:s},error:i}=await a.auth.getUser(t);return i||!s?{valid:!1}:{valid:!0,userId:s.id}}e.s(["detectDangerousOperations",()=>i,"isValidOrigin",()=>l,"validateBearerToken",()=>d,"writeAuditLog",()=>o])},703329,550201,e=>{"use strict";function t(e,t){if(void 0===e)return t;let r=e.trim().toLowerCase();return"1"===r||"true"===r||"yes"===r||"on"===r||"0"!==r&&"false"!==r&&"no"!==r&&"off"!==r&&t}function r(){return t(process.env.AGX_GRAPH_DUAL_WRITE,!0)}function a(){return t(process.env.AGX_GRAPH_PARITY_LOGGING,!0)}function s(){return!t(process.env.AGX_GRAPH_READ_PATH_KILL_SWITCH,!1)&&"v2"===(process.env.AGX_GRAPH_READ_PATH_MODE||"v1").trim().toLowerCase()}e.s(["isDualWriteEnabled",()=>r,"isParityLoggingEnabled",()=>a,"isV2ReadPathEnabled",()=>s],550201);let i=new Set(["done","passed","failed","skipped"]),o=new Set(["running","awaiting_human","blocked"]),n=new Set(["done","passed","skipped"]);function l(e,t){let r=String(e||"").trim().toUpperCase();return"INTAKE"===r||"PROGRESS"===r||"DONE"===r?r:t}function d(e){let t,r=Object.values(e.nodes);if(0===r.length)return"queued";let a=r.filter(e=>"gate"===e.type&&e.required).every(e=>"passed"===e.status||"skipped"===e.status);return 0!==(t=e.doneCriteria?.completionSinkNodeIds??[]).length&&t.every(t=>{let r=e.nodes[t];return!!(r&&n.has(r.status))})&&a||r.every(e=>i.has(e.status))&&a?"completed":r.some(e=>"failed"===e.status)?"failed":r.some(e=>"blocked"===e.status)?"blocked":r.some(e=>o.has(e.status))||r.filter(e=>"done"===e.status||"passed"===e.status).length>0?"in_progress":"queued"}function u(e,t="INTAKE"){let r,a,s=d(e),o="completed"===(r=d(e))?"DONE":"in_progress"===r||"blocked"===r||"failed"===r?"PROGRESS":t,n="completed"===s?100:0===(a=Object.values(e.nodes)).length?0:Math.max(0,Math.min(100,Math.round(a.filter(e=>i.has(e.status)).length/a.length*100)));return{status:s,stage:o,progressPercent:n}}function p(e){var t;let r,s,i,o,n,d=(t={taskId:e.task.id,source:e.source,legacy:{status:e.task.status,stage:e.task.stage,progressPercent:e.legacyProgressPercent??null},v2:u(e.graph,l(e.task.stage||"INTAKE","INTAKE"))},s=[],i="queued"===(r=String(t.legacy.status||"").trim().toLowerCase())||"in_progress"===r||"blocked"===r||"completed"===r||"failed"===r?r:"queued",o=l(t.legacy.stage,"INTAKE"),n=Number.isFinite(Number(t.legacy.progressPercent))?Number(t.legacy.progressPercent):null,(i!==t.v2.status&&s.push({field:"status",legacy:i,v2:t.v2.status}),o!==t.v2.stage&&s.push({field:"stage",legacy:o,v2:t.v2.stage}),null!==n&&n!==t.v2.progressPercent&&s.push({field:"progressPercent",legacy:n,v2:t.v2.progressPercent}),0===s.length)?null:{taskId:t.taskId,source:t.source,diffs:s});return d&&a()&&console.warn("[graph-parity-diff]",JSON.stringify(d)),d}e.s(["logParityDiff",()=>p,"projectLegacyCompatFromGraph",()=>u],703329)},574749,e=>{"use strict";e.i(426491);var t=e.i(515140),r=e.i(550201),a=e.i(703329),s=e.i(951336);function i(e){if(!e)return[];if(Array.isArray(e))return Array.from(new Set(e.map(e=>String(e||"").trim()).filter(Boolean)));if("string"==typeof e){let t=e.trim();if(!t)return[];try{let e=JSON.parse(t);if(Array.isArray(e))return Array.from(new Set(e.map(e=>String(e||"").trim()).filter(Boolean)))}catch{}return Array.from(new Set(t.split(",").map(e=>e.trim()).filter(Boolean)))}return[]}function o(e){if(i(e.depends_on).length||"string"!=typeof e?.content)return e;let{frontmatter:r}=(0,t.parseFrontmatter)(e.content||""),a=i(r.depends_on);return a.length?{...e,depends_on:a}:e}function n(e){return"blocked"!==e.status||e.blocked_reason||e.stage&&"intake"!==e.stage.toLowerCase()?e.blocked_reason:"Awaiting approval"}async function l(e){if(!(0,r.isV2ReadPathEnabled)())return{...o(e),blocked_reason:n(e),read_path_source:"v1"};try{let t=await (0,s.getGraph)(e.id);if(!t)return{...o(e),read_path_source:"v1"};let r=(0,a.projectLegacyCompatFromGraph)(t,e.stage||"INTAKE"),i="queued"===r.status&&e.status&&"queued"!==e.status?e.status:r.status,l="completed"===i?"DONE":r.stage;(0,a.logParityDiff)({source:"read_path",task:e,graph:t});let d={...o(e),status:i,stage:l};return{...d,blocked_reason:n(d),read_path_source:"v2"}}catch(t){return console.error("Failed to project task from v2 graph; using v1 compatibility mode",t),{...o(e),read_path_source:"v1"}}}async function d(e){return Promise.all(e.map(e=>l(e)))}e.s(["projectTaskReadModel",()=>l,"projectTaskReadModels",()=>d])},20275,e=>{"use strict";var t=e.i(254799),r=e.i(466713);let a=/^\s*---\s*\r?\n[\s\S]*?\r?\n---\s*/,s=/^#\s+(.+?)(?:\r?\n|$)/;function i(e){return"string"==typeof e?e.trim():""}function o(e,t){let r=i(t),o=i(e);if(!o)return r;let n=o.replace(a,"").trim();if(!n)return r;let l=n.match(s);if(!l)return n;let d=n.slice(l[0].length).trim();return d||l[1].trim()||r}let n={...r.DEFAULT_EXECUTION_POLICY,replanBudgetInitial:3,replanBudgetRemaining:3,verifyBudgetInitial:5,verifyBudgetRemaining:5,maxConcurrentAutoChecks:1,maxConcurrent:1,priorityMode:"fifo"};function l(e,r){let a=new Date().toISOString(),s={type:"root",status:"pending",deps:[],title:e.title||"Untitled task",objective:function(e){let t=i(e.description);if(t)return o(t,e.title);let r=i(e.content);if(r)return o(r,e.title);let a=i(e.objective);return a?o(a,e.title):i(e.title)}(e),graphCreated:!1,criteria:[]};return{id:r?.graphId??(0,t.randomUUID)(),taskId:e.id,graphVersion:1,mode:"SIMPLE",nodes:{root:s,plan:{type:"work",status:"pending",deps:["root"],title:"Generate execution plan",description:"Analyze the task and generate a detailed execution graph with work nodes, gates, and dependencies.",attempts:0,maxAttempts:2,retryPolicy:{backoffMs:5e3,onExhaust:"escalate"}},"plan-approval":{type:"gate",status:"pending",gateType:"approval_gate",required:!0,deps:["plan"],verificationStrategy:{type:"human"}}},edges:[{from:"root",to:"plan",type:"hard",condition:"always"},{from:"plan",to:"plan-approval",type:"hard",condition:"always"}],policy:{...n},doneCriteria:{allRequiredGatesPassed:!0,noRunnableOrPendingWork:!0,completionSinkNodeIds:["plan-approval"]},versionHistory:[],runtimeEvents:[],createdAt:a,updatedAt:a}}e.s(["createRootOnlyGraph",()=>l],20275)},533986,e=>{"use strict";var t=e.i(692988),r=e.i(635595),a=e.i(75473),s=e.i(923435),i=e.i(418475),o=e.i(303482),n=e.i(976287),l=e.i(774462),d=e.i(111998),u=e.i(201516),p=e.i(68877),c=e.i(259460),g=e.i(257714),m=e.i(502073),f=e.i(187345),_=e.i(193695);e.i(293777);var h=e.i(274321),v=e.i(732470),w=e.i(764541);e.i(426491);var y=e.i(515140),R=e.i(173426),k=e.i(744071),A=e.i(828032),b=e.i(323218),E=e.i(353476),P=e.i(550201),C=e.i(20275),T=e.i(703329),S=e.i(951336),x=e.i(627013);async function I(e){if(!(0,P.isDualWriteEnabled)())return{enabled:!1,result:"disabled"};try{let t=await (0,S.getGraph)(e.id);if(t)return(0,T.logParityDiff)({source:"task_create_dual_write",task:e,graph:t}),{enabled:!0,result:"existing",graphId:t.id};let r=(0,C.createRootOnlyGraph)({id:e.id,title:e.title||void 0,description:e.description||void 0,content:e.content||void 0}),a=(0,x.validateGraph)(r);if(!a.valid)return{enabled:!0,result:"failed",error:`validateGraph failed: ${JSON.stringify(a.errors)}`};let s=await (0,S.createGraph)(r);return(0,T.logParityDiff)({source:"task_create_dual_write",task:e,graph:s}),{enabled:!0,result:"created",graphId:s.id}}catch(t){if(t instanceof S.GraphTaskAlreadyBoundError){let r=await (0,S.getGraph)(e.id);return r&&(0,T.logParityDiff)({source:"task_create_dual_write",task:e,graph:r}),{enabled:!0,result:"existing",graphId:t.existingGraphId}}return{enabled:!0,result:"failed",error:t instanceof Error?t.message:String(t)}}}var O=e.i(574749);e.i(650837);var j=e.i(640911);async function N(e){try{let t=k.LOCAL_USER.id,{searchParams:r}=new URL(e.url),a=r.get("project")||void 0,s="1"===r.get("orphan"),i=r.get("status"),o=r.get("slug"),n=r.get("search")||void 0;if(o){let e=await w.db.getTaskBySlug(o,t);if(!e)return v.NextResponse.json({error:"Task not found"},{status:404});let r=await (0,O.projectTaskReadModel)(e),a=await (0,b.buildTaskContext)(e),s=(0,y.resolveTaskConfig)(e,a.stage_config,a.user_settings),i={...r,...a,resolved_provider:s.provider,resolved_model:s.model??void 0,resolved_swarm:s.swarm,resolved_swarm_models:s.swarm_models};return v.NextResponse.json({task:i,stage_prompt:i.stage_prompt,stage_prompts:i.stage_prompts,stage_objective:i.stage_objective,stageObjective:i.stageObjective,stagePrompts:i.stagePrompts})}let l=await w.db.getTasks(t,{project:a,status:i||void 0,search:n,orphan:s}),d=await (0,O.projectTaskReadModels)(l);return v.NextResponse.json({tasks:d})}catch(e){return j.logger.error("Error fetching tasks",j.logger.formatError(e)),v.NextResponse.json({error:"Failed to fetch tasks"},{status:500})}}async function D(e){try{let t=k.LOCAL_USER.id,r=await e.json(),{content:a,swarm_models:s,project_id:i,title:o}=r,n=Array.isArray(r?.depends_on)?r.depends_on:"string"==typeof r?.depends_on?[r.depends_on]:void 0;if(!a)return v.NextResponse.json({error:"Content is required"},{status:400});let l=(0,A.detectDangerousOperations)(a);if(l.isDangerous&&"critical"===l.severity)return v.NextResponse.json({error:"Task contains potentially dangerous operations",dangerous:!0,severity:l.severity,patterns:l.patterns,message:"This task has been blocked. Please review and remove dangerous commands."},{status:400});let d=await w.db.createTask(a,t,{swarmModels:s,dependsOn:n,projectId:"string"==typeof i?i:void 0,title:"string"==typeof o?o:void 0});await (0,E.attemptStartTask)(d.id,t);let u=await w.db.getTask(d.id,t)||d,p=await I(u);if("failed"===p.result&&j.logger.error("Task dual-write graph creation failed",{taskId:u.id,error:p.error}),p.graphId){let e=(0,R.createAdminDbClient)();await e.from("tasks").update({graph_id:p.graphId}).eq("id",u.id),u.graph_id=p.graphId}let c=await (0,b.buildTaskContext)(u),{comments_digest:g,stage_config:m}=c,f=(0,y.resolveTaskConfig)(u,m,c.user_settings),_=e.headers.get("x-forwarded-for")?.split(",")[0].trim()||e.headers.get("x-real-ip")||void 0,h=e.headers.get("user-agent")||void 0;await (0,A.writeAuditLog)({user_id:t,task_id:u.id,action:"dispatch",payload:{title:u.title,stage:u.stage,engine:u.engine,provider:f.provider,model:f.model??void 0,swarm:f.swarm,swarm_models:f.swarm_models,project:u.project,dangerous:l.isDangerous?{severity:l.severity,patterns:l.patterns}:null},signature:"unsigned",ip_address:_,user_agent:h,result:"pending"});let P={...u,...c,resolved_provider:f.provider,resolved_model:f.model??void 0,resolved_swarm:f.swarm,resolved_swarm_models:f.swarm_models},C={id:u.id,task:P,stage_prompt:P.stage_prompt,stage_prompts:P.stage_prompts,stage_objective:P.stage_objective,stageObjective:P.stageObjective,stagePrompts:P.stagePrompts,graph_dual_write:p};return l.isDangerous&&(C.warning={message:"Task contains potentially dangerous operations. Daemon may prompt for confirmation.",severity:l.severity,patterns:l.patterns}),v.NextResponse.json(C,{status:201})}catch(e){return j.logger.error("Error creating task",j.logger.formatError(e)),v.NextResponse.json({error:"Failed to create task"},{status:500})}}e.s(["GET",()=>N,"POST",()=>D],241235);var L=e.i(241235);let U=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/tasks/route",pathname:"/api/tasks",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/local/app/api/tasks/route.ts",nextConfigOutput:"standalone",userland:L}),{workAsyncStorage:G,workUnitAsyncStorage:q,serverHooks:B}=U;function M(){return(0,a.patchFetch)({workAsyncStorage:G,workUnitAsyncStorage:q})}async function H(e,t,a){U.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/tasks/route";v=v.replace(/\/index$/,"")||"/";let w=await U.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!w)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:y,params:R,nextConfig:k,parsedUrl:A,isDraftMode:b,prerenderManifest:E,routerServerContext:P,isOnDemandRevalidate:C,revalidateOnlyGenerated:T,resolvedPathname:S,clientReferenceManifest:x,serverActionsManifest:I}=w,O=(0,n.normalizeAppPath)(v),j=!!(E.dynamicRoutes[O]||E.routes[S]),N=async()=>((null==P?void 0:P.render404)?await P.render404(e,t,A,!1):t.end("This page could not be found"),null);if(j&&!b){let e=!!E.routes[S],t=E.dynamicRoutes[O];if(t&&!1===t.fallback&&!e){if(k.experimental.adapterPath)return await N();throw new _.NoFallbackError}}let D=null;!j||U.isDev||b||(D="/index"===(D=S)?"/":D);let L=!0===U.isDev||!j,G=j&&!L;I&&x&&(0,o.setManifestsSingleton)({page:v,clientReferenceManifest:x,serverActionsManifest:I});let q=e.method||"GET",B=(0,i.getTracer)(),M=B.getActiveScopeSpan(),H={params:R,prerenderManifest:E,renderOpts:{experimental:{authInterrupts:!!k.experimental.authInterrupts},cacheComponents:!!k.cacheComponents,supportsDynamicResponse:L,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:k.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>U.onRequestError(e,t,a,s,P)},sharedContext:{buildId:y}},F=new l.NodeNextRequest(e),X=new l.NodeNextResponse(t),K=d.NextRequestAdapter.fromNodeNextRequest(F,(0,d.signalFromNodeResponse)(t));try{let o=async e=>U.handle(K,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=B.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=`${q} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${q} ${v}`)}),n=!!(0,s.getRequestMeta)(e,"minimalMode"),l=async s=>{var i,l;let d=async({previousCacheEntry:r})=>{try{if(!n&&C&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await o(s);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let d=H.renderOpts.collectedTags;if(!j)return await (0,c.sendResponse)(F,X,i,H.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,g.toNodeOutgoingHttpHeaders)(i.headers);d&&(t[f.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:h.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 U.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:G,isOnDemandRevalidate:C})},!1,P),t}},u=await U.handleResponse({req:e,nextConfig:k,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:E,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:T,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:n});if(!j)return null;if((null==u||null==(i=u.value)?void 0:i.kind)!==h.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});n||t.setHeader("x-nextjs-cache",C?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let _=(0,g.fromNodeOutgoingHttpHeaders)(u.value.headers);return n&&j||_.delete(f.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||_.get("Cache-Control")||_.set("Cache-Control",(0,m.getCacheControlHeader)(u.cacheControl)),await (0,c.sendResponse)(F,X,new Response(u.value.body,{headers:_,status:u.value.status||200})),null};M?await l(M):await B.withPropagatedContext(e.headers,()=>B.trace(u.BaseServerSpan.handleRequest,{spanName:`${q} ${v}`,kind:i.SpanKind.SERVER,attributes:{"http.method":q,"http.target":e.url}},l))}catch(t){if(t instanceof _.NoFallbackError||await U.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:G,isOnDemandRevalidate:C})},!1,P),j)throw t;return await (0,c.sendResponse)(F,X,new Response(null,{status:500})),null}}e.s(["handler",()=>H,"patchFetch",()=>M,"routeModule",()=>U,"serverHooks",()=>B,"workAsyncStorage",()=>G,"workUnitAsyncStorage",()=>q],533986)}];
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=apps_local_c101ba9e._.js.map
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
module.exports=[712513,(e,t,r)=>{},765443,e=>{"use strict";let t="project_objectives_workspace",r="project_goals_workspace",i="project_health_snapshot",a=new Set(["on_track","at_risk","off_track","done"]);function o(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}function n(e){return`${e}_${Math.random().toString(36).slice(2,10)}`}function s(e){return[...e].sort((e,t)=>Date.parse(t.updatedAt)-Date.parse(e.updatedAt))}function c(e){return[...e].sort((e,t)=>Date.parse(e.createdAt)-Date.parse(t.createdAt))}function l(e){return[...e].sort((e,t)=>Date.parse(t.createdAt)-Date.parse(e.createdAt))}function u(e,t=""){return"string"==typeof e?e:t}function d(e,t="1970-01-01T00:00:00.000Z"){if("string"!=typeof e)return t;let r=Date.parse(e);return Number.isNaN(r)?t:new Date(r).toISOString()}function p(e){return"number"==typeof e&&Number.isFinite(e)?Math.max(0,Math.min(100,Math.round(e))):0}function f(e){return"string"==typeof e&&a.has(e)?e:"on_track"}function v(e){return f(e)}function m(e){return p(e)}function y(e,t="objective"){let r=e.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").replace(/-{2,}/g,"-").slice(0,32);return r||t.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||"objective"}function h(e,t,r="objective"){let i=y(r),a=y(e,i),o=a,n=2;for(;t.has(o);){let e=`-${n}`,t=Math.max(1,32-e.length);o=`${a.slice(0,t)}${e}`,n+=1}return t.add(o),o}function j(e,t,r){return h(e,new Set(t.filter(e=>e.id!==r).map(e=>y(e.key||e.title||e.id))),r??e)}function b(e){var t;if(!o(e))return null;let r=d(e.updatedAt??e.createdAt),i=d(e.createdAt,r);return{id:u(e.id,n("objective")),title:u(e.title,"Untitled objective"),teamId:u(e.teamId??e.team_id??e.ownerTeamId),key:y(u(e.key??e.slug??e.label),u(e.title??e.id,"objective")),threadId:u(e.threadId)||null,chatSessionVersion:function(e,t=0){return"number"==typeof e&&Number.isFinite(e)?Math.max(0,Math.floor(e)):t}(e.chatSessionVersion,0),scheduledTaskIds:Array.isArray(t=e.scheduledTaskIds??e.promptJobIds)?Array.from(new Set(t.map(e=>"string"==typeof e?e.trim():"").filter(Boolean))):[],summary:u(e.summary),progress:p(e.progress),status:f(e.status),createdAt:i,updatedAt:r}}function g(e){if(!o(e))return null;let t=d(e.updatedAt??e.createdAt),r=d(e.createdAt,t),i=u(e.objectiveId??e.goalId);return i?{id:u(e.id,n("objective_activity")),objectiveId:i,sourceType:"note",sourceLabel:u(e.sourceLabel,"Update"),title:u(e.title,"Untitled activity"),body:u(e.body),createdAt:r,updatedAt:t,relatedTaskId:u(e.relatedTaskId)||null}:null}function A(e){if(!o(e))return null;let t=u(e.activityId);return t?{id:u(e.id,n("objective_thread_message")),activityId:t,author:u(e.author,"You"),body:u(e.body),createdAt:d(e.createdAt)}:null}function R(){return{objectives:[],activities:[],activityThreads:{}}}function w(e){let t;if(!o(e))return R();let r=Array.isArray(e.objectives)?e.objectives.map(e=>b(e)).filter(e=>null!==e):[],i=Array.isArray(e.activities)?e.activities.map(e=>g(e)).filter(e=>null!==e):[],a=o(e.activityThreads)?Object.fromEntries(Object.entries(e.activityThreads).map(([e,t])=>[e,c(Array.isArray(t)?t.map(e=>A(e)).filter(e=>null!==e):[])])):{};return{objectives:s((t=new Set,r.map(e=>{let r=h(e.key||e.title||e.id,t,e.id||e.title||"objective");return e.key===r?e:{...e,key:r}}))),activities:l(i),activityThreads:a}}function E(e){if(!o(e))return R();let i=e[t];if(void 0!==i){let e=w(i);if(e.objectives.length>0||e.activities.length>0||Object.keys(e.activityThreads).length>0)return e}let a=e[r];if(void 0!==a){if(!o(a))return R();let e=Array.isArray(a.goals)?a.goals.map(e=>(function(e){if(!o(e))return null;let t=u(e.target),r=[u(e.summary),t?`Measure: ${t}`:""].filter(Boolean).join("\n\n");return b({...e,summary:r})})(e)).filter(e=>null!==e):[],t=Array.isArray(a.manualActivities)?a.manualActivities.map(e=>g({...e,sourceLabel:"Update"})).filter(e=>null!==e):[],r=o(a.activityThreads)?Object.fromEntries(Object.entries(a.activityThreads).map(([e,t])=>[e,c(Array.isArray(t)?t.map(t=>A({...t,activityId:e})).filter(e=>null!==e):[])])):{};return{objectives:s(e),activities:l(t),activityThreads:r}}return R()}function P(e,i){let a={...e};return delete a[r],a[t]=w(i),a}function I(e,t){let r={...e};return t?r[i]={progress:p(t.progress),status:f(t.status),updatedAt:d(t.updatedAt),...t.source?{source:t.source.trim()}:{},...t.objectiveId?{objectiveId:t.objectiveId}:{},...t.objectiveKey?{objectiveKey:t.objectiveKey}:{},...t.note?{note:t.note.trim()}:{}}:delete r[i],r}function O(e,t){let r=e.objectives.findIndex(e=>e.id===t.id)>=0?e.objectives.map(e=>e.id===t.id?t:e):[t,...e.objectives];return{...e,objectives:s(r)}}e.s(["PROJECT_OBJECTIVES_METADATA_KEY",0,t,"generateProjectObjectiveKey",()=>j,"normalizeProjectHealthProgress",()=>m,"normalizeProjectHealthStatus",()=>v,"readProjectObjectivesWorkspace",()=>E,"upsertProjectObjective",()=>O,"writeProjectHealthSnapshot",()=>I,"writeProjectObjectivesWorkspace",()=>P])},901977,e=>{"use strict";e.i(712513);var t=e.i(764541),r=e.i(744071),i=e.i(765443),a=e.i(671182);async function o(e,i){let a=await t.db.getProjectWithRepos(e,r.LOCAL_USER.id);if(!a)return null;let o=n(a),s=o.objectives.find(e=>e.id===i)??null;return s?{project:a,workspace:o,objective:s}:null}function n(e){let t=e.slug??e.id,r=(0,a.getObjectiveRepository)(t);return r.hasFiles()?r.readWorkspace():(0,i.readProjectObjectivesWorkspace)(e.metadata)}async function s(e){let o=await t.db.getProjectWithRepos(e.projectId,r.LOCAL_USER.id),n=o?.slug??e.projectId;(0,a.getObjectiveRepository)(n).writeWorkspace(e.workspace);let s=(0,i.writeProjectObjectivesWorkspace)(e.currentMetadata??{},e.workspace),c=e.transformMetadata?e.transformMetadata(s):s;return t.db.updateProject(e.projectId,r.LOCAL_USER.id,{metadata:c})}async function c(e){return t.db.updateProject(e.projectId,r.LOCAL_USER.id,{metadata:(0,i.writeProjectHealthSnapshot)(e.currentMetadata??{},e.snapshot)})}async function l(e){return t.db.updateProject(e.projectId,r.LOCAL_USER.id,{metadata:e.transformMetadata(e.currentMetadata??{})})}e.s(["loadProjectObjectiveContext",()=>o,"loadProjectObjectiveWorkspace",()=>n,"persistProjectHealthSnapshot",()=>c,"persistProjectObjectiveMetadata",()=>l,"persistProjectObjectiveWorkspace",()=>s])},341858,e=>{"use strict";function t(e,t,r){return t?e.objectives.find(e=>e.teamId===t&&e.id!==r)??null:null}function r(e){if("string"==typeof e)return e.trim()||void 0}function i(e){return null===e?null:"string"==typeof e?e.trim():void 0}function a(e){if(Array.isArray(e))return Array.from(new Set(e.map(e=>"string"==typeof e?e.trim():"").filter(Boolean)))}e.i(712513),e.i(901977),e.s(["findObjectiveAssignedToTeam",()=>t,"readNullableString",()=>i,"readOptionalString",()=>r,"readStringArray",()=>a])},124985,36336,717245,e=>{"use strict";var t=e.i(522734),r=e.i(814747),i=e.i(446786),a=e.i(260476);let o=/^---\s*\n([\s\S]*?)\n---\s*(?:\n([\s\S]*))?$/,n=new Set(["metric-check","status-update","milestone","note"]);function s(e,t=""){return"string"==typeof e?e:t}function c(e,t={}){var r;let i=e.match(o);if(!i)throw Error(`Activity file is missing YAML frontmatter${t.filePath?` (${t.filePath})`:""}.`);let[,l,u=""]=i,d=(0,a.load)(l,{...t.filePath?{filename:t.filePath}:{}}),p=d&&"object"==typeof d&&!Array.isArray(d)?d:{};return{id:s(p.id),source:s(p.source,"manual"),objectiveLabel:s(p.objectiveLabel),createdAt:function(e,t="1970-01-01T00:00:00.000Z"){if("string"!=typeof e)return t;let r=Date.parse(e);return Number.isNaN(r)?t:new Date(r).toISOString()}(p.createdAt),type:"string"==typeof(r=p.type)&&n.has(r)?r:"note",body:u.trim()}}function l(e){let t={id:e.id,source:e.source,objectiveLabel:e.objectiveLabel,createdAt:e.createdAt,type:e.type},r=(0,a.dump)(t,{lineWidth:120,noRefs:!0,sortKeys:!1}).trimEnd(),i=e.body.trim();return i?`---
|
|
2
|
+
${r}
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
${i}
|
|
6
|
+
`:`---
|
|
7
|
+
${r}
|
|
8
|
+
---
|
|
9
|
+
`}e.s(["parseActivityFile",()=>c],36336),e.s(["serializeActivityFile",()=>l],717245);class u{rootDir;constructor(e){this.rootDir=r.default.resolve(e)}ensureDir(){t.default.mkdirSync(this.rootDir,{recursive:!0})}readAll(){if(!t.default.existsSync(this.rootDir))return[];let e=t.default.readdirSync(this.rootDir).filter(e=>e.endsWith(".md")),i=[];for(let a of e){let e=r.default.join(this.rootDir,a);try{let r=t.default.readFileSync(e,"utf8");i.push(c(r,{filePath:e}))}catch(t){console.error(`[activities] failed to read ${e}:`,t)}}return i.sort((e,t)=>Date.parse(t.createdAt)-Date.parse(e.createdAt))}list(e={}){let t=this.readAll();if(e.type&&(t=t.filter(t=>t.type===e.type)),e.source&&(t=t.filter(t=>t.source===e.source)),e.from){let r=Date.parse(e.from);Number.isNaN(r)||(t=t.filter(e=>Date.parse(e.createdAt)>=r))}if(e.to){let r=Date.parse(e.to);Number.isNaN(r)||(t=t.filter(e=>Date.parse(e.createdAt)<=r))}let r=t.length,i=Math.max(1,e.page??1),a=Math.min(100,Math.max(1,e.limit??25)),o=(i-1)*a;return{activities:t.slice(o,o+a),total:r,page:i,limit:a,hasMore:o+a<r}}append(e){var i;let a,o;this.ensureDir();let n=(a=(i=e).createdAt.replace(/[:.]/g,"-").replace("T","-").replace("Z",""),o=i.type.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,48),`${a}-${o}.md`),s=r.default.join(this.rootDir,n),c=l(e);return t.default.writeFileSync(s,c,"utf8"),s}}let d=new Map;function p(e,t){let a,o=r.default.join((a=process.env.AGX_DATA_DIR?.trim())?r.default.resolve(a):r.default.join((0,i.homedir)(),".agx"),"projects",e,"objectives",t,"activities"),n=d.get(o);return n||(n=new u(o),d.set(o,n)),n}e.s(["getActivityRepository",()=>p],124985)},645363,e=>{"use strict";var t=e.i(692988),r=e.i(635595),i=e.i(75473),a=e.i(923435),o=e.i(418475),n=e.i(303482),s=e.i(976287),c=e.i(774462),l=e.i(111998),u=e.i(201516),d=e.i(68877),p=e.i(259460),f=e.i(257714),v=e.i(502073),m=e.i(187345),y=e.i(193695);e.i(293777);var h=e.i(274321),j=e.i(254799),b=e.i(732470);e.i(341858);var g=e.i(901977);e.i(36336),e.i(717245);var A=e.i(124985);e.i(650837);var R=e.i(640911);let w=new Set(["metric-check","status-update","milestone","note"]);async function E(e){let t=await e,r="string"==typeof t?.id?t.id.trim():"",i="string"==typeof t?.objectiveId?t.objectiveId.trim():"";return r&&i?{projectId:r,objectiveId:i}:null}async function P(e,t){try{let r=await E(t.params);if(!r)return b.NextResponse.json({error:"Objective not found"},{status:404});let i=await (0,g.loadProjectObjectiveContext)(r.projectId,r.objectiveId);if(!i)return b.NextResponse.json({error:"Objective not found"},{status:404});let{project:a,objective:o}=i,n=a.slug??a.id,s=(0,A.getActivityRepository)(n,o.key),c=e.nextUrl,l=c.searchParams.get("type"),u=l&&w.has(l)?l:void 0,d=s.list({type:u,source:c.searchParams.get("source")??void 0,from:c.searchParams.get("from")??void 0,to:c.searchParams.get("to")??void 0,page:parseInt(c.searchParams.get("page")??"",10)||void 0,limit:parseInt(c.searchParams.get("limit")??"",10)||void 0});return b.NextResponse.json(d)}catch(e){return R.logger.error("Failed to load activities",R.logger.formatError(e)),b.NextResponse.json({error:"Failed to load activities"},{status:500})}}async function I(e,t){try{let r=await E(t.params);if(!r)return b.NextResponse.json({error:"Objective not found"},{status:404});let i=await (0,g.loadProjectObjectiveContext)(r.projectId,r.objectiveId);if(!i)return b.NextResponse.json({error:"Objective not found"},{status:404});let a=await e.json(),o=a?.type,n="string"==typeof a?.body?a.body.trim():"";if(!o||!w.has(o))return b.NextResponse.json({error:"Invalid type. Must be one of: metric-check, status-update, milestone, note"},{status:400});if(!n)return b.NextResponse.json({error:"Body is required"},{status:400});let{project:s,objective:c}=i,l=s.slug??s.id,u=(0,A.getActivityRepository)(l,c.key),d={id:(0,j.randomUUID)(),source:"manual",objectiveLabel:c.key,createdAt:new Date().toISOString(),type:o,body:n};return u.append(d),b.NextResponse.json(d,{status:201})}catch(e){return R.logger.error("Failed to create activity",R.logger.formatError(e)),b.NextResponse.json({error:"Failed to create activity"},{status:500})}}e.s(["GET",()=>P,"POST",()=>I,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],328966);var O=e.i(328966);let S=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/projects/[id]/objectives/[objectiveId]/activities/route",pathname:"/api/projects/[id]/objectives/[objectiveId]/activities",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/local/app/api/projects/[id]/objectives/[objectiveId]/activities/route.ts",nextConfigOutput:"standalone",userland:O}),{workAsyncStorage:x,workUnitAsyncStorage:C,serverHooks:N}=S;function T(){return(0,i.patchFetch)({workAsyncStorage:x,workUnitAsyncStorage:C})}async function k(e,t,i){S.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let j="/api/projects/[id]/objectives/[objectiveId]/activities/route";j=j.replace(/\/index$/,"")||"/";let b=await S.prepare(e,t,{srcPage:j,multiZoneDraftMode:!1});if(!b)return t.statusCode=400,t.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve()),null;let{buildId:g,params:A,nextConfig:R,parsedUrl:w,isDraftMode:E,prerenderManifest:P,routerServerContext:I,isOnDemandRevalidate:O,revalidateOnlyGenerated:x,resolvedPathname:C,clientReferenceManifest:N,serverActionsManifest:T}=b,k=(0,s.normalizeAppPath)(j),_=!!(P.dynamicRoutes[k]||P.routes[C]),D=async()=>((null==I?void 0:I.render404)?await I.render404(e,t,w,!1):t.end("This page could not be found"),null);if(_&&!E){let e=!!P.routes[C],t=P.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(R.experimental.adapterPath)return await D();throw new y.NoFallbackError}}let M=null;!_||S.isDev||E||(M="/index"===(M=C)?"/":M);let U=!0===S.isDev||!_,L=_&&!U;T&&N&&(0,n.setManifestsSingleton)({page:j,clientReferenceManifest:N,serverActionsManifest:T});let $=e.method||"GET",H=(0,o.getTracer)(),F=H.getActiveScopeSpan(),q={params:A,prerenderManifest:P,renderOpts:{experimental:{authInterrupts:!!R.experimental.authInterrupts},cacheComponents:!!R.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:R.cacheLife,waitUntil:i.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,i,a)=>S.onRequestError(e,t,i,a,I)},sharedContext:{buildId:g}},K=new c.NodeNextRequest(e),W=new c.NodeNextResponse(t),B=l.NextRequestAdapter.fromNodeNextRequest(K,(0,l.signalFromNodeResponse)(t));try{let n=async e=>S.handle(B,q).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let i=r.get("next.route");if(i){let t=`${$} ${i}`;e.setAttributes({"next.route":i,"http.route":i,"next.span_name":t}),e.updateName(t)}else e.updateName(`${$} ${j}`)}),s=!!(0,a.getRequestMeta)(e,"minimalMode"),c=async a=>{var o,c;let l=async({previousCacheEntry:r})=>{try{if(!s&&O&&x&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await n(a);e.fetchMetrics=q.renderOpts.fetchMetrics;let c=q.renderOpts.pendingWaitUntil;c&&i.waitUntil&&(i.waitUntil(c),c=void 0);let l=q.renderOpts.collectedTags;if(!_)return await (0,p.sendResponse)(K,W,o,q.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(o.headers);l&&(t[m.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==q.renderOpts.collectedRevalidate&&!(q.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&q.renderOpts.collectedRevalidate,i=void 0===q.renderOpts.collectedExpire||q.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:q.renderOpts.collectedExpire;return{value:{kind:h.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:i}}}}catch(t){throw(null==r?void 0:r.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:j,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:O})},!1,I),t}},u=await S.handleResponse({req:e,nextConfig:R,cacheKey:M,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:P,isRoutePPREnabled:!1,isOnDemandRevalidate:O,revalidateOnlyGenerated:x,responseGenerator:l,waitUntil:i.waitUntil,isMinimalMode:s});if(!_)return null;if((null==u||null==(o=u.value)?void 0:o.kind)!==h.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(c=u.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});s||t.setHeader("x-nextjs-cache",O?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let y=(0,f.fromNodeOutgoingHttpHeaders)(u.value.headers);return s&&_||y.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||y.get("Cache-Control")||y.set("Cache-Control",(0,v.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(K,W,new Response(u.value.body,{headers:y,status:u.value.status||200})),null};F?await c(F):await H.withPropagatedContext(e.headers,()=>H.trace(u.BaseServerSpan.handleRequest,{spanName:`${$} ${j}`,kind:o.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},c))}catch(t){if(t instanceof y.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:L,isOnDemandRevalidate:O})},!1,I),_)throw t;return await (0,p.sendResponse)(K,W,new Response(null,{status:500})),null}}e.s(["handler",()=>k,"patchFetch",()=>T,"routeModule",()=>S,"serverHooks",()=>N,"workAsyncStorage",()=>x,"workUnitAsyncStorage",()=>C],645363)}];
|
|
10
|
+
|
|
11
|
+
//# sourceMappingURL=apps_local_c530bd77._.js.map
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
module.exports=[641922,953610,e=>{"use strict";var t=e.i(522734),r=e.i(814747),i=e.i(446786);function s(e,t){let s;return r.default.join((s=process.env.AGX_DATA_DIR?.trim())?r.default.resolve(s):r.default.join((0,i.homedir)(),".agx"),"projects",e,"objectives",t,"program.md")}function a(e,r){let i=s(e,r);if(!t.default.existsSync(i))return{path:i,content:null,updatedAt:null};try{let e=t.default.readFileSync(i,"utf8"),r=t.default.statSync(i);return{path:i,content:e,updatedAt:r.mtime.toISOString()}}catch{return{path:i,content:null,updatedAt:null}}}function n(e,i,a){let n=s(e,i);t.default.mkdirSync(r.default.dirname(n),{recursive:!0});let o=a.replace(/\s+$/g,"");if(0===o.length)return t.default.existsSync(n)&&t.default.unlinkSync(n),{path:n,content:null,updatedAt:null};let u=o+"\n";t.default.writeFileSync(n,u,"utf8");let c=t.default.statSync(n);return{path:n,content:u,updatedAt:c.mtime.toISOString()}}e.s(["readProgram",()=>a,"writeProgram",()=>n],953610),e.s([],641922)},11061,e=>{"use strict";var t=e.i(522734),r=e.i(446786),i=e.i(814747),s=e.i(769025);let{DatabaseSync:a}=process.getBuiltinModule("node:sqlite"),n=process.env.AGX_GROUP_CHAT_DIR?.trim()||i.default.join(r.default.homedir(),".agx","group-chat"),o=i.default.join(n,"history.sqlite");function u(e){return"scripted"===e?"scripted":"chat"}function c(e){let t,r=e.chat_created_at??e.created_at,i=e.chat_completed_at??null,s=function(e,t){switch(e){case"queued":return"queued";case"running":case"awaiting_user":case"blocked":return"running";case"completed":return"success";case"failed":return"failed";case"cancelled":return"cancelled";default:return t}}(e.chat_status,e.status);return{id:e.id,projectId:e.project_id,projectSlug:e.project_slug,issueId:e.issue_id,issueIdentifier:e.issue_identifier,issueTitle:e.issue_title,issueStatus:e.issue_status,issueAssignee:e.issue_assignee,threadId:e.thread_id,rootMessageId:e.root_message_id,chatRunId:e.chat_run_id,agentId:e.agent_id,agentName:e.agent_name,mode:u(e.mode),sessionTitle:"chat"===u(e.mode)&&(t=String(e.root_content??"").replace(/\[reaction\s+[^\]]*\]/gi,"").replace(/\[agx:[^\]]*\]/g,"").replace(/\[checkpoint\]/g,"").replace(/\[criteria:\s*[^\]]*\]/g,"").replace(/\[done\]/g,"").replace(/\[blocked[^\]]*\]/g,"").replace(/^\[SKIP\]$/gm,"").replace(/\s+/g," ").trim())?t.length>72?`${t.slice(0,69).trimEnd()}...`:t:null,status:s,durationMs:null!=i?Math.max(i-r,0):null,lastError:e.chat_last_error??e.error,recapFilePath:e.recap_file_path??null,startedAt:new Date(r).toISOString(),updatedAt:new Date((e.chat_updated_at??e.updated_at)||e.updated_at).toISOString(),completedAt:"number"==typeof i?new Date(i).toISOString():null}}async function l(e){await t.promises.mkdir(n,{recursive:!0});let r=new a(o);(0,s.pragmaSet)(r,"journal_mode = WAL");try{r.exec(`
|
|
2
|
+
CREATE TABLE IF NOT EXISTS chat_runs (
|
|
3
|
+
id TEXT PRIMARY KEY,
|
|
4
|
+
thread_id TEXT NOT NULL,
|
|
5
|
+
root_message_id TEXT,
|
|
6
|
+
user_id TEXT NOT NULL,
|
|
7
|
+
project_slug TEXT,
|
|
8
|
+
status TEXT NOT NULL,
|
|
9
|
+
current_step INTEGER NOT NULL DEFAULT 0,
|
|
10
|
+
max_steps INTEGER NOT NULL DEFAULT 10,
|
|
11
|
+
steps_used INTEGER NOT NULL DEFAULT 0,
|
|
12
|
+
last_error TEXT,
|
|
13
|
+
active_participant_ids TEXT NOT NULL DEFAULT '[]',
|
|
14
|
+
payload_json TEXT,
|
|
15
|
+
result_json TEXT,
|
|
16
|
+
created_at INTEGER NOT NULL,
|
|
17
|
+
updated_at INTEGER NOT NULL,
|
|
18
|
+
completed_at INTEGER
|
|
19
|
+
);
|
|
20
|
+
CREATE TABLE IF NOT EXISTS messages (
|
|
21
|
+
thread_id TEXT NOT NULL,
|
|
22
|
+
id TEXT NOT NULL,
|
|
23
|
+
role TEXT NOT NULL,
|
|
24
|
+
participant_id TEXT,
|
|
25
|
+
content TEXT NOT NULL,
|
|
26
|
+
timestamp INTEGER NOT NULL,
|
|
27
|
+
root_message_id TEXT,
|
|
28
|
+
parent_message_id TEXT,
|
|
29
|
+
depth INTEGER NOT NULL DEFAULT 0,
|
|
30
|
+
thread_status TEXT,
|
|
31
|
+
outcome_note TEXT,
|
|
32
|
+
PRIMARY KEY (thread_id, id)
|
|
33
|
+
);
|
|
34
|
+
CREATE TABLE IF NOT EXISTS linear_runs (
|
|
35
|
+
id TEXT PRIMARY KEY,
|
|
36
|
+
project_id TEXT,
|
|
37
|
+
project_slug TEXT,
|
|
38
|
+
issue_id TEXT NOT NULL,
|
|
39
|
+
issue_identifier TEXT NOT NULL,
|
|
40
|
+
issue_title TEXT NOT NULL,
|
|
41
|
+
issue_status TEXT NOT NULL,
|
|
42
|
+
issue_assignee TEXT,
|
|
43
|
+
thread_id TEXT NOT NULL,
|
|
44
|
+
root_message_id TEXT,
|
|
45
|
+
chat_run_id TEXT,
|
|
46
|
+
agent_id TEXT NOT NULL,
|
|
47
|
+
agent_name TEXT NOT NULL,
|
|
48
|
+
mode TEXT NOT NULL DEFAULT 'chat',
|
|
49
|
+
status TEXT NOT NULL DEFAULT 'queued',
|
|
50
|
+
error TEXT,
|
|
51
|
+
recap_file_path TEXT,
|
|
52
|
+
created_at INTEGER NOT NULL,
|
|
53
|
+
updated_at INTEGER NOT NULL
|
|
54
|
+
);
|
|
55
|
+
CREATE INDEX IF NOT EXISTS idx_linear_runs_issue_created
|
|
56
|
+
ON linear_runs (issue_id, created_at DESC);
|
|
57
|
+
CREATE INDEX IF NOT EXISTS idx_linear_runs_project_issue_created
|
|
58
|
+
ON linear_runs (project_id, issue_id, created_at DESC);
|
|
59
|
+
CREATE UNIQUE INDEX IF NOT EXISTS idx_linear_runs_chat_run_id
|
|
60
|
+
ON linear_runs (chat_run_id)
|
|
61
|
+
WHERE chat_run_id IS NOT NULL;
|
|
62
|
+
`);let t=r.prepare("PRAGMA table_info(linear_runs)").all();return t.some(e=>"mode"===e.name)||r.exec("ALTER TABLE linear_runs ADD COLUMN mode TEXT NOT NULL DEFAULT 'chat';"),t.some(e=>"recap_file_path"===e.name)||r.exec("ALTER TABLE linear_runs ADD COLUMN recap_file_path TEXT;"),e(r)}finally{r.close()}}async function d(e){var t;let r=e.issueId.trim(),i=(t=e.projectId??null,t?.trim()||null),s=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),100):50;return l(e=>{let t=[r],a=["lr.issue_id = ?"];return i&&(a.push("lr.project_id = ?"),t.push(i)),t.push(s),e.prepare(`SELECT
|
|
63
|
+
lr.*,
|
|
64
|
+
cr.status AS chat_status,
|
|
65
|
+
cr.last_error AS chat_last_error,
|
|
66
|
+
cr.created_at AS chat_created_at,
|
|
67
|
+
cr.updated_at AS chat_updated_at,
|
|
68
|
+
cr.completed_at AS chat_completed_at,
|
|
69
|
+
msg.content AS root_content
|
|
70
|
+
FROM linear_runs lr
|
|
71
|
+
LEFT JOIN chat_runs cr ON cr.id = (
|
|
72
|
+
SELECT id FROM chat_runs WHERE thread_id = lr.thread_id ORDER BY updated_at DESC LIMIT 1
|
|
73
|
+
)
|
|
74
|
+
LEFT JOIN messages msg ON msg.thread_id = lr.thread_id AND msg.id = lr.root_message_id
|
|
75
|
+
WHERE ${a.join(" AND ")}
|
|
76
|
+
ORDER BY lr.created_at DESC
|
|
77
|
+
LIMIT ?`).all(...t).map(c)})}async function p(e){return l(t=>{let r=e?.trim(),i=r?`SELECT DISTINCT lr.issue_id, lr.agent_id, lr.agent_name
|
|
78
|
+
FROM linear_runs lr
|
|
79
|
+
INNER JOIN chat_runs cr ON cr.id = (
|
|
80
|
+
SELECT id FROM chat_runs WHERE thread_id = lr.thread_id ORDER BY updated_at DESC LIMIT 1
|
|
81
|
+
)
|
|
82
|
+
WHERE cr.status IN ('queued', 'running')
|
|
83
|
+
AND lr.project_id = ?`:`SELECT DISTINCT lr.issue_id, lr.agent_id, lr.agent_name
|
|
84
|
+
FROM linear_runs lr
|
|
85
|
+
INNER JOIN chat_runs cr ON cr.id = (
|
|
86
|
+
SELECT id FROM chat_runs WHERE thread_id = lr.thread_id ORDER BY updated_at DESC LIMIT 1
|
|
87
|
+
)
|
|
88
|
+
WHERE cr.status IN ('queued', 'running')`;return(r?t.prepare(i).all(e.trim()):t.prepare(i).all()).map(e=>({issueId:e.issue_id,agentId:e.agent_id,agentName:e.agent_name}))})}e.s(["getIssueActiveAgents",()=>p,"listLinearRuns",()=>d])},720395,e=>{"use strict";var t=e.i(84516),r=e.i(29764),i=e.i(11061),s=e.i(124985);e.i(243174);var a=e.i(248821);e.i(641922);var n=e.i(953610),o=e.i(901977);let u="project_objective_health_history",c={"on track":"on_track","at risk":"at_risk","off track":"off_track",done:"done"};function l(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}function d(e){return"number"==typeof e&&Number.isFinite(e)?Math.max(0,Math.min(100,Math.round(e))):0}function p(e){return"string"==typeof e&&e.trim()?e.trim():void 0}function T(...e){let t=e.flatMap(e=>e??[]),r=[];for(let e of[...t].sort((e,t)=>Date.parse(e.recordedAt)-Date.parse(t.recordedAt))){let t=r[r.length-1]??null;t&&t.progress===e.progress&&t.status===e.status&&(!t.source||!e.source||t.source===e.source)&&5e3>=Math.abs(Date.parse(e.recordedAt)-Date.parse(t.recordedAt))||r.push(e)}return r}var _=e.i(460275),m=e.i(765443);let E={on_track:"On track",at_risk:"At risk",off_track:"Off track",done:"Done"};async function h(e){let t=Date.now(),r="";try{return await (0,_.runCliResponse)({provider:e.provider,model:e.model,prompt:e.prompt,identity:e.identity,self:e.self,skills:e.skills,systemContext:e.systemContext,passthroughArgs:e.cliArgs?e.cliArgs.split(/\s+/).filter(Boolean):void 0,onDelta:e=>{r+=e},onSpawn:e.onSpawn}),{output:r,error:"",durationMs:Date.now()-t,status:"success"}}catch(e){return{output:r,error:e instanceof Error?e.message:String(e),durationMs:Date.now()-t,status:"failed"}}}function g(e){try{let t=JSON.parse(e);return t&&"object"==typeof t&&!Array.isArray(t)?t:null}catch{return null}}function j(e){let t=e.trim();if(!t)return null;let r=g(t);if(r)return r;let i=t.indexOf("{"),s=t.lastIndexOf("}");return -1===i||s<=i?null:g(t.slice(i,s+1))}function f(e){return"number"==typeof e&&Number.isFinite(e)?(0,m.normalizeProjectHealthProgress)(e):null}function N(e){return"string"==typeof e&&e.trim()?(0,m.normalizeProjectHealthStatus)(e):null}function I(e,t,r){return`${e}: ${t}% ${E[r]}`}function b(e){return[`- id: ${e.id}`,` identifier: ${e.identifier}`,` title: ${e.title}`,` status: ${e.status}`,` assignee: ${e.assignee??"Unassigned"}`,e.url?` url: ${e.url}`:null].filter(e=>!!e).join("\n")}async function L(e){let{job:o,objectiveContext:u}=e,{project:c,workspace:l,objective:d}=u,p=c.slug??c.id,[{issues:T},_,m,E]=await Promise.all([(0,r.listObjectiveTrackerIssues)({projectId:c.id,objectiveKey:d.key,projectSlug:p,refresh:!0}),(0,i.getIssueActiveAgents)(c.id),Promise.resolve((0,s.getActivityRepository)(p,d.key).list({limit:20})),Promise.resolve((0,a.getNoteRepository)(p,d.key).readAll())]),h=new Set(T.map(e=>e.id)),g=_.filter(e=>h.has(e.issueId)),j=(0,r.filterObjectiveTrackerIssuesForAction)(T,g.map(e=>e.issueId)),f=(0,t.getPromptJobStore)().listJobs({objectiveId:d.id}).filter(e=>e.id!==o.id),N=l.objectives.filter(e=>e.id!==d.id),I=[];I.push("GOAL",d.title,d.summary?.trim()||"No summary provided."),I.push("","CURRENT STATE",`Progress: ${d.progress}% | Status: ${d.status}`);let L=(0,n.readProgram)(p,d.key);I.push("","PROGRAM",`path: ${L.path}`),L.content&&L.content.trim().length>0?I.push(L.content.trim()):I.push('(empty) No program has been authored for this objective yet. Before committing to a direction, surface this to the user in chat: ask what "better" means for this objective (the success metric), what paths/systems are in-scope, and any constraints. Capture the answer by writing to the path above.'),E.length>0&&I.push("","NOTES",...E.map(e=>`### ${e.title}
|
|
89
|
+
${e.body}`));let v=m.activities??[];return v.length>0&&I.push("","RECENT ACTIVITY",...v.map(e=>{let t=e.createdAt.replace("T"," ").replace(/\.\d+Z$/,"").slice(0,16);return`- [${t}] ${e.body.split("\n")[0]}`})),T.length>0?I.push("","LINEAR TICKETS",T.map(e=>b(e)).join("\n\n")):I.push("","LINEAR TICKETS","- None."),g.length>0&&I.push("","ACTIVE SESSIONS",...g.map(e=>`- ${e.issueId}: running with ${e.agentName}`)),f.length>0&&I.push("","SCHEDULED TASKS",...f.map(e=>`- ${e.name} | state: ${e.state} | last outcome: ${e.lastOutcome??"none"}`)),N.length>0&&I.push("","PROJECT CONTEXT",...N.map(e=>`- ${e.title} (${e.key}) | ${e.progress}% | ${e.status}`)),I.push("","GUIDANCE",o.prompt.trim()||"No additional guidance provided."),I.push("","ELIGIBLE TICKETS",j.length>0?j.map(e=>b(e)).join("\n\n"):"- None."),I.push("","---","What single action most advances this objective right now?"),{prompt:I.join("\n"),issues:T,eligibleIssues:j,activeIssueAgents:g}}async function v(t){let r=Date.now();try{if(!t.job.projectId||!t.job.objectiveId)throw Error("Objective worker jobs require projectId and objectiveId.");let i=await (0,o.loadProjectObjectiveContext)(t.job.projectId,t.job.objectiveId);if(!i)throw Error("Objective context could not be resolved for this scheduled task.");let s=await L({job:t.job,objectiveContext:i}),a=await h({...t.controllerContext,prompt:s.prompt,systemContext:'You are deciding what action an objective worker should take next.\nReturn ONLY raw JSON with no markdown fences or commentary.\nValid responses:\n{"action":"work_ticket","ticketId":"ticket-id","reason":"...","objectiveProgress":42,"objectiveStatus":"at_risk","projectProgress":35,"projectStatus":"at_risk"}\n{"action":"run_prompt","prompt":"detailed instructions","reason":"...","objectiveProgress":42,"objectiveStatus":"at_risk"}\n{"action":"stop","reason":"...","objectiveProgress":42,"objectiveStatus":"at_risk"}\nRules:\n- "work_ticket": ticketId must exactly match one of the ELIGIBLE TICKETS ids.\n- "run_prompt": for work not captured by existing tickets. When no tickets are actionable and the objective is not done, use this to plan: review notes, refine the last plan, or outline next steps. The prompt should instruct the agent to append to an existing note when one is relevant rather than creating a new note.\n- "stop": only when the objective is done or genuinely no action (including planning) adds value.\nPercentages must be integers 0-100.\nStatuses: on_track, at_risk, off_track, done.',cliArgs:t.cliArgs,onSpawn:t.onSpawn});if("success"!==a.status)return{...a,output:a.output||"Objective controller failed before selecting an action."};let n=j(a.output),_="string"==typeof n?.action?n.action.trim().toLowerCase():"string"==typeof n?.decision?n.decision.trim().toLowerCase():"",E="work"===_?"work_ticket":_;if(!E){let e=a.output??"";console.warn(`[objective-worker] empty action from controller (job=${t.job.id}, outputLen=${e.length}, parsed=${n?"object":"null"}):`,e.slice(0,500))}let g="string"==typeof n?.reason?n.reason.trim():"",b=f(n?.objectiveProgress),v=N(n?.objectiveStatus),A=f(n?.projectProgress),S=N(n?.projectStatus),O="string"==typeof n?.projectNote?n.projectNote.trim():"",y="string"==typeof n?.objectiveNote?n.objectiveNote.trim():"",w=new Date().toISOString(),k=null!==b&&v?I("Objective health",b,v):null,R=null!==A&&S?I("Project health",A,S):null,D=null!==b&&null!==v?{objectiveId:i.objective.id,objectiveKey:i.objective.key,progress:b,status:v,recordedAt:w,source:`scheduled-task:${t.job.id}`,note:y||void 0}:null,X=null!==b&&null!==v&&(b!==i.objective.progress||v!==i.objective.status),C=X?(0,m.upsertProjectObjective)(i.workspace,{...i.objective,progress:b,status:v,updatedAt:w}):i.workspace,U=null!==A&&null!==S?{progress:A,status:S,updatedAt:w,source:`scheduled-task:${t.job.id}`,objectiveId:i.objective.id,objectiveKey:i.objective.key,note:O||void 0}:null,M=e=>{let t=e;return U&&(t=(0,m.writeProjectHealthSnapshot)(t,U)),D&&(t=function(e,t){let r=t.objectiveId.trim();if(!r)return e;let i=function(e,t){if(!l(e)||!t.trim())return[];let r=e[u];if(!l(r))return[];let i=r[t.trim()];return Array.isArray(i)?T(i.map(e=>(function(e){if(!l(e))return null;let t=function(e){if("string"!=typeof e)return null;let t=e.trim().toLowerCase();return"on_track"===t||"at_risk"===t||"off_track"===t||"done"===t?t:c[t]??null}(e.status),r=function(e){if("string"!=typeof e)return null;let t=Date.parse(e);return Number.isNaN(t)?null:new Date(t).toISOString()}(e.recordedAt);return t&&r?{progress:d(e.progress),status:t,recordedAt:r,source:p(e.source),note:p(e.note),objectiveId:p(e.objectiveId)??null,objectiveKey:p(e.objectiveKey)??null}:null})(e)).filter(e=>!!e)):[]}(e,r),s=T(i,[t]).slice(-200),a=l(e[u])?e[u]:{};return{...e,[u]:{...a,[r]:s.map(e=>({progress:d(e.progress),status:e.status,recordedAt:e.recordedAt,...e.source?{source:e.source}:{},...e.note?{note:e.note}:{},...e.objectiveId?{objectiveId:e.objectiveId}:{},...e.objectiveKey?{objectiveKey:e.objectiveKey}:{}}))}}}(t,D)),t};X?await (0,o.persistProjectObjectiveWorkspace)({projectId:i.project.id,currentMetadata:i.project.metadata,workspace:C,transformMetadata:M}):(D||U)&&await (0,o.persistProjectObjectiveMetadata)({projectId:i.project.id,currentMetadata:i.project.metadata,transformMetadata:M});let{dispatchObjectiveAction:$}=await e.A(688671),P=await $({action:E,parsed:n,reason:g,job:t.job,controllerContext:t.controllerContext,sessionAgent:t.sessionAgent,objectiveContext:i,eligibleIssues:s.eligibleIssues,issues:s.issues,healthSummaries:{objectiveHealthSummary:k,projectHealthSummary:R,objectiveNote:y,projectNote:O},cliArgs:t.cliArgs,onSpawn:t.onSpawn,startMs:r}),{logActionReceipt:x}=await e.A(688671);return await x(P,{jobId:t.job.id,projectId:t.job.projectId,objectiveId:t.job.objectiveId}),{output:P.result,error:"failed"===P.status?P.result:"",durationMs:Date.now()-r,status:P.status}}catch(e){return{output:"",error:e instanceof Error?e.message:String(e),durationMs:Date.now()-r,status:"failed"}}}e.s(["buildObjectiveObservation",()=>L,"executeObjectiveWorker",()=>v,"extractFirstJsonObject",()=>j],720395)},688671,e=>{e.v(e=>Promise.resolve().then(()=>e(917435)))}];
|
|
90
|
+
|
|
91
|
+
//# sourceMappingURL=apps_local_d69937f2._.js.map
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
module.exports=[712513,(e,t,r)=>{},765443,e=>{"use strict";let t="project_objectives_workspace",r="project_goals_workspace",a="project_health_snapshot",n=new Set(["on_track","at_risk","off_track","done"]);function i(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}function o(e){return`${e}_${Math.random().toString(36).slice(2,10)}`}function s(e){return[...e].sort((e,t)=>Date.parse(t.updatedAt)-Date.parse(e.updatedAt))}function l(e){return[...e].sort((e,t)=>Date.parse(e.createdAt)-Date.parse(t.createdAt))}function c(e){return[...e].sort((e,t)=>Date.parse(t.createdAt)-Date.parse(e.createdAt))}function u(e,t=""){return"string"==typeof e?e:t}function d(e,t="1970-01-01T00:00:00.000Z"){if("string"!=typeof e)return t;let r=Date.parse(e);return Number.isNaN(r)?t:new Date(r).toISOString()}function p(e){return"number"==typeof e&&Number.isFinite(e)?Math.max(0,Math.min(100,Math.round(e))):0}function f(e){return"string"==typeof e&&n.has(e)?e:"on_track"}function v(e){return f(e)}function m(e){return p(e)}function j(e,t="objective"){let r=e.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").replace(/-{2,}/g,"-").slice(0,32);return r||t.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||"objective"}function h(e,t,r="objective"){let a=j(r),n=j(e,a),i=n,o=2;for(;t.has(i);){let e=`-${o}`,t=Math.max(1,32-e.length);i=`${n.slice(0,t)}${e}`,o+=1}return t.add(i),i}function y(e,t,r){return h(e,new Set(t.filter(e=>e.id!==r).map(e=>j(e.key||e.title||e.id))),r??e)}function g(e){var t;if(!i(e))return null;let r=d(e.updatedAt??e.createdAt),a=d(e.createdAt,r);return{id:u(e.id,o("objective")),title:u(e.title,"Untitled objective"),teamId:u(e.teamId??e.team_id??e.ownerTeamId),key:j(u(e.key??e.slug??e.label),u(e.title??e.id,"objective")),threadId:u(e.threadId)||null,chatSessionVersion:function(e,t=0){return"number"==typeof e&&Number.isFinite(e)?Math.max(0,Math.floor(e)):t}(e.chatSessionVersion,0),scheduledTaskIds:Array.isArray(t=e.scheduledTaskIds??e.promptJobIds)?Array.from(new Set(t.map(e=>"string"==typeof e?e.trim():"").filter(Boolean))):[],summary:u(e.summary),progress:p(e.progress),status:f(e.status),createdAt:a,updatedAt:r}}function b(e){if(!i(e))return null;let t=d(e.updatedAt??e.createdAt),r=d(e.createdAt,t),a=u(e.objectiveId??e.goalId);return a?{id:u(e.id,o("objective_activity")),objectiveId:a,sourceType:"note",sourceLabel:u(e.sourceLabel,"Update"),title:u(e.title,"Untitled activity"),body:u(e.body),createdAt:r,updatedAt:t,relatedTaskId:u(e.relatedTaskId)||null}:null}function A(e){if(!i(e))return null;let t=u(e.activityId);return t?{id:u(e.id,o("objective_thread_message")),activityId:t,author:u(e.author,"You"),body:u(e.body),createdAt:d(e.createdAt)}:null}function R(){return{objectives:[],activities:[],activityThreads:{}}}function w(e){let t;if(!i(e))return R();let r=Array.isArray(e.objectives)?e.objectives.map(e=>g(e)).filter(e=>null!==e):[],a=Array.isArray(e.activities)?e.activities.map(e=>b(e)).filter(e=>null!==e):[],n=i(e.activityThreads)?Object.fromEntries(Object.entries(e.activityThreads).map(([e,t])=>[e,l(Array.isArray(t)?t.map(e=>A(e)).filter(e=>null!==e):[])])):{};return{objectives:s((t=new Set,r.map(e=>{let r=h(e.key||e.title||e.id,t,e.id||e.title||"objective");return e.key===r?e:{...e,key:r}}))),activities:c(a),activityThreads:n}}function E(e){if(!i(e))return R();let a=e[t];if(void 0!==a){let e=w(a);if(e.objectives.length>0||e.activities.length>0||Object.keys(e.activityThreads).length>0)return e}let n=e[r];if(void 0!==n){if(!i(n))return R();let e=Array.isArray(n.goals)?n.goals.map(e=>(function(e){if(!i(e))return null;let t=u(e.target),r=[u(e.summary),t?`Measure: ${t}`:""].filter(Boolean).join("\n\n");return g({...e,summary:r})})(e)).filter(e=>null!==e):[],t=Array.isArray(n.manualActivities)?n.manualActivities.map(e=>b({...e,sourceLabel:"Update"})).filter(e=>null!==e):[],r=i(n.activityThreads)?Object.fromEntries(Object.entries(n.activityThreads).map(([e,t])=>[e,l(Array.isArray(t)?t.map(t=>A({...t,activityId:e})).filter(e=>null!==e):[])])):{};return{objectives:s(e),activities:c(t),activityThreads:r}}return R()}function O(e,a){let n={...e};return delete n[r],n[t]=w(a),n}function I(e,t){let r={...e};return t?r[a]={progress:p(t.progress),status:f(t.status),updatedAt:d(t.updatedAt),...t.source?{source:t.source.trim()}:{},...t.objectiveId?{objectiveId:t.objectiveId}:{},...t.objectiveKey?{objectiveKey:t.objectiveKey}:{},...t.note?{note:t.note.trim()}:{}}:delete r[a],r}function S(e,t){let r=e.objectives.findIndex(e=>e.id===t.id)>=0?e.objectives.map(e=>e.id===t.id?t:e):[t,...e.objectives];return{...e,objectives:s(r)}}e.s(["PROJECT_OBJECTIVES_METADATA_KEY",0,t,"generateProjectObjectiveKey",()=>y,"normalizeProjectHealthProgress",()=>m,"normalizeProjectHealthStatus",()=>v,"readProjectObjectivesWorkspace",()=>E,"upsertProjectObjective",()=>S,"writeProjectHealthSnapshot",()=>I,"writeProjectObjectivesWorkspace",()=>O])},901977,e=>{"use strict";e.i(712513);var t=e.i(764541),r=e.i(744071),a=e.i(765443),n=e.i(671182);async function i(e,a){let n=await t.db.getProjectWithRepos(e,r.LOCAL_USER.id);if(!n)return null;let i=o(n),s=i.objectives.find(e=>e.id===a)??null;return s?{project:n,workspace:i,objective:s}:null}function o(e){let t=e.slug??e.id,r=(0,n.getObjectiveRepository)(t);return r.hasFiles()?r.readWorkspace():(0,a.readProjectObjectivesWorkspace)(e.metadata)}async function s(e){let i=await t.db.getProjectWithRepos(e.projectId,r.LOCAL_USER.id),o=i?.slug??e.projectId;(0,n.getObjectiveRepository)(o).writeWorkspace(e.workspace);let s=(0,a.writeProjectObjectivesWorkspace)(e.currentMetadata??{},e.workspace),l=e.transformMetadata?e.transformMetadata(s):s;return t.db.updateProject(e.projectId,r.LOCAL_USER.id,{metadata:l})}async function l(e){return t.db.updateProject(e.projectId,r.LOCAL_USER.id,{metadata:(0,a.writeProjectHealthSnapshot)(e.currentMetadata??{},e.snapshot)})}async function c(e){return t.db.updateProject(e.projectId,r.LOCAL_USER.id,{metadata:e.transformMetadata(e.currentMetadata??{})})}e.s(["loadProjectObjectiveContext",()=>i,"loadProjectObjectiveWorkspace",()=>o,"persistProjectHealthSnapshot",()=>l,"persistProjectObjectiveMetadata",()=>c,"persistProjectObjectiveWorkspace",()=>s])},341858,e=>{"use strict";function t(e,t,r){return t?e.objectives.find(e=>e.teamId===t&&e.id!==r)??null:null}function r(e){if("string"==typeof e)return e.trim()||void 0}function a(e){return null===e?null:"string"==typeof e?e.trim():void 0}function n(e){if(Array.isArray(e))return Array.from(new Set(e.map(e=>"string"==typeof e?e.trim():"").filter(Boolean)))}e.i(712513),e.i(901977),e.s(["findObjectiveAssignedToTeam",()=>t,"readNullableString",()=>a,"readOptionalString",()=>r,"readStringArray",()=>n])},641922,953610,e=>{"use strict";var t=e.i(522734),r=e.i(814747),a=e.i(446786);function n(e,t){let n;return r.default.join((n=process.env.AGX_DATA_DIR?.trim())?r.default.resolve(n):r.default.join((0,a.homedir)(),".agx"),"projects",e,"objectives",t,"program.md")}function i(e,r){let a=n(e,r);if(!t.default.existsSync(a))return{path:a,content:null,updatedAt:null};try{let e=t.default.readFileSync(a,"utf8"),r=t.default.statSync(a);return{path:a,content:e,updatedAt:r.mtime.toISOString()}}catch{return{path:a,content:null,updatedAt:null}}}function o(e,a,i){let o=n(e,a);t.default.mkdirSync(r.default.dirname(o),{recursive:!0});let s=i.replace(/\s+$/g,"");if(0===s.length)return t.default.existsSync(o)&&t.default.unlinkSync(o),{path:o,content:null,updatedAt:null};let l=s+"\n";t.default.writeFileSync(o,l,"utf8");let c=t.default.statSync(o);return{path:o,content:l,updatedAt:c.mtime.toISOString()}}e.s(["readProgram",()=>i,"writeProgram",()=>o],953610),e.s([],641922)},683289,e=>{"use strict";var t=e.i(692988),r=e.i(635595),a=e.i(75473),n=e.i(923435),i=e.i(418475),o=e.i(303482),s=e.i(976287),l=e.i(774462),c=e.i(111998),u=e.i(201516),d=e.i(68877),p=e.i(259460),f=e.i(257714),v=e.i(502073),m=e.i(187345),j=e.i(193695);e.i(293777);var h=e.i(274321),y=e.i(732470);e.i(341858);var g=e.i(901977);e.i(641922);var b=e.i(953610);e.i(650837);var A=e.i(640911);async function R(e){let t=await e,r="string"==typeof t?.id?t.id.trim():"",a="string"==typeof t?.objectiveId?t.objectiveId.trim():"";return r&&a?{projectId:r,objectiveId:a}:null}async function w(e,t){try{let e=await R(t.params);if(!e)return y.NextResponse.json({error:"Objective not found"},{status:404});let r=await (0,g.loadProjectObjectiveContext)(e.projectId,e.objectiveId);if(!r)return y.NextResponse.json({error:"Objective not found"},{status:404});let{project:a,objective:n}=r,i=a.slug??a.id,o=(0,b.readProgram)(i,n.key);return y.NextResponse.json({program:o})}catch(e){return A.logger.error("Failed to load program",A.logger.formatError(e)),y.NextResponse.json({error:"Failed to load program"},{status:500})}}async function E(e,t){try{let r=await R(t.params);if(!r)return y.NextResponse.json({error:"Objective not found"},{status:404});let a=await (0,g.loadProjectObjectiveContext)(r.projectId,r.objectiveId);if(!a)return y.NextResponse.json({error:"Objective not found"},{status:404});let n=await e.json().catch(()=>null);if(!n||"object"!=typeof n||Array.isArray(n))return y.NextResponse.json({error:"Invalid program payload"},{status:400});let i="string"==typeof n.content?n.content:"",{project:o,objective:s}=a,l=o.slug??o.id,c=(0,b.writeProgram)(l,s.key,i);return y.NextResponse.json({program:c})}catch(e){return A.logger.error("Failed to save program",A.logger.formatError(e)),y.NextResponse.json({error:"Failed to save program"},{status:500})}}e.s(["GET",()=>w,"PUT",()=>E,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],328587);var O=e.i(328587);let I=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/projects/[id]/objectives/[objectiveId]/program/route",pathname:"/api/projects/[id]/objectives/[objectiveId]/program",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/local/app/api/projects/[id]/objectives/[objectiveId]/program/route.ts",nextConfigOutput:"standalone",userland:O}),{workAsyncStorage:S,workUnitAsyncStorage:P,serverHooks:x}=I;function C(){return(0,a.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:P})}async function T(e,t,a){I.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let y="/api/projects/[id]/objectives/[objectiveId]/program/route";y=y.replace(/\/index$/,"")||"/";let g=await I.prepare(e,t,{srcPage:y,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:b,params:A,nextConfig:R,parsedUrl:w,isDraftMode:E,prerenderManifest:O,routerServerContext:S,isOnDemandRevalidate:P,revalidateOnlyGenerated:x,resolvedPathname:C,clientReferenceManifest:T,serverActionsManifest:_}=g,k=(0,s.normalizeAppPath)(y),N=!!(O.dynamicRoutes[k]||O.routes[C]),M=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,w,!1):t.end("This page could not be found"),null);if(N&&!E){let e=!!O.routes[C],t=O.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(R.experimental.adapterPath)return await M();throw new j.NoFallbackError}}let U=null;!N||I.isDev||E||(U="/index"===(U=C)?"/":U);let D=!0===I.isDev||!N,H=N&&!D;_&&T&&(0,o.setManifestsSingleton)({page:y,clientReferenceManifest:T,serverActionsManifest:_});let L=e.method||"GET",$=(0,i.getTracer)(),F=$.getActiveScopeSpan(),q={params:A,prerenderManifest:O,renderOpts:{experimental:{authInterrupts:!!R.experimental.authInterrupts},cacheComponents:!!R.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:R.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>I.onRequestError(e,t,a,n,S)},sharedContext:{buildId:b}},K=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),B=c.NextRequestAdapter.fromNodeNextRequest(K,(0,c.signalFromNodeResponse)(t));try{let o=async e=>I.handle(B,q).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==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=`${L} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${L} ${y}`)}),s=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var i,l;let c=async({previousCacheEntry:r})=>{try{if(!s&&P&&x&&!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=q.renderOpts.fetchMetrics;let l=q.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let c=q.renderOpts.collectedTags;if(!N)return await (0,p.sendResponse)(K,W,i,q.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(i.headers);c&&(t[m.NEXT_CACHE_TAGS_HEADER]=c),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==q.renderOpts.collectedRevalidate&&!(q.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&q.renderOpts.collectedRevalidate,a=void 0===q.renderOpts.collectedExpire||q.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:q.renderOpts.collectedExpire;return{value:{kind:h.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:y,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:P})},!1,S),t}},u=await I.handleResponse({req:e,nextConfig:R,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:O,isRoutePPREnabled:!1,isOnDemandRevalidate:P,revalidateOnlyGenerated:x,responseGenerator:c,waitUntil:a.waitUntil,isMinimalMode:s});if(!N)return null;if((null==u||null==(i=u.value)?void 0:i.kind)!==h.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",P?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let j=(0,f.fromNodeOutgoingHttpHeaders)(u.value.headers);return s&&N||j.delete(m.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||j.get("Cache-Control")||j.set("Cache-Control",(0,v.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(K,W,new Response(u.value.body,{headers:j,status:u.value.status||200})),null};F?await l(F):await $.withPropagatedContext(e.headers,()=>$.trace(u.BaseServerSpan.handleRequest,{spanName:`${L} ${y}`,kind:i.SpanKind.SERVER,attributes:{"http.method":L,"http.target":e.url}},l))}catch(t){if(t instanceof j.NoFallbackError||await I.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,d.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:P})},!1,S),N)throw t;return await (0,p.sendResponse)(K,W,new Response(null,{status:500})),null}}e.s(["handler",()=>T,"patchFetch",()=>C,"routeModule",()=>I,"serverHooks",()=>x,"workAsyncStorage",()=>S,"workUnitAsyncStorage",()=>P],683289)}];
|
|
2
|
+
|
|
3
|
+
//# sourceMappingURL=apps_local_e2867b32._.js.map
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
module.exports=[641922,953610,e=>{"use strict";var t=e.i(522734),r=e.i(814747),i=e.i(446786);function s(e,t){let s;return r.default.join((s=process.env.AGX_DATA_DIR?.trim())?r.default.resolve(s):r.default.join((0,i.homedir)(),".agx"),"projects",e,"objectives",t,"program.md")}function a(e,r){let i=s(e,r);if(!t.default.existsSync(i))return{path:i,content:null,updatedAt:null};try{let e=t.default.readFileSync(i,"utf8"),r=t.default.statSync(i);return{path:i,content:e,updatedAt:r.mtime.toISOString()}}catch{return{path:i,content:null,updatedAt:null}}}function n(e,i,a){let n=s(e,i);t.default.mkdirSync(r.default.dirname(n),{recursive:!0});let o=a.replace(/\s+$/g,"");if(0===o.length)return t.default.existsSync(n)&&t.default.unlinkSync(n),{path:n,content:null,updatedAt:null};let u=o+"\n";t.default.writeFileSync(n,u,"utf8");let c=t.default.statSync(n);return{path:n,content:u,updatedAt:c.mtime.toISOString()}}e.s(["readProgram",()=>a,"writeProgram",()=>n],953610),e.s([],641922)},11061,e=>{"use strict";var t=e.i(522734),r=e.i(446786),i=e.i(814747),s=e.i(769025);let{DatabaseSync:a}=process.getBuiltinModule("node:sqlite"),n=process.env.AGX_GROUP_CHAT_DIR?.trim()||i.default.join(r.default.homedir(),".agx","group-chat"),o=i.default.join(n,"history.sqlite");function u(e){return"scripted"===e?"scripted":"chat"}function c(e){let t,r=e.chat_created_at??e.created_at,i=e.chat_completed_at??null,s=function(e,t){switch(e){case"queued":return"queued";case"running":case"awaiting_user":case"blocked":return"running";case"completed":return"success";case"failed":return"failed";case"cancelled":return"cancelled";default:return t}}(e.chat_status,e.status);return{id:e.id,projectId:e.project_id,projectSlug:e.project_slug,issueId:e.issue_id,issueIdentifier:e.issue_identifier,issueTitle:e.issue_title,issueStatus:e.issue_status,issueAssignee:e.issue_assignee,threadId:e.thread_id,rootMessageId:e.root_message_id,chatRunId:e.chat_run_id,agentId:e.agent_id,agentName:e.agent_name,mode:u(e.mode),sessionTitle:"chat"===u(e.mode)&&(t=String(e.root_content??"").replace(/\[reaction\s+[^\]]*\]/gi,"").replace(/\[agx:[^\]]*\]/g,"").replace(/\[checkpoint\]/g,"").replace(/\[criteria:\s*[^\]]*\]/g,"").replace(/\[done\]/g,"").replace(/\[blocked[^\]]*\]/g,"").replace(/^\[SKIP\]$/gm,"").replace(/\s+/g," ").trim())?t.length>72?`${t.slice(0,69).trimEnd()}...`:t:null,status:s,durationMs:null!=i?Math.max(i-r,0):null,lastError:e.chat_last_error??e.error,recapFilePath:e.recap_file_path??null,startedAt:new Date(r).toISOString(),updatedAt:new Date((e.chat_updated_at??e.updated_at)||e.updated_at).toISOString(),completedAt:"number"==typeof i?new Date(i).toISOString():null}}async function l(e){await t.promises.mkdir(n,{recursive:!0});let r=new a(o);(0,s.pragmaSet)(r,"journal_mode = WAL");try{r.exec(`
|
|
2
|
+
CREATE TABLE IF NOT EXISTS chat_runs (
|
|
3
|
+
id TEXT PRIMARY KEY,
|
|
4
|
+
thread_id TEXT NOT NULL,
|
|
5
|
+
root_message_id TEXT,
|
|
6
|
+
user_id TEXT NOT NULL,
|
|
7
|
+
project_slug TEXT,
|
|
8
|
+
status TEXT NOT NULL,
|
|
9
|
+
current_step INTEGER NOT NULL DEFAULT 0,
|
|
10
|
+
max_steps INTEGER NOT NULL DEFAULT 10,
|
|
11
|
+
steps_used INTEGER NOT NULL DEFAULT 0,
|
|
12
|
+
last_error TEXT,
|
|
13
|
+
active_participant_ids TEXT NOT NULL DEFAULT '[]',
|
|
14
|
+
payload_json TEXT,
|
|
15
|
+
result_json TEXT,
|
|
16
|
+
created_at INTEGER NOT NULL,
|
|
17
|
+
updated_at INTEGER NOT NULL,
|
|
18
|
+
completed_at INTEGER
|
|
19
|
+
);
|
|
20
|
+
CREATE TABLE IF NOT EXISTS messages (
|
|
21
|
+
thread_id TEXT NOT NULL,
|
|
22
|
+
id TEXT NOT NULL,
|
|
23
|
+
role TEXT NOT NULL,
|
|
24
|
+
participant_id TEXT,
|
|
25
|
+
content TEXT NOT NULL,
|
|
26
|
+
timestamp INTEGER NOT NULL,
|
|
27
|
+
root_message_id TEXT,
|
|
28
|
+
parent_message_id TEXT,
|
|
29
|
+
depth INTEGER NOT NULL DEFAULT 0,
|
|
30
|
+
thread_status TEXT,
|
|
31
|
+
outcome_note TEXT,
|
|
32
|
+
PRIMARY KEY (thread_id, id)
|
|
33
|
+
);
|
|
34
|
+
CREATE TABLE IF NOT EXISTS linear_runs (
|
|
35
|
+
id TEXT PRIMARY KEY,
|
|
36
|
+
project_id TEXT,
|
|
37
|
+
project_slug TEXT,
|
|
38
|
+
issue_id TEXT NOT NULL,
|
|
39
|
+
issue_identifier TEXT NOT NULL,
|
|
40
|
+
issue_title TEXT NOT NULL,
|
|
41
|
+
issue_status TEXT NOT NULL,
|
|
42
|
+
issue_assignee TEXT,
|
|
43
|
+
thread_id TEXT NOT NULL,
|
|
44
|
+
root_message_id TEXT,
|
|
45
|
+
chat_run_id TEXT,
|
|
46
|
+
agent_id TEXT NOT NULL,
|
|
47
|
+
agent_name TEXT NOT NULL,
|
|
48
|
+
mode TEXT NOT NULL DEFAULT 'chat',
|
|
49
|
+
status TEXT NOT NULL DEFAULT 'queued',
|
|
50
|
+
error TEXT,
|
|
51
|
+
recap_file_path TEXT,
|
|
52
|
+
created_at INTEGER NOT NULL,
|
|
53
|
+
updated_at INTEGER NOT NULL
|
|
54
|
+
);
|
|
55
|
+
CREATE INDEX IF NOT EXISTS idx_linear_runs_issue_created
|
|
56
|
+
ON linear_runs (issue_id, created_at DESC);
|
|
57
|
+
CREATE INDEX IF NOT EXISTS idx_linear_runs_project_issue_created
|
|
58
|
+
ON linear_runs (project_id, issue_id, created_at DESC);
|
|
59
|
+
CREATE UNIQUE INDEX IF NOT EXISTS idx_linear_runs_chat_run_id
|
|
60
|
+
ON linear_runs (chat_run_id)
|
|
61
|
+
WHERE chat_run_id IS NOT NULL;
|
|
62
|
+
`);let t=r.prepare("PRAGMA table_info(linear_runs)").all();return t.some(e=>"mode"===e.name)||r.exec("ALTER TABLE linear_runs ADD COLUMN mode TEXT NOT NULL DEFAULT 'chat';"),t.some(e=>"recap_file_path"===e.name)||r.exec("ALTER TABLE linear_runs ADD COLUMN recap_file_path TEXT;"),e(r)}finally{r.close()}}async function d(e){var t;let r=e.issueId.trim(),i=(t=e.projectId??null,t?.trim()||null),s=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),100):50;return l(e=>{let t=[r],a=["lr.issue_id = ?"];return i&&(a.push("lr.project_id = ?"),t.push(i)),t.push(s),e.prepare(`SELECT
|
|
63
|
+
lr.*,
|
|
64
|
+
cr.status AS chat_status,
|
|
65
|
+
cr.last_error AS chat_last_error,
|
|
66
|
+
cr.created_at AS chat_created_at,
|
|
67
|
+
cr.updated_at AS chat_updated_at,
|
|
68
|
+
cr.completed_at AS chat_completed_at,
|
|
69
|
+
msg.content AS root_content
|
|
70
|
+
FROM linear_runs lr
|
|
71
|
+
LEFT JOIN chat_runs cr ON cr.id = (
|
|
72
|
+
SELECT id FROM chat_runs WHERE thread_id = lr.thread_id ORDER BY updated_at DESC LIMIT 1
|
|
73
|
+
)
|
|
74
|
+
LEFT JOIN messages msg ON msg.thread_id = lr.thread_id AND msg.id = lr.root_message_id
|
|
75
|
+
WHERE ${a.join(" AND ")}
|
|
76
|
+
ORDER BY lr.created_at DESC
|
|
77
|
+
LIMIT ?`).all(...t).map(c)})}async function p(e){return l(t=>{let r=e?.trim(),i=r?`SELECT DISTINCT lr.issue_id, lr.agent_id, lr.agent_name
|
|
78
|
+
FROM linear_runs lr
|
|
79
|
+
INNER JOIN chat_runs cr ON cr.id = (
|
|
80
|
+
SELECT id FROM chat_runs WHERE thread_id = lr.thread_id ORDER BY updated_at DESC LIMIT 1
|
|
81
|
+
)
|
|
82
|
+
WHERE cr.status IN ('queued', 'running')
|
|
83
|
+
AND lr.project_id = ?`:`SELECT DISTINCT lr.issue_id, lr.agent_id, lr.agent_name
|
|
84
|
+
FROM linear_runs lr
|
|
85
|
+
INNER JOIN chat_runs cr ON cr.id = (
|
|
86
|
+
SELECT id FROM chat_runs WHERE thread_id = lr.thread_id ORDER BY updated_at DESC LIMIT 1
|
|
87
|
+
)
|
|
88
|
+
WHERE cr.status IN ('queued', 'running')`;return(r?t.prepare(i).all(e.trim()):t.prepare(i).all()).map(e=>({issueId:e.issue_id,agentId:e.agent_id,agentName:e.agent_name}))})}e.s(["getIssueActiveAgents",()=>p,"listLinearRuns",()=>d])},720395,e=>{"use strict";var t=e.i(84516),r=e.i(29764),i=e.i(11061),s=e.i(124985);e.i(243174);var a=e.i(248821);e.i(641922);var n=e.i(953610),o=e.i(901977);let u="project_objective_health_history",c={"on track":"on_track","at risk":"at_risk","off track":"off_track",done:"done"};function l(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}function d(e){return"number"==typeof e&&Number.isFinite(e)?Math.max(0,Math.min(100,Math.round(e))):0}function p(e){return"string"==typeof e&&e.trim()?e.trim():void 0}function T(...e){let t=e.flatMap(e=>e??[]),r=[];for(let e of[...t].sort((e,t)=>Date.parse(e.recordedAt)-Date.parse(t.recordedAt))){let t=r[r.length-1]??null;t&&t.progress===e.progress&&t.status===e.status&&(!t.source||!e.source||t.source===e.source)&&5e3>=Math.abs(Date.parse(e.recordedAt)-Date.parse(t.recordedAt))||r.push(e)}return r}var _=e.i(460275),m=e.i(765443);let E={on_track:"On track",at_risk:"At risk",off_track:"Off track",done:"Done"};async function h(e){let t=Date.now(),r="";try{return await (0,_.runCliResponse)({provider:e.provider,model:e.model,prompt:e.prompt,identity:e.identity,self:e.self,skills:e.skills,systemContext:e.systemContext,passthroughArgs:e.cliArgs?e.cliArgs.split(/\s+/).filter(Boolean):void 0,onDelta:e=>{r+=e},onSpawn:e.onSpawn}),{output:r,error:"",durationMs:Date.now()-t,status:"success"}}catch(e){return{output:r,error:e instanceof Error?e.message:String(e),durationMs:Date.now()-t,status:"failed"}}}function g(e){try{let t=JSON.parse(e);return t&&"object"==typeof t&&!Array.isArray(t)?t:null}catch{return null}}function j(e){let t=e.trim();if(!t)return null;let r=g(t);if(r)return r;let i=t.indexOf("{"),s=t.lastIndexOf("}");return -1===i||s<=i?null:g(t.slice(i,s+1))}function f(e){return"number"==typeof e&&Number.isFinite(e)?(0,m.normalizeProjectHealthProgress)(e):null}function N(e){return"string"==typeof e&&e.trim()?(0,m.normalizeProjectHealthStatus)(e):null}function I(e,t,r){return`${e}: ${t}% ${E[r]}`}function b(e){return[`- id: ${e.id}`,` identifier: ${e.identifier}`,` title: ${e.title}`,` status: ${e.status}`,` assignee: ${e.assignee??"Unassigned"}`,e.url?` url: ${e.url}`:null].filter(e=>!!e).join("\n")}async function L(e){let{job:o,objectiveContext:u}=e,{project:c,workspace:l,objective:d}=u,p=c.slug??c.id,[{issues:T},_,m,E]=await Promise.all([(0,r.listObjectiveTrackerIssues)({projectId:c.id,objectiveKey:d.key,projectSlug:p,refresh:!0}),(0,i.getIssueActiveAgents)(c.id),Promise.resolve((0,s.getActivityRepository)(p,d.key).list({limit:20})),Promise.resolve((0,a.getNoteRepository)(p,d.key).readAll())]),h=new Set(T.map(e=>e.id)),g=_.filter(e=>h.has(e.issueId)),j=(0,r.filterObjectiveTrackerIssuesForAction)(T,g.map(e=>e.issueId)),f=(0,t.getPromptJobStore)().listJobs({objectiveId:d.id}).filter(e=>e.id!==o.id),N=l.objectives.filter(e=>e.id!==d.id),I=[];I.push("GOAL",d.title,d.summary?.trim()||"No summary provided."),I.push("","CURRENT STATE",`Progress: ${d.progress}% | Status: ${d.status}`);let L=(0,n.readProgram)(p,d.key);I.push("","PROGRAM",`path: ${L.path}`),L.content&&L.content.trim().length>0?I.push(L.content.trim()):I.push('(empty) No program has been authored for this objective yet. Before committing to a direction, surface this to the user in chat: ask what "better" means for this objective (the success metric), what paths/systems are in-scope, and any constraints. Capture the answer by writing to the path above.'),E.length>0&&I.push("","NOTES",...E.map(e=>`### ${e.title}
|
|
89
|
+
${e.body}`));let v=m.activities??[];return v.length>0&&I.push("","RECENT ACTIVITY",...v.map(e=>{let t=e.createdAt.replace("T"," ").replace(/\.\d+Z$/,"").slice(0,16);return`- [${t}] ${e.body.split("\n")[0]}`})),T.length>0?I.push("","LINEAR TICKETS",T.map(e=>b(e)).join("\n\n")):I.push("","LINEAR TICKETS","- None."),g.length>0&&I.push("","ACTIVE SESSIONS",...g.map(e=>`- ${e.issueId}: running with ${e.agentName}`)),f.length>0&&I.push("","SCHEDULED TASKS",...f.map(e=>`- ${e.name} | state: ${e.state} | last outcome: ${e.lastOutcome??"none"}`)),N.length>0&&I.push("","PROJECT CONTEXT",...N.map(e=>`- ${e.title} (${e.key}) | ${e.progress}% | ${e.status}`)),I.push("","GUIDANCE",o.prompt.trim()||"No additional guidance provided."),I.push("","ELIGIBLE TICKETS",j.length>0?j.map(e=>b(e)).join("\n\n"):"- None."),I.push("","---","What single action most advances this objective right now?"),{prompt:I.join("\n"),issues:T,eligibleIssues:j,activeIssueAgents:g}}async function v(t){let r=Date.now();try{if(!t.job.projectId||!t.job.objectiveId)throw Error("Objective worker jobs require projectId and objectiveId.");let i=await (0,o.loadProjectObjectiveContext)(t.job.projectId,t.job.objectiveId);if(!i)throw Error("Objective context could not be resolved for this scheduled task.");let s=await L({job:t.job,objectiveContext:i}),a=await h({...t.controllerContext,prompt:s.prompt,systemContext:'You are deciding what action an objective worker should take next.\nReturn ONLY raw JSON with no markdown fences or commentary.\nValid responses:\n{"action":"work_ticket","ticketId":"ticket-id","reason":"...","objectiveProgress":42,"objectiveStatus":"at_risk","projectProgress":35,"projectStatus":"at_risk"}\n{"action":"run_prompt","prompt":"detailed instructions","reason":"...","objectiveProgress":42,"objectiveStatus":"at_risk"}\n{"action":"stop","reason":"...","objectiveProgress":42,"objectiveStatus":"at_risk"}\nRules:\n- "work_ticket": ticketId must exactly match one of the ELIGIBLE TICKETS ids.\n- "run_prompt": for work not captured by existing tickets. When no tickets are actionable and the objective is not done, use this to plan: review notes, refine the last plan, or outline next steps. The prompt should instruct the agent to append to an existing note when one is relevant rather than creating a new note.\n- "stop": only when the objective is done or genuinely no action (including planning) adds value.\nPercentages must be integers 0-100.\nStatuses: on_track, at_risk, off_track, done.',cliArgs:t.cliArgs,onSpawn:t.onSpawn});if("success"!==a.status)return{...a,output:a.output||"Objective controller failed before selecting an action."};let n=j(a.output),_="string"==typeof n?.action?n.action.trim().toLowerCase():"string"==typeof n?.decision?n.decision.trim().toLowerCase():"",E="work"===_?"work_ticket":_;if(!E){let e=a.output??"";console.warn(`[objective-worker] empty action from controller (job=${t.job.id}, outputLen=${e.length}, parsed=${n?"object":"null"}):`,e.slice(0,500))}let g="string"==typeof n?.reason?n.reason.trim():"",b=f(n?.objectiveProgress),v=N(n?.objectiveStatus),A=f(n?.projectProgress),S=N(n?.projectStatus),O="string"==typeof n?.projectNote?n.projectNote.trim():"",y="string"==typeof n?.objectiveNote?n.objectiveNote.trim():"",w=new Date().toISOString(),k=null!==b&&v?I("Objective health",b,v):null,R=null!==A&&S?I("Project health",A,S):null,D=null!==b&&null!==v?{objectiveId:i.objective.id,objectiveKey:i.objective.key,progress:b,status:v,recordedAt:w,source:`scheduled-task:${t.job.id}`,note:y||void 0}:null,X=null!==b&&null!==v&&(b!==i.objective.progress||v!==i.objective.status),C=X?(0,m.upsertProjectObjective)(i.workspace,{...i.objective,progress:b,status:v,updatedAt:w}):i.workspace,U=null!==A&&null!==S?{progress:A,status:S,updatedAt:w,source:`scheduled-task:${t.job.id}`,objectiveId:i.objective.id,objectiveKey:i.objective.key,note:O||void 0}:null,M=e=>{let t=e;return U&&(t=(0,m.writeProjectHealthSnapshot)(t,U)),D&&(t=function(e,t){let r=t.objectiveId.trim();if(!r)return e;let i=function(e,t){if(!l(e)||!t.trim())return[];let r=e[u];if(!l(r))return[];let i=r[t.trim()];return Array.isArray(i)?T(i.map(e=>(function(e){if(!l(e))return null;let t=function(e){if("string"!=typeof e)return null;let t=e.trim().toLowerCase();return"on_track"===t||"at_risk"===t||"off_track"===t||"done"===t?t:c[t]??null}(e.status),r=function(e){if("string"!=typeof e)return null;let t=Date.parse(e);return Number.isNaN(t)?null:new Date(t).toISOString()}(e.recordedAt);return t&&r?{progress:d(e.progress),status:t,recordedAt:r,source:p(e.source),note:p(e.note),objectiveId:p(e.objectiveId)??null,objectiveKey:p(e.objectiveKey)??null}:null})(e)).filter(e=>!!e)):[]}(e,r),s=T(i,[t]).slice(-200),a=l(e[u])?e[u]:{};return{...e,[u]:{...a,[r]:s.map(e=>({progress:d(e.progress),status:e.status,recordedAt:e.recordedAt,...e.source?{source:e.source}:{},...e.note?{note:e.note}:{},...e.objectiveId?{objectiveId:e.objectiveId}:{},...e.objectiveKey?{objectiveKey:e.objectiveKey}:{}}))}}}(t,D)),t};X?await (0,o.persistProjectObjectiveWorkspace)({projectId:i.project.id,currentMetadata:i.project.metadata,workspace:C,transformMetadata:M}):(D||U)&&await (0,o.persistProjectObjectiveMetadata)({projectId:i.project.id,currentMetadata:i.project.metadata,transformMetadata:M});let{dispatchObjectiveAction:$}=await e.A(688671),P=await $({action:E,parsed:n,reason:g,job:t.job,controllerContext:t.controllerContext,sessionAgent:t.sessionAgent,objectiveContext:i,eligibleIssues:s.eligibleIssues,issues:s.issues,healthSummaries:{objectiveHealthSummary:k,projectHealthSummary:R,objectiveNote:y,projectNote:O},cliArgs:t.cliArgs,onSpawn:t.onSpawn,startMs:r}),{logActionReceipt:x}=await e.A(688671);return await x(P,{jobId:t.job.id,projectId:t.job.projectId,objectiveId:t.job.objectiveId}),{output:P.result,error:"failed"===P.status?P.result:"",durationMs:Date.now()-r,status:P.status}}catch(e){return{output:"",error:e instanceof Error?e.message:String(e),durationMs:Date.now()-r,status:"failed"}}}e.s(["buildObjectiveObservation",()=>L,"executeObjectiveWorker",()=>v,"extractFirstJsonObject",()=>j],720395)},688671,e=>{e.v(e=>Promise.resolve().then(()=>e(917435)))}];
|
|
90
|
+
|
|
91
|
+
//# sourceMappingURL=apps_local_e32b0cab._.js.map
|