@mndrk/agx 2.0.46 → 2.0.48
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/.next/BUILD_ID +1 -1
- package/cloud-runtime/standalone/.next/app-path-routes-manifest.json +1 -0
- package/cloud-runtime/standalone/.next/build-manifest.json +2 -2
- package/cloud-runtime/standalone/.next/prerender-manifest.json +27 -3
- package/cloud-runtime/standalone/.next/routes-manifest.json +6 -0
- package/cloud-runtime/standalone/.next/server/app/_global-error.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/_global-error.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/_not-found.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/_not-found.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/agents/[id]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/agents/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/agents/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/agents.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/agents.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/agents.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/agents.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/agents.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/agents.segments/agents.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/agent-specs/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/agents/[id]/profile/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/agents/export/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/agents/export/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/automations/create/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/automations/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/chat/route.js +2 -2
- package/cloud-runtime/standalone/.next/server/app/api/chat/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/file-search/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/health/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/health/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/knowledge-notes/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/knowledge-notes/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/learnings/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/learnings/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/linear/callback/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/linear/callback/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/linear/cycles/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/linear/cycles/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/linear/options/route.js +5 -2
- package/cloud-runtime/standalone/.next/server/app/api/linear/options/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/linear/status/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/linear/status/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/linear/token/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/linear/token/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/participants/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/participants/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/agents/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/agents/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v1/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v1/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v2/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v2/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/skills/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/skills/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/threads/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/threads/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/variables/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/variables/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/cancel/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/runs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/agents/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/agents/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/poll/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/providers/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/queue/complete/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/queue/complete/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/queue/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/queue/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/schedules/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/skills/assign/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/skills/available/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/skills/available/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/skills/detail/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/skills/history/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/skills/history/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/skills/learn/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/skills/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/skills/unlearn/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/status/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/summarize/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/summarize/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/costs/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/costs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/dependencies/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/dependencies/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/events/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/history/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/metrics/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/replan/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/restart/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/resume/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/rollback/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/schedule/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/schedule/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/start/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/start/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/stop/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/history/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/history/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/assign-orphans/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/assign-orphans/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/extract/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/extract/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/tasks/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/threads/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/threads/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/user-settings/route.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/api/user-settings/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/automations/page/react-loadable-manifest.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/automations/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/automations/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/automations.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/automations.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/automations.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/automations.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/automations.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/automations.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/automations.segments/automations.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/board/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/board.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/board.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/board.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/board.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/board.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/board.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/board.segments/board/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/board.segments/board.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/execution-graph/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/execution-graph.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/execution-graph.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/folders/page/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/.next/server/app/folders/page/build-manifest.json +18 -0
- package/cloud-runtime/standalone/.next/server/app/folders/page/next-font-manifest.json +11 -0
- package/cloud-runtime/standalone/.next/server/app/folders/page/react-loadable-manifest.json +1 -0
- package/cloud-runtime/standalone/.next/server/app/folders/page/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/.next/server/app/folders/page.js +15 -0
- package/cloud-runtime/standalone/.next/server/app/folders/page.js.map +5 -0
- package/cloud-runtime/standalone/.next/server/app/folders/page.js.nft.json +1 -0
- package/cloud-runtime/standalone/.next/server/app/folders/page_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/.next/server/app/folders.html +21 -0
- package/cloud-runtime/standalone/.next/server/app/folders.meta +15 -0
- package/cloud-runtime/standalone/.next/server/app/folders.rsc +24 -0
- package/cloud-runtime/standalone/.next/server/app/folders.segments/_full.segment.rsc +24 -0
- package/cloud-runtime/standalone/.next/server/app/folders.segments/_head.segment.rsc +5 -0
- package/cloud-runtime/standalone/.next/server/app/folders.segments/_index.segment.rsc +10 -0
- package/cloud-runtime/standalone/.next/server/app/folders.segments/_tree.segment.rsc +5 -0
- package/cloud-runtime/standalone/.next/server/app/folders.segments/folders/__PAGE__.segment.rsc +9 -0
- package/cloud-runtime/standalone/.next/server/app/folders.segments/folders.segment.rsc +4 -0
- package/cloud-runtime/standalone/.next/server/app/index.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/index.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/index.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page/react-loadable-manifest.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page/react-loadable-manifest.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/projects.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/projects.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/projects.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects.segments/projects.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/settings.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/settings.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/settings.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/settings.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/settings.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/settings.segments/settings.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/skills/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/skills.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/skills.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/skills.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/skills.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/skills.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/skills.segments/skills/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/skills.segments/skills.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/status/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/status.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/status.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/status.segments/_full.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/status.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/status.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/status.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/status.segments/status/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/status.segments/status.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/thread/[id]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/thread/[id]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/welcome/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/.next/server/app/welcome/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/app/welcome.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/welcome.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/_index.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/_tree.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app-paths-manifest.json +1 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[externals]__31e26905._.js → [externals]__7b4c6b2b._.js} +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/[externals]__a21cc96d._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__015d40a6._.js +67 -0
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__067034dd._.js +67 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__5aaf8c25._.js → [root-of-the-server]__143fdf69._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__74a37ca4._.js → [root-of-the-server]__158df4bf._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__c029daab._.js → [root-of-the-server]__179cb224._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__3fd3c5b1._.js → [root-of-the-server]__1a1f66b1._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__20a2cb22._.js +150 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__d2ac93f2._.js → [root-of-the-server]__23b075bd._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__3bf516b6._.js → [root-of-the-server]__3170b7bf._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__558389f7._.js → [root-of-the-server]__33865410._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__4c2d07e0._.js → [root-of-the-server]__36d15de5._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__37844df7._.js +67 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__d9f2041b._.js → [root-of-the-server]__3a93931b._.js} +4 -4
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3fae531a._.js +89 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__76658fd6._.js → [root-of-the-server]__4cb22e4d._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__ebece93b._.js → [root-of-the-server]__4ce74056._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__635fe0f9._.js → [root-of-the-server]__538b0bdd._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__3b1431b6._.js → [root-of-the-server]__5c55f67a._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__e20922e8._.js → [root-of-the-server]__69a3c480._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__42804c1d._.js → [root-of-the-server]__6c53437e._.js} +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__8cbd8c56._.js +79 -0
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__92ed2961._.js +48 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__509b1dd2._.js → [root-of-the-server]__94499e9a._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__ddb3aa76._.js → [root-of-the-server]__a280fa63._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__8c7d1318._.js → [root-of-the-server]__a2d31df1._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a3955224._.js +150 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__4b0b5fe1._.js → [root-of-the-server]__a7b2350e._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__5b13e7a5._.js → [root-of-the-server]__ab655b9f._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ac6326b6._.js +106 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__0284ea89._.js → [root-of-the-server]__b2748382._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__e7be56ba._.js → [root-of-the-server]__b627cb83._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__0e98af48._.js → [root-of-the-server]__bab85495._.js} +63 -18
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__dca6026a._.js → [root-of-the-server]__c21747df._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c22dd3a6._.js +179 -0
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c8890cd6._.js +150 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__aad349b4._.js → [root-of-the-server]__ca4987eb._.js} +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__fcdaf6d8._.js → [root-of-the-server]__d16caed5._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__1f53e82e._.js → [root-of-the-server]__d324f8a1._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__6988985c._.js → [root-of-the-server]__da645a5e._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__d4f42f49._.js → [root-of-the-server]__e58e9f91._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f4b3df16._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__c8195768._.js → [root-of-the-server]__f7f336c7._.js} +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fcfa3690._.js +93 -0
- package/cloud-runtime/standalone/.next/server/chunks/_4d07f8db._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/lib_7f7835f1._.js +66 -21
- package/cloud-runtime/standalone/.next/server/chunks/lib_9f439b27._.js +61 -16
- package/cloud-runtime/standalone/.next/server/chunks/lib_f81d6da9._.js +70 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__4c9d0778._.js → [root-of-the-server]__01e1641e._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__0b2a2b86._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__32546242._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__4140bb73._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__ffbc2e98._.js → [root-of-the-server]__5e73414b._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__5ff9ead4._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__ec81a3d9._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__f2c3b7ab._.js +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__a42e4555._.js → [root-of-the-server]__fbe1ab4a._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_1e9b9b1e._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_24fe6213._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_36a0c486._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_3b21d3b2._.js +95 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_3eeac8f9._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_48db42b7._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_59f30a73._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_7d3b0032._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_916950b3._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_b598ae8a._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_b7009996._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_cc8c8302._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_d972a4e1._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_dd7bb6fb._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_dd9880fb._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_e70d5625._.js +4 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_f02d786a._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_f53d31e0._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_fd8cafe9._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_next-internal_server_app_folders_page_actions_9c8dfb6c.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/app_projects_[slug]_linear_page_tsx_971a6ba7._.js +15 -12
- package/cloud-runtime/standalone/.next/server/chunks/ssr/components_chat-ui_bfeda794._.js +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/components_thread_WorkspaceSidebar_tsx_e660301b._.js +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_54bf563f._.js +3 -0
- package/cloud-runtime/standalone/.next/server/instrumentation.js +1 -1
- package/cloud-runtime/standalone/.next/server/middleware-manifest.json +5 -5
- package/cloud-runtime/standalone/.next/server/next-font-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/next-font-manifest.json +4 -0
- package/cloud-runtime/standalone/.next/server/pages/404.html +2 -2
- package/cloud-runtime/standalone/.next/server/pages/500.html +2 -2
- package/cloud-runtime/standalone/.next/server/server-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/.next/server/server-reference-manifest.json +1 -1
- package/cloud-runtime/standalone/.next/static/chunks/04c135686161dbb1.js +40 -0
- package/cloud-runtime/standalone/.next/static/chunks/0d63db0c39c0a3b2.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/136ed07d84b14632.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/18866ed04ed3a063.css +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/1b808cdaa28a10b4.js +16 -0
- package/cloud-runtime/standalone/.next/static/chunks/{ccaf68956da192f8.js → 1bb38e61d891453c.js} +1 -1
- package/cloud-runtime/standalone/.next/static/chunks/2c7c8259c2b56bf5.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/2da1f13d50dc4e54.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/442eb8ef62bef9f9.js +3 -0
- package/cloud-runtime/standalone/.next/static/chunks/5f33b52d582b0bb4.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/{1fa91c34c99502bf.js → 64c2961edd3a3b13.js} +1 -1
- package/cloud-runtime/standalone/.next/static/chunks/{db131a0b6350e416.js → 692ce04abdbb3970.js} +1 -1
- package/cloud-runtime/standalone/.next/static/chunks/83be8569d298c6b0.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/87b3afe828c8cc52.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/{14922fd23cdc223b.js → 9328740727c6456d.js} +1 -1
- package/cloud-runtime/standalone/.next/static/chunks/95d47e285ae9c031.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/b9bf5d3ee92a1313.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/ea35fb870141bcff.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/f59722264449b61c.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/f727d2c8f039511d.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/{f4360c3e4089263f.js → f8706212baa8ec67.js} +1 -1
- package/cloud-runtime/standalone/.next/static/chunks/fd823c9d1381335d.js +1 -0
- package/cloud-runtime/standalone/app/api/linear/issues/route.ts +9 -2
- package/cloud-runtime/standalone/app/api/linear/options/route.ts +16 -4
- package/cloud-runtime/standalone/app/automations/page.tsx +11 -1
- package/cloud-runtime/standalone/app/folders/page.tsx +318 -0
- package/cloud-runtime/standalone/app/projects/[slug]/layout.tsx +11 -1
- package/cloud-runtime/standalone/components/LinearBoard.tsx +211 -28
- package/cloud-runtime/standalone/components/chat-ui/ChatContainer.tsx +10 -0
- package/cloud-runtime/standalone/components/linear/RunScriptManager.tsx +356 -0
- package/cloud-runtime/standalone/components/thread/WorkspaceSidebar.tsx +55 -10
- package/cloud-runtime/standalone/hooks/useLinearIssues.ts +7 -3
- package/cloud-runtime/standalone/hooks/useLinearRunScripts.ts +115 -0
- package/cloud-runtime/standalone/instrumentation.ts +3 -0
- package/cloud-runtime/standalone/lib/cli-runner.ts +27 -6
- package/cloud-runtime/standalone/lib/linear-client.ts +33 -3
- package/cloud-runtime/standalone/lib/linear-execution-prompt.ts +92 -15
- package/cloud-runtime/standalone/lib/linear-issue-store.ts +33 -5
- package/cloud-runtime/standalone/lib/scheduled-task-skill.ts +119 -0
- package/cloud-runtime/standalone/state/automations/.state/c4300b01-1203-40fe-b3a9-b9fb9ec0c5cc.json +8 -0
- package/cloud-runtime/standalone/state/automations/active/c4300b01-1203-40fe-b3a9-b9fb9ec0c5cc.md +15 -0
- package/cloud-runtime/standalone/state/linearBoardFilters.ts +90 -0
- package/cloud-runtime/standalone/state/linearRunScripts.test.ts +99 -0
- package/cloud-runtime/standalone/state/linearRunScripts.ts +132 -0
- package/cloud-runtime/standalone/state/windowState.ts +21 -0
- package/cloud-runtime/standalone/tsconfig.tsbuildinfo +1 -1
- package/cloud-runtime/standalone/worker/index.js +147 -28
- package/package.json +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1154e5b3._.js +0 -67
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3b83b657._.js +0 -147
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__6921fe3f._.js +0 -44
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__70327010._.js +0 -134
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__748c718f._.js +0 -147
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__76290829._.js +0 -67
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__79fa35e4._.js +0 -101
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__8d205f82._.js +0 -48
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a7e0ac67._.js +0 -25
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ad6d6402._.js +0 -67
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__b133856b._.js +0 -61
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ce2a1672._.js +0 -67
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f168c6dc._.js +0 -25
- package/cloud-runtime/standalone/.next/server/chunks/_a93e80e8._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__1c4256ce._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__69887882._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__bb149a22._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_11ce4c04._.js +0 -95
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_1d26be78._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_22e99a52._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_260b10ce._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_32c878b9._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_4bfdfb14._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_52fe115d._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_69164b06._.js +0 -95
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_77e1407a._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_7f7a828a._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_84a166cb._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_ba5903a7._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_cee3cf86._.js +0 -95
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_ed4fece9._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_f51a3112._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_e8bdedc5._.js +0 -3
- package/cloud-runtime/standalone/.next/static/chunks/2362d5c0dcaa5d64.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/2730394502dd3664.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/2a9c83f8211196e0.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/34dd491bc4ce9561.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/37f07896b044d69f.css +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/3dc50de1c86e1ce9.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/4ea8f08087116055.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/98c20da4973991f0.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/a72fbac84e32f665.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/a9da98f883ac833b.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/b2127dc67c5ade9f.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/b3377e39d47c71cf.js +0 -3
- package/cloud-runtime/standalone/.next/static/chunks/b553dba1f51e709b.js +0 -16
- package/cloud-runtime/standalone/.next/static/chunks/bf2a2fafb710e63c.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/c0d17e0c37ba8e7a.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/cca7c8e4ade050f0.js +0 -37
- package/cloud-runtime/standalone/state/automations/.state/24a6a5db-3b14-49c4-841f-29f10f015fbb.json +0 -8
- package/cloud-runtime/standalone/state/automations/active/24a6a5db-3b14-49c4-841f-29f10f015fbb.md +0 -17
- /package/cloud-runtime/standalone/.next/static/{1Q0q2lXllTpqCvmNQYtpD → gty0FO80D_lbq3o9lSpQQ}/_buildManifest.js +0 -0
- /package/cloud-runtime/standalone/.next/static/{1Q0q2lXllTpqCvmNQYtpD → gty0FO80D_lbq3o9lSpQQ}/_clientMiddlewareManifest.json +0 -0
- /package/cloud-runtime/standalone/.next/static/{1Q0q2lXllTpqCvmNQYtpD → gty0FO80D_lbq3o9lSpQQ}/_ssgManifest.js +0 -0
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
module.exports=[918622,(e,t,s)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,s)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,s)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,s)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,s)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let s=e.prepare(`PRAGMA ${t}`).get();if(!s)return;let n=Object.values(s);return n.length>0?n[0]:void 0}function s(e,t){return e.prepare(`PRAGMA ${t}`).all()}function n(e,t){e.exec(`PRAGMA ${t}`)}function a(e,t){e.exec("BEGIN");try{let s=t();return e.exec("COMMIT"),s}catch(t){throw e.exec("ROLLBACK"),t}}function i(e,t){return(...s)=>{e.exec("BEGIN");try{let n=t(...s);return e.exec("COMMIT"),n}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>s,"pragmaGet",()=>t,"pragmaSet",()=>n,"transaction",()=>a,"transactionFn",()=>i])},233405,(e,t,s)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var s=e.i(446786),n=e.i(814747);let a="3.35.0",i=["json1"],r=["fts5"],l=["nfs","smb","cifs","efs","fuse.sshfs"];function u(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function o(o,d){let c=[],p=o.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let s=e.split(".").map(Number),n=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(s[e]||0)-(n[e]||0);if(0!==t)return t}return 0}(p.v,a)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${a}`,found:p.v,required:`>= ${a}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),i))u(o,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of r)u(o,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let m=function(t){"linux"!==s.default.platform()&&s.default.platform();try{let a=n.default.resolve(t),{execSync:i}=e.r(233405);if("darwin"===s.default.platform()){let e=i(`df -T "${a}" 2>/dev/null || df "${a}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),s=t[0]?.toLowerCase()||"";if(s.includes("://")||s.includes("nfs")||s.includes("smb"))return s}}}catch{}return null}(d);m&&l.some(e=>m.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${m})`,path:d,found:m,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(o,"journal_mode = wal"),(0,t.pragmaSet)(o,"foreign_keys = 1"),(0,t.pragmaSet)(o,"busy_timeout = 5000"),(0,t.pragmaSet)(o,"synchronous = 1"),(0,t.pragmaSet)(o,"cache_size = -64000");let e=(0,t.pragmaGet)(o,"journal_mode").toLowerCase(),s=new Set(["wal","delete"]);if(!s.has(e)){(0,t.pragmaSet)(o,"journal_mode = DELETE");let e=(0,t.pragmaGet)(o,"journal_mode").toLowerCase();s.has(e)?((0,t.pragmaSet)(o,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>o])},500874,(e,t,s)=>{t.exports=e.x("buffer",()=>require("buffer"))},750227,(e,t,s)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,s)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,s)=>{t.exports=e.x("node:os",()=>require("node:os"))},666680,(e,t,s)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},423502,(e,t,s)=>{},841897,e=>{"use strict";e.i(423502);var t=e.i(902157),s=e.i(660526),n=e.i(750227);let a=n.default.join((0,s.homedir)(),".agx");function i(){return n.default.join(a,"linear-token.json")}function r(){return n.default.join(process.cwd(),".linear-token.json")}function l(e){(0,t.existsSync)(a)||(0,t.mkdirSync)(a,{recursive:!0}),(0,t.writeFileSync)(i(),JSON.stringify(e,null,2))}function u(){try{(0,t.unlinkSync)(i())}catch{}try{(0,t.unlinkSync)(r())}catch{}}class o{accessToken;constructor(e){this.accessToken=e}get viewer(){return this.request("query { viewer { id name email } }").then(e=>e.viewer)}async users(){return(await this.request(`query {
|
|
2
|
+
users(first: 100) {
|
|
3
|
+
nodes {
|
|
4
|
+
id
|
|
5
|
+
name
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
}`)).users.nodes.filter(e=>e.name.trim().length>0).map(e=>({id:e.id,name:e.name})).sort((e,t)=>e.name.localeCompare(t.name))}async teams(){return(await this.request(`query {
|
|
9
|
+
teams(first: 50) {
|
|
10
|
+
nodes {
|
|
11
|
+
id
|
|
12
|
+
name
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
}`)).teams.nodes.filter(e=>e.name.trim().length>0).map(e=>({id:e.id,name:e.name})).sort((e,t)=>e.name.localeCompare(t.name))}async issues(e){let t,s=(t=[`first: ${e.first}`],e.after&&t.push(`after: ${JSON.stringify(e.after)}`),e.orderBy&&t.push(`orderBy: ${e.orderBy}`),e.filter&&Object.keys(e.filter).length>0&&t.push(`filter: ${function e(t){if(null===t)return"null";if(Array.isArray(t))return`[${t.map(e).join(", ")}]`;if("string"==typeof t)return JSON.stringify(t);if("number"==typeof t||"boolean"==typeof t)return String(t);if("object"==typeof t){let s=Object.entries(t).filter(([,e])=>void 0!==e);return`{ ${s.map(([t,s])=>`${t}: ${e(s)}`).join(", ")} }`}throw Error(`Unsupported GraphQL value: ${typeof t}`)}(e.filter)}`),t.join(", ")),n=await this.request(`query {
|
|
16
|
+
issues(${s}) {
|
|
17
|
+
nodes {
|
|
18
|
+
id
|
|
19
|
+
identifier
|
|
20
|
+
title
|
|
21
|
+
description
|
|
22
|
+
url
|
|
23
|
+
updatedAt
|
|
24
|
+
state { name }
|
|
25
|
+
assignee { id name email }
|
|
26
|
+
team { id name key }
|
|
27
|
+
cycle { id number name }
|
|
28
|
+
}
|
|
29
|
+
pageInfo {
|
|
30
|
+
hasNextPage
|
|
31
|
+
endCursor
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}`);return{nodes:n.issues.nodes.map(e=>({id:e.id,identifier:e.identifier,title:e.title,description:e.description,url:e.url,updatedAt:e.updatedAt,state:Promise.resolve(e.state),assignee:Promise.resolve(e.assignee),team:Promise.resolve(e.team),cycle:Promise.resolve(e.cycle)})),pageInfo:n.issues.pageInfo}}async cycles(){let e=await this.request(`query {
|
|
35
|
+
teams(first: 50) {
|
|
36
|
+
nodes {
|
|
37
|
+
id
|
|
38
|
+
name
|
|
39
|
+
activeCycle {
|
|
40
|
+
id
|
|
41
|
+
number
|
|
42
|
+
name
|
|
43
|
+
startsAt
|
|
44
|
+
endsAt
|
|
45
|
+
team {
|
|
46
|
+
id
|
|
47
|
+
name
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
cycles(first: 20) {
|
|
51
|
+
nodes {
|
|
52
|
+
id
|
|
53
|
+
number
|
|
54
|
+
name
|
|
55
|
+
startsAt
|
|
56
|
+
endsAt
|
|
57
|
+
team {
|
|
58
|
+
id
|
|
59
|
+
name
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}`),t=new Map;for(let s of e.teams.nodes)for(let e of[...s.activeCycle?[s.activeCycle]:[],...s.cycles.nodes])t.has(e.id)||t.set(e.id,{id:e.id,number:e.number,name:e.name,startsAt:e.startsAt,endsAt:e.endsAt,teamId:e.team?.id??s.id,teamName:e.team?.name??s.name});return[...t.values()].sort((e,t)=>new Date(t.startsAt).getTime()-new Date(e.startsAt).getTime())}async request(e){let t=await fetch("https://api.linear.app/graphql",{method:"POST",headers:{"Content-Type":"application/json",Authorization:this.accessToken},body:JSON.stringify({query:e}),cache:"no-store"}),s=await t.json();if(!t.ok||s.errors?.length)throw Error(s.errors?.map(e=>e.message).find(Boolean)??`Linear request failed with status ${t.status}`);if(!s.data)throw Error("Linear response did not include data");return s.data}}function d(){let e=function(){try{let e=(0,t.readFileSync)(i(),"utf8");return JSON.parse(e)}catch{}try{let e=r(),s=(0,t.readFileSync)(e,"utf8"),n=JSON.parse(s);l(n);try{(0,t.unlinkSync)(e)}catch{}return n}catch{return null}}();return e?new o(e.accessToken):null}e.s(["LinearClient",()=>o,"deleteLinearToken",()=>u,"getLinearClient",()=>d,"saveLinearToken",()=>l])},832674,343649,e=>{"use strict";e.i(423502);var t=e.i(902157),s=e.i(750227),n=e.i(260476),a=e.i(841897),i=e.x("node:sqlite",()=>require("node:sqlite"),!0),r=e.i(660526),l=e.i(259833);let u=process.env.AGX_LINEAR_DIR?.trim()||s.default.join(process.env.AGX_DATA_DIR||s.default.join(r.default.homedir(),".agx"),"linear"),o=s.default.join(u,"issues.sqlite");function d(e){return e?.trim()||null}function c(e){return new Date(e).toISOString()}function p(e){return{id:e.issue_id,identifier:e.identifier,title:e.title,description:e.description,url:e.url,status:e.status,assigneeId:e.assignee_id,assignee:e.assignee_name,assigneeEmail:e.assignee_email,isAssignedToMe:1===e.is_assigned_to_me,teamId:e.team_id,teamName:e.team_name,teamKey:e.team_key,cycleId:e.cycle_id,cycleName:e.cycle_name,cycleNumber:e.cycle_number,updatedAt:e.updated_at,pulledAt:c(e.pulled_at)}}async function m(e){await t.promises.mkdir(u,{recursive:!0});let s=new i.DatabaseSync(o);(0,l.pragmaSet)(s,"journal_mode = WAL");try{return s.exec(`
|
|
66
|
+
CREATE TABLE IF NOT EXISTS linear_issues (
|
|
67
|
+
issue_id TEXT PRIMARY KEY,
|
|
68
|
+
identifier TEXT NOT NULL,
|
|
69
|
+
title TEXT NOT NULL,
|
|
70
|
+
description TEXT,
|
|
71
|
+
url TEXT,
|
|
72
|
+
status TEXT NOT NULL,
|
|
73
|
+
assignee_id TEXT,
|
|
74
|
+
assignee_name TEXT,
|
|
75
|
+
assignee_email TEXT,
|
|
76
|
+
is_assigned_to_me INTEGER NOT NULL DEFAULT 0,
|
|
77
|
+
team_id TEXT,
|
|
78
|
+
team_name TEXT,
|
|
79
|
+
team_key TEXT,
|
|
80
|
+
cycle_id TEXT,
|
|
81
|
+
cycle_name TEXT,
|
|
82
|
+
cycle_number INTEGER,
|
|
83
|
+
updated_at TEXT NOT NULL,
|
|
84
|
+
pulled_at INTEGER NOT NULL
|
|
85
|
+
);
|
|
86
|
+
CREATE INDEX IF NOT EXISTS idx_linear_issues_updated
|
|
87
|
+
ON linear_issues (updated_at DESC, identifier ASC);
|
|
88
|
+
CREATE INDEX IF NOT EXISTS idx_linear_issues_cycle
|
|
89
|
+
ON linear_issues (cycle_id, updated_at DESC);
|
|
90
|
+
CREATE INDEX IF NOT EXISTS idx_linear_issues_assignee_me
|
|
91
|
+
ON linear_issues (is_assigned_to_me, updated_at DESC);
|
|
92
|
+
CREATE TABLE IF NOT EXISTS linear_issue_sync_state (
|
|
93
|
+
scope_key TEXT PRIMARY KEY,
|
|
94
|
+
last_pulled_at INTEGER NOT NULL,
|
|
95
|
+
issue_count INTEGER NOT NULL
|
|
96
|
+
);
|
|
97
|
+
`),e(s)}finally{s.close()}}async function f(e){let t=e.pulledAtMs??Date.now();return m(s=>{s.exec("BEGIN");try{let a=s.prepare(`
|
|
98
|
+
INSERT INTO linear_issues (
|
|
99
|
+
issue_id, identifier, title, description, url, status,
|
|
100
|
+
assignee_id, assignee_name, assignee_email, is_assigned_to_me,
|
|
101
|
+
team_id, team_name, team_key, cycle_id, cycle_name, cycle_number,
|
|
102
|
+
updated_at, pulled_at
|
|
103
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
104
|
+
ON CONFLICT(issue_id) DO UPDATE SET
|
|
105
|
+
identifier = excluded.identifier,
|
|
106
|
+
title = excluded.title,
|
|
107
|
+
description = excluded.description,
|
|
108
|
+
url = excluded.url,
|
|
109
|
+
status = excluded.status,
|
|
110
|
+
assignee_id = excluded.assignee_id,
|
|
111
|
+
assignee_name = excluded.assignee_name,
|
|
112
|
+
assignee_email = excluded.assignee_email,
|
|
113
|
+
is_assigned_to_me = excluded.is_assigned_to_me,
|
|
114
|
+
team_id = excluded.team_id,
|
|
115
|
+
team_name = excluded.team_name,
|
|
116
|
+
team_key = excluded.team_key,
|
|
117
|
+
cycle_id = excluded.cycle_id,
|
|
118
|
+
cycle_name = excluded.cycle_name,
|
|
119
|
+
cycle_number = excluded.cycle_number,
|
|
120
|
+
updated_at = excluded.updated_at,
|
|
121
|
+
pulled_at = excluded.pulled_at
|
|
122
|
+
`);for(let s of e.issues){var n;a.run(s.id.trim(),s.identifier.trim(),s.title.trim(),d(s.description??null),d(s.url??null),s.status.trim(),d(s.assigneeId??null),d(s.assignee??null),d(s.assigneeEmail??null),+!!s.isAssignedToMe,d(s.teamId??null),d(s.teamName??null),d(s.teamKey??null),d(s.cycleId??null),d(s.cycleName??null),(n=s.cycleNumber??null,"number"==typeof n&&Number.isFinite(n)?n:null),s.updatedAt.trim(),t)}if(e.complete)if(0===e.issues.length)s.exec("DELETE FROM linear_issues");else{let t=e.issues.map(()=>"?").join(", ");s.prepare(`DELETE FROM linear_issues WHERE issue_id NOT IN (${t})`).run(...e.issues.map(e=>e.id.trim()))}s.exec("COMMIT")}catch(e){throw s.exec("ROLLBACK"),e}})}async function _(e,t,s=Date.now()){let n=e.trim()||"global";return m(e=>{e.prepare(`
|
|
123
|
+
INSERT INTO linear_issue_sync_state (scope_key, last_pulled_at, issue_count)
|
|
124
|
+
VALUES (?, ?, ?)
|
|
125
|
+
ON CONFLICT(scope_key) DO UPDATE SET
|
|
126
|
+
last_pulled_at = excluded.last_pulled_at,
|
|
127
|
+
issue_count = excluded.issue_count
|
|
128
|
+
`).run(n,s,t)})}async function g(e="global"){let t=e.trim()||"global";return m(e=>{let s=e.prepare(`SELECT scope_key, last_pulled_at, issue_count
|
|
129
|
+
FROM linear_issue_sync_state
|
|
130
|
+
WHERE scope_key = ?
|
|
131
|
+
LIMIT 1`).get(t);return s?{scopeKey:s.scope_key,lastPulledAt:c(s.last_pulled_at),issueCount:s.issue_count}:null})}async function y(){return m(e=>{let t=e.prepare("SELECT COUNT(*) AS count FROM linear_issues").get();return t?.count??0})}async function E(e={}){let t=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),500):50,s=Number.isFinite(Number(e.cursor))?Math.max(Number(e.cursor),0):0;return m(n=>{let a=[],i=[],r=d(e.search??null);if(r){let e=`%${r.toLowerCase().replace(/[\\%_]/g,"\\$&")}%`;a.push("(LOWER(identifier) LIKE ? ESCAPE '\\' OR LOWER(title) LIKE ? ESCAPE '\\' OR LOWER(COALESCE(description, '')) LIKE ? ESCAPE '\\')"),i.push(e,e,e)}let l=Array.from(new Set((e.statuses??[]).map(e=>d(e)).filter(e=>!!e).map(e=>e.toLowerCase())));l.length>0&&(a.push(`LOWER(status) IN (${l.map(()=>"?").join(", ")})`),i.push(...l));let u=Array.from(new Set((e.assigneeIds??[]).map(e=>d(e)).filter(e=>!!e)));u.length>0&&(a.push(`assignee_id IN (${u.map(()=>"?").join(", ")})`),i.push(...u)),e.assignedToMe&&a.push("is_assigned_to_me = 1");let o=d(e.teamId??null);o&&(a.push("team_id = ?"),i.push(o));let c=d(e.cycleId??null);c&&(a.push("cycle_id = ?"),i.push(c));let m=a.length>0?`WHERE ${a.join(" AND ")}`:"",f=n.prepare(`SELECT *
|
|
132
|
+
FROM linear_issues
|
|
133
|
+
${m}
|
|
134
|
+
ORDER BY updated_at DESC, identifier ASC
|
|
135
|
+
LIMIT ? OFFSET ?`).all(...i,t+1,s),_=f.length>t,g=_?f.slice(0,t):f,y=_?String(s+t):null;return{issues:g.map(p),pageInfo:{hasNextPage:_,endCursor:y}}})}async function h(){return m(e=>e.prepare(`SELECT DISTINCT status
|
|
136
|
+
FROM linear_issues
|
|
137
|
+
WHERE TRIM(status) <> ''
|
|
138
|
+
ORDER BY LOWER(status) ASC`).all().map(e=>e.status.trim()).filter(Boolean))}async function x(e){let t=Array.from(new Set(e.map(e=>e.trim()).filter(Boolean)));return 0===t.length?[]:m(e=>{let s=t.map(()=>"?").join(", "),n=new Map(e.prepare(`SELECT *
|
|
139
|
+
FROM linear_issues
|
|
140
|
+
WHERE issue_id IN (${s})`).all(...t).map(e=>[e.issue_id,p(e)]));return t.map(e=>n.get(e)).filter(e=>!!e)})}e.s(["countCachedLinearIssues",()=>y,"getCachedLinearIssueContexts",()=>x,"getLinearIssueSyncState",()=>g,"listCachedLinearIssueStatuses",()=>h,"listCachedLinearIssues",()=>E,"replaceCachedLinearIssues",()=>f,"setLinearIssueSyncState",()=>_],343649);var T=e.i(492952);let A="global";function S(e){let t=String(e??"").trim().toLowerCase();return t?`project:${t}`:A}function R(e){t.default.mkdirSync(e,{recursive:!0})}function N(e,n){R(s.default.dirname(e));let a=`${e}.tmp-${process.pid}-${Date.now()}`;t.default.writeFileSync(a,n,"utf8"),t.default.renameSync(a,e)}function I(e){return{id:e.id,identifier:e.identifier,title:e.title,url:e.url,status:e.status,assignee:e.assignee,updatedAt:e.updatedAt}}function L(e){return{...I(e),description:e.description,assigneeId:e.assigneeId,assigneeEmail:e.assigneeEmail,isAssignedToMe:e.isAssignedToMe,teamId:e.teamId,teamName:e.teamName,teamKey:e.teamKey,cycleId:e.cycleId,cycleName:e.cycleName,cycleNumber:e.cycleNumber,pulledAt:e.pulledAt}}function w(e,t){return e.trim().replace(/[\\/]/g,"-")||t}async function C(e={}){let t,i=(0,a.getLinearClient)();if(!i)throw Error("Not connected");let r=await i.viewer,l=Date.now(),u=new Date(l).toISOString(),o=0,d=!0,c=[];for(;o<500;){let e=500-o,s=await i.issues({first:Math.min(100,e),after:t,orderBy:"updatedAt"}),n=await Promise.all(s.nodes.map(async e=>{let[t,s,n,a]=await Promise.all([e.state,e.assignee,e.team,e.cycle]);return{id:e.id,identifier:e.identifier,title:e.title,description:e.description??null,url:e.url,status:t?.name??"Unknown",assigneeId:s?.id??null,assignee:s?.name??null,assigneeEmail:s?.email??null,isAssignedToMe:!!(s?.id&&s.id===r.id),teamId:n?.id??null,teamName:n?.name??null,teamKey:n?.key??null,cycleId:a?.id??null,cycleName:a?.name??null,cycleNumber:a?.number??null,updatedAt:e.updatedAt}}));if(c.push(...n),o+=n.length,!s.pageInfo.hasNextPage||!s.pageInfo.endCursor)break;if(o>=500){d=!1;break}t=s.pageInfo.endCursor}await f({issues:c,complete:d,pulledAtMs:l}),await _(A,c.length,l);let p=S(e.projectSlug);return p!==A&&await _(p,c.length,l),!function(e,t,a){let i=function(e){let t=T.vaultStore.getRootDir(),n=String(e??"").trim();if(n){let e=T.vaultStore.getProjectWithRepos(n),a=e?.slug??n;return s.default.join(t,a,"issues")}return s.default.join(t,"_global","Linear","issues")}(a);R(i);let r=["# Linear Issues","",`Last pulled: ${t}`,""];for(let a of e){let e=s.default.join(i,w(a.identifier,a.id));!function(e,t,s){let a=(0,n.dump)(t,{lineWidth:120,noRefs:!0,sortKeys:!0}).trimEnd(),i=String(s||"").replace(/\r\n/g,"\n").split("\n").map(e=>e.replace(/\s+$/g,"")).join("\n").trim();N(e,i?`---
|
|
141
|
+
${a}
|
|
142
|
+
---
|
|
143
|
+
${i}
|
|
144
|
+
`:`---
|
|
145
|
+
${a}
|
|
146
|
+
---
|
|
147
|
+
`)}(s.default.join(e,"README.md"),{type:"linear-issue",issue_id:a.id,identifier:a.identifier,title:a.title,status:a.status,assignee_id:a.assigneeId??null,assignee_name:a.assignee??null,assignee_email:a.assigneeEmail??null,team_id:a.teamId??null,team_name:a.teamName??null,team_key:a.teamKey??null,cycle_id:a.cycleId??null,cycle_name:a.cycleName??null,cycle_number:a.cycleNumber??null,url:a.url??null,updated_at:a.updatedAt,pulled_at:t},[`# ${a.identifier}: ${a.title}`,"",`- Status: ${a.status}`,`- Assignee: ${a.assignee??"Unassigned"}`,a.teamName?`- Team: ${a.teamName}`:null,a.cycleName||null!=a.cycleNumber?`- Cycle: ${a.cycleName??`Cycle ${a.cycleNumber}`}`:null,`- Updated in Linear: ${a.updatedAt}`,`- Pulled locally: ${t}`,a.url?`- URL: ${a.url}`:null,"","## Description","",a.description?.trim()||"_No description provided._"].filter(e=>null!==e).join("\n")),r.push(`- [${a.identifier}](${encodeURIComponent(w(a.identifier,a.id))}/README.md) - ${a.title} (${a.status})`)}N(s.default.join(i,"_index.md"),`${r.join("\n")}
|
|
148
|
+
`)}(c,u,e.projectSlug),{issueCount:c.length,complete:d,pulledAt:u}}async function v(e={}){let t=!!e.refresh,s=S(e.projectSlug);if(!t){let[e,t]=await Promise.all([y(),g(s)]);if(e>0&&t)return null}return(0,a.getLinearClient)()?C({projectSlug:e.projectSlug}):null}async function b(e={}){let[t,s]=await Promise.all([E(e),g(A)]);return{issues:t.issues.map(I),pageInfo:t.pageInfo,syncState:{lastPulledAt:s?.lastPulledAt??null}}}async function O(e){return(await x(e)).map(L)}e.s(["ensureLinearIssueCache",()=>v,"getLinearIssueContexts",()=>O,"listLinearIssueSummaries",()=>b],832674)},772341,e=>{"use strict";var t=e.i(747909),s=e.i(174017),n=e.i(996250),a=e.i(759756),i=e.i(561916),r=e.i(174677),l=e.i(869741),u=e.i(316795),o=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),m=e.i(570101),f=e.i(626937),_=e.i(10372),g=e.i(193695);e.i(52474);var y=e.i(600220),E=e.i(89171),h=e.i(832674);async function x(e){try{let t=await e.json().catch(()=>({})),s=Array.isArray(t.issueIds)?t.issueIds.filter(e=>"string"==typeof e&&e.trim().length>0):[],n=await (0,h.getLinearIssueContexts)(s);return E.NextResponse.json({issues:n})}catch(e){return E.NextResponse.json({error:e?.message??"Failed to load issue context"},{status:500})}}e.s(["POST",()=>x,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],259781);var T=e.i(259781);let A=new t.AppRouteRouteModule({definition:{kind:s.RouteKind.APP_ROUTE,page:"/api/linear/issues/context/route",pathname:"/api/linear/issues/context",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/linear/issues/context/route.ts",nextConfigOutput:"standalone",userland:T}),{workAsyncStorage:S,workUnitAsyncStorage:R,serverHooks:N}=A;function I(){return(0,n.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:R})}async function L(e,t,n){A.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let E="/api/linear/issues/context/route";E=E.replace(/\/index$/,"")||"/";let h=await A.prepare(e,t,{srcPage:E,multiZoneDraftMode:!1});if(!h)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:x,params:T,nextConfig:S,parsedUrl:R,isDraftMode:N,prerenderManifest:I,routerServerContext:L,isOnDemandRevalidate:w,revalidateOnlyGenerated:C,resolvedPathname:v,clientReferenceManifest:b,serverActionsManifest:O}=h,j=(0,l.normalizeAppPath)(E),$=!!(I.dynamicRoutes[j]||I.routes[v]),k=async()=>((null==L?void 0:L.render404)?await L.render404(e,t,R,!1):t.end("This page could not be found"),null);if($&&!N){let e=!!I.routes[v],t=I.dynamicRoutes[j];if(t&&!1===t.fallback&&!e){if(S.experimental.adapterPath)return await k();throw new g.NoFallbackError}}let q=null;!$||A.isDev||N||(q="/index"===(q=v)?"/":q);let D=!0===A.isDev||!$,M=$&&!D;O&&b&&(0,r.setManifestsSingleton)({page:E,clientReferenceManifest:b,serverActionsManifest:O});let P=e.method||"GET",U=(0,i.getTracer)(),F=U.getActiveScopeSpan(),X={params:T,prerenderManifest:I,renderOpts:{experimental:{authInterrupts:!!S.experimental.authInterrupts},cacheComponents:!!S.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:S.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,s,n,a)=>A.onRequestError(e,t,n,a,L)},sharedContext:{buildId:x}},B=new u.NodeNextRequest(e),G=new u.NodeNextResponse(t),K=o.NextRequestAdapter.fromNodeNextRequest(B,(0,o.signalFromNodeResponse)(t));try{let r=async e=>A.handle(K,X).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let s=U.getRootSpanAttributes();if(!s)return;if(s.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${s.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=s.get("next.route");if(n){let t=`${P} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${P} ${E}`)}),l=!!(0,a.getRequestMeta)(e,"minimalMode"),u=async a=>{var i,u;let o=async({previousCacheEntry:s})=>{try{if(!l&&w&&C&&!s)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await r(a);e.fetchMetrics=X.renderOpts.fetchMetrics;let u=X.renderOpts.pendingWaitUntil;u&&n.waitUntil&&(n.waitUntil(u),u=void 0);let o=X.renderOpts.collectedTags;if(!$)return await (0,p.sendResponse)(B,G,i,X.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(i.headers);o&&(t[_.NEXT_CACHE_TAGS_HEADER]=o),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let s=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=_.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,n=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=_.INFINITE_CACHE?void 0:X.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:s,expire:n}}}}catch(t){throw(null==s?void 0:s.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:E,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:w})},!1,L),t}},d=await A.handleResponse({req:e,nextConfig:S,cacheKey:q,routeKind:s.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:I,isRoutePPREnabled:!1,isOnDemandRevalidate:w,revalidateOnlyGenerated:C,responseGenerator:o,waitUntil:n.waitUntil,isMinimalMode:l});if(!$)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==y.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(u=d.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});l||t.setHeader("x-nextjs-cache",w?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),N&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,m.fromNodeOutgoingHttpHeaders)(d.value.headers);return l&&$||g.delete(_.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,f.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(B,G,new Response(d.value.body,{headers:g,status:d.value.status||200})),null};F?await u(F):await U.withPropagatedContext(e.headers,()=>U.trace(d.BaseServerSpan.handleRequest,{spanName:`${P} ${E}`,kind:i.SpanKind.SERVER,attributes:{"http.method":P,"http.target":e.url}},u))}catch(t){if(t instanceof g.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:j,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:w})},!1,L),$)throw t;return await (0,p.sendResponse)(B,G,new Response(null,{status:500})),null}}e.s(["handler",()=>L,"patchFetch",()=>I,"routeModule",()=>A,"serverHooks",()=>N,"workAsyncStorage",()=>S,"workUnitAsyncStorage",()=>R],772341)}];
|
|
149
|
+
|
|
150
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__a3955224._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function n(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function s(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>n,"transactionFn",()=>s])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),a=e.i(814747);let n="3.35.0",s=["json1"],o=["fts5"],i=["nfs","smb","cifs","efs","fuse.sshfs"];function l(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function u(u,d){let c=[],p=u.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(p.v,n)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${n}`,found:p.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),s))l(u,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of o)l(u,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let f=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let n=a.default.resolve(t),{execSync:s}=e.r(233405);if("darwin"===r.default.platform()){let e=s(`df -T "${n}" 2>/dev/null || df "${n}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(d);f&&i.some(e=>f.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${f})`,path:d,found:f,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(u,"journal_mode = wal"),(0,t.pragmaSet)(u,"foreign_keys = 1"),(0,t.pragmaSet)(u,"busy_timeout = 5000"),(0,t.pragmaSet)(u,"synchronous = 1"),(0,t.pragmaSet)(u,"cache_size = -64000");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(u,"journal_mode = DELETE");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(u,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>u])},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},278700,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),s=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),f=e.i(570101),h=e.i(626937),x=e.i(10372),g=e.i(193695);e.i(52474);var m=e.i(600220),R=e.i(89171),v=e.i(762294);async function E(e,t){try{let{id:e}=await t.params,r=await (0,v.getProjectAgents)(e);return R.NextResponse.json({agents:r})}catch(e){return console.error("Error fetching project agents:",e),R.NextResponse.json({error:"Failed to fetch project agents"},{status:500})}}async function w(e,t){try{let{id:r}=await t.params,a=await e.json().catch(()=>({})),n="string"==typeof a.agentId?a.agentId.trim():"";if(!n)return R.NextResponse.json({error:"agentId is required"},{status:400});await (0,v.addProjectAgent)(r,n,a.routingOrder);let s=await (0,v.getProjectAgents)(r);return R.NextResponse.json({agents:s},{status:201})}catch(e){return console.error("Error adding agent to project:",e),R.NextResponse.json({error:"Failed to add agent to project"},{status:500})}}async function y(e,t){try{let{id:r}=await t.params,a=new URL(e.url).searchParams.get("agentId");if(!a)return R.NextResponse.json({error:"agentId query param is required"},{status:400});await (0,v.removeProjectAgent)(r,a);let n=await (0,v.getProjectAgents)(r);return R.NextResponse.json({agents:n})}catch(e){return console.error("Error removing agent from project:",e),R.NextResponse.json({error:"Failed to remove agent from project"},{status:500})}}async function A(e,t){try{let{id:r}=await t.params,a=(await e.json().catch(()=>({}))).orderedAgentIds;if(!Array.isArray(a)||a.some(e=>"string"!=typeof e))return R.NextResponse.json({error:"orderedAgentIds must be a string array"},{status:400});let n=await (0,v.reorderProjectAgents)(r,a);return R.NextResponse.json({agents:n})}catch(e){return console.error("Error reordering project agents:",e),R.NextResponse.json({error:"Failed to reorder agents"},{status:500})}}e.s(["DELETE",()=>y,"GET",()=>E,"PATCH",()=>A,"POST",()=>w,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],480903);var j=e.i(480903);let b=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/projects/[id]/agents/route",pathname:"/api/projects/[id]/agents",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/projects/[id]/agents/route.ts",nextConfigOutput:"standalone",userland:j}),{workAsyncStorage:C,workUnitAsyncStorage:_,serverHooks:S}=b;function q(){return(0,a.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:_})}async function N(e,t,a){b.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/projects/[id]/agents/route";R=R.replace(/\/index$/,"")||"/";let v=await b.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,params:w,nextConfig:y,parsedUrl:A,isDraftMode:j,prerenderManifest:C,routerServerContext:_,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,resolvedPathname:N,clientReferenceManifest:T,serverActionsManifest:L}=v,P=(0,i.normalizeAppPath)(R),I=!!(C.dynamicRoutes[P]||C.routes[N]),O=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,A,!1):t.end("This page could not be found"),null);if(I&&!j){let e=!!C.routes[N],t=C.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await O();throw new g.NoFallbackError}}let k=null;!I||b.isDev||j||(k="/index"===(k=N)?"/":k);let U=!0===b.isDev||!I,$=I&&!U;L&&T&&(0,o.setManifestsSingleton)({page:R,clientReferenceManifest:T,serverActionsManifest:L});let D=e.method||"GET",M=(0,s.getTracer)(),F=M.getActiveScopeSpan(),H={params:w,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>b.onRequestError(e,t,a,n,_)},sharedContext:{buildId:E}},G=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),K=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let o=async e=>b.handle(K,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${D} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${R}`)}),i=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var s,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&S&&q&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(n);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let u=H.renderOpts.collectedTags;if(!I)return await (0,p.sendResponse)(G,B,s,H.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[x.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await b.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),t}},d=await b.handleResponse({req:e,nextConfig:y,cacheKey:k,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:i});if(!I)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",S?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),j&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&I||g.delete(x.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(G,B,new Response(d.value.body,{headers:g,status:d.value.status||200})),null};F?await l(F):await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${D} ${R}`,kind:s.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await b.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),I)throw t;return await (0,p.sendResponse)(G,B,new Response(null,{status:500})),null}}e.s(["handler",()=>N,"patchFetch",()=>q,"routeModule",()=>b,"serverHooks",()=>S,"workAsyncStorage",()=>C,"workUnitAsyncStorage",()=>_],278700)}];
|
|
1
|
+
module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function n(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function s(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>n,"transactionFn",()=>s])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),a=e.i(814747);let n="3.35.0",s=["json1"],o=["fts5"],i=["nfs","smb","cifs","efs","fuse.sshfs"];function l(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function u(u,d){let c=[],p=u.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(p.v,n)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${n}`,found:p.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),s))l(u,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of o)l(u,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let f=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let n=a.default.resolve(t),{execSync:s}=e.r(233405);if("darwin"===r.default.platform()){let e=s(`df -T "${n}" 2>/dev/null || df "${n}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(d);f&&i.some(e=>f.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${f})`,path:d,found:f,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(u,"journal_mode = wal"),(0,t.pragmaSet)(u,"foreign_keys = 1"),(0,t.pragmaSet)(u,"busy_timeout = 5000"),(0,t.pragmaSet)(u,"synchronous = 1"),(0,t.pragmaSet)(u,"cache_size = -64000");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(u,"journal_mode = DELETE");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(u,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>u])},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},278700,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),s=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),f=e.i(570101),h=e.i(626937),x=e.i(10372),g=e.i(193695);e.i(52474);var m=e.i(600220),R=e.i(89171),v=e.i(762294);async function E(e,t){try{let{id:e}=await t.params,r=await (0,v.getProjectAgents)(e);return R.NextResponse.json({agents:r})}catch(e){return console.error("Error fetching project agents:",e),R.NextResponse.json({error:"Failed to fetch project agents"},{status:500})}}async function w(e,t){try{let{id:r}=await t.params,a=await e.json().catch(()=>({})),n="string"==typeof a.agentId?a.agentId.trim():"";if(!n)return R.NextResponse.json({error:"agentId is required"},{status:400});await (0,v.addProjectAgent)(r,n,a.routingOrder);let s=await (0,v.getProjectAgents)(r);return R.NextResponse.json({agents:s},{status:201})}catch(e){return console.error("Error adding agent to project:",e),R.NextResponse.json({error:"Failed to add agent to project"},{status:500})}}async function y(e,t){try{let{id:r}=await t.params,a=new URL(e.url).searchParams.get("agentId");if(!a)return R.NextResponse.json({error:"agentId query param is required"},{status:400});await (0,v.removeProjectAgent)(r,a);let n=await (0,v.getProjectAgents)(r);return R.NextResponse.json({agents:n})}catch(e){return console.error("Error removing agent from project:",e),R.NextResponse.json({error:"Failed to remove agent from project"},{status:500})}}async function A(e,t){try{let{id:r}=await t.params,a=(await e.json().catch(()=>({}))).orderedAgentIds;if(!Array.isArray(a)||a.some(e=>"string"!=typeof e))return R.NextResponse.json({error:"orderedAgentIds must be a string array"},{status:400});let n=await (0,v.reorderProjectAgents)(r,a);return R.NextResponse.json({agents:n})}catch(e){return console.error("Error reordering project agents:",e),R.NextResponse.json({error:"Failed to reorder agents"},{status:500})}}e.s(["DELETE",()=>y,"GET",()=>E,"PATCH",()=>A,"POST",()=>w,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],480903);var j=e.i(480903);let b=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/projects/[id]/agents/route",pathname:"/api/projects/[id]/agents",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/projects/[id]/agents/route.ts",nextConfigOutput:"standalone",userland:j}),{workAsyncStorage:C,workUnitAsyncStorage:_,serverHooks:S}=b;function q(){return(0,a.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:_})}async function N(e,t,a){b.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/projects/[id]/agents/route";R=R.replace(/\/index$/,"")||"/";let v=await b.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,params:w,nextConfig:y,parsedUrl:A,isDraftMode:j,prerenderManifest:C,routerServerContext:_,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,resolvedPathname:N,clientReferenceManifest:T,serverActionsManifest:L}=v,P=(0,i.normalizeAppPath)(R),I=!!(C.dynamicRoutes[P]||C.routes[N]),O=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,A,!1):t.end("This page could not be found"),null);if(I&&!j){let e=!!C.routes[N],t=C.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await O();throw new g.NoFallbackError}}let k=null;!I||b.isDev||j||(k="/index"===(k=N)?"/":k);let U=!0===b.isDev||!I,$=I&&!U;L&&T&&(0,o.setManifestsSingleton)({page:R,clientReferenceManifest:T,serverActionsManifest:L});let D=e.method||"GET",M=(0,s.getTracer)(),F=M.getActiveScopeSpan(),H={params:w,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>b.onRequestError(e,t,a,n,_)},sharedContext:{buildId:E}},G=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),K=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let o=async e=>b.handle(K,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${D} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${R}`)}),i=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var s,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&S&&q&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(n);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let u=H.renderOpts.collectedTags;if(!I)return await (0,p.sendResponse)(G,B,s,H.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[x.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await b.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),t}},d=await b.handleResponse({req:e,nextConfig:y,cacheKey:k,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:i});if(!I)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",S?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),j&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&I||g.delete(x.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(G,B,new Response(d.value.body,{headers:g,status:d.value.status||200})),null};F?await l(F):await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${D} ${R}`,kind:s.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await b.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),I)throw t;return await (0,p.sendResponse)(G,B,new Response(null,{status:500})),null}}e.s(["handler",()=>N,"patchFetch",()=>q,"routeModule",()=>b,"serverHooks",()=>S,"workAsyncStorage",()=>C,"workUnitAsyncStorage",()=>_],278700)}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__a7b2350e._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function s(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function n(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>s,"transactionFn",()=>n])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),a=e.i(814747);let s="3.35.0",n=["json1"],o=["fts5"],i=["nfs","smb","cifs","efs","fuse.sshfs"];function l(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function u(u,d){let c=[],p=u.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(p.v,s)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${s}`,found:p.v,required:`>= ${s}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),n))l(u,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of o)l(u,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let f=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let s=a.default.resolve(t),{execSync:n}=e.r(233405);if("darwin"===r.default.platform()){let e=n(`df -T "${s}" 2>/dev/null || df "${s}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(d);f&&i.some(e=>f.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${f})`,path:d,found:f,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(u,"journal_mode = wal"),(0,t.pragmaSet)(u,"foreign_keys = 1"),(0,t.pragmaSet)(u,"busy_timeout = 5000"),(0,t.pragmaSet)(u,"synchronous = 1"),(0,t.pragmaSet)(u,"cache_size = -64000");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(u,"journal_mode = DELETE");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(u,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>u])},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},453616,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),s=e.i(759756),n=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),f=e.i(570101),h=e.i(626937),x=e.i(10372),m=e.i(193695);e.i(52474);var v=e.i(600220),g=e.i(89171),R=e.i(762294);async function E(e,t){try{let{id:e}=await t.params,r=await (0,R.getProjectVariables)(e);return g.NextResponse.json({variables:r})}catch(e){return console.error("Error fetching project variables:",e),g.NextResponse.json({error:"Failed to fetch project variables"},{status:500})}}async function y(e,t){try{let{id:r}=await t.params,a=await e.json().catch(()=>({})),s="string"==typeof a.key?a.key.trim():"",n="string"==typeof a.value?a.value:"";if(!s)return g.NextResponse.json({error:"key is required"},{status:400});let o=await (0,R.setProjectVariable)(r,s,n);return g.NextResponse.json({variable:o},{status:201})}catch(e){return console.error("Error setting project variable:",e),g.NextResponse.json({error:"Failed to set project variable"},{status:500})}}async function w(e,t){try{let{id:r}=await t.params,a=new URL(e.url).searchParams.get("key");if(!a)return g.NextResponse.json({error:"key query param is required"},{status:400});return await (0,R.deleteProjectVariable)(r,a),g.NextResponse.json({ok:!0})}catch(e){return console.error("Error deleting project variable:",e),g.NextResponse.json({error:"Failed to delete project variable"},{status:500})}}e.s(["DELETE",()=>w,"GET",()=>E,"POST",()=>y,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],356131);var b=e.i(356131);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/projects/[id]/variables/route",pathname:"/api/projects/[id]/variables",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/projects/[id]/variables/route.ts",nextConfigOutput:"standalone",userland:b}),{workAsyncStorage:j,workUnitAsyncStorage:C,serverHooks:_}=A;function S(){return(0,a.patchFetch)({workAsyncStorage:j,workUnitAsyncStorage:C})}async function q(e,t,a){A.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/projects/[id]/variables/route";g=g.replace(/\/index$/,"")||"/";let R=await A.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,params:y,nextConfig:w,parsedUrl:b,isDraftMode:j,prerenderManifest:C,routerServerContext:_,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,resolvedPathname:T,clientReferenceManifest:L,serverActionsManifest:N}=R,k=(0,i.normalizeAppPath)(g),P=!!(C.dynamicRoutes[k]||C.routes[T]),O=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,b,!1):t.end("This page could not be found"),null);if(P&&!j){let e=!!C.routes[T],t=C.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(w.experimental.adapterPath)return await O();throw new m.NoFallbackError}}let I=null;!P||A.isDev||j||(I="/index"===(I=T)?"/":I);let U=!0===A.isDev||!P,$=P&&!U;N&&L&&(0,o.setManifestsSingleton)({page:g,clientReferenceManifest:L,serverActionsManifest:N});let D=e.method||"GET",M=(0,n.getTracer)(),F=M.getActiveScopeSpan(),H={params:y,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:w.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>A.onRequestError(e,t,a,s,_)},sharedContext:{buildId:E}},G=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),K=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let o=async e=>A.handle(K,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${D} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${g}`)}),i=!!(0,s.getRequestMeta)(e,"minimalMode"),l=async s=>{var n,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&S&&q&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await o(s);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let u=H.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(G,B,n,H.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(n.headers);u&&(t[x.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),t}},d=await A.handleResponse({req:e,nextConfig:w,cacheKey:I,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:i});if(!P)return null;if((null==d||null==(n=d.value)?void 0:n.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",S?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),j&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&P||m.delete(x.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(G,B,new Response(d.value.body,{headers:m,status:d.value.status||200})),null};F?await l(F):await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${D} ${g}`,kind:n.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof m.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),P)throw t;return await (0,p.sendResponse)(G,B,new Response(null,{status:500})),null}}e.s(["handler",()=>q,"patchFetch",()=>S,"routeModule",()=>A,"serverHooks",()=>_,"workAsyncStorage",()=>j,"workUnitAsyncStorage",()=>C],453616)}];
|
|
1
|
+
module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function s(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function n(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>s,"transactionFn",()=>n])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),a=e.i(814747);let s="3.35.0",n=["json1"],o=["fts5"],i=["nfs","smb","cifs","efs","fuse.sshfs"];function l(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function u(u,d){let c=[],p=u.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(p.v,s)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${s}`,found:p.v,required:`>= ${s}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),n))l(u,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of o)l(u,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let f=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let s=a.default.resolve(t),{execSync:n}=e.r(233405);if("darwin"===r.default.platform()){let e=n(`df -T "${s}" 2>/dev/null || df "${s}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(d);f&&i.some(e=>f.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${f})`,path:d,found:f,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(u,"journal_mode = wal"),(0,t.pragmaSet)(u,"foreign_keys = 1"),(0,t.pragmaSet)(u,"busy_timeout = 5000"),(0,t.pragmaSet)(u,"synchronous = 1"),(0,t.pragmaSet)(u,"cache_size = -64000");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(u,"journal_mode = DELETE");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(u,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>u])},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},453616,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),s=e.i(759756),n=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),f=e.i(570101),h=e.i(626937),x=e.i(10372),m=e.i(193695);e.i(52474);var v=e.i(600220),g=e.i(89171),R=e.i(762294);async function E(e,t){try{let{id:e}=await t.params,r=await (0,R.getProjectVariables)(e);return g.NextResponse.json({variables:r})}catch(e){return console.error("Error fetching project variables:",e),g.NextResponse.json({error:"Failed to fetch project variables"},{status:500})}}async function y(e,t){try{let{id:r}=await t.params,a=await e.json().catch(()=>({})),s="string"==typeof a.key?a.key.trim():"",n="string"==typeof a.value?a.value:"";if(!s)return g.NextResponse.json({error:"key is required"},{status:400});let o=await (0,R.setProjectVariable)(r,s,n);return g.NextResponse.json({variable:o},{status:201})}catch(e){return console.error("Error setting project variable:",e),g.NextResponse.json({error:"Failed to set project variable"},{status:500})}}async function w(e,t){try{let{id:r}=await t.params,a=new URL(e.url).searchParams.get("key");if(!a)return g.NextResponse.json({error:"key query param is required"},{status:400});return await (0,R.deleteProjectVariable)(r,a),g.NextResponse.json({ok:!0})}catch(e){return console.error("Error deleting project variable:",e),g.NextResponse.json({error:"Failed to delete project variable"},{status:500})}}e.s(["DELETE",()=>w,"GET",()=>E,"POST",()=>y,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],356131);var b=e.i(356131);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/projects/[id]/variables/route",pathname:"/api/projects/[id]/variables",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/projects/[id]/variables/route.ts",nextConfigOutput:"standalone",userland:b}),{workAsyncStorage:j,workUnitAsyncStorage:C,serverHooks:_}=A;function S(){return(0,a.patchFetch)({workAsyncStorage:j,workUnitAsyncStorage:C})}async function q(e,t,a){A.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/projects/[id]/variables/route";g=g.replace(/\/index$/,"")||"/";let R=await A.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,params:y,nextConfig:w,parsedUrl:b,isDraftMode:j,prerenderManifest:C,routerServerContext:_,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,resolvedPathname:T,clientReferenceManifest:L,serverActionsManifest:N}=R,k=(0,i.normalizeAppPath)(g),P=!!(C.dynamicRoutes[k]||C.routes[T]),O=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,b,!1):t.end("This page could not be found"),null);if(P&&!j){let e=!!C.routes[T],t=C.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(w.experimental.adapterPath)return await O();throw new m.NoFallbackError}}let I=null;!P||A.isDev||j||(I="/index"===(I=T)?"/":I);let U=!0===A.isDev||!P,$=P&&!U;N&&L&&(0,o.setManifestsSingleton)({page:g,clientReferenceManifest:L,serverActionsManifest:N});let D=e.method||"GET",M=(0,n.getTracer)(),F=M.getActiveScopeSpan(),H={params:y,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:w.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>A.onRequestError(e,t,a,s,_)},sharedContext:{buildId:E}},G=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),K=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let o=async e=>A.handle(K,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${D} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${g}`)}),i=!!(0,s.getRequestMeta)(e,"minimalMode"),l=async s=>{var n,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&S&&q&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await o(s);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let u=H.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(G,B,n,H.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(n.headers);u&&(t[x.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),t}},d=await A.handleResponse({req:e,nextConfig:w,cacheKey:I,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:i});if(!P)return null;if((null==d||null==(n=d.value)?void 0:n.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",S?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),j&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&P||m.delete(x.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(G,B,new Response(d.value.body,{headers:m,status:d.value.status||200})),null};F?await l(F):await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${D} ${g}`,kind:n.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof m.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),P)throw t;return await (0,p.sendResponse)(G,B,new Response(null,{status:500})),null}}e.s(["handler",()=>q,"patchFetch",()=>S,"routeModule",()=>A,"serverHooks",()=>_,"workAsyncStorage",()=>j,"workUnitAsyncStorage",()=>C],453616)}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__ab655b9f._.js.map
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let n=Object.values(r);return n.length>0?n[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function n(e,t){e.exec(`PRAGMA ${t}`)}function o(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function i(e,t){return(...r)=>{e.exec("BEGIN");try{let n=t(...r);return e.exec("COMMIT"),n}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>n,"transaction",()=>o,"transactionFn",()=>i])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),n=e.i(814747);let o="3.35.0",i=["json1"],a=["fts5"],s=["nfs","smb","cifs","efs","fuse.sshfs"];function l(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function c(c,u){let d=[],p=c.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),n=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(n[e]||0);if(0!==t)return t}return 0}(p.v,o)&&d.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${o}`,found:p.v,required:`>= ${o}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),i))l(c,e)||d.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of a)l(c,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let m=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let o=n.default.resolve(t),{execSync:i}=e.r(233405);if("darwin"===r.default.platform()){let e=i(`df -T "${o}" 2>/dev/null || df "${o}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(u);m&&s.some(e=>m.toLowerCase().includes(e))&&d.push({kind:"filesystem_error",message:`Database path '${u}' is on a network filesystem (${m})`,path:u,found:m,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(c,"journal_mode = wal"),(0,t.pragmaSet)(c,"foreign_keys = 1"),(0,t.pragmaSet)(c,"busy_timeout = 5000"),(0,t.pragmaSet)(c,"synchronous = 1"),(0,t.pragmaSet)(c,"cache_size = -64000");let e=(0,t.pragmaGet)(c,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(c,"journal_mode = DELETE");let e=(0,t.pragmaGet)(c,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(c,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):d.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){d.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return d}e.s(["validateSQLiteEnvironment",()=>c])},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},579042,e=>{"use strict";e.s(["DEFAULT_EXECUTION_POLICY",0,{replanBudgetRemaining:3,replanBudgetInitial:3,verifyBudgetRemaining:5,verifyBudgetInitial:5,maxConcurrentAutoChecks:1,immutableRequiredGates:!0,maxConcurrent:3,priorityMode:"fifo",nodeTimeoutMs:18e5,graphTimeoutMs:864e5},"FAILURE_NODE_STATUSES",0,["failed"],"INCOMPLETE_FOR_DONE_STATUSES",0,["pending","running","awaiting_human","blocked"],"SOFT_DEP_SATISFIED_STATUSES",0,["done","passed","failed","skipped","blocked"],"SUCCESS_NODE_STATUSES",0,["done","passed"],"TERMINAL_NODE_STATUSES",0,["done","passed","failed","skipped"]])},37269,e=>{"use strict";var t=e.i(522734),r=e.i(446786),n=e.i(814747);let o=process.env.AGX_DATA_DIR||n.default.join(r.default.homedir(),".agx"),i=process.env.AGX_DEBUG_LOG_PATH||n.default.join(o,"logs","desktop-chat-debug.log");function a(e,t){return t instanceof Error?{name:t.name,message:t.message,stack:t.stack}:"string"==typeof t&&t.length>2e3?`${t.slice(0,2e3)}...<truncated>`:t}function s(){return i}function l(e,r){try{t.default.mkdirSync(n.default.dirname(i),{recursive:!0});let o=JSON.stringify({ts:new Date().toISOString(),pid:process.pid,event:e,...r?{payload:r}:{}},a);t.default.appendFileSync(i,`${o}
|
|
2
|
+
`,"utf8")}catch{}}e.s(["getDebugLogPath",()=>s,"writeDebugLog",()=>l])},701435,e=>{"use strict";let t;var r=e.i(233405);function n(){return process.env.SHELL?.trim()||"/bin/bash"}function o(e){let o=function(){if(void 0!==t)return t;try{let e=n(),o=(0,r.spawnSync)(e,["-lc",'printf %s "$PATH"'],{encoding:"utf8",timeout:5e3});t=(0===o.status?o.stdout.trim():"")||null}catch{t=null}return t}();return{...process.env,...o?{PATH:o}:{},CLAUDECODE:void 0,...e}}function i(e){try{if(!/^[A-Za-z0-9._-]+$/.test(e))return!1;let t=n();return 0===(0,r.spawnSync)(t,["-lc",`command -v ${e} >/dev/null 2>&1`],{encoding:"utf8",timeout:5e3}).status}catch{return!1}}e.s(["buildSpawnEnv",()=>o,"commandExists",()=>i])},914350,e=>{"use strict";var t=e.i(233405),r=e.i(522734),n=e.i(814747),o=e.i(37269),i=e.i(701435),a=e.i(902157),s=e.i(660526),l=e.i(750227);function c(e){return e.replace(/\\/g,"/")}let u=e=>"string"==typeof e&&e.trim().length>0,d=e=>({push:e,flush:()=>{}}),p=e=>{let t="",r=0,n=!1,o=t=>{let o=t.trim();if(o)try{let t=JSON.parse(o);n=!0;let i=(e=>{if(!e||"object"!=typeof e)return"";if("assistant"===e.type)return(Array.isArray(e?.message?.content)?e.message.content:[]).flatMap(e=>e?.type==="text"&&u(e.text)?[e.text]:[]).join("");let t=e?.event;return"stream_event"===e.type&&t?.type==="content_block_delta"&&t?.delta?.type==="text_delta"&&u(t?.delta?.text)?t.delta.text:""})(t);if(!i||t?.type==="assistant"&&r>0)return;r+=i.length,e(i)}catch{n||e(`${t}
|
|
3
|
+
`)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;o(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&o(t),t=""}}},m=e=>{let t="",r=!1,n="",o=t=>{let o=t.trim();if(o)try{let t=JSON.parse(o);r=!0,t?.type==="message"&&t?.role==="assistant"&&u(t?.content)&&((t,r)=>{if(t){if(r){if(n&&t.startsWith(n)){let r=t.slice(n.length);r&&e(r),n=t;return}e(t),n+=t;return}if(n&&t.startsWith(n)){let r=t.slice(n.length);r&&e(r),n=t;return}n||(e(t),n=t)}})(t.content,t?.delta===!0)}catch{r||e(`${t}
|
|
4
|
+
`)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;o(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&o(t),t=""}}},h=e=>{let t="",r=!1,n=new Set,o=t=>{let o=t.trim();if(o)try{let t=JSON.parse(o);if(r=!0,t?.type==="item.completed"&&u(t?.item?.id)){if(n.has(t.item.id))return;n.add(t.item.id)}let i=t&&"object"==typeof t?"item.completed"===t.type&&t.item?.type==="agent_message"&&u(t.item?.text)?t.item.text:"item.delta"===t.type&&t.item?.type==="agent_message"&&u(t.delta?.text)?t.delta.text:"":"";i&&e(i)}catch{r||e(`${t}
|
|
5
|
+
`)}};return{push:e=>{for(t+=e;;){let e=t.indexOf("\n");if(-1===e)break;o(t.slice(0,e)),t=t.slice(e+1)}},flush:()=>{t.trim()&&o(t),t=""}}},g=e=>{let t="",r=!1,n=[/^Thinking\.\.\./,/^<think>/i],o=[/\.\.\.done thinking\.?\s*/,/<\/think>/i];return{push:i=>{t+=i,(()=>{for(;t.length>0;){if(r){let e=-1,n=0;for(let r of o){let o=t.match(r);o&&void 0!==o.index&&(o.index,o[0].length,(-1===e||o.index<e)&&(e=o.index,n=o[0].length))}if(-1!==e){t=t.slice(e+n),r=!1,t=t.replace(/^\s*\n*/,"");continue}return}for(let o of n){let n=t.match(o);if(n&&void 0!==n.index){let o=t.slice(0,n.index);o&&e.push(o),t=t.slice(n.index+n[0].length),r=!0;break}}if(r)continue;let i=Math.max(0,t.length-30);i>0&&(e.push(t.slice(0,i)),t=t.slice(i));return}})()},flush:()=>{!r&&t&&e.push(t),t="",e.flush()}}},f=new Set(["claude","gemini","ollama","codex"]);function _({provider:e,model:t,prompt:r,systemPrompt:n}){switch(e){case"claude":{let e=["-p","--verbose","--output-format","stream-json","--include-partial-messages"];return t&&e.push("--model",t),n&&e.push("--system-prompt",n),e.push(r),{command:"claude",args:e,parser:"claude-stream-json"}}case"gemini":return{command:"gemini",args:["--yolo","-p",n?`${n}
|
|
6
|
+
|
|
7
|
+
${r}`:r,"-o","stream-json"],parser:"gemini-stream-json"};case"ollama":return{command:"ollama",args:["run",t||"llama3.2",n?`${n}
|
|
8
|
+
|
|
9
|
+
${r}`:r],parser:"raw"};case"codex":{let e=["exec","--json"];return t&&e.push("--model",t),e.push(n?`${n}
|
|
10
|
+
|
|
11
|
+
${r}`:r),{command:"codex",args:e,parser:"codex-json"}}case"zai":{let e=process.env.ZAI_API_KEY?.trim(),o=["-p","--verbose","--output-format","stream-json","--include-partial-messages"];return t&&o.push("--model",t),n&&o.push("--system-prompt",n),o.push(r),{command:"claude",args:o,parser:"claude-stream-json",env:{ANTHROPIC_BASE_URL:"https://api.z.ai/api/anthropic",...e?{ANTHROPIC_AUTH_TOKEN:e}:{}}}}default:return null}}function y(){let e=process.env.AGX_CLI_PATH?.trim();if(e&&r.default.existsSync(e))return e;for(let e of[n.default.resolve(process.cwd(),"..","cli","index.js"),n.default.resolve("/ROOT/lib","..","cli","index.js"),n.default.resolve(process.execPath,"..","..","Resources","cli","index.js")])if(r.default.existsSync(e))return e;return null}function x({provider:e,model:t,prompt:r,systemPrompt:n,passthroughArgs:o},a={}){let s=a.commandExists??i.commandExists,l=void 0===a.bundledCliPath?y():a.bundledCliPath,c=[],u=n?`${n}
|
|
12
|
+
|
|
13
|
+
${r}`:r;if(f.has(e)){let i=function({provider:e,model:t,prompt:r,cliPath:n,passthroughArgs:o}){let i=void 0===n?y():n;if(!i)return null;let a=[i,e,"-y","--print","--prompt",r];return t&&a.push("--model",t),o&&o.length>0&&a.push("--",...o),{command:process.execPath,args:a,parser:"raw"}}({provider:e,model:t,prompt:u,cliPath:l,passthroughArgs:o});i&&c.push(i),s("agx")&&c.push(function({provider:e,model:t,prompt:r,passthroughArgs:n}){let o=[e,"-y","--print","--prompt",r];return t&&o.push("--model",t),n&&n.length>0&&o.push("--",...n),{command:"agx",args:o,parser:"raw"}}({provider:e,model:t,prompt:u,passthroughArgs:o}));let a=_({provider:e,model:t,prompt:r,systemPrompt:n});return a&&s(a.command)&&c.push(a),c}let d=_({provider:e,model:t,prompt:r,systemPrompt:n});return d&&s(d.command)&&c.push(d),c}async function b({command:e,args:r,timeoutMs:n,signal:a,onDelta:s,onLog:l,onSpawn:c,env:u}){await new Promise((d,p)=>{(0,o.writeDebugLog)("cli-runner.spawn",{command:e,args:r,timeoutMs:n,bundledCliPath:y(),isElectron:process.env.AGX_ELECTRON||null}),l&&l("stderr",`$ ${e} ${r.map(e=>e.length>80?e.slice(0,80)+"…":e).join(" ")}
|
|
14
|
+
`);let m=(0,t.spawn)(e,r,{stdio:["ignore","pipe","pipe"],env:(0,i.buildSpawnEnv)(u)}),h=!1,g="",f=!1,_=e=>{h||(h=!0,clearTimeout(b),a&&a.removeEventListener("abort",x),e?p(e):d())},x=()=>{(0,o.writeDebugLog)("cli-runner.abort",{command:e,args:r,pid:m.pid??null}),m.kill("SIGTERM"),_(Error("Chat request aborted."))};a&&a.addEventListener("abort",x,{once:!0}),c&&m.pid&&c(m.pid),(0,o.writeDebugLog)("cli-runner.spawned",{command:e,args:r,pid:m.pid??null});let b=setTimeout(()=>{f=!0,(0,o.writeDebugLog)("cli-runner.timeout",{command:e,args:r,pid:m.pid??null,timeoutMs:n}),m.kill("SIGKILL"),_(Error(`CLI request timed out after ${n}ms.`))},n);m.stdout.on("data",e=>{let t=e.toString();g+=t,s(t),l&&l("stdout",t)}),m.stderr.on("data",e=>{let t=e.toString();g+=t,l&&l("stderr",t)}),m.on("error",t=>{(0,o.writeDebugLog)("cli-runner.process_error",{command:e,args:r,pid:m.pid??null,error:t}),_(t)}),m.on("close",(t,n)=>{if(!h&&!f){if((0,o.writeDebugLog)("cli-runner.close",{command:e,args:r,pid:m.pid??null,code:t??null,signal:n??null}),0===t)return void _();_(Error(`CLI command failed (exit=${t??"unknown"} signal=${n??"none"}).${g.trim()?` ${g.trim()}`:""}`))}})})}async function v({provider:e,model:t,prompt:r,identity:n,self:i,skills:a,systemContext:s,passthroughArgs:l,signal:c,onDelta:u,onLog:f,onSpawn:_}){let v,A,R,S,L=(v=!1,A=!1,R="",S=/^(?:```|~~~|#{1,6}\s|>\s|[-*+]\s|\d+\.\s)/,e=>{let t=e.replace(/\u001B\[[0-9;]*[A-Za-z]/g,"").replace(/\r\n/g,"\n").replace(/\r/g,"\n").replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n");if(!t.trim())return t.includes("\n")&&!v?(v=!0,"\n"):"";let r=v?t.replace(/^\n+/,"\n"):t,n=r.trimStart(),o=S.test(n),i=A&&o&&!v,a=A&&!v&&!i&&!/^\s/.test(r)&&/[.!?)]/.test(R)&&/^[A-Z0-9`(]/.test(r),s=i?`
|
|
15
|
+
|
|
16
|
+
${r}`:a?`
|
|
17
|
+
${r}`:r;v=s.endsWith("\n"),A=A||s.trim().length>0;let l=s.replace(/\s+$/g,"");return l.length>0&&(R=l[l.length-1]??R),s}),j=e=>{let t=L(e);t&&u(t)},k=x({provider:e,model:t,prompt:r,systemPrompt:E({identity:n,self:i,skills:a,systemContext:s}),passthroughArgs:l});if(0===k.length)throw(0,o.writeDebugLog)("cli-runner.no_attempts",{provider:e,model:t,bundledCliPath:y(),isElectron:process.env.AGX_ELECTRON||null}),Error(`No CLI runner available for provider "${e}". Install agx or provider CLI.`);let T=null;for(let r of k){(0,o.writeDebugLog)("cli-runner.attempt",{provider:e,model:t,command:r.command,args:r.args,parser:r.parser});let n="claude-stream-json"===r.parser?p(j):"codex-json"===r.parser?h(j):"gemini-stream-json"===r.parser?m(j):d(j),i=r.filterThoughts?g(n):n;try{await b({command:r.command,args:r.args,timeoutMs:18e5,signal:c,onDelta:i.push,onLog:f,onSpawn:_,env:r.env}),i.flush(),(0,o.writeDebugLog)("cli-runner.success",{provider:e,model:t,command:r.command});return}catch(n){T=n instanceof Error?n:Error(String(n)),(0,o.writeDebugLog)("cli-runner.failure",{provider:e,model:t,command:r.command,error:T})}}throw T||Error("CLI execution failed.")}function E({identity:e,self:t,skills:r,systemContext:n}){let o=[];return n&&o.push(n),o.push(function(e={}){let t=function(e={}){let t=function(e={}){return l.default.join(function(e){let t=e?.trim();if(t)return t;let r=process.env.AGX_DATA_DIR?.trim();return r||l.default.join(s.default.homedir(),".agx")}(e.agxDataDir),"skills","scheduled-task-manager","SKILL.md")}(e),r=function(e={}){var t;let r,n=(t=e.workspaceRoot,(r=t?.trim())||process.cwd()),o=c(l.default.join(n,"planning","automation-frontmatter-migration-spec.md")),i=c(l.default.join(n,"src","automations")),a=c(l.default.join(n,"src","prompt-scheduler")),s=c(l.default.join(n,"src","graph","schedule-runner.ts")),u=c(l.default.join(n,"src","graph","store.ts")),d=c(l.default.join(n,"app","api","automations","route.ts")),p=c(l.default.join(n,"app","api","prompt-jobs","route.ts"));return`---
|
|
18
|
+
name: scheduled-task-manager
|
|
19
|
+
description: Use when creating, editing, migrating, debugging, or reviewing AGX scheduled tasks, automations, prompt jobs, execution graph schedules, or frontmatter-backed automation definitions.
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
# Scheduled Task Manager
|
|
23
|
+
|
|
24
|
+
Use this skill whenever the task touches scheduled tasks, automations, prompt jobs, execution graph schedules, or automation frontmatter.
|
|
25
|
+
|
|
26
|
+
## Read First
|
|
27
|
+
|
|
28
|
+
- [automation-frontmatter-migration-spec](${o})
|
|
29
|
+
- Shared automation model lives in [src/automations](${i})
|
|
30
|
+
- Prompt-job scheduling lives in [src/prompt-scheduler](${a})
|
|
31
|
+
- Execution-graph scheduling flows through [schedule-runner.ts](${s}) and [store.ts](${u})
|
|
32
|
+
- API entry points are [app/api/automations/route.ts](${d}) and [app/api/prompt-jobs/route.ts](${p})
|
|
33
|
+
|
|
34
|
+
## Guardrails
|
|
35
|
+
|
|
36
|
+
- Reject malformed frontmatter. Do not coerce invalid enum values into defaults.
|
|
37
|
+
- Preserve stable automation ids. Renaming a task must not create a new id.
|
|
38
|
+
- Keep runtime state such as last run, next run, and archival flags out of frontmatter unless the spec explicitly says otherwise.
|
|
39
|
+
- Preserve sub-minute scheduled cadences when they are represented as \`intervalMs\`.
|
|
40
|
+
- For \`execution_graph\` targets, keep \`graphId\` and \`taskId\` resolution correct. Do not assume \`definition.id === taskId\`.
|
|
41
|
+
- Updating an automation definition should advance user-visible \`updatedAt\`.
|
|
42
|
+
- Avoid eager file-backed repository initialization on request paths that should stay lazy or rollout-gated.
|
|
43
|
+
- Keep parser and serializer behavior round-trippable unless the spec explicitly requires normalization.
|
|
44
|
+
|
|
45
|
+
## Working Pattern
|
|
46
|
+
|
|
47
|
+
1. Read the migration spec before changing storage, rollout, or validation behavior.
|
|
48
|
+
2. Trace the full path: parser -> validation -> repository -> scheduler -> API.
|
|
49
|
+
3. Add or update regression tests for parsing, serialization, due selection, and the affected API or runtime path.
|
|
50
|
+
4. Prefer small fixes in the shared automation layer over duplicating logic in adapters.
|
|
51
|
+
|
|
52
|
+
## Validation Checklist
|
|
53
|
+
|
|
54
|
+
- Scheduled triggers keep \`cronExpr\`, \`cadence\`, and sub-minute \`intervalMs\` semantics intact.
|
|
55
|
+
- Condition triggers validate required fields and reject unsupported polling intervals.
|
|
56
|
+
- Target-specific required fields are enforced.
|
|
57
|
+
- Invalid definitions fail closed and are excluded instead of silently rewritten.
|
|
58
|
+
- Prompt-job and execution-graph adapters preserve the same runtime meaning before and after frontmatter serialization.
|
|
59
|
+
`}(e);try{a.default.mkdirSync(l.default.dirname(t),{recursive:!0}),(a.default.existsSync(t)?a.default.readFileSync(t,"utf8"):null)!==r&&a.default.writeFileSync(t,r,"utf8")}catch(e){console.warn("[scheduled-task-skill] Failed to install skill:",e)}return t}(e);return`<scheduled-task-skill>
|
|
60
|
+
Path: ${c(t)}
|
|
61
|
+
Read this skill whenever the task involves scheduled tasks, automations, prompt jobs, execution graph schedules, or frontmatter-backed automation definitions.
|
|
62
|
+
</scheduled-task-skill>`}()),e&&o.push(`<identity>
|
|
63
|
+
${e}
|
|
64
|
+
</identity>`),t&&o.push(`<self>
|
|
65
|
+
${t}
|
|
66
|
+
</self>`),r&&o.push(`<skills>
|
|
67
|
+
${r}
|
|
68
|
+
</skills>`),o.length>0?o.join("\n\n"):void 0}e.s(["buildCliAttempts",()=>x,"buildCliSystemPrompt",()=>E,"runCliResponse",()=>v],914350)},338479,e=>{"use strict";var t=e.i(254799);e.i(201037);var r=e.i(200866),n=e.i(434542),o=e.i(300248);function i(e){return{id:e.id,name:e.name,prompt:e.prompt,agentId:e.agent_id||"",projectId:e.project_id||"",provider:e.provider||e.cli||"claude",model:e.model||"",cliArgs:e.cli_args||"",cronExpr:e.cron_expr,cadence:e.cadence,state:e.state,overlapPolicy:e.overlap_policy,catchUpPolicy:e.catch_up_policy||"fire_once",cancelCheckSec:e.cancel_check_sec,triggerType:e.trigger_type||"scheduled",condition:e.condition||"",checkEveryMs:e.check_every_ms||3e5,nextRunAt:e.next_run_at,lastRunAt:e.last_run_at,lastOutcome:e.last_outcome,createdAt:e.created_at,updatedAt:e.updated_at}}function a(e){return{id:e.id,jobId:e.job_id,status:e.status,output:e.output,error:e.error,durationMs:e.duration_ms,startedAt:e.started_at,finishedAt:e.finished_at,cancelledAt:e.cancelled_at,createdAt:e.created_at}}function s(e){return Object.values(e).some(e=>void 0!==e)}class l{db;automationRepository;constructor(e,t){this.db=e,this.automationRepository=t}getAutomationRepo(){return this.automationRepository??=(0,n.getAutomationRepository)(),this.automationRepository}createJob(e){if(!(0,n.isAutomationFrontmatterEnabled)())return this.createLegacyJob(e);let o=(0,t.randomUUID)(),i=new Date().toISOString(),a=this.getAutomationRepo().createAutomation({id:o,name:e.name,...e.projectId?{projectId:e.projectId}:{},state:"active",trigger:(e.triggerType??"scheduled")==="condition"?{type:"condition",condition:e.condition??"",checkEveryMs:e.checkEveryMs??3e5}:{type:"scheduled",...e.cadence?{cadence:e.cadence}:{},...e.cronExpr?{cronExpr:e.cronExpr}:{}},execution:{overlapPolicy:e.overlapPolicy,catchUpPolicy:e.catchUpPolicy,cancelCheckSec:e.cancelCheckSec},target:{type:"prompt_job",...e.agentId?{agentId:e.agentId}:{},...e.provider?{provider:e.provider}:{},...e.model?{model:e.model}:{},...void 0!==e.cliArgs?{cliArgs:e.cliArgs}:{}},createdAt:i,body:e.prompt}),s=(0,r.automationRecordToPromptJob)(a);return this.upsertLegacyJobRow(s),s}getJob(e){if(!(0,n.isAutomationFrontmatterEnabled)())return this.getLegacyJob(e);let t=this.getAutomationRepo().getAutomation(e);if(t?.definition.target.type==="prompt_job"){let e=(0,r.automationRecordToPromptJob)(t);return this.ensureLegacyJobRow(e),e}return(0,n.isAutomationDualReadEnabled)()?this.getLegacyJob(e):null}listJobs(e){if(!(0,n.isAutomationFrontmatterEnabled)())return this.listLegacyJobs(e);let t=new Map;for(let n of this.getAutomationRepo().listVisibleAutomations({targetType:"prompt_job",...e?.state?{state:e.state}:{},...e?.projectId?{projectId:e.projectId}:{}})){let e=(0,r.automationRecordToPromptJob)(n);t.set(e.id,e),this.ensureLegacyJobRow(e)}if((0,n.isAutomationDualReadEnabled)())for(let r of this.listLegacyJobs(e))t.has(r.id)||t.set(r.id,r);return[...t.values()].sort((e,t)=>{let r=Date.parse(e.createdAt);return Date.parse(t.createdAt)-r})}updateJob(e,t){if(!(0,n.isAutomationFrontmatterEnabled)())return this.updateLegacyJob(e,t);let o=this.getPromptJobRecord(e,!0);if(!o)return null;let i=this.buildDefinitionPatch(o,t);if(s(i)){let t=this.getAutomationRepo().updateAutomation(e,i);if(!t)return null;o=t}let a=this.buildStatePatch(t);if(s(a)){let t=this.getAutomationRepo().updateAutomationState(e,a);if(!t)return null;o=t}let l=(0,r.automationRecordToPromptJob)(o);return this.upsertLegacyJobRow(l),l}deleteJob(e){(0,n.isAutomationFrontmatterEnabled)()&&this.getAutomationRepo().deleteAutomation(e),this.db.prepare("DELETE FROM prompt_jobs WHERE id = ?").run(e)}getDueJobs(e=Date.now()){if(!(0,n.isAutomationFrontmatterEnabled)())return this.getLegacyDueJobs(e);let t=new Map;for(let n of this.getAutomationRepo().listDueAutomations(e,{targetType:"prompt_job"})){let e=(0,r.automationRecordToPromptJob)(n);t.set(e.id,e),this.ensureLegacyJobRow(e)}if((0,n.isAutomationDualReadEnabled)())for(let r of this.getLegacyDueJobs(e))t.has(r.id)||t.set(r.id,r);return[...t.values()].sort((e,t)=>(e.nextRunAt??Number.MAX_SAFE_INTEGER)-(t.nextRunAt??Number.MAX_SAFE_INTEGER))}createRun(e){this.ensureLegacyJobRowById(e);let r=(0,t.randomUUID)();return this.db.prepare("INSERT INTO prompt_runs (id, job_id) VALUES (?, ?)").run(r,e),this.getRun(r)}getRun(e){let t=this.db.prepare("SELECT * FROM prompt_runs WHERE id = ?").get(e);return t?a(t):null}listRuns(e,t=50){return this.db.prepare("SELECT * FROM prompt_runs WHERE job_id = ? ORDER BY created_at DESC LIMIT ?").all(e,t).map(a)}updateRun(e,t){let r={status:"status",output:"output",error:"error",durationMs:"duration_ms",startedAt:"started_at",finishedAt:"finished_at",cancelledAt:"cancelled_at"},n=[],o=[];for(let[e,i]of Object.entries(t)){let t=r[e];t&&(n.push(`${t} = ?`),o.push(i??null))}return 0===n.length||(o.push(e),this.db.prepare(`UPDATE prompt_runs SET ${n.join(", ")} WHERE id = ?`).run(...o.map(e=>e))),this.getRun(e)}hasRunningRun(e){return void 0!==this.db.prepare("SELECT id FROM prompt_runs WHERE job_id = ? AND status IN ('queued', 'running') LIMIT 1").get(e)}isRunCancelled(e){let t=this.db.prepare("SELECT status FROM prompt_runs WHERE id = ?").get(e);return t?.status==="cancelled"}getPromptJobRecord(e,t){let r=this.getAutomationRepo().getAutomation(e);if(r?.definition.target.type==="prompt_job")return r;if(!t||!(0,n.isAutomationDualReadEnabled)())return null;let o=this.getLegacyJob(e);return o?this.materializeLegacyJob(o):null}materializeLegacyJob(e){let t=(0,r.promptJobToAutomationDefinition)(e),n=(0,r.promptJobToAutomationRuntimeState)(e),o=this.getAutomationRepo().upsertAutomation(t);return this.getAutomationRepo().updateAutomationState(e.id,{nextRunAt:n.nextRunAt,lastRunAt:n.lastRunAt,lastOutcome:n.lastOutcome,lastError:n.lastError,updatedAt:n.updatedAt})??o}buildDefinitionPatch(e,t){let r={},n={},o={},i={};if(void 0!==t.name&&(r.name=t.name),void 0!==t.projectId&&(r.projectId=t.projectId||null),void 0!==t.state&&(r.state=t.state),void 0!==t.prompt&&(r.body=t.prompt),void 0!==t.triggerType||void 0!==t.cadence||void 0!==t.cronExpr||void 0!==t.condition||void 0!==t.checkEveryMs){let r=e.definition.trigger,o=t.triggerType??r.type;n.type=o,"condition"===o?(n.condition=t.condition??("condition"===r.type?r.condition:""),n.checkEveryMs=t.checkEveryMs??("condition"===r.type?r.checkEveryMs:3e5)):(n.cadence=""===t.cadence?void 0:t.cadence??("scheduled"===r.type?r.cadence:void 0),n.cronExpr=void 0!==t.cronExpr?t.cronExpr:void 0!==t.cadence&&""!==t.cadence?void 0:"scheduled"===r.type?r.cronExpr:void 0,n.intervalMs="scheduled"===r.type?r.intervalMs:void 0)}return void 0!==t.overlapPolicy&&(o.overlapPolicy=t.overlapPolicy),void 0!==t.catchUpPolicy&&(o.catchUpPolicy=t.catchUpPolicy),void 0!==t.cancelCheckSec&&(o.cancelCheckSec=t.cancelCheckSec),void 0!==t.agentId&&(i.agentId=t.agentId||void 0),void 0!==t.provider&&(i.provider=t.provider||void 0),void 0!==t.model&&(i.model=t.model||void 0),void 0!==t.cliArgs&&(i.cliArgs=t.cliArgs),{...Object.keys(r).length>0?r:{},...Object.keys(n).length>0?{trigger:n}:{},...Object.keys(o).length>0?{execution:o}:{},...Object.keys(i).length>0?{target:i}:{}}}buildStatePatch(e){let t={};return void 0!==e.nextRunAt&&(t.nextRunAt=e.nextRunAt),void 0!==e.lastRunAt&&(t.lastRunAt=e.lastRunAt),void 0!==e.lastOutcome&&(t.lastOutcome=e.lastOutcome),t}ensureLegacyJobRowById(e){if(this.legacyJobRowExists(e))return;let t=this.getJob(e);t&&this.upsertLegacyJobRow(t)}ensureLegacyJobRow(e){this.legacyJobRowExists(e.id)||this.upsertLegacyJobRow(e)}legacyJobRowExists(e){return void 0!==this.db.prepare("SELECT 1 FROM prompt_jobs WHERE id = ?").get(e)}upsertLegacyJobRow(e){this.db.prepare(`INSERT INTO prompt_jobs (
|
|
69
|
+
id, name, prompt, cli, agent_id, project_id, provider, model, cli_args,
|
|
70
|
+
cron_expr, cadence, state, overlap_policy, catch_up_policy, cancel_check_sec,
|
|
71
|
+
trigger_type, condition, check_every_ms, next_run_at, last_run_at, last_outcome,
|
|
72
|
+
created_at, updated_at
|
|
73
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
74
|
+
ON CONFLICT (id) DO UPDATE SET
|
|
75
|
+
name = excluded.name,
|
|
76
|
+
prompt = excluded.prompt,
|
|
77
|
+
cli = excluded.cli,
|
|
78
|
+
agent_id = excluded.agent_id,
|
|
79
|
+
project_id = excluded.project_id,
|
|
80
|
+
provider = excluded.provider,
|
|
81
|
+
model = excluded.model,
|
|
82
|
+
cli_args = excluded.cli_args,
|
|
83
|
+
cron_expr = excluded.cron_expr,
|
|
84
|
+
cadence = excluded.cadence,
|
|
85
|
+
state = excluded.state,
|
|
86
|
+
overlap_policy = excluded.overlap_policy,
|
|
87
|
+
catch_up_policy = excluded.catch_up_policy,
|
|
88
|
+
cancel_check_sec = excluded.cancel_check_sec,
|
|
89
|
+
trigger_type = excluded.trigger_type,
|
|
90
|
+
condition = excluded.condition,
|
|
91
|
+
check_every_ms = excluded.check_every_ms,
|
|
92
|
+
next_run_at = excluded.next_run_at,
|
|
93
|
+
last_run_at = excluded.last_run_at,
|
|
94
|
+
last_outcome = excluded.last_outcome,
|
|
95
|
+
created_at = excluded.created_at,
|
|
96
|
+
updated_at = excluded.updated_at`).run(e.id,e.name,e.prompt,e.provider||"claude",e.agentId||null,e.projectId||null,e.provider||"claude",e.model||"",e.cliArgs||"",e.cronExpr||"",e.cadence||"",e.state,e.overlapPolicy,e.catchUpPolicy,e.cancelCheckSec,e.triggerType,e.condition||"",e.checkEveryMs,e.nextRunAt??null,e.lastRunAt??null,e.lastOutcome??null,e.createdAt,e.updatedAt)}createLegacyJob(e){let r,n=(0,t.randomUUID)(),i=e.cadence,a=e.cronExpr||i,s=e.triggerType??"scheduled",l=e.provider??"claude";return r="condition"===s?Date.now()+(e.checkEveryMs??3e5):(0,o.computeNextTickFromCron)(a)??null,this.db.prepare(`INSERT INTO prompt_jobs (
|
|
97
|
+
id, name, prompt, cli, agent_id, project_id, provider, model, cli_args,
|
|
98
|
+
cron_expr, cadence, overlap_policy, catch_up_policy, cancel_check_sec,
|
|
99
|
+
trigger_type, condition, check_every_ms, next_run_at
|
|
100
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(n,e.name,e.prompt,l,e.agentId||null,e.projectId||null,l,e.model??"",e.cliArgs??"",a,i,e.overlapPolicy??"skip",e.catchUpPolicy??"fire_once",e.cancelCheckSec??5,s,e.condition??"",e.checkEveryMs??3e5,r),this.getLegacyJob(n)}getLegacyJob(e){let t=this.db.prepare("SELECT * FROM prompt_jobs WHERE id = ?").get(e);return t?i(t):null}listLegacyJobs(e){let t="SELECT * FROM prompt_jobs",r=[],n=[];return e?.state&&(r.push("state = ?"),n.push(e.state)),e?.projectId&&(r.push("project_id = ?"),n.push(e.projectId)),r.length>0&&(t+=` WHERE ${r.join(" AND ")}`),t+=" ORDER BY created_at DESC",this.db.prepare(t).all(...n).map(i)}updateLegacyJob(e,t){let r={name:"name",prompt:"prompt",cli:"cli",agentId:"agent_id",projectId:"project_id",provider:"provider",cronExpr:"cron_expr",model:"model",cliArgs:"cli_args",cadence:"cadence",state:"state",overlapPolicy:"overlap_policy",catchUpPolicy:"catch_up_policy",cancelCheckSec:"cancel_check_sec",triggerType:"trigger_type",condition:"condition",checkEveryMs:"check_every_ms",nextRunAt:"next_run_at",lastRunAt:"last_run_at",lastOutcome:"last_outcome"},n=[],i=[];for(let[e,a]of Object.entries(t)){let s=r[e];s&&void 0!==a&&(n.push(`${s} = ?`),i.push(a),"cadence"===e&&"string"==typeof a&&void 0===t.cronExpr&&(n.push("cron_expr = ?"),i.push(a),n.push("next_run_at = ?"),i.push((0,o.computeNextTickFromCron)(a)??null)))}return 0===n.length||(n.push("updated_at = datetime('now')"),i.push(e),this.db.prepare(`UPDATE prompt_jobs SET ${n.join(", ")} WHERE id = ?`).run(...i.map(e=>e))),this.getLegacyJob(e)}getLegacyDueJobs(e){return this.db.prepare(`SELECT * FROM prompt_jobs
|
|
101
|
+
WHERE state = 'active'
|
|
102
|
+
AND next_run_at IS NOT NULL
|
|
103
|
+
AND next_run_at <= ?
|
|
104
|
+
ORDER BY next_run_at ASC`).all(e).map(i)}}var c=e.i(522734),u=e.i(814747),d=e.i(960447);let p=null;function m(){if(!p){let e=(0,d.getSQLiteDb)();if(e.prepare("SELECT 1 FROM sqlite_master WHERE type='table' AND name='prompt_jobs'").get()){if(!e.prepare("SELECT 1 FROM pragma_table_info('prompt_jobs') WHERE name='catch_up_policy'").get())for(let t of(0,c.readFileSync)(u.default.join(process.cwd(),"db/sqlite/003_prompt_scheduler_v2.sql"),"utf-8").replace(/^\s*--.*$/gm,"").split(";").map(e=>e.trim()).filter(Boolean))try{e.exec(t)}catch(e){if(!e.message?.includes("duplicate column"))throw e}}else{let t=(0,c.readFileSync)(u.default.join(process.cwd(),"db/sqlite/002_prompt_scheduler_schema.sql"),"utf-8");e.exec(t)}p=new l(e)}return p}e.s(["getPromptJobStore",()=>m],338479)},835338,e=>{"use strict";var t=e.i(344506),r=e.i(508689);function n(e){let n=e.trim();if(!n)return null;let o=(0,t.toCronExpr)(n);return o?{cronExpr:o.cronExpr,cadence:o.cadence}:!function(e){if(5!==e.split(/\s+/).length)return!1;try{return r.CronExpressionParser.parse(e),!0}catch{return!1}}(n)?null:{cronExpr:n,cadence:n}}function o(e,t){try{return r.CronExpressionParser.parse(e,{currentDate:t?new Date(t):new Date}).next().toDate().getTime()}catch{return null}}e.s(["computeNextRun",()=>o,"parseCadence",()=>n])}];
|
|
105
|
+
|
|
106
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__ac6326b6._.js.map
|