@mndrk/agx 1.4.18 → 1.4.20

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.
Files changed (86) hide show
  1. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/BUILD_ID +1 -1
  2. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/app-build-manifest.json +47 -47
  3. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/app-path-routes-manifest.json +7 -7
  4. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/build-manifest.json +2 -2
  5. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/prerender-manifest.json +22 -22
  6. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  7. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found.html +1 -1
  8. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/_not-found.rsc +2 -2
  9. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/audit/route_client-reference-manifest.js +1 -1
  10. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/[...nextauth]/route_client-reference-manifest.js +1 -1
  11. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/daemon-secret/route_client-reference-manifest.js +1 -1
  12. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/device/code/route_client-reference-manifest.js +1 -1
  13. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/device/token/route_client-reference-manifest.js +1 -1
  14. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/refresh/route_client-reference-manifest.js +1 -1
  15. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  16. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/learnings/route_client-reference-manifest.js +1 -1
  17. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/logs/stream/route_client-reference-manifest.js +1 -1
  18. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/cancel/route_client-reference-manifest.js +1 -1
  19. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/signal/route_client-reference-manifest.js +1 -1
  20. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/start/route_client-reference-manifest.js +1 -1
  21. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/orchestrator/tasks/[taskId]/status/route_client-reference-manifest.js +1 -1
  22. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/[id]/route_client-reference-manifest.js +1 -1
  23. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
  24. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/providers/route_client-reference-manifest.js +1 -1
  25. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/queue/complete/route_client-reference-manifest.js +1 -1
  26. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/queue/route_client-reference-manifest.js +1 -1
  27. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/stage-prompts/route_client-reference-manifest.js +1 -1
  28. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/comments/[commentId]/route_client-reference-manifest.js +1 -1
  29. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/comments/route_client-reference-manifest.js +1 -1
  30. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/heartbeat/route_client-reference-manifest.js +1 -1
  31. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/history/route_client-reference-manifest.js +1 -1
  32. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/logs/route_client-reference-manifest.js +1 -1
  33. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/[id]/route_client-reference-manifest.js +1 -1
  34. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/route_client-reference-manifest.js +1 -1
  35. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/tasks/stream/route_client-reference-manifest.js +1 -1
  36. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/user-settings/route_client-reference-manifest.js +1 -1
  37. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/workflows/[id]/nodes/route_client-reference-manifest.js +1 -1
  38. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/workflows/[id]/route_client-reference-manifest.js +1 -1
  39. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/api/workflows/route_client-reference-manifest.js +1 -1
  40. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/auth/callback/route_client-reference-manifest.js +1 -1
  41. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/auth/device/page.js +5 -5
  42. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/auth/device/page_client-reference-manifest.js +1 -1
  43. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/auth/device.html +1 -1
  44. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/auth/device.rsc +3 -3
  45. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/dashboard/page_client-reference-manifest.js +1 -1
  46. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/dashboard.html +1 -1
  47. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/dashboard.rsc +3 -3
  48. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/index.html +1 -1
  49. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/index.rsc +2 -2
  50. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/login/page_client-reference-manifest.js +1 -1
  51. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/login.html +1 -1
  52. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/login.rsc +2 -2
  53. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/page_client-reference-manifest.js +1 -1
  54. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  55. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/tasks/page_client-reference-manifest.js +1 -1
  56. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/[slug]/workflow/page_client-reference-manifest.js +1 -1
  57. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  58. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects.html +1 -1
  59. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/projects.rsc +2 -2
  60. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  61. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings.html +1 -1
  62. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app/settings.rsc +2 -2
  63. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/app-paths-manifest.json +7 -7
  64. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/chunks/2298.js +1 -1
  65. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/middleware-manifest.json +5 -5
  66. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/pages/404.html +1 -1
  67. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/pages/500.html +1 -1
  68. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/server-reference-manifest.js +1 -1
  69. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/server/server-reference-manifest.json +1 -1
  70. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/2456-5577fa071bb78cca.js +1 -0
  71. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/app/auth/device/{page-f7a2d0670aaf8314.js → page-1191b5d80fb53701.js} +1 -1
  72. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/css/97623b2fc4a523a7.css +1 -0
  73. package/index.js +32 -6
  74. package/lib/cli/configStore.js +38 -0
  75. package/lib/cli/daemon.js +796 -0
  76. package/lib/cli/interactiveMenu.js +348 -0
  77. package/lib/cli/onboarding.js +277 -0
  78. package/lib/cli/providers.js +245 -0
  79. package/lib/cli/runCli.js +88 -1938
  80. package/lib/cli/skills.js +110 -0
  81. package/lib/cli/util.js +104 -0
  82. package/package.json +1 -1
  83. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/chunks/2456-9f4a875ea5d68f26.js +0 -1
  84. package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/css/f4bb6b8083291d60.css +0 -1
  85. /package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/{6tGMyW64n2NpGvLihl5xS → _UEH0bf2vZJdfFbGlB9rM}/_buildManifest.js +0 -0
  86. /package/cloud-runtime/standalone/Projects/Agents/agx-cloud/.next/static/{6tGMyW64n2NpGvLihl5xS → _UEH0bf2vZJdfFbGlB9rM}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- <!DOCTYPE html><!--6tGMyW64n2NpGvLihl5xS--><html lang="en" class="dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/f4bb6b8083291d60.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-d282787ed3063711.js"/><script src="/_next/static/chunks/4bd1b696-f785427dddbba9fb.js" async=""></script><script src="/_next/static/chunks/1255-a390e12b70b4a9fb.js" async=""></script><script src="/_next/static/chunks/main-app-c3d1ac80a13099fb.js" async=""></script><script src="/_next/static/chunks/app/layout-2d6cff09e6c1e2b2.js" async=""></script><meta name="robots" content="noindex"/><title>404: This page could not be found.</title><title>AGX Board - Agent Task Orchestration</title><meta name="description" content="Orchestrate and manage AI agent tasks on AGX Board"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="antialiased min-h-screen bg-[var(--background)] text-[var(--foreground)] selection:bg-[var(--primary)] selection:text-[var(--primary-foreground)]"><div hidden=""><!--$--><!--/$--></div><div class="fixed inset-0 -z-10 h-full w-full bg-[radial-gradient(#27272a_1px,transparent_1px)] [background-size:16px_16px] opacity-20"></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-d282787ed3063711.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[4647,[\"7177\",\"static/chunks/app/layout-2d6cff09e6c1e2b2.js\"],\"AuthProvider\"]\n3:I[9766,[],\"\"]\n4:I[8924,[],\"\"]\n5:I[4431,[],\"OutletBoundary\"]\n7:I[5278,[],\"AsyncMetadataOutlet\"]\n9:I[4431,[],\"ViewportBoundary\"]\nb:I[4431,[],\"MetadataBoundary\"]\nc:\"$Sreact.suspense\"\ne:I[7150,[],\"\"]\n:HL[\"/_next/static/css/f4bb6b8083291d60.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"6tGMyW64n2NpGvLihl5xS\",\"p\":\"\",\"c\":[\"\",\"_not-found\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/f4bb6b8083291d60.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"dark\",\"children\":[\"$\",\"body\",null,{\"className\":\"antialiased min-h-screen bg-[var(--background)] text-[var(--foreground)] selection:bg-[var(--primary)] selection:text-[var(--primary-foreground)]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"fixed inset-0 -z-10 h-full w-full bg-[radial-gradient(#27272a_1px,transparent_1px)] [background-size:16px_16px] opacity-20\"}],[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]]}],{\"children\":[\"/_not-found\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$L6\",[\"$\",\"$L7\",null,{\"promise\":\"$@8\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[[\"$\",\"$L9\",null,{\"children\":\"$La\"}],null],[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$c\",null,{\"fallback\":null,\"children\":\"$Ld\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$e\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"a:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n6:null\n"])</script><script>self.__next_f.push([1,"8:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"AGX Board - Agent Task Orchestration\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Orchestrate and manage AI agent tasks on AGX Board\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"d:\"$8:metadata\"\n"])</script></body></html>
1
+ <!DOCTYPE html><!--_UEH0bf2vZJdfFbGlB9rM--><html lang="en" class="dark"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/97623b2fc4a523a7.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-d282787ed3063711.js"/><script src="/_next/static/chunks/4bd1b696-f785427dddbba9fb.js" async=""></script><script src="/_next/static/chunks/1255-a390e12b70b4a9fb.js" async=""></script><script src="/_next/static/chunks/main-app-c3d1ac80a13099fb.js" async=""></script><script src="/_next/static/chunks/app/layout-2d6cff09e6c1e2b2.js" async=""></script><meta name="robots" content="noindex"/><title>404: This page could not be found.</title><title>AGX Board - Agent Task Orchestration</title><meta name="description" content="Orchestrate and manage AI agent tasks on AGX Board"/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body class="antialiased min-h-screen bg-[var(--background)] text-[var(--foreground)] selection:bg-[var(--primary)] selection:text-[var(--primary-foreground)]"><div hidden=""><!--$--><!--/$--></div><div class="fixed inset-0 -z-10 h-full w-full bg-[radial-gradient(#27272a_1px,transparent_1px)] [background-size:16px_16px] opacity-20"></div><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding:0 23px 0 0;font-size:24px;font-weight:500;vertical-align:top;line-height:49px">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:49px;margin:0">This page could not be found.</h2></div></div></div><!--$--><!--/$--><script src="/_next/static/chunks/webpack-d282787ed3063711.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[4647,[\"7177\",\"static/chunks/app/layout-2d6cff09e6c1e2b2.js\"],\"AuthProvider\"]\n3:I[9766,[],\"\"]\n4:I[8924,[],\"\"]\n5:I[4431,[],\"OutletBoundary\"]\n7:I[5278,[],\"AsyncMetadataOutlet\"]\n9:I[4431,[],\"ViewportBoundary\"]\nb:I[4431,[],\"MetadataBoundary\"]\nc:\"$Sreact.suspense\"\ne:I[7150,[],\"\"]\n:HL[\"/_next/static/css/97623b2fc4a523a7.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"_UEH0bf2vZJdfFbGlB9rM\",\"p\":\"\",\"c\":[\"\",\"_not-found\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"/_not-found\",{\"children\":[\"__PAGE__\",{}]}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/97623b2fc4a523a7.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"dark\",\"children\":[\"$\",\"body\",null,{\"className\":\"antialiased min-h-screen bg-[var(--background)] text-[var(--foreground)] selection:bg-[var(--primary)] selection:text-[var(--primary-foreground)]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"fixed inset-0 -z-10 h-full w-full bg-[radial-gradient(#27272a_1px,transparent_1px)] [background-size:16px_16px] opacity-20\"}],[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]]}]}]]}],{\"children\":[\"/_not-found\",[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],null,[\"$\",\"$L5\",null,{\"children\":[\"$L6\",[\"$\",\"$L7\",null,{\"promise\":\"$@8\"}]]}]]}],{},null,false]},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[[\"$\",\"meta\",null,{\"name\":\"robots\",\"content\":\"noindex\"}],[[\"$\",\"$L9\",null,{\"children\":\"$La\"}],null],[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$c\",null,{\"fallback\":null,\"children\":\"$Ld\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$e\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"a:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n6:null\n"])</script><script>self.__next_f.push([1,"8:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"AGX Board - Agent Task Orchestration\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Orchestrate and manage AI agent tasks on AGX Board\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"d:\"$8:metadata\"\n"])</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width" data-next-head=""/><title data-next-head="">500: Internal Server Error</title><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-d282787ed3063711.js" defer=""></script><script src="/_next/static/chunks/framework-e60c938074ff7136.js" defer=""></script><script src="/_next/static/chunks/main-8c662602f1324852.js" defer=""></script><script src="/_next/static/chunks/pages/_app-6c8c2371b16a04b8.js" defer=""></script><script src="/_next/static/chunks/pages/_error-94812ad32cad7365.js" defer=""></script><script src="/_next/static/6tGMyW64n2NpGvLihl5xS/_buildManifest.js" defer=""></script><script src="/_next/static/6tGMyW64n2NpGvLihl5xS/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":500}},"page":"/_error","query":{},"buildId":"6tGMyW64n2NpGvLihl5xS","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charSet="utf-8" data-next-head=""/><meta name="viewport" content="width=device-width" data-next-head=""/><title data-next-head="">500: Internal Server Error</title><noscript data-n-css=""></noscript><script defer="" noModule="" src="/_next/static/chunks/polyfills-42372ed130431b0a.js"></script><script src="/_next/static/chunks/webpack-d282787ed3063711.js" defer=""></script><script src="/_next/static/chunks/framework-e60c938074ff7136.js" defer=""></script><script src="/_next/static/chunks/main-8c662602f1324852.js" defer=""></script><script src="/_next/static/chunks/pages/_app-6c8c2371b16a04b8.js" defer=""></script><script src="/_next/static/chunks/pages/_error-94812ad32cad7365.js" defer=""></script><script src="/_next/static/_UEH0bf2vZJdfFbGlB9rM/_buildManifest.js" defer=""></script><script src="/_next/static/_UEH0bf2vZJdfFbGlB9rM/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div style="font-family:system-ui,&quot;Segoe UI&quot;,Roboto,Helvetica,Arial,sans-serif,&quot;Apple Color Emoji&quot;,&quot;Segoe UI Emoji&quot;;height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">500</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">Internal Server Error<!-- -->.</h2></div></div></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":500}},"page":"/_error","query":{},"buildId":"_UEH0bf2vZJdfFbGlB9rM","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html>
@@ -1 +1 @@
1
- self.__RSC_SERVER_MANIFEST="{\"node\":{\"4023a04b72c4c39c39f9de02dc8dc5d3564675b46a\":{\"workers\":{\"app/auth/device/page\":{\"moduleId\":\"9284\",\"async\":true}},\"layer\":{\"app/auth/device/page\":\"action-browser\"},\"filename\":\"lib/device-actions.ts\",\"exportedName\":\"approveDeviceCode\"}},\"edge\":{},\"encryptionKey\":\"process.env.NEXT_SERVER_ACTIONS_ENCRYPTION_KEY\"}"
1
+ self.__RSC_SERVER_MANIFEST="{\"node\":{\"408c6385882c8016529c3782a50efc88c22ef163be\":{\"workers\":{\"app/auth/device/page\":{\"moduleId\":\"73415\",\"async\":true}},\"layer\":{\"app/auth/device/page\":\"action-browser\"},\"filename\":\"lib/device-actions.ts\",\"exportedName\":\"approveDeviceCode\"}},\"edge\":{},\"encryptionKey\":\"process.env.NEXT_SERVER_ACTIONS_ENCRYPTION_KEY\"}"
@@ -1 +1 @@
1
- {"node":{"4023a04b72c4c39c39f9de02dc8dc5d3564675b46a":{"workers":{"app/auth/device/page":{"moduleId":"9284","async":true}},"layer":{"app/auth/device/page":"action-browser"},"filename":"lib/device-actions.ts","exportedName":"approveDeviceCode"}},"edge":{},"encryptionKey":"74QsHASBgkE6CIYiA4k/XkkYn1PtC5HtXKz8vj2Pqyc="}
1
+ {"node":{"408c6385882c8016529c3782a50efc88c22ef163be":{"workers":{"app/auth/device/page":{"moduleId":"73415","async":true}},"layer":{"app/auth/device/page":"action-browser"},"filename":"lib/device-actions.ts","exportedName":"approveDeviceCode"}},"edge":{},"encryptionKey":"kC1D4wyEQwsZMd1nPZuG2yvjwukjFwCamv9F37dI9Hc="}
@@ -0,0 +1 @@
1
+ "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2456],{2325:(e,t,r)=>{r.d(t,{Tw:()=>o,ls:()=>i,mP:()=>m,ou:()=>u});var a=r(2115);let s={ideation:"\uD83D\uDCA1",planning:"\uD83D\uDCCB",execution:"\uD83D\uDCBB",verification:"\uD83E\uDDEA",done:"✅",coding:"\uD83D\uDCBB",qa:"\uD83E\uDDEA",acceptance:"✓",pr:"\uD83D\uDD00",pr_review:"\uD83D\uDC40",merge:"\uD83D\uDE80"},n={ideation:"var(--warning)",planning:"var(--info)",execution:"var(--primary)",verification:"var(--accent)",done:"var(--success)",coding:"var(--primary)",qa:"var(--accent)",acceptance:"#8b5cf6",pr:"#f97316",pr_review:"#ef4444",merge:"#22c55e"},o=["ideation","planning","execution","verification","done"],i={ideation:{icon:"\uD83D\uDCA1",label:"Ideation",color:"var(--warning)"},planning:{icon:"\uD83D\uDCCB",label:"Planning",color:"var(--info)"},execution:{icon:"\uD83D\uDCBB",label:"Execution",color:"var(--primary)"},verification:{icon:"\uD83E\uDDEA",label:"Verification",color:"var(--accent)"},done:{icon:"✅",label:"Done",color:"var(--success)"}},l="00000000-0000-0000-0000-000000000001",d=[{id:"00000000-0000-0000-0001-000000000001",workflow_id:l,name:"ideation",label:"Ideation",prompt:"Research and scope this. Define approach, estimate effort, list unknowns.",provider:null,model:null,position:0,node_type:"step",created_at:new Date(0).toISOString(),updated_at:new Date(0).toISOString()},{id:"00000000-0000-0000-0001-000000000002",workflow_id:l,name:"planning",label:"Planning",prompt:"Create detailed plan with tasks, milestones, and dependencies.",provider:null,model:null,position:1,node_type:"step",created_at:new Date(0).toISOString(),updated_at:new Date(0).toISOString()},{id:"00000000-0000-0000-0001-000000000003",workflow_id:l,name:"execution",label:"Execution",prompt:"Implement based on the plan. Write clean, tested code.",provider:null,model:null,position:2,node_type:"step",created_at:new Date(0).toISOString(),updated_at:new Date(0).toISOString()},{id:"00000000-0000-0000-0001-000000000004",workflow_id:l,name:"verification",label:"Verification",prompt:"Test thoroughly. Find edge cases. Fix bugs. Verify it works.",provider:null,model:null,position:3,node_type:"gate",created_at:new Date(0).toISOString(),updated_at:new Date(0).toISOString()},{id:"00000000-0000-0000-0001-000000000009",workflow_id:l,name:"done",label:"Done",prompt:"Task completed and shipped.",provider:null,model:null,position:4,node_type:"terminal",created_at:new Date(0).toISOString(),updated_at:new Date(0).toISOString()}],c=[{id:"fallback-ideation-planning",workflow_id:l,from_node:"ideation",to_node:"planning",condition:"done",priority:0,created_at:new Date(0).toISOString()},{id:"fallback-planning-execution",workflow_id:l,from_node:"planning",to_node:"execution",condition:"done",priority:0,created_at:new Date(0).toISOString()},{id:"fallback-execution-verification",workflow_id:l,from_node:"execution",to_node:"verification",condition:"done",priority:0,created_at:new Date(0).toISOString()},{id:"fallback-verification-done",workflow_id:l,from_node:"verification",to_node:"done",condition:"done",priority:0,created_at:new Date(0).toISOString()},{id:"fallback-verification-execution",workflow_id:l,from_node:"verification",to_node:"execution",condition:"failed",priority:1,created_at:new Date(0).toISOString()}],u="00000000-0000-0000-0000-000000000001";function m(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.workflowId||u,[r,m]=(0,a.useState)(null),[x,p]=(0,a.useState)(!0),[h,v]=(0,a.useState)(null),f=(0,a.useCallback)(async()=>{p(!0),v(null);try{var e;let r=await fetch("/api/workflows/".concat(t));if(!r.ok)throw Error("Failed to fetch workflow: ".concat(r.statusText));let a=await r.json(),s=null!=(e=a.workflow)?e:a,n=Array.isArray(s.nodes)?s.nodes:[];Array.isArray(s.transitions)&&s.transitions,n&&0!==n.length||t!==l?m(s):m({...s,nodes:d,transitions:c})}catch(e){console.error("Error fetching workflow:",e),v(e instanceof Error?e:Error(String(e)))}finally{p(!1)}},[t]);(0,a.useEffect)(()=>{f()},[f]);let g=(0,a.useMemo)(()=>{var e;return(null==r||null==(e=r.nodes)?void 0:e.length)?r.nodes.slice().sort((e,t)=>e.position-t.position).map(e=>e.name):[...o]},[r]),b=(0,a.useMemo)(()=>{var e;if(!(null==r||null==(e=r.nodes)?void 0:e.length))return i;let t={};for(let e of r.nodes)t[e.name]={icon:s[e.name]||"\uD83D\uDCCC",label:e.label||e.name.charAt(0).toUpperCase()+e.name.slice(1),color:n[e.name]||"var(--primary)"};return t},[r]),j=(0,a.useMemo)(()=>(null==r?void 0:r.transitions)||[],[r]),N=(0,a.useCallback)((e,t)=>{var a;if(e===t)return!0;if(!(null==r||null==(a=r.nodes)?void 0:a.length)){let r=o.indexOf(e),a=o.indexOf(t);return a<r||a===r+1}let s=g.indexOf(e),n=g.indexOf(t);return!!(n<s||j.some(r=>r.from_node===e&&r.to_node===t))||n===s+1},[r,g,j]);return{workflow:r,stages:g,stageConfig:b,transitions:j,isLoading:x,error:h,refetch:f,isValidTransition:N}}},5826:(e,t,r)=>{r.d(t,{A:()=>E});var a=r(5155),s=r(2115),n=r(4357);function o(e){let{comments:t,onAddComment:r,onDeleteComment:n}=e,[o,i]=(0,s.useState)(""),[l,d]=(0,s.useState)(!1),[c,u]=(0,s.useState)(!1),[m,x]=(0,s.useState)(null),p=async e=>{if(e.preventDefault(),o.trim()&&!c){u(!0);try{await r(o),i(""),d(!1)}finally{u(!1)}}},h=async e=>{if(n&&!m&&confirm("Are you sure you want to delete this comment?")){x(e);try{await n(e)}catch(e){console.error("Failed to delete comment:",e)}finally{x(null)}}};return(0,a.jsxs)("div",{className:"space-y-4",children:[l?(0,a.jsxs)("form",{onSubmit:p,className:"space-y-3 animate-fade-in-up",children:[(0,a.jsx)("textarea",{value:o,onChange:e=>i(e.target.value),placeholder:"Add context, decisions, or guidance...",className:"input resize-none h-24 focus:ring-2 focus:ring-[var(--primary)]/20",autoFocus:!0,disabled:c}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)("button",{type:"submit",disabled:!o.trim()||c,className:"btn-primary px-4 py-2 flex items-center gap-2",children:c?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("span",{className:"spinner w-4 h-4 border-2 border-white/20 border-t-white"}),"Adding..."]}):"Add Comment"}),(0,a.jsx)("button",{type:"button",onClick:()=>{d(!1),i("")},disabled:c,className:"btn-ghost px-4 py-2",children:"Cancel"})]})]}):(0,a.jsx)("button",{onClick:()=>d(!0),className:"w-full py-3 border-2 border-dashed border-[var(--card-border)] rounded-xl text-[var(--muted-foreground)] hover:text-[var(--foreground)] hover:border-[var(--primary)] hover:bg-[var(--primary-muted)] transition-all duration-200 text-sm font-medium focus-visible:outline-2 focus-visible:outline-[var(--ring)] focus-visible:outline-offset-2",children:(0,a.jsxs)("span",{className:"flex items-center justify-center gap-2",children:[(0,a.jsx)("svg",{className:"w-4 h-4",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 4v16m8-8H4"})}),"Add comment"]})}),0===t.length?(0,a.jsxs)("div",{className:"text-center py-12 animate-fade-in",children:[(0,a.jsx)("div",{className:"inline-flex items-center justify-center w-12 h-12 rounded-xl bg-[var(--background)] border border-[var(--card-border)] mb-3",children:(0,a.jsx)("span",{className:"text-xl opacity-50",children:"\uD83D\uDCDD"})}),(0,a.jsx)("p",{className:"text-[var(--muted-foreground)] text-sm",children:"No comments yet"}),(0,a.jsx)("p",{className:"text-[var(--muted-foreground)] text-xs mt-1",children:"Add context and guidance for this task"})]}):(0,a.jsxs)("div",{className:"relative",children:[(0,a.jsx)("div",{className:"timeline-line"}),(0,a.jsx)("div",{className:"space-y-4",children:t.map((e,t)=>(0,a.jsxs)("div",{className:"timeline-item relative pl-7 animate-fade-in-up",style:{animationDelay:"".concat(50*t,"ms")},children:[(0,a.jsx)("div",{className:"timeline-dot"}),(0,a.jsxs)("div",{className:"card p-4 hover:border-[var(--primary)]/30 group",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("span",{className:"text-xs text-[var(--muted-foreground)] tabular-nums",children:new Date(e.created_at).toLocaleString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}),e.author_type&&(0,a.jsx)("span",{className:"text-[10px] uppercase tracking-wide text-[var(--muted-foreground)]",children:e.author_type})]}),n&&"user"===e.author_type&&(0,a.jsx)("button",{onClick:()=>h(e.id),disabled:m===e.id,className:"opacity-0 group-hover:opacity-100 transition-opacity text-[var(--muted-foreground)] hover:text-[var(--destructive)] p-1 rounded",title:"Delete comment",children:m===e.id?(0,a.jsx)("span",{className:"spinner w-3 h-3 border-2 border-current border-t-transparent"}):(0,a.jsx)("svg",{className:"w-3.5 h-3.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})})})]}),(0,a.jsx)("p",{className:"text-sm whitespace-pre-wrap leading-relaxed",children:e.content})]})]},e.id))})]})]})}var i=r(577);let l={30:"#94a3b8",31:"#f87171",32:"#4ade80",33:"#facc15",34:"#60a5fa",35:"#c084fc",36:"#22d3ee",37:"#e2e8f0",90:"#64748b",91:"#ef4444",92:"#22c55e",93:"#eab308",94:"#3b82f6",95:"#a855f7",96:"#06b6d4",97:"#f8fafc"},d=/\u001b\[([0-9;]*)m/g,c=/(^|\s)\[((?:\d{1,3};)*\d{1,3})m(\s|$)/g;function u(e){return Math.max(0,Math.min(255,e))}function m(e){let{taskId:t,status:r}=e,[n,o]=(0,s.useState)(!1),[m,x]=(0,s.useState)(!1),{output:p,isLoading:h,isStreaming:v}=(0,i.zH)(t,{enabled:n,tail:500,maxChars:2e5}),f=(0,s.useRef)(null);(0,s.useEffect)(()=>{n&&f.current&&(f.current.scrollTop=f.current.scrollHeight)},[p,n]);let g=p||(h?"Loading logs...":"in_progress"===r?"Waiting for live output...":"No output yet."),b=(0,s.useMemo)(()=>n?function(e){if(!e)return[];let t=e.replace(c,(e,t,r,a)=>t&&a?" ":t||a||""),r=[],a={},s=0;for(let e of t.matchAll(d)){var n;let o=null!=(n=e.index)?n:0;if(o>s){let e=t.slice(s,o);r.push({text:e,style:Object.keys(a).length?{...a}:void 0})}a=function(e,t){let r={...e},a=(t||"0").split(";").map(e=>Number.parseInt(e,10)).filter(e=>Number.isFinite(e));for(let e=0;e<a.length;e+=1){let t=a[e];if(0===t){delete r.color,delete r.fontStyle,delete r.fontWeight,delete r.textDecoration;continue}if(1===t){r.fontWeight=700;continue}if(3===t){r.fontStyle="italic";continue}if(4===t){r.textDecoration="underline";continue}if(22===t){delete r.fontWeight;continue}if(23===t){delete r.fontStyle;continue}if(24===t){delete r.textDecoration;continue}if(39===t){delete r.color;continue}if(38===t){let t=a[e+1];if(5===t&&Number.isFinite(a[e+2]))r.color=function(e){let t=Math.max(0,Math.min(255,e));if(t<16)return l[[30,31,32,33,34,35,36,37,90,91,92,93,94,95,96,97][t]]||"#e2e8f0";if(t>=232){let e=Math.round((t-232)/23*255);return"rgb(".concat(e,", ").concat(e,", ").concat(e,")")}let r=t-16,a=Math.floor(r/36),s=Math.floor(r%36/6),n=e=>0===e?0:40*e+55;return"rgb(".concat(n(a),", ").concat(n(s),", ").concat(n(r%6),")")}(a[e+2]),e+=2;else if(2===t&&Number.isFinite(a[e+2])&&Number.isFinite(a[e+3])&&Number.isFinite(a[e+4])){let t=u(a[e+2]),s=u(a[e+3]),n=u(a[e+4]);r.color="rgb(".concat(t,", ").concat(s,", ").concat(n,")"),e+=4}continue}l[t]&&(r.color=l[t])}return r}(a,e[1]||"0"),s=o+e[0].length}return s<t.length&&r.push({text:t.slice(s),style:Object.keys(a).length?{...a}:void 0}),function(e){if(!e.length)return e;let t=[];for(let r of e){if(!r.text)continue;let e=t[t.length-1],a=!!e&&JSON.stringify(e.style||null)===JSON.stringify(r.style||null);e&&a?e.text+=r.text:t.push({text:r.text,style:r.style?{...r.style}:void 0})}return t}(r)}(g):[],[g,n]);return(0,a.jsxs)("div",{className:"border-t border-[var(--card-border)] pt-8",children:[(0,a.jsxs)("button",{type:"button",onClick:()=>o(e=>!e),className:"w-full flex items-center justify-between text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)]","aria-expanded":n,children:[(0,a.jsxs)("span",{className:"flex items-center gap-2",children:[(0,a.jsx)("span",{children:"Terminal Stream"}),v&&(0,a.jsx)("span",{className:"text-[10px] px-2 py-0.5 rounded-full bg-emerald-500/15 text-emerald-400 border border-emerald-500/30",children:"Live"})]}),(0,a.jsx)("span",{className:"text-[10px] text-[var(--muted-foreground)]",children:n?"Collapse":"Expand"})]}),n&&(0,a.jsxs)("div",{className:"mt-4 rounded-xl border border-[var(--card-border)] bg-[#0b0f14] shadow-inner transition-all duration-300 ease-in-out",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between px-3 py-2 border-b border-white/10 text-[10px] uppercase tracking-widest text-white/60",children:[(0,a.jsx)("span",{children:"Run Log"}),(0,a.jsxs)("div",{className:"flex items-center gap-3",children:[(0,a.jsx)("span",{className:"font-mono text-[10px]",children:v?"Streaming":"Idle"}),(0,a.jsx)("button",{onClick:()=>x(!m),className:"hover:text-white transition-colors p-1",title:m?"Collapse View":"Expand View",children:m?(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.jsx)("path",{d:"M8 3v3a2 2 0 0 1-2 2H3"}),(0,a.jsx)("path",{d:"M21 8h-3a2 2 0 0 1-2-2V3"}),(0,a.jsx)("path",{d:"M3 16h3a2 2 0 0 1 2 2v3"}),(0,a.jsx)("path",{d:"M16 21v-3a2 2 0 0 1 2-2h3"})]}):(0,a.jsxs)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[(0,a.jsx)("path",{d:"M15 3h6v6"}),(0,a.jsx)("path",{d:"M9 21H3v-6"}),(0,a.jsx)("path",{d:"M21 3l-7 7"}),(0,a.jsx)("path",{d:"M3 21l7-7"})]})})]})]}),(0,a.jsx)("div",{ref:f,className:"".concat(m?"max-h-[70vh]":"max-h-64"," overflow-y-auto px-3 py-3 font-mono text-xs text-slate-200 whitespace-pre-wrap leading-relaxed transition-all duration-300 ease-in-out"),children:b.map((e,t)=>(0,a.jsx)("span",{style:e.style,children:e.text},"".concat(t,"-").concat(e.text.length)))})]})]})}let x={task:{label:"This Task",icon:"\uD83D\uDCCC",color:"var(--primary)",bgColor:"var(--primary-muted)",description:"Specific to this task only"},project:{label:"Project",icon:"\uD83D\uDCC1",color:"var(--accent)",bgColor:"var(--accent-muted)",description:"Applies to the whole project"},global:{label:"Playbook",icon:"\uD83D\uDCD6",color:"var(--warning)",bgColor:"var(--warning-muted)",description:"Universal best practices"}};function p(e){var t,r;let{learnings:n,taskId:o,projectContext:i,onAddLearning:l,compact:d=!1}=e,[c,u]=(0,s.useState)(!1),[m,p]=(0,s.useState)(""),[h,v]=(0,s.useState)("task"),[f,g]=(0,s.useState)(!1),b=(null==i?void 0:i.project)?[i.project.id,i.project.slug].filter(Boolean):[],j=(null==i||null==(t=i.project)?void 0:t.name)||(null==i||null==(r=i.project)?void 0:r.slug)||"Project",N=async e=>{if(e.preventDefault(),m.trim()&&!f){g(!0);try{let e="project"===h?b[0]:void 0;await l(m,h,e),p(""),u(!1)}finally{g(!1)}}},y=n.filter(e=>"task"===e.scope&&e.scope_id===o),w=b.length?n.filter(e=>"project"===e.scope&&e.scope_id&&b.includes(e.scope_id)):[],k=n.filter(e=>"global"===e.scope),_=(e,t,r)=>{let s=x[e];return(0,a.jsxs)("div",{className:d?"mb-4":"mb-6",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2 ".concat(d?"mb-2":"mb-3"),children:[(0,a.jsx)("span",{className:"w-5 h-5 rounded-lg flex items-center justify-center text-xs",style:{backgroundColor:s.bgColor},children:s.icon}),(0,a.jsxs)("div",{children:[(0,a.jsx)("h4",{className:"text-xs font-semibold",style:{color:s.color},children:r||s.label}),!d&&(0,a.jsx)("p",{className:"text-[10px] text-[var(--muted-foreground)]",children:s.description})]})]}),0===t.length?(0,a.jsx)("p",{className:"text-[10px] text-[var(--muted-foreground)] py-2 text-center bg-[var(--background)] rounded-lg border border-dashed border-[var(--card-border)]",children:"No learnings yet"}):(0,a.jsx)("ul",{className:"space-y-1.5",children:t.map((e,t)=>(0,a.jsx)("li",{className:"text-xs bg-[var(--background)] rounded-lg ".concat(d?"p-2":"p-3"," border border-[var(--card-border)]\n hover:border-[color-mix(in_srgb,var(--primary)_30%,var(--card-border))] \n transition-colors animate-fade-in-up"),style:{animationDelay:"".concat(30*t,"ms")},children:e.content},e.id))})]})};return(0,a.jsxs)("div",{children:[!d&&(0,a.jsxs)("div",{className:"flex items-center gap-2 mb-4",children:[(0,a.jsx)("span",{className:"text-lg",children:"\uD83D\uDCA1"}),(0,a.jsx)("h3",{className:"text-lg font-semibold",children:"Learnings"}),(0,a.jsx)("span",{className:"text-xs text-[var(--muted-foreground)] bg-[var(--muted)] px-2 py-0.5 rounded-full",children:n.length})]}),c?(0,a.jsxs)("form",{onSubmit:N,className:"".concat(d?"mb-3":"mb-5"," space-y-2 animate-fade-in-up"),children:[(0,a.jsx)("textarea",{value:m,onChange:e=>p(e.target.value),placeholder:"What did you learn?",className:"input resize-none ".concat(d?"h-16 text-xs":"h-20 text-sm"),autoFocus:!0,disabled:f}),(0,a.jsx)("div",{className:"flex gap-1",children:["task","project","global"].map(e=>{let t=x[e],r=h===e,s="project"===e&&0===b.length;return(0,a.jsxs)("button",{type:"button",onClick:()=>v(e),disabled:s,className:"\n flex-1 flex items-center justify-center gap-1 px-1.5 py-1 text-[10px] font-medium rounded-lg\n transition-all duration-200\n ".concat(r?"text-white shadow-md":"bg-[var(--background)] text-[var(--muted-foreground)] hover:text-[var(--foreground)]","\n ").concat(s?"opacity-40 cursor-not-allowed":"","\n "),style:r?{backgroundColor:t.color,boxShadow:"0 2px 8px -2px ".concat(t.color,"60")}:void 0,children:[(0,a.jsx)("span",{children:t.icon}),!d&&(0,a.jsx)("span",{children:t.label})]},e)})}),(0,a.jsxs)("div",{className:"flex gap-2",children:[(0,a.jsx)("button",{type:"submit",disabled:!m.trim()||f,className:"btn-primary px-2 py-1 text-xs flex items-center gap-1.5",children:f?"...":"Add"}),(0,a.jsx)("button",{type:"button",onClick:()=>{u(!1),p("")},disabled:f,className:"btn-ghost px-2 py-1 text-xs",children:"Cancel"})]})]}):(0,a.jsx)("button",{onClick:()=>u(!0),className:"w-full ".concat(d?"py-2 mb-3":"py-3 mb-5"," border-2 border-dashed border-[var(--card-border)] rounded-xl \n text-[var(--muted-foreground)] hover:text-[var(--foreground)] \n hover:border-[var(--primary)] hover:bg-[var(--primary-muted)]\n transition-all duration-200 text-xs font-medium"),children:(0,a.jsxs)("span",{className:"flex items-center justify-center gap-2",children:[(0,a.jsx)("svg",{className:"w-3.5 h-3.5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 4v16m8-8H4"})}),"Add learning"]})}),_("task",y),b.length>0&&_("project",w,"Project: ".concat(j)),_("global",k,"Global Playbook")]})}let h=[{id:"ideation",icon:"\uD83D\uDCA1",label:"Ideation",prompt:"Research and scope. Define approach, estimate effort.",color:"var(--warning)"},{id:"planning",icon:"\uD83D\uDCCB",label:"Planning",prompt:"Create detailed plan with tasks, milestones, and dependencies.",color:"var(--info)"},{id:"coding",icon:"\uD83D\uDCBB",label:"Coding",prompt:"Write clean, tested code based on plan.",color:"var(--primary)"},{id:"qa",icon:"\uD83E\uDDEA",label:"QA",prompt:"Test thoroughly. Find edge cases. Fix bugs.",color:"var(--accent)"},{id:"acceptance",icon:"✓",label:"Acceptance",prompt:"Demo to user. Get sign-off. Address feedback.",color:"#8b5cf6"},{id:"pr",icon:"\uD83D\uDD00",label:"PR",prompt:"Create and review pull request. Ensure all checks pass and merge.",color:"#f97316"},{id:"pr_review",icon:"\uD83D\uDC40",label:"PR Review",prompt:"Review the PR. Verify code quality and functionality. Approve or request changes.",color:"#ef4444"},{id:"merge",icon:"\uD83D\uDE80",label:"Merge",prompt:"Merge the PR and verify deployment.",color:"#22c55e"},{id:"done",icon:"✅",label:"Done",prompt:"Task finished and shipped.",color:"var(--success)"}];function v(e){let{currentStage:t,onStageChange:r,readonly:s,size:n="md",stageDecisions:o,stages:i}=e,l=i||h,d=t?l.findIndex(e=>e.id===t):-1;return(0,a.jsx)("div",{className:"flex items-center gap-1 flex-wrap",role:"tablist","aria-label":"Task stages",children:l.map((e,i)=>{let c=e.id===t,u=d>i,m=!s&&r,x=null==o?void 0:o[e.id],p=["".concat(e.label,": ").concat(e.prompt||"")];return(null==x?void 0:x.decision)&&p.push("Decision: ".concat(x.decision)),(null==x?void 0:x.rationale)&&p.push("Rationale: ".concat(x.rationale)),(0,a.jsxs)("button",{onClick:()=>m&&r(e.id),disabled:s,title:p.join(" | "),role:"tab","aria-selected":c,"aria-disabled":s,className:"\n group relative flex items-center gap-1.5 rounded-lg font-medium\n transition-all duration-200 select-none\n focus-visible:outline-2 focus-visible:outline-[var(--ring)] focus-visible:outline-offset-2\n ".concat("sm"===n?"px-2 py-1 text-[10px]":"px-3 py-1.5 text-xs","\n ").concat(c?"text-white shadow-md":u?"bg-[var(--success-muted)] text-[var(--success)]":d<i&&-1!==d?"bg-[var(--background)] text-[var(--muted-foreground)] opacity-50":"bg-[var(--background)] text-[var(--muted-foreground)]","\n ").concat(m&&!c?"hover:bg-[var(--card-border)] hover:text-[var(--foreground)] cursor-pointer":"","\n ").concat(s?"cursor-default":"","\n "),style:c?{backgroundColor:e.color,boxShadow:"0 4px 14px -3px ".concat(e.color,"40")}:void 0,children:[(0,a.jsx)("span",{className:"".concat("sm"===n?"text-xs":"text-sm"," ").concat(c?"":"opacity-80"),children:e.icon}),(0,a.jsx)("span",{className:"hidden lg:inline",children:e.label}),i<l.length-1&&(0,a.jsx)("span",{className:"\n absolute -right-1 top-1/2 -translate-y-1/2 w-2 h-0.5 \n ".concat(u||c?"bg-[var(--success)]":"bg-[var(--card-border)]","\n transition-colors duration-300 hidden lg:block\n ")}),(0,a.jsx)("span",{className:"absolute bottom-full left-1/2 -translate-x-1/2 mb-2 px-2 py-1 text-[10px] font-normal whitespace-nowrap bg-[var(--card-bg)] text-[var(--foreground)] border border-[var(--card-border)] rounded-md shadow-lg opacity-0 group-hover:opacity-100 pointer-events-none transition-opacity duration-200 lg:hidden z-50",children:e.label})]},e.id)})})}var f=r(8661),g=r.n(f),b=r(154),j=r(758),N=r(7004),y=r(6135),w=r(5226);let k=e=>{let{editor:t}=e;return t?(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-1 p-2 border-b border-[var(--card-border)] mb-2 sticky top-0 bg-[var(--card-bg)] z-10 opacity-90 backdrop-blur-sm",children:[(0,a.jsx)("button",{onClick:()=>t.chain().focus().toggleBold().run(),disabled:!t.can().chain().focus().toggleBold().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("bold")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Bold",children:(0,a.jsx)("span",{className:"font-bold font-serif",children:"B"})}),(0,a.jsx)("button",{onClick:()=>t.chain().focus().toggleItalic().run(),disabled:!t.can().chain().focus().toggleItalic().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("italic")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Italic",children:(0,a.jsx)("span",{className:"italic font-serif",children:"I"})}),(0,a.jsx)("button",{onClick:()=>t.chain().focus().toggleStrike().run(),disabled:!t.can().chain().focus().toggleStrike().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("strike")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Strike",children:(0,a.jsx)("span",{className:"line-through font-serif",children:"S"})}),(0,a.jsx)("div",{className:"w-px h-4 bg-[var(--card-border)] mx-1"}),(0,a.jsx)("button",{onClick:()=>t.chain().focus().toggleCode().run(),disabled:!t.can().chain().focus().toggleCode().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("code")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Code",children:(0,a.jsx)("span",{className:"font-mono text-xs",children:"<>"})}),(0,a.jsx)("button",{onClick:()=>t.chain().focus().toggleCodeBlock().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("codeBlock")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Code Block",children:(0,a.jsx)("span",{className:"font-mono text-xs",children:"CB"})}),(0,a.jsx)("div",{className:"w-px h-4 bg-[var(--card-border)] mx-1"}),(0,a.jsx)("button",{onClick:()=>t.chain().focus().toggleHeading({level:1}).run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("heading",{level:1})?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"H1",children:(0,a.jsx)("span",{className:"font-bold text-xs",children:"H1"})}),(0,a.jsx)("button",{onClick:()=>t.chain().focus().toggleHeading({level:2}).run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("heading",{level:2})?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"H2",children:(0,a.jsx)("span",{className:"font-bold text-xs",children:"H2"})}),(0,a.jsx)("button",{onClick:()=>t.chain().focus().toggleHeading({level:3}).run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("heading",{level:3})?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"H3",children:(0,a.jsx)("span",{className:"font-bold text-xs",children:"H3"})}),(0,a.jsx)("div",{className:"w-px h-4 bg-[var(--card-border)] mx-1"}),(0,a.jsx)("button",{onClick:()=>t.chain().focus().toggleBulletList().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("bulletList")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Bullet List",children:(0,a.jsx)("span",{className:"text-xs",children:"• List"})}),(0,a.jsx)("button",{onClick:()=>t.chain().focus().toggleOrderedList().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("orderedList")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Ordered List",children:(0,a.jsx)("span",{className:"text-xs",children:"1. List"})}),(0,a.jsx)("button",{onClick:()=>t.chain().focus().toggleBlockquote().run(),className:"p-1.5 rounded hover:bg-[var(--muted)] ".concat(t.isActive("blockquote")?"bg-[var(--muted)] text-[var(--foreground)]":"text-[var(--muted-foreground)]"),title:"Quote",children:(0,a.jsx)("span",{className:"text-xs serif italic",children:'""'})})]}):null};function _(e){let{content:t,editable:r=!0,onChange:n,onBlur:o,placeholder:i="Add a description..."}=e,l=(0,b.hG)({extensions:[j.A,y.Ay.configure({openOnClick:!1}),N.A.configure({placeholder:i,emptyEditorClass:"is-editor-empty before:content-[attr(data-placeholder)] before:text-[var(--muted-foreground)] before:float-left before:pointer-events-none before:h-0"}),w.o.configure({html:!1,transformPastedText:!0,transformCopiedText:!0})],immediatelyRender:!1,content:t,editable:r,editorProps:{attributes:{class:"prose prose-sm max-w-none focus:outline-none min-h-[100px] text-[var(--foreground)]"}},onUpdate:e=>{let{editor:t}=e;null==n||n(t.storage.markdown.getMarkdown())},onBlur:()=>{null==o||o()}});return(0,s.useEffect)(()=>{l&&t!==l.storage.markdown.getMarkdown()&&!l.isFocused&&l.commands.setContent(t)},[t,l]),(0,a.jsxs)("div",{className:"jsx-cdf669dd826a0677 relative group",children:[r&&(0,a.jsx)(k,{editor:l}),(0,a.jsx)(b.$Z,{editor:l,className:"rich-text-editor"}),(0,a.jsx)(g(),{id:"cdf669dd826a0677",children:".rich-text-editor .ProseMirror{min-height:100px;outline:none}.rich-text-editor .ProseMirror p{margin-bottom:.75em;line-height:1.6}.rich-text-editor .ProseMirror h1{font-size:1.5em;font-weight:700;margin-top:1em;margin-bottom:.5em}.rich-text-editor .ProseMirror h2{font-size:1.25em;font-weight:600;margin-top:1em;margin-bottom:.5em}.rich-text-editor .ProseMirror h3{font-size:1.1em;font-weight:600;margin-top:1em;margin-bottom:.5em}.rich-text-editor .ProseMirror ul{list-style-type:disc;padding-left:1.5em;margin-bottom:.75em}.rich-text-editor .ProseMirror ol{list-style-type:decimal;padding-left:1.5em;margin-bottom:.75em}.rich-text-editor .ProseMirror blockquote{border-left:3px solid var(--card-border);padding-left:1em;font-style:italic;color:var(--muted-foreground)}.rich-text-editor .ProseMirror pre{background:var(--muted);padding:.75em;border-radius:var(--radius-sm);font-family:monospace;overflow-x:auto;margin-bottom:.75em}.rich-text-editor .ProseMirror code{background:var(--muted);padding:.2em .4em;border-radius:var(--radius-sm);font-family:monospace;font-size:.85em}.rich-text-editor .ProseMirror a{color:var(--primary);text-decoration:underline}"})]})}var C=r(91),S=r(2619),D=r.n(S);function A(e){var t,r,s;let{projectContext:n,fallbackProjectSlug:o}=e,i=(null==n?void 0:n.project)||null,l=null!=(t=null==n?void 0:n.repos)?t:[],d=null!=(r=null==n?void 0:n.learnings)?r:[],c=(s=null==i?void 0:i.metadata)&&"object"==typeof s?Object.entries(s).filter(e=>{let[t]=e;return!!t}):[];if(!i)return(0,a.jsxs)("div",{className:"p-4 rounded-2xl border border-dashed border-[var(--card-border)] bg-[var(--card-bg)]/60 space-y-3",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-xs font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Project Context"}),(0,a.jsx)("p",{className:"text-sm text-[var(--muted-foreground)]",children:o?'Task is tagged with "'.concat(o,'" but no structured project context is available yet.'):"This task is not connected to a project. Link it to unlock repo maps, CI/CD notes, and project learnings."})]}),(0,a.jsx)(D(),{href:"/projects",className:"inline-flex items-center justify-center text-xs font-semibold px-3 py-1.5 rounded-full border border-[var(--card-border)] hover:border-[var(--primary)] hover:text-[var(--primary)] transition-colors",children:"Manage Projects"})]});let u=d.slice(0,3),m=d.length-u.length;return(0,a.jsxs)("div",{className:"p-4 rounded-2xl border border-[var(--card-border)] bg-[var(--card-bg)] space-y-4",children:[(0,a.jsxs)("div",{className:"flex items-start justify-between gap-3",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-xs font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Project Context"}),(0,a.jsx)("h3",{className:"text-base font-semibold leading-tight mt-1",children:i.name}),(0,a.jsx)("p",{className:"text-[11px] uppercase tracking-wide text-[var(--muted-foreground)]",children:i.slug})]}),(0,a.jsx)(D(),{href:"/projects",className:"text-[11px] font-semibold px-2 py-1 rounded-full border border-[var(--card-border)] hover:border-[var(--primary)] hover:text-[var(--primary)] transition-colors",children:"View"})]}),i.description&&(0,a.jsx)("p",{className:"text-sm text-[var(--foreground)] whitespace-pre-line",children:i.description}),i.ci_cd_info&&(0,a.jsxs)("div",{className:"text-xs space-y-1",children:[(0,a.jsx)("p",{className:"font-semibold text-[var(--muted-foreground)] uppercase tracking-wide",children:"CI / CD"}),(0,a.jsx)("p",{className:"text-[var(--foreground)] text-sm",children:i.ci_cd_info})]}),c.length>0&&(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)] mb-2",children:"Metadata"}),(0,a.jsx)("dl",{className:"space-y-1.5",children:c.map(e=>{let[t,r]=e;return(0,a.jsxs)("div",{className:"flex items-start justify-between gap-2 text-xs",children:[(0,a.jsx)("dt",{className:"font-semibold text-[var(--foreground)]",children:t}),(0,a.jsx)("dd",{className:"text-[var(--muted-foreground)] text-right max-w-[160px]",children:"string"==typeof r?r:JSON.stringify(r)})]},t)})})]}),(0,a.jsxs)("div",{children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,a.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)]",children:"Repository Map"}),(0,a.jsx)("span",{className:"text-[11px] text-[var(--muted-foreground)]",children:l.length?"".concat(l.length," connected"):"None"})]}),0===l.length?(0,a.jsx)("p",{className:"text-xs text-[var(--muted-foreground)]",children:"Add repositories to help agents navigate local and remote paths."}):(0,a.jsx)("ul",{className:"space-y-2",children:l.map(e=>(0,a.jsxs)("li",{className:"p-2 rounded-xl border border-[var(--card-border)] bg-[var(--background)] space-y-1 text-xs",children:[(0,a.jsx)("p",{className:"font-semibold text-[var(--foreground)]",children:e.name}),e.path&&(0,a.jsxs)("p",{className:"text-[var(--muted-foreground)]",children:["Path: ",e.path]}),e.git_url&&(0,a.jsxs)("p",{className:"text-[var(--muted-foreground)] break-all",children:["Repo: ",(0,a.jsx)("span",{className:"text-[var(--primary)]",children:e.git_url})]}),e.notes&&(0,a.jsxs)("p",{className:"text-[var(--muted-foreground)]",children:["Notes: ",e.notes]})]},e.id||e.name))})]}),d.length>0&&(0,a.jsxs)("div",{children:[(0,a.jsx)("p",{className:"text-[11px] font-semibold uppercase tracking-wide text-[var(--muted-foreground)] mb-2",children:"Project Learnings"}),(0,a.jsx)("ul",{className:"space-y-1 text-xs text-[var(--foreground)]",children:u.map((e,t)=>(0,a.jsxs)("li",{className:"leading-relaxed",children:["• ",e]},"".concat(e,"-").concat(t)))}),m>0&&(0,a.jsxs)("p",{className:"text-[11px] text-[var(--muted-foreground)] mt-1",children:["+",m," more learnings in the panel below"]})]})]})}var M=r(8545);let L={queued:{label:"Queued",color:"var(--status-queued)",bgColor:"var(--status-queued-bg)"},in_progress:{label:"In Progress",color:"var(--status-in-progress)",bgColor:"var(--status-in-progress-bg)"},blocked:{label:"Blocked",color:"var(--status-blocked)",bgColor:"var(--status-blocked-bg)"},completed:{label:"Completed",color:"var(--status-completed)",bgColor:"var(--status-completed-bg)"},failed:{label:"Failed",color:"var(--status-failed)",bgColor:"var(--status-failed-bg)"}},P=["queued","in_progress","blocked","completed","failed"];function I(e){if(!e)return"N/A";let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function O(e){let t=(e.log_type||"output").toLowerCase();return"output"===t?e.content||"":"[".concat(t,"] ").concat(e.content||"")}function E(e){var t,r,i,l,d,c,u,x,f,g,b,j;let{task:N,comments:y,learnings:w,projectContext:k,projects:S,stage_config:D,stages:E,onClose:B,onAddComment:F,onDeleteComment:R,onAddLearning:H,onUpdate:q,onDelete:W}=e,{providers:z}=(0,M.u)(),{projects:V}=(0,C.Y)(),U=S||V,Q=E||h,[G,J]=(0,s.useState)(!1),[Y,$]=(0,s.useState)(!1),[Z,K]=(0,s.useState)(!1),[X,ee]=(0,s.useState)(""),[et,er]=(0,s.useState)(null),[ea,es]=(0,s.useState)(!1),[en,eo]=(0,s.useState)(N.provider||""),[ei,el]=(0,s.useState)(N.model||""),[ed,ec]=(0,s.useState)(null!=(d=N.swarm)&&d),[eu,em]=(0,s.useState)([]),[ex,ep]=(0,s.useState)("gemini"),[eh,ev]=(0,s.useState)(""),[ef,eg]=(0,s.useState)(!1),[eb,ej]=(0,s.useState)(null),eN=N.resolved_provider||(null==D?void 0:D.provider)||"gemini",ey=N.resolved_model||(null==D?void 0:D.model)||"",ew=null!=(u=null!=(c=N.swarm)?c:null==D?void 0:D.swarm)&&u;N.resolved_swarm_models||null==D||D.swarm_models;let ek=null!=(x=null!=k?k:N.project_context)?x:null,e_=null!=(g=null!=(f=null==ek||null==(t=ek.project)?void 0:t.slug)?f:N.project)?g:null,[eC,eS]=(0,s.useState)(""),eD=e=>{let t=e.match(/^---\n[\s\S]*?\n---\n([\s\S]*)$/);return t?t[1]:e};(0,s.useEffect)(()=>{var e;eo(N.provider||""),el(N.model||""),ec(null!=(e=N.swarm)&&e),em(Array.isArray(N.swarm_models)?N.swarm_models.filter(e=>e&&"string"==typeof e.provider&&"string"==typeof e.model).map(e=>({provider:e.provider.trim(),model:e.model.trim()})).filter(e=>e.provider&&e.model):[])},[N.provider,N.model,N.swarm,N.swarm_models,N.id]),(0,s.useEffect)(()=>{var e;eS(null!=(e=N.description)?e:eD(N.content||""))},[N.content,N.description,N.id]),(0,s.useEffect)(()=>{let e=!1;if("failed"!==N.status){ee(""),er(null),es(!1);return}return(async()=>{es(!0),er(null);try{let t=await fetch("/api/tasks/".concat(N.id,"/logs?tail=200")),r=await t.json().catch(()=>({}));if(!t.ok)throw Error((null==r?void 0:r.error)||"Failed to load logs (".concat(t.status,")"));let a=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:2e4,r=Array.isArray(e)?e:[];if(!r.length)return"";let a=r.slice().sort((e,t)=>e.created_at===t.created_at?e.id.localeCompare(t.id):e.created_at.localeCompare(t.created_at)),s=a.filter(e=>"error"===(e.log_type||"").toLowerCase()),n=a.filter(e=>{let t=String(e.content||"");return t.includes("[execution/")&&(t.includes("stderr_tail:")||t.includes("stdout_tail:")||t.includes(" phase error")||t.includes(" error=")||t.includes(" exit="))}),o=(s.length>0?s.slice(-8):n.length>0?n.slice(-4):a.slice(-12)).map(O).join("\n");return o?o.length>t?o.slice(-t):o:""}((null==r?void 0:r.logs)||[]);e||ee(a)}catch(t){e||er(t instanceof Error?t.message:String(t))}finally{e||es(!1)}})(),()=>{e=!0}},[N.id,N.status]);let eA=async()=>{K(!0);try{await (null==W?void 0:W())}finally{K(!1),$(!1)}},eM=(0,n.YQ)(async e=>{var t;e!==(null!=(t=N.description)?t:eD(N.content||""))&&await q({description:e})},1e3),eL=(0,n.YQ)(async e=>{eg(!0),ej(null);try{await q(e)}catch(e){ej(e instanceof Error?e.message:"Failed to update settings")}finally{eg(!1)}},1e3),eP=async e=>{await q({stage:e,status:"done"===e?"completed":"ideation"===e?"queued":"in_progress"})},eI=async e=>{if(!e)return void await q({project:null,project_id:null});let t=U.find(t=>t.id===e);t&&await q({project:t.slug,project_id:t.id})},eO=async()=>{try{await eT("queued")}catch(e){console.error("Failed to retry task",e)}},eE=async()=>{try{await eT("queued")}catch(e){console.error("Failed to unblock task",e)}},eT=async e=>{let t={status:e};"queued"===e&&(t.started_at=null,t.completed_at=null,t.error=void 0),"completed"!==e&&"failed"!==e&&"blocked"!==e||N.completed_at||(t.completed_at=new Date().toISOString()),await q(t)};L[N.status||"queued"];let eB=N.stage_decisions||{},eF=N.stage?eB[N.stage]:void 0,eR=function(e,t){if(!e||"object"!=typeof e)return null;let r=Object.entries(e).filter(e=>{let[,r]=e;return!!(r&&t(r))}).sort((e,t)=>{var r,a;let s=Date.parse((null==(r=e[1])?void 0:r.decided_at)||""),n=Date.parse((null==(a=t[1])?void 0:a.decided_at)||"");return(Number.isNaN(n)?0:n)-(Number.isNaN(s)?0:s)});if(!r.length)return null;let[a,s]=r[0];return{stage:a,decision:s}}(eB,e=>"failed"===e.decision),eH=Object.entries(eB).filter(e=>{let[,t]=e;return(null==t?void 0:t.decision)==="blocked"}).sort((e,t)=>{var r,a;let s=Date.parse((null==(r=e[1])?void 0:r.decided_at)||""),n=Date.parse((null==(a=t[1])?void 0:a.decided_at)||"");return(Number.isNaN(n)?0:n)-(Number.isNaN(s)?0:s)})[0],eq=(null==eF?void 0:eF.decision)==="blocked"?N.stage:null==eH?void 0:eH[0],eW=eq&&eB[eq]?eB[eq]:void 0,ez=null==eW?void 0:eW.rationale,eV="string"==typeof N.error&&N.error.trim()?N.error.trim():((null==eR||null==(r=eR.decision)?void 0:r.rationale)||(null==eR||null==(i=eR.decision)?void 0:i.final_result)||"").trim()||"Task marked failed.";return(0,a.jsx)("div",{className:"modal-backdrop",onClick:e=>e.target===e.currentTarget&&B(),children:(0,a.jsxs)("div",{className:"bg-[var(--card-bg)] w-full max-w-[1200px] h-[90vh] rounded-xl shadow-2xl overflow-hidden flex flex-col animate-scale-in border border-[var(--card-border)] m-4",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between px-6 py-4 border-b border-[var(--card-border)] bg-[var(--card-bg)]",children:[(0,a.jsxs)("div",{className:"flex items-center gap-3",children:[(0,a.jsx)("span",{className:"text-[var(--muted-foreground)] font-mono text-sm",children:N.slug||N.id.slice(0,6)}),(0,a.jsx)(v,{currentStage:N.stage,onStageChange:eP,stageDecisions:N.stage_decisions,stages:Q})]}),(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[ef&&(0,a.jsxs)("span",{className:"text-[10px] text-[var(--muted-foreground)] animate-pulse flex items-center gap-1 mr-2",children:[(0,a.jsx)("span",{className:"w-1.5 h-1.5 rounded-full bg-[var(--primary)]"}),"Saving..."]}),W&&(0,a.jsx)("button",{onClick:()=>$(!0),className:"btn-ghost p-2 rounded hover:bg-[var(--destructive-muted)] hover:text-[var(--destructive)]",title:"Delete Task",children:(0,a.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 7l-.867 12.142A2 2 0 0116.138 21H7.862a2 2 0 01-1.995-1.858L5 7m5 4v6m4-6v6m1-10V4a1 1 0 00-1-1h-4a1 1 0 00-1 1v3M4 7h16"})})}),(0,a.jsx)("button",{onClick:B,className:"btn-ghost p-2 rounded",title:"Close (Esc)",children:(0,a.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"})})})]})]}),Y&&(0,a.jsx)("div",{className:"absolute inset-0 bg-black/60 backdrop-blur-sm flex items-center justify-center z-50 rounded-xl animate-fade-in",children:(0,a.jsxs)("div",{className:"modal-content p-6 max-w-sm mx-4 animate-scale-in bg-[var(--card-bg)]",children:[(0,a.jsx)("h3",{className:"text-lg font-bold mb-2",children:"Delete Task?"}),(0,a.jsxs)("p",{className:"text-[var(--muted-foreground)] text-sm mb-6",children:["Are you sure you want to delete ",(0,a.jsx)("strong",{className:"text-[var(--foreground)]",children:N.slug||N.id.slice(0,6)}),"? This cannot be undone."]}),(0,a.jsxs)("div",{className:"flex justify-end gap-3",children:[(0,a.jsx)("button",{onClick:()=>$(!1),disabled:Z,className:"btn-ghost",children:"Cancel"}),(0,a.jsx)("button",{onClick:eA,disabled:Z,className:"btn-destructive px-4 py-2 rounded-md",children:Z?"Deleting...":"Delete"})]})]})}),(0,a.jsxs)("div",{className:"flex flex-1 overflow-hidden",children:[(0,a.jsx)("div",{className:"flex-1 overflow-y-auto scrollbar-thin",children:(0,a.jsxs)("div",{className:"max-w-3xl mx-auto p-8",children:["failed"===N.status&&(0,a.jsxs)("div",{className:"mb-8 p-4 rounded-lg bg-[var(--status-failed-bg)] border border-[var(--status-failed)] text-[var(--status-failed)]",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z"})}),(0,a.jsx)("span",{className:"font-bold text-sm uppercase tracking-wider",children:"Task Execution Failed"})]}),(0,a.jsx)("button",{onClick:eO,className:"btn-ghost px-3 py-1 text-xs font-bold bg-white/20 rounded hover:bg-white/30 transition-colors uppercase",children:"Retry Task"})]}),(0,a.jsx)("p",{className:"text-sm font-medium",children:eV}),(0,a.jsxs)("div",{className:"mt-3 text-xs rounded-md border border-[var(--status-failed)]/40 bg-white/50 p-3",children:[(0,a.jsx)("h4",{className:"font-semibold uppercase tracking-wider mb-2",children:"Failure Metadata"}),(0,a.jsxs)("div",{className:"grid grid-cols-[140px_1fr] gap-x-3 gap-y-1.5",children:[(0,a.jsx)("span",{className:"opacity-70",children:"Stage"}),(0,a.jsx)("span",{className:"font-medium",children:N.stage||(null==eR?void 0:eR.stage)||"N/A"}),(0,a.jsx)("span",{className:"opacity-70",children:"Exit Code"}),(0,a.jsx)("span",{className:"font-mono",children:null!=(b=N.exit_code)?b:"N/A"}),(0,a.jsx)("span",{className:"opacity-70",children:"PID"}),(0,a.jsx)("span",{className:"font-mono",children:null!=(j=N.pid)?j:"N/A"}),(0,a.jsx)("span",{className:"opacity-70",children:"Completed At"}),(0,a.jsx)("span",{className:"font-medium",children:I(N.completed_at)}),(null==eR?void 0:eR.decision)&&(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("span",{className:"opacity-70",children:"Decision"}),(0,a.jsx)("span",{className:"font-medium",children:eR.decision.decision}),(0,a.jsx)("span",{className:"opacity-70",children:"Rationale"}),(0,a.jsx)("span",{className:"font-medium break-words",children:eR.decision.rationale||"N/A"}),(0,a.jsx)("span",{className:"opacity-70",children:"Final Result"}),(0,a.jsx)("span",{className:"font-medium break-words",children:eR.decision.final_result||"N/A"}),(0,a.jsx)("span",{className:"opacity-70",children:"Decided At"}),(0,a.jsx)("span",{className:"font-medium",children:I(eR.decision.decided_at)})]})]})]}),(ea||X||et)&&(0,a.jsxs)("details",{className:"mt-3",open:!0,children:[(0,a.jsx)("summary",{className:"cursor-pointer select-none text-xs font-semibold uppercase tracking-wider opacity-90",children:"Error Details"}),(0,a.jsxs)("div",{className:"mt-2 rounded-md border border-[var(--status-failed)]/40 bg-[#0b0f14] text-slate-200",children:[(0,a.jsxs)("div",{className:"px-3 py-2 border-b border-white/10 text-[10px] uppercase tracking-widest text-white/60 flex items-center justify-between",children:[(0,a.jsx)("span",{children:"Log Excerpt"}),(0,a.jsx)("span",{className:"font-mono",children:ea?"Loading...":et?"Unavailable":"Ready"})]}),(0,a.jsx)("pre",{className:"px-3 py-3 text-xs font-mono whitespace-pre-wrap max-h-64 overflow-y-auto",children:et?"Failed to load error details: ".concat(et):X||"No error logs found."})]})]})]}),"blocked"===N.status&&(0,a.jsxs)("div",{className:"mb-8 p-4 rounded-lg bg-[var(--status-blocked-bg)] border border-[var(--status-blocked)] text-[var(--status-blocked)]",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between mb-2",children:[(0,a.jsxs)("div",{className:"flex items-center gap-2",children:[(0,a.jsx)("svg",{className:"w-5 h-5",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z"})}),(0,a.jsx)("span",{className:"font-bold text-sm uppercase tracking-wider",children:"Task Blocked"})]}),(0,a.jsx)("button",{onClick:eE,className:"btn-ghost px-3 py-1 text-xs font-bold bg-white/20 rounded hover:bg-white/30 transition-colors uppercase",children:"Unblock Task"})]}),(0,a.jsx)("p",{className:"text-sm opacity-90 pl-7 mb-4",children:ez||"Task is blocked and requires manual intervention."}),(0,a.jsxs)("div",{className:"ml-7 text-xs rounded-md border border-[var(--status-blocked)]/40 bg-white/50 p-3",children:[(0,a.jsx)("h4",{className:"font-semibold uppercase tracking-wider mb-2",children:"Blocked Metadata"}),(0,a.jsxs)("div",{className:"grid grid-cols-[140px_1fr] gap-x-3 gap-y-1.5",children:[(0,a.jsx)("span",{className:"opacity-70",children:"Decision Stage"}),(0,a.jsx)("span",{className:"font-medium",children:eq||N.stage||"N/A"}),(0,a.jsx)("span",{className:"opacity-70",children:"Decision"}),(0,a.jsx)("span",{className:"font-medium",children:(null==eW?void 0:eW.decision)||"blocked"}),(0,a.jsx)("span",{className:"opacity-70",children:"Final Result"}),(0,a.jsx)("span",{className:"font-medium break-words",children:(null==eW?void 0:eW.final_result)||"N/A"}),(0,a.jsx)("span",{className:"opacity-70",children:"Rationale"}),(0,a.jsx)("span",{className:"font-medium break-words",children:(null==eW?void 0:eW.rationale)||"N/A"}),(0,a.jsx)("span",{className:"opacity-70",children:"Decided At"}),(0,a.jsx)("span",{className:"font-medium",children:I(null==eW?void 0:eW.decided_at)}),(0,a.jsx)("span",{className:"opacity-70",children:"Workflow ID"}),(0,a.jsx)("span",{className:"font-mono break-all",children:N.workflow_id||"N/A"}),(0,a.jsx)("span",{className:"opacity-70",children:"Workflow Run ID"}),(0,a.jsx)("span",{className:"font-mono break-all",children:N.workflow_run_id||"N/A"}),(0,a.jsx)("span",{className:"opacity-70",children:"Orchestration Status"}),(0,a.jsx)("span",{className:"font-medium",children:N.orchestration_status||"N/A"}),(0,a.jsx)("span",{className:"opacity-70",children:"Last Orchestration Update"}),(0,a.jsx)("span",{className:"font-medium",children:I(N.last_orchestration_update)}),(0,a.jsx)("span",{className:"opacity-70",children:"Started At"}),(0,a.jsx)("span",{className:"font-medium",children:I(N.started_at)}),(0,a.jsx)("span",{className:"opacity-70",children:"Completed At"}),(0,a.jsx)("span",{className:"font-medium",children:I(N.completed_at)})]})]})]}),(0,a.jsx)("div",{className:"mb-12 min-h-[150px]",children:(0,a.jsx)(_,{content:eC,onChange:e=>{eS(e),eM(e)},placeholder:"Add more detail to this task..."})}),(0,a.jsx)(m,{taskId:N.id,status:N.status}),N.history&&N.history.length>0&&(0,a.jsxs)("div",{className:"mt-12 border-t border-[var(--card-border)] pt-8",children:[(0,a.jsx)("h3",{className:"text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)] mb-4",children:"Execution History"}),(0,a.jsx)("div",{className:"overflow-x-auto",children:(0,a.jsxs)("table",{className:"w-full text-sm text-left",children:[(0,a.jsx)("thead",{className:"text-xs text-[var(--muted-foreground)] border-b border-[var(--card-border)]",children:(0,a.jsxs)("tr",{children:[(0,a.jsx)("th",{className:"py-2 pr-4 font-medium",children:"Started"}),(0,a.jsx)("th",{className:"py-2 pr-4 font-medium",children:"Duration"}),(0,a.jsx)("th",{className:"py-2 pr-4 font-medium",children:"PID"}),(0,a.jsx)("th",{className:"py-2 pr-4 font-medium",children:"Exit Code"})]})}),(0,a.jsx)("tbody",{className:"divide-y divide-[var(--card-border)]",children:N.history.map(e=>{var t,r;return(0,a.jsxs)("tr",{className:"hover:bg-[var(--muted)]/20 transition-colors",children:[(0,a.jsx)("td",{className:"py-2 pr-4 font-mono text-xs opacity-80",children:e.started_at?new Date(e.started_at).toLocaleString():"N/A"}),(0,a.jsx)("td",{className:"py-2 pr-4 font-mono text-xs opacity-80",children:e.started_at&&e.completed_at?function(e,t){let r=t.getTime()-e.getTime();if(r<1e3)return"".concat(r,"ms");let a=Math.floor(r/1e3);if(a<60)return"".concat(a,"s");let s=Math.floor(a/60);return"".concat(s,"m ").concat(a%60,"s")}(new Date(e.started_at),new Date(e.completed_at)):"-"}),(0,a.jsx)("td",{className:"py-2 pr-4 font-mono text-xs opacity-80",children:null!=(t=e.pid)?t:"-"}),(0,a.jsx)("td",{className:"py-2 pr-4",children:(0,a.jsx)("span",{className:"inline-flex items-center px-1.5 py-0.5 rounded text-[10px] font-medium border ".concat(0===e.exit_code?"bg-[var(--status-completed-bg)] text-[var(--status-completed)] border-[var(--status-completed)]/20":"bg-[var(--status-failed-bg)] text-[var(--status-failed)] border-[var(--status-failed)]/20"),children:null!=(r=e.exit_code)?r:"-"})})]},e.id)})})]})})]}),(0,a.jsxs)("div",{className:"border-t border-[var(--card-border)] pt-8",children:[(0,a.jsxs)("h3",{className:"text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)] mb-6 flex items-center justify-between",children:[(0,a.jsx)("span",{children:"Comments"}),(0,a.jsx)("span",{className:"text-[10px] bg-[var(--muted)] px-2 py-0.5 rounded-full",children:y.length})]}),(0,a.jsx)(o,{comments:y,onAddComment:F,onDeleteComment:R})]})]})}),(0,a.jsxs)("div",{className:"w-80 border-l border-[var(--card-border)] bg-[var(--muted)]/20 overflow-y-auto scrollbar-thin p-6 flex flex-col gap-8 flex-shrink-0",children:[(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"Stage"}),(0,a.jsx)("select",{value:N.stage,onChange:e=>eP(e.target.value),className:"text-sm font-medium bg-[var(--card-bg)] border border-[var(--card-border)] rounded px-2 py-1 focus:border-[var(--primary)] outline-none transition-colors cursor-pointer",children:Q.map(e=>(0,a.jsx)("option",{value:e.id,children:e.label},e.id))})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"Status"}),(0,a.jsx)("select",{value:N.status||"queued",onChange:e=>eT(e.target.value),className:"text-sm font-medium bg-[var(--card-bg)] border border-[var(--card-border)] rounded px-2 py-1 focus:border-[var(--primary)] outline-none transition-colors cursor-pointer",children:P.map(e=>(0,a.jsx)("option",{value:e,children:L[e].label},e))})]}),(0,a.jsx)(T,{label:"ID",value:N.id}),N.slug&&(0,a.jsx)(T,{label:"Slug",value:N.slug,truncate:!0}),(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"Project"}),(0,a.jsxs)("select",{value:N.project_id||(null==(l=U.find(e=>e.slug===N.project))?void 0:l.id)||"",onChange:e=>eI(e.target.value),className:"text-sm font-medium bg-[var(--card-bg)] border border-[var(--card-border)] rounded px-2 py-1 focus:border-[var(--primary)] outline-none transition-colors cursor-pointer max-w-[150px] truncate",children:[(0,a.jsx)("option",{value:"",children:"None"}),U.map(e=>(0,a.jsx)("option",{value:e.id,children:e.name},e.id))]})]}),(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"Provider"}),(0,a.jsx)("span",{className:"text-sm font-medium",children:ew?"Swarm":eN||"Default"})]}),void 0!==N.pid&&null!==N.pid&&(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"PID"}),(0,a.jsx)("span",{className:"text-sm font-mono font-medium",title:"Process ID",children:N.pid})]}),void 0!==N.exit_code&&null!==N.exit_code&&(0,a.jsxs)("div",{className:"flex items-center justify-between",children:[(0,a.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:"Exit Code"}),(0,a.jsx)("span",{className:"text-sm font-mono font-medium ".concat(0===N.exit_code?"text-[var(--status-completed)]":"text-[var(--status-failed)]"),children:N.exit_code})]})]}),(0,a.jsx)("div",{className:"w-full h-px bg-[var(--card-border)]"}),(0,a.jsxs)("div",{className:"space-y-4",children:[(0,a.jsx)("div",{className:"flex items-center justify-between",children:(0,a.jsx)("h4",{className:"text-xs font-semibold uppercase tracking-wider text-[var(--muted-foreground)]",children:"Execution"})}),(0,a.jsxs)("div",{className:"flex items-center justify-between bg-[var(--card-bg)] p-2 rounded border border-[var(--card-border)]",children:[(0,a.jsx)("span",{className:"text-sm font-medium",children:"Swarm Mode"}),(0,a.jsx)("button",{onClick:()=>(e=>{ec(e);let t={swarm:e};e?t.swarm_models=eu:(t.provider=en,t.model=ei),q(t)})(!ed),className:"w-10 h-5 rounded-full transition-colors relative ".concat(ed?"bg-[var(--primary)]":"bg-[var(--muted-foreground)]/30"),children:(0,a.jsx)("span",{className:"absolute top-0.5 left-0.5 w-4 h-4 bg-white rounded-full transition-transform ".concat(ed?"translate-x-5":"translate-x-0")})})]}),ed?(0,a.jsxs)("div",{className:"space-y-3 animate-fade-in",children:[(0,a.jsx)("label",{className:"block text-xs text-[var(--muted-foreground)]",children:"Swarm Models"}),(0,a.jsxs)("div",{className:"grid gap-2",children:[(0,a.jsxs)("div",{className:"grid grid-cols-[1fr_1.2fr_auto] gap-2",children:[(0,a.jsx)("select",{value:ex,onChange:e=>ep(e.target.value),className:"text-sm bg-[var(--card-bg)] border border-[var(--card-border)] rounded px-2 py-1.5 focus:border-[var(--primary)] outline-none transition-colors appearance-none",children:z.map(e=>(0,a.jsx)("option",{value:e.id,children:e.label},e.id))}),(0,a.jsx)("input",{value:eh,onChange:e=>ev(e.target.value),placeholder:"model name",className:"text-sm bg-[var(--card-bg)] border border-[var(--card-border)] rounded px-2 py-1.5 focus:border-[var(--primary)] outline-none transition-colors"}),(0,a.jsx)("button",{type:"button",onClick:()=>{let e=eh.trim();if(!e)return;let t={provider:ex,model:e};if(eu.some(e=>e.provider.toLowerCase()===t.provider.toLowerCase()&&e.model.toLowerCase()===t.model.toLowerCase()))return;let r=[...eu,t];em(r),ev(""),ed&&eL({swarm_models:r})},className:"px-3 py-1.5 text-xs font-semibold rounded-md bg-[var(--card-bg)] border border-[var(--card-border)] hover:border-[var(--muted-foreground)]",children:"Add"})]}),eu.length>0&&(0,a.jsx)("div",{className:"space-y-1",children:eu.map((e,t)=>(0,a.jsxs)("div",{className:"flex items-center justify-between px-2 py-1.5 rounded text-sm border bg-[var(--card-bg)] border-[var(--card-border)]",children:[(0,a.jsxs)("span",{className:"truncate",children:[(0,a.jsx)("span",{className:"text-[var(--muted-foreground)]",children:e.provider}),(0,a.jsx)("span",{className:"mx-1",children:"\xb7"}),(0,a.jsx)("span",{children:e.model})]}),(0,a.jsx)("button",{type:"button",onClick:()=>(e=>{let t=eu.filter((t,r)=>r!==e);em(t),ed&&eL({swarm_models:t})})(t),className:"text-xs text-[var(--destructive)] hover:underline",children:"Remove"})]},"".concat(e.provider,"-").concat(e.model,"-").concat(t)))})]})]}):(0,a.jsxs)("div",{className:"space-y-3 animate-fade-in",children:[(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-xs text-[var(--muted-foreground)] mb-1.5",children:"Provider"}),(0,a.jsxs)("select",{value:en,onChange:e=>{var t;eo(t=e.target.value),q({provider:t})},className:"w-full text-sm bg-[var(--card-bg)] border border-[var(--card-border)] rounded px-2 py-1.5 focus:border-[var(--primary)] outline-none transition-colors appearance-none",children:[(0,a.jsxs)("option",{value:"",children:["Default (",eN,")"]}),z.map(e=>(0,a.jsx)("option",{value:e.id,children:e.label},e.id))]})]}),(0,a.jsxs)("div",{children:[(0,a.jsx)("label",{className:"block text-xs text-[var(--muted-foreground)] mb-1.5",children:"Model"}),(0,a.jsx)("input",{value:ei,onChange:e=>{var t;el(t=e.target.value),eL({model:t})},placeholder:"Default (".concat(ey||"unspecified",")"),className:"w-full text-sm bg-[var(--card-bg)] border border-[var(--card-border)] rounded px-2 py-1.5 focus:border-[var(--primary)] outline-none transition-colors"})]})]}),eb&&(0,a.jsx)("p",{className:"text-xs text-[var(--destructive)]",children:eb})]}),(0,a.jsx)("div",{className:"w-full h-px bg-[var(--card-border)]"}),(0,a.jsx)(A,{projectContext:ek,fallbackProjectSlug:e_}),(0,a.jsx)("div",{className:"w-full h-px bg-[var(--card-border)]"}),(0,a.jsxs)("div",{children:[(0,a.jsxs)("button",{onClick:()=>J(!G),className:"w-full flex items-center justify-between p-3 rounded-lg border transition-all duration-200 ".concat(G?"bg-[var(--primary-muted)] border-[var(--primary)] text-[var(--primary)]":"bg-[var(--card-bg)] border-[var(--card-border)] hover:border-[var(--muted-foreground)]"),children:[(0,a.jsx)("span",{className:"text-sm font-medium",children:"Learnings"}),(0,a.jsx)("span",{className:"text-xs bg-[var(--background)] px-2 py-0.5 rounded-full border border-[var(--card-border)]",children:w.length})]}),G&&(0,a.jsx)("div",{className:"mt-4 animate-fade-in-up",children:(0,a.jsx)(p,{learnings:w,taskId:N.id,projectContext:ek,onAddLearning:H,compact:!0})})]}),(0,a.jsx)("div",{className:"mt-auto text-xs text-[var(--muted-foreground)]",children:(0,a.jsxs)("p",{children:["Created ",new Date(N.created_at||Date.now()).toLocaleDateString()]})})]})]})]})})}function T(e){let{label:t,value:r,truncate:n,mono:o=!0}=e,[i,l]=(0,s.useState)(!1);return(0,a.jsxs)("div",{className:"flex items-center justify-between group h-7",children:[(0,a.jsx)("span",{className:"text-sm text-[var(--muted-foreground)]",children:t}),(0,a.jsxs)("button",{onClick:()=>{navigator.clipboard.writeText(r),l(!0),setTimeout(()=>l(!1),2e3)},className:"text-sm ".concat(o?"font-mono":""," flex items-center gap-1.5 hover:bg-[var(--primary-muted)] hover:text-[var(--primary)] px-1.5 py-0.5 -mr-1.5 rounded transition-all"),title:"Click to copy",children:[(0,a.jsx)("span",{className:"".concat(n?"max-w-[140px] truncate":""," ").concat(i?"opacity-50":""),children:n&&r.length>20?r.slice(0,8)+"..."+r.slice(-8):r}),i?(0,a.jsx)("span",{className:"text-[10px] uppercase font-bold tracking-wider text-[var(--primary)] animate-scale-in",children:"Copied"}):(0,a.jsx)("svg",{className:"w-3.5 h-3.5 opacity-0 group-hover:opacity-60 transition-opacity",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:(0,a.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z"})})]})]})}},8545:(e,t,r)=>{r.d(t,{u:()=>n});var a=r(2115);let s=[{id:"gemini",label:"Gemini"},{id:"claude",label:"Claude"},{id:"ollama",label:"Ollama"},{id:"codex",label:"Codex"}];function n(){let[e,t]=(0,a.useState)(s),[r,n]=(0,a.useState)(!0);(0,a.useEffect)(()=>{let e=!1;return(async()=>{try{let r=await fetch("/api/providers"),a=await r.json().catch(()=>({}));if(!r.ok)throw Error((null==a?void 0:a.error)||"HTTP ".concat(r.status));let s=(Array.isArray(null==a?void 0:a.providers)?a.providers:[]).filter(e=>e&&"string"==typeof e.id&&"string"==typeof e.label).map(e=>({id:e.id,label:e.label}));!e&&s.length>0&&t(s)}catch(e){}finally{e||n(!1)}})(),()=>{e=!0}},[]);let o=(0,a.useMemo)(()=>e.map(e=>e.id),[e]);return{providers:e,providerIds:o,loading:r}}}}]);
@@ -1 +1 @@
1
- (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8008],{63:(e,t,r)=>{"use strict";var s=r(7260);r.o(s,"usePathname")&&r.d(t,{usePathname:function(){return s.usePathname}}),r.o(s,"useRouter")&&r.d(t,{useRouter:function(){return s.useRouter}}),r.o(s,"useSearchParams")&&r.d(t,{useSearchParams:function(){return s.useSearchParams}})},926:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{callServer:function(){return s.callServer},createServerReference:function(){return c.createServerReference},findSourceMapURL:function(){return n.findSourceMapURL}});let s=r(1209),n=r(5153),c=r(7197)},5109:(e,t,r)=>{Promise.resolve().then(r.bind(r,6549))},6549:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>u});var s=r(5155),n=r(2115),c=r(63),a=r(926);let l=(0,a.createServerReference)("4023a04b72c4c39c39f9de02dc8dc5d3564675b46a",a.callServer,void 0,a.findSourceMapURL,"approveDeviceCode");function o(){let e=(0,c.useSearchParams)(),t=(0,c.useRouter)(),r=e.get("user_code")||"",[a,o]=(0,n.useState)(r),[u,i]=(0,n.useState)(!1),[d,f]=(0,n.useState)(null),[x,h]=(0,n.useState)(!1);(0,n.useEffect)(()=>{if(x){let e=setTimeout(()=>{t.push("/projects")},3e3);return()=>clearTimeout(e)}},[x,t]);let m=async e=>{e.preventDefault(),i(!0),f(null);try{let e=await l(a);if(!e.success)throw Error(e.error);h(!0)}catch(e){f(e.message)}finally{i(!1)}};return x?(0,s.jsx)("div",{className:"flex flex-col items-center justify-center min-h-screen bg-neutral-900 text-white p-4",children:(0,s.jsxs)("div",{className:"max-w-md w-full bg-neutral-800 p-8 rounded-xl shadow-2xl text-center",children:[(0,s.jsx)("h1",{className:"text-3xl font-bold mb-4 text-green-400",children:"Success!"}),(0,s.jsx)("p",{className:"text-gray-300 mb-2",children:"You have successfully authenticated your device."}),(0,s.jsx)("p",{className:"text-gray-400 text-sm mb-6 italic",children:"Redirecting to projects in a few seconds..."}),(0,s.jsx)("button",{onClick:()=>t.push("/projects"),className:"w-full py-3 px-4 bg-white text-black font-semibold rounded-lg hover:bg-gray-200 transition-colors",children:"Go to Projects"})]})}):(0,s.jsx)("div",{className:"flex flex-col items-center justify-center min-h-screen bg-neutral-900 text-white p-4",children:(0,s.jsxs)("div",{className:"max-w-md w-full bg-neutral-800 p-8 rounded-xl shadow-2xl",children:[(0,s.jsx)("h1",{className:"text-2xl font-bold mb-6 text-center",children:"Connect Device"}),(0,s.jsx)("p",{className:"text-gray-400 mb-8 text-center text-sm",children:"Enter the code displayed on your device to authorize it."}),(0,s.jsxs)("form",{onSubmit:m,className:"space-y-6",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("label",{htmlFor:"code",className:"block text-sm font-medium text-gray-400 mb-2",children:"Device Code"}),(0,s.jsx)("input",{type:"text",id:"code",value:a,onChange:e=>o(e.target.value.toUpperCase()),placeholder:"BCDF-XXXX",className:"w-full px-4 py-3 bg-neutral-900 border border-neutral-700 rounded-lg text-white placeholder-neutral-600 focus:outline-none focus:ring-2 focus:ring-blue-500 font-mono text-center tracking-widest text-lg uppercase",required:!0})]}),d&&(0,s.jsx)("div",{className:"p-3 bg-red-900/50 border border-red-800 rounded-lg text-red-200 text-center text-sm",children:d}),(0,s.jsx)("button",{type:"submit",disabled:u,className:"w-full py-3 px-4 bg-white text-black font-semibold rounded-lg hover:bg-gray-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-white transition-colors disabled:opacity-50 disabled:cursor-not-allowed",children:u?"Verifying...":"Authorize Device"})]})]})})}function u(){return(0,s.jsx)(n.Suspense,{fallback:(0,s.jsx)("div",{children:"Loading..."}),children:(0,s.jsx)(o,{})})}}},e=>{e.O(0,[8441,1255,7358],()=>e(e.s=5109)),_N_E=e.O()}]);
1
+ (self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8008],{63:(e,t,r)=>{"use strict";var s=r(7260);r.o(s,"usePathname")&&r.d(t,{usePathname:function(){return s.usePathname}}),r.o(s,"useRouter")&&r.d(t,{useRouter:function(){return s.useRouter}}),r.o(s,"useSearchParams")&&r.d(t,{useSearchParams:function(){return s.useSearchParams}})},926:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),!function(e,t){for(var r in t)Object.defineProperty(e,r,{enumerable:!0,get:t[r]})}(t,{callServer:function(){return s.callServer},createServerReference:function(){return c.createServerReference},findSourceMapURL:function(){return n.findSourceMapURL}});let s=r(1209),n=r(5153),c=r(7197)},5109:(e,t,r)=>{Promise.resolve().then(r.bind(r,8705))},8705:(e,t,r)=>{"use strict";r.r(t),r.d(t,{default:()=>u});var s=r(5155),n=r(2115),c=r(63),a=r(926);let l=(0,a.createServerReference)("408c6385882c8016529c3782a50efc88c22ef163be",a.callServer,void 0,a.findSourceMapURL,"approveDeviceCode");function o(){let e=(0,c.useSearchParams)(),t=(0,c.useRouter)(),r=e.get("user_code")||"",[a,o]=(0,n.useState)(r),[u,i]=(0,n.useState)(!1),[d,f]=(0,n.useState)(null),[x,h]=(0,n.useState)(!1);(0,n.useEffect)(()=>{if(x){let e=setTimeout(()=>{t.push("/projects")},3e3);return()=>clearTimeout(e)}},[x,t]);let m=async e=>{e.preventDefault(),i(!0),f(null);try{let e=await l(a);if(!e.success)throw Error(e.error);h(!0)}catch(e){f(e.message)}finally{i(!1)}};return x?(0,s.jsx)("div",{className:"flex flex-col items-center justify-center min-h-screen bg-neutral-900 text-white p-4",children:(0,s.jsxs)("div",{className:"max-w-md w-full bg-neutral-800 p-8 rounded-xl shadow-2xl text-center",children:[(0,s.jsx)("h1",{className:"text-3xl font-bold mb-4 text-green-400",children:"Success!"}),(0,s.jsx)("p",{className:"text-gray-300 mb-2",children:"You have successfully authenticated your device."}),(0,s.jsx)("p",{className:"text-gray-400 text-sm mb-6 italic",children:"Redirecting to projects in a few seconds..."}),(0,s.jsx)("button",{onClick:()=>t.push("/projects"),className:"w-full py-3 px-4 bg-white text-black font-semibold rounded-lg hover:bg-gray-200 transition-colors",children:"Go to Projects"})]})}):(0,s.jsx)("div",{className:"flex flex-col items-center justify-center min-h-screen bg-neutral-900 text-white p-4",children:(0,s.jsxs)("div",{className:"max-w-md w-full bg-neutral-800 p-8 rounded-xl shadow-2xl",children:[(0,s.jsx)("h1",{className:"text-2xl font-bold mb-6 text-center",children:"Connect Device"}),(0,s.jsx)("p",{className:"text-gray-400 mb-8 text-center text-sm",children:"Enter the code displayed on your device to authorize it."}),(0,s.jsxs)("form",{onSubmit:m,className:"space-y-6",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("label",{htmlFor:"code",className:"block text-sm font-medium text-gray-400 mb-2",children:"Device Code"}),(0,s.jsx)("input",{type:"text",id:"code",value:a,onChange:e=>o(e.target.value.toUpperCase()),placeholder:"BCDF-XXXX",className:"w-full px-4 py-3 bg-neutral-900 border border-neutral-700 rounded-lg text-white placeholder-neutral-600 focus:outline-none focus:ring-2 focus:ring-blue-500 font-mono text-center tracking-widest text-lg uppercase",required:!0})]}),d&&(0,s.jsx)("div",{className:"p-3 bg-red-900/50 border border-red-800 rounded-lg text-red-200 text-center text-sm",children:d}),(0,s.jsx)("button",{type:"submit",disabled:u,className:"w-full py-3 px-4 bg-white text-black font-semibold rounded-lg hover:bg-gray-200 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-white transition-colors disabled:opacity-50 disabled:cursor-not-allowed",children:u?"Verifying...":"Authorize Device"})]})]})})}function u(){return(0,s.jsx)(n.Suspense,{fallback:(0,s.jsx)("div",{children:"Loading..."}),children:(0,s.jsx)(o,{})})}}},e=>{e.O(0,[8441,1255,7358],()=>e(e.s=5109)),_N_E=e.O()}]);
@@ -0,0 +1 @@
1
+ /*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:""}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-serif:ui-serif,Georgia,Cambria,"Times New Roman",Times,serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-50:oklch(97.1% .013 17.38);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-700:oklch(50.5% .213 27.518);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-orange-500:oklch(70.5% .213 47.604);--color-green-400:oklch(79.2% .209 151.711);--color-green-500:oklch(72.3% .219 149.579);--color-emerald-50:oklch(97.9% .021 166.113);--color-emerald-400:oklch(76.5% .177 163.223);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-blue-500:oklch(62.3% .214 259.815);--color-indigo-600:oklch(51.1% .262 276.966);--color-slate-200:oklch(92.9% .013 255.508);--color-gray-50:oklch(98.5% .002 247.839);--color-gray-100:oklch(96.7% .003 264.542);--color-gray-200:oklch(92.8% .006 264.531);--color-gray-300:oklch(87.2% .01 258.338);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-gray-600:oklch(44.6% .03 256.802);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-900:oklch(21% .034 264.665);--color-neutral-600:oklch(43.9% 0 0);--color-neutral-700:oklch(37.1% 0 0);--color-neutral-800:oklch(26.9% 0 0);--color-neutral-900:oklch(20.5% 0 0);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--container-5xl:64rem;--container-6xl:72rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1/.75);--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-base:1rem;--text-base--line-height:calc(1.5/1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75/1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75/1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25/1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5/2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-7xl:4.5rem;--text-7xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-ping:ping 1s cubic-bezier(0,0,.2,1)infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--blur-sm:8px;--blur-md:12px;--blur-lg:16px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing)*0)}.inset-y-0{inset-block:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.top-0\.5{top:calc(var(--spacing)*.5)}.top-1\/2{top:50%}.-right-1{right:calc(var(--spacing)*-1)}.right-0{right:calc(var(--spacing)*0)}.right-4{right:calc(var(--spacing)*4)}.right-8{right:calc(var(--spacing)*8)}.bottom-6{bottom:calc(var(--spacing)*6)}.bottom-full{bottom:100%}.left-0{left:calc(var(--spacing)*0)}.left-0\.5{left:calc(var(--spacing)*.5)}.left-1\/2{left:50%}.-z-10{z-index:calc(10*-1)}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-50{z-index:50}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-1{margin:calc(var(--spacing)*1)}.m-4{margin:calc(var(--spacing)*4)}.mx-1{margin-inline:calc(var(--spacing)*1)}.mx-4{margin-inline:calc(var(--spacing)*4)}.mx-auto{margin-inline:auto}.my-6{margin-block:calc(var(--spacing)*6)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-1{margin-top:calc(var(--spacing)*1)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-6{margin-top:calc(var(--spacing)*6)}.mt-12{margin-top:calc(var(--spacing)*12)}.mt-24{margin-top:calc(var(--spacing)*24)}.mt-auto{margin-top:auto}.-mr-1\.5{margin-right:calc(var(--spacing)*-1.5)}.mr-2{margin-right:calc(var(--spacing)*2)}.mb-0\.5{margin-bottom:calc(var(--spacing)*.5)}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-1\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.mb-5{margin-bottom:calc(var(--spacing)*5)}.mb-6{margin-bottom:calc(var(--spacing)*6)}.mb-8{margin-bottom:calc(var(--spacing)*8)}.mb-10{margin-bottom:calc(var(--spacing)*10)}.mb-12{margin-bottom:calc(var(--spacing)*12)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-7{margin-left:calc(var(--spacing)*7)}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-2,.line-clamp-3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.h-0\.5{height:calc(var(--spacing)*.5)}.h-1{height:calc(var(--spacing)*1)}.h-1\.5{height:calc(var(--spacing)*1.5)}.h-2{height:calc(var(--spacing)*2)}.h-3{height:calc(var(--spacing)*3)}.h-3\.5{height:calc(var(--spacing)*3.5)}.h-4{height:calc(var(--spacing)*4)}.h-5{height:calc(var(--spacing)*5)}.h-6{height:calc(var(--spacing)*6)}.h-7{height:calc(var(--spacing)*7)}.h-8{height:calc(var(--spacing)*8)}.h-10{height:calc(var(--spacing)*10)}.h-12{height:calc(var(--spacing)*12)}.h-16{height:calc(var(--spacing)*16)}.h-20{height:calc(var(--spacing)*20)}.h-24{height:calc(var(--spacing)*24)}.h-32{height:calc(var(--spacing)*32)}.h-64{height:calc(var(--spacing)*64)}.h-96{height:calc(var(--spacing)*96)}.h-\[85vh\]{height:85vh}.h-\[90vh\]{height:90vh}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-64{max-height:calc(var(--spacing)*64)}.max-h-\[70vh\]{max-height:70vh}.max-h-\[90vh\]{max-height:90vh}.max-h-full{max-height:100%}.min-h-0{min-height:calc(var(--spacing)*0)}.min-h-\[100px\]{min-height:100px}.min-h-\[120px\]{min-height:120px}.min-h-\[150px\]{min-height:150px}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-0\.5{width:calc(var(--spacing)*.5)}.w-1\.5{width:calc(var(--spacing)*1.5)}.w-2{width:calc(var(--spacing)*2)}.w-3{width:calc(var(--spacing)*3)}.w-3\.5{width:calc(var(--spacing)*3.5)}.w-3\/4{width:75%}.w-4{width:calc(var(--spacing)*4)}.w-5{width:calc(var(--spacing)*5)}.w-6{width:calc(var(--spacing)*6)}.w-7{width:calc(var(--spacing)*7)}.w-8{width:calc(var(--spacing)*8)}.w-9{width:calc(var(--spacing)*9)}.w-10{width:calc(var(--spacing)*10)}.w-12{width:calc(var(--spacing)*12)}.w-16{width:calc(var(--spacing)*16)}.w-20{width:calc(var(--spacing)*20)}.w-24{width:calc(var(--spacing)*24)}.w-32{width:calc(var(--spacing)*32)}.w-48{width:calc(var(--spacing)*48)}.w-64{width:calc(var(--spacing)*64)}.w-72{width:calc(var(--spacing)*72)}.w-80{width:calc(var(--spacing)*80)}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[60px\]{max-width:60px}.max-w-\[80px\]{max-width:80px}.max-w-\[100px\]{max-width:100px}.max-w-\[120px\]{max-width:120px}.max-w-\[140px\]{max-width:140px}.max-w-\[150px\]{max-width:150px}.max-w-\[160px\]{max-width:160px}.max-w-\[1200px\]{max-width:1200px}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-\[120px\]{min-width:120px}.min-w-\[280px\]{min-width:280px}.min-w-max{min-width:max-content}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x:calc(calc(1/2*100%)*-1)}.-translate-x-1\/2,.translate-x-0{translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-0{--tw-translate-x:calc(var(--spacing)*0)}.translate-x-4{--tw-translate-x:calc(var(--spacing)*4)}.translate-x-4,.translate-x-5{translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-5{--tw-translate-x:calc(var(--spacing)*5)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.scale-105{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.scale-\[1\.02\]{scale:1.02}.rotate-1{rotate:1deg}.rotate-2{rotate:2deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-ping{animation:var(--animate-ping)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.resize-none{resize:none}.resize-y{resize:vertical}.appearance-none{appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[1fr_1\.2fr_auto\]{grid-template-columns:1fr 1.2fr auto}.grid-cols-\[140px_1fr\]{grid-template-columns:140px 1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.gap-8{gap:calc(var(--spacing)*8)}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*3)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*3)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-6>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*6)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*6)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-8>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*8)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*8)*calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing)*3)}.gap-y-1\.5{row-gap:calc(var(--spacing)*1.5)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-\[var\(--card-border\)\]>:not(:last-child)){border-color:var(--card-border)}.truncate{text-overflow:ellipsis;white-space:nowrap}.overflow-hidden,.truncate{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-t-xl{border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-3{border-style:var(--tw-border-style);border-width:3px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-l-\[3px\]{border-left-style:var(--tw-border-style);border-left-width:3px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\[color-mix\(in_srgb\,var\(--destructive\)_30\%\,transparent\)\]{border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.border-\[color-mix\(in_srgb\,var\(--destructive\)_30\%\,transparent\)\]{border-color:color-mix(in srgb,var(--destructive)30%,transparent)}}.border-\[var\(--border\)\]{border-color:var(--border)}.border-\[var\(--card-border\)\]{border-color:var(--card-border)}.border-\[var\(--destructive\)\],.border-\[var\(--destructive\)\]\/20{border-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--destructive\)\]\/20{border-color:color-mix(in oklab,var(--destructive)20%,transparent)}}.border-\[var\(--primary\)\]{border-color:var(--primary)}.border-\[var\(--primary-muted\)\]{border-color:var(--primary-muted)}.border-\[var\(--status-blocked\)\],.border-\[var\(--status-blocked\)\]\/40{border-color:var(--status-blocked)}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--status-blocked\)\]\/40{border-color:color-mix(in oklab,var(--status-blocked)40%,transparent)}}.border-\[var\(--status-completed\)\]\/20{border-color:var(--status-completed)}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--status-completed\)\]\/20{border-color:color-mix(in oklab,var(--status-completed)20%,transparent)}}.border-\[var\(--status-failed\)\],.border-\[var\(--status-failed\)\]\/20{border-color:var(--status-failed)}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--status-failed\)\]\/20{border-color:color-mix(in oklab,var(--status-failed)20%,transparent)}}.border-\[var\(--status-failed\)\]\/40{border-color:var(--status-failed)}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--status-failed\)\]\/40{border-color:color-mix(in oklab,var(--status-failed)40%,transparent)}}.border-current{border-color:currentColor}.border-emerald-500\/30{border-color:#00bb7f4d}@supports (color:color-mix(in lab,red,red)){.border-emerald-500\/30{border-color:color-mix(in oklab,var(--color-emerald-500)30%,transparent)}}.border-gray-100{border-color:var(--color-gray-100)}.border-gray-200{border-color:var(--color-gray-200)}.border-gray-300{border-color:var(--color-gray-300)}.border-neutral-700{border-color:var(--color-neutral-700)}.border-red-200{border-color:var(--color-red-200)}.border-red-800{border-color:var(--color-red-800)}.border-transparent{border-color:#0000}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.border-white\/10{border-color:color-mix(in oklab,var(--color-white)10%,transparent)}}.border-white\/20{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.border-white\/20{border-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.border-t-gray-600{border-top-color:var(--color-gray-600)}.border-t-transparent{border-top-color:#0000}.border-t-white{border-top-color:var(--color-white)}.bg-\[\#0b0f14\]{background-color:#0b0f14}.bg-\[\#24292e\]{background-color:#24292e}.bg-\[rgba\(255\,255\,255\,0\.8\)\]{background-color:#fffc}.bg-\[var\(--accent\)\]{background-color:var(--accent)}.bg-\[var\(--accent-muted\)\]{background-color:var(--accent-muted)}.bg-\[var\(--background\)\]{background-color:var(--background)}.bg-\[var\(--border\)\]{background-color:var(--border)}.bg-\[var\(--card-bg\)\],.bg-\[var\(--card-bg\)\]\/50{background-color:var(--card-bg)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--card-bg\)\]\/50{background-color:color-mix(in oklab,var(--card-bg)50%,transparent)}}.bg-\[var\(--card-bg\)\]\/60{background-color:var(--card-bg)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--card-bg\)\]\/60{background-color:color-mix(in oklab,var(--card-bg)60%,transparent)}}.bg-\[var\(--card-bg\)\]\/80{background-color:var(--card-bg)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--card-bg\)\]\/80{background-color:color-mix(in oklab,var(--card-bg)80%,transparent)}}.bg-\[var\(--card-border\)\]{background-color:var(--card-border)}.bg-\[var\(--column-bg\)\]{background-color:var(--column-bg)}.bg-\[var\(--column-header-bg\)\]{background-color:var(--column-header-bg)}.bg-\[var\(--destructive-muted\)\]{background-color:var(--destructive-muted)}.bg-\[var\(--muted\)\],.bg-\[var\(--muted\)\]\/10{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--muted\)\]\/10{background-color:color-mix(in oklab,var(--muted)10%,transparent)}}.bg-\[var\(--muted\)\]\/20{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--muted\)\]\/20{background-color:color-mix(in oklab,var(--muted)20%,transparent)}}.bg-\[var\(--muted\)\]\/30{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--muted\)\]\/30{background-color:color-mix(in oklab,var(--muted)30%,transparent)}}.bg-\[var\(--muted\)\]\/50{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--muted\)\]\/50{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.bg-\[var\(--muted-foreground\)\],.bg-\[var\(--muted-foreground\)\]\/30{background-color:var(--muted-foreground)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--muted-foreground\)\]\/30{background-color:color-mix(in oklab,var(--muted-foreground)30%,transparent)}}.bg-\[var\(--primary\)\],.bg-\[var\(--primary\)\]\/10{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--primary\)\]\/10{background-color:color-mix(in oklab,var(--primary)10%,transparent)}}.bg-\[var\(--primary-muted\)\]{background-color:var(--primary-muted)}.bg-\[var\(--status-blocked\)\]{background-color:var(--status-blocked)}.bg-\[var\(--status-blocked-bg\)\]{background-color:var(--status-blocked-bg)}.bg-\[var\(--status-completed\)\]{background-color:var(--status-completed)}.bg-\[var\(--status-completed-bg\)\]{background-color:var(--status-completed-bg)}.bg-\[var\(--status-failed\)\]{background-color:var(--status-failed)}.bg-\[var\(--status-failed-bg\)\]{background-color:var(--status-failed-bg)}.bg-\[var\(--status-in-progress\)\]{background-color:var(--status-in-progress)}.bg-\[var\(--status-queued\)\]{background-color:var(--status-queued)}.bg-\[var\(--success\)\]{background-color:var(--success)}.bg-\[var\(--success-muted\)\]{background-color:var(--success-muted)}.bg-black\/50{background-color:#00000080}@supports (color:color-mix(in lab,red,red)){.bg-black\/50{background-color:color-mix(in oklab,var(--color-black)50%,transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\/60{background-color:color-mix(in oklab,var(--color-black)60%,transparent)}}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-500\/15{background-color:#00bb7f26}@supports (color:color-mix(in lab,red,red)){.bg-emerald-500\/15{background-color:color-mix(in oklab,var(--color-emerald-500)15%,transparent)}}.bg-gray-50{background-color:var(--color-gray-50)}.bg-gray-100{background-color:var(--color-gray-100)}.bg-green-400{background-color:var(--color-green-400)}.bg-green-500{background-color:var(--color-green-500)}.bg-neutral-800{background-color:var(--color-neutral-800)}.bg-neutral-900{background-color:var(--color-neutral-900)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-100{background-color:var(--color-red-100)}.bg-red-900\/50{background-color:#82181a80}@supports (color:color-mix(in lab,red,red)){.bg-red-900\/50{background-color:color-mix(in oklab,var(--color-red-900)50%,transparent)}}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/20{background-color:#fff3}@supports (color:color-mix(in lab,red,red)){.bg-white\/20{background-color:color-mix(in oklab,var(--color-white)20%,transparent)}}.bg-white\/50{background-color:#ffffff80}@supports (color:color-mix(in lab,red,red)){.bg-white\/50{background-color:color-mix(in oklab,var(--color-white)50%,transparent)}}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab}.bg-gradient-to-br,.bg-gradient-to-r{background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab}.bg-\[radial-gradient\(\#27272a_1px\,transparent_1px\)\]{background-image:radial-gradient(#27272a 1px,#0000 0)}.from-\[var\(--foreground\)\]{--tw-gradient-from:var(--foreground);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.from-\[var\(--primary\)\]{--tw-gradient-from:var(--primary);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-\[var\(--accent\)\]{--tw-gradient-to:var(--accent);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-\[var\(--muted-foreground\)\]{--tw-gradient-to:var(--muted-foreground);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.\[background-size\:16px_16px\]{background-size:16px 16px}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-0{padding:calc(var(--spacing)*0)}.p-1{padding:calc(var(--spacing)*1)}.p-1\.5{padding:calc(var(--spacing)*1.5)}.p-2{padding:calc(var(--spacing)*2)}.p-2\.5{padding:calc(var(--spacing)*2.5)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-5{padding:calc(var(--spacing)*5)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.p-12{padding:calc(var(--spacing)*12)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-8{padding-inline:calc(var(--spacing)*8)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-6{padding-block:calc(var(--spacing)*6)}.py-8{padding-block:calc(var(--spacing)*8)}.py-12{padding-block:calc(var(--spacing)*12)}.py-20{padding-block:calc(var(--spacing)*20)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-8{padding-top:calc(var(--spacing)*8)}.pt-16{padding-top:calc(var(--spacing)*16)}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-4{padding-right:calc(var(--spacing)*4)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pb-6{padding-bottom:calc(var(--spacing)*6)}.pb-20{padding-bottom:calc(var(--spacing)*20)}.pl-2{padding-left:calc(var(--spacing)*2)}.pl-3{padding-left:calc(var(--spacing)*3)}.pl-7{padding-left:calc(var(--spacing)*7)}.pl-10{padding-left:calc(var(--spacing)*10)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.font-serif{font-family:var(--font-serif)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[14px\]{font-size:14px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[var\(--accent\)\]{color:var(--accent)}.text-\[var\(--destructive\)\],.text-\[var\(--destructive\)\]\/80{color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.text-\[var\(--destructive\)\]\/80{color:color-mix(in oklab,var(--destructive)80%,transparent)}}.text-\[var\(--foreground\)\]{color:var(--foreground)}.text-\[var\(--muted-foreground\)\]{color:var(--muted-foreground)}.text-\[var\(--primary\)\]{color:var(--primary)}.text-\[var\(--status-blocked\)\]{color:var(--status-blocked)}.text-\[var\(--status-completed\)\]{color:var(--status-completed)}.text-\[var\(--status-failed\)\]{color:var(--status-failed)}.text-\[var\(--success\)\]{color:var(--success)}.text-black{color:var(--color-black)}.text-emerald-400{color:var(--color-emerald-400)}.text-emerald-600{color:var(--color-emerald-600)}.text-gray-300{color:var(--color-gray-300)}.text-gray-400{color:var(--color-gray-400)}.text-gray-500{color:var(--color-gray-500)}.text-gray-600{color:var(--color-gray-600)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.text-green-400{color:var(--color-green-400)}.text-red-200{color:var(--color-red-200)}.text-red-700{color:var(--color-red-700)}.text-red-800{color:var(--color-red-800)}.text-slate-200{color:var(--color-slate-200)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.text-white\/60{color:#fff9}@supports (color:color-mix(in lab,red,red)){.text-white\/60{color:color-mix(in oklab,var(--color-white)60%,transparent)}}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.placeholder-neutral-600::placeholder{color:var(--color-neutral-600)}.opacity-0{opacity:0}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow-\[var\(--primary\)\]\/20{--tw-shadow-alpha:20%;--tw-shadow:var(--primary)}.shadow-\[var\(--primary\)\]\/20,.shadow-\[var\(--primary\)\]\/30{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--primary\)\]\/30{--tw-shadow-alpha:30%;--tw-shadow:var(--primary)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040)}.shadow-2xl,.shadow-\[0_0_0_1px_var\(--status-failed\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_0_1px_var\(--status-failed\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--status-failed))}.shadow-inner{--tw-shadow:inset 0 2px 4px 0 var(--tw-shadow-color,#0000000d)}.shadow-inner,.shadow-lg{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a)}.shadow-md,.shadow-sm{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a)}.ring-1,.shadow-xl{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-orange-500\/20{--tw-shadow-color:#fe6e0033}@supports (color:color-mix(in lab,red,red)){.shadow-orange-500\/20{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-orange-500)20%,transparent)var(--tw-shadow-alpha),transparent)}}.ring-\[var\(--primary\)\]{--tw-ring-color:var(--primary)}.ring-gray-300{--tw-ring-color:var(--color-gray-300)}.ring-offset-2{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.ring-offset-\[var\(--background\)\]{--tw-ring-offset-color:var(--background)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.grayscale{--tw-grayscale:grayscale(100%)}.filter,.grayscale{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-blur-lg{--tw-backdrop-blur:blur(var(--blur-lg))}.backdrop-blur-lg,.backdrop-blur-md{-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md))}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-shadow{transition-property:box-shadow;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.ring-inset{--tw-ring-inset:inset}@media (hover:hover){.group-hover\:scale-110:is(:where(.group):hover *){--tw-scale-x:110%;--tw-scale-y:110%;--tw-scale-z:110%;scale:var(--tw-scale-x)var(--tw-scale-y)}.group-hover\:text-\[var\(--primary\)\]:is(:where(.group):hover *){color:var(--primary)}.group-hover\:opacity-60:is(:where(.group):hover *){opacity:.6}.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}.group-hover\:shadow-\[var\(--primary\)\]\/40:is(:where(.group):hover *){--tw-shadow-alpha:40%;--tw-shadow:var(--primary);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.selection\:bg-\[var\(--primary\)\] ::selection{background-color:var(--primary)}.selection\:bg-\[var\(--primary\)\]::selection{background-color:var(--primary)}.selection\:text-\[var\(--primary-foreground\)\] ::selection{color:var(--primary-foreground)}.selection\:text-\[var\(--primary-foreground\)\]::selection{color:var(--primary-foreground)}.placeholder\:text-\[var\(--muted-foreground\)\]::placeholder{color:var(--muted-foreground)}.placeholder\:text-gray-400::placeholder{color:var(--color-gray-400)}.before\:pointer-events-none:before{content:var(--tw-content);pointer-events:none}.before\:float-left:before{content:var(--tw-content);float:left}.before\:h-0:before{content:var(--tw-content);height:calc(var(--spacing)*0)}.before\:text-\[var\(--muted-foreground\)\]:before{content:var(--tw-content);color:var(--muted-foreground)}.before\:content-\[attr\(data-placeholder\)\]:before{--tw-content:attr(data-placeholder);content:var(--tw-content)}@media (hover:hover){.hover\:scale-105:hover{--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}.hover\:border-\[color-mix\(in_srgb\,var\(--primary\)_30\%\,var\(--card-border\)\)\]:hover{border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:border-\[color-mix\(in_srgb\,var\(--primary\)_30\%\,var\(--card-border\)\)\]:hover{border-color:color-mix(in srgb,var(--primary)30%,var(--card-border))}}.hover\:border-\[color-mix\(in_srgb\,var\(--primary\)_40\%\,var\(--card-border\)\)\]:hover{border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:border-\[color-mix\(in_srgb\,var\(--primary\)_40\%\,var\(--card-border\)\)\]:hover{border-color:color-mix(in srgb,var(--primary)40%,var(--card-border))}}.hover\:border-\[var\(--card-hover-border\)\]:hover{border-color:var(--card-hover-border)}.hover\:border-\[var\(--destructive\)\]:hover{border-color:var(--destructive)}.hover\:border-\[var\(--muted-foreground\)\]:hover{border-color:var(--muted-foreground)}.hover\:border-\[var\(--primary\)\]:hover,.hover\:border-\[var\(--primary\)\]\/30:hover{border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:border-\[var\(--primary\)\]\/30:hover{border-color:color-mix(in oklab,var(--primary)30%,transparent)}}.hover\:border-\[var\(--primary-muted\)\]:hover{border-color:var(--primary-muted)}.hover\:border-gray-300:hover{border-color:var(--color-gray-300)}.hover\:bg-\[\#2f363d\]:hover{background-color:#2f363d}.hover\:bg-\[var\(--card-bg\)\]\/50:hover{background-color:var(--card-bg)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-\[var\(--card-bg\)\]\/50:hover{background-color:color-mix(in oklab,var(--card-bg)50%,transparent)}}.hover\:bg-\[var\(--card-border\)\]:hover{background-color:var(--card-border)}.hover\:bg-\[var\(--destructive\)\]\/10:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-\[var\(--destructive\)\]\/10:hover{background-color:color-mix(in oklab,var(--destructive)10%,transparent)}}.hover\:bg-\[var\(--destructive-muted\)\]:hover{background-color:var(--destructive-muted)}.hover\:bg-\[var\(--muted\)\]:hover,.hover\:bg-\[var\(--muted\)\]\/20:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-\[var\(--muted\)\]\/20:hover{background-color:color-mix(in oklab,var(--muted)20%,transparent)}}.hover\:bg-\[var\(--muted\)\]\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-\[var\(--muted\)\]\/50:hover{background-color:color-mix(in oklab,var(--muted)50%,transparent)}}.hover\:bg-\[var\(--primary\)\]:hover,.hover\:bg-\[var\(--primary\)\]\/10:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-\[var\(--primary\)\]\/10:hover{background-color:color-mix(in oklab,var(--primary)10%,transparent)}}.hover\:bg-\[var\(--primary\)\]\/90:hover{background-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-\[var\(--primary\)\]\/90:hover{background-color:color-mix(in oklab,var(--primary)90%,transparent)}}.hover\:bg-\[var\(--primary-dark\)\]:hover{background-color:var(--primary-dark)}.hover\:bg-\[var\(--primary-muted\)\]:hover{background-color:var(--primary-muted)}.hover\:bg-gray-50:hover{background-color:var(--color-gray-50)}.hover\:bg-gray-100:hover{background-color:var(--color-gray-100)}.hover\:bg-gray-200:hover{background-color:var(--color-gray-200)}.hover\:bg-white\/30:hover{background-color:#ffffff4d}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/30:hover{background-color:color-mix(in oklab,var(--color-white)30%,transparent)}}.hover\:text-\[var\(--destructive\)\]:hover{color:var(--destructive)}.hover\:text-\[var\(--foreground\)\]:hover{color:var(--foreground)}.hover\:text-\[var\(--primary\)\]:hover{color:var(--primary)}.hover\:text-gray-600:hover{color:var(--color-gray-600)}.hover\:text-gray-700:hover{color:var(--color-gray-700)}.hover\:text-white:hover{color:var(--color-white)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[var\(--shadow-md\)\]:hover{--tw-shadow:var(--shadow-md)}.hover\:shadow-\[var\(--shadow-md\)\]:hover,.hover\:shadow-lg:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-lg:hover{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a)}.hover\:shadow-md:hover{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a),0 2px 4px -2px var(--tw-shadow-color,#0000001a)}.hover\:shadow-md:hover,.hover\:shadow-sm:hover{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a)}.hover\:shadow-black\/20:hover{--tw-shadow-color:#0003}@supports (color:color-mix(in lab,red,red)){.hover\:shadow-black\/20:hover{--tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--color-black)20%,transparent)var(--tw-shadow-alpha),transparent)}}}.focus\:border-\[var\(--primary\)\]:focus{border-color:var(--primary)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-\[var\(--primary\)\]\/20:focus{--tw-ring-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.focus\:ring-\[var\(--primary\)\]\/20:focus{--tw-ring-color:color-mix(in oklab,var(--primary)20%,transparent)}}.focus\:ring-blue-500:focus{--tw-ring-color:var(--color-blue-500)}.focus\:ring-indigo-600:focus{--tw-ring-color:var(--color-indigo-600)}.focus\:ring-white:focus{--tw-ring-color:var(--color-white)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus\:ring-inset:focus{--tw-ring-inset:inset}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-\[var\(--ring\)\]:focus-visible{outline-color:var(--ring)}.active\:scale-95:active{--tw-scale-x:95%;--tw-scale-y:95%;--tw-scale-z:95%;scale:var(--tw-scale-x)var(--tw-scale-y)}.active\:scale-\[0\.99\]:active{scale:.99}.active\:cursor-grabbing:active{cursor:grabbing}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}@media (min-width:40rem){.sm\:block{display:block}.sm\:inline{display:inline}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:items-center{align-items:center}.sm\:items-end{align-items:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:p-6{padding:calc(var(--spacing)*6)}.sm\:px-6{padding-inline:calc(var(--spacing)*6)}.sm\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.sm\:leading-6{--tw-leading:calc(var(--spacing)*6);line-height:calc(var(--spacing)*6)}}@media (min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:flex{display:flex}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:text-7xl{font-size:var(--text-7xl);line-height:var(--tw-leading,var(--text-7xl--line-height))}}@media (min-width:64rem){.lg\:block{display:block}.lg\:hidden{display:none}.lg\:inline{display:inline}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:p-8{padding:calc(var(--spacing)*8)}.lg\:px-8{padding-inline:calc(var(--spacing)*8)}}}:root{--background:#f9fafb;--foreground:#111827;--primary:#f97316;--primary-foreground:#fff;--primary-hover:#ea580c;--primary-muted:#f973161a;--secondary:#fff;--secondary-foreground:#374151;--secondary-hover:#f3f4f6;--accent:#6366f1;--accent-foreground:#fff;--accent-hover:#4f46e5;--accent-muted:#6366f11a;--card-bg:#fff;--card-border:#e5e7eb;--card-hover-border:#d1d5db;--column-bg:#f3f4f6;--column-header-bg:#f3f4f6;--muted:#f3f4f6;--muted-foreground:#6b7280;--status-queued:#6b7280;--status-queued-bg:#f3f4f6;--status-queued-border:#e5e7eb;--status-in-progress:#f97316;--status-in-progress-bg:#fff7ed;--status-in-progress-border:#fed7aa;--status-blocked:#ef4444;--status-blocked-bg:#fef2f2;--status-blocked-border:#fecaca;--status-completed:#10b981;--status-completed-bg:#ecfdf5;--status-completed-border:#a7f3d0;--status-failed:#ef4444;--status-failed-bg:#fef2f2;--status-failed-border:#fecaca;--border:#e5e7eb;--input:#fff;--input-focus:#f97316;--ring:#f9731666;--shadow-sm:0 1px 2px 0 #0000000d;--shadow:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;--transition-fast:.15s cubic-bezier(.4,0,.2,1);--transition-base:.2s cubic-bezier(.4,0,.2,1);--transition-slow:.3s cubic-bezier(.4,0,.2,1);--radius-sm:.375rem;--radius:.5rem;--radius-md:.75rem;--radius-lg:.875rem;--radius-xl:1rem}body{background:var(--background);color:var(--foreground);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--card-border);transition:background var(--transition-fast);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground)}.scrollbar-thin::-webkit-scrollbar{width:4px}.scrollbar-thin::-webkit-scrollbar-thumb{background:var(--card-border);border-radius:2px}.scrollbar-thin::-webkit-scrollbar-thumb:hover{background:var(--muted-foreground)}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.scrollbar-hide::-webkit-scrollbar{display:none}.glass{-webkit-backdrop-filter:blur(10px);background:#18181bb3}.focus-ring:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ring);outline-offset:2px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slide-in-right{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.6}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(1turn)}}.animate-fade-in{animation:fade-in var(--transition-base)ease-out}.animate-fade-in-up{animation:fade-in-up var(--transition-slow)ease-out}.animate-slide-in-right{animation:slide-in-right var(--transition-slow)ease-out}.animate-scale-in{animation:scale-in var(--transition-base)ease-out}.animate-pulse-soft{animation:pulse-soft 2s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,var(--card-bg)0,var(--card-border)50%,var(--card-bg)100%);background-size:200% 100%;animation:shimmer 1.5s infinite}.animate-spin{animation:spin 1s linear infinite}.skeleton{background:linear-gradient(90deg,var(--card-bg)0,var(--card-border)50%,var(--card-bg)100%);border-radius:var(--radius);background-size:200% 100%;animation:shimmer 1.5s infinite}.card{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-lg);transition:all var(--transition-base)}.card:hover{border-color:var(--primary)}@supports (color:color-mix(in lab,red,red)){.card:hover{border-color:color-mix(in srgb,var(--primary)30%,var(--card-border))}}.card:hover{box-shadow:var(--shadow-md),0 0 0 1px var(--primary)}@supports (color:color-mix(in lab,red,red)){.card:hover{box-shadow:var(--shadow-md),0 0 0 1px color-mix(in srgb,var(--primary)10%,transparent)}}.card-interactive{cursor:pointer}.card-interactive:hover{box-shadow:var(--shadow-lg),0 0 20px -5px var(--primary);transform:translateY(-1px)}@supports (color:color-mix(in lab,red,red)){.card-interactive:hover{box-shadow:var(--shadow-lg),0 0 20px -5px color-mix(in srgb,var(--primary)20%,transparent)}}.card-interactive:active{transform:translateY(0)}.btn{border-radius:var(--radius-md);transition:all var(--transition-fast);cursor:pointer;border:none;outline:none;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:var(--primary-foreground)}.btn-primary:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 0 20px -5px var(--primary)}.btn-secondary{background:var(--secondary-muted);color:var(--foreground);border:1px solid var(--border)}.btn-secondary:hover:not(:disabled){background:var(--muted);border-color:var(--muted-foreground)}.btn-ghost{color:var(--muted-foreground);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--muted);color:var(--foreground)}.btn-destructive{background:var(--destructive-muted);color:var(--destructive)}.btn-destructive:hover:not(:disabled){background:var(--destructive);color:var(--destructive-foreground)}.badge{transition:all var(--transition-fast);border:1px solid #0000;border-radius:9999px;align-items:center;gap:.25rem;padding:.125rem .5rem;font-size:.625rem;font-weight:500;display:inline-flex}.badge-status-queued{background:var(--status-queued-bg);color:var(--status-queued);border-color:var(--status-queued-border)}.badge-status-in_progress{background:var(--status-in-progress-bg);color:var(--status-in-progress);border-color:var(--status-in-progress-border)}.badge-status-blocked{background:var(--status-blocked-bg);color:var(--status-blocked);border-color:var(--status-blocked-border)}.badge-status-failed{background:var(--status-failed-bg);color:var(--status-failed);border-color:var(--status-failed-border)}.badge-status-completed{background:var(--status-completed-bg);color:var(--status-completed);border-color:var(--status-completed-border)}.input{background:var(--background);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;color:var(--foreground);transition:all var(--transition-fast);padding:.625rem .875rem;font-size:.875rem}.input:focus{border-color:var(--input-focus);box-shadow:0 0 0 3px var(--primary);outline:none}@supports (color:color-mix(in lab,red,red)){.input:focus{box-shadow:0 0 0 3px color-mix(in srgb,var(--primary)20%,transparent)}}.input::placeholder{color:var(--muted-foreground)}.kanban-column{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-xl);transition:all var(--transition-base)}.kanban-column-header{border-bottom:1px solid var(--card-border);background:var(--card-bg);border-radius:var(--radius-xl)var(--radius-xl)0 0;z-index:10;padding:.875rem 1rem;position:sticky;top:0}.kanban-column-content{min-height:200px;max-height:60vh;padding:.5rem;overflow-y:auto}.modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;animation:fade-in var(--transition-fast)ease-out;background:#000c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:var(--card-bg);border:1px solid var(--card-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);animation:scale-in var(--transition-base)ease-out}.timeline-line{background:linear-gradient(to bottom,var(--card-border),transparent);width:2px;position:absolute;top:0;bottom:0;left:.5rem}.timeline-dot{background:var(--card-border);border:2px solid var(--card-bg);width:1rem;height:1rem;transition:all var(--transition-fast);border-radius:9999px;position:absolute;top:.375rem;left:0}.timeline-item:hover .timeline-dot{background:var(--primary);box-shadow:0 0 10px var(--primary)}@media (max-width:768px){.hide-mobile{display:none}.touch-target{min-width:44px;min-height:44px}}@media (min-width:769px){.hide-desktop{display:none}}.truncate-2{-webkit-line-clamp:2}.truncate-2,.truncate-3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.truncate-3{-webkit-line-clamp:3}.gradient-text{background:linear-gradient(135deg,var(--primary),var(--accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.spinner{border:2px solid var(--card-border);border-top-color:var(--primary);border-radius:50%;width:1.25rem;height:1.25rem;animation:spin .75s linear infinite}.spinner-lg{border-width:3px;width:2rem;height:2rem}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}
package/index.js CHANGED
@@ -897,6 +897,32 @@ function ensureNextPrompt(decision) {
897
897
  };
898
898
  }
899
899
 
900
+ function buildNextPromptWithDecisionContext(decision) {
901
+ if (!decision || typeof decision !== 'object') return '';
902
+ const nextPrompt = typeof decision.next_prompt === 'string' ? decision.next_prompt.trim() : '';
903
+ if (!nextPrompt) return '';
904
+
905
+ const decisionLabel = typeof decision.decision === 'string' ? decision.decision.trim() : '';
906
+ const summary = typeof decision.summary === 'string' ? decision.summary.trim() : '';
907
+ const explanation = typeof decision.explanation === 'string' ? decision.explanation.trim() : '';
908
+ const finalResult = typeof decision.final_result === 'string' ? decision.final_result.trim() : '';
909
+
910
+ const ctx = [];
911
+ if (decisionLabel) ctx.push(`Decision: ${decisionLabel}`);
912
+ if (summary) ctx.push(`Summary: ${truncateForPrompt(summary, 800)}`);
913
+ if (explanation && explanation !== summary) ctx.push(`Explanation: ${truncateForPrompt(explanation, 1200)}`);
914
+ if (finalResult && finalResult !== summary && finalResult !== explanation) ctx.push(`Final Result: ${truncateForPrompt(finalResult, 1200)}`);
915
+
916
+ if (!ctx.length) return nextPrompt;
917
+
918
+ return [
919
+ nextPrompt,
920
+ '',
921
+ 'Context from last decision:',
922
+ ...ctx.map((line) => `- ${line}`),
923
+ ].join('\n');
924
+ }
925
+
900
926
  function ensureExplanation(decision) {
901
927
  if (!decision || typeof decision !== 'object') return decision;
902
928
  if (typeof decision.explanation === 'string' && decision.explanation.trim()) return decision;
@@ -1325,7 +1351,7 @@ async function runSwarmIteration({ taskId, task, prompt, logger, artifacts, canc
1325
1351
  logger?.log('system', `[swarm] iteration start\n`);
1326
1352
 
1327
1353
  const results = await pMap(providers, (provider, index) => {
1328
- const args = [provider, '--cloud-task', taskId];
1354
+ const args = [provider, '--cloud-task', taskId, '-y'];
1329
1355
  const modelForProvider = swarmModels.length
1330
1356
  ? swarmModels[index]?.model || null
1331
1357
  : null;
@@ -1383,7 +1409,7 @@ async function runSwarmIteration({ taskId, task, prompt, logger, artifacts, canc
1383
1409
  async function runSingleAgentIteration({ taskId, task, provider, model, prompt, logger, onStdout, onStderr, artifacts, cancellationWatcher }) {
1384
1410
  logExecutionFlow('runSingleAgentIteration', 'input', `taskId=${taskId}, provider=${provider}, model=${model}, prompt=${Boolean(prompt) ? 'present' : 'none'}`);
1385
1411
  logExecutionFlow('runSingleAgentIteration', 'processing', 'preparing runAgxCommand');
1386
- const args = [provider, '--cloud-task', taskId];
1412
+ const args = [provider, '--cloud-task', taskId, '-y'];
1387
1413
  if (model) {
1388
1414
  args.push('--model', model);
1389
1415
  }
@@ -1554,7 +1580,7 @@ async function runSingleAgentAggregate({ task, taskId, prompt, output, iteration
1554
1580
  });
1555
1581
  artifacts?.recordPrompt(`Aggregator Prompt (${aggregatorProvider}${aggregatorModel ? `/${aggregatorModel}` : ''})`, aggregatePrompt);
1556
1582
 
1557
- const aggregateArgs = [aggregatorProvider, '--prompt', aggregatePrompt, '--print'];
1583
+ const aggregateArgs = [aggregatorProvider, '--prompt', aggregatePrompt, '--print', '-y'];
1558
1584
  if (aggregatorModel) {
1559
1585
  aggregateArgs.push('--model', aggregatorModel);
1560
1586
  }
@@ -2006,7 +2032,7 @@ async function runSingleAgentExecuteVerifyLoop({ taskId, task, provider, model,
2006
2032
  const verifyArtifacts = createDaemonArtifactsRecorder({ storage, run: verifyRun, taskId });
2007
2033
  verifyArtifacts.recordPrompt(`Verification Prompt (${provider}${model ? `/${model}` : ''}, iter ${iteration})`, verifyPrompt);
2008
2034
 
2009
- const verifyArgs = [provider, '--prompt', verifyPrompt, '--print'];
2035
+ const verifyArgs = [provider, '--prompt', verifyPrompt, '--print', '-y'];
2010
2036
  if (model) verifyArgs.push('--model', model);
2011
2037
 
2012
2038
  await abortIfCancelled(cancellationWatcher);
@@ -2263,7 +2289,7 @@ async function runSwarmExecuteVerifyLoop({ taskId, task, logger, storage, projec
2263
2289
  const verifyArtifacts = createDaemonArtifactsRecorder({ storage, run: verifyRun, taskId });
2264
2290
  verifyArtifacts.recordPrompt(`Verification Prompt (${verifierProvider}${verifierModel ? `/${verifierModel}` : ''}, iter ${iteration})`, verifyPrompt);
2265
2291
 
2266
- const verifyArgs = [verifierProvider, '--prompt', verifyPrompt, '--print'];
2292
+ const verifyArgs = [verifierProvider, '--prompt', verifyPrompt, '--print', '-y'];
2267
2293
  if (verifierModel) verifyArgs.push('--model', verifierModel);
2268
2294
 
2269
2295
  let verifyRes;
@@ -2427,7 +2453,7 @@ async function runSwarmAggregate({ task, taskId, prompt, results, iteration, log
2427
2453
  });
2428
2454
  artifacts?.recordPrompt(`Swarm Aggregator Prompt (${aggregatorProvider}${aggregatorModel ? `/${aggregatorModel}` : ''})`, aggregatePrompt);
2429
2455
 
2430
- const aggregateArgs = [aggregatorProvider, '--prompt', aggregatePrompt, '--print'];
2456
+ const aggregateArgs = [aggregatorProvider, '--prompt', aggregatePrompt, '--print', '-y'];
2431
2457
  if (aggregatorModel) {
2432
2458
  aggregateArgs.push('--model', aggregatorModel);
2433
2459
  }
@@ -0,0 +1,38 @@
1
+ /* eslint-disable no-console */
2
+ 'use strict';
3
+
4
+ const fs = require('fs');
5
+ const readline = require('readline');
6
+ const { CONFIG_DIR, CONFIG_FILE } = require('../config/paths');
7
+
8
+ function loadConfig() {
9
+ try {
10
+ if (fs.existsSync(CONFIG_FILE)) {
11
+ return JSON.parse(fs.readFileSync(CONFIG_FILE, 'utf8'));
12
+ }
13
+ } catch { }
14
+ return null;
15
+ }
16
+
17
+ function saveConfig(config) {
18
+ if (!fs.existsSync(CONFIG_DIR)) {
19
+ fs.mkdirSync(CONFIG_DIR, { recursive: true });
20
+ }
21
+ fs.writeFileSync(CONFIG_FILE, JSON.stringify(config, null, 2));
22
+ }
23
+
24
+ function prompt(question) {
25
+ const rl = readline.createInterface({
26
+ input: process.stdin,
27
+ output: process.stdout
28
+ });
29
+ return new Promise((resolve) => {
30
+ rl.question(question, (answer) => {
31
+ rl.close();
32
+ resolve(answer);
33
+ });
34
+ });
35
+ }
36
+
37
+ module.exports = { loadConfig, saveConfig, prompt };
38
+