@mndrk/agx 2.4.9 → 2.4.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cloud-runtime/standalone/apps/local/.next/BUILD_ID +1 -1
- package/cloud-runtime/standalone/apps/local/.next/app-path-routes-manifest.json +7 -0
- package/cloud-runtime/standalone/apps/local/.next/build-manifest.json +5 -5
- package/cloud-runtime/standalone/apps/local/.next/prerender-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/routes-manifest.json +47 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_tree.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_full.segment.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_index.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_tree.segment.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/[id]/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/active-agents/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/active-agents/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/file-search/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/diff/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/diff/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/diff/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/diff/route.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/diff/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/diff/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/diff/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/repos/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/repos/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/repos/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/repos/route.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/repos/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/repos/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/repos/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/refresh/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/refresh/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/refresh/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/refresh/route.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/refresh/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/refresh/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/refresh/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/rescan/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/rescan/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/rescan/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/rescan/route.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/rescan/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/rescan/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/rescan/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/route.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/git/workspaces/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/issues/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/[id]/route/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/[id]/route/build-manifest.json +11 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/[id]/route/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/[id]/route.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/[id]/route.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/[id]/route.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/[id]/route_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/context/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/for-target/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/link/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/prs/seed/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/repos/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/github/repos/sync/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/messages/[id]/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/messages/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/processes/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/processes/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/check/[id]/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/check/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/available/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/history/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/status/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/status/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/summarize/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/system/db-status/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/system/db-status/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/active-agents/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/active-agents/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/auth/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/callback/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/groups/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/activity/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/recap/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/mcp-setup/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/bulk/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/options/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/[id]/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/scripted/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/stats/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/stats/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/connections/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.rsc +6 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_full.segment.rsc +6 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_index.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_tree.segment.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_full.segment.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_index.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/_tree.segment.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github/select-repos/__PAGE__.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github/select-repos.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations/github.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/integrations/github/select-repos.segments/integrations.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/notifications/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page/app-paths-manifest.json +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page/build-manifest.json +18 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page/next-font-manifest.json +13 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page/react-loadable-manifest.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page/server-reference-manifest.json +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page.js.map +5 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page.js.nft.json +1 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/[prId]/page_client-reference-manifest.js +2 -0
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/prs/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.rsc +6 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_full.segment.rsc +6 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_index.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_tree.segment.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.rsc +6 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_full.segment.rsc +6 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_index.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_tree.segment.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page/build-manifest.json +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page/next-font-manifest.json +3 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js.nft.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status/page_client-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.rsc +6 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_full.segment.rsc +6 -4
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_head.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_index.segment.rsc +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_tree.segment.rsc +5 -3
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status/__PAGE__.segment.rsc +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status.segment.rsc +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/app-paths-manifest.json +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__037eb67e._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__97e7a600._.js → [root-of-the-server]__0ce28b4a._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__2564bd1e._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__26904897._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__f48224f7._.js → [root-of-the-server]__273384ad._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__bdc396a9._.js → [root-of-the-server]__2d6f22a3._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__af70f062._.js → [root-of-the-server]__3a038592._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__9cb1dc55._.js → [root-of-the-server]__3b27260f._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__1321970e._.js → [root-of-the-server]__5da8d281._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__92d34a52._.js → [root-of-the-server]__69a60d71._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__66437bd3._.js → [root-of-the-server]__6edb829d._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__8917bc4c._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__870fac73._.js → [root-of-the-server]__8cb4fb94._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__95298612._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__aa1b171a._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__b719a2ed._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__94f42197._.js → [root-of-the-server]__be9b56bb._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c57c0958._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__cce177d8._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__e33b34ce._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__61c40dc9._.js → [root-of-the-server]__ee43b5b0._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_1d99e7a5._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_22ab9b7c._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_56a2544c._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_5843a1a1._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_git_diff_route_actions_5ed8f528.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_git_repos_route_actions_24bb70fb.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_git_workspaces_route_actions_2ffcb8e1.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_github_prs_[id]_route_actions_97f96f83.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_bd72806a._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_6bd3d8a2._.js +12 -12
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_cli-runner_ts_ead5489c._.js +12 -12
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_d268503a._.js +12 -12
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_orchestrator_chat-processor_ts_46384f36._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_git_workspaces_refresh_route_actions_6586e386.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_git_workspaces_rescan_route_actions_2566b872.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__14448535._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__17c701d2._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__ce586680._.js → [root-of-the-server]__24007358._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__263b7091._.js +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__2c4531d0._.js → [root-of-the-server]__6e4038bb._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__7a31a76d._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__9193284e._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__5f31e40b._.js → [root-of-the-server]__af9b12ac._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__c027b3e3._.js +15 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__c0bc6058._.js +7 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__9434d6d7._.js → [root-of-the-server]__c2331483._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__d8f968ee._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{_a0f42923._.js → _f2cf58ea._.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_4d3f9c1e._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_6d8c811a._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_988d29c0._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_folders_page_tsx_72fb68e5._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_page_tsx_76330306._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_page_tsx_b5cec607._.js +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_setup_page_tsx_9a67cfaf._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_b87f08ce._.js +4 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_c012eb07._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_ProjectModal_tsx_c447494c._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_TrackerBoard_tsx_98970bab._.js +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_prs_review_6ac47c7c._.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_eec36ab6._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_fed01721._.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/ebff2__next-internal_server_app_projects_[slug]_prs_[prId]_page_actions_37d43e50.js +3 -0
- package/cloud-runtime/standalone/apps/local/.next/server/functions-config-manifest.json +6 -0
- package/cloud-runtime/standalone/apps/local/.next/server/middleware-build-manifest.js +3 -3
- package/cloud-runtime/standalone/apps/local/.next/server/middleware-manifest.json +5 -5
- package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.json +93 -29
- package/cloud-runtime/standalone/apps/local/.next/server/pages/404.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/pages/500.html +2 -2
- package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.js +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/16786eff1b844fce.css +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/23b7c6b08d8bf807.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/38a2210cf8c5fa16.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{d6a9cc66254693b8.js → 46add4300ec4ed84.js} +1 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/4f3bd9585037d960.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/60239e52ecfd3f7e.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{8b87c2521c519a1f.js → 6135e7752be76b7e.js} +11 -11
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/731deba285de6535.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/7ca9570f1f269043.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/86c552479b09e1f3.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/8f6587b3b3255b54.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/9ac96f1f33a266f9.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/a2eeffc281bd68bc.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/a68ffbf383609000.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{c9a2c4b55bb76f4f.js → b27f760849f14f13.js} +5 -5
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/b2c704fe1711d660.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/b53629835d2a70f0.js +16 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/b59bb2518194866e.css +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/bb99cb03648e6fae.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{72b4109642bf21f4.js → cb34ff86458b2477.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/dc12676eea40fd39.css +4 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/de6617e175bb536b.js +1 -0
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/{turbopack-87f23485587f08c3.js → turbopack-90109c6adbc88193.js} +2 -2
- package/cloud-runtime/standalone/apps/local/.next/static/media/04c5164763c40239-s.690580e8.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/051742360c26797e-s.p.102b7f24.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/0ee4b8f05dcd9fee-s.45e2741a.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/13ae3e01af63c0ce-s.3ec27879.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/26f284dcc38c84c0-s.303a03d6.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/6a5386fd6038edbe-s.719084df.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/7e7f32a39836f228-s.0b4edfe7.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/9eba4caf7edd2921-s.57f6a4a3.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/ab57efd000576a30-s.p.37015d44.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/b8d1f0a88dfecec3-s.cf53ec14.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/f285987c35230861-s.b3721d2b.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/f6752bd2263820da-s.95b8f539.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/.next/static/media/fa39153a3fc630ba-s.bff0868b.woff2 +0 -0
- package/cloud-runtime/standalone/apps/local/app/api/git/diff/route.ts +54 -0
- package/cloud-runtime/standalone/apps/local/app/api/git/repos/route.ts +47 -0
- package/cloud-runtime/standalone/apps/local/app/api/git/workspaces/refresh/route.ts +52 -0
- package/cloud-runtime/standalone/apps/local/app/api/git/workspaces/rescan/route.ts +23 -0
- package/cloud-runtime/standalone/apps/local/app/api/git/workspaces/route.ts +46 -0
- package/cloud-runtime/standalone/apps/local/app/api/github/prs/[id]/route.ts +28 -0
- package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/route.ts +4 -1
- package/cloud-runtime/standalone/apps/local/app/api/projects/payload.ts +23 -9
- package/cloud-runtime/standalone/apps/local/app/api/projects/route.ts +4 -1
- package/cloud-runtime/standalone/apps/local/app/layout.tsx +14 -2
- package/cloud-runtime/standalone/apps/local/app/page.tsx +2 -2
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/page.tsx +1 -1
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/prs/[prId]/page.tsx +13 -0
- package/cloud-runtime/standalone/apps/local/app/projects/[slug]/prs/page.tsx +5 -4
- package/cloud-runtime/standalone/apps/local/app/projects/page.tsx +7 -3
- package/cloud-runtime/standalone/apps/local/components/ProjectModal.tsx +111 -91
- package/cloud-runtime/standalone/apps/local/components/TrackerBoard.tsx +2 -2
- package/cloud-runtime/standalone/apps/local/components/project-repo-validation.ts +65 -0
- package/cloud-runtime/standalone/apps/local/components/projects/FoldersView.tsx +27 -9
- package/cloud-runtime/standalone/apps/local/components/projects/RepoPathCombobox.tsx +301 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/AgentChip.tsx +61 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/CommitRail.tsx +149 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/DiffPane.tsx +294 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/FilesPane.tsx +216 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/PrReviewView.tsx +68 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/ReviewLayout.tsx +148 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/StatusBar.tsx +53 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/TopBar.tsx +137 -0
- package/cloud-runtime/standalone/apps/local/components/prs/review/review.module.css +112 -0
- package/cloud-runtime/standalone/apps/local/components/setup/McpSetupStep.tsx +1 -1
- package/cloud-runtime/standalone/apps/local/components/setup/ProviderStep.tsx +2 -2
- package/cloud-runtime/standalone/apps/local/components/thread/WorkspaceSidebar.tsx +6 -2
- package/cloud-runtime/standalone/apps/local/components/tracker/LinkedPrsSection.tsx +4 -3
- package/cloud-runtime/standalone/apps/local/components/tracker/TicketPanel.tsx +111 -25
- package/cloud-runtime/standalone/apps/local/components/tracker/TicketWorkspaceView.tsx +472 -0
- package/cloud-runtime/standalone/apps/local/components/tracker/WorkspacePicker.tsx +338 -0
- package/cloud-runtime/standalone/apps/local/components/tracking/TrackerSetup.tsx +2 -2
- package/cloud-runtime/standalone/apps/local/hooks/useProviders.ts +1 -0
- package/cloud-runtime/standalone/apps/local/lib/cli-runner.ts +20 -0
- package/cloud-runtime/standalone/apps/local/lib/diff-parser.ts +56 -0
- package/cloud-runtime/standalone/apps/local/lib/gh-pr-cli.ts +198 -0
- package/cloud-runtime/standalone/apps/local/lib/git-diff-cli.ts +232 -0
- package/cloud-runtime/standalone/apps/local/lib/git-repo-index.ts +144 -0
- package/cloud-runtime/standalone/apps/local/lib/git-workspaces.ts +187 -0
- package/cloud-runtime/standalone/apps/local/lib/provider-clis.ts +12 -1
- package/cloud-runtime/standalone/apps/local/lib/repo-suggestions.ts +104 -0
- package/cloud-runtime/standalone/apps/local/lib/stream-multiplexer.ts +1 -0
- package/cloud-runtime/standalone/apps/local/lib/types.ts +1 -1
- package/cloud-runtime/standalone/apps/local/server.ts +14 -0
- package/cloud-runtime/standalone/apps/local/src/graph/work-dispatcher.ts +1 -0
- package/cloud-runtime/standalone/apps/local/state/windowState.ts +20 -0
- package/cloud-runtime/standalone/apps/local/worker/index.js +23 -2
- package/lib/cli/runCli.js +20 -4
- package/package.json +1 -1
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__4ea9a658._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__6465e9c6._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__8ddbf4ca._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__5187dece._.js +0 -15
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__636799fb._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__d08d7899._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__e02a457c._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__e3a1fef0._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_16eaf7ae._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_620cb123._.js +0 -3
- package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_ae1a134f._.js +0 -7
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/0d22a723b9b96e65.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/114ea1bfd6907330.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/1585dd5f9ec4866a.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/1bc8cc9cbb99c1ed.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/2473c16c0c2f6b5f.css +0 -2
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/2586c0baa16e9a0d.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/3fce625820bc2bd4.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/67b36c70b72e0e10.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/6d8a7494a0cea7a0.css +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/90dd4ab03ab145d1.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/aa3029ae0b62f930.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/c352706a0ad7e35d.js +0 -1
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/c5436b2b7e8f0ca9.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/cf33cb29946990e3.js +0 -16
- package/cloud-runtime/standalone/apps/local/.next/static/chunks/e3bdd1e0f385114e.js +0 -1
- /package/cloud-runtime/standalone/apps/local/.next/static/{EGpM0P8xAEWKkoW-3Ib69 → 5TAcMQcrkt4mBnsqrfw6B}/_buildManifest.js +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{EGpM0P8xAEWKkoW-3Ib69 → 5TAcMQcrkt4mBnsqrfw6B}/_clientMiddlewareManifest.json +0 -0
- /package/cloud-runtime/standalone/apps/local/.next/static/{EGpM0P8xAEWKkoW-3Ib69 → 5TAcMQcrkt4mBnsqrfw6B}/_ssgManifest.js +0 -0
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
import type { ProjectInput, ProjectRepoInput, ProjectUpdatePayload } from "@/lib/db-adapter.interface";
|
|
2
2
|
|
|
3
|
+
export class InvalidProjectPayloadError extends Error {
|
|
4
|
+
constructor(message: string) {
|
|
5
|
+
super(message);
|
|
6
|
+
this.name = "InvalidProjectPayloadError";
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
|
|
3
10
|
function toOptionalString(value: unknown): string | undefined {
|
|
4
11
|
if (typeof value !== "string") return undefined;
|
|
5
12
|
const trimmed = value.trim();
|
|
@@ -23,16 +30,28 @@ function parseProjectRepos(value: unknown): ProjectRepoInput[] | undefined {
|
|
|
23
30
|
if (!Array.isArray(value)) return undefined;
|
|
24
31
|
|
|
25
32
|
const repos: ProjectRepoInput[] = [];
|
|
26
|
-
value.forEach((item) => {
|
|
33
|
+
value.forEach((item, index) => {
|
|
27
34
|
if (!item || typeof item !== "object") return;
|
|
28
35
|
|
|
29
36
|
const rawName = (item as Record<string, unknown>).name;
|
|
37
|
+
const rawPath = (item as Record<string, unknown>).path;
|
|
30
38
|
const name = typeof rawName === "string" ? rawName.trim() : "";
|
|
31
|
-
|
|
39
|
+
const path = typeof rawPath === "string" ? rawPath.trim() : "";
|
|
40
|
+
|
|
41
|
+
if (!name && !path) return;
|
|
42
|
+
if (!name) {
|
|
43
|
+
throw new InvalidProjectPayloadError(
|
|
44
|
+
`Folder name is required for repos[${index}] when a local path is provided`
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
if (!path) {
|
|
48
|
+
throw new InvalidProjectPayloadError(
|
|
49
|
+
`Local path is required for repos[${index}] when a folder name is provided`
|
|
50
|
+
);
|
|
51
|
+
}
|
|
32
52
|
|
|
33
53
|
const repo: Partial<ProjectRepoInput> = { name };
|
|
34
54
|
const rawId = (item as Record<string, unknown>).id;
|
|
35
|
-
const rawPath = (item as Record<string, unknown>).path;
|
|
36
55
|
const rawGitUrl = (item as Record<string, unknown>).git_url;
|
|
37
56
|
const rawNotes = (item as Record<string, unknown>).notes;
|
|
38
57
|
|
|
@@ -40,12 +59,7 @@ function parseProjectRepos(value: unknown): ProjectRepoInput[] | undefined {
|
|
|
40
59
|
repo.id = rawId.trim();
|
|
41
60
|
}
|
|
42
61
|
|
|
43
|
-
|
|
44
|
-
repo.path = rawPath.trim();
|
|
45
|
-
} else {
|
|
46
|
-
// Path is mandatory
|
|
47
|
-
return;
|
|
48
|
-
}
|
|
62
|
+
repo.path = path;
|
|
49
63
|
|
|
50
64
|
if (typeof rawGitUrl === "string" && rawGitUrl.trim()) {
|
|
51
65
|
repo.git_url = rawGitUrl.trim();
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { NextRequest, NextResponse } from "next/server";
|
|
2
2
|
import { db } from "@/lib/db-instance";
|
|
3
|
-
import { buildProjectInput } from "./payload";
|
|
3
|
+
import { buildProjectInput, InvalidProjectPayloadError } from "./payload";
|
|
4
4
|
import { LOCAL_USER } from "@/lib/auth-mode";
|
|
5
5
|
import { hydrateProjectsObjectiveMetadata } from "./objective-metadata";
|
|
6
6
|
import { logger } from "@/lib/logger";
|
|
@@ -57,6 +57,9 @@ export async function POST(request: NextRequest) {
|
|
|
57
57
|
const project = await db.createProject(userId, projectInput);
|
|
58
58
|
return NextResponse.json({ project }, { status: 201 });
|
|
59
59
|
} catch (error) {
|
|
60
|
+
if (error instanceof InvalidProjectPayloadError) {
|
|
61
|
+
return NextResponse.json({ error: error.message }, { status: 400 });
|
|
62
|
+
}
|
|
60
63
|
logger.error("Error creating project", logger.formatError(error));
|
|
61
64
|
if (isMissingProjectsSchemaError(error)) {
|
|
62
65
|
return NextResponse.json(
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Metadata } from "next";
|
|
2
|
-
import { Geist, Geist_Mono } from "next/font/google";
|
|
2
|
+
import { Geist, Geist_Mono, Inter_Tight, JetBrains_Mono } from "next/font/google";
|
|
3
3
|
import { GoogleAnalytics } from "@/components/GoogleAnalytics";
|
|
4
4
|
import { PostHogAnalytics } from "@/components/PostHogAnalytics";
|
|
5
5
|
import StartupGuard from "@/components/errors/StartupGuard";
|
|
@@ -16,6 +16,18 @@ const geistMono = Geist_Mono({
|
|
|
16
16
|
subsets: ["latin"],
|
|
17
17
|
});
|
|
18
18
|
|
|
19
|
+
const interTight = Inter_Tight({
|
|
20
|
+
variable: "--font-inter-tight",
|
|
21
|
+
subsets: ["latin"],
|
|
22
|
+
weight: ["400", "500", "600", "700", "800", "900"],
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
const jetbrainsMono = JetBrains_Mono({
|
|
26
|
+
variable: "--font-jetbrains-mono",
|
|
27
|
+
subsets: ["latin"],
|
|
28
|
+
weight: ["400", "500", "600", "700"],
|
|
29
|
+
});
|
|
30
|
+
|
|
19
31
|
export const metadata: Metadata = {
|
|
20
32
|
title: "AGX",
|
|
21
33
|
description: "Workflow surface for AI-assisted dev work — tickets, repos, PRs, and agents in one window.",
|
|
@@ -45,7 +57,7 @@ export default function RootLayout({
|
|
|
45
57
|
<head>
|
|
46
58
|
<script dangerouslySetInnerHTML={{ __html: themeBootstrapScript }} />
|
|
47
59
|
</head>
|
|
48
|
-
<body className={`${geistSans.variable} ${geistMono.variable} antialiased min-h-screen overflow-x-hidden overflow-y-auto bg-[var(--background)] text-[var(--foreground)] selection:bg-[var(--primary)] selection:text-[var(--primary-foreground)]`}>
|
|
60
|
+
<body className={`${geistSans.variable} ${geistMono.variable} ${interTight.variable} ${jetbrainsMono.variable} antialiased min-h-screen overflow-x-hidden overflow-y-auto bg-[var(--background)] text-[var(--foreground)] selection:bg-[var(--primary)] selection:text-[var(--primary-foreground)]`}>
|
|
49
61
|
<StartupGuard>{children}</StartupGuard>
|
|
50
62
|
<VersionBadge />
|
|
51
63
|
<GoogleAnalytics />
|
|
@@ -79,7 +79,7 @@ export default function Home() {
|
|
|
79
79
|
<EmptyStateCard
|
|
80
80
|
icon={<FolderPlus className="w-6 h-6 text-[var(--foreground)]" />}
|
|
81
81
|
title="Create your first project"
|
|
82
|
-
description="A project groups your
|
|
82
|
+
description="A project groups your tickets, repos, and PRs — plus the agent teams that work them. Create one to get started."
|
|
83
83
|
ctaLabel="Create a project"
|
|
84
84
|
ctaHref="/projects?new=1"
|
|
85
85
|
/>
|
|
@@ -92,7 +92,7 @@ export default function Home() {
|
|
|
92
92
|
<EmptyStateCard
|
|
93
93
|
icon={<Users className="w-6 h-6 text-[var(--foreground)]" />}
|
|
94
94
|
title={`Add a team to ${state.projectName}`}
|
|
95
|
-
description="Teams
|
|
95
|
+
description="Teams are the agents that work through your tickets and PRs. Add one to start shipping."
|
|
96
96
|
ctaLabel="Add a team"
|
|
97
97
|
ctaHref={`/projects/${state.projectSlug}/teams/new`}
|
|
98
98
|
/>
|
|
@@ -47,7 +47,7 @@ export default function ProjectPage({
|
|
|
47
47
|
<EmptyStateCard
|
|
48
48
|
icon={<Users className="w-6 h-6 text-[var(--foreground)]" />}
|
|
49
49
|
title={`Add a team to ${project.name}`}
|
|
50
|
-
description="Teams
|
|
50
|
+
description="Teams are the agents that work through your tickets and PRs. Add one to start shipping."
|
|
51
51
|
ctaLabel="Add a team"
|
|
52
52
|
ctaHref={`/projects/${project.slug}/teams/new`}
|
|
53
53
|
/>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
import { use } from "react";
|
|
4
|
+
import { PrReviewView } from "@/components/prs/review/PrReviewView";
|
|
5
|
+
|
|
6
|
+
interface PageProps {
|
|
7
|
+
params: Promise<{ slug: string; prId: string }>;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export default function PrReviewPage({ params }: PageProps) {
|
|
11
|
+
const { prId } = use(params);
|
|
12
|
+
return <PrReviewView prId={prId} />;
|
|
13
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
|
|
3
3
|
import { use, useCallback, useEffect, useMemo, useState } from "react";
|
|
4
|
+
import Link from "next/link";
|
|
4
5
|
import type { GithubPr, GithubRepo } from "@/lib/github-types";
|
|
5
6
|
import { useProjectsWithAgents } from "@/hooks/useProjects";
|
|
6
7
|
import { PrComposerPanel } from "@/components/prs/PrComposerPanel";
|
|
@@ -192,10 +193,10 @@ export default function ProjectPrsPage({
|
|
|
192
193
|
const ci = ciIcon(pr.ciStatus);
|
|
193
194
|
const isSelected = pr.id === selectedId;
|
|
194
195
|
return (
|
|
195
|
-
<
|
|
196
|
-
type="button"
|
|
196
|
+
<Link
|
|
197
197
|
key={pr.id}
|
|
198
|
-
|
|
198
|
+
href={`/projects/${slug}/prs/${encodeURIComponent(pr.id)}`}
|
|
199
|
+
onMouseEnter={() => setSelectedId(pr.id)}
|
|
199
200
|
className={`flex flex-col gap-0.5 border-b border-neutral-800/60 px-4 py-2 text-left text-sm hover:bg-neutral-800/50 ${
|
|
200
201
|
isSelected ? "bg-neutral-800/70" : ""
|
|
201
202
|
}`}
|
|
@@ -219,7 +220,7 @@ export default function ProjectPrsPage({
|
|
|
219
220
|
<span>·</span>
|
|
220
221
|
<span>{formatRelative(pr.updatedAt)}</span>
|
|
221
222
|
</div>
|
|
222
|
-
</
|
|
223
|
+
</Link>
|
|
223
224
|
);
|
|
224
225
|
})}
|
|
225
226
|
</div>
|
|
@@ -5,6 +5,10 @@ import { useRouter, useSearchParams } from "next/navigation";
|
|
|
5
5
|
import Layout from "@/components/Layout";
|
|
6
6
|
import ProjectCard from "@/components/ProjectCard";
|
|
7
7
|
import ProjectModal, { useProjectFormState, createProjectPayload } from "@/components/ProjectModal";
|
|
8
|
+
import {
|
|
9
|
+
findInvalidProjectRepoDraft,
|
|
10
|
+
formatInvalidProjectRepoDraftMessage,
|
|
11
|
+
} from "@/components/project-repo-validation";
|
|
8
12
|
import TaskList from "@/components/TaskList";
|
|
9
13
|
import { Task } from "@/components/TaskCard";
|
|
10
14
|
import { useTasks } from "@/hooks/useTasks";
|
|
@@ -91,9 +95,9 @@ export default function ProjectsPage() {
|
|
|
91
95
|
return;
|
|
92
96
|
}
|
|
93
97
|
|
|
94
|
-
const invalidRepo = modalRepos
|
|
98
|
+
const invalidRepo = findInvalidProjectRepoDraft(modalRepos);
|
|
95
99
|
if (invalidRepo) {
|
|
96
|
-
setModalFormError(
|
|
100
|
+
setModalFormError(formatInvalidProjectRepoDraftMessage(invalidRepo));
|
|
97
101
|
return;
|
|
98
102
|
}
|
|
99
103
|
|
|
@@ -169,7 +173,7 @@ export default function ProjectsPage() {
|
|
|
169
173
|
</div>
|
|
170
174
|
<h2 className="text-2xl font-bold mb-2">You have no projects</h2>
|
|
171
175
|
<p className="text-[var(--muted-foreground)] text-center max-w-sm mb-8 leading-relaxed">
|
|
172
|
-
Create your first project to
|
|
176
|
+
Create your first project to connect your tickets, repos, and agent teams — and start shipping PRs.
|
|
173
177
|
</p>
|
|
174
178
|
<button
|
|
175
179
|
onClick={openNewProjectModal}
|
|
@@ -3,6 +3,12 @@
|
|
|
3
3
|
import { useCallback, useEffect, useRef, useState } from "react";
|
|
4
4
|
import { ProjectWithRepos } from "@/hooks/useProjects";
|
|
5
5
|
import DirectoryBrowser from "@/components/DirectoryBrowser";
|
|
6
|
+
import {
|
|
7
|
+
findInvalidProjectRepoDraft,
|
|
8
|
+
formatInvalidProjectRepoDraftMessage,
|
|
9
|
+
getProjectRepoValidationIssue,
|
|
10
|
+
isCompleteProjectRepoDraft,
|
|
11
|
+
} from "@/components/project-repo-validation";
|
|
6
12
|
|
|
7
13
|
export interface ProjectFormState {
|
|
8
14
|
name: string;
|
|
@@ -99,8 +105,13 @@ export function createProjectPayload(
|
|
|
99
105
|
form: ProjectFormState,
|
|
100
106
|
repos: RepoDraft[]
|
|
101
107
|
) {
|
|
108
|
+
const invalidRepo = findInvalidProjectRepoDraft(repos);
|
|
109
|
+
if (invalidRepo) {
|
|
110
|
+
throw new Error(formatInvalidProjectRepoDraftMessage(invalidRepo));
|
|
111
|
+
}
|
|
112
|
+
|
|
102
113
|
const repoPayload = repos
|
|
103
|
-
.filter((repo) =>
|
|
114
|
+
.filter((repo) => isCompleteProjectRepoDraft(repo))
|
|
104
115
|
.map((repo) => ({
|
|
105
116
|
...(repo.id ? { id: repo.id } : {}),
|
|
106
117
|
name: repo.name.trim(),
|
|
@@ -229,107 +240,116 @@ function ProjectFormFields({
|
|
|
229
240
|
</button>
|
|
230
241
|
</div>
|
|
231
242
|
<div className="space-y-4">
|
|
232
|
-
{repos.map((repo, index) =>
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
</button>
|
|
254
|
-
)}
|
|
255
|
-
{repos.length > 1 && (
|
|
256
|
-
<button
|
|
257
|
-
type="button"
|
|
258
|
-
onClick={() => onRemoveRepo(index)}
|
|
259
|
-
className="text-xs font-semibold text-[var(--destructive)] hover:underline"
|
|
260
|
-
disabled={isSubmitting}
|
|
261
|
-
>
|
|
262
|
-
Remove
|
|
263
|
-
</button>
|
|
264
|
-
)}
|
|
265
|
-
</div>
|
|
266
|
-
</div>
|
|
267
|
-
{isRepoExpanded(index) ? (
|
|
268
|
-
<div className="grid gap-3 md:grid-cols-2">
|
|
269
|
-
<input
|
|
270
|
-
value={repo.name}
|
|
271
|
-
onChange={(e) => onRepoChange(index, "name", e.target.value)}
|
|
272
|
-
placeholder="Name (e.g. Frontend, API Docs, Design System)"
|
|
273
|
-
className="input text-sm"
|
|
274
|
-
disabled={isSubmitting}
|
|
275
|
-
/>
|
|
276
|
-
<div className="space-y-1">
|
|
277
|
-
<div className="flex items-center gap-2">
|
|
278
|
-
<input
|
|
279
|
-
value={repo.path}
|
|
280
|
-
onChange={(e) => onRepoChange(index, "path", e.target.value)}
|
|
281
|
-
placeholder="Local path to folder"
|
|
282
|
-
className={`input text-sm flex-1${repo.name.trim() && !repo.path.trim() ? " border-[var(--destructive)]/50 ring-1 ring-[var(--destructive)]/20" : ""}`}
|
|
243
|
+
{repos.map((repo, index) => {
|
|
244
|
+
const validationIssue = getProjectRepoValidationIssue(repo);
|
|
245
|
+
|
|
246
|
+
return (
|
|
247
|
+
<div key={index} className="p-4 rounded-2xl border border-[var(--card-border)] bg-[var(--muted)]/20 space-y-3 relative group">
|
|
248
|
+
<div className="flex items-center justify-between">
|
|
249
|
+
<div>
|
|
250
|
+
<div className="text-xs font-bold text-[var(--foreground)] uppercase">Folder #{index + 1}</div>
|
|
251
|
+
{isEditingProject && !isRepoExpanded(index) ? (
|
|
252
|
+
<div className="mt-1 text-sm text-[var(--muted-foreground)]">
|
|
253
|
+
<div>{repo.name || "Unnamed folder"}</div>
|
|
254
|
+
<div className="truncate">{repo.path || "No local path set"}</div>
|
|
255
|
+
</div>
|
|
256
|
+
) : null}
|
|
257
|
+
</div>
|
|
258
|
+
<div className="flex items-center gap-3">
|
|
259
|
+
{isEditingProject && (
|
|
260
|
+
<button
|
|
261
|
+
type="button"
|
|
262
|
+
onClick={() => toggleRepoExpanded(index)}
|
|
263
|
+
className="text-xs font-semibold text-[var(--primary)] hover:underline"
|
|
283
264
|
disabled={isSubmitting}
|
|
284
|
-
|
|
265
|
+
>
|
|
266
|
+
{isRepoExpanded(index) ? "Done" : "Edit"}
|
|
267
|
+
</button>
|
|
268
|
+
)}
|
|
269
|
+
{repos.length > 1 && (
|
|
285
270
|
<button
|
|
286
271
|
type="button"
|
|
287
|
-
onClick={
|
|
288
|
-
|
|
289
|
-
const res = await fetch("/api/filesystem/pick-folder", { method: "POST" });
|
|
290
|
-
const data = await res.json();
|
|
291
|
-
if (data.path) {
|
|
292
|
-
onRepoChange(index, "path", data.path);
|
|
293
|
-
}
|
|
294
|
-
} catch {
|
|
295
|
-
setBrowsingRepoIndex(browsingRepoIndex === index ? null : index);
|
|
296
|
-
}
|
|
297
|
-
}}
|
|
298
|
-
className="px-3 py-2 rounded-xl border border-[var(--card-border)] bg-[var(--muted)]/30 hover:bg-[var(--muted)]/60 transition-colors text-xs font-semibold text-[var(--muted-foreground)] whitespace-nowrap"
|
|
272
|
+
onClick={() => onRemoveRepo(index)}
|
|
273
|
+
className="text-xs font-semibold text-[var(--destructive)] hover:underline"
|
|
299
274
|
disabled={isSubmitting}
|
|
300
275
|
>
|
|
301
|
-
|
|
276
|
+
Remove
|
|
302
277
|
</button>
|
|
303
|
-
</div>
|
|
304
|
-
{repo.name.trim() && !repo.path.trim() && (
|
|
305
|
-
<p className="text-[11px] text-[var(--destructive)]">Local path is required</p>
|
|
306
278
|
)}
|
|
307
279
|
</div>
|
|
308
|
-
|
|
280
|
+
</div>
|
|
281
|
+
{isRepoExpanded(index) ? (
|
|
282
|
+
<div className="grid gap-3 md:grid-cols-2">
|
|
283
|
+
<div className="space-y-1">
|
|
284
|
+
<input
|
|
285
|
+
value={repo.name}
|
|
286
|
+
onChange={(e) => onRepoChange(index, "name", e.target.value)}
|
|
287
|
+
placeholder="Name (e.g. Frontend, API Docs, Design System)"
|
|
288
|
+
className={`input text-sm w-full${validationIssue === "missing_name" ? " border-[var(--destructive)]/50 ring-1 ring-[var(--destructive)]/20" : ""}`}
|
|
289
|
+
disabled={isSubmitting}
|
|
290
|
+
/>
|
|
291
|
+
{validationIssue === "missing_name" && (
|
|
292
|
+
<p className="text-[11px] text-[var(--destructive)]">Folder name is required</p>
|
|
293
|
+
)}
|
|
294
|
+
</div>
|
|
295
|
+
<div className="space-y-1">
|
|
296
|
+
<div className="flex items-center gap-2">
|
|
297
|
+
<input
|
|
298
|
+
value={repo.path}
|
|
299
|
+
onChange={(e) => onRepoChange(index, "path", e.target.value)}
|
|
300
|
+
placeholder="Local path to folder"
|
|
301
|
+
className={`input text-sm flex-1${validationIssue === "missing_path" ? " border-[var(--destructive)]/50 ring-1 ring-[var(--destructive)]/20" : ""}`}
|
|
302
|
+
disabled={isSubmitting}
|
|
303
|
+
/>
|
|
304
|
+
<button
|
|
305
|
+
type="button"
|
|
306
|
+
onClick={async () => {
|
|
307
|
+
try {
|
|
308
|
+
const res = await fetch("/api/filesystem/pick-folder", { method: "POST" });
|
|
309
|
+
const data = await res.json();
|
|
310
|
+
if (data.path) {
|
|
311
|
+
onRepoChange(index, "path", data.path);
|
|
312
|
+
}
|
|
313
|
+
} catch {
|
|
314
|
+
setBrowsingRepoIndex(browsingRepoIndex === index ? null : index);
|
|
315
|
+
}
|
|
316
|
+
}}
|
|
317
|
+
className="px-3 py-2 rounded-xl border border-[var(--card-border)] bg-[var(--muted)]/30 hover:bg-[var(--muted)]/60 transition-colors text-xs font-semibold text-[var(--muted-foreground)] whitespace-nowrap"
|
|
318
|
+
disabled={isSubmitting}
|
|
319
|
+
>
|
|
320
|
+
Browse
|
|
321
|
+
</button>
|
|
322
|
+
</div>
|
|
323
|
+
{validationIssue === "missing_path" && (
|
|
324
|
+
<p className="text-[11px] text-[var(--destructive)]">Local path is required</p>
|
|
325
|
+
)}
|
|
326
|
+
</div>
|
|
327
|
+
{browsingRepoIndex === index && (
|
|
328
|
+
<div className="md:col-span-2">
|
|
329
|
+
<DirectoryBrowser
|
|
330
|
+
initialPath={repo.path || ""}
|
|
331
|
+
onSelect={(selectedPath) => {
|
|
332
|
+
onRepoChange(index, "path", selectedPath);
|
|
333
|
+
setBrowsingRepoIndex(null);
|
|
334
|
+
}}
|
|
335
|
+
onCancel={() => setBrowsingRepoIndex(null)}
|
|
336
|
+
/>
|
|
337
|
+
</div>
|
|
338
|
+
)}
|
|
309
339
|
<div className="md:col-span-2">
|
|
310
|
-
<
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
}
|
|
316
|
-
onCancel={() => setBrowsingRepoIndex(null)}
|
|
340
|
+
<textarea
|
|
341
|
+
value={repo.notes}
|
|
342
|
+
onChange={(e) => onRepoChange(index, "notes", e.target.value)}
|
|
343
|
+
placeholder="Notes for this folder — e.g. coding conventions, deploy steps, ownership, doc standards..."
|
|
344
|
+
className="input text-sm w-full min-h-24 resize-y"
|
|
345
|
+
disabled={isSubmitting}
|
|
317
346
|
/>
|
|
318
347
|
</div>
|
|
319
|
-
)}
|
|
320
|
-
<div className="md:col-span-2">
|
|
321
|
-
<textarea
|
|
322
|
-
value={repo.notes}
|
|
323
|
-
onChange={(e) => onRepoChange(index, "notes", e.target.value)}
|
|
324
|
-
placeholder="Notes for this folder — e.g. coding conventions, deploy steps, ownership, doc standards..."
|
|
325
|
-
className="input text-sm w-full min-h-24 resize-y"
|
|
326
|
-
disabled={isSubmitting}
|
|
327
|
-
/>
|
|
328
348
|
</div>
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
)
|
|
349
|
+
) : null}
|
|
350
|
+
</div>
|
|
351
|
+
);
|
|
352
|
+
})}
|
|
333
353
|
</div>
|
|
334
354
|
</div>
|
|
335
355
|
</div>
|
|
@@ -408,7 +428,7 @@ export default function ProjectModal({
|
|
|
408
428
|
};
|
|
409
429
|
}, [editingProject]);
|
|
410
430
|
|
|
411
|
-
const hasIncompleteRepo =
|
|
431
|
+
const hasIncompleteRepo = Boolean(findInvalidProjectRepoDraft(repos));
|
|
412
432
|
const isFormInvalid = !form.name.trim() || hasIncompleteRepo;
|
|
413
433
|
|
|
414
434
|
if (!isOpen) return null;
|
|
@@ -1904,7 +1904,7 @@ export default function TrackerBoard({ trackerType, projectId, projectSlug, init
|
|
|
1904
1904
|
/>
|
|
1905
1905
|
) : isAwaitingRestore ? null : participants.length === 0 ? (
|
|
1906
1906
|
<div className="flex h-full items-center justify-center text-xs text-[var(--muted-foreground)]">
|
|
1907
|
-
Add
|
|
1907
|
+
Add an agent team so you can pick a ticket and start shipping.
|
|
1908
1908
|
</div>
|
|
1909
1909
|
) : (
|
|
1910
1910
|
<TicketPanel
|
|
@@ -2518,7 +2518,7 @@ export default function TrackerBoard({ trackerType, projectId, projectSlug, init
|
|
|
2518
2518
|
</div>
|
|
2519
2519
|
) : isAwaitingRestore ? null : participants.length === 0 ? (
|
|
2520
2520
|
<div className="flex h-full items-center justify-center text-xs text-[var(--muted-foreground)]">
|
|
2521
|
-
Add
|
|
2521
|
+
Add an agent team so you can pick a ticket and start shipping.
|
|
2522
2522
|
</div>
|
|
2523
2523
|
) : (
|
|
2524
2524
|
<TicketPanel
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
|
|
3
|
+
export interface ProjectRepoDraftLike {
|
|
4
|
+
name: string;
|
|
5
|
+
path: string;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export type ProjectRepoValidationIssue = "missing_name" | "missing_path";
|
|
9
|
+
|
|
10
|
+
export interface InvalidProjectRepoDraft<T extends ProjectRepoDraftLike = ProjectRepoDraftLike> {
|
|
11
|
+
index: number;
|
|
12
|
+
issue: ProjectRepoValidationIssue;
|
|
13
|
+
repo: T;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
function trimRepoFields(repo: ProjectRepoDraftLike) {
|
|
17
|
+
return {
|
|
18
|
+
name: repo.name.trim(),
|
|
19
|
+
path: repo.path.trim(),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export function getProjectRepoValidationIssue(
|
|
24
|
+
repo: ProjectRepoDraftLike
|
|
25
|
+
): ProjectRepoValidationIssue | null {
|
|
26
|
+
const { name, path } = trimRepoFields(repo);
|
|
27
|
+
|
|
28
|
+
if (!name && !path) {
|
|
29
|
+
return null;
|
|
30
|
+
}
|
|
31
|
+
if (!name) {
|
|
32
|
+
return "missing_name";
|
|
33
|
+
}
|
|
34
|
+
if (!path) {
|
|
35
|
+
return "missing_path";
|
|
36
|
+
}
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export function findInvalidProjectRepoDraft<T extends ProjectRepoDraftLike>(
|
|
41
|
+
repos: T[]
|
|
42
|
+
): InvalidProjectRepoDraft<T> | null {
|
|
43
|
+
for (const [index, repo] of repos.entries()) {
|
|
44
|
+
const issue = getProjectRepoValidationIssue(repo);
|
|
45
|
+
if (issue) {
|
|
46
|
+
return { index, issue, repo };
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
return null;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
export function isCompleteProjectRepoDraft(repo: ProjectRepoDraftLike): boolean {
|
|
53
|
+
const { name, path } = trimRepoFields(repo);
|
|
54
|
+
return Boolean(name && path);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export function formatInvalidProjectRepoDraftMessage(
|
|
58
|
+
invalidRepo: InvalidProjectRepoDraft
|
|
59
|
+
): string {
|
|
60
|
+
const { issue, repo } = invalidRepo;
|
|
61
|
+
if (issue === "missing_name") {
|
|
62
|
+
return `Folder name is required for local path "${repo.path.trim()}"`;
|
|
63
|
+
}
|
|
64
|
+
return `Local path is required for folder "${repo.name.trim()}"`;
|
|
65
|
+
}
|
|
@@ -5,7 +5,6 @@ import { useCallback, useRef, useState } from "react";
|
|
|
5
5
|
import {
|
|
6
6
|
Download,
|
|
7
7
|
FileText,
|
|
8
|
-
Folder,
|
|
9
8
|
FolderGit2,
|
|
10
9
|
FolderPlus,
|
|
11
10
|
Loader2,
|
|
@@ -17,11 +16,13 @@ import {
|
|
|
17
16
|
Trash2,
|
|
18
17
|
Upload,
|
|
19
18
|
X,
|
|
19
|
+
Folder,
|
|
20
20
|
} from "lucide-react";
|
|
21
21
|
import type { WorkspaceEntry } from "@/lib/db/types";
|
|
22
22
|
import { useProjectWorkspace } from "@/hooks/useProjectWorkspace";
|
|
23
23
|
import { buildWorkspaceCategoryGroups } from "@/lib/project-workspace";
|
|
24
24
|
import { DEFAULT_WORKSPACE_CATEGORIES } from "@/lib/workspace-categories";
|
|
25
|
+
import { RepoPathCombobox } from "@/components/projects/RepoPathCombobox";
|
|
25
26
|
|
|
26
27
|
interface FoldersViewProps {
|
|
27
28
|
projectId: string;
|
|
@@ -579,15 +580,24 @@ export function FoldersView({ projectId }: FoldersViewProps) {
|
|
|
579
580
|
Path
|
|
580
581
|
</span>
|
|
581
582
|
<div className="flex items-center gap-2">
|
|
582
|
-
<
|
|
583
|
+
<RepoPathCombobox
|
|
584
|
+
category={editDraft.category}
|
|
583
585
|
value={editDraft.path}
|
|
584
|
-
onChange={(
|
|
586
|
+
onChange={(next) =>
|
|
585
587
|
setEditDraft((current) =>
|
|
586
|
-
current ? { ...current, path:
|
|
588
|
+
current ? { ...current, path: next, error: null } : current,
|
|
587
589
|
)
|
|
588
590
|
}
|
|
589
|
-
|
|
591
|
+
onSelectMatch={(repo) =>
|
|
592
|
+
setEditDraft((current) => {
|
|
593
|
+
if (!current) return current;
|
|
594
|
+
const nextName =
|
|
595
|
+
current.name.trim().length === 0 ? repo.basename : current.name;
|
|
596
|
+
return { ...current, name: nextName, path: repo.path, error: null };
|
|
597
|
+
})
|
|
598
|
+
}
|
|
590
599
|
placeholder="/Users/you/Projects/repo"
|
|
600
|
+
className="w-full rounded-xl border border-[var(--border)] bg-[var(--background)] px-3 py-2 text-sm text-[var(--foreground)]"
|
|
591
601
|
/>
|
|
592
602
|
<button
|
|
593
603
|
type="button"
|
|
@@ -667,13 +677,21 @@ export function FoldersView({ projectId }: FoldersViewProps) {
|
|
|
667
677
|
Path
|
|
668
678
|
</span>
|
|
669
679
|
<div className="flex items-center gap-2">
|
|
670
|
-
<
|
|
680
|
+
<RepoPathCombobox
|
|
681
|
+
category={addDraft.category}
|
|
671
682
|
value={addDraft.path}
|
|
672
|
-
onChange={(
|
|
673
|
-
setAddDraft((current) => ({ ...current, path:
|
|
683
|
+
onChange={(next) =>
|
|
684
|
+
setAddDraft((current) => ({ ...current, path: next, error: null }))
|
|
685
|
+
}
|
|
686
|
+
onSelectMatch={(repo) =>
|
|
687
|
+
setAddDraft((current) => {
|
|
688
|
+
const nextName =
|
|
689
|
+
current.name.trim().length === 0 ? repo.basename : current.name;
|
|
690
|
+
return { ...current, name: nextName, path: repo.path, error: null };
|
|
691
|
+
})
|
|
674
692
|
}
|
|
675
|
-
className="w-full rounded-xl border border-[var(--border)] bg-[var(--card-bg)] px-3 py-2 text-sm text-[var(--foreground)]"
|
|
676
693
|
placeholder="/Users/you/Projects/repo"
|
|
694
|
+
className="w-full rounded-xl border border-[var(--border)] bg-[var(--card-bg)] px-3 py-2 text-sm text-[var(--foreground)]"
|
|
677
695
|
/>
|
|
678
696
|
<button
|
|
679
697
|
type="button"
|