@mndrk/agx 2.0.44 → 2.0.45

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (440) hide show
  1. package/cloud-runtime/standalone/.linear-token.json +2 -2
  2. package/cloud-runtime/standalone/.next/BUILD_ID +1 -1
  3. package/cloud-runtime/standalone/.next/app-path-routes-manifest.json +2 -0
  4. package/cloud-runtime/standalone/.next/build-manifest.json +2 -2
  5. package/cloud-runtime/standalone/.next/prerender-manifest.json +3 -3
  6. package/cloud-runtime/standalone/.next/routes-manifest.json +13 -1
  7. package/cloud-runtime/standalone/.next/server/app/_global-error.html +2 -2
  8. package/cloud-runtime/standalone/.next/server/app/_global-error.rsc +1 -1
  9. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  10. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  11. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  12. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  13. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  14. package/cloud-runtime/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  15. package/cloud-runtime/standalone/.next/server/app/_not-found.html +2 -2
  16. package/cloud-runtime/standalone/.next/server/app/_not-found.rsc +2 -2
  17. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  18. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  19. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  20. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  21. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  22. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  23. package/cloud-runtime/standalone/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  24. package/cloud-runtime/standalone/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  25. package/cloud-runtime/standalone/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  26. package/cloud-runtime/standalone/.next/server/app/agents.html +2 -2
  27. package/cloud-runtime/standalone/.next/server/app/agents.rsc +2 -2
  28. package/cloud-runtime/standalone/.next/server/app/agents.segments/_full.segment.rsc +2 -2
  29. package/cloud-runtime/standalone/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  30. package/cloud-runtime/standalone/.next/server/app/agents.segments/_index.segment.rsc +2 -2
  31. package/cloud-runtime/standalone/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  32. package/cloud-runtime/standalone/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +1 -1
  33. package/cloud-runtime/standalone/.next/server/app/agents.segments/agents.segment.rsc +1 -1
  34. package/cloud-runtime/standalone/.next/server/app/api/agent-specs/route.js +1 -1
  35. package/cloud-runtime/standalone/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
  36. package/cloud-runtime/standalone/.next/server/app/api/agents/[id]/profile/route.js +1 -1
  37. package/cloud-runtime/standalone/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
  38. package/cloud-runtime/standalone/.next/server/app/api/agents/export/route.js +1 -1
  39. package/cloud-runtime/standalone/.next/server/app/api/agents/export/route.js.nft.json +1 -1
  40. package/cloud-runtime/standalone/.next/server/app/api/automations/create/route.js +1 -1
  41. package/cloud-runtime/standalone/.next/server/app/api/automations/create/route.js.nft.json +1 -1
  42. package/cloud-runtime/standalone/.next/server/app/api/automations/route.js +1 -1
  43. package/cloud-runtime/standalone/.next/server/app/api/automations/route.js.nft.json +1 -1
  44. package/cloud-runtime/standalone/.next/server/app/api/chat/route.js +1 -1
  45. package/cloud-runtime/standalone/.next/server/app/api/chat/route.js.nft.json +1 -1
  46. package/cloud-runtime/standalone/.next/server/app/api/file-search/route.js.nft.json +1 -1
  47. package/cloud-runtime/standalone/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js +1 -1
  48. package/cloud-runtime/standalone/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js.nft.json +1 -1
  49. package/cloud-runtime/standalone/.next/server/app/api/health/route.js +1 -1
  50. package/cloud-runtime/standalone/.next/server/app/api/health/route.js.nft.json +1 -1
  51. package/cloud-runtime/standalone/.next/server/app/api/learnings/route.js +1 -1
  52. package/cloud-runtime/standalone/.next/server/app/api/learnings/route.js.nft.json +1 -1
  53. package/cloud-runtime/standalone/.next/server/app/api/linear/callback/route.js +1 -1
  54. package/cloud-runtime/standalone/.next/server/app/api/linear/callback/route.js.nft.json +1 -1
  55. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route/app-paths-manifest.json +3 -0
  56. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route/build-manifest.json +11 -0
  57. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route/server-reference-manifest.json +4 -0
  58. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route.js +10 -0
  59. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route.js.map +5 -0
  60. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route.js.nft.json +1 -0
  61. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route_client-reference-manifest.js +2 -0
  62. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route.js +5 -2
  63. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route.js.nft.json +1 -1
  64. package/cloud-runtime/standalone/.next/server/app/api/linear/options/route/app-paths-manifest.json +3 -0
  65. package/cloud-runtime/standalone/.next/server/app/api/linear/options/route/build-manifest.json +11 -0
  66. package/cloud-runtime/standalone/.next/server/app/api/linear/options/route/server-reference-manifest.json +4 -0
  67. package/cloud-runtime/standalone/.next/server/app/api/linear/options/route.js +7 -0
  68. package/cloud-runtime/standalone/.next/server/app/api/linear/options/route.js.map +5 -0
  69. package/cloud-runtime/standalone/.next/server/app/api/linear/options/route.js.nft.json +1 -0
  70. package/cloud-runtime/standalone/.next/server/app/api/linear/options/route_client-reference-manifest.js +2 -0
  71. package/cloud-runtime/standalone/.next/server/app/api/linear/status/route.js.nft.json +1 -1
  72. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js +1 -1
  73. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js.nft.json +1 -1
  74. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js +1 -1
  75. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js.nft.json +1 -1
  76. package/cloud-runtime/standalone/.next/server/app/api/participants/route.js +1 -1
  77. package/cloud-runtime/standalone/.next/server/app/api/participants/route.js.nft.json +1 -1
  78. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/agents/route.js +1 -1
  79. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/agents/route.js.nft.json +1 -1
  80. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v1/route.js +1 -1
  81. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v1/route.js.nft.json +1 -1
  82. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v2/route.js +1 -1
  83. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v2/route.js.nft.json +1 -1
  84. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/route.js +1 -1
  85. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  86. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/skills/route.js +1 -1
  87. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/skills/route.js.nft.json +1 -1
  88. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/threads/route.js +1 -1
  89. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/threads/route.js.nft.json +1 -1
  90. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/variables/route.js +1 -1
  91. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/variables/route.js.nft.json +1 -1
  92. package/cloud-runtime/standalone/.next/server/app/api/projects/route.js +1 -1
  93. package/cloud-runtime/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
  94. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/cancel/route.js +1 -1
  95. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/cancel/route.js.nft.json +1 -1
  96. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/route.js +1 -1
  97. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/route.js.nft.json +1 -1
  98. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/runs/route.js +1 -1
  99. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/runs/route.js.nft.json +1 -1
  100. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/agents/route.js +1 -1
  101. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/agents/route.js.nft.json +1 -1
  102. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/poll/route.js +1 -1
  103. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
  104. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/route.js +1 -1
  105. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/route.js.nft.json +1 -1
  106. package/cloud-runtime/standalone/.next/server/app/api/providers/route.js.nft.json +1 -1
  107. package/cloud-runtime/standalone/.next/server/app/api/queue/complete/route.js +1 -1
  108. package/cloud-runtime/standalone/.next/server/app/api/queue/complete/route.js.nft.json +1 -1
  109. package/cloud-runtime/standalone/.next/server/app/api/queue/route.js +4 -4
  110. package/cloud-runtime/standalone/.next/server/app/api/queue/route.js.nft.json +1 -1
  111. package/cloud-runtime/standalone/.next/server/app/api/schedules/debug/route.js +4 -4
  112. package/cloud-runtime/standalone/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
  113. package/cloud-runtime/standalone/.next/server/app/api/schedules/poll/route.js +4 -4
  114. package/cloud-runtime/standalone/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
  115. package/cloud-runtime/standalone/.next/server/app/api/schedules/route.js +1 -1
  116. package/cloud-runtime/standalone/.next/server/app/api/schedules/route.js.nft.json +1 -1
  117. package/cloud-runtime/standalone/.next/server/app/api/status/route.js +1 -1
  118. package/cloud-runtime/standalone/.next/server/app/api/status/route.js.nft.json +1 -1
  119. package/cloud-runtime/standalone/.next/server/app/api/summarize/route.js +1 -1
  120. package/cloud-runtime/standalone/.next/server/app/api/summarize/route.js.nft.json +1 -1
  121. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js +1 -1
  122. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  123. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/route.js +1 -1
  124. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  125. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/costs/route.js +1 -1
  126. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/costs/route.js.nft.json +1 -1
  127. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/dependencies/route.js +1 -1
  128. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/dependencies/route.js.nft.json +1 -1
  129. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/events/route.js +1 -1
  130. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -1
  131. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/history/route.js +1 -1
  132. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -1
  133. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/metrics/route.js +1 -1
  134. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -1
  135. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/replan/route.js +1 -1
  136. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -1
  137. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/restart/route.js +1 -1
  138. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -1
  139. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/resume/route.js +1 -1
  140. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -1
  141. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/rollback/route.js +1 -1
  142. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -1
  143. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/route.js +1 -1
  144. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -1
  145. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/schedule/route.js +1 -1
  146. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/schedule/route.js.nft.json +1 -1
  147. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/start/route.js +1 -1
  148. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/start/route.js.nft.json +1 -1
  149. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/stop/route.js +1 -1
  150. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/stop/route.js.nft.json +1 -1
  151. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/history/route.js +1 -1
  152. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/history/route.js.nft.json +1 -1
  153. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/route.js +1 -1
  154. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
  155. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js +1 -1
  156. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js.nft.json +1 -1
  157. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js +1 -1
  158. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -1
  159. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js +1 -1
  160. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -1
  161. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js +1 -1
  162. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -1
  163. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js +1 -1
  164. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -1
  165. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js +1 -1
  166. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -1
  167. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js +1 -1
  168. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
  169. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/route.js +1 -1
  170. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  171. package/cloud-runtime/standalone/.next/server/app/api/tasks/assign-orphans/route.js +1 -1
  172. package/cloud-runtime/standalone/.next/server/app/api/tasks/assign-orphans/route.js.nft.json +1 -1
  173. package/cloud-runtime/standalone/.next/server/app/api/tasks/extract/route.js +1 -1
  174. package/cloud-runtime/standalone/.next/server/app/api/tasks/extract/route.js.nft.json +1 -1
  175. package/cloud-runtime/standalone/.next/server/app/api/tasks/route.js +3 -3
  176. package/cloud-runtime/standalone/.next/server/app/api/tasks/route.js.nft.json +1 -1
  177. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route.js +1 -1
  178. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
  179. package/cloud-runtime/standalone/.next/server/app/api/threads/route.js +1 -1
  180. package/cloud-runtime/standalone/.next/server/app/api/threads/route.js.nft.json +1 -1
  181. package/cloud-runtime/standalone/.next/server/app/api/user-settings/route.js +1 -1
  182. package/cloud-runtime/standalone/.next/server/app/api/user-settings/route.js.nft.json +1 -1
  183. package/cloud-runtime/standalone/.next/server/app/automations/page/react-loadable-manifest.json +2 -2
  184. package/cloud-runtime/standalone/.next/server/app/automations/page.js.nft.json +1 -1
  185. package/cloud-runtime/standalone/.next/server/app/automations/page_client-reference-manifest.js +1 -1
  186. package/cloud-runtime/standalone/.next/server/app/automations.html +2 -2
  187. package/cloud-runtime/standalone/.next/server/app/automations.rsc +3 -3
  188. package/cloud-runtime/standalone/.next/server/app/automations.segments/_full.segment.rsc +3 -3
  189. package/cloud-runtime/standalone/.next/server/app/automations.segments/_head.segment.rsc +1 -1
  190. package/cloud-runtime/standalone/.next/server/app/automations.segments/_index.segment.rsc +2 -2
  191. package/cloud-runtime/standalone/.next/server/app/automations.segments/_tree.segment.rsc +2 -2
  192. package/cloud-runtime/standalone/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +2 -2
  193. package/cloud-runtime/standalone/.next/server/app/automations.segments/automations.segment.rsc +1 -1
  194. package/cloud-runtime/standalone/.next/server/app/board/page_client-reference-manifest.js +1 -1
  195. package/cloud-runtime/standalone/.next/server/app/board.html +2 -2
  196. package/cloud-runtime/standalone/.next/server/app/board.rsc +2 -2
  197. package/cloud-runtime/standalone/.next/server/app/board.segments/_full.segment.rsc +2 -2
  198. package/cloud-runtime/standalone/.next/server/app/board.segments/_head.segment.rsc +1 -1
  199. package/cloud-runtime/standalone/.next/server/app/board.segments/_index.segment.rsc +2 -2
  200. package/cloud-runtime/standalone/.next/server/app/board.segments/_tree.segment.rsc +2 -2
  201. package/cloud-runtime/standalone/.next/server/app/board.segments/board/__PAGE__.segment.rsc +1 -1
  202. package/cloud-runtime/standalone/.next/server/app/board.segments/board.segment.rsc +1 -1
  203. package/cloud-runtime/standalone/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -1
  204. package/cloud-runtime/standalone/.next/server/app/execution-graph.html +2 -2
  205. package/cloud-runtime/standalone/.next/server/app/execution-graph.rsc +2 -2
  206. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_full.segment.rsc +2 -2
  207. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_head.segment.rsc +1 -1
  208. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_index.segment.rsc +2 -2
  209. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_tree.segment.rsc +2 -2
  210. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +1 -1
  211. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +1 -1
  212. package/cloud-runtime/standalone/.next/server/app/index.html +2 -2
  213. package/cloud-runtime/standalone/.next/server/app/index.rsc +4 -4
  214. package/cloud-runtime/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +3 -3
  215. package/cloud-runtime/standalone/.next/server/app/index.segments/_full.segment.rsc +4 -4
  216. package/cloud-runtime/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  217. package/cloud-runtime/standalone/.next/server/app/index.segments/_index.segment.rsc +2 -2
  218. package/cloud-runtime/standalone/.next/server/app/index.segments/_tree.segment.rsc +3 -3
  219. package/cloud-runtime/standalone/.next/server/app/page.js.nft.json +1 -1
  220. package/cloud-runtime/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  221. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page/react-loadable-manifest.json +2 -2
  222. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
  223. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
  224. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
  225. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page_client-reference-manifest.js +1 -1
  226. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page/react-loadable-manifest.json +3 -3
  227. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page.js.nft.json +1 -1
  228. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page_client-reference-manifest.js +1 -1
  229. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  230. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
  231. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
  232. package/cloud-runtime/standalone/.next/server/app/projects/orphans/page_client-reference-manifest.js +1 -1
  233. package/cloud-runtime/standalone/.next/server/app/projects/orphans.html +2 -2
  234. package/cloud-runtime/standalone/.next/server/app/projects/orphans.rsc +2 -2
  235. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_full.segment.rsc +2 -2
  236. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_head.segment.rsc +1 -1
  237. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_index.segment.rsc +2 -2
  238. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_tree.segment.rsc +2 -2
  239. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +1 -1
  240. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +1 -1
  241. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects.segment.rsc +1 -1
  242. package/cloud-runtime/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  243. package/cloud-runtime/standalone/.next/server/app/projects.html +2 -2
  244. package/cloud-runtime/standalone/.next/server/app/projects.rsc +2 -2
  245. package/cloud-runtime/standalone/.next/server/app/projects.segments/_full.segment.rsc +2 -2
  246. package/cloud-runtime/standalone/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  247. package/cloud-runtime/standalone/.next/server/app/projects.segments/_index.segment.rsc +2 -2
  248. package/cloud-runtime/standalone/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  249. package/cloud-runtime/standalone/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +1 -1
  250. package/cloud-runtime/standalone/.next/server/app/projects.segments/projects.segment.rsc +1 -1
  251. package/cloud-runtime/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  252. package/cloud-runtime/standalone/.next/server/app/settings.html +2 -2
  253. package/cloud-runtime/standalone/.next/server/app/settings.rsc +2 -2
  254. package/cloud-runtime/standalone/.next/server/app/settings.segments/_full.segment.rsc +2 -2
  255. package/cloud-runtime/standalone/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  256. package/cloud-runtime/standalone/.next/server/app/settings.segments/_index.segment.rsc +2 -2
  257. package/cloud-runtime/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  258. package/cloud-runtime/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  259. package/cloud-runtime/standalone/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  260. package/cloud-runtime/standalone/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  261. package/cloud-runtime/standalone/.next/server/app/skills.html +2 -2
  262. package/cloud-runtime/standalone/.next/server/app/skills.rsc +2 -2
  263. package/cloud-runtime/standalone/.next/server/app/skills.segments/_full.segment.rsc +2 -2
  264. package/cloud-runtime/standalone/.next/server/app/skills.segments/_head.segment.rsc +1 -1
  265. package/cloud-runtime/standalone/.next/server/app/skills.segments/_index.segment.rsc +2 -2
  266. package/cloud-runtime/standalone/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
  267. package/cloud-runtime/standalone/.next/server/app/skills.segments/skills/__PAGE__.segment.rsc +1 -1
  268. package/cloud-runtime/standalone/.next/server/app/skills.segments/skills.segment.rsc +1 -1
  269. package/cloud-runtime/standalone/.next/server/app/status/page_client-reference-manifest.js +1 -1
  270. package/cloud-runtime/standalone/.next/server/app/status.html +2 -2
  271. package/cloud-runtime/standalone/.next/server/app/status.rsc +3 -3
  272. package/cloud-runtime/standalone/.next/server/app/status.segments/_full.segment.rsc +3 -3
  273. package/cloud-runtime/standalone/.next/server/app/status.segments/_head.segment.rsc +1 -1
  274. package/cloud-runtime/standalone/.next/server/app/status.segments/_index.segment.rsc +2 -2
  275. package/cloud-runtime/standalone/.next/server/app/status.segments/_tree.segment.rsc +2 -2
  276. package/cloud-runtime/standalone/.next/server/app/status.segments/status/__PAGE__.segment.rsc +2 -2
  277. package/cloud-runtime/standalone/.next/server/app/status.segments/status.segment.rsc +1 -1
  278. package/cloud-runtime/standalone/.next/server/app/thread/[id]/page.js.nft.json +1 -1
  279. package/cloud-runtime/standalone/.next/server/app/thread/[id]/page_client-reference-manifest.js +1 -1
  280. package/cloud-runtime/standalone/.next/server/app/welcome/page_client-reference-manifest.js +1 -1
  281. package/cloud-runtime/standalone/.next/server/app/welcome.html +2 -2
  282. package/cloud-runtime/standalone/.next/server/app/welcome.rsc +2 -2
  283. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_full.segment.rsc +2 -2
  284. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_head.segment.rsc +1 -1
  285. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_index.segment.rsc +2 -2
  286. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_tree.segment.rsc +2 -2
  287. package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome/__PAGE__.segment.rsc +1 -1
  288. package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome.segment.rsc +1 -1
  289. package/cloud-runtime/standalone/.next/server/app-paths-manifest.json +2 -0
  290. package/cloud-runtime/standalone/.next/server/chunks/{[externals]__29a2424c._.js → [externals]__31e26905._.js} +1 -1
  291. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__fb1f7e58._.js → [root-of-the-server]__00fd30c8._.js} +2 -2
  292. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__e4f01b5c._.js → [root-of-the-server]__0e98af48._.js} +2 -2
  293. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1154e5b3._.js +67 -0
  294. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__44ef900b._.js → [root-of-the-server]__11c1214e._.js} +2 -2
  295. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__5e5eb809._.js → [root-of-the-server]__152b2000._.js} +10 -10
  296. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__f21849ad._.js → [root-of-the-server]__15f3bb96._.js} +2 -2
  297. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__7cade6c6._.js → [root-of-the-server]__1f53e82e._.js} +2 -2
  298. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__c77efd85._.js → [root-of-the-server]__20533a2c._.js} +2 -2
  299. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__e0994be2._.js → [root-of-the-server]__3b1431b6._.js} +2 -2
  300. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3b83b657._.js +147 -0
  301. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__d3945cae._.js → [root-of-the-server]__3bf516b6._.js} +2 -2
  302. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__2d15af44._.js → [root-of-the-server]__3fd3c5b1._.js} +2 -2
  303. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__13fe776f._.js → [root-of-the-server]__42e713f5._.js} +2 -2
  304. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__1be9b30e._.js → [root-of-the-server]__4b0b5fe1._.js} +2 -2
  305. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__558389f7._.js +3 -0
  306. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__5a042505._.js → [root-of-the-server]__5aaf8c25._.js} +2 -2
  307. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__22b7bf38._.js → [root-of-the-server]__5b13e7a5._.js} +2 -2
  308. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__34efe92e._.js → [root-of-the-server]__635fe0f9._.js} +2 -2
  309. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__c9550a93._.js → [root-of-the-server]__68da2825._.js} +2 -2
  310. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__e5bad635._.js → [root-of-the-server]__6921fe3f._.js} +2 -2
  311. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__dc542063._.js → [root-of-the-server]__6988985c._.js} +2 -2
  312. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__c5025f86._.js → [root-of-the-server]__7012e83d._.js} +7 -7
  313. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__9d3a2caa._.js → [root-of-the-server]__70327010._.js} +2 -2
  314. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__748c718f._.js +147 -0
  315. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__76290829._.js +46 -8
  316. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__c0919d7d._.js → [root-of-the-server]__79fa35e4._.js} +2 -2
  317. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__ac9b93fd._.js → [root-of-the-server]__8d205f82._.js} +2 -2
  318. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__0281ad06._.js → [root-of-the-server]__9ffa67b7._.js} +2 -2
  319. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__dd1cb250._.js → [root-of-the-server]__a300f072._.js} +2 -2
  320. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__5fbc700c._.js → [root-of-the-server]__a7e0ac67._.js} +2 -2
  321. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__91b51f33._.js → [root-of-the-server]__aad349b4._.js} +2 -2
  322. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ad6d6402._.js +46 -8
  323. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__349d67e7._.js → [root-of-the-server]__b133856b._.js} +2 -2
  324. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__45a50de9._.js → [root-of-the-server]__c029daab._.js} +2 -2
  325. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__a1e62918._.js → [root-of-the-server]__c8195768._.js} +1 -1
  326. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ce2a1672._.js +67 -0
  327. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__a2e17f69._.js → [root-of-the-server]__d4f42f49._.js} +2 -2
  328. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__d9f2041b._.js +47 -9
  329. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__ad4cb055._.js → [root-of-the-server]__dca6026a._.js} +2 -2
  330. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__bacb0193._.js → [root-of-the-server]__ddb3aa76._.js} +2 -2
  331. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__de295ef3._.js +3 -0
  332. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__7d4fa0fd._.js → [root-of-the-server]__e7be56ba._.js} +2 -2
  333. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__73b17f49._.js → [root-of-the-server]__ebece93b._.js} +2 -2
  334. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ef27f8cd._.js +49 -0
  335. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__56dbe1a4._.js → [root-of-the-server]__f13c29c6._.js} +2 -2
  336. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__98d58423._.js → [root-of-the-server]__fcdaf6d8._.js} +2 -2
  337. package/cloud-runtime/standalone/.next/server/chunks/_6e7f0ae4._.js +6 -0
  338. package/cloud-runtime/standalone/.next/server/chunks/_a93e80e8._.js +3 -0
  339. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_linear_issues_context_route_actions_0b2c282c.js +3 -0
  340. package/cloud-runtime/standalone/.next/server/chunks/_next-internal_server_app_api_linear_options_route_actions_29764947.js +3 -0
  341. package/cloud-runtime/standalone/.next/server/chunks/lib_app-config_ts_7f2f30ad._.js +3 -0
  342. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__1c4256ce._.js +3 -0
  343. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__4c9d0778._.js +3 -0
  344. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__69887882._.js +3 -0
  345. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__f59f0dc7._.js +3 -0
  346. package/cloud-runtime/standalone/.next/server/chunks/ssr/{_95434d70._.js → _1d26be78._.js} +2 -2
  347. package/cloud-runtime/standalone/.next/server/chunks/ssr/_32c878b9._.js +3 -0
  348. package/cloud-runtime/standalone/.next/server/chunks/ssr/_60d0bae4._.js +3 -0
  349. package/cloud-runtime/standalone/.next/server/chunks/ssr/_77e1407a._.js +3 -0
  350. package/cloud-runtime/standalone/.next/server/chunks/ssr/_7f7a828a._.js +3 -0
  351. package/cloud-runtime/standalone/.next/server/chunks/ssr/_ba5903a7._.js +3 -0
  352. package/cloud-runtime/standalone/.next/server/chunks/ssr/_ed4fece9._.js +3 -0
  353. package/cloud-runtime/standalone/.next/server/chunks/ssr/_f51a3112._.js +3 -0
  354. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_projects_[slug]_linear_page_tsx_971a6ba7._.js +3 -3
  355. package/cloud-runtime/standalone/.next/server/chunks/ssr/components_chat-ui_bfeda794._.js +7 -3
  356. package/cloud-runtime/standalone/.next/server/functions-config-manifest.json +2 -0
  357. package/cloud-runtime/standalone/.next/server/instrumentation.js +1 -1
  358. package/cloud-runtime/standalone/.next/server/middleware-manifest.json +5 -5
  359. package/cloud-runtime/standalone/.next/server/pages/404.html +2 -2
  360. package/cloud-runtime/standalone/.next/server/pages/500.html +2 -2
  361. package/cloud-runtime/standalone/.next/server/server-reference-manifest.js +1 -1
  362. package/cloud-runtime/standalone/.next/server/server-reference-manifest.json +1 -1
  363. package/cloud-runtime/standalone/.next/static/chunks/00716478a3ee55a2.js +37 -0
  364. package/cloud-runtime/standalone/.next/static/chunks/02add5a8d35c53fe.js +1 -0
  365. package/cloud-runtime/standalone/.next/static/chunks/2362d5c0dcaa5d64.js +1 -0
  366. package/cloud-runtime/standalone/.next/static/chunks/2730394502dd3664.js +1 -0
  367. package/cloud-runtime/standalone/.next/static/chunks/3091043e8c282dce.css +1 -0
  368. package/cloud-runtime/standalone/.next/static/chunks/3dc50de1c86e1ce9.js +1 -0
  369. package/cloud-runtime/standalone/.next/static/chunks/4ea8f08087116055.js +1 -0
  370. package/cloud-runtime/standalone/.next/static/chunks/5607ad702ebb8a4b.js +9 -0
  371. package/cloud-runtime/standalone/.next/static/chunks/6103b9b5538bba4d.css +2 -0
  372. package/cloud-runtime/standalone/.next/static/chunks/98c20da4973991f0.js +1 -0
  373. package/cloud-runtime/standalone/.next/static/chunks/a9da98f883ac833b.js +1 -0
  374. package/cloud-runtime/standalone/.next/static/chunks/{da12f313213a5615.js → b2127dc67c5ade9f.js} +1 -1
  375. package/cloud-runtime/standalone/.next/static/chunks/{76229fb555232113.js → b3377e39d47c71cf.js} +1 -1
  376. package/cloud-runtime/standalone/.next/static/chunks/bf2a2fafb710e63c.js +1 -0
  377. package/cloud-runtime/standalone/.next/static/chunks/c0d17e0c37ba8e7a.js +1 -0
  378. package/cloud-runtime/standalone/.next/static/chunks/db131a0b6350e416.js +1 -0
  379. package/cloud-runtime/standalone/.next/static/chunks/e51fddf53a6dc1e4.js +9 -0
  380. package/cloud-runtime/standalone/.next/static/chunks/{66769c2bf128027d.js → f4360c3e4089263f.js} +1 -1
  381. package/cloud-runtime/standalone/Dockerfile +5 -5
  382. package/cloud-runtime/standalone/app/api/linear/callback/route.ts +2 -1
  383. package/cloud-runtime/standalone/app/api/linear/issues/context/route.ts +26 -0
  384. package/cloud-runtime/standalone/app/api/linear/issues/route.ts +37 -42
  385. package/cloud-runtime/standalone/app/api/linear/options/route.ts +31 -0
  386. package/cloud-runtime/standalone/app/api/status/route.ts +2 -2
  387. package/cloud-runtime/standalone/components/LinearBoard.tsx +165 -117
  388. package/cloud-runtime/standalone/components/chat-ui/ChatContainer.tsx +3 -1
  389. package/cloud-runtime/standalone/components/chat-ui/Composer.tsx +54 -2
  390. package/cloud-runtime/standalone/components/chat-ui/MentionPopover.tsx +43 -2
  391. package/cloud-runtime/standalone/hooks/useLinearIssueMentions.ts +64 -0
  392. package/cloud-runtime/standalone/hooks/useLinearIssues.ts +26 -6
  393. package/cloud-runtime/standalone/hooks/useMentionAutocomplete.ts +54 -6
  394. package/cloud-runtime/standalone/instrumentation.ts +2 -1
  395. package/cloud-runtime/standalone/lib/app-config.ts +55 -0
  396. package/cloud-runtime/standalone/lib/chat/linear-issue-context.ts +79 -0
  397. package/cloud-runtime/standalone/lib/linear-client.ts +166 -15
  398. package/cloud-runtime/standalone/lib/linear-issue-store.ts +427 -0
  399. package/cloud-runtime/standalone/lib/linear-issues.ts +360 -0
  400. package/cloud-runtime/standalone/lib/security.ts +2 -2
  401. package/cloud-runtime/standalone/lib/tiptap/composer-mentions.ts +38 -0
  402. package/cloud-runtime/standalone/lib/tiptap/editor-utils.ts +11 -0
  403. package/cloud-runtime/standalone/lib/tiptap/serialize-composer.ts +10 -0
  404. package/cloud-runtime/standalone/next.config.ts +2 -1
  405. package/cloud-runtime/standalone/src/graph/internal-function-dispatcher.ts +2 -5
  406. package/cloud-runtime/standalone/state/automations/.state/24a6a5db-3b14-49c4-841f-29f10f015fbb.json +3 -3
  407. package/cloud-runtime/standalone/styles/composer-pills.css +13 -0
  408. package/package.json +1 -1
  409. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__05243927._.js +0 -29
  410. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1017e012._.js +0 -3
  411. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__28524c6a._.js +0 -3
  412. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c1b28690._.js +0 -49
  413. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__dffa5183._.js +0 -29
  414. package/cloud-runtime/standalone/.next/server/chunks/_110bf46e._.js +0 -6
  415. package/cloud-runtime/standalone/.next/server/chunks/_22fe5fd2._.js +0 -3
  416. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__35f9b4a6._.js +0 -3
  417. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__43a0398d._.js +0 -3
  418. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__7e7d6790._.js +0 -3
  419. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__b6598a70._.js +0 -3
  420. package/cloud-runtime/standalone/.next/server/chunks/ssr/_087a5b2b._.js +0 -3
  421. package/cloud-runtime/standalone/.next/server/chunks/ssr/_1e5aee62._.js +0 -3
  422. package/cloud-runtime/standalone/.next/server/chunks/ssr/_45f91a8f._.js +0 -3
  423. package/cloud-runtime/standalone/.next/server/chunks/ssr/_fb404ac0._.js +0 -3
  424. package/cloud-runtime/standalone/.next/static/chunks/0010f3df27ae53b8.js +0 -1
  425. package/cloud-runtime/standalone/.next/static/chunks/09c637be82a06122.js +0 -1
  426. package/cloud-runtime/standalone/.next/static/chunks/0fe219bd73492107.js +0 -5
  427. package/cloud-runtime/standalone/.next/static/chunks/2dbfd095c1e1d01f.js +0 -1
  428. package/cloud-runtime/standalone/.next/static/chunks/360fde144fd22461.js +0 -1
  429. package/cloud-runtime/standalone/.next/static/chunks/416cf5039e669b5d.js +0 -1
  430. package/cloud-runtime/standalone/.next/static/chunks/95b85b1cb6868d27.js +0 -1
  431. package/cloud-runtime/standalone/.next/static/chunks/966278eaefc0aa32.js +0 -1
  432. package/cloud-runtime/standalone/.next/static/chunks/ab74849aeb87503e.js +0 -5
  433. package/cloud-runtime/standalone/.next/static/chunks/c5661b1d4c5abd6a.css +0 -2
  434. package/cloud-runtime/standalone/.next/static/chunks/d522224ad5c8d724.css +0 -1
  435. package/cloud-runtime/standalone/.next/static/chunks/e2fa3c18dd56dc25.js +0 -1
  436. package/cloud-runtime/standalone/.next/static/chunks/e910386016ceacad.js +0 -37
  437. package/cloud-runtime/standalone/.next/static/chunks/f2fe77583374541b.js +0 -1
  438. /package/cloud-runtime/standalone/.next/static/{1ixi4WIJBgIPp7LJeYeKs → Y8QdDdLJI3yzNjkyPjuJ-}/_buildManifest.js +0 -0
  439. /package/cloud-runtime/standalone/.next/static/{1ixi4WIJBgIPp7LJeYeKs → Y8QdDdLJI3yzNjkyPjuJ-}/_clientMiddlewareManifest.json +0 -0
  440. /package/cloud-runtime/standalone/.next/static/{1ixi4WIJBgIPp7LJeYeKs → Y8QdDdLJI3yzNjkyPjuJ-}/_ssgManifest.js +0 -0
