@mndrk/agx 2.0.44 → 2.0.45
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/.linear-token.json +2 -2
- package/cloud-runtime/standalone/.next/BUILD_ID +1 -1
- package/cloud-runtime/standalone/.next/app-path-routes-manifest.json +2 -0
- package/cloud-runtime/standalone/.next/build-manifest.json +2 -2
- package/cloud-runtime/standalone/.next/prerender-manifest.json +3 -3
- package/cloud-runtime/standalone/.next/routes-manifest.json +13 -1
- 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_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 +2 -2
- package/cloud-runtime/standalone/.next/server/app/agents.segments/_full.segment.rsc +2 -2
- 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 +1 -1
- 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 +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 +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 +1 -1
- 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 +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/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/issues/context/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route.js +10 -0
- package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route.js.map +5 -0
- package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route.js +5 -2
- 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/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/.next/server/app/api/linear/options/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/.next/server/app/api/linear/options/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/.next/server/app/api/linear/options/route.js +7 -0
- package/cloud-runtime/standalone/.next/server/app/api/linear/options/route.js.map +5 -0
- package/cloud-runtime/standalone/.next/server/app/api/linear/options/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/.next/server/app/api/linear/options/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/.next/server/app/api/linear/status/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 +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 +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 +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 +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 +4 -4
- 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 +4 -4
- 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 +4 -4
- 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 +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/status/route.js +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 +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 +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 +3 -3
- 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 +2 -2
- 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_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 +2 -2
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_full.segment.rsc +2 -2
- 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 +1 -1
- package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app/index.html +2 -2
- package/cloud-runtime/standalone/.next/server/app/index.rsc +4 -4
- package/cloud-runtime/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -3
- package/cloud-runtime/standalone/.next/server/app/index.segments/_full.segment.rsc +4 -4
- 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 +3 -3
- 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 +2 -2
- 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_client-reference-manifest.js +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 +3 -3
- 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_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_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_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 +2 -2
- package/cloud-runtime/standalone/.next/server/app/projects.segments/_full.segment.rsc +2 -2
- 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 +1 -1
- 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 +3 -3
- package/cloud-runtime/standalone/.next/server/app/status.segments/_full.segment.rsc +3 -3
- 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 +2 -2
- 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_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 +2 -2
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/_full.segment.rsc +2 -2
- 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 +1 -1
- package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome.segment.rsc +1 -1
- package/cloud-runtime/standalone/.next/server/app-paths-manifest.json +2 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[externals]__29a2424c._.js → [externals]__31e26905._.js} +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__fb1f7e58._.js → [root-of-the-server]__00fd30c8._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__e4f01b5c._.js → [root-of-the-server]__0e98af48._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1154e5b3._.js +67 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__44ef900b._.js → [root-of-the-server]__11c1214e._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__5e5eb809._.js → [root-of-the-server]__152b2000._.js} +10 -10
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__f21849ad._.js → [root-of-the-server]__15f3bb96._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__7cade6c6._.js → [root-of-the-server]__1f53e82e._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__c77efd85._.js → [root-of-the-server]__20533a2c._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__e0994be2._.js → [root-of-the-server]__3b1431b6._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3b83b657._.js +147 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__d3945cae._.js → [root-of-the-server]__3bf516b6._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__2d15af44._.js → [root-of-the-server]__3fd3c5b1._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__13fe776f._.js → [root-of-the-server]__42e713f5._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__1be9b30e._.js → [root-of-the-server]__4b0b5fe1._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__558389f7._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__5a042505._.js → [root-of-the-server]__5aaf8c25._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__22b7bf38._.js → [root-of-the-server]__5b13e7a5._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__34efe92e._.js → [root-of-the-server]__635fe0f9._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__c9550a93._.js → [root-of-the-server]__68da2825._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__e5bad635._.js → [root-of-the-server]__6921fe3f._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__dc542063._.js → [root-of-the-server]__6988985c._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__c5025f86._.js → [root-of-the-server]__7012e83d._.js} +7 -7
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__9d3a2caa._.js → [root-of-the-server]__70327010._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__748c718f._.js +147 -0
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__76290829._.js +46 -8
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__c0919d7d._.js → [root-of-the-server]__79fa35e4._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__ac9b93fd._.js → [root-of-the-server]__8d205f82._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__0281ad06._.js → [root-of-the-server]__9ffa67b7._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__dd1cb250._.js → [root-of-the-server]__a300f072._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__5fbc700c._.js → [root-of-the-server]__a7e0ac67._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__91b51f33._.js → [root-of-the-server]__aad349b4._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ad6d6402._.js +46 -8
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__349d67e7._.js → [root-of-the-server]__b133856b._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__45a50de9._.js → [root-of-the-server]__c029daab._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__a1e62918._.js → [root-of-the-server]__c8195768._.js} +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ce2a1672._.js +67 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__a2e17f69._.js → [root-of-the-server]__d4f42f49._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__d9f2041b._.js +47 -9
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__ad4cb055._.js → [root-of-the-server]__dca6026a._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__bacb0193._.js → [root-of-the-server]__ddb3aa76._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__de295ef3._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__7d4fa0fd._.js → [root-of-the-server]__e7be56ba._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__73b17f49._.js → [root-of-the-server]__ebece93b._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ef27f8cd._.js +49 -0
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__56dbe1a4._.js → [root-of-the-server]__f13c29c6._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__98d58423._.js → [root-of-the-server]__fcdaf6d8._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/_6e7f0ae4._.js +6 -0
- package/cloud-runtime/standalone/.next/server/chunks/_a93e80e8._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_linear_issues_context_route_actions_0b2c282c.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_linear_options_route_actions_29764947.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/lib_app-config_ts_7f2f30ad._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__1c4256ce._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__4c9d0778._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__69887882._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__f59f0dc7._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/{_95434d70._.js → _1d26be78._.js} +2 -2
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_32c878b9._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_60d0bae4._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_77e1407a._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_7f7a828a._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_ba5903a7._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_ed4fece9._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_f51a3112._.js +3 -0
- package/cloud-runtime/standalone/.next/server/chunks/ssr/app_projects_[slug]_linear_page_tsx_971a6ba7._.js +3 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/components_chat-ui_bfeda794._.js +7 -3
- package/cloud-runtime/standalone/.next/server/functions-config-manifest.json +2 -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/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/00716478a3ee55a2.js +37 -0
- package/cloud-runtime/standalone/.next/static/chunks/02add5a8d35c53fe.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/2362d5c0dcaa5d64.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/2730394502dd3664.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/3091043e8c282dce.css +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/3dc50de1c86e1ce9.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/4ea8f08087116055.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/5607ad702ebb8a4b.js +9 -0
- package/cloud-runtime/standalone/.next/static/chunks/6103b9b5538bba4d.css +2 -0
- package/cloud-runtime/standalone/.next/static/chunks/98c20da4973991f0.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/a9da98f883ac833b.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/{da12f313213a5615.js → b2127dc67c5ade9f.js} +1 -1
- package/cloud-runtime/standalone/.next/static/chunks/{76229fb555232113.js → b3377e39d47c71cf.js} +1 -1
- package/cloud-runtime/standalone/.next/static/chunks/bf2a2fafb710e63c.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/c0d17e0c37ba8e7a.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/db131a0b6350e416.js +1 -0
- package/cloud-runtime/standalone/.next/static/chunks/e51fddf53a6dc1e4.js +9 -0
- package/cloud-runtime/standalone/.next/static/chunks/{66769c2bf128027d.js → f4360c3e4089263f.js} +1 -1
- package/cloud-runtime/standalone/Dockerfile +5 -5
- package/cloud-runtime/standalone/app/api/linear/callback/route.ts +2 -1
- package/cloud-runtime/standalone/app/api/linear/issues/context/route.ts +26 -0
- package/cloud-runtime/standalone/app/api/linear/issues/route.ts +37 -42
- package/cloud-runtime/standalone/app/api/linear/options/route.ts +31 -0
- package/cloud-runtime/standalone/app/api/status/route.ts +2 -2
- package/cloud-runtime/standalone/components/LinearBoard.tsx +165 -117
- package/cloud-runtime/standalone/components/chat-ui/ChatContainer.tsx +3 -1
- package/cloud-runtime/standalone/components/chat-ui/Composer.tsx +54 -2
- package/cloud-runtime/standalone/components/chat-ui/MentionPopover.tsx +43 -2
- package/cloud-runtime/standalone/hooks/useLinearIssueMentions.ts +64 -0
- package/cloud-runtime/standalone/hooks/useLinearIssues.ts +26 -6
- package/cloud-runtime/standalone/hooks/useMentionAutocomplete.ts +54 -6
- package/cloud-runtime/standalone/instrumentation.ts +2 -1
- package/cloud-runtime/standalone/lib/app-config.ts +55 -0
- package/cloud-runtime/standalone/lib/chat/linear-issue-context.ts +79 -0
- package/cloud-runtime/standalone/lib/linear-client.ts +166 -15
- package/cloud-runtime/standalone/lib/linear-issue-store.ts +427 -0
- package/cloud-runtime/standalone/lib/linear-issues.ts +360 -0
- package/cloud-runtime/standalone/lib/security.ts +2 -2
- package/cloud-runtime/standalone/lib/tiptap/composer-mentions.ts +38 -0
- package/cloud-runtime/standalone/lib/tiptap/editor-utils.ts +11 -0
- package/cloud-runtime/standalone/lib/tiptap/serialize-composer.ts +10 -0
- package/cloud-runtime/standalone/next.config.ts +2 -1
- package/cloud-runtime/standalone/src/graph/internal-function-dispatcher.ts +2 -5
- package/cloud-runtime/standalone/state/automations/.state/24a6a5db-3b14-49c4-841f-29f10f015fbb.json +3 -3
- package/cloud-runtime/standalone/styles/composer-pills.css +13 -0
- package/package.json +1 -1
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__05243927._.js +0 -29
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1017e012._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__28524c6a._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c1b28690._.js +0 -49
- package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__dffa5183._.js +0 -29
- package/cloud-runtime/standalone/.next/server/chunks/_110bf46e._.js +0 -6
- package/cloud-runtime/standalone/.next/server/chunks/_22fe5fd2._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__35f9b4a6._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__43a0398d._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__7e7d6790._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__b6598a70._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_087a5b2b._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_1e5aee62._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_45f91a8f._.js +0 -3
- package/cloud-runtime/standalone/.next/server/chunks/ssr/_fb404ac0._.js +0 -3
- package/cloud-runtime/standalone/.next/static/chunks/0010f3df27ae53b8.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/09c637be82a06122.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/0fe219bd73492107.js +0 -5
- package/cloud-runtime/standalone/.next/static/chunks/2dbfd095c1e1d01f.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/360fde144fd22461.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/416cf5039e669b5d.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/95b85b1cb6868d27.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/966278eaefc0aa32.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/ab74849aeb87503e.js +0 -5
- package/cloud-runtime/standalone/.next/static/chunks/c5661b1d4c5abd6a.css +0 -2
- package/cloud-runtime/standalone/.next/static/chunks/d522224ad5c8d724.css +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/e2fa3c18dd56dc25.js +0 -1
- package/cloud-runtime/standalone/.next/static/chunks/e910386016ceacad.js +0 -37
- package/cloud-runtime/standalone/.next/static/chunks/f2fe77583374541b.js +0 -1
- /package/cloud-runtime/standalone/.next/static/{1ixi4WIJBgIPp7LJeYeKs → Y8QdDdLJI3yzNjkyPjuJ-}/_buildManifest.js +0 -0
- /package/cloud-runtime/standalone/.next/static/{1ixi4WIJBgIPp7LJeYeKs → Y8QdDdLJI3yzNjkyPjuJ-}/_clientMiddlewareManifest.json +0 -0
- /package/cloud-runtime/standalone/.next/static/{1ixi4WIJBgIPp7LJeYeKs → Y8QdDdLJI3yzNjkyPjuJ-}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
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 o=Object.values(r);return o.length>0?o[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function o(e,t){e.exec(`PRAGMA ${t}`)}function a(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 o=t(...r);return e.exec("COMMIT"),o}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>o,"transaction",()=>a,"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),o=e.i(814747);let a="3.35.0",n=["json1"],i=["fts5"],s=["nfs","smb","cifs","efs","fuse.sshfs"];function c(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 l(l,d){let u=[],p=l.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),o=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(o[e]||0);if(0!==t)return t}return 0}(p.v,a)&&u.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)"}),n))c(l,e)||u.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 i)c(l,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 a=o.default.resolve(t),{execSync:n}=e.r(233405);if("darwin"===r.default.platform()){let e=n(`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+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(d);m&&s.some(e=>m.toLowerCase().includes(e))&&u.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)(l,"journal_mode = wal"),(0,t.pragmaSet)(l,"foreign_keys = 1"),(0,t.pragmaSet)(l,"busy_timeout = 5000"),(0,t.pragmaSet)(l,"synchronous = 1"),(0,t.pragmaSet)(l,"cache_size = -64000");let e=(0,t.pragmaGet)(l,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(l,"journal_mode = DELETE");let e=(0,t.pragmaGet)(l,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(l,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):u.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){u.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 u}e.s(["validateSQLiteEnvironment",()=>l])},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},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"]])},338479,e=>{"use strict";var t=e.i(254799);e.i(201037);var r=e.i(200866),o=e.i(434542),a=e.i(300248);function n(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 i(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 c{db;automationRepository;constructor(e,t){this.db=e,this.automationRepository=t}getAutomationRepo(){return this.automationRepository??=(0,o.getAutomationRepository)(),this.automationRepository}createJob(e){if(!(0,o.isAutomationFrontmatterEnabled)())return this.createLegacyJob(e);let a=(0,t.randomUUID)(),n=new Date().toISOString(),i=this.getAutomationRepo().createAutomation({id:a,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:n,body:e.prompt}),s=(0,r.automationRecordToPromptJob)(i);return this.upsertLegacyJobRow(s),s}getJob(e){if(!(0,o.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,o.isAutomationDualReadEnabled)()?this.getLegacyJob(e):null}listJobs(e){if(!(0,o.isAutomationFrontmatterEnabled)())return this.listLegacyJobs(e);let t=new Map;for(let o of this.getAutomationRepo().listVisibleAutomations({targetType:"prompt_job",...e?.state?{state:e.state}:{},...e?.projectId?{projectId:e.projectId}:{}})){let e=(0,r.automationRecordToPromptJob)(o);t.set(e.id,e),this.ensureLegacyJobRow(e)}if((0,o.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,o.isAutomationFrontmatterEnabled)())return this.updateLegacyJob(e,t);let a=this.getPromptJobRecord(e,!0);if(!a)return null;let n=this.buildDefinitionPatch(a,t);if(s(n)){let t=this.getAutomationRepo().updateAutomation(e,n);if(!t)return null;a=t}let i=this.buildStatePatch(t);if(s(i)){let t=this.getAutomationRepo().updateAutomationState(e,i);if(!t)return null;a=t}let c=(0,r.automationRecordToPromptJob)(a);return this.upsertLegacyJobRow(c),c}deleteJob(e){(0,o.isAutomationFrontmatterEnabled)()&&this.getAutomationRepo().deleteAutomation(e),this.db.prepare("DELETE FROM prompt_jobs WHERE id = ?").run(e)}getDueJobs(e=Date.now()){if(!(0,o.isAutomationFrontmatterEnabled)())return this.getLegacyDueJobs(e);let t=new Map;for(let o of this.getAutomationRepo().listDueAutomations(e,{targetType:"prompt_job"})){let e=(0,r.automationRecordToPromptJob)(o);t.set(e.id,e),this.ensureLegacyJobRow(e)}if((0,o.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?i(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(i)}updateRun(e,t){let r={status:"status",output:"output",error:"error",durationMs:"duration_ms",startedAt:"started_at",finishedAt:"finished_at",cancelledAt:"cancelled_at"},o=[],a=[];for(let[e,n]of Object.entries(t)){let t=r[e];t&&(o.push(`${t} = ?`),a.push(n??null))}return 0===o.length||(a.push(e),this.db.prepare(`UPDATE prompt_runs SET ${o.join(", ")} WHERE id = ?`).run(...a.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,o.isAutomationDualReadEnabled)())return null;let a=this.getLegacyJob(e);return a?this.materializeLegacyJob(a):null}materializeLegacyJob(e){let t=(0,r.promptJobToAutomationDefinition)(e),o=(0,r.promptJobToAutomationRuntimeState)(e),a=this.getAutomationRepo().upsertAutomation(t);return this.getAutomationRepo().updateAutomationState(e.id,{nextRunAt:o.nextRunAt,lastRunAt:o.lastRunAt,lastOutcome:o.lastOutcome,lastError:o.lastError,updatedAt:o.updatedAt})??a}buildDefinitionPatch(e,t){let r={},o={},a={},n={};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,a=t.triggerType??r.type;o.type=a,"condition"===a?(o.condition=t.condition??("condition"===r.type?r.condition:""),o.checkEveryMs=t.checkEveryMs??("condition"===r.type?r.checkEveryMs:3e5)):(o.cadence=""===t.cadence?void 0:t.cadence??("scheduled"===r.type?r.cadence:void 0),o.cronExpr=void 0!==t.cronExpr?t.cronExpr:void 0!==t.cadence&&""!==t.cadence?void 0:"scheduled"===r.type?r.cronExpr:void 0,o.intervalMs="scheduled"===r.type?r.intervalMs:void 0)}return void 0!==t.overlapPolicy&&(a.overlapPolicy=t.overlapPolicy),void 0!==t.catchUpPolicy&&(a.catchUpPolicy=t.catchUpPolicy),void 0!==t.cancelCheckSec&&(a.cancelCheckSec=t.cancelCheckSec),void 0!==t.agentId&&(n.agentId=t.agentId||void 0),void 0!==t.provider&&(n.provider=t.provider||void 0),void 0!==t.model&&(n.model=t.model||void 0),void 0!==t.cliArgs&&(n.cliArgs=t.cliArgs),{...Object.keys(r).length>0?r:{},...Object.keys(o).length>0?{trigger:o}:{},...Object.keys(a).length>0?{execution:a}:{},...Object.keys(n).length>0?{target:n}:{}}}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 (
|
|
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 o=Object.values(r);return o.length>0?o[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function o(e,t){e.exec(`PRAGMA ${t}`)}function a(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 o=t(...r);return e.exec("COMMIT"),o}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>o,"transaction",()=>a,"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),o=e.i(814747);let a="3.35.0",n=["json1"],i=["fts5"],s=["nfs","smb","cifs","efs","fuse.sshfs"];function c(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 l(l,d){let u=[],p=l.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),o=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(o[e]||0);if(0!==t)return t}return 0}(p.v,a)&&u.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)"}),n))c(l,e)||u.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 i)c(l,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 a=o.default.resolve(t),{execSync:n}=e.r(233405);if("darwin"===r.default.platform()){let e=n(`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+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(d);m&&s.some(e=>m.toLowerCase().includes(e))&&u.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)(l,"journal_mode = wal"),(0,t.pragmaSet)(l,"foreign_keys = 1"),(0,t.pragmaSet)(l,"busy_timeout = 5000"),(0,t.pragmaSet)(l,"synchronous = 1"),(0,t.pragmaSet)(l,"cache_size = -64000");let e=(0,t.pragmaGet)(l,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(l,"journal_mode = DELETE");let e=(0,t.pragmaGet)(l,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(l,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):u.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){u.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 u}e.s(["validateSQLiteEnvironment",()=>l])},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("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"]])},338479,e=>{"use strict";var t=e.i(254799);e.i(201037);var r=e.i(200866),o=e.i(434542),a=e.i(300248);function n(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 i(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 c{db;automationRepository;constructor(e,t){this.db=e,this.automationRepository=t}getAutomationRepo(){return this.automationRepository??=(0,o.getAutomationRepository)(),this.automationRepository}createJob(e){if(!(0,o.isAutomationFrontmatterEnabled)())return this.createLegacyJob(e);let a=(0,t.randomUUID)(),n=new Date().toISOString(),i=this.getAutomationRepo().createAutomation({id:a,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:n,body:e.prompt}),s=(0,r.automationRecordToPromptJob)(i);return this.upsertLegacyJobRow(s),s}getJob(e){if(!(0,o.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,o.isAutomationDualReadEnabled)()?this.getLegacyJob(e):null}listJobs(e){if(!(0,o.isAutomationFrontmatterEnabled)())return this.listLegacyJobs(e);let t=new Map;for(let o of this.getAutomationRepo().listVisibleAutomations({targetType:"prompt_job",...e?.state?{state:e.state}:{},...e?.projectId?{projectId:e.projectId}:{}})){let e=(0,r.automationRecordToPromptJob)(o);t.set(e.id,e),this.ensureLegacyJobRow(e)}if((0,o.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,o.isAutomationFrontmatterEnabled)())return this.updateLegacyJob(e,t);let a=this.getPromptJobRecord(e,!0);if(!a)return null;let n=this.buildDefinitionPatch(a,t);if(s(n)){let t=this.getAutomationRepo().updateAutomation(e,n);if(!t)return null;a=t}let i=this.buildStatePatch(t);if(s(i)){let t=this.getAutomationRepo().updateAutomationState(e,i);if(!t)return null;a=t}let c=(0,r.automationRecordToPromptJob)(a);return this.upsertLegacyJobRow(c),c}deleteJob(e){(0,o.isAutomationFrontmatterEnabled)()&&this.getAutomationRepo().deleteAutomation(e),this.db.prepare("DELETE FROM prompt_jobs WHERE id = ?").run(e)}getDueJobs(e=Date.now()){if(!(0,o.isAutomationFrontmatterEnabled)())return this.getLegacyDueJobs(e);let t=new Map;for(let o of this.getAutomationRepo().listDueAutomations(e,{targetType:"prompt_job"})){let e=(0,r.automationRecordToPromptJob)(o);t.set(e.id,e),this.ensureLegacyJobRow(e)}if((0,o.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?i(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(i)}updateRun(e,t){let r={status:"status",output:"output",error:"error",durationMs:"duration_ms",startedAt:"started_at",finishedAt:"finished_at",cancelledAt:"cancelled_at"},o=[],a=[];for(let[e,n]of Object.entries(t)){let t=r[e];t&&(o.push(`${t} = ?`),a.push(n??null))}return 0===o.length||(a.push(e),this.db.prepare(`UPDATE prompt_runs SET ${o.join(", ")} WHERE id = ?`).run(...a.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,o.isAutomationDualReadEnabled)())return null;let a=this.getLegacyJob(e);return a?this.materializeLegacyJob(a):null}materializeLegacyJob(e){let t=(0,r.promptJobToAutomationDefinition)(e),o=(0,r.promptJobToAutomationRuntimeState)(e),a=this.getAutomationRepo().upsertAutomation(t);return this.getAutomationRepo().updateAutomationState(e.id,{nextRunAt:o.nextRunAt,lastRunAt:o.lastRunAt,lastOutcome:o.lastOutcome,lastError:o.lastError,updatedAt:o.updatedAt})??a}buildDefinitionPatch(e,t){let r={},o={},a={},n={};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,a=t.triggerType??r.type;o.type=a,"condition"===a?(o.condition=t.condition??("condition"===r.type?r.condition:""),o.checkEveryMs=t.checkEveryMs??("condition"===r.type?r.checkEveryMs:3e5)):(o.cadence=""===t.cadence?void 0:t.cadence??("scheduled"===r.type?r.cadence:void 0),o.cronExpr=void 0!==t.cronExpr?t.cronExpr:void 0!==t.cadence&&""!==t.cadence?void 0:"scheduled"===r.type?r.cronExpr:void 0,o.intervalMs="scheduled"===r.type?r.intervalMs:void 0)}return void 0!==t.overlapPolicy&&(a.overlapPolicy=t.overlapPolicy),void 0!==t.catchUpPolicy&&(a.catchUpPolicy=t.catchUpPolicy),void 0!==t.cancelCheckSec&&(a.cancelCheckSec=t.cancelCheckSec),void 0!==t.agentId&&(n.agentId=t.agentId||void 0),void 0!==t.provider&&(n.provider=t.provider||void 0),void 0!==t.model&&(n.model=t.model||void 0),void 0!==t.cliArgs&&(n.cliArgs=t.cliArgs),{...Object.keys(r).length>0?r:{},...Object.keys(o).length>0?{trigger:o}:{},...Object.keys(a).length>0?{execution:a}:{},...Object.keys(n).length>0?{target:n}:{}}}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 (
|
|
2
2
|
id, name, prompt, cli, agent_id, project_id, provider, model, cli_args,
|
|
3
3
|
cron_expr, cadence, state, overlap_policy, catch_up_policy, cancel_check_sec,
|
|
4
4
|
trigger_type, condition, check_every_ms, next_run_at, last_run_at, last_outcome,
|
|
@@ -36,4 +36,4 @@ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/a
|
|
|
36
36
|
AND next_run_at <= ?
|
|
37
37
|
ORDER BY next_run_at ASC`).all(e).map(n)}}var l=e.i(522734),d=e.i(814747),u=e.i(960447);let p=null;function m(){if(!p){let e=(0,u.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,l.readFileSync)(d.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,l.readFileSync)(d.default.join(process.cwd(),"db/sqlite/002_prompt_scheduler_schema.sql"),"utf-8");e.exec(t)}p=new c(e)}return p}e.s(["getPromptJobStore",()=>m],338479)},149965,e=>{"use strict";var t=e.i(747909),r=e.i(174017),o=e.i(996250),a=e.i(759756),n=e.i(561916),i=e.i(174677),s=e.i(869741),c=e.i(316795),l=e.i(487718),d=e.i(995169),u=e.i(47587),p=e.i(666012),m=e.i(570101),h=e.i(626937),g=e.i(10372),_=e.i(193695);e.i(52474);var E=e.i(600220),R=e.i(89171),y=e.i(338479);async function f(e,{params:t}){try{let{id:e}=await t,r=(0,y.getPromptJobStore)();if(!r.getJob(e))return R.NextResponse.json({error:"Job not found"},{status:404});let o=r.listRuns(e);return R.NextResponse.json({count:o.length,runs:o})}catch(e){return console.error("Failed to list prompt runs:",e),R.NextResponse.json({error:"Failed to list prompt runs",message:e instanceof Error?e.message:String(e)},{status:500})}}e.s(["GET",()=>f,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],199317);var b=e.i(199317);let x=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/prompt-jobs/[id]/runs/route",pathname:"/api/prompt-jobs/[id]/runs",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/prompt-jobs/[id]/runs/route.ts",nextConfigOutput:"standalone",userland:b}),{workAsyncStorage:v,workUnitAsyncStorage:A,serverHooks:S}=x;function T(){return(0,o.patchFetch)({workAsyncStorage:v,workUnitAsyncStorage:A})}async function L(e,t,o){x.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/prompt-jobs/[id]/runs/route";R=R.replace(/\/index$/,"")||"/";let y=await x.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==o.waitUntil||o.waitUntil.call(o,Promise.resolve()),null;let{buildId:f,params:b,nextConfig:v,parsedUrl:A,isDraftMode:S,prerenderManifest:T,routerServerContext:L,isOnDemandRevalidate:j,revalidateOnlyGenerated:w,resolvedPathname:C,clientReferenceManifest:I,serverActionsManifest:O}=y,k=(0,s.normalizeAppPath)(R),P=!!(T.dynamicRoutes[k]||T.routes[C]),D=async()=>((null==L?void 0:L.render404)?await L.render404(e,t,A,!1):t.end("This page could not be found"),null);if(P&&!S){let e=!!T.routes[C],t=T.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(v.experimental.adapterPath)return await D();throw new _.NoFallbackError}}let N=null;!P||x.isDev||S||(N="/index"===(N=C)?"/":N);let M=!0===x.isDev||!P,U=P&&!M;O&&I&&(0,i.setManifestsSingleton)({page:R,clientReferenceManifest:I,serverActionsManifest:O});let J=e.method||"GET",F=(0,n.getTracer)(),q=F.getActiveScopeSpan(),$={params:b,prerenderManifest:T,renderOpts:{experimental:{authInterrupts:!!v.experimental.authInterrupts},cacheComponents:!!v.cacheComponents,supportsDynamicResponse:M,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:v.cacheLife,waitUntil:o.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,o,a)=>x.onRequestError(e,t,o,a,L)},sharedContext:{buildId:f}},H=new c.NodeNextRequest(e),B=new c.NodeNextResponse(t),G=l.NextRequestAdapter.fromNodeNextRequest(H,(0,l.signalFromNodeResponse)(t));try{let i=async e=>x.handle(G,$).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let o=r.get("next.route");if(o){let t=`${J} ${o}`;e.setAttributes({"next.route":o,"http.route":o,"next.span_name":t}),e.updateName(t)}else e.updateName(`${J} ${R}`)}),s=!!(0,a.getRequestMeta)(e,"minimalMode"),c=async a=>{var n,c;let l=async({previousCacheEntry:r})=>{try{if(!s&&j&&w&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await i(a);e.fetchMetrics=$.renderOpts.fetchMetrics;let c=$.renderOpts.pendingWaitUntil;c&&o.waitUntil&&(o.waitUntil(c),c=void 0);let l=$.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(H,B,n,$.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(n.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,o=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:$.renderOpts.collectedExpire;return{value:{kind:E.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:o}}}}catch(t){throw(null==r?void 0:r.isStale)&&await x.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:j})},!1,L),t}},d=await x.handleResponse({req:e,nextConfig:v,cacheKey:N,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:T,isRoutePPREnabled:!1,isOnDemandRevalidate:j,revalidateOnlyGenerated:w,responseGenerator:l,waitUntil:o.waitUntil,isMinimalMode:s});if(!P)return null;if((null==d||null==(n=d.value)?void 0:n.kind)!==E.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(c=d.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});s||t.setHeader("x-nextjs-cache",j?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let _=(0,m.fromNodeOutgoingHttpHeaders)(d.value.headers);return s&&P||_.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||_.get("Cache-Control")||_.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(H,B,new Response(d.value.body,{headers:_,status:d.value.status||200})),null};q?await c(q):await F.withPropagatedContext(e.headers,()=>F.trace(d.BaseServerSpan.handleRequest,{spanName:`${J} ${R}`,kind:n.SpanKind.SERVER,attributes:{"http.method":J,"http.target":e.url}},c))}catch(t){if(t instanceof _.NoFallbackError||await x.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:j})},!1,L),P)throw t;return await (0,p.sendResponse)(H,B,new Response(null,{status:500})),null}}e.s(["handler",()=>L,"patchFetch",()=>T,"routeModule",()=>x,"serverHooks",()=>S,"workAsyncStorage",()=>v,"workUnitAsyncStorage",()=>A],149965)}];
|
|
38
38
|
|
|
39
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
39
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__15f3bb96._.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
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 i(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",()=>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),a=e.i(814747);let n="3.35.0",i=["json1"],s=["fts5"],o=["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)"}),i))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 s)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:i}=e.r(233405);if("darwin"===r.default.platform()){let e=i(`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&&o.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])},
|
|
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 i(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",()=>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),a=e.i(814747);let n="3.35.0",i=["json1"],s=["fts5"],o=["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)"}),i))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 s)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:i}=e.r(233405);if("darwin"===r.default.platform()){let e=i(`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&&o.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"))},12616,e=>{"use strict";function t(e,t){return`---
|
|
2
2
|
${Object.entries(e).map(([e,t])=>`${e}: ${null==t?"":String(t)}`).join("\n")}
|
|
3
3
|
---
|
|
4
4
|
${t}`}e.s(["buildMarkdownWithFrontmatter",()=>t])},718825,e=>{"use strict";var t=e.i(457431);async function r(e){return(0,t.createAdminDbClient)()}e.s(["createDbServerClientWithRequest",()=>r])},395822,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),i=e.i(561916),s=e.i(174677),o=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),m=e.i(626937),h=e.i(10372),g=e.i(193695);e.i(52474);var x=e.i(600220),y=e.i(89171),_=e.i(762294),v=e.i(718825),R=e.i(12616),w=e.i(304290),E=e.i(68638),b=e.i(949041);async function A(e){try{let t=b.LOCAL_USER.id,r=await (0,v.createDbServerClientWithRequest)(e),a=await e.json(),{taskId:n,log:i,comment:s,comments:o,final_result:l,decision:u,explanation:d}=a;if(!n)return y.NextResponse.json({error:"taskId is required"},{status:400});let c="string"==typeof a?.artifact_path?a.artifact_path.trim():"",p="string"==typeof a?.artifact_host?a.artifact_host.trim():"",f="string"==typeof a?.artifact_key?a.artifact_key.trim():"",{data:m,error:h}=await r.from("tasks").select("*").eq("id",n).eq("user_id",t).single();if(h||!m)return y.NextResponse.json({error:"Task not found"},{status:404});let{frontmatter:g,body:x}=(0,_.parseFrontmatter)(m.content),A=g.stage||"INTAKE";(0,w.getTicketType)(g,x);let S="string"==typeof l?l.trim():"",C="string"==typeof u?u.trim():"",q="string"==typeof d?d.trim():"",k=!S||!C||!q,T="Aggregator output unavailable; manual action required.",L=k?T:S,N=k?"blocked":C,O=k?T:q;if(!["done","blocked","not_done","failed"].includes(N))return y.NextResponse.json({error:"Invalid decision"},{status:400});let j=Array.isArray(o)?o.map(e=>String(e||"").trim()).filter(Boolean):[],I="string"==typeof s&&s.trim()?s:"string"==typeof i&&i.trim()?i:L,P=a?.run_entry||a?.runEntry;if(P&&"object"==typeof P){let e="string"==typeof P.run_id?P.run_id.trim():"";if(e){let t={run_id:e,stage:"string"==typeof P.stage&&P.stage.trim()?P.stage.trim():A,engine:"string"==typeof P.engine&&P.engine.trim()?P.engine.trim():"string"==typeof g?.engine&&String(g.engine).trim()?String(g.engine).trim():m.engine||"unknown",model:"string"==typeof P.model&&P.model.trim()?P.model.trim():void 0,status:"string"==typeof P.status&&P.status.trim()?P.status.trim():"unknown",created_at:"string"==typeof P.created_at&&P.created_at.trim()?P.created_at.trim():new Date().toISOString(),artifact_manifest:Array.isArray(P.artifact_manifest)?P.artifact_manifest:void 0,artifact_path:c||void 0,artifact_host:p||void 0,artifact_key:f||void 0};try{await (0,_.appendRunToIndex)(n,t)}catch(e){console.warn("Failed to append run_index entry:",e)}}}if("blocked"===N){let e={...g,stage:A,status:"blocked"},a=(0,R.buildMarkdownWithFrontmatter)(e,x),{error:i}=await r.from("tasks").update({content:a,stage:A,status:"blocked",...c?{artifact_path:c}:{},...p?{artifact_host:p}:{},...f?{artifact_key:f}:{},updated_at:new Date().toISOString()}).eq("id",n).eq("user_id",t);if(i)throw i}else if(c||p||f)try{let{error:e}=await r.from("tasks").update({...c?{artifact_path:c}:{},...p?{artifact_host:p}:{},...f?{artifact_key:f}:{},updated_at:new Date().toISOString()}).eq("id",n).eq("user_id",t);e&&e?.code!=="42703"&&console.warn("Failed to persist artifact pointer fields:",e)}catch(e){console.warn("Failed to persist artifact pointer fields:",e)}let $=await (0,E.getQueue)();return await $.send(E.QUEUE_NAMES.TASK_PROCESS,{taskId:n,userId:t,signal:"agentResult",payload:{decision:N,explanation:O,final_result:L,comments:j.length>0?j:void 0,comment:I}}),y.NextResponse.json({taskId:n,stage:A,decision:N,signaled:!0})}catch(e){return console.error("Error completing stage:",e),y.NextResponse.json({error:"Failed to complete stage"},{status:500})}}e.s(["POST",()=>A],421721);var S=e.i(421721);let C=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/queue/complete/route",pathname:"/api/queue/complete",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/queue/complete/route.ts",nextConfigOutput:"standalone",userland:S}),{workAsyncStorage:q,workUnitAsyncStorage:k,serverHooks:T}=C;function L(){return(0,a.patchFetch)({workAsyncStorage:q,workUnitAsyncStorage:k})}async function N(e,t,a){C.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let y="/api/queue/complete/route";y=y.replace(/\/index$/,"")||"/";let _=await C.prepare(e,t,{srcPage:y,multiZoneDraftMode:!1});if(!_)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:v,params:R,nextConfig:w,parsedUrl:E,isDraftMode:b,prerenderManifest:A,routerServerContext:S,isOnDemandRevalidate:q,revalidateOnlyGenerated:k,resolvedPathname:T,clientReferenceManifest:L,serverActionsManifest:N}=_,O=(0,o.normalizeAppPath)(y),j=!!(A.dynamicRoutes[O]||A.routes[T]),I=async()=>((null==S?void 0:S.render404)?await S.render404(e,t,E,!1):t.end("This page could not be found"),null);if(j&&!b){let e=!!A.routes[T],t=A.dynamicRoutes[O];if(t&&!1===t.fallback&&!e){if(w.experimental.adapterPath)return await I();throw new g.NoFallbackError}}let P=null;!j||C.isDev||b||(P="/index"===(P=T)?"/":P);let $=!0===C.isDev||!j,D=j&&!$;N&&L&&(0,s.setManifestsSingleton)({page:y,clientReferenceManifest:L,serverActionsManifest:N});let U=e.method||"GET",M=(0,i.getTracer)(),F=M.getActiveScopeSpan(),H={params:R,prerenderManifest:A,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:$,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:w.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>C.onRequestError(e,t,a,n,S)},sharedContext:{buildId:v}},B=new l.NodeNextRequest(e),G=new l.NodeNextResponse(t),K=u.NextRequestAdapter.fromNodeNextRequest(B,(0,u.signalFromNodeResponse)(t));try{let s=async e=>C.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=`${U} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${U} ${y}`)}),o=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var i,l;let u=async({previousCacheEntry:r})=>{try{if(!o&&q&&k&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await s(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(!j)return await (0,p.sendResponse)(B,G,i,H.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(i.headers);u&&(t[h.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=h.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=h.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await C.onRequestError(e,t,{routerKind:"App Router",routePath:y,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:q})},!1,S),t}},d=await C.handleResponse({req:e,nextConfig:w,cacheKey:P,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:q,revalidateOnlyGenerated:k,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:o});if(!j)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==x.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",q?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return o&&j||g.delete(h.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,m.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(B,G,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:`${U} ${y}`,kind:i.SpanKind.SERVER,attributes:{"http.method":U,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await C.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:D,isOnDemandRevalidate:q})},!1,S),j)throw t;return await (0,p.sendResponse)(B,G,new Response(null,{status:500})),null}}e.s(["handler",()=>N,"patchFetch",()=>L,"routeModule",()=>C,"serverHooks",()=>T,"workAsyncStorage",()=>q,"workUnitAsyncStorage",()=>k],395822)}];
|
|
5
5
|
|
|
6
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
6
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__1f53e82e._.js.map
|
|
@@ -1,8 +1,8 @@
|
|
|
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"],i=["fts5"],o=["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 i)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&&o.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])},
|
|
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"],i=["fts5"],o=["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 i)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&&o.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"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},994140,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),s=e.i(561916),i=e.i(174677),o=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),m=e.i(10372),x=e.i(193695);e.i(52474);var g=e.i(600220),R=e.i(89171),E=e.i(960447);e.i(201037);var v=e.i(200866),A=e.i(434542);async function _(e){try{let t=e.nextUrl.searchParams.get("state"),r=(0,E.getSQLiteDb)().prepare(`
|
|
2
2
|
SELECT task_id, id, schedule, execution_state, created_at, updated_at
|
|
3
3
|
FROM execution_graphs
|
|
4
4
|
WHERE schedule IS NOT NULL
|
|
5
5
|
ORDER BY updated_at DESC
|
|
6
6
|
`).all(),a=new Map(r.map(e=>[e.id,e])),n=new Map;if((0,A.isAutomationFrontmatterEnabled)()){for(let e of(0,A.getAutomationRepository)().listVisibleAutomations({targetType:"execution_graph",...t?{state:t}:{}})){if("execution_graph"!==e.definition.target.type)continue;let t=e.definition.target.graphId??e.definition.id,r=a.get(t),s=e.definition.target.taskId??r?.task_id??t;n.set(t,{taskId:s,graphId:t,schedule:(0,v.automationRecordToGraphSchedule)(e,r?JSON.parse(r.schedule):void 0),executionState:r?.execution_state??"ready",createdAt:e.definition.createdAt??r?.created_at??e.runtimeState.updatedAt,updatedAt:e.runtimeState.updatedAt})}if(!(0,A.isAutomationDualReadEnabled)()){let e=[...n.values()].sort((e,t)=>Date.parse(t.updatedAt)-Date.parse(e.updatedAt));return R.NextResponse.json({count:e.length,automations:e})}}for(let e of r){if(n.has(e.id))continue;let r=JSON.parse(e.schedule);t&&r.state!==t||n.set(e.id,{taskId:e.task_id,graphId:e.id,schedule:r,executionState:e.execution_state,createdAt:e.created_at,updatedAt:e.updated_at})}let s=[...n.values()].sort((e,t)=>Date.parse(t.updatedAt)-Date.parse(e.updatedAt));return R.NextResponse.json({count:s.length,automations:s})}catch(e){return console.error("Failed to list automations:",e),R.NextResponse.json({error:"Failed to list automations",message:e instanceof Error?e.message:String(e)},{status:500})}}e.s(["GET",()=>_,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],811261);var w=e.i(811261);let y=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/automations/route",pathname:"/api/automations",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/automations/route.ts",nextConfigOutput:"standalone",userland:w}),{workAsyncStorage:S,workUnitAsyncStorage:b,serverHooks:C}=y;function T(){return(0,a.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:b})}async function L(e,t,a){y.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/automations/route";R=R.replace(/\/index$/,"")||"/";let E=await y.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!E)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:v,params:A,nextConfig:_,parsedUrl:w,isDraftMode:S,prerenderManifest:b,routerServerContext:C,isOnDemandRevalidate:T,revalidateOnlyGenerated:L,resolvedPathname:N,clientReferenceManifest:k,serverActionsManifest:q}=E,O=(0,o.normalizeAppPath)(R),j=!!(b.dynamicRoutes[O]||b.routes[N]),I=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,w,!1):t.end("This page could not be found"),null);if(j&&!S){let e=!!b.routes[N],t=b.dynamicRoutes[O];if(t&&!1===t.fallback&&!e){if(_.experimental.adapterPath)return await I();throw new x.NoFallbackError}}let D=null;!j||y.isDev||S||(D="/index"===(D=N)?"/":D);let P=!0===y.isDev||!j,U=j&&!P;q&&k&&(0,i.setManifestsSingleton)({page:R,clientReferenceManifest:k,serverActionsManifest:q});let M=e.method||"GET",$=(0,s.getTracer)(),F=$.getActiveScopeSpan(),H={params:A,prerenderManifest:b,renderOpts:{experimental:{authInterrupts:!!_.experimental.authInterrupts},cacheComponents:!!_.cacheComponents,supportsDynamicResponse:P,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:_.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>y.onRequestError(e,t,a,n,C)},sharedContext:{buildId:v}},G=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),K=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let i=async e=>y.handle(K,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${M} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${R}`)}),o=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var s,l;let u=async({previousCacheEntry:r})=>{try{if(!o&&T&&L&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(n);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let u=H.renderOpts.collectedTags;if(!j)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[m.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>=m.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:g.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 y.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:T})},!1,C),t}},d=await y.handleResponse({req:e,nextConfig:_,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:b,isRoutePPREnabled:!1,isOnDemandRevalidate:T,revalidateOnlyGenerated:L,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:o});if(!j)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",T?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let x=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return o&&j||x.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||x.get("Cache-Control")||x.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(G,B,new Response(d.value.body,{headers:x,status:d.value.status||200})),null};F?await l(F):await $.withPropagatedContext(e.headers,()=>$.trace(d.BaseServerSpan.handleRequest,{spanName:`${M} ${R}`,kind:s.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},l))}catch(t){if(t instanceof x.NoFallbackError||await y.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:T})},!1,C),j)throw t;return await (0,p.sendResponse)(G,B,new Response(null,{status:500})),null}}e.s(["handler",()=>L,"patchFetch",()=>T,"routeModule",()=>y,"serverHooks",()=>C,"workAsyncStorage",()=>S,"workUnitAsyncStorage",()=>b],994140)}];
|
|
7
7
|
|
|
8
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
8
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__20533a2c._.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
module.exports=[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"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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 s(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",()=>s])},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"))},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"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},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",s=["json1"],a=["fts5"],i=["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 c(c,d){let l=[],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)&&l.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)"}),s))u(c,e)||l.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)u(c,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let g=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let o=n.default.resolve(t),{execSync:s}=e.r(233405);if("darwin"===r.default.platform()){let e=s(`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}(d);g&&i.some(e=>g.toLowerCase().includes(e))&&l.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${g})`,path:d,found:g,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`)):l.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){l.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 l}e.s(["validateSQLiteEnvironment",()=>c])},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},382341,e=>{"use strict";var t=e.i(762294),r=e.i(960447);class n extends Error{constraint;detail;constructor(e,t){super(e),this.name="ConflictError",this.constraint=t?.constraint,this.detail=t?.detail}}class o extends Error{code;constructor(e,t){super(e),this.name="RetryableError",this.code=t}}class s extends Error{expectedVersion;actualVersion;entityId;entityType;constructor(e,t,r,n){super(void 0!==n?`Concurrent modification on ${e} ${t}: expected version ${r}, found ${n}`:`Concurrent modification on ${e} ${t}: expected version ${r}, row not updated`),this.name="ConcurrentModificationError",this.entityType=e,this.entityId=t,this.expectedVersion=r,this.actualVersion=n}}function a(e){if(!(e instanceof Error))throw e;let t=e.code??"",r=e.message??"";if("SQLITE_CONSTRAINT_UNIQUE"===t||"SQLITE_CONSTRAINT_PRIMARYKEY"===t||"SQLITE_CONSTRAINT"===t&&(r.includes("UNIQUE")||r.includes("PRIMARY KEY"))||r.includes("UNIQUE constraint failed")||r.includes("PRIMARY KEY constraint failed")){let e=r.match(/(?:UNIQUE|PRIMARY KEY) constraint failed: (.+)/);throw new n(r,{constraint:e?.[1],detail:r})}if("SQLITE_BUSY"===t||"SQLITE_LOCKED"===t||r.includes("database is locked"))throw new o(r,t||"SQLITE_BUSY");throw e}async function i(e){try{return await e()}catch(e){if(e instanceof n||e instanceof o||e instanceof s)throw e;a(e)}}class u{async transaction(e){let t=(0,r.getSQLiteDb)();t.exec("BEGIN IMMEDIATE");try{let r=await e(t);return t.exec("COMMIT"),r}catch(e){try{t.exec("ROLLBACK")}catch{}if(e instanceof n||e instanceof o||e instanceof s)throw e;a(e)}}getTasks(e,r){return t.getTasks(e,r)}getTask(e,r){return t.getTask(e,r)}getTaskBySlug(e,r){return t.getTaskBySlug(e,r)}createTask(e,r,n){return i(()=>t.createTask(e,r,n))}async updateTask(e,n,o,a){let u=a?.expectedVersion;if(void 0!==u){let c=(0,r.getSQLiteDb)();if(0===c.prepare("UPDATE tasks SET version = version + 1 WHERE id = ? AND version = ?").run(e,u).changes){let t=c.prepare("SELECT version FROM tasks WHERE id = ?").get(e);throw new s("task",e,u,t?.version)}let{expectedVersion:d,...l}=a??{};return i(()=>t.updateTask(e,n,o,l))}return(0,r.getSQLiteDb)().prepare("UPDATE tasks SET version = version + 1 WHERE id = ?").run(e),i(()=>t.updateTask(e,n,o,a))}appendRunToIndex(e,r,n){return t.appendRunToIndex(e,r,n)}deleteTask(e,r){return i(()=>t.deleteTask(e,r))}getNextQueuedTask(e){return t.getNextQueuedTask(e)}ensureNoCircularDependency(e,r,n){return t.ensureNoCircularDependency(e,r,n)}getProjects(e){return t.getProjects(e)}getProjectBySlug(e,r){return t.getProjectBySlug(e,r)}getProjectRepos(e){return t.getProjectRepos(e)}getProjectWithRepos(e,r){return t.getProjectWithRepos(e,r)}createProject(e,r,n){return i(()=>t.createProject(e,r,n))}updateProject(e,r,n,o){return t.updateProject(e,r,n,o)}deleteProject(e,r,n){return i(()=>t.deleteProject(e,r,n))}assignOrphanTasksToProject(e,r,n){return t.assignOrphanTasksToProject(e,r,n)}getWorkflows(e){return t.getWorkflows(e)}getWorkflow(e,r){return t.getWorkflow(e,r)}updateWorkflow(e,r,n){return t.updateWorkflow(e,r,n)}getWorkflowNodes(e){return t.getWorkflowNodes(e)}updateWorkflowNodes(e,r,n){return t.updateWorkflowNodes(e,r,n)}getWorkflowNodeByName(e,r){return t.getWorkflowNodeByName(e,r)}getWorkflowTransitions(e){return t.getWorkflowTransitions(e)}getWorkflowTransitionsFromNode(e,r){return t.getWorkflowTransitionsFromNode(e,r)}getWorkflowWithGraph(e,r){return t.getWorkflowWithGraph(e,r)}getTaskLogs(e,r){return t.getTaskLogs(e,r)}addTaskLog(e,r,n,o){return i(()=>t.addTaskLog(e,r,n,o))}addTaskCostEntry(e){return i(()=>t.addTaskCostEntry(e))}getTaskCostEntries(e){return t.getTaskCostEntries(e)}getTaskCostSummary(e){return t.getTaskCostSummary(e)}getTaskComments(e){return t.getTaskComments(e)}addTaskComment(e,r,n,o){return i(()=>t.addTaskComment(e,r,n,o))}deleteTaskComment(e,r){return i(()=>t.deleteTaskComment(e,r))}getLearnings(e,r,n){return t.getLearnings(e,r,n)}addLearning(e,r,n,o){return i(()=>t.addLearning(e,r,n,o))}deleteLearning(e,r){return i(()=>t.deleteLearning(e,r))}getStagePrompts(e,r){return t.getStagePrompts(e,r)}getStagePrompt(e,r,n){return t.getStagePrompt(e,r,n)}upsertStagePrompt(e,r,n,o,s,a){return i(()=>t.upsertStagePrompt(e,r,n,o,s,a))}deleteStagePrompt(e,r){return t.deleteStagePrompt(e,r)}getAgents(e){return t.getAgents(e)}getAgent(e,r){return t.getAgent(e,r)}createAgent(e,r){return i(()=>t.createAgent(e,r))}updateAgent(e,r,n){return t.updateAgent(e,r,n)}deleteAgent(e,r){return t.deleteAgent(e,r)}getProjectAgents(e){return t.getProjectAgents(e)}addProjectAgent(e,r,n){return i(()=>t.addProjectAgent(e,r,n))}removeProjectAgent(e,r){return t.removeProjectAgent(e,r)}reorderProjectAgents(e,r){return t.reorderProjectAgents(e,r)}getProjectSkills(e){return t.getProjectSkills(e)}addProjectSkill(e,r,n){return i(()=>t.addProjectSkill(e,r,n))}removeProjectSkill(e){return t.removeProjectSkill(e)}getProjectVariables(e){return t.getProjectVariables(e)}setProjectVariable(e,r,n){return i(()=>t.setProjectVariable(e,r,n))}deleteProjectVariable(e,r){return t.deleteProjectVariable(e,r)}getProjectMemory(e,r){return t.getProjectMemory(e,r)}addProjectMemory(e,r,n,o){return i(()=>t.addProjectMemory(e,r,n,o))}deleteProjectMemory(e){return t.deleteProjectMemory(e)}getProjectThreads(e){return t.getProjectThreads(e)}addProjectThread(e,r){return i(()=>t.addProjectThread(e,r))}removeProjectThread(e,r){return t.removeProjectThread(e,r)}getProjectForThread(e){return t.getProjectForThread(e)}getUserSettings(e){return t.getUserSettings(e)}upsertUserSettings(e,r,n){return i(()=>t.upsertUserSettings(e,r,n))}async healthCheck(){let e=performance.now();try{return(0,r.getSQLiteDb)().prepare("SELECT 1").get(),{adapter:"sqlite",connected:!0,latencyMs:Math.round(performance.now()-e)}}catch{return{adapter:"sqlite",connected:!1,latencyMs:Math.round(performance.now()-e)}}}}e.s(["SQLiteAdapter",()=>u],382341)},390081,e=>{"use strict";let t=function(){let{SQLiteAdapter:t}=e.r(382341);return new t}();e.s(["db",0,t])}];
|
|
1
|
+
module.exports=[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"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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 s(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",()=>s])},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"))},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"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},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",s=["json1"],a=["fts5"],i=["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 c(c,d){let l=[],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)&&l.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)"}),s))u(c,e)||l.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)u(c,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let g=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let o=n.default.resolve(t),{execSync:s}=e.r(233405);if("darwin"===r.default.platform()){let e=s(`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}(d);g&&i.some(e=>g.toLowerCase().includes(e))&&l.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${g})`,path:d,found:g,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`)):l.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){l.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 l}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])},382341,e=>{"use strict";var t=e.i(762294),r=e.i(960447);class n extends Error{constraint;detail;constructor(e,t){super(e),this.name="ConflictError",this.constraint=t?.constraint,this.detail=t?.detail}}class o extends Error{code;constructor(e,t){super(e),this.name="RetryableError",this.code=t}}class s extends Error{expectedVersion;actualVersion;entityId;entityType;constructor(e,t,r,n){super(void 0!==n?`Concurrent modification on ${e} ${t}: expected version ${r}, found ${n}`:`Concurrent modification on ${e} ${t}: expected version ${r}, row not updated`),this.name="ConcurrentModificationError",this.entityType=e,this.entityId=t,this.expectedVersion=r,this.actualVersion=n}}function a(e){if(!(e instanceof Error))throw e;let t=e.code??"",r=e.message??"";if("SQLITE_CONSTRAINT_UNIQUE"===t||"SQLITE_CONSTRAINT_PRIMARYKEY"===t||"SQLITE_CONSTRAINT"===t&&(r.includes("UNIQUE")||r.includes("PRIMARY KEY"))||r.includes("UNIQUE constraint failed")||r.includes("PRIMARY KEY constraint failed")){let e=r.match(/(?:UNIQUE|PRIMARY KEY) constraint failed: (.+)/);throw new n(r,{constraint:e?.[1],detail:r})}if("SQLITE_BUSY"===t||"SQLITE_LOCKED"===t||r.includes("database is locked"))throw new o(r,t||"SQLITE_BUSY");throw e}async function i(e){try{return await e()}catch(e){if(e instanceof n||e instanceof o||e instanceof s)throw e;a(e)}}class u{async transaction(e){let t=(0,r.getSQLiteDb)();t.exec("BEGIN IMMEDIATE");try{let r=await e(t);return t.exec("COMMIT"),r}catch(e){try{t.exec("ROLLBACK")}catch{}if(e instanceof n||e instanceof o||e instanceof s)throw e;a(e)}}getTasks(e,r){return t.getTasks(e,r)}getTask(e,r){return t.getTask(e,r)}getTaskBySlug(e,r){return t.getTaskBySlug(e,r)}createTask(e,r,n){return i(()=>t.createTask(e,r,n))}async updateTask(e,n,o,a){let u=a?.expectedVersion;if(void 0!==u){let c=(0,r.getSQLiteDb)();if(0===c.prepare("UPDATE tasks SET version = version + 1 WHERE id = ? AND version = ?").run(e,u).changes){let t=c.prepare("SELECT version FROM tasks WHERE id = ?").get(e);throw new s("task",e,u,t?.version)}let{expectedVersion:d,...l}=a??{};return i(()=>t.updateTask(e,n,o,l))}return(0,r.getSQLiteDb)().prepare("UPDATE tasks SET version = version + 1 WHERE id = ?").run(e),i(()=>t.updateTask(e,n,o,a))}appendRunToIndex(e,r,n){return t.appendRunToIndex(e,r,n)}deleteTask(e,r){return i(()=>t.deleteTask(e,r))}getNextQueuedTask(e){return t.getNextQueuedTask(e)}ensureNoCircularDependency(e,r,n){return t.ensureNoCircularDependency(e,r,n)}getProjects(e){return t.getProjects(e)}getProjectBySlug(e,r){return t.getProjectBySlug(e,r)}getProjectRepos(e){return t.getProjectRepos(e)}getProjectWithRepos(e,r){return t.getProjectWithRepos(e,r)}createProject(e,r,n){return i(()=>t.createProject(e,r,n))}updateProject(e,r,n,o){return t.updateProject(e,r,n,o)}deleteProject(e,r,n){return i(()=>t.deleteProject(e,r,n))}assignOrphanTasksToProject(e,r,n){return t.assignOrphanTasksToProject(e,r,n)}getWorkflows(e){return t.getWorkflows(e)}getWorkflow(e,r){return t.getWorkflow(e,r)}updateWorkflow(e,r,n){return t.updateWorkflow(e,r,n)}getWorkflowNodes(e){return t.getWorkflowNodes(e)}updateWorkflowNodes(e,r,n){return t.updateWorkflowNodes(e,r,n)}getWorkflowNodeByName(e,r){return t.getWorkflowNodeByName(e,r)}getWorkflowTransitions(e){return t.getWorkflowTransitions(e)}getWorkflowTransitionsFromNode(e,r){return t.getWorkflowTransitionsFromNode(e,r)}getWorkflowWithGraph(e,r){return t.getWorkflowWithGraph(e,r)}getTaskLogs(e,r){return t.getTaskLogs(e,r)}addTaskLog(e,r,n,o){return i(()=>t.addTaskLog(e,r,n,o))}addTaskCostEntry(e){return i(()=>t.addTaskCostEntry(e))}getTaskCostEntries(e){return t.getTaskCostEntries(e)}getTaskCostSummary(e){return t.getTaskCostSummary(e)}getTaskComments(e){return t.getTaskComments(e)}addTaskComment(e,r,n,o){return i(()=>t.addTaskComment(e,r,n,o))}deleteTaskComment(e,r){return i(()=>t.deleteTaskComment(e,r))}getLearnings(e,r,n){return t.getLearnings(e,r,n)}addLearning(e,r,n,o){return i(()=>t.addLearning(e,r,n,o))}deleteLearning(e,r){return i(()=>t.deleteLearning(e,r))}getStagePrompts(e,r){return t.getStagePrompts(e,r)}getStagePrompt(e,r,n){return t.getStagePrompt(e,r,n)}upsertStagePrompt(e,r,n,o,s,a){return i(()=>t.upsertStagePrompt(e,r,n,o,s,a))}deleteStagePrompt(e,r){return t.deleteStagePrompt(e,r)}getAgents(e){return t.getAgents(e)}getAgent(e,r){return t.getAgent(e,r)}createAgent(e,r){return i(()=>t.createAgent(e,r))}updateAgent(e,r,n){return t.updateAgent(e,r,n)}deleteAgent(e,r){return t.deleteAgent(e,r)}getProjectAgents(e){return t.getProjectAgents(e)}addProjectAgent(e,r,n){return i(()=>t.addProjectAgent(e,r,n))}removeProjectAgent(e,r){return t.removeProjectAgent(e,r)}reorderProjectAgents(e,r){return t.reorderProjectAgents(e,r)}getProjectSkills(e){return t.getProjectSkills(e)}addProjectSkill(e,r,n){return i(()=>t.addProjectSkill(e,r,n))}removeProjectSkill(e){return t.removeProjectSkill(e)}getProjectVariables(e){return t.getProjectVariables(e)}setProjectVariable(e,r,n){return i(()=>t.setProjectVariable(e,r,n))}deleteProjectVariable(e,r){return t.deleteProjectVariable(e,r)}getProjectMemory(e,r){return t.getProjectMemory(e,r)}addProjectMemory(e,r,n,o){return i(()=>t.addProjectMemory(e,r,n,o))}deleteProjectMemory(e){return t.deleteProjectMemory(e)}getProjectThreads(e){return t.getProjectThreads(e)}addProjectThread(e,r){return i(()=>t.addProjectThread(e,r))}removeProjectThread(e,r){return t.removeProjectThread(e,r)}getProjectForThread(e){return t.getProjectForThread(e)}getUserSettings(e){return t.getUserSettings(e)}upsertUserSettings(e,r,n){return i(()=>t.upsertUserSettings(e,r,n))}async healthCheck(){let e=performance.now();try{return(0,r.getSQLiteDb)().prepare("SELECT 1").get(),{adapter:"sqlite",connected:!0,latencyMs:Math.round(performance.now()-e)}}catch{return{adapter:"sqlite",connected:!1,latencyMs:Math.round(performance.now()-e)}}}}e.s(["SQLiteAdapter",()=>u],382341)},390081,e=>{"use strict";let t=function(){let{SQLiteAdapter:t}=e.r(382341);return new t}();e.s(["db",0,t])}];
|
|
2
2
|
|
|
3
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
3
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__3b1431b6._.js.map
|
|
@@ -0,0 +1,147 @@
|
|
|
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 i=Object.values(s);return i.length>0?i[0]:void 0}function s(e,t){return e.prepare(`PRAGMA ${t}`).all()}function i(e,t){e.exec(`PRAGMA ${t}`)}function n(e,t){e.exec("BEGIN");try{let s=t();return e.exec("COMMIT"),s}catch(t){throw e.exec("ROLLBACK"),t}}function a(e,t){return(...s)=>{e.exec("BEGIN");try{let i=t(...s);return e.exec("COMMIT"),i}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>s,"pragmaGet",()=>t,"pragmaSet",()=>i,"transaction",()=>n,"transactionFn",()=>a])},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),i=e.i(814747);let n="3.35.0",a=["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),i=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(s[e]||0)-(i[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)"}),a))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 n=i.default.resolve(t),{execSync:a}=e.r(233405);if("darwin"===s.default.platform()){let e=a(`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+/),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"))},666680,(e,t,s)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},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"))},423502,(e,t,s)=>{},841897,e=>{"use strict";e.i(423502);var t=e.i(902157),s=e.i(750227);function i(){return s.default.join(process.cwd(),".linear-token.json")}function n(e){(0,t.writeFileSync)(i(),JSON.stringify(e,null,2))}function a(){try{(0,t.unlinkSync)(i())}catch{}}class r{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(", ")),i=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:i.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:i.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 l(){let e=function(){try{let e=(0,t.readFileSync)(i(),"utf8");return JSON.parse(e)}catch{return null}}();return e?new r(e.accessToken):null}e.s(["LinearClient",()=>r,"deleteLinearToken",()=>a,"getLinearClient",()=>l,"saveLinearToken",()=>n])},832674,e=>{"use strict";e.i(423502);var t=e.i(902157),s=e.i(750227),i=e.i(260476),n=e.i(841897),a=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 a.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 n=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 i;n.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),(i=s.cycleNumber??null,"number"==typeof i&&Number.isFinite(i)?i: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 g(e,t,s=Date.now()){let i=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(i,s,t)})}async function _(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(i=>{let n=[],a=[],r=d(e.search??null);if(r){let e=`%${r.toLowerCase().replace(/[\\%_]/g,"\\$&")}%`;n.push("(LOWER(identifier) LIKE ? ESCAPE '\\' OR LOWER(title) LIKE ? ESCAPE '\\' OR LOWER(COALESCE(description, '')) LIKE ? ESCAPE '\\')"),a.push(e,e,e)}let l=d(e.status??null);l&&(n.push("LOWER(status) = ?"),a.push(l.toLowerCase()));let u=d(e.assigneeId??null);u&&(n.push("assignee_id = ?"),a.push(u)),e.assignedToMe&&n.push("is_assigned_to_me = 1");let o=d(e.teamId??null);o&&(n.push("team_id = ?"),a.push(o));let c=d(e.cycleId??null);c&&(n.push("cycle_id = ?"),a.push(c));let m=n.length>0?`WHERE ${n.join(" AND ")}`:"",f=i.prepare(`SELECT *
|
|
132
|
+
FROM linear_issues
|
|
133
|
+
${m}
|
|
134
|
+
ORDER BY updated_at DESC, identifier ASC
|
|
135
|
+
LIMIT ? OFFSET ?`).all(...a,t+1,s),g=f.length>t,_=g?f.slice(0,t):f,y=g?String(s+t):null;return{issues:_.map(p),pageInfo:{hasNextPage:g,endCursor:y}}})}async function h(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(", "),i=new Map(e.prepare(`SELECT *
|
|
136
|
+
FROM linear_issues
|
|
137
|
+
WHERE issue_id IN (${s})`).all(...t).map(e=>[e.issue_id,p(e)]));return t.map(e=>i.get(e)).filter(e=>!!e)})}var T=e.i(492952);let x="global";function A(e){let t=String(e??"").trim().toLowerCase();return t?`project:${t}`:x}function N(e){t.default.mkdirSync(e,{recursive:!0})}function R(e,i){N(s.default.dirname(e));let n=`${e}.tmp-${process.pid}-${Date.now()}`;t.default.writeFileSync(n,i,"utf8"),t.default.renameSync(n,e)}function S(e){return{id:e.id,identifier:e.identifier,title:e.title,url:e.url,status:e.status,assignee:e.assignee,updatedAt:e.updatedAt}}function I(e){return{...S(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 L(e={}){let t,a=(0,n.getLinearClient)();if(!a)throw Error("Not connected");let r=await a.viewer,l=Date.now(),u=new Date(l).toISOString(),o=0,d=!0,c=[];for(;o<500;){let e=500-o,s=await a.issues({first:Math.min(100,e),after:t,orderBy:"updatedAt"}),i=await Promise.all(s.nodes.map(async e=>{let[t,s,i,n]=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:i?.id??null,teamName:i?.name??null,teamKey:i?.key??null,cycleId:n?.id??null,cycleName:n?.name??null,cycleNumber:n?.number??null,updatedAt:e.updatedAt}}));if(c.push(...i),o+=i.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 g(x,c.length,l);let p=A(e.projectSlug);return p!==x&&await g(p,c.length,l),!function(e,t,n){let a=function(e){let t=T.vaultStore.getRootDir(),i=String(e??"").trim();if(i){let e=T.vaultStore.getProjectWithRepos(i),n=e?.slug??i;return s.default.join(t,n,"issues")}return s.default.join(t,"_global","Linear","issues")}(n);N(a);let r=["# Linear Issues","",`Last pulled: ${t}`,""];for(let n of e){let e=s.default.join(a,w(n.identifier,n.id));!function(e,t,s){let n=(0,i.dump)(t,{lineWidth:120,noRefs:!0,sortKeys:!0}).trimEnd(),a=String(s||"").replace(/\r\n/g,"\n").split("\n").map(e=>e.replace(/\s+$/g,"")).join("\n").trim();R(e,a?`---
|
|
138
|
+
${n}
|
|
139
|
+
---
|
|
140
|
+
${a}
|
|
141
|
+
`:`---
|
|
142
|
+
${n}
|
|
143
|
+
---
|
|
144
|
+
`)}(s.default.join(e,"README.md"),{type:"linear-issue",issue_id:n.id,identifier:n.identifier,title:n.title,status:n.status,assignee_id:n.assigneeId??null,assignee_name:n.assignee??null,assignee_email:n.assigneeEmail??null,team_id:n.teamId??null,team_name:n.teamName??null,team_key:n.teamKey??null,cycle_id:n.cycleId??null,cycle_name:n.cycleName??null,cycle_number:n.cycleNumber??null,url:n.url??null,updated_at:n.updatedAt,pulled_at:t},[`# ${n.identifier}: ${n.title}`,"",`- Status: ${n.status}`,`- Assignee: ${n.assignee??"Unassigned"}`,n.teamName?`- Team: ${n.teamName}`:null,n.cycleName||null!=n.cycleNumber?`- Cycle: ${n.cycleName??`Cycle ${n.cycleNumber}`}`:null,`- Updated in Linear: ${n.updatedAt}`,`- Pulled locally: ${t}`,n.url?`- URL: ${n.url}`:null,"","## Description","",n.description?.trim()||"_No description provided._"].filter(e=>null!==e).join("\n")),r.push(`- [${n.identifier}](${encodeURIComponent(w(n.identifier,n.id))}/README.md) - ${n.title} (${n.status})`)}R(s.default.join(a,"_index.md"),`${r.join("\n")}
|
|
145
|
+
`)}(c,u,e.projectSlug),{issueCount:c.length,complete:d,pulledAt:u}}async function v(e={}){let t=!!e.refresh,s=A(e.projectSlug);if(!t){let[e,t]=await Promise.all([y(),_(s)]);if(e>0&&t)return null}return(0,n.getLinearClient)()?L({projectSlug:e.projectSlug}):null}async function C(e={}){let[t,s]=await Promise.all([E(e),_(x)]);return{issues:t.issues.map(S),pageInfo:t.pageInfo,syncState:{lastPulledAt:s?.lastPulledAt??null}}}async function b(e){return(await h(e)).map(I)}e.s(["ensureLinearIssueCache",()=>v,"getLinearIssueContexts",()=>b,"listLinearIssueSummaries",()=>C],832674)},107194,e=>{"use strict";var t=e.i(747909),s=e.i(174017),i=e.i(996250),n=e.i(759756),a=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),g=e.i(10372),_=e.i(193695);e.i(52474);var y=e.i(600220),E=e.i(89171),h=e.i(832674),T=e.i(841897);function x(e){return e?.trim()||void 0}async function A(e){let t=e.nextUrl.searchParams,s=x(t.get("status")),i=x(t.get("search")),n=x(t.get("teamId")),a=x(t.get("assigneeId")),r=x(t.get("cursor")),l=x(t.get("cycleId")),u=x(t.get("projectSlug")),o="true"===t.get("assignedToMe"),d="true"===t.get("refresh"),c=Number(t.get("limit")??"50");try{let e=await (0,h.ensureLinearIssueCache)({refresh:d,projectSlug:u}),t=await (0,h.listLinearIssueSummaries)({status:s,search:i,assigneeId:a,assignedToMe:o,teamId:n,cycleId:l,cursor:r,limit:c});if(!t.syncState.lastPulledAt&&!e&&!(0,T.getLinearClient)())return E.NextResponse.json({error:"Not connected"},{status:401});return E.NextResponse.json({issues:t.issues,pageInfo:t.pageInfo,syncState:t.syncState,refreshedAt:e?.pulledAt??null})}catch(e){return E.NextResponse.json({error:e.message??"Failed to fetch issues"},{status:500})}}e.s(["GET",()=>A,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],159699);var N=e.i(159699);let R=new t.AppRouteRouteModule({definition:{kind:s.RouteKind.APP_ROUTE,page:"/api/linear/issues/route",pathname:"/api/linear/issues",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/linear/issues/route.ts",nextConfigOutput:"standalone",userland:N}),{workAsyncStorage:S,workUnitAsyncStorage:I,serverHooks:w}=R;function L(){return(0,i.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:I})}async function v(e,t,i){R.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let E="/api/linear/issues/route";E=E.replace(/\/index$/,"")||"/";let h=await R.prepare(e,t,{srcPage:E,multiZoneDraftMode:!1});if(!h)return t.statusCode=400,t.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve()),null;let{buildId:T,params:x,nextConfig:A,parsedUrl:N,isDraftMode:S,prerenderManifest:I,routerServerContext:w,isOnDemandRevalidate:L,revalidateOnlyGenerated:v,resolvedPathname:C,clientReferenceManifest:b,serverActionsManifest:O}=h,$=(0,l.normalizeAppPath)(E),j=!!(I.dynamicRoutes[$]||I.routes[C]),k=async()=>((null==w?void 0:w.render404)?await w.render404(e,t,N,!1):t.end("This page could not be found"),null);if(j&&!S){let e=!!I.routes[C],t=I.dynamicRoutes[$];if(t&&!1===t.fallback&&!e){if(A.experimental.adapterPath)return await k();throw new _.NoFallbackError}}let q=null;!j||R.isDev||S||(q="/index"===(q=C)?"/":q);let D=!0===R.isDev||!j,P=j&&!D;O&&b&&(0,r.setManifestsSingleton)({page:E,clientReferenceManifest:b,serverActionsManifest:O});let M=e.method||"GET",U=(0,a.getTracer)(),F=U.getActiveScopeSpan(),X={params:x,prerenderManifest:I,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:A.cacheLife,waitUntil:i.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,s,i,n)=>R.onRequestError(e,t,i,n,w)},sharedContext:{buildId:T}},B=new u.NodeNextRequest(e),G=new u.NodeNextResponse(t),K=o.NextRequestAdapter.fromNodeNextRequest(B,(0,o.signalFromNodeResponse)(t));try{let r=async e=>R.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 i=s.get("next.route");if(i){let t=`${M} ${i}`;e.setAttributes({"next.route":i,"http.route":i,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${E}`)}),l=!!(0,n.getRequestMeta)(e,"minimalMode"),u=async n=>{var a,u;let o=async({previousCacheEntry:s})=>{try{if(!l&&L&&v&&!s)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await r(n);e.fetchMetrics=X.renderOpts.fetchMetrics;let u=X.renderOpts.pendingWaitUntil;u&&i.waitUntil&&(i.waitUntil(u),u=void 0);let o=X.renderOpts.collectedTags;if(!j)return await (0,p.sendResponse)(B,G,a,X.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(a.headers);o&&(t[g.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>=g.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,i=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:X.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:s,expire:i}}}}catch(t){throw(null==s?void 0:s.isStale)&&await R.onRequestError(e,t,{routerKind:"App Router",routePath:E,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:P,isOnDemandRevalidate:L})},!1,w),t}},d=await R.handleResponse({req:e,nextConfig:A,cacheKey:q,routeKind:s.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:I,isRoutePPREnabled:!1,isOnDemandRevalidate:L,revalidateOnlyGenerated:v,responseGenerator:o,waitUntil:i.waitUntil,isMinimalMode:l});if(!j)return null;if((null==d||null==(a=d.value)?void 0:a.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",L?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let _=(0,m.fromNodeOutgoingHttpHeaders)(d.value.headers);return l&&j||_.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||_.get("Cache-Control")||_.set("Cache-Control",(0,f.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(B,G,new Response(d.value.body,{headers:_,status:d.value.status||200})),null};F?await u(F):await U.withPropagatedContext(e.headers,()=>U.trace(d.BaseServerSpan.handleRequest,{spanName:`${M} ${E}`,kind:a.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},u))}catch(t){if(t instanceof _.NoFallbackError||await R.onRequestError(e,t,{routerKind:"App Router",routePath:$,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:P,isOnDemandRevalidate:L})},!1,w),j)throw t;return await (0,p.sendResponse)(B,G,new Response(null,{status:500})),null}}e.s(["handler",()=>v,"patchFetch",()=>L,"routeModule",()=>R,"serverHooks",()=>w,"workAsyncStorage",()=>S,"workUnitAsyncStorage",()=>I],107194)}];
|
|
146
|
+
|
|
147
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__3b83b657._.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
module.exports=[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"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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 i(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function a(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",()=>i,"transactionFn",()=>a])},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"))},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"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},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 i="3.35.0",a=["json1"],s=["fts5"],l=["nfs","smb","cifs","efs","fuse.sshfs"];function o(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 d(d,u){let c=[],p=d.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,i)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${i}`,found:p.v,required:`>= ${i}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),a))o(d,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 s)o(d,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 i=n.default.resolve(t),{execSync:a}=e.r(233405);if("darwin"===r.default.platform()){let e=a(`df -T "${i}" 2>/dev/null || df "${i}"`,{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);f&&l.some(e=>f.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${u}' is on a network filesystem (${f})`,path:u,found:f,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(d,"journal_mode = wal"),(0,t.pragmaSet)(d,"foreign_keys = 1"),(0,t.pragmaSet)(d,"busy_timeout = 5000"),(0,t.pragmaSet)(d,"synchronous = 1"),(0,t.pragmaSet)(d,"cache_size = -64000");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(d,"journal_mode = DELETE");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(d,"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",()=>d])},
|
|
1
|
+
module.exports=[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"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},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 i(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function a(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",()=>i,"transactionFn",()=>a])},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"))},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"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},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 i="3.35.0",a=["json1"],s=["fts5"],l=["nfs","smb","cifs","efs","fuse.sshfs"];function o(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 d(d,u){let c=[],p=d.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,i)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${i}`,found:p.v,required:`>= ${i}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),a))o(d,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 s)o(d,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 i=n.default.resolve(t),{execSync:a}=e.r(233405);if("darwin"===r.default.platform()){let e=a(`df -T "${i}" 2>/dev/null || df "${i}"`,{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);f&&l.some(e=>f.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${u}' is on a network filesystem (${f})`,path:u,found:f,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(d,"journal_mode = wal"),(0,t.pragmaSet)(d,"foreign_keys = 1"),(0,t.pragmaSet)(d,"busy_timeout = 5000"),(0,t.pragmaSet)(d,"synchronous = 1"),(0,t.pragmaSet)(d,"cache_size = -64000");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(d,"journal_mode = DELETE");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(d,"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",()=>d])},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])},874533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},737175,e=>{"use strict";var t=e.i(902157),r=e.i(750227),n=e.i(874533),i=e.i(960447);let a=null,s=new Map;function l(e){return e.replace(/\s+/g," ").trim()}function o(e){return e.replace(/<br\s*\/?>/gi,"\n").replace(/<\/(p|h1|h2|h3|h4|h5|h6|li|tr|div)>/gi,"\n").replace(/<li[^>]*>/gi,"• ").replace(/<[^>]*>/g,"").replace(/&#x([0-9a-f]+);/gi,(e,t)=>{let r=Number.parseInt(t,16);return Number.isFinite(r)?String.fromCodePoint(r):e}).replace(/&#([0-9]+);/g,(e,t)=>{let r=Number.parseInt(t,10);return Number.isFinite(r)?String.fromCodePoint(r):e}).replace(/"/g,'"').replace(/'/g,"'").replace(/'/g,"'").replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&").replace(/ /g," ").replace(/\r/g,"").replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n").trim()}function d(e){return"claude"===e||"codex"===e||"gemini"===e||"zai"===e?e:null}function u(e){return"claude"===e?"claude-code":"codex"===e?"codex":"gemini"===e?"gemini-cli":"zai"===e?"claude-code":null}function c(e){return r.default.join(process.cwd(),".agents","skills",e,"SKILL.md")}function p(){let e=r.default.join(process.cwd(),".agents","skills");return t.default.existsSync(e)?t.default.readdirSync(e,{withFileTypes:!0}).filter(n=>n.isDirectory()&&t.default.existsSync(r.default.join(e,n.name,"SKILL.md"))).map(e=>e.name).sort((e,t)=>e.localeCompare(t)):[]}async function f(){if(a&&Date.now()-a.loadedAt<36e5)return a.data;try{let e=await fetch("https://skills.sh");if(!e.ok)return[];let t=await e.text(),r=t.indexOf("initialSkills");if(-1===r)return[];let n=t.indexOf(":[",r);if(-1===n)return[];let i=n+1,s=0,l=i;for(let e=i;e<t.length;e+=1)if("["===t[e]&&(s+=1),"]"===t[e]&&(s-=1),0===s){l=e+1;break}let o=t.slice(i,l).replace(/\\"/g,'"'),d=JSON.parse(o).map((e,t)=>({rank:t+1,name:e.name??e.skillId??"",skillId:e.skillId??e.name??"",repo:e.source??"",installs:"number"==typeof e.installs?e.installs:0}));return a={loadedAt:Date.now(),data:d},d}catch{return[]}}async function m(e,t){let r=`${e}/${t}`,n=s.get(r);if(n&&Date.now()-n.loadedAt<36e5)return n.data;try{let n=await fetch(`https://skills.sh/${e}/${t}`);if(!n.ok)return null;let i=await n.text(),a=function(e){let t=e.match(/<div class="prose[^>]*>([\s\S]*?)<\/div>\s*<\/div>\s*<\/div>\s*<\/div>\s*<div class=" lg:col-span-3">/i);if(t?.[1])return t[1];let r=e.indexOf('<div class="prose');if(-1===r)return"";let n=e.indexOf(">",r);if(-1===n)return"";let i=e.indexOf('<div class=" lg:col-span-3">',n);return -1===i?"":e.slice(n+1,i).replace(/\s*<\/div>\s*$/i,"").trim()}(i),d=a.match(/<h1[^>]*>([\s\S]*?)<\/h1>/i),u=d?l(o(d[1])):"",c=(d?a.slice((d.index??0)+d[0].length):a).match(/<p[^>]*>([\s\S]*?)<\/p>/i),p=c?l(o(c[1])):"",f=[],m=a.match(/<h2[^>]*>\s*When to Use This Skill\s*<\/h2>([\s\S]*?)(?:<h2[^>]*>|$)/i);if(m){let e=m[1].match(/<ul[^>]*>([\s\S]*?)<\/ul>/i);if(e){let t=/<li[^>]*>([\s\S]*?)<\/li>/gi,r=null;for(;null!==(r=t.exec(e[1]));){let e=l(o(r[1]));e&&f.push(e)}}}let h=i.match(/Weekly\s+Installs[\s\S]{0,240}?>([\d,.]+[KkMm]?)<\/div>/i)?.[1]??"",g=i.match(/First\s+[Ss]een[\s\S]{0,240}?>([A-Za-z]{3}\s+\d{1,2},\s+\d{4})<\/div>/i)?.[1]??"",_=i.match(/\\"command\\":\\"((?:[^"\\]|\\.)*)\\"/),x=_?_[1].replace(/\\"/g,'"').replace(/\\\\/g,"\\").trim():`npx skills add ${e} --skill ${t}`,S={title:u,description:p,whenToUse:f,weeklyInstalls:h,firstSeen:g,installCommand:x};return s.set(r,{loadedAt:Date.now(),data:S}),S}catch{return null}}function h(e){(0,i.getSQLiteDb)().prepare(`INSERT INTO skill_learning_history
|
|
2
2
|
(provider, repo, skill_id, skill_label, status, command, error, run_started_at, run_completed_at, created_at, updated_at)
|
|
3
3
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(e.provider,e.repo,e.skill_id,e.skill_label,e.status,e.command,e.error,e.run_started_at,e.run_completed_at,e.created_at,e.updated_at)}function g(e=50,t){let r=(0,i.getSQLiteDb)(),n=[],a="",s=t?d(t):null;return s&&(a="WHERE provider = ?",n.push(s)),n.push(e),r.prepare(`SELECT id, provider, repo, skill_id, skill_label, status, command, error, run_started_at, run_completed_at, created_at, updated_at
|
|
4
4
|
FROM skill_learning_history
|
|
@@ -12,4 +12,4 @@ module.exports=[666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:c
|
|
|
12
12
|
VALUES (?, ?, ?, ?)
|
|
13
13
|
ON CONFLICT(agent_id, repo, skill_id) DO UPDATE SET condition = excluded.condition`).run(e,t.repo,t.skillId,t.condition);return i(e)}function s(e){return e.toLowerCase().replace(/[^a-z0-9]+/g," ").replace(/\s+/g," ").trim()}function l(e){let t=new Set,r=[];for(let n of s(e).split(" "))n.length<4||t.has(n)||(t.add(n),r.push(n));return r}function o(e,r,i){let a=[];for(let o of e){if(!function(e,t){let r=s(t);if(!r)return!1;if((e.condition?e.condition.split(/\n|,|;|\|/g).map(e=>s(e)).filter(e=>e.length>=4):[]).some(e=>r.includes(e)))return!0;let n=e.repo.split("/").filter(Boolean).pop()??e.repo;return[...l(e.skillId),...l(n)].some(e=>r.includes(e))}(o,r))continue;let e=(0,n.installedSkillPath)(o.skillId);(t.default.existsSync(e)||(0,n.installSkill)({repo:o.repo,skillId:o.skillId,providers:[i]}).ok)&&a.push({file:e,...o.condition?{condition:o.condition}:{}})}return a}e.s(["getAgentSkillBindings",()=>i,"resolveBoundSkillFiles",()=>o,"setAgentSkillBindings",()=>a])},624072,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),i=e.i(759756),a=e.i(561916),s=e.i(174677),l=e.i(869741),o=e.i(316795),d=e.i(487718),u=e.i(995169),c=e.i(47587),p=e.i(666012),f=e.i(570101),m=e.i(626937),h=e.i(10372),g=e.i(193695);e.i(52474);var _=e.i(600220),x=e.i(522734),S=e.i(814747),v=e.i(446786),k=e.i(762294),E=e.i(149953),R=e.i(949041);let w=process.env.AGX_API_URL||"http://localhost:8080",y=(0,S.join)((0,v.homedir)(),".agx","agents");async function A(e){try{let t=await e.json(),r=Array.isArray(t.agentIds)?t.agentIds:[],n=!1!==t.includeSelf;if(0===r.length)return Response.json({error:"No agents selected"},{status:400});let i=(await (0,k.getAgents)(R.LOCAL_USER.id)).filter(e=>r.includes(e.id)),a=await Promise.all(i.map(async e=>({id:e.id,name:e.name,provider:e.provider||"claude",model:e.model||null,color:e.color||"#6B7280",identity:e.description||null,voice:e.voice||null,seed:e.seed||null,identityFile:null,skills:(await (0,k.getAgentSkills)(e.id)).map(e=>({file:e.file,condition:e.condition??""})),skillBindings:await (0,E.getAgentSkillBindings)(e.id),variables:{},self:n?function(e){let t=(0,S.join)(y,e,"self.md");if(!(0,x.existsSync)(t))return null;let r=(0,x.readFileSync)(t,"utf-8"),n=r.match(/^---[\s\S]*?---\s*\n?([\s\S]*)$/);return n?n[1].trim():r.trim()}(e.id):null}))),s=JSON.stringify({version:1,exportedAt:new Date().toISOString(),agents:a,projects:[]}),l=await fetch(`${w}/api/v1/agent/specs`,{method:"POST",headers:{"Content-Type":"application/json","X-User-ID":t.userId||"anonymous"},body:JSON.stringify({payload:s})});if(!l.ok){let e=await l.text();return Response.json({error:`agx-api error: ${e}`},{status:l.status})}let o=await l.json();return Response.json(o)}catch(e){return console.error("Error sharing agent spec:",e),Response.json({error:"Failed to share"},{status:500})}}e.s(["POST",()=>A,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],790326);var b=e.i(790326);let C=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/agent-specs/route",pathname:"/api/agent-specs",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/agent-specs/route.ts",nextConfigOutput:"standalone",userland:b}),{workAsyncStorage:I,workUnitAsyncStorage:L,serverHooks:O}=C;function T(){return(0,n.patchFetch)({workAsyncStorage:I,workUnitAsyncStorage:L})}async function D(e,t,n){C.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let x="/api/agent-specs/route";x=x.replace(/\/index$/,"")||"/";let S=await C.prepare(e,t,{srcPage:x,multiZoneDraftMode:!1});if(!S)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:v,params:k,nextConfig:E,parsedUrl:R,isDraftMode:w,prerenderManifest:y,routerServerContext:A,isOnDemandRevalidate:b,revalidateOnlyGenerated:I,resolvedPathname:L,clientReferenceManifest:O,serverActionsManifest:T}=S,D=(0,l.normalizeAppPath)(x),N=!!(y.dynamicRoutes[D]||y.routes[L]),$=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,R,!1):t.end("This page could not be found"),null);if(N&&!w){let e=!!y.routes[L],t=y.dynamicRoutes[D];if(t&&!1===t.fallback&&!e){if(E.experimental.adapterPath)return await $();throw new g.NoFallbackError}}let j=null;!N||C.isDev||w||(j="/index"===(j=L)?"/":j);let q=!0===C.isDev||!N,P=N&&!q;T&&O&&(0,s.setManifestsSingleton)({page:x,clientReferenceManifest:O,serverActionsManifest:T});let M=e.method||"GET",U=(0,a.getTracer)(),F=U.getActiveScopeSpan(),B={params:k,prerenderManifest:y,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:q,incrementalCache:(0,i.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:E.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,i)=>C.onRequestError(e,t,n,i,A)},sharedContext:{buildId:v}},H=new o.NodeNextRequest(e),G=new o.NodeNextResponse(t),K=d.NextRequestAdapter.fromNodeNextRequest(H,(0,d.signalFromNodeResponse)(t));try{let s=async e=>C.handle(K,B).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=U.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${M} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${x}`)}),l=!!(0,i.getRequestMeta)(e,"minimalMode"),o=async i=>{var a,o;let d=async({previousCacheEntry:r})=>{try{if(!l&&b&&I&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await s(i);e.fetchMetrics=B.renderOpts.fetchMetrics;let o=B.renderOpts.pendingWaitUntil;o&&n.waitUntil&&(n.waitUntil(o),o=void 0);let d=B.renderOpts.collectedTags;if(!N)return await (0,p.sendResponse)(H,G,a,B.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(a.headers);d&&(t[h.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==B.renderOpts.collectedRevalidate&&!(B.renderOpts.collectedRevalidate>=h.INFINITE_CACHE)&&B.renderOpts.collectedRevalidate,n=void 0===B.renderOpts.collectedExpire||B.renderOpts.collectedExpire>=h.INFINITE_CACHE?void 0:B.renderOpts.collectedExpire;return{value:{kind:_.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await C.onRequestError(e,t,{routerKind:"App Router",routePath:x,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:P,isOnDemandRevalidate:b})},!1,A),t}},u=await C.handleResponse({req:e,nextConfig:E,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:y,isRoutePPREnabled:!1,isOnDemandRevalidate:b,revalidateOnlyGenerated:I,responseGenerator:d,waitUntil:n.waitUntil,isMinimalMode:l});if(!N)return null;if((null==u||null==(a=u.value)?void 0:a.kind)!==_.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(o=u.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});l||t.setHeader("x-nextjs-cache",b?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),w&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,f.fromNodeOutgoingHttpHeaders)(u.value.headers);return l&&N||g.delete(h.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,m.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(H,G,new Response(u.value.body,{headers:g,status:u.value.status||200})),null};F?await o(F):await U.withPropagatedContext(e.headers,()=>U.trace(u.BaseServerSpan.handleRequest,{spanName:`${M} ${x}`,kind:a.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},o))}catch(t){if(t instanceof g.NoFallbackError||await C.onRequestError(e,t,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:P,isOnDemandRevalidate:b})},!1,A),N)throw t;return await (0,p.sendResponse)(H,G,new Response(null,{status:500})),null}}e.s(["handler",()=>D,"patchFetch",()=>T,"routeModule",()=>C,"serverHooks",()=>O,"workAsyncStorage",()=>I,"workUnitAsyncStorage",()=>L],624072)}];
|
|
14
14
|
|
|
15
|
-
//# sourceMappingURL=%5Broot-of-the-server%
|
|
15
|
+
//# sourceMappingURL=%5Broot-of-the-server%5D__3bf516b6._.js.map
|