@@ -1,3 +1,3 @@
1
- module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function n(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function s(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>n,"transactionFn",()=>s])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),a=e.i(814747);let n="3.35.0",s=["json1"],o=["fts5"],i=["nfs","smb","cifs","efs","fuse.sshfs"];function l(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function d(d,u){let c=[],p=d.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(p.v,n)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${n}`,found:p.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),s))l(d,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of o)l(d,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let h=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let n=a.default.resolve(t),{execSync:s}=e.r(233405);if("darwin"===r.default.platform()){let e=s(`df -T "${n}" 2>/dev/null || df "${n}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(u);h&&i.some(e=>h.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${u}' is on a network filesystem (${h})`,path:u,found:h,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(d,"journal_mode = wal"),(0,t.pragmaSet)(d,"foreign_keys = 1"),(0,t.pragmaSet)(d,"busy_timeout = 5000"),(0,t.pragmaSet)(d,"synchronous = 1"),(0,t.pragmaSet)(d,"cache_size = -64000");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(d,"journal_mode = DELETE");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(d,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>d])},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},631406,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),s=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),d=e.i(487718),u=e.i(995169),c=e.i(47587),p=e.i(666012),h=e.i(570101),f=e.i(626937),x=e.i(10372),m=e.i(193695);e.i(52474);var R=e.i(600220),g=e.i(89171),v=e.i(762294);async function E(e,t){try{let{id:e}=await t.params,r=await (0,v.getProjectThreads)(e);return g.NextResponse.json({threads:r})}catch(e){return console.error("Error fetching project threads:",e),g.NextResponse.json({error:"Failed to fetch project threads"},{status:500})}}async function w(e,t){try{let{id:r}=await t.params,a=await e.json().catch(()=>({})),n="string"==typeof a.threadId?a.threadId.trim():"";if(!n)return g.NextResponse.json({error:"threadId is required"},{status:400});let s=await (0,v.addProjectThread)(r,n);return g.NextResponse.json({thread:s},{status:201})}catch(e){return console.error("Error adding thread to project:",e),g.NextResponse.json({error:"Failed to add thread to project"},{status:500})}}async function y(e,t){try{let{id:r}=await t.params,a=new URL(e.url).searchParams.get("threadId");if(!a)return g.NextResponse.json({error:"threadId query param is required"},{status:400});return await (0,v.removeProjectThread)(r,a),g.NextResponse.json({ok:!0})}catch(e){return console.error("Error removing thread from project:",e),g.NextResponse.json({error:"Failed to remove thread from project"},{status:500})}}e.s(["DELETE",()=>y,"GET",()=>E,"POST",()=>w,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],829);var A=e.i(829);let b=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/projects/[id]/threads/route",pathname:"/api/projects/[id]/threads",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/projects/[id]/threads/route.ts",nextConfigOutput:"standalone",userland:A}),{workAsyncStorage:j,workUnitAsyncStorage:C,serverHooks:_}=b;function S(){return(0,a.patchFetch)({workAsyncStorage:j,workUnitAsyncStorage:C})}async function T(e,t,a){b.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/projects/[id]/threads/route";g=g.replace(/\/index$/,"")||"/";let v=await b.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,params:w,nextConfig:y,parsedUrl:A,isDraftMode:j,prerenderManifest:C,routerServerContext:_,isOnDemandRevalidate:S,revalidateOnlyGenerated:T,resolvedPathname:q,clientReferenceManifest:L,serverActionsManifest:N}=v,k=(0,i.normalizeAppPath)(g),P=!!(C.dynamicRoutes[k]||C.routes[q]),I=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,A,!1):t.end("This page could not be found"),null);if(P&&!j){let e=!!C.routes[q],t=C.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await I();throw new m.NoFallbackError}}let O=null;!P||b.isDev||j||(O="/index"===(O=q)?"/":O);let U=!0===b.isDev||!P,$=P&&!U;N&&L&&(0,o.setManifestsSingleton)({page:g,clientReferenceManifest:L,serverActionsManifest:N});let D=e.method||"GET",M=(0,s.getTracer)(),F=M.getActiveScopeSpan(),H={params:w,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>b.onRequestError(e,t,a,n,_)},sharedContext:{buildId:E}},G=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),K=d.NextRequestAdapter.fromNodeNextRequest(G,(0,d.signalFromNodeResponse)(t));try{let o=async e=>b.handle(K,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${D} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${g}`)}),i=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var s,l;let d=async({previousCacheEntry:r})=>{try{if(!i&&S&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(n);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let d=H.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(G,B,s,H.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);d&&(t[x.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:R.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await b.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),t}},u=await b.handleResponse({req:e,nextConfig:y,cacheKey:O,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:T,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:i});if(!P)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==R.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(l=u.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",S?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),j&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return i&&P||m.delete(x.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,f.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(G,B,new Response(u.value.body,{headers:m,status:u.value.status||200})),null};F?await l(F):await M.withPropagatedContext(e.headers,()=>M.trace(u.BaseServerSpan.handleRequest,{spanName:`${D} ${g}`,kind:s.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof m.NoFallbackError||await b.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),P)throw t;return await (0,p.sendResponse)(G,B,new Response(null,{status:500})),null}}e.s(["handler",()=>T,"patchFetch",()=>S,"routeModule",()=>b,"serverHooks",()=>_,"workAsyncStorage",()=>j,"workUnitAsyncStorage",()=>C],631406)}];
1
+ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function n(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function s(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>n,"transactionFn",()=>s])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),a=e.i(814747);let n="3.35.0",s=["json1"],o=["fts5"],i=["nfs","smb","cifs","efs","fuse.sshfs"];function l(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function d(d,u){let c=[],p=d.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(p.v,n)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${n}`,found:p.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),s))l(d,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of o)l(d,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let h=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let n=a.default.resolve(t),{execSync:s}=e.r(233405);if("darwin"===r.default.platform()){let e=s(`df -T "${n}" 2>/dev/null || df "${n}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(u);h&&i.some(e=>h.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${u}' is on a network filesystem (${h})`,path:u,found:h,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(d,"journal_mode = wal"),(0,t.pragmaSet)(d,"foreign_keys = 1"),(0,t.pragmaSet)(d,"busy_timeout = 5000"),(0,t.pragmaSet)(d,"synchronous = 1"),(0,t.pragmaSet)(d,"cache_size = -64000");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(d,"journal_mode = DELETE");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(d,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>d])},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},631406,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),s=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),d=e.i(487718),u=e.i(995169),c=e.i(47587),p=e.i(666012),h=e.i(570101),f=e.i(626937),x=e.i(10372),m=e.i(193695);e.i(52474);var R=e.i(600220),g=e.i(89171),v=e.i(762294);async function E(e,t){try{let{id:e}=await t.params,r=await (0,v.getProjectThreads)(e);return g.NextResponse.json({threads:r})}catch(e){return console.error("Error fetching project threads:",e),g.NextResponse.json({error:"Failed to fetch project threads"},{status:500})}}async function w(e,t){try{let{id:r}=await t.params,a=await e.json().catch(()=>({})),n="string"==typeof a.threadId?a.threadId.trim():"";if(!n)return g.NextResponse.json({error:"threadId is required"},{status:400});let s=await (0,v.addProjectThread)(r,n);return g.NextResponse.json({thread:s},{status:201})}catch(e){return console.error("Error adding thread to project:",e),g.NextResponse.json({error:"Failed to add thread to project"},{status:500})}}async function y(e,t){try{let{id:r}=await t.params,a=new URL(e.url).searchParams.get("threadId");if(!a)return g.NextResponse.json({error:"threadId query param is required"},{status:400});return await (0,v.removeProjectThread)(r,a),g.NextResponse.json({ok:!0})}catch(e){return console.error("Error removing thread from project:",e),g.NextResponse.json({error:"Failed to remove thread from project"},{status:500})}}e.s(["DELETE",()=>y,"GET",()=>E,"POST",()=>w,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],829);var A=e.i(829);let b=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/projects/[id]/threads/route",pathname:"/api/projects/[id]/threads",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/projects/[id]/threads/route.ts",nextConfigOutput:"standalone",userland:A}),{workAsyncStorage:j,workUnitAsyncStorage:C,serverHooks:_}=b;function S(){return(0,a.patchFetch)({workAsyncStorage:j,workUnitAsyncStorage:C})}async function T(e,t,a){b.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/projects/[id]/threads/route";g=g.replace(/\/index$/,"")||"/";let v=await b.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,params:w,nextConfig:y,parsedUrl:A,isDraftMode:j,prerenderManifest:C,routerServerContext:_,isOnDemandRevalidate:S,revalidateOnlyGenerated:T,resolvedPathname:q,clientReferenceManifest:L,serverActionsManifest:N}=v,k=(0,i.normalizeAppPath)(g),P=!!(C.dynamicRoutes[k]||C.routes[q]),I=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,A,!1):t.end("This page could not be found"),null);if(P&&!j){let e=!!C.routes[q],t=C.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await I();throw new m.NoFallbackError}}let O=null;!P||b.isDev||j||(O="/index"===(O=q)?"/":O);let U=!0===b.isDev||!P,$=P&&!U;N&&L&&(0,o.setManifestsSingleton)({page:g,clientReferenceManifest:L,serverActionsManifest:N});let D=e.method||"GET",M=(0,s.getTracer)(),F=M.getActiveScopeSpan(),H={params:w,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>b.onRequestError(e,t,a,n,_)},sharedContext:{buildId:E}},G=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),K=d.NextRequestAdapter.fromNodeNextRequest(G,(0,d.signalFromNodeResponse)(t));try{let o=async e=>b.handle(K,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${D} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${g}`)}),i=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var s,l;let d=async({previousCacheEntry:r})=>{try{if(!i&&S&&T&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(n);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let d=H.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(G,B,s,H.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(s.headers);d&&(t[x.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:R.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await b.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),t}},u=await b.handleResponse({req:e,nextConfig:y,cacheKey:O,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:T,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:i});if(!P)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==R.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(l=u.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",S?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),j&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,h.fromNodeOutgoingHttpHeaders)(u.value.headers);return i&&P||m.delete(x.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,f.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(G,B,new Response(u.value.body,{headers:m,status:u.value.status||200})),null};F?await l(F):await M.withPropagatedContext(e.headers,()=>M.trace(u.BaseServerSpan.handleRequest,{spanName:`${D} ${g}`,kind:s.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof m.NoFallbackError||await b.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),P)throw t;return await (0,p.sendResponse)(G,B,new Response(null,{status:500})),null}}e.s(["handler",()=>T,"patchFetch",()=>S,"routeModule",()=>b,"serverHooks",()=>_,"workAsyncStorage",()=>j,"workUnitAsyncStorage",()=>C],631406)}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__2d15af44._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__3fd3c5b1._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},942969,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let s=Object.values(r);return s.length>0?s[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function s(e,t){e.exec(`PRAGMA ${t}`)}function i(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function a(e,t){return(...r)=>{e.exec("BEGIN");try{let s=t(...r);return e.exec("COMMIT"),s}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>s,"transaction",()=>i,"transactionFn",()=>a])},828237,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(942969);e.i(522734);var r=e.i(446786),s=e.i(814747);let i="3.35.0",a=["json1"],n=["fts5"],o=["nfs","smb","cifs","efs","fuse.sshfs"];function l(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function u(u,c){let f=[],p=u.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),s=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(s[e]||0);if(0!==t)return t}return 0}(p.v,i)&&f.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${i}`,found:p.v,required:`>= ${i}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),a))l(u,e)||f.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of n)l(u,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let d=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let i=s.default.resolve(t),{execSync:a}=e.r(233405);if("darwin"===r.default.platform()){let e=a(`df -T "${i}" 2>/dev/null || df "${i}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(c);d&&o.some(e=>d.toLowerCase().includes(e))&&f.push({kind:"filesystem_error",message:`Database path '${c}' is on a network filesystem (${d})`,path:c,found:d,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(u,"journal_mode = wal"),(0,t.pragmaSet)(u,"foreign_keys = 1"),(0,t.pragmaSet)(u,"busy_timeout = 5000"),(0,t.pragmaSet)(u,"synchronous = 1"),(0,t.pragmaSet)(u,"cache_size = -64000");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(u,"journal_mode = DELETE");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(u,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):f.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){f.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return f}e.s(["validateSQLiteEnvironment",()=>u])}];
1
+ module.exports=[522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},942969,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let s=Object.values(r);return s.length>0?s[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function s(e,t){e.exec(`PRAGMA ${t}`)}function i(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function a(e,t){return(...r)=>{e.exec("BEGIN");try{let s=t(...r);return e.exec("COMMIT"),s}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>s,"transaction",()=>i,"transactionFn",()=>a])},828237,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(942969);e.i(522734);var r=e.i(446786),s=e.i(814747);let i="3.35.0",a=["json1"],n=["fts5"],o=["nfs","smb","cifs","efs","fuse.sshfs"];function l(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function u(u,c){let f=[],p=u.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),s=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(s[e]||0);if(0!==t)return t}return 0}(p.v,i)&&f.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${i}`,found:p.v,required:`>= ${i}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),a))l(u,e)||f.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of n)l(u,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let d=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let i=s.default.resolve(t),{execSync:a}=e.r(233405);if("darwin"===r.default.platform()){let e=a(`df -T "${i}" 2>/dev/null || df "${i}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(c);d&&o.some(e=>d.toLowerCase().includes(e))&&f.push({kind:"filesystem_error",message:`Database path '${c}' is on a network filesystem (${d})`,path:c,found:d,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(u,"journal_mode = wal"),(0,t.pragmaSet)(u,"foreign_keys = 1"),(0,t.pragmaSet)(u,"busy_timeout = 5000"),(0,t.pragmaSet)(u,"synchronous = 1"),(0,t.pragmaSet)(u,"cache_size = -64000");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(u,"journal_mode = DELETE");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(u,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):f.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){f.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return f}e.s(["validateSQLiteEnvironment",()=>u])}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__13fe776f._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__42e713f5._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function n(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function s(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>n,"transactionFn",()=>s])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),a=e.i(814747);let n="3.35.0",s=["json1"],o=["fts5"],i=["nfs","smb","cifs","efs","fuse.sshfs"];function l(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function u(u,d){let c=[],p=u.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(p.v,n)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${n}`,found:p.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),s))l(u,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of o)l(u,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let f=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let n=a.default.resolve(t),{execSync:s}=e.r(233405);if("darwin"===r.default.platform()){let e=s(`df -T "${n}" 2>/dev/null || df "${n}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(d);f&&i.some(e=>f.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${f})`,path:d,found:f,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(u,"journal_mode = wal"),(0,t.pragmaSet)(u,"foreign_keys = 1"),(0,t.pragmaSet)(u,"busy_timeout = 5000"),(0,t.pragmaSet)(u,"synchronous = 1"),(0,t.pragmaSet)(u,"cache_size = -64000");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(u,"journal_mode = DELETE");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(u,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>u])},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},278700,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),s=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),f=e.i(570101),h=e.i(626937),x=e.i(10372),g=e.i(193695);e.i(52474);var m=e.i(600220),R=e.i(89171),v=e.i(762294);async function E(e,t){try{let{id:e}=await t.params,r=await (0,v.getProjectAgents)(e);return R.NextResponse.json({agents:r})}catch(e){return console.error("Error fetching project agents:",e),R.NextResponse.json({error:"Failed to fetch project agents"},{status:500})}}async function w(e,t){try{let{id:r}=await t.params,a=await e.json().catch(()=>({})),n="string"==typeof a.agentId?a.agentId.trim():"";if(!n)return R.NextResponse.json({error:"agentId is required"},{status:400});await (0,v.addProjectAgent)(r,n,a.routingOrder);let s=await (0,v.getProjectAgents)(r);return R.NextResponse.json({agents:s},{status:201})}catch(e){return console.error("Error adding agent to project:",e),R.NextResponse.json({error:"Failed to add agent to project"},{status:500})}}async function y(e,t){try{let{id:r}=await t.params,a=new URL(e.url).searchParams.get("agentId");if(!a)return R.NextResponse.json({error:"agentId query param is required"},{status:400});await (0,v.removeProjectAgent)(r,a);let n=await (0,v.getProjectAgents)(r);return R.NextResponse.json({agents:n})}catch(e){return console.error("Error removing agent from project:",e),R.NextResponse.json({error:"Failed to remove agent from project"},{status:500})}}async function A(e,t){try{let{id:r}=await t.params,a=(await e.json().catch(()=>({}))).orderedAgentIds;if(!Array.isArray(a)||a.some(e=>"string"!=typeof e))return R.NextResponse.json({error:"orderedAgentIds must be a string array"},{status:400});let n=await (0,v.reorderProjectAgents)(r,a);return R.NextResponse.json({agents:n})}catch(e){return console.error("Error reordering project agents:",e),R.NextResponse.json({error:"Failed to reorder agents"},{status:500})}}e.s(["DELETE",()=>y,"GET",()=>E,"PATCH",()=>A,"POST",()=>w,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],480903);var j=e.i(480903);let b=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/projects/[id]/agents/route",pathname:"/api/projects/[id]/agents",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/projects/[id]/agents/route.ts",nextConfigOutput:"standalone",userland:j}),{workAsyncStorage:C,workUnitAsyncStorage:_,serverHooks:S}=b;function q(){return(0,a.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:_})}async function N(e,t,a){b.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/projects/[id]/agents/route";R=R.replace(/\/index$/,"")||"/";let v=await b.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,params:w,nextConfig:y,parsedUrl:A,isDraftMode:j,prerenderManifest:C,routerServerContext:_,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,resolvedPathname:N,clientReferenceManifest:T,serverActionsManifest:L}=v,P=(0,i.normalizeAppPath)(R),I=!!(C.dynamicRoutes[P]||C.routes[N]),O=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,A,!1):t.end("This page could not be found"),null);if(I&&!j){let e=!!C.routes[N],t=C.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await O();throw new g.NoFallbackError}}let k=null;!I||b.isDev||j||(k="/index"===(k=N)?"/":k);let U=!0===b.isDev||!I,$=I&&!U;L&&T&&(0,o.setManifestsSingleton)({page:R,clientReferenceManifest:T,serverActionsManifest:L});let D=e.method||"GET",M=(0,s.getTracer)(),F=M.getActiveScopeSpan(),H={params:w,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>b.onRequestError(e,t,a,n,_)},sharedContext:{buildId:E}},G=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),K=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let o=async e=>b.handle(K,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${D} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${R}`)}),i=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var s,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&S&&q&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(n);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let u=H.renderOpts.collectedTags;if(!I)return await (0,p.sendResponse)(G,B,s,H.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[x.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await b.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),t}},d=await b.handleResponse({req:e,nextConfig:y,cacheKey:k,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:i});if(!I)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",S?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),j&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&I||g.delete(x.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(G,B,new Response(d.value.body,{headers:g,status:d.value.status||200})),null};F?await l(F):await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${D} ${R}`,kind:s.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await b.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),I)throw t;return await (0,p.sendResponse)(G,B,new Response(null,{status:500})),null}}e.s(["handler",()=>N,"patchFetch",()=>q,"routeModule",()=>b,"serverHooks",()=>S,"workAsyncStorage",()=>C,"workUnitAsyncStorage",()=>_],278700)}];
1
+ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function n(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function s(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>n,"transactionFn",()=>s])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),a=e.i(814747);let n="3.35.0",s=["json1"],o=["fts5"],i=["nfs","smb","cifs","efs","fuse.sshfs"];function l(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function u(u,d){let c=[],p=u.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(p.v,n)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${n}`,found:p.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),s))l(u,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of o)l(u,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let f=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let n=a.default.resolve(t),{execSync:s}=e.r(233405);if("darwin"===r.default.platform()){let e=s(`df -T "${n}" 2>/dev/null || df "${n}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(d);f&&i.some(e=>f.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${f})`,path:d,found:f,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(u,"journal_mode = wal"),(0,t.pragmaSet)(u,"foreign_keys = 1"),(0,t.pragmaSet)(u,"busy_timeout = 5000"),(0,t.pragmaSet)(u,"synchronous = 1"),(0,t.pragmaSet)(u,"cache_size = -64000");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(u,"journal_mode = DELETE");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(u,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>u])},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},278700,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),n=e.i(759756),s=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),f=e.i(570101),h=e.i(626937),x=e.i(10372),g=e.i(193695);e.i(52474);var m=e.i(600220),R=e.i(89171),v=e.i(762294);async function E(e,t){try{let{id:e}=await t.params,r=await (0,v.getProjectAgents)(e);return R.NextResponse.json({agents:r})}catch(e){return console.error("Error fetching project agents:",e),R.NextResponse.json({error:"Failed to fetch project agents"},{status:500})}}async function w(e,t){try{let{id:r}=await t.params,a=await e.json().catch(()=>({})),n="string"==typeof a.agentId?a.agentId.trim():"";if(!n)return R.NextResponse.json({error:"agentId is required"},{status:400});await (0,v.addProjectAgent)(r,n,a.routingOrder);let s=await (0,v.getProjectAgents)(r);return R.NextResponse.json({agents:s},{status:201})}catch(e){return console.error("Error adding agent to project:",e),R.NextResponse.json({error:"Failed to add agent to project"},{status:500})}}async function y(e,t){try{let{id:r}=await t.params,a=new URL(e.url).searchParams.get("agentId");if(!a)return R.NextResponse.json({error:"agentId query param is required"},{status:400});await (0,v.removeProjectAgent)(r,a);let n=await (0,v.getProjectAgents)(r);return R.NextResponse.json({agents:n})}catch(e){return console.error("Error removing agent from project:",e),R.NextResponse.json({error:"Failed to remove agent from project"},{status:500})}}async function A(e,t){try{let{id:r}=await t.params,a=(await e.json().catch(()=>({}))).orderedAgentIds;if(!Array.isArray(a)||a.some(e=>"string"!=typeof e))return R.NextResponse.json({error:"orderedAgentIds must be a string array"},{status:400});let n=await (0,v.reorderProjectAgents)(r,a);return R.NextResponse.json({agents:n})}catch(e){return console.error("Error reordering project agents:",e),R.NextResponse.json({error:"Failed to reorder agents"},{status:500})}}e.s(["DELETE",()=>y,"GET",()=>E,"PATCH",()=>A,"POST",()=>w,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],480903);var j=e.i(480903);let b=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/projects/[id]/agents/route",pathname:"/api/projects/[id]/agents",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/projects/[id]/agents/route.ts",nextConfigOutput:"standalone",userland:j}),{workAsyncStorage:C,workUnitAsyncStorage:_,serverHooks:S}=b;function q(){return(0,a.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:_})}async function N(e,t,a){b.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/projects/[id]/agents/route";R=R.replace(/\/index$/,"")||"/";let v=await b.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,params:w,nextConfig:y,parsedUrl:A,isDraftMode:j,prerenderManifest:C,routerServerContext:_,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,resolvedPathname:N,clientReferenceManifest:T,serverActionsManifest:L}=v,P=(0,i.normalizeAppPath)(R),I=!!(C.dynamicRoutes[P]||C.routes[N]),O=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,A,!1):t.end("This page could not be found"),null);if(I&&!j){let e=!!C.routes[N],t=C.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await O();throw new g.NoFallbackError}}let k=null;!I||b.isDev||j||(k="/index"===(k=N)?"/":k);let U=!0===b.isDev||!I,$=I&&!U;L&&T&&(0,o.setManifestsSingleton)({page:R,clientReferenceManifest:T,serverActionsManifest:L});let D=e.method||"GET",M=(0,s.getTracer)(),F=M.getActiveScopeSpan(),H={params:w,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>b.onRequestError(e,t,a,n,_)},sharedContext:{buildId:E}},G=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),K=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let o=async e=>b.handle(K,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${D} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${R}`)}),i=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var s,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&S&&q&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(n);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let u=H.renderOpts.collectedTags;if(!I)return await (0,p.sendResponse)(G,B,s,H.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(s.headers);u&&(t[x.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await b.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),t}},d=await b.handleResponse({req:e,nextConfig:y,cacheKey:k,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:i});if(!I)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",S?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),j&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&I||g.delete(x.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(G,B,new Response(d.value.body,{headers:g,status:d.value.status||200})),null};F?await l(F):await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${D} ${R}`,kind:s.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await b.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),I)throw t;return await (0,p.sendResponse)(G,B,new Response(null,{status:500})),null}}e.s(["handler",()=>N,"patchFetch",()=>q,"routeModule",()=>b,"serverHooks",()=>S,"workAsyncStorage",()=>C,"workUnitAsyncStorage",()=>_],278700)}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__1be9b30e._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__4b0b5fe1._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[233405,(e,t,s)=>{t.exports=e.x("child_process",()=>require("child_process"))},219778,e=>{"use strict";function t(e){let t=e?.trim();return t?t.replace(/\/+$/,""):null}let s="http://localhost:41741";function r(){return t("http://localhost:3000")??t(process.env.AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_AGX_BOARD_URL)??s}function a(){return t(process.env.AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_AGX_BOARD_URL)??t("http://localhost:3000")??s}function n(){return process.env.PORT?.trim()||String(41741)}function o(){let e=new Set([s,"http://127.0.0.1:41741"]);for(let s of["http://localhost:3000",process.env.AGX_BOARD_URL,process.env.NEXT_PUBLIC_AGX_BOARD_URL]){let r=t(s);r&&e.add(r)}return Array.from(e)}e.s(["LOCAL_APP_PORT",0,41741,"LOCAL_APP_URL",0,s,"getAllowedOrigins",()=>o,"getConfiguredAppBaseUrl",()=>r,"getConfiguredBoardBaseUrl",()=>a,"getConfiguredLocalServerPort",()=>n])},558898,e=>{"use strict";var t=e.i(233405);function s(e,t){let s="string"==typeof e.args?.rootMessageId?e.args.rootMessageId.trim():"";return s||(t.schedule?.rootMessageId?.trim()??"")}async function r(t){try{let{getSQLiteDb:s}=await e.A(548207),r=s(),a=r.prepare("SELECT project_id FROM project_threads WHERE thread_id = ? ORDER BY created_at ASC LIMIT 1").get(t);if(!a?.project_id)return null;let n=r.prepare("SELECT agent_id FROM project_agents WHERE project_id = ? ORDER BY routing_order ASC, created_at ASC LIMIT 1").get(a.project_id);return n?.agent_id??null}catch{return null}}async function a(t,r){let a=s(t,r);if(!a)return{status:"failure",message:"thread-status requires rootMessageId"};let{getMessageThread:n,getThreadStatusSnapshot:o,sweepStaleWorkingReactions:i}=await e.A(205617),u=await n(a);if(!u)return{status:"failure",message:`Thread not found for rootMessageId: ${a}`};await i(u.threadId);let d=await o({threadId:u.threadId,rootMessageId:a});return{status:"success",output:{activeProcessCount:d.processes.filter(e=>"working"===e.status).length,messageCount:d.messages?.length??0,threadId:u.threadId,lastUpdatedAt:d.lastUpdatedAt}}}async function n(t,a){let n=s(t,a);if(!n)return{status:"failure",message:"ship-mode-act requires rootMessageId"};let o=function(e,t){let s="string"==typeof e.args?.steerNodeId&&e.args.steerNodeId.trim()?e.args.steerNodeId.trim():"steer",r=t.nodes[s];if(!r||"work"!==r.type)return null;let a=r.output;return a&&"object"==typeof a?{isDone:!!a.isDone,message:"string"==typeof a.message?a.message:""}:null}(t,a);if(!o)return{status:"failure",message:"Unable to read steer node output"};let{getMessageThread:i,saveMessages:u,updateMessageStatus:d}=await e.A(205617),{deactivateSchedulesByRootMessageId:c}=await e.A(502224),l=await i(n);if(!l)return{status:"failure",message:`Thread not found for rootMessageId: ${n}`};if(o.isDone)return c(n),await d(l.threadId,n,"in-review",null),{status:"success",output:{done:!0,action:"stopped_and_in_review"}};let f=await r(l.threadId),p=crypto.randomUUID();return await u(l.threadId,[{id:p,role:"assistant",participantId:f,content:o.message,timestamp:Date.now(),rootMessageId:n,parentMessageId:n,depth:1}]),{status:"success",output:{done:!1,action:"sent_next_steps",sender:f,messageId:p}}}async function o(e,t){if("internal"!==e.kind)return{status:"failure",message:`Unsupported function node kind: ${e.kind}`};switch(e.command){case"thread-status":return a(e,t);case"ship-mode-act":return n(e,t);default:return{status:"failure",message:`Unsupported internal function command: ${e.command}`}}}async function i(e,s){if("bash"!==e.kind)return{status:"failure",message:`Unsupported function node kind: ${e.kind}`};let r=e.command;if(!r||""===r.trim())return{status:"failure",message:"Empty command"};let a=e.timeoutMs??3e4;return new Promise(e=>{let s="",n="",o=0,i=!1,u=!1,d=(0,t.spawn)(r,[],{shell:!0,timeout:a,killSignal:"SIGTERM"}),c=setTimeout(()=>{u=!0,d.kill("SIGTERM")},a);d.stdout.on("data",e=>{if(i)return;let t=Buffer.byteLength(e.toString(),"utf8");if(o+t>65536){i=!0;return}s+=e.toString(),o+=t}),d.stderr.on("data",e=>{n+=e.toString()}),d.on("error",t=>{clearTimeout(c),e({status:"failure",message:`Failed to spawn command: ${t.message}`,error:t})}),d.on("close",t=>{if(clearTimeout(c),u)return void e({status:"failure",message:`Command timed out after ${a}ms`});if(i)return void e({status:"failure",message:"Stdout exceeded 65536 bytes limit"});if(0!==t)return void e({status:"failure",message:`Command exited with code ${t}: ${n||"(no stderr)"}`});let r=s.trim();if(""===r)return void e({status:"success",output:{}});try{let t=JSON.parse(r);e({status:"success",output:t})}catch{e({status:"success",output:{raw:r}})}})})}function u(){return async(e,t)=>{switch(e.kind){case"bash":return i(e,t);case"internal":return o(e,t);default:return{status:"failure",message:`Unsupported function node kind: ${e.kind}`}}}}e.i(219778),e.s(["createDispatchFunction",()=>u,"dispatchBashFunction",()=>i],558898)},548207,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__255b11f2._.js","server/chunks/lib_sqlite-query-adapter_ts_3ea4d849._.js"].map(t=>e.l(t))).then(()=>t(965196)))},205617,e=>{e.v(t=>Promise.all(["server/chunks/[root-of-the-server]__c8195768._.js","server/chunks/lib_history-store_ts_74d1c060._.js"].map(t=>e.l(t))).then(()=>t(455248)))}];
2
+
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__558389f7._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let i=Object.values(r);return i.length>0?i[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function i(e,t){e.exec(`PRAGMA ${t}`)}function n(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function l(e,t){return(...r)=>{e.exec("BEGIN");try{let i=t(...r);return e.exec("COMMIT"),i}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>i,"transaction",()=>n,"transactionFn",()=>l])},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),i=e.i(814747);let n="3.35.0",l=["json1"],s=["fts5"],a=["nfs","smb","cifs","efs","fuse.sshfs"];function o(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function d(d,c){let u=[],p=d.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),i=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(i[e]||0);if(0!==t)return t}return 0}(p.v,n)&&u.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${n}`,found:p.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),l))o(d,e)||u.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of s)o(d,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let f=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let n=i.default.resolve(t),{execSync:l}=e.r(233405);if("darwin"===r.default.platform()){let e=l(`df -T "${n}" 2>/dev/null || df "${n}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(c);f&&a.some(e=>f.toLowerCase().includes(e))&&u.push({kind:"filesystem_error",message:`Database path '${c}' is on a network filesystem (${f})`,path:c,found:f,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(d,"journal_mode = wal"),(0,t.pragmaSet)(d,"foreign_keys = 1"),(0,t.pragmaSet)(d,"busy_timeout = 5000"),(0,t.pragmaSet)(d,"synchronous = 1"),(0,t.pragmaSet)(d,"cache_size = -64000");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(d,"journal_mode = DELETE");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(d,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):u.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){u.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return u}e.s(["validateSQLiteEnvironment",()=>d])},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},874533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},737175,e=>{"use strict";var t=e.i(902157),r=e.i(750227),i=e.i(874533),n=e.i(960447);let l=null,s=new Map;function a(e){return e.replace(/\s+/g," ").trim()}function o(e){return e.replace(/<br\s*\/?>/gi,"\n").replace(/<\/(p|h1|h2|h3|h4|h5|h6|li|tr|div)>/gi,"\n").replace(/<li[^>]*>/gi,"• ").replace(/<[^>]*>/g,"").replace(/&#x([0-9a-f]+);/gi,(e,t)=>{let r=Number.parseInt(t,16);return Number.isFinite(r)?String.fromCodePoint(r):e}).replace(/&#([0-9]+);/g,(e,t)=>{let r=Number.parseInt(t,10);return Number.isFinite(r)?String.fromCodePoint(r):e}).replace(/&quot;/g,'"').replace(/&apos;/g,"'").replace(/&#39;/g,"'").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&").replace(/&nbsp;/g," ").replace(/\r/g,"").replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n").trim()}function d(e){return"claude"===e||"codex"===e||"gemini"===e||"zai"===e?e:null}function c(e){return"claude"===e?"claude-code":"codex"===e?"codex":"gemini"===e?"gemini-cli":"zai"===e?"claude-code":null}function u(e){return r.default.join(process.cwd(),".agents","skills",e,"SKILL.md")}function p(){let e=r.default.join(process.cwd(),".agents","skills");return t.default.existsSync(e)?t.default.readdirSync(e,{withFileTypes:!0}).filter(i=>i.isDirectory()&&t.default.existsSync(r.default.join(e,i.name,"SKILL.md"))).map(e=>e.name).sort((e,t)=>e.localeCompare(t)):[]}async function f(){if(l&&Date.now()-l.loadedAt<36e5)return l.data;try{let e=await fetch("https://skills.sh");if(!e.ok)return[];let t=await e.text(),r=t.indexOf("initialSkills");if(-1===r)return[];let i=t.indexOf(":[",r);if(-1===i)return[];let n=i+1,s=0,a=n;for(let e=n;e<t.length;e+=1)if("["===t[e]&&(s+=1),"]"===t[e]&&(s-=1),0===s){a=e+1;break}let o=t.slice(n,a).replace(/\\"/g,'"'),d=JSON.parse(o).map((e,t)=>({rank:t+1,name:e.name??e.skillId??"",skillId:e.skillId??e.name??"",repo:e.source??"",installs:"number"==typeof e.installs?e.installs:0}));return l={loadedAt:Date.now(),data:d},d}catch{return[]}}async function m(e,t){let r=`${e}/${t}`,i=s.get(r);if(i&&Date.now()-i.loadedAt<36e5)return i.data;try{let i=await fetch(`https://skills.sh/${e}/${t}`);if(!i.ok)return null;let n=await i.text(),l=function(e){let t=e.match(/<div class="prose[^>]*>([\s\S]*?)<\/div>\s*<\/div>\s*<\/div>\s*<\/div>\s*<div class=" lg:col-span-3">/i);if(t?.[1])return t[1];let r=e.indexOf('<div class="prose');if(-1===r)return"";let i=e.indexOf(">",r);if(-1===i)return"";let n=e.indexOf('<div class=" lg:col-span-3">',i);return -1===n?"":e.slice(i+1,n).replace(/\s*<\/div>\s*$/i,"").trim()}(n),d=l.match(/<h1[^>]*>([\s\S]*?)<\/h1>/i),c=d?a(o(d[1])):"",u=(d?l.slice((d.index??0)+d[0].length):l).match(/<p[^>]*>([\s\S]*?)<\/p>/i),p=u?a(o(u[1])):"",f=[],m=l.match(/<h2[^>]*>\s*When to Use This Skill\s*<\/h2>([\s\S]*?)(?:<h2[^>]*>|$)/i);if(m){let e=m[1].match(/<ul[^>]*>([\s\S]*?)<\/ul>/i);if(e){let t=/<li[^>]*>([\s\S]*?)<\/li>/gi,r=null;for(;null!==(r=t.exec(e[1]));){let e=a(o(r[1]));e&&f.push(e)}}}let g=n.match(/Weekly\s+Installs[\s\S]{0,240}?>([\d,.]+[KkMm]?)<\/div>/i)?.[1]??"",h=n.match(/First\s+[Ss]een[\s\S]{0,240}?>([A-Za-z]{3}\s+\d{1,2},\s+\d{4})<\/div>/i)?.[1]??"",v=n.match(/\\"command\\":\\"((?:[^"\\]|\\.)*)\\"/),_=v?v[1].replace(/\\"/g,'"').replace(/\\\\/g,"\\").trim():`npx skills add ${e} --skill ${t}`,k={title:c,description:p,whenToUse:f,weeklyInstalls:g,firstSeen:h,installCommand:_};return s.set(r,{loadedAt:Date.now(),data:k}),k}catch{return null}}function g(e){(0,n.getSQLiteDb)().prepare(`INSERT INTO skill_learning_history
1
+ module.exports=[666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let i=Object.values(r);return i.length>0?i[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function i(e,t){e.exec(`PRAGMA ${t}`)}function n(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function l(e,t){return(...r)=>{e.exec("BEGIN");try{let i=t(...r);return e.exec("COMMIT"),i}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>i,"transaction",()=>n,"transactionFn",()=>l])},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),i=e.i(814747);let n="3.35.0",l=["json1"],s=["fts5"],a=["nfs","smb","cifs","efs","fuse.sshfs"];function o(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function d(d,c){let u=[],p=d.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),i=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(i[e]||0);if(0!==t)return t}return 0}(p.v,n)&&u.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${n}`,found:p.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),l))o(d,e)||u.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of s)o(d,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let f=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let n=i.default.resolve(t),{execSync:l}=e.r(233405);if("darwin"===r.default.platform()){let e=l(`df -T "${n}" 2>/dev/null || df "${n}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(c);f&&a.some(e=>f.toLowerCase().includes(e))&&u.push({kind:"filesystem_error",message:`Database path '${c}' is on a network filesystem (${f})`,path:c,found:f,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(d,"journal_mode = wal"),(0,t.pragmaSet)(d,"foreign_keys = 1"),(0,t.pragmaSet)(d,"busy_timeout = 5000"),(0,t.pragmaSet)(d,"synchronous = 1"),(0,t.pragmaSet)(d,"cache_size = -64000");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(d,"journal_mode = DELETE");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(d,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):u.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){u.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return u}e.s(["validateSQLiteEnvironment",()=>d])},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},874533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},737175,e=>{"use strict";var t=e.i(902157),r=e.i(750227),i=e.i(874533),n=e.i(960447);let l=null,s=new Map;function a(e){return e.replace(/\s+/g," ").trim()}function o(e){return e.replace(/<br\s*\/?>/gi,"\n").replace(/<\/(p|h1|h2|h3|h4|h5|h6|li|tr|div)>/gi,"\n").replace(/<li[^>]*>/gi,"• ").replace(/<[^>]*>/g,"").replace(/&#x([0-9a-f]+);/gi,(e,t)=>{let r=Number.parseInt(t,16);return Number.isFinite(r)?String.fromCodePoint(r):e}).replace(/&#([0-9]+);/g,(e,t)=>{let r=Number.parseInt(t,10);return Number.isFinite(r)?String.fromCodePoint(r):e}).replace(/&quot;/g,'"').replace(/&apos;/g,"'").replace(/&#39;/g,"'").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&").replace(/&nbsp;/g," ").replace(/\r/g,"").replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n").trim()}function d(e){return"claude"===e||"codex"===e||"gemini"===e||"zai"===e?e:null}function c(e){return"claude"===e?"claude-code":"codex"===e?"codex":"gemini"===e?"gemini-cli":"zai"===e?"claude-code":null}function u(e){return r.default.join(process.cwd(),".agents","skills",e,"SKILL.md")}function p(){let e=r.default.join(process.cwd(),".agents","skills");return t.default.existsSync(e)?t.default.readdirSync(e,{withFileTypes:!0}).filter(i=>i.isDirectory()&&t.default.existsSync(r.default.join(e,i.name,"SKILL.md"))).map(e=>e.name).sort((e,t)=>e.localeCompare(t)):[]}async function f(){if(l&&Date.now()-l.loadedAt<36e5)return l.data;try{let e=await fetch("https://skills.sh");if(!e.ok)return[];let t=await e.text(),r=t.indexOf("initialSkills");if(-1===r)return[];let i=t.indexOf(":[",r);if(-1===i)return[];let n=i+1,s=0,a=n;for(let e=n;e<t.length;e+=1)if("["===t[e]&&(s+=1),"]"===t[e]&&(s-=1),0===s){a=e+1;break}let o=t.slice(n,a).replace(/\\"/g,'"'),d=JSON.parse(o).map((e,t)=>({rank:t+1,name:e.name??e.skillId??"",skillId:e.skillId??e.name??"",repo:e.source??"",installs:"number"==typeof e.installs?e.installs:0}));return l={loadedAt:Date.now(),data:d},d}catch{return[]}}async function m(e,t){let r=`${e}/${t}`,i=s.get(r);if(i&&Date.now()-i.loadedAt<36e5)return i.data;try{let i=await fetch(`https://skills.sh/${e}/${t}`);if(!i.ok)return null;let n=await i.text(),l=function(e){let t=e.match(/<div class="prose[^>]*>([\s\S]*?)<\/div>\s*<\/div>\s*<\/div>\s*<\/div>\s*<div class=" lg:col-span-3">/i);if(t?.[1])return t[1];let r=e.indexOf('<div class="prose');if(-1===r)return"";let i=e.indexOf(">",r);if(-1===i)return"";let n=e.indexOf('<div class=" lg:col-span-3">',i);return -1===n?"":e.slice(i+1,n).replace(/\s*<\/div>\s*$/i,"").trim()}(n),d=l.match(/<h1[^>]*>([\s\S]*?)<\/h1>/i),c=d?a(o(d[1])):"",u=(d?l.slice((d.index??0)+d[0].length):l).match(/<p[^>]*>([\s\S]*?)<\/p>/i),p=u?a(o(u[1])):"",f=[],m=l.match(/<h2[^>]*>\s*When to Use This Skill\s*<\/h2>([\s\S]*?)(?:<h2[^>]*>|$)/i);if(m){let e=m[1].match(/<ul[^>]*>([\s\S]*?)<\/ul>/i);if(e){let t=/<li[^>]*>([\s\S]*?)<\/li>/gi,r=null;for(;null!==(r=t.exec(e[1]));){let e=a(o(r[1]));e&&f.push(e)}}}let g=n.match(/Weekly\s+Installs[\s\S]{0,240}?>([\d,.]+[KkMm]?)<\/div>/i)?.[1]??"",h=n.match(/First\s+[Ss]een[\s\S]{0,240}?>([A-Za-z]{3}\s+\d{1,2},\s+\d{4})<\/div>/i)?.[1]??"",v=n.match(/\\"command\\":\\"((?:[^"\\]|\\.)*)\\"/),_=v?v[1].replace(/\\"/g,'"').replace(/\\\\/g,"\\").trim():`npx skills add ${e} --skill ${t}`,k={title:c,description:p,whenToUse:f,weeklyInstalls:g,firstSeen:h,installCommand:_};return s.set(r,{loadedAt:Date.now(),data:k}),k}catch{return null}}function g(e){(0,n.getSQLiteDb)().prepare(`INSERT INTO skill_learning_history
2
2
  (provider, repo, skill_id, skill_label, status, command, error, run_started_at, run_completed_at, created_at, updated_at)
3
3
  VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(e.provider,e.repo,e.skill_id,e.skill_label,e.status,e.command,e.error,e.run_started_at,e.run_completed_at,e.created_at,e.updated_at)}function h(e=50,t){let r=(0,n.getSQLiteDb)(),i=[],l="",s=t?d(t):null;return s&&(l="WHERE provider = ?",i.push(s)),i.push(e),r.prepare(`SELECT id, provider, repo, skill_id, skill_label, status, command, error, run_started_at, run_completed_at, created_at, updated_at
4
4
  FROM skill_learning_history
@@ -12,4 +12,4 @@ module.exports=[666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:c
12
12
  VALUES (?, ?, ?, ?)
13
13
  ON CONFLICT(agent_id, repo, skill_id) DO UPDATE SET condition = excluded.condition`).run(e,t.repo,t.skillId,t.condition);return n(e)}function s(e){return e.toLowerCase().replace(/[^a-z0-9]+/g," ").replace(/\s+/g," ").trim()}function a(e){let t=new Set,r=[];for(let i of s(e).split(" "))i.length<4||t.has(i)||(t.add(i),r.push(i));return r}function o(e,r,n){let l=[];for(let o of e){if(!function(e,t){let r=s(t);if(!r)return!1;if((e.condition?e.condition.split(/\n|,|;|\|/g).map(e=>s(e)).filter(e=>e.length>=4):[]).some(e=>r.includes(e)))return!0;let i=e.repo.split("/").filter(Boolean).pop()??e.repo;return[...a(e.skillId),...a(i)].some(e=>r.includes(e))}(o,r))continue;let e=(0,i.installedSkillPath)(o.skillId);(t.default.existsSync(e)||(0,i.installSkill)({repo:o.repo,skillId:o.skillId,providers:[n]}).ok)&&l.push({file:e,...o.condition?{condition:o.condition}:{}})}return l}e.s(["getAgentSkillBindings",()=>n,"resolveBoundSkillFiles",()=>o,"setAgentSkillBindings",()=>l])},384776,e=>{"use strict";var t=e.i(762294),r=e.i(149953),i=e.i(949041);async function n(){let e=await (0,t.getAgents)(i.LOCAL_USER.id),n=new Map,l=new Map;return await Promise.all(e.map(async e=>{n.set(e.id,await (0,t.getAgentSkills)(e.id)),l.set(e.id,await (0,r.getAgentSkillBindings)(e.id))})),e.map(e=>({id:e.id,name:e.name,...e.title?{title:e.title}:{},provider:e.provider||"claude",model:e.model||null,color:e.color||"#6B7280",...e.description?{identity:e.description}:{},...e.voice?{voice:e.voice}:{},...e.seed?{seed:e.seed}:{},...n.get(e.id)?.length?{skills:n.get(e.id).map(e=>({file:e.file,condition:e.condition??""}))}:{},...l.get(e.id)?.length?{skillBindings:l.get(e.id)}:{}}))}function l(e,t){if(!Array.isArray(t))return e;let r=new Set,i=[];for(let e of t){if("string"!=typeof e)continue;let t=e.trim();!t||r.has(t)||(r.add(t),i.push(t))}let n=new Set(i),l=e.filter(e=>n.has(e.id));if(i.length>0&&0===l.length)return e;let s=new Map(i.map((e,t)=>[e,t]));return l.sort((e,t)=>(s.get(e.id)??Number.MAX_SAFE_INTEGER)-(s.get(t.id)??Number.MAX_SAFE_INTEGER))}e.s(["filterActiveParticipants",()=>l,"loadDbParticipants",()=>n])},723965,e=>{"use strict";var t=e.i(747909),r=e.i(174017),i=e.i(996250),n=e.i(759756),l=e.i(561916),s=e.i(174677),a=e.i(869741),o=e.i(316795),d=e.i(487718),c=e.i(995169),u=e.i(47587),p=e.i(666012),f=e.i(570101),m=e.i(626937),g=e.i(10372),h=e.i(193695);e.i(52474);var v=e.i(600220),_=e.i(762294),k=e.i(149953),S=e.i(960447),E=e.i(949041),y=e.i(384776),x=e.i(41334);async function R(){return Response.json(await (0,y.loadDbParticipants)())}function w(e){return"string"==typeof e&&e.trim()?e.trim():void 0}function A(e,t){let r,i=w(e.name),n=w(e.provider),l=w(e.model),s=w(e.id)??t;if(!s||!i||!n||!l)return null;let a=w(e.title),o=w(e.identity),d=w(e.identityFile),c=function(e){if(!Array.isArray(e))return;let t=e.map(e=>"string"==typeof e?{file:e.trim(),condition:""}:e&&"object"==typeof e&&"file"in e?{file:String(e.file??"").trim(),condition:String(e.condition??"").trim()}:null).filter(e=>null!==e&&e.file.length>0);return t.length>0?t:void 0}(e.skills),u=function(e){if(!Array.isArray(e))return;let t=e.map(e=>{if(!e||"object"!=typeof e||Array.isArray(e))return null;let t=String(e.repo??"").trim(),r=String(e.skillId??e.skill_id??"").trim();if(!t||!r)return null;let i=String(e.condition??"").trim();return{repo:t,skillId:r,...i?{condition:i}:{}}}).filter(e=>!!e);return t.length>0?t:void 0}(e.skillBindings),p=w(e.color)??"#6B7280";if(e.variables&&"object"==typeof e.variables&&!Array.isArray(e.variables)){let t=e.variables,i={};for(let[e,r]of Object.entries(t))"string"==typeof r&&(i[e]=r);Object.keys(i).length>0&&(r=i)}return{id:s,name:i,provider:n,model:l,color:p,...a?{title:a}:{},...o?{identity:o}:{},...w(e.voice)?{voice:w(e.voice)}:{},...w(e.seed)?{seed:w(e.seed)}:{},...d?{identityFile:d}:{},...c?{skills:c}:{},...u?{skillBindings:u}:{},...r?{variables:r}:{}}}async function b(e){let t,r=await e.json().catch(()=>({})),i=w(r.name),n=A(r,i?i.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").replace(/--+/g,"-"):void 0);if(!n)return Response.json({error:"name, provider, and model required"},{status:400});try{t=await (0,_.createAgent)(E.LOCAL_USER.id,{id:n.id,name:n.name,title:n.title,style:"balanced",description:n.identity,model:n.model??void 0,provider:n.provider,color:n.color,voice:w(r.voice),seed:w(r.seed)}),await (0,_.setAgentSkills)(t.id,n.skills??[]),await (0,k.setAgentSkillBindings)(t.id,n.skillBindings??[]),(0,x.ensureAgent)(t.id,{voice:w(r.voice),seed:w(r.seed)})}catch(e){return console.error("Failed to create agent in DB:",e),Response.json({error:"Failed to create agent"},{status:500})}let l={id:t.id,name:t.name,...t.title||n.title?{title:t.title||n.title}:{},provider:t.provider||n.provider||"claude",model:t.model||n.model||null,color:t.color||n.color||"#6B7280",...t.description||n.identity?{identity:t.description||n.identity}:{},...t.voice||n.voice?{voice:t.voice||n.voice}:{},...t.seed||n.seed?{seed:t.seed||n.seed}:{},...n.skills?.length?{skills:n.skills}:{},...n.skillBindings?.length?{skillBindings:n.skillBindings}:{}},s=w(r.projectId)??w(r.teamId);if(s)try{(0,S.getSQLiteDb)().prepare("INSERT OR IGNORE INTO project_agents (project_id, agent_id, routing_order) VALUES (?, ?, (SELECT COALESCE(MAX(routing_order), -1) + 1 FROM project_agents WHERE project_id = ?))").run(s,l.id,s)}catch(e){console.error("Failed to assign agent to project:",e)}return Response.json(l,{status:201})}async function C(e){let t,r=await e.json().catch(()=>({})),i=A(r);if(!i)return Response.json({error:"id, name, provider, and model required"},{status:400});try{t=await (0,_.updateAgent)(i.id,E.LOCAL_USER.id,{name:i.name,title:i.title,description:i.identity,model:i.model??void 0,provider:i.provider,color:i.color,voice:w(r.voice),seed:w(r.seed)}),await (0,_.setAgentSkills)(i.id,i.skills??[]),await (0,k.setAgentSkillBindings)(i.id,i.skillBindings??[]),(0,x.ensureAgent)(i.id,{voice:w(r.voice),seed:w(r.seed)})}catch(e){return console.error("Failed to update agent in DB:",e),Response.json({error:"Failed to update agent"},{status:500})}if(!t)return Response.json({error:"Agent not found"},{status:404});let n={id:t.id,name:t.name,...t.title||i.title?{title:t.title||i.title}:{},provider:t.provider||i.provider||"claude",model:t.model||i.model||null,color:t.color||i.color||"#6B7280",...t.description||i.identity?{identity:t.description||i.identity}:{},...t.voice||i.voice?{voice:t.voice||i.voice}:{},...t.seed||i.seed?{seed:t.seed||i.seed}:{},...i.skills?.length?{skills:i.skills}:{},...i.skillBindings?.length?{skillBindings:i.skillBindings}:{}};return Response.json(n)}async function L(e){let t=await e.json().catch(()=>({}));if(!Array.isArray(t.orderedIds)||t.orderedIds.some(e=>"string"!=typeof e))return Response.json({error:"orderedIds must be a string array"},{status:400});let r=await (0,y.loadDbParticipants)(),i=new Map(t.orderedIds.map((e,t)=>[e,t]));return r.sort((e,t)=>(i.get(e.id)??999)-(i.get(t.id)??999)),Response.json(r)}async function I(e){let{searchParams:t}=new URL(e.url),r=t.get("id");if(!r)return Response.json({error:"id required"},{status:400});try{await (0,_.deleteAgent)(r,E.LOCAL_USER.id)}catch(e){console.error("Failed to delete agent from DB:",e)}return Response.json({ok:!0})}e.s(["DELETE",()=>I,"GET",()=>R,"PATCH",()=>C,"POST",()=>b,"PUT",()=>L,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],490158);var O=e.i(490158);let T=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/participants/route",pathname:"/api/participants",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/participants/route.ts",nextConfigOutput:"standalone",userland:O}),{workAsyncStorage:D,workUnitAsyncStorage:j,serverHooks:N}=T;function B(){return(0,i.patchFetch)({workAsyncStorage:D,workUnitAsyncStorage:j})}async function q(e,t,i){T.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let _="/api/participants/route";_=_.replace(/\/index$/,"")||"/";let k=await T.prepare(e,t,{srcPage:_,multiZoneDraftMode:!1});if(!k)return t.statusCode=400,t.end("Bad Request"),null==i.waitUntil||i.waitUntil.call(i,Promise.resolve()),null;let{buildId:S,params:E,nextConfig:y,parsedUrl:x,isDraftMode:R,prerenderManifest:w,routerServerContext:A,isOnDemandRevalidate:b,revalidateOnlyGenerated:C,resolvedPathname:L,clientReferenceManifest:I,serverActionsManifest:O}=k,D=(0,a.normalizeAppPath)(_),j=!!(w.dynamicRoutes[D]||w.routes[L]),N=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,x,!1):t.end("This page could not be found"),null);if(j&&!R){let e=!!w.routes[L],t=w.dynamicRoutes[D];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await N();throw new h.NoFallbackError}}let B=null;!j||T.isDev||R||(B="/index"===(B=L)?"/":B);let q=!0===T.isDev||!j,M=j&&!q;O&&I&&(0,s.setManifestsSingleton)({page:_,clientReferenceManifest:I,serverActionsManifest:O});let P=e.method||"GET",$=(0,l.getTracer)(),F=$.getActiveScopeSpan(),U={params:E,prerenderManifest:w,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:q,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:i.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,i,n)=>T.onRequestError(e,t,i,n,A)},sharedContext:{buildId:S}},H=new o.NodeNextRequest(e),G=new o.NodeNextResponse(t),K=d.NextRequestAdapter.fromNodeNextRequest(H,(0,d.signalFromNodeResponse)(t));try{let s=async e=>T.handle(K,U).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=$.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==c.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let i=r.get("next.route");if(i){let t=`${P} ${i}`;e.setAttributes({"next.route":i,"http.route":i,"next.span_name":t}),e.updateName(t)}else e.updateName(`${P} ${_}`)}),a=!!(0,n.getRequestMeta)(e,"minimalMode"),o=async n=>{var l,o;let d=async({previousCacheEntry:r})=>{try{if(!a&&b&&C&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let l=await s(n);e.fetchMetrics=U.renderOpts.fetchMetrics;let o=U.renderOpts.pendingWaitUntil;o&&i.waitUntil&&(i.waitUntil(o),o=void 0);let d=U.renderOpts.collectedTags;if(!j)return await (0,p.sendResponse)(H,G,l,U.renderOpts.pendingWaitUntil),null;{let e=await l.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(l.headers);d&&(t[g.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==U.renderOpts.collectedRevalidate&&!(U.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&U.renderOpts.collectedRevalidate,i=void 0===U.renderOpts.collectedExpire||U.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:U.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:l.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:i}}}}catch(t){throw(null==r?void 0:r.isStale)&&await T.onRequestError(e,t,{routerKind:"App Router",routePath:_,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:b})},!1,A),t}},c=await T.handleResponse({req:e,nextConfig:y,cacheKey:B,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:w,isRoutePPREnabled:!1,isOnDemandRevalidate:b,revalidateOnlyGenerated:C,responseGenerator:d,waitUntil:i.waitUntil,isMinimalMode:a});if(!j)return null;if((null==c||null==(l=c.value)?void 0:l.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(o=c.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});a||t.setHeader("x-nextjs-cache",b?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),R&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,f.fromNodeOutgoingHttpHeaders)(c.value.headers);return a&&j||h.delete(g.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,m.getCacheControlHeader)(c.cacheControl)),await (0,p.sendResponse)(H,G,new Response(c.value.body,{headers:h,status:c.value.status||200})),null};F?await o(F):await $.withPropagatedContext(e.headers,()=>$.trace(c.BaseServerSpan.handleRequest,{spanName:`${P} ${_}`,kind:l.SpanKind.SERVER,attributes:{"http.method":P,"http.target":e.url}},o))}catch(t){if(t instanceof h.NoFallbackError||await T.onRequestError(e,t,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:b})},!1,A),j)throw t;return await (0,p.sendResponse)(H,G,new Response(null,{status:500})),null}}e.s(["handler",()=>q,"patchFetch",()=>B,"routeModule",()=>T,"serverHooks",()=>N,"workAsyncStorage",()=>D,"workUnitAsyncStorage",()=>j],723965)}];
14
14
 
15
- //# sourceMappingURL=%5Broot-of-the-server%5D__5a042505._.js.map
15
+ //# sourceMappingURL=%5Broot-of-the-server%5D__5aaf8c25._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function s(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function n(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>s,"transactionFn",()=>n])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),a=e.i(814747);let s="3.35.0",n=["json1"],o=["fts5"],i=["nfs","smb","cifs","efs","fuse.sshfs"];function l(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function u(u,d){let c=[],p=u.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(p.v,s)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${s}`,found:p.v,required:`>= ${s}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),n))l(u,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of o)l(u,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let f=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let s=a.default.resolve(t),{execSync:n}=e.r(233405);if("darwin"===r.default.platform()){let e=n(`df -T "${s}" 2>/dev/null || df "${s}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(d);f&&i.some(e=>f.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${f})`,path:d,found:f,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(u,"journal_mode = wal"),(0,t.pragmaSet)(u,"foreign_keys = 1"),(0,t.pragmaSet)(u,"busy_timeout = 5000"),(0,t.pragmaSet)(u,"synchronous = 1"),(0,t.pragmaSet)(u,"cache_size = -64000");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(u,"journal_mode = DELETE");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(u,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>u])},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},453616,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),s=e.i(759756),n=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),f=e.i(570101),h=e.i(626937),x=e.i(10372),m=e.i(193695);e.i(52474);var v=e.i(600220),g=e.i(89171),R=e.i(762294);async function E(e,t){try{let{id:e}=await t.params,r=await (0,R.getProjectVariables)(e);return g.NextResponse.json({variables:r})}catch(e){return console.error("Error fetching project variables:",e),g.NextResponse.json({error:"Failed to fetch project variables"},{status:500})}}async function y(e,t){try{let{id:r}=await t.params,a=await e.json().catch(()=>({})),s="string"==typeof a.key?a.key.trim():"",n="string"==typeof a.value?a.value:"";if(!s)return g.NextResponse.json({error:"key is required"},{status:400});let o=await (0,R.setProjectVariable)(r,s,n);return g.NextResponse.json({variable:o},{status:201})}catch(e){return console.error("Error setting project variable:",e),g.NextResponse.json({error:"Failed to set project variable"},{status:500})}}async function w(e,t){try{let{id:r}=await t.params,a=new URL(e.url).searchParams.get("key");if(!a)return g.NextResponse.json({error:"key query param is required"},{status:400});return await (0,R.deleteProjectVariable)(r,a),g.NextResponse.json({ok:!0})}catch(e){return console.error("Error deleting project variable:",e),g.NextResponse.json({error:"Failed to delete project variable"},{status:500})}}e.s(["DELETE",()=>w,"GET",()=>E,"POST",()=>y,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],356131);var b=e.i(356131);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/projects/[id]/variables/route",pathname:"/api/projects/[id]/variables",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/projects/[id]/variables/route.ts",nextConfigOutput:"standalone",userland:b}),{workAsyncStorage:j,workUnitAsyncStorage:C,serverHooks:_}=A;function S(){return(0,a.patchFetch)({workAsyncStorage:j,workUnitAsyncStorage:C})}async function q(e,t,a){A.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/projects/[id]/variables/route";g=g.replace(/\/index$/,"")||"/";let R=await A.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,params:y,nextConfig:w,parsedUrl:b,isDraftMode:j,prerenderManifest:C,routerServerContext:_,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,resolvedPathname:T,clientReferenceManifest:L,serverActionsManifest:N}=R,k=(0,i.normalizeAppPath)(g),P=!!(C.dynamicRoutes[k]||C.routes[T]),O=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,b,!1):t.end("This page could not be found"),null);if(P&&!j){let e=!!C.routes[T],t=C.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(w.experimental.adapterPath)return await O();throw new m.NoFallbackError}}let I=null;!P||A.isDev||j||(I="/index"===(I=T)?"/":I);let U=!0===A.isDev||!P,$=P&&!U;N&&L&&(0,o.setManifestsSingleton)({page:g,clientReferenceManifest:L,serverActionsManifest:N});let D=e.method||"GET",M=(0,n.getTracer)(),F=M.getActiveScopeSpan(),H={params:y,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:w.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>A.onRequestError(e,t,a,s,_)},sharedContext:{buildId:E}},G=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),K=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let o=async e=>A.handle(K,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${D} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${g}`)}),i=!!(0,s.getRequestMeta)(e,"minimalMode"),l=async s=>{var n,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&S&&q&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await o(s);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let u=H.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(G,B,n,H.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(n.headers);u&&(t[x.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),t}},d=await A.handleResponse({req:e,nextConfig:w,cacheKey:I,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:i});if(!P)return null;if((null==d||null==(n=d.value)?void 0:n.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",S?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),j&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&P||m.delete(x.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(G,B,new Response(d.value.body,{headers:m,status:d.value.status||200})),null};F?await l(F):await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${D} ${g}`,kind:n.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof m.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),P)throw t;return await (0,p.sendResponse)(G,B,new Response(null,{status:500})),null}}e.s(["handler",()=>q,"patchFetch",()=>S,"routeModule",()=>A,"serverHooks",()=>_,"workAsyncStorage",()=>j,"workUnitAsyncStorage",()=>C],453616)}];
1
+ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function s(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function n(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>s,"transactionFn",()=>n])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),a=e.i(814747);let s="3.35.0",n=["json1"],o=["fts5"],i=["nfs","smb","cifs","efs","fuse.sshfs"];function l(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function u(u,d){let c=[],p=u.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(p.v,s)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${s}`,found:p.v,required:`>= ${s}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),n))l(u,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of o)l(u,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let f=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let s=a.default.resolve(t),{execSync:n}=e.r(233405);if("darwin"===r.default.platform()){let e=n(`df -T "${s}" 2>/dev/null || df "${s}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(d);f&&i.some(e=>f.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${f})`,path:d,found:f,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(u,"journal_mode = wal"),(0,t.pragmaSet)(u,"foreign_keys = 1"),(0,t.pragmaSet)(u,"busy_timeout = 5000"),(0,t.pragmaSet)(u,"synchronous = 1"),(0,t.pragmaSet)(u,"cache_size = -64000");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(u,"journal_mode = DELETE");let e=(0,t.pragmaGet)(u,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(u,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>u])},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},453616,e=>{"use strict";var t=e.i(747909),r=e.i(174017),a=e.i(996250),s=e.i(759756),n=e.i(561916),o=e.i(174677),i=e.i(869741),l=e.i(316795),u=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),f=e.i(570101),h=e.i(626937),x=e.i(10372),m=e.i(193695);e.i(52474);var v=e.i(600220),g=e.i(89171),R=e.i(762294);async function E(e,t){try{let{id:e}=await t.params,r=await (0,R.getProjectVariables)(e);return g.NextResponse.json({variables:r})}catch(e){return console.error("Error fetching project variables:",e),g.NextResponse.json({error:"Failed to fetch project variables"},{status:500})}}async function y(e,t){try{let{id:r}=await t.params,a=await e.json().catch(()=>({})),s="string"==typeof a.key?a.key.trim():"",n="string"==typeof a.value?a.value:"";if(!s)return g.NextResponse.json({error:"key is required"},{status:400});let o=await (0,R.setProjectVariable)(r,s,n);return g.NextResponse.json({variable:o},{status:201})}catch(e){return console.error("Error setting project variable:",e),g.NextResponse.json({error:"Failed to set project variable"},{status:500})}}async function w(e,t){try{let{id:r}=await t.params,a=new URL(e.url).searchParams.get("key");if(!a)return g.NextResponse.json({error:"key query param is required"},{status:400});return await (0,R.deleteProjectVariable)(r,a),g.NextResponse.json({ok:!0})}catch(e){return console.error("Error deleting project variable:",e),g.NextResponse.json({error:"Failed to delete project variable"},{status:500})}}e.s(["DELETE",()=>w,"GET",()=>E,"POST",()=>y,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],356131);var b=e.i(356131);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/projects/[id]/variables/route",pathname:"/api/projects/[id]/variables",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/projects/[id]/variables/route.ts",nextConfigOutput:"standalone",userland:b}),{workAsyncStorage:j,workUnitAsyncStorage:C,serverHooks:_}=A;function S(){return(0,a.patchFetch)({workAsyncStorage:j,workUnitAsyncStorage:C})}async function q(e,t,a){A.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/projects/[id]/variables/route";g=g.replace(/\/index$/,"")||"/";let R=await A.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,params:y,nextConfig:w,parsedUrl:b,isDraftMode:j,prerenderManifest:C,routerServerContext:_,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,resolvedPathname:T,clientReferenceManifest:L,serverActionsManifest:N}=R,k=(0,i.normalizeAppPath)(g),P=!!(C.dynamicRoutes[k]||C.routes[T]),O=async()=>((null==_?void 0:_.render404)?await _.render404(e,t,b,!1):t.end("This page could not be found"),null);if(P&&!j){let e=!!C.routes[T],t=C.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(w.experimental.adapterPath)return await O();throw new m.NoFallbackError}}let I=null;!P||A.isDev||j||(I="/index"===(I=T)?"/":I);let U=!0===A.isDev||!P,$=P&&!U;N&&L&&(0,o.setManifestsSingleton)({page:g,clientReferenceManifest:L,serverActionsManifest:N});let D=e.method||"GET",M=(0,n.getTracer)(),F=M.getActiveScopeSpan(),H={params:y,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!w.experimental.authInterrupts},cacheComponents:!!w.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:w.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>A.onRequestError(e,t,a,s,_)},sharedContext:{buildId:E}},G=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),K=u.NextRequestAdapter.fromNodeNextRequest(G,(0,u.signalFromNodeResponse)(t));try{let o=async e=>A.handle(K,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=M.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=r.get("next.route");if(a){let t=`${D} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${g}`)}),i=!!(0,s.getRequestMeta)(e,"minimalMode"),l=async s=>{var n,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&S&&q&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await o(s);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let u=H.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(G,B,n,H.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(n.headers);u&&(t[x.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=x.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=x.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),t}},d=await A.handleResponse({req:e,nextConfig:w,cacheKey:I,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:S,revalidateOnlyGenerated:q,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:i});if(!P)return null;if((null==d||null==(n=d.value)?void 0:n.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",S?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),j&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&P||m.delete(x.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(G,B,new Response(d.value.body,{headers:m,status:d.value.status||200})),null};F?await l(F):await M.withPropagatedContext(e.headers,()=>M.trace(d.BaseServerSpan.handleRequest,{spanName:`${D} ${g}`,kind:n.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof m.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:$,isOnDemandRevalidate:S})},!1,_),P)throw t;return await (0,p.sendResponse)(G,B,new Response(null,{status:500})),null}}e.s(["handler",()=>q,"patchFetch",()=>S,"routeModule",()=>A,"serverHooks",()=>_,"workAsyncStorage",()=>j,"workUnitAsyncStorage",()=>C],453616)}];
2
2
 
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__22b7bf38._.js.map
3
+ //# sourceMappingURL=%5Broot-of-the-server%5D__5b13e7a5._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let n=Object.values(r);return n.length>0?n[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function n(e,t){e.exec(`PRAGMA ${t}`)}function i(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function a(e,t){return(...r)=>{e.exec("BEGIN");try{let n=t(...r);return e.exec("COMMIT"),n}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>n,"transaction",()=>i,"transactionFn",()=>a])},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),n=e.i(814747);let i="3.35.0",a=["json1"],l=["fts5"],s=["nfs","smb","cifs","efs","fuse.sshfs"];function o(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function d(d,u){let c=[],p=d.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),n=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(n[e]||0);if(0!==t)return t}return 0}(p.v,i)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${i}`,found:p.v,required:`>= ${i}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),a))o(d,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of l)o(d,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let f=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let i=n.default.resolve(t),{execSync:a}=e.r(233405);if("darwin"===r.default.platform()){let e=a(`df -T "${i}" 2>/dev/null || df "${i}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(u);f&&s.some(e=>f.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${u}' is on a network filesystem (${f})`,path:u,found:f,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(d,"journal_mode = wal"),(0,t.pragmaSet)(d,"foreign_keys = 1"),(0,t.pragmaSet)(d,"busy_timeout = 5000"),(0,t.pragmaSet)(d,"synchronous = 1"),(0,t.pragmaSet)(d,"cache_size = -64000");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(d,"journal_mode = DELETE");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(d,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>d])},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},874533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},737175,e=>{"use strict";var t=e.i(902157),r=e.i(750227),n=e.i(874533),i=e.i(960447);let a=null,l=new Map;function s(e){return e.replace(/\s+/g," ").trim()}function o(e){return e.replace(/<br\s*\/?>/gi,"\n").replace(/<\/(p|h1|h2|h3|h4|h5|h6|li|tr|div)>/gi,"\n").replace(/<li[^>]*>/gi,"• ").replace(/<[^>]*>/g,"").replace(/&#x([0-9a-f]+);/gi,(e,t)=>{let r=Number.parseInt(t,16);return Number.isFinite(r)?String.fromCodePoint(r):e}).replace(/&#([0-9]+);/g,(e,t)=>{let r=Number.parseInt(t,10);return Number.isFinite(r)?String.fromCodePoint(r):e}).replace(/&quot;/g,'"').replace(/&apos;/g,"'").replace(/&#39;/g,"'").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&").replace(/&nbsp;/g," ").replace(/\r/g,"").replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n").trim()}function d(e){return"claude"===e||"codex"===e||"gemini"===e||"zai"===e?e:null}function u(e){return"claude"===e?"claude-code":"codex"===e?"codex":"gemini"===e?"gemini-cli":"zai"===e?"claude-code":null}function c(e){return r.default.join(process.cwd(),".agents","skills",e,"SKILL.md")}function p(){let e=r.default.join(process.cwd(),".agents","skills");return t.default.existsSync(e)?t.default.readdirSync(e,{withFileTypes:!0}).filter(n=>n.isDirectory()&&t.default.existsSync(r.default.join(e,n.name,"SKILL.md"))).map(e=>e.name).sort((e,t)=>e.localeCompare(t)):[]}async function f(){if(a&&Date.now()-a.loadedAt<36e5)return a.data;try{let e=await fetch("https://skills.sh");if(!e.ok)return[];let t=await e.text(),r=t.indexOf("initialSkills");if(-1===r)return[];let n=t.indexOf(":[",r);if(-1===n)return[];let i=n+1,l=0,s=i;for(let e=i;e<t.length;e+=1)if("["===t[e]&&(l+=1),"]"===t[e]&&(l-=1),0===l){s=e+1;break}let o=t.slice(i,s).replace(/\\"/g,'"'),d=JSON.parse(o).map((e,t)=>({rank:t+1,name:e.name??e.skillId??"",skillId:e.skillId??e.name??"",repo:e.source??"",installs:"number"==typeof e.installs?e.installs:0}));return a={loadedAt:Date.now(),data:d},d}catch{return[]}}async function m(e,t){let r=`${e}/${t}`,n=l.get(r);if(n&&Date.now()-n.loadedAt<36e5)return n.data;try{let n=await fetch(`https://skills.sh/${e}/${t}`);if(!n.ok)return null;let i=await n.text(),a=function(e){let t=e.match(/<div class="prose[^>]*>([\s\S]*?)<\/div>\s*<\/div>\s*<\/div>\s*<\/div>\s*<div class=" lg:col-span-3">/i);if(t?.[1])return t[1];let r=e.indexOf('<div class="prose');if(-1===r)return"";let n=e.indexOf(">",r);if(-1===n)return"";let i=e.indexOf('<div class=" lg:col-span-3">',n);return -1===i?"":e.slice(n+1,i).replace(/\s*<\/div>\s*$/i,"").trim()}(i),d=a.match(/<h1[^>]*>([\s\S]*?)<\/h1>/i),u=d?s(o(d[1])):"",c=(d?a.slice((d.index??0)+d[0].length):a).match(/<p[^>]*>([\s\S]*?)<\/p>/i),p=c?s(o(c[1])):"",f=[],m=a.match(/<h2[^>]*>\s*When to Use This Skill\s*<\/h2>([\s\S]*?)(?:<h2[^>]*>|$)/i);if(m){let e=m[1].match(/<ul[^>]*>([\s\S]*?)<\/ul>/i);if(e){let t=/<li[^>]*>([\s\S]*?)<\/li>/gi,r=null;for(;null!==(r=t.exec(e[1]));){let e=s(o(r[1]));e&&f.push(e)}}}let h=i.match(/Weekly\s+Installs[\s\S]{0,240}?>([\d,.]+[KkMm]?)<\/div>/i)?.[1]??"",g=i.match(/First\s+[Ss]een[\s\S]{0,240}?>([A-Za-z]{3}\s+\d{1,2},\s+\d{4})<\/div>/i)?.[1]??"",_=i.match(/\\"command\\":\\"((?:[^"\\]|\\.)*)\\"/),x=_?_[1].replace(/\\"/g,'"').replace(/\\\\/g,"\\").trim():`npx skills add ${e} --skill ${t}`,S={title:u,description:p,whenToUse:f,weeklyInstalls:h,firstSeen:g,installCommand:x};return l.set(r,{loadedAt:Date.now(),data:S}),S}catch{return null}}function h(e){(0,i.getSQLiteDb)().prepare(`INSERT INTO skill_learning_history
1
+ module.exports=[666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let n=Object.values(r);return n.length>0?n[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function n(e,t){e.exec(`PRAGMA ${t}`)}function i(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function a(e,t){return(...r)=>{e.exec("BEGIN");try{let n=t(...r);return e.exec("COMMIT"),n}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>n,"transaction",()=>i,"transactionFn",()=>a])},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),n=e.i(814747);let i="3.35.0",a=["json1"],l=["fts5"],s=["nfs","smb","cifs","efs","fuse.sshfs"];function o(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function d(d,u){let c=[],p=d.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),n=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(n[e]||0);if(0!==t)return t}return 0}(p.v,i)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${i}`,found:p.v,required:`>= ${i}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),a))o(d,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of l)o(d,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let f=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let i=n.default.resolve(t),{execSync:a}=e.r(233405);if("darwin"===r.default.platform()){let e=a(`df -T "${i}" 2>/dev/null || df "${i}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(u);f&&s.some(e=>f.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${u}' is on a network filesystem (${f})`,path:u,found:f,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(d,"journal_mode = wal"),(0,t.pragmaSet)(d,"foreign_keys = 1"),(0,t.pragmaSet)(d,"busy_timeout = 5000"),(0,t.pragmaSet)(d,"synchronous = 1"),(0,t.pragmaSet)(d,"cache_size = -64000");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(d,"journal_mode = DELETE");let e=(0,t.pragmaGet)(d,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(d,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>d])},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},457431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(960447);return t()}e.i(949041),e.s(["createAdminDbClient",()=>t])},874533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},737175,e=>{"use strict";var t=e.i(902157),r=e.i(750227),n=e.i(874533),i=e.i(960447);let a=null,l=new Map;function s(e){return e.replace(/\s+/g," ").trim()}function o(e){return e.replace(/<br\s*\/?>/gi,"\n").replace(/<\/(p|h1|h2|h3|h4|h5|h6|li|tr|div)>/gi,"\n").replace(/<li[^>]*>/gi,"• ").replace(/<[^>]*>/g,"").replace(/&#x([0-9a-f]+);/gi,(e,t)=>{let r=Number.parseInt(t,16);return Number.isFinite(r)?String.fromCodePoint(r):e}).replace(/&#([0-9]+);/g,(e,t)=>{let r=Number.parseInt(t,10);return Number.isFinite(r)?String.fromCodePoint(r):e}).replace(/&quot;/g,'"').replace(/&apos;/g,"'").replace(/&#39;/g,"'").replace(/&lt;/g,"<").replace(/&gt;/g,">").replace(/&amp;/g,"&").replace(/&nbsp;/g," ").replace(/\r/g,"").replace(/[ \t]+\n/g,"\n").replace(/\n{3,}/g,"\n\n").trim()}function d(e){return"claude"===e||"codex"===e||"gemini"===e||"zai"===e?e:null}function u(e){return"claude"===e?"claude-code":"codex"===e?"codex":"gemini"===e?"gemini-cli":"zai"===e?"claude-code":null}function c(e){return r.default.join(process.cwd(),".agents","skills",e,"SKILL.md")}function p(){let e=r.default.join(process.cwd(),".agents","skills");return t.default.existsSync(e)?t.default.readdirSync(e,{withFileTypes:!0}).filter(n=>n.isDirectory()&&t.default.existsSync(r.default.join(e,n.name,"SKILL.md"))).map(e=>e.name).sort((e,t)=>e.localeCompare(t)):[]}async function f(){if(a&&Date.now()-a.loadedAt<36e5)return a.data;try{let e=await fetch("https://skills.sh");if(!e.ok)return[];let t=await e.text(),r=t.indexOf("initialSkills");if(-1===r)return[];let n=t.indexOf(":[",r);if(-1===n)return[];let i=n+1,l=0,s=i;for(let e=i;e<t.length;e+=1)if("["===t[e]&&(l+=1),"]"===t[e]&&(l-=1),0===l){s=e+1;break}let o=t.slice(i,s).replace(/\\"/g,'"'),d=JSON.parse(o).map((e,t)=>({rank:t+1,name:e.name??e.skillId??"",skillId:e.skillId??e.name??"",repo:e.source??"",installs:"number"==typeof e.installs?e.installs:0}));return a={loadedAt:Date.now(),data:d},d}catch{return[]}}async function m(e,t){let r=`${e}/${t}`,n=l.get(r);if(n&&Date.now()-n.loadedAt<36e5)return n.data;try{let n=await fetch(`https://skills.sh/${e}/${t}`);if(!n.ok)return null;let i=await n.text(),a=function(e){let t=e.match(/<div class="prose[^>]*>([\s\S]*?)<\/div>\s*<\/div>\s*<\/div>\s*<\/div>\s*<div class=" lg:col-span-3">/i);if(t?.[1])return t[1];let r=e.indexOf('<div class="prose');if(-1===r)return"";let n=e.indexOf(">",r);if(-1===n)return"";let i=e.indexOf('<div class=" lg:col-span-3">',n);return -1===i?"":e.slice(n+1,i).replace(/\s*<\/div>\s*$/i,"").trim()}(i),d=a.match(/<h1[^>]*>([\s\S]*?)<\/h1>/i),u=d?s(o(d[1])):"",c=(d?a.slice((d.index??0)+d[0].length):a).match(/<p[^>]*>([\s\S]*?)<\/p>/i),p=c?s(o(c[1])):"",f=[],m=a.match(/<h2[^>]*>\s*When to Use This Skill\s*<\/h2>([\s\S]*?)(?:<h2[^>]*>|$)/i);if(m){let e=m[1].match(/<ul[^>]*>([\s\S]*?)<\/ul>/i);if(e){let t=/<li[^>]*>([\s\S]*?)<\/li>/gi,r=null;for(;null!==(r=t.exec(e[1]));){let e=s(o(r[1]));e&&f.push(e)}}}let h=i.match(/Weekly\s+Installs[\s\S]{0,240}?>([\d,.]+[KkMm]?)<\/div>/i)?.[1]??"",g=i.match(/First\s+[Ss]een[\s\S]{0,240}?>([A-Za-z]{3}\s+\d{1,2},\s+\d{4})<\/div>/i)?.[1]??"",_=i.match(/\\"command\\":\\"((?:[^"\\]|\\.)*)\\"/),x=_?_[1].replace(/\\"/g,'"').replace(/\\\\/g,"\\").trim():`npx skills add ${e} --skill ${t}`,S={title:u,description:p,whenToUse:f,weeklyInstalls:h,firstSeen:g,installCommand:x};return l.set(r,{loadedAt:Date.now(),data:S}),S}catch{return null}}function h(e){(0,i.getSQLiteDb)().prepare(`INSERT INTO skill_learning_history
2
2
  (provider, repo, skill_id, skill_label, status, command, error, run_started_at, run_completed_at, created_at, updated_at)
3
3
  VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(e.provider,e.repo,e.skill_id,e.skill_label,e.status,e.command,e.error,e.run_started_at,e.run_completed_at,e.created_at,e.updated_at)}function g(e=50,t){let r=(0,i.getSQLiteDb)(),n=[],a="",l=t?d(t):null;return l&&(a="WHERE provider = ?",n.push(l)),n.push(e),r.prepare(`SELECT id, provider, repo, skill_id, skill_label, status, command, error, run_started_at, run_completed_at, created_at, updated_at
4
4
  FROM skill_learning_history
@@ -12,4 +12,4 @@ module.exports=[666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:c
12
12
  VALUES (?, ?, ?, ?)
13
13
  ON CONFLICT(agent_id, repo, skill_id) DO UPDATE SET condition = excluded.condition`).run(e,t.repo,t.skillId,t.condition);return i(e)}function l(e){return e.toLowerCase().replace(/[^a-z0-9]+/g," ").replace(/\s+/g," ").trim()}function s(e){let t=new Set,r=[];for(let n of l(e).split(" "))n.length<4||t.has(n)||(t.add(n),r.push(n));return r}function o(e,r,i){let a=[];for(let o of e){if(!function(e,t){let r=l(t);if(!r)return!1;if((e.condition?e.condition.split(/\n|,|;|\|/g).map(e=>l(e)).filter(e=>e.length>=4):[]).some(e=>r.includes(e)))return!0;let n=e.repo.split("/").filter(Boolean).pop()??e.repo;return[...s(e.skillId),...s(n)].some(e=>r.includes(e))}(o,r))continue;let e=(0,n.installedSkillPath)(o.skillId);(t.default.existsSync(e)||(0,n.installSkill)({repo:o.repo,skillId:o.skillId,providers:[i]}).ok)&&a.push({file:e,...o.condition?{condition:o.condition}:{}})}return a}e.s(["getAgentSkillBindings",()=>i,"resolveBoundSkillFiles",()=>o,"setAgentSkillBindings",()=>a])},158870,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),i=e.i(759756),a=e.i(561916),l=e.i(174677),s=e.i(869741),o=e.i(316795),d=e.i(487718),u=e.i(995169),c=e.i(47587),p=e.i(666012),f=e.i(570101),m=e.i(626937),h=e.i(10372),g=e.i(193695);e.i(52474);var _=e.i(600220),x=e.i(522734),S=e.i(814747),v=e.i(446786),k=e.i(762294),E=e.i(149953),R=e.i(949041);let w=(0,S.join)((0,v.homedir)(),".agx","agents");async function y(e){try{let t=await e.json().catch(()=>({})),r=Array.isArray(t.agentIds)?t.agentIds:[];if(0===r.length)return Response.json({error:"No agents selected"},{status:400});let n=(await (0,k.getAgents)(R.LOCAL_USER.id)).filter(e=>r.includes(e.id)),i=await Promise.all(n.map(async e=>({id:e.id,name:e.name,provider:e.provider||"claude",model:e.model||null,color:e.color||"#6B7280",identity:e.description||null,voice:e.voice||null,seed:e.seed||null,identityFile:null,skills:(await (0,k.getAgentSkills)(e.id)).map(e=>({file:e.file,condition:e.condition??""})),skillBindings:await (0,E.getAgentSkillBindings)(e.id),variables:{},self:function(e){let t=(0,S.join)(w,e,"self.md");if(!(0,x.existsSync)(t))return null;let r=(0,x.readFileSync)(t,"utf-8"),n=r.match(/^---[\s\S]*?---\s*\n?([\s\S]*)$/);return n?n[1].trim():r.trim()}(e.id)})));return Response.json({agents:i})}catch(e){return console.error("Error exporting agents:",e),Response.json({error:"Failed to export"},{status:500})}}e.s(["POST",()=>y,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],299779);var A=e.i(299779);let b=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/agents/export/route",pathname:"/api/agents/export",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/agents/export/route.ts",nextConfigOutput:"standalone",userland:A}),{workAsyncStorage:C,workUnitAsyncStorage:I,serverHooks:L}=b;function O(){return(0,n.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:I})}async function T(e,t,n){b.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let x="/api/agents/export/route";x=x.replace(/\/index$/,"")||"/";let S=await b.prepare(e,t,{srcPage:x,multiZoneDraftMode:!1});if(!S)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:v,params:k,nextConfig:E,parsedUrl:R,isDraftMode:w,prerenderManifest:y,routerServerContext:A,isOnDemandRevalidate:C,revalidateOnlyGenerated:I,resolvedPathname:L,clientReferenceManifest:O,serverActionsManifest:T}=S,D=(0,s.normalizeAppPath)(x),N=!!(y.dynamicRoutes[D]||y.routes[L]),$=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,R,!1):t.end("This page could not be found"),null);if(N&&!w){let e=!!y.routes[L],t=y.dynamicRoutes[D];if(t&&!1===t.fallback&&!e){if(E.experimental.adapterPath)return await $();throw new g.NoFallbackError}}let q=null;!N||b.isDev||w||(q="/index"===(q=L)?"/":q);let j=!0===b.isDev||!N,P=N&&!j;T&&O&&(0,l.setManifestsSingleton)({page:x,clientReferenceManifest:O,serverActionsManifest:T});let M=e.method||"GET",F=(0,a.getTracer)(),U=F.getActiveScopeSpan(),B={params:k,prerenderManifest:y,renderOpts:{experimental:{authInterrupts:!!E.experimental.authInterrupts},cacheComponents:!!E.cacheComponents,supportsDynamicResponse:j,incrementalCache:(0,i.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:E.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,i)=>b.onRequestError(e,t,n,i,A)},sharedContext:{buildId:v}},H=new o.NodeNextRequest(e),G=new o.NodeNextResponse(t),K=d.NextRequestAdapter.fromNodeNextRequest(H,(0,d.signalFromNodeResponse)(t));try{let l=async e=>b.handle(K,B).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${M} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${M} ${x}`)}),s=!!(0,i.getRequestMeta)(e,"minimalMode"),o=async i=>{var a,o;let d=async({previousCacheEntry:r})=>{try{if(!s&&C&&I&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let a=await l(i);e.fetchMetrics=B.renderOpts.fetchMetrics;let o=B.renderOpts.pendingWaitUntil;o&&n.waitUntil&&(n.waitUntil(o),o=void 0);let d=B.renderOpts.collectedTags;if(!N)return await (0,p.sendResponse)(H,G,a,B.renderOpts.pendingWaitUntil),null;{let e=await a.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(a.headers);d&&(t[h.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==B.renderOpts.collectedRevalidate&&!(B.renderOpts.collectedRevalidate>=h.INFINITE_CACHE)&&B.renderOpts.collectedRevalidate,n=void 0===B.renderOpts.collectedExpire||B.renderOpts.collectedExpire>=h.INFINITE_CACHE?void 0:B.renderOpts.collectedExpire;return{value:{kind:_.CachedRouteKind.APP_ROUTE,status:a.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await b.onRequestError(e,t,{routerKind:"App Router",routePath:x,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:P,isOnDemandRevalidate:C})},!1,A),t}},u=await b.handleResponse({req:e,nextConfig:E,cacheKey:q,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:y,isRoutePPREnabled:!1,isOnDemandRevalidate:C,revalidateOnlyGenerated:I,responseGenerator:d,waitUntil:n.waitUntil,isMinimalMode:s});if(!N)return null;if((null==u||null==(a=u.value)?void 0:a.kind)!==_.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(o=u.value)?void 0:o.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});s||t.setHeader("x-nextjs-cache",C?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),w&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,f.fromNodeOutgoingHttpHeaders)(u.value.headers);return s&&N||g.delete(h.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,m.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(H,G,new Response(u.value.body,{headers:g,status:u.value.status||200})),null};U?await o(U):await F.withPropagatedContext(e.headers,()=>F.trace(u.BaseServerSpan.handleRequest,{spanName:`${M} ${x}`,kind:a.SpanKind.SERVER,attributes:{"http.method":M,"http.target":e.url}},o))}catch(t){if(t instanceof g.NoFallbackError||await b.onRequestError(e,t,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:P,isOnDemandRevalidate:C})},!1,A),N)throw t;return await (0,p.sendResponse)(H,G,new Response(null,{status:500})),null}}e.s(["handler",()=>T,"patchFetch",()=>O,"routeModule",()=>b,"serverHooks",()=>L,"workAsyncStorage",()=>C,"workUnitAsyncStorage",()=>I],158870)}];
14
14
 
15
- //# sourceMappingURL=%5Broot-of-the-server%5D__34efe92e._.js.map
15
+ //# sourceMappingURL=%5Broot-of-the-server%5D__635fe0f9._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let o=Object.values(r);return o.length>0?o[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function o(e,t){e.exec(`PRAGMA ${t}`)}function a(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function n(e,t){return(...r)=>{e.exec("BEGIN");try{let o=t(...r);return e.exec("COMMIT"),o}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>o,"transaction",()=>a,"transactionFn",()=>n])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),o=e.i(814747);let a="3.35.0",n=["json1"],i=["fts5"],s=["nfs","smb","cifs","efs","fuse.sshfs"];function c(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function l(l,d){let u=[],p=l.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),o=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(o[e]||0);if(0!==t)return t}return 0}(p.v,a)&&u.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${a}`,found:p.v,required:`>= ${a}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),n))c(l,e)||u.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of i)c(l,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let m=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let a=o.default.resolve(t),{execSync:n}=e.r(233405);if("darwin"===r.default.platform()){let e=n(`df -T "${a}" 2>/dev/null || df "${a}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(d);m&&s.some(e=>m.toLowerCase().includes(e))&&u.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${m})`,path:d,found:m,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(l,"journal_mode = wal"),(0,t.pragmaSet)(l,"foreign_keys = 1"),(0,t.pragmaSet)(l,"busy_timeout = 5000"),(0,t.pragmaSet)(l,"synchronous = 1"),(0,t.pragmaSet)(l,"cache_size = -64000");let e=(0,t.pragmaGet)(l,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(l,"journal_mode = DELETE");let e=(0,t.pragmaGet)(l,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(l,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):u.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){u.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return u}e.s(["validateSQLiteEnvironment",()=>l])},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},579042,e=>{"use strict";e.s(["DEFAULT_EXECUTION_POLICY",0,{replanBudgetRemaining:3,replanBudgetInitial:3,verifyBudgetRemaining:5,verifyBudgetInitial:5,maxConcurrentAutoChecks:1,immutableRequiredGates:!0,maxConcurrent:3,priorityMode:"fifo",nodeTimeoutMs:18e5,graphTimeoutMs:864e5},"FAILURE_NODE_STATUSES",0,["failed"],"INCOMPLETE_FOR_DONE_STATUSES",0,["pending","running","awaiting_human","blocked"],"SOFT_DEP_SATISFIED_STATUSES",0,["done","passed","failed","skipped","blocked"],"SUCCESS_NODE_STATUSES",0,["done","passed"],"TERMINAL_NODE_STATUSES",0,["done","passed","failed","skipped"]])},338479,e=>{"use strict";var t=e.i(254799);e.i(201037);var r=e.i(200866),o=e.i(434542),a=e.i(300248);function n(e){return{id:e.id,name:e.name,prompt:e.prompt,agentId:e.agent_id||"",projectId:e.project_id||"",provider:e.provider||e.cli||"claude",model:e.model||"",cliArgs:e.cli_args||"",cronExpr:e.cron_expr,cadence:e.cadence,state:e.state,overlapPolicy:e.overlap_policy,catchUpPolicy:e.catch_up_policy||"fire_once",cancelCheckSec:e.cancel_check_sec,triggerType:e.trigger_type||"scheduled",condition:e.condition||"",checkEveryMs:e.check_every_ms||3e5,nextRunAt:e.next_run_at,lastRunAt:e.last_run_at,lastOutcome:e.last_outcome,createdAt:e.created_at,updatedAt:e.updated_at}}function i(e){return{id:e.id,jobId:e.job_id,status:e.status,output:e.output,error:e.error,durationMs:e.duration_ms,startedAt:e.started_at,finishedAt:e.finished_at,cancelledAt:e.cancelled_at,createdAt:e.created_at}}function s(e){return Object.values(e).some(e=>void 0!==e)}class c{db;automationRepository;constructor(e,t){this.db=e,this.automationRepository=t}getAutomationRepo(){return this.automationRepository??=(0,o.getAutomationRepository)(),this.automationRepository}createJob(e){if(!(0,o.isAutomationFrontmatterEnabled)())return this.createLegacyJob(e);let a=(0,t.randomUUID)(),n=new Date().toISOString(),i=this.getAutomationRepo().createAutomation({id:a,name:e.name,...e.projectId?{projectId:e.projectId}:{},state:"active",trigger:(e.triggerType??"scheduled")==="condition"?{type:"condition",condition:e.condition??"",checkEveryMs:e.checkEveryMs??3e5}:{type:"scheduled",...e.cadence?{cadence:e.cadence}:{},...e.cronExpr?{cronExpr:e.cronExpr}:{}},execution:{overlapPolicy:e.overlapPolicy,catchUpPolicy:e.catchUpPolicy,cancelCheckSec:e.cancelCheckSec},target:{type:"prompt_job",...e.agentId?{agentId:e.agentId}:{},...e.provider?{provider:e.provider}:{},...e.model?{model:e.model}:{},...void 0!==e.cliArgs?{cliArgs:e.cliArgs}:{}},createdAt:n,body:e.prompt}),s=(0,r.automationRecordToPromptJob)(i);return this.upsertLegacyJobRow(s),s}getJob(e){if(!(0,o.isAutomationFrontmatterEnabled)())return this.getLegacyJob(e);let t=this.getAutomationRepo().getAutomation(e);if(t?.definition.target.type==="prompt_job"){let e=(0,r.automationRecordToPromptJob)(t);return this.ensureLegacyJobRow(e),e}return(0,o.isAutomationDualReadEnabled)()?this.getLegacyJob(e):null}listJobs(e){if(!(0,o.isAutomationFrontmatterEnabled)())return this.listLegacyJobs(e);let t=new Map;for(let o of this.getAutomationRepo().listVisibleAutomations({targetType:"prompt_job",...e?.state?{state:e.state}:{},...e?.projectId?{projectId:e.projectId}:{}})){let e=(0,r.automationRecordToPromptJob)(o);t.set(e.id,e),this.ensureLegacyJobRow(e)}if((0,o.isAutomationDualReadEnabled)())for(let r of this.listLegacyJobs(e))t.has(r.id)||t.set(r.id,r);return[...t.values()].sort((e,t)=>{let r=Date.parse(e.createdAt);return Date.parse(t.createdAt)-r})}updateJob(e,t){if(!(0,o.isAutomationFrontmatterEnabled)())return this.updateLegacyJob(e,t);let a=this.getPromptJobRecord(e,!0);if(!a)return null;let n=this.buildDefinitionPatch(a,t);if(s(n)){let t=this.getAutomationRepo().updateAutomation(e,n);if(!t)return null;a=t}let i=this.buildStatePatch(t);if(s(i)){let t=this.getAutomationRepo().updateAutomationState(e,i);if(!t)return null;a=t}let c=(0,r.automationRecordToPromptJob)(a);return this.upsertLegacyJobRow(c),c}deleteJob(e){(0,o.isAutomationFrontmatterEnabled)()&&this.getAutomationRepo().deleteAutomation(e),this.db.prepare("DELETE FROM prompt_jobs WHERE id = ?").run(e)}getDueJobs(e=Date.now()){if(!(0,o.isAutomationFrontmatterEnabled)())return this.getLegacyDueJobs(e);let t=new Map;for(let o of this.getAutomationRepo().listDueAutomations(e,{targetType:"prompt_job"})){let e=(0,r.automationRecordToPromptJob)(o);t.set(e.id,e),this.ensureLegacyJobRow(e)}if((0,o.isAutomationDualReadEnabled)())for(let r of this.getLegacyDueJobs(e))t.has(r.id)||t.set(r.id,r);return[...t.values()].sort((e,t)=>(e.nextRunAt??Number.MAX_SAFE_INTEGER)-(t.nextRunAt??Number.MAX_SAFE_INTEGER))}createRun(e){this.ensureLegacyJobRowById(e);let r=(0,t.randomUUID)();return this.db.prepare("INSERT INTO prompt_runs (id, job_id) VALUES (?, ?)").run(r,e),this.getRun(r)}getRun(e){let t=this.db.prepare("SELECT * FROM prompt_runs WHERE id = ?").get(e);return t?i(t):null}listRuns(e,t=50){return this.db.prepare("SELECT * FROM prompt_runs WHERE job_id = ? ORDER BY created_at DESC LIMIT ?").all(e,t).map(i)}updateRun(e,t){let r={status:"status",output:"output",error:"error",durationMs:"duration_ms",startedAt:"started_at",finishedAt:"finished_at",cancelledAt:"cancelled_at"},o=[],a=[];for(let[e,n]of Object.entries(t)){let t=r[e];t&&(o.push(`${t} = ?`),a.push(n??null))}return 0===o.length||(a.push(e),this.db.prepare(`UPDATE prompt_runs SET ${o.join(", ")} WHERE id = ?`).run(...a.map(e=>e))),this.getRun(e)}hasRunningRun(e){return void 0!==this.db.prepare("SELECT id FROM prompt_runs WHERE job_id = ? AND status IN ('queued', 'running') LIMIT 1").get(e)}isRunCancelled(e){let t=this.db.prepare("SELECT status FROM prompt_runs WHERE id = ?").get(e);return t?.status==="cancelled"}getPromptJobRecord(e,t){let r=this.getAutomationRepo().getAutomation(e);if(r?.definition.target.type==="prompt_job")return r;if(!t||!(0,o.isAutomationDualReadEnabled)())return null;let a=this.getLegacyJob(e);return a?this.materializeLegacyJob(a):null}materializeLegacyJob(e){let t=(0,r.promptJobToAutomationDefinition)(e),o=(0,r.promptJobToAutomationRuntimeState)(e),a=this.getAutomationRepo().upsertAutomation(t);return this.getAutomationRepo().updateAutomationState(e.id,{nextRunAt:o.nextRunAt,lastRunAt:o.lastRunAt,lastOutcome:o.lastOutcome,lastError:o.lastError,updatedAt:o.updatedAt})??a}buildDefinitionPatch(e,t){let r={},o={},a={},n={};if(void 0!==t.name&&(r.name=t.name),void 0!==t.projectId&&(r.projectId=t.projectId||null),void 0!==t.state&&(r.state=t.state),void 0!==t.prompt&&(r.body=t.prompt),void 0!==t.triggerType||void 0!==t.cadence||void 0!==t.cronExpr||void 0!==t.condition||void 0!==t.checkEveryMs){let r=e.definition.trigger,a=t.triggerType??r.type;o.type=a,"condition"===a?(o.condition=t.condition??("condition"===r.type?r.condition:""),o.checkEveryMs=t.checkEveryMs??("condition"===r.type?r.checkEveryMs:3e5)):(o.cadence=""===t.cadence?void 0:t.cadence??("scheduled"===r.type?r.cadence:void 0),o.cronExpr=void 0!==t.cronExpr?t.cronExpr:void 0!==t.cadence&&""!==t.cadence?void 0:"scheduled"===r.type?r.cronExpr:void 0,o.intervalMs="scheduled"===r.type?r.intervalMs:void 0)}return void 0!==t.overlapPolicy&&(a.overlapPolicy=t.overlapPolicy),void 0!==t.catchUpPolicy&&(a.catchUpPolicy=t.catchUpPolicy),void 0!==t.cancelCheckSec&&(a.cancelCheckSec=t.cancelCheckSec),void 0!==t.agentId&&(n.agentId=t.agentId||void 0),void 0!==t.provider&&(n.provider=t.provider||void 0),void 0!==t.model&&(n.model=t.model||void 0),void 0!==t.cliArgs&&(n.cliArgs=t.cliArgs),{...Object.keys(r).length>0?r:{},...Object.keys(o).length>0?{trigger:o}:{},...Object.keys(a).length>0?{execution:a}:{},...Object.keys(n).length>0?{target:n}:{}}}buildStatePatch(e){let t={};return void 0!==e.nextRunAt&&(t.nextRunAt=e.nextRunAt),void 0!==e.lastRunAt&&(t.lastRunAt=e.lastRunAt),void 0!==e.lastOutcome&&(t.lastOutcome=e.lastOutcome),t}ensureLegacyJobRowById(e){if(this.legacyJobRowExists(e))return;let t=this.getJob(e);t&&this.upsertLegacyJobRow(t)}ensureLegacyJobRow(e){this.legacyJobRowExists(e.id)||this.upsertLegacyJobRow(e)}legacyJobRowExists(e){return void 0!==this.db.prepare("SELECT 1 FROM prompt_jobs WHERE id = ?").get(e)}upsertLegacyJobRow(e){this.db.prepare(`INSERT INTO prompt_jobs (
1
+ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let o=Object.values(r);return o.length>0?o[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function o(e,t){e.exec(`PRAGMA ${t}`)}function a(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function n(e,t){return(...r)=>{e.exec("BEGIN");try{let o=t(...r);return e.exec("COMMIT"),o}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>o,"transaction",()=>a,"transactionFn",()=>n])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var r=e.i(446786),o=e.i(814747);let a="3.35.0",n=["json1"],i=["fts5"],s=["nfs","smb","cifs","efs","fuse.sshfs"];function c(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function l(l,d){let u=[],p=l.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),o=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(o[e]||0);if(0!==t)return t}return 0}(p.v,a)&&u.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${a}`,found:p.v,required:`>= ${a}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),n))c(l,e)||u.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of i)c(l,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let m=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let a=o.default.resolve(t),{execSync:n}=e.r(233405);if("darwin"===r.default.platform()){let e=n(`df -T "${a}" 2>/dev/null || df "${a}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(d);m&&s.some(e=>m.toLowerCase().includes(e))&&u.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${m})`,path:d,found:m,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(l,"journal_mode = wal"),(0,t.pragmaSet)(l,"foreign_keys = 1"),(0,t.pragmaSet)(l,"busy_timeout = 5000"),(0,t.pragmaSet)(l,"synchronous = 1"),(0,t.pragmaSet)(l,"cache_size = -64000");let e=(0,t.pragmaGet)(l,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(l,"journal_mode = DELETE");let e=(0,t.pragmaGet)(l,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(l,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):u.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){u.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return u}e.s(["validateSQLiteEnvironment",()=>l])},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},254799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},924868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},579042,e=>{"use strict";e.s(["DEFAULT_EXECUTION_POLICY",0,{replanBudgetRemaining:3,replanBudgetInitial:3,verifyBudgetRemaining:5,verifyBudgetInitial:5,maxConcurrentAutoChecks:1,immutableRequiredGates:!0,maxConcurrent:3,priorityMode:"fifo",nodeTimeoutMs:18e5,graphTimeoutMs:864e5},"FAILURE_NODE_STATUSES",0,["failed"],"INCOMPLETE_FOR_DONE_STATUSES",0,["pending","running","awaiting_human","blocked"],"SOFT_DEP_SATISFIED_STATUSES",0,["done","passed","failed","skipped","blocked"],"SUCCESS_NODE_STATUSES",0,["done","passed"],"TERMINAL_NODE_STATUSES",0,["done","passed","failed","skipped"]])},338479,e=>{"use strict";var t=e.i(254799);e.i(201037);var r=e.i(200866),o=e.i(434542),a=e.i(300248);function n(e){return{id:e.id,name:e.name,prompt:e.prompt,agentId:e.agent_id||"",projectId:e.project_id||"",provider:e.provider||e.cli||"claude",model:e.model||"",cliArgs:e.cli_args||"",cronExpr:e.cron_expr,cadence:e.cadence,state:e.state,overlapPolicy:e.overlap_policy,catchUpPolicy:e.catch_up_policy||"fire_once",cancelCheckSec:e.cancel_check_sec,triggerType:e.trigger_type||"scheduled",condition:e.condition||"",checkEveryMs:e.check_every_ms||3e5,nextRunAt:e.next_run_at,lastRunAt:e.last_run_at,lastOutcome:e.last_outcome,createdAt:e.created_at,updatedAt:e.updated_at}}function i(e){return{id:e.id,jobId:e.job_id,status:e.status,output:e.output,error:e.error,durationMs:e.duration_ms,startedAt:e.started_at,finishedAt:e.finished_at,cancelledAt:e.cancelled_at,createdAt:e.created_at}}function s(e){return Object.values(e).some(e=>void 0!==e)}class c{db;automationRepository;constructor(e,t){this.db=e,this.automationRepository=t}getAutomationRepo(){return this.automationRepository??=(0,o.getAutomationRepository)(),this.automationRepository}createJob(e){if(!(0,o.isAutomationFrontmatterEnabled)())return this.createLegacyJob(e);let a=(0,t.randomUUID)(),n=new Date().toISOString(),i=this.getAutomationRepo().createAutomation({id:a,name:e.name,...e.projectId?{projectId:e.projectId}:{},state:"active",trigger:(e.triggerType??"scheduled")==="condition"?{type:"condition",condition:e.condition??"",checkEveryMs:e.checkEveryMs??3e5}:{type:"scheduled",...e.cadence?{cadence:e.cadence}:{},...e.cronExpr?{cronExpr:e.cronExpr}:{}},execution:{overlapPolicy:e.overlapPolicy,catchUpPolicy:e.catchUpPolicy,cancelCheckSec:e.cancelCheckSec},target:{type:"prompt_job",...e.agentId?{agentId:e.agentId}:{},...e.provider?{provider:e.provider}:{},...e.model?{model:e.model}:{},...void 0!==e.cliArgs?{cliArgs:e.cliArgs}:{}},createdAt:n,body:e.prompt}),s=(0,r.automationRecordToPromptJob)(i);return this.upsertLegacyJobRow(s),s}getJob(e){if(!(0,o.isAutomationFrontmatterEnabled)())return this.getLegacyJob(e);let t=this.getAutomationRepo().getAutomation(e);if(t?.definition.target.type==="prompt_job"){let e=(0,r.automationRecordToPromptJob)(t);return this.ensureLegacyJobRow(e),e}return(0,o.isAutomationDualReadEnabled)()?this.getLegacyJob(e):null}listJobs(e){if(!(0,o.isAutomationFrontmatterEnabled)())return this.listLegacyJobs(e);let t=new Map;for(let o of this.getAutomationRepo().listVisibleAutomations({targetType:"prompt_job",...e?.state?{state:e.state}:{},...e?.projectId?{projectId:e.projectId}:{}})){let e=(0,r.automationRecordToPromptJob)(o);t.set(e.id,e),this.ensureLegacyJobRow(e)}if((0,o.isAutomationDualReadEnabled)())for(let r of this.listLegacyJobs(e))t.has(r.id)||t.set(r.id,r);return[...t.values()].sort((e,t)=>{let r=Date.parse(e.createdAt);return Date.parse(t.createdAt)-r})}updateJob(e,t){if(!(0,o.isAutomationFrontmatterEnabled)())return this.updateLegacyJob(e,t);let a=this.getPromptJobRecord(e,!0);if(!a)return null;let n=this.buildDefinitionPatch(a,t);if(s(n)){let t=this.getAutomationRepo().updateAutomation(e,n);if(!t)return null;a=t}let i=this.buildStatePatch(t);if(s(i)){let t=this.getAutomationRepo().updateAutomationState(e,i);if(!t)return null;a=t}let c=(0,r.automationRecordToPromptJob)(a);return this.upsertLegacyJobRow(c),c}deleteJob(e){(0,o.isAutomationFrontmatterEnabled)()&&this.getAutomationRepo().deleteAutomation(e),this.db.prepare("DELETE FROM prompt_jobs WHERE id = ?").run(e)}getDueJobs(e=Date.now()){if(!(0,o.isAutomationFrontmatterEnabled)())return this.getLegacyDueJobs(e);let t=new Map;for(let o of this.getAutomationRepo().listDueAutomations(e,{targetType:"prompt_job"})){let e=(0,r.automationRecordToPromptJob)(o);t.set(e.id,e),this.ensureLegacyJobRow(e)}if((0,o.isAutomationDualReadEnabled)())for(let r of this.getLegacyDueJobs(e))t.has(r.id)||t.set(r.id,r);return[...t.values()].sort((e,t)=>(e.nextRunAt??Number.MAX_SAFE_INTEGER)-(t.nextRunAt??Number.MAX_SAFE_INTEGER))}createRun(e){this.ensureLegacyJobRowById(e);let r=(0,t.randomUUID)();return this.db.prepare("INSERT INTO prompt_runs (id, job_id) VALUES (?, ?)").run(r,e),this.getRun(r)}getRun(e){let t=this.db.prepare("SELECT * FROM prompt_runs WHERE id = ?").get(e);return t?i(t):null}listRuns(e,t=50){return this.db.prepare("SELECT * FROM prompt_runs WHERE job_id = ? ORDER BY created_at DESC LIMIT ?").all(e,t).map(i)}updateRun(e,t){let r={status:"status",output:"output",error:"error",durationMs:"duration_ms",startedAt:"started_at",finishedAt:"finished_at",cancelledAt:"cancelled_at"},o=[],a=[];for(let[e,n]of Object.entries(t)){let t=r[e];t&&(o.push(`${t} = ?`),a.push(n??null))}return 0===o.length||(a.push(e),this.db.prepare(`UPDATE prompt_runs SET ${o.join(", ")} WHERE id = ?`).run(...a.map(e=>e))),this.getRun(e)}hasRunningRun(e){return void 0!==this.db.prepare("SELECT id FROM prompt_runs WHERE job_id = ? AND status IN ('queued', 'running') LIMIT 1").get(e)}isRunCancelled(e){let t=this.db.prepare("SELECT status FROM prompt_runs WHERE id = ?").get(e);return t?.status==="cancelled"}getPromptJobRecord(e,t){let r=this.getAutomationRepo().getAutomation(e);if(r?.definition.target.type==="prompt_job")return r;if(!t||!(0,o.isAutomationDualReadEnabled)())return null;let a=this.getLegacyJob(e);return a?this.materializeLegacyJob(a):null}materializeLegacyJob(e){let t=(0,r.promptJobToAutomationDefinition)(e),o=(0,r.promptJobToAutomationRuntimeState)(e),a=this.getAutomationRepo().upsertAutomation(t);return this.getAutomationRepo().updateAutomationState(e.id,{nextRunAt:o.nextRunAt,lastRunAt:o.lastRunAt,lastOutcome:o.lastOutcome,lastError:o.lastError,updatedAt:o.updatedAt})??a}buildDefinitionPatch(e,t){let r={},o={},a={},n={};if(void 0!==t.name&&(r.name=t.name),void 0!==t.projectId&&(r.projectId=t.projectId||null),void 0!==t.state&&(r.state=t.state),void 0!==t.prompt&&(r.body=t.prompt),void 0!==t.triggerType||void 0!==t.cadence||void 0!==t.cronExpr||void 0!==t.condition||void 0!==t.checkEveryMs){let r=e.definition.trigger,a=t.triggerType??r.type;o.type=a,"condition"===a?(o.condition=t.condition??("condition"===r.type?r.condition:""),o.checkEveryMs=t.checkEveryMs??("condition"===r.type?r.checkEveryMs:3e5)):(o.cadence=""===t.cadence?void 0:t.cadence??("scheduled"===r.type?r.cadence:void 0),o.cronExpr=void 0!==t.cronExpr?t.cronExpr:void 0!==t.cadence&&""!==t.cadence?void 0:"scheduled"===r.type?r.cronExpr:void 0,o.intervalMs="scheduled"===r.type?r.intervalMs:void 0)}return void 0!==t.overlapPolicy&&(a.overlapPolicy=t.overlapPolicy),void 0!==t.catchUpPolicy&&(a.catchUpPolicy=t.catchUpPolicy),void 0!==t.cancelCheckSec&&(a.cancelCheckSec=t.cancelCheckSec),void 0!==t.agentId&&(n.agentId=t.agentId||void 0),void 0!==t.provider&&(n.provider=t.provider||void 0),void 0!==t.model&&(n.model=t.model||void 0),void 0!==t.cliArgs&&(n.cliArgs=t.cliArgs),{...Object.keys(r).length>0?r:{},...Object.keys(o).length>0?{trigger:o}:{},...Object.keys(a).length>0?{execution:a}:{},...Object.keys(n).length>0?{target:n}:{}}}buildStatePatch(e){let t={};return void 0!==e.nextRunAt&&(t.nextRunAt=e.nextRunAt),void 0!==e.lastRunAt&&(t.lastRunAt=e.lastRunAt),void 0!==e.lastOutcome&&(t.lastOutcome=e.lastOutcome),t}ensureLegacyJobRowById(e){if(this.legacyJobRowExists(e))return;let t=this.getJob(e);t&&this.upsertLegacyJobRow(t)}ensureLegacyJobRow(e){this.legacyJobRowExists(e.id)||this.upsertLegacyJobRow(e)}legacyJobRowExists(e){return void 0!==this.db.prepare("SELECT 1 FROM prompt_jobs WHERE id = ?").get(e)}upsertLegacyJobRow(e){this.db.prepare(`INSERT INTO prompt_jobs (
2
2
  id, name, prompt, cli, agent_id, project_id, provider, model, cli_args,
3
3
  cron_expr, cadence, state, overlap_policy, catch_up_policy, cancel_check_sec,
4
4
  trigger_type, condition, check_every_ms, next_run_at, last_run_at, last_outcome,
@@ -36,4 +36,4 @@ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/a
36
36
  AND next_run_at <= ?
37
37
  ORDER BY next_run_at ASC`).all(e).map(n)}}var l=e.i(522734),d=e.i(814747),u=e.i(960447);let p=null;function m(){if(!p){let e=(0,u.getSQLiteDb)();if(e.prepare("SELECT 1 FROM sqlite_master WHERE type='table' AND name='prompt_jobs'").get()){if(!e.prepare("SELECT 1 FROM pragma_table_info('prompt_jobs') WHERE name='catch_up_policy'").get())for(let t of(0,l.readFileSync)(d.default.join(process.cwd(),"db/sqlite/003_prompt_scheduler_v2.sql"),"utf-8").replace(/^\s*--.*$/gm,"").split(";").map(e=>e.trim()).filter(Boolean))try{e.exec(t)}catch(e){if(!e.message?.includes("duplicate column"))throw e}}else{let t=(0,l.readFileSync)(d.default.join(process.cwd(),"db/sqlite/002_prompt_scheduler_schema.sql"),"utf-8");e.exec(t)}p=new c(e)}return p}e.s(["getPromptJobStore",()=>m],338479)},756279,e=>{"use strict";var t=e.i(747909),r=e.i(174017),o=e.i(996250),a=e.i(759756),n=e.i(561916),i=e.i(174677),s=e.i(869741),c=e.i(316795),l=e.i(487718),d=e.i(995169),u=e.i(47587),p=e.i(666012),m=e.i(570101),h=e.i(626937),g=e.i(10372),_=e.i(193695);e.i(52474);var E=e.i(600220),R=e.i(89171),f=e.i(338479);async function y(e,{params:t}){try{let{id:e}=await t,r=(0,f.getPromptJobStore)();if(!r.getJob(e))return R.NextResponse.json({error:"Job not found"},{status:404});let o=r.listRuns(e).find(e=>"running"===e.status||"queued"===e.status);if(!o)return R.NextResponse.json({error:"No active run found for this job"},{status:404});let a=new Date().toISOString(),n=r.updateRun(o.id,{status:"cancelled",cancelledAt:a});return R.NextResponse.json({run:n})}catch(e){return console.error("Failed to cancel prompt run:",e),R.NextResponse.json({error:"Failed to cancel prompt run",message:e instanceof Error?e.message:String(e)},{status:500})}}e.s(["POST",()=>y,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],437613);var b=e.i(437613);let x=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/prompt-jobs/[id]/cancel/route",pathname:"/api/prompt-jobs/[id]/cancel",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/prompt-jobs/[id]/cancel/route.ts",nextConfigOutput:"standalone",userland:b}),{workAsyncStorage:v,workUnitAsyncStorage:A,serverHooks:S}=x;function T(){return(0,o.patchFetch)({workAsyncStorage:v,workUnitAsyncStorage:A})}async function L(e,t,o){x.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let R="/api/prompt-jobs/[id]/cancel/route";R=R.replace(/\/index$/,"")||"/";let f=await x.prepare(e,t,{srcPage:R,multiZoneDraftMode:!1});if(!f)return t.statusCode=400,t.end("Bad Request"),null==o.waitUntil||o.waitUntil.call(o,Promise.resolve()),null;let{buildId:y,params:b,nextConfig:v,parsedUrl:A,isDraftMode:S,prerenderManifest:T,routerServerContext:L,isOnDemandRevalidate:j,revalidateOnlyGenerated:w,resolvedPathname:C,clientReferenceManifest:I,serverActionsManifest:O}=f,k=(0,s.normalizeAppPath)(R),N=!!(T.dynamicRoutes[k]||T.routes[C]),P=async()=>((null==L?void 0:L.render404)?await L.render404(e,t,A,!1):t.end("This page could not be found"),null);if(N&&!S){let e=!!T.routes[C],t=T.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(v.experimental.adapterPath)return await P();throw new _.NoFallbackError}}let D=null;!N||x.isDev||S||(D="/index"===(D=C)?"/":D);let M=!0===x.isDev||!N,U=N&&!M;O&&I&&(0,i.setManifestsSingleton)({page:R,clientReferenceManifest:I,serverActionsManifest:O});let J=e.method||"GET",F=(0,n.getTracer)(),q=F.getActiveScopeSpan(),$={params:b,prerenderManifest:T,renderOpts:{experimental:{authInterrupts:!!v.experimental.authInterrupts},cacheComponents:!!v.cacheComponents,supportsDynamicResponse:M,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:v.cacheLife,waitUntil:o.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,o,a)=>x.onRequestError(e,t,o,a,L)},sharedContext:{buildId:y}},H=new c.NodeNextRequest(e),B=new c.NodeNextResponse(t),G=l.NextRequestAdapter.fromNodeNextRequest(H,(0,l.signalFromNodeResponse)(t));try{let i=async e=>x.handle(G,$).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=F.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let o=r.get("next.route");if(o){let t=`${J} ${o}`;e.setAttributes({"next.route":o,"http.route":o,"next.span_name":t}),e.updateName(t)}else e.updateName(`${J} ${R}`)}),s=!!(0,a.getRequestMeta)(e,"minimalMode"),c=async a=>{var n,c;let l=async({previousCacheEntry:r})=>{try{if(!s&&j&&w&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await i(a);e.fetchMetrics=$.renderOpts.fetchMetrics;let c=$.renderOpts.pendingWaitUntil;c&&o.waitUntil&&(o.waitUntil(c),c=void 0);let l=$.renderOpts.collectedTags;if(!N)return await (0,p.sendResponse)(H,B,n,$.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(n.headers);l&&(t[g.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,o=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:$.renderOpts.collectedExpire;return{value:{kind:E.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:o}}}}catch(t){throw(null==r?void 0:r.isStale)&&await x.onRequestError(e,t,{routerKind:"App Router",routePath:R,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:j})},!1,L),t}},d=await x.handleResponse({req:e,nextConfig:v,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:T,isRoutePPREnabled:!1,isOnDemandRevalidate:j,revalidateOnlyGenerated:w,responseGenerator:l,waitUntil:o.waitUntil,isMinimalMode:s});if(!N)return null;if((null==d||null==(n=d.value)?void 0:n.kind)!==E.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(c=d.value)?void 0:c.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});s||t.setHeader("x-nextjs-cache",j?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let _=(0,m.fromNodeOutgoingHttpHeaders)(d.value.headers);return s&&N||_.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||_.get("Cache-Control")||_.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(H,B,new Response(d.value.body,{headers:_,status:d.value.status||200})),null};q?await c(q):await F.withPropagatedContext(e.headers,()=>F.trace(d.BaseServerSpan.handleRequest,{spanName:`${J} ${R}`,kind:n.SpanKind.SERVER,attributes:{"http.method":J,"http.target":e.url}},c))}catch(t){if(t instanceof _.NoFallbackError||await x.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,u.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:j})},!1,L),N)throw t;return await (0,p.sendResponse)(H,B,new Response(null,{status:500})),null}}e.s(["handler",()=>L,"patchFetch",()=>T,"routeModule",()=>x,"serverHooks",()=>S,"workAsyncStorage",()=>v,"workUnitAsyncStorage",()=>A],756279)}];
38
38
 
39
- //# sourceMappingURL=%5Broot-of-the-server%5D__c9550a93._.js.map
39
+ //# sourceMappingURL=%5Broot-of-the-server%5D__68da2825._.js.map