@mndrk/agx 2.0.38 → 2.0.40

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 (455) hide show
  1. package/cloud-runtime/standalone/.next/BUILD_ID +1 -1
  2. package/cloud-runtime/standalone/.next/build-manifest.json +4 -4
  3. package/cloud-runtime/standalone/.next/prerender-manifest.json +3 -3
  4. package/cloud-runtime/standalone/.next/required-server-files.json +4 -4
  5. package/cloud-runtime/standalone/.next/server/app/_global-error/page/build-manifest.json +2 -2
  6. package/cloud-runtime/standalone/.next/server/app/_global-error.html +2 -2
  7. package/cloud-runtime/standalone/.next/server/app/_global-error.rsc +1 -1
  8. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  9. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  10. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  11. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  12. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  13. package/cloud-runtime/standalone/.next/server/app/_not-found/page/build-manifest.json +2 -2
  14. package/cloud-runtime/standalone/.next/server/app/_not-found.html +2 -2
  15. package/cloud-runtime/standalone/.next/server/app/_not-found.rsc +1 -1
  16. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  17. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  18. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  19. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  20. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  21. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  22. package/cloud-runtime/standalone/.next/server/app/agents/[id]/page/build-manifest.json +2 -2
  23. package/cloud-runtime/standalone/.next/server/app/agents/page/build-manifest.json +2 -2
  24. package/cloud-runtime/standalone/.next/server/app/agents.html +2 -2
  25. package/cloud-runtime/standalone/.next/server/app/agents.rsc +1 -1
  26. package/cloud-runtime/standalone/.next/server/app/agents.segments/_full.segment.rsc +1 -1
  27. package/cloud-runtime/standalone/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  28. package/cloud-runtime/standalone/.next/server/app/agents.segments/_index.segment.rsc +1 -1
  29. package/cloud-runtime/standalone/.next/server/app/agents.segments/_tree.segment.rsc +1 -1
  30. package/cloud-runtime/standalone/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +1 -1
  31. package/cloud-runtime/standalone/.next/server/app/agents.segments/agents.segment.rsc +1 -1
  32. package/cloud-runtime/standalone/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
  33. package/cloud-runtime/standalone/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
  34. package/cloud-runtime/standalone/.next/server/app/api/agents/export/route.js.nft.json +1 -1
  35. package/cloud-runtime/standalone/.next/server/app/api/automations/create/route.js.nft.json +1 -1
  36. package/cloud-runtime/standalone/.next/server/app/api/automations/route.js.nft.json +1 -1
  37. package/cloud-runtime/standalone/.next/server/app/api/chat/route.js.nft.json +1 -1
  38. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/route.js.nft.json +1 -1
  39. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/[id]/signal/route.js.nft.json +1 -1
  40. package/cloud-runtime/standalone/.next/server/app/api/chat-runs/route.js.nft.json +1 -1
  41. package/cloud-runtime/standalone/.next/server/app/api/file-search/route.js.nft.json +1 -1
  42. package/cloud-runtime/standalone/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js.nft.json +1 -1
  43. package/cloud-runtime/standalone/.next/server/app/api/health/route.js.nft.json +1 -1
  44. package/cloud-runtime/standalone/.next/server/app/api/history/route.js.nft.json +1 -1
  45. package/cloud-runtime/standalone/.next/server/app/api/history/status/route.js.nft.json +1 -1
  46. package/cloud-runtime/standalone/.next/server/app/api/knowledge-notes/route.js.nft.json +1 -1
  47. package/cloud-runtime/standalone/.next/server/app/api/learnings/route.js.nft.json +1 -1
  48. package/cloud-runtime/standalone/.next/server/app/api/logs/route.js.nft.json +1 -1
  49. package/cloud-runtime/standalone/.next/server/app/api/logs/stream/route.js.nft.json +1 -1
  50. package/cloud-runtime/standalone/.next/server/app/api/memories/route.js.nft.json +1 -1
  51. package/cloud-runtime/standalone/.next/server/app/api/messages/[id]/route.js.nft.json +1 -1
  52. package/cloud-runtime/standalone/.next/server/app/api/migrate/teams-to-projects/route.js.nft.json +1 -1
  53. package/cloud-runtime/standalone/.next/server/app/api/migrate/workspaces-to-projects/route.js.nft.json +1 -1
  54. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/cancel/route.js.nft.json +1 -1
  55. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/signal/route.js.nft.json +1 -1
  56. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js.nft.json +1 -1
  57. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js.nft.json +1 -1
  58. package/cloud-runtime/standalone/.next/server/app/api/participants/route.js.nft.json +1 -1
  59. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/agents/route.js.nft.json +1 -1
  60. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/memory/route.js.nft.json +1 -1
  61. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v1/route.js.nft.json +1 -1
  62. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v2/route.js.nft.json +1 -1
  63. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  64. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/skills/route.js.nft.json +1 -1
  65. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/threads/route.js.nft.json +1 -1
  66. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/variables/route.js.nft.json +1 -1
  67. package/cloud-runtime/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
  68. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/cancel/route.js.nft.json +1 -1
  69. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/route.js.nft.json +1 -1
  70. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/runs/route.js.nft.json +1 -1
  71. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/agents/route.js.nft.json +1 -1
  72. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
  73. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/route.js.nft.json +1 -1
  74. package/cloud-runtime/standalone/.next/server/app/api/queue/complete/route.js.nft.json +1 -1
  75. package/cloud-runtime/standalone/.next/server/app/api/queue/route.js.nft.json +1 -1
  76. package/cloud-runtime/standalone/.next/server/app/api/reactions/route.js.nft.json +1 -1
  77. package/cloud-runtime/standalone/.next/server/app/api/repos/[id]/knowledge/route.js.nft.json +1 -1
  78. package/cloud-runtime/standalone/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
  79. package/cloud-runtime/standalone/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
  80. package/cloud-runtime/standalone/.next/server/app/api/schedules/route.js.nft.json +1 -1
  81. package/cloud-runtime/standalone/.next/server/app/api/search/route.js.nft.json +1 -1
  82. package/cloud-runtime/standalone/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
  83. package/cloud-runtime/standalone/.next/server/app/api/skills/available/route.js.nft.json +1 -1
  84. package/cloud-runtime/standalone/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
  85. package/cloud-runtime/standalone/.next/server/app/api/skills/history/route.js.nft.json +1 -1
  86. package/cloud-runtime/standalone/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
  87. package/cloud-runtime/standalone/.next/server/app/api/skills/route.js.nft.json +1 -1
  88. package/cloud-runtime/standalone/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
  89. package/cloud-runtime/standalone/.next/server/app/api/summarize/route.js.nft.json +1 -1
  90. package/cloud-runtime/standalone/.next/server/app/api/system/db-status/route.js.nft.json +1 -1
  91. package/cloud-runtime/standalone/.next/server/app/api/task-drafts/route.js.nft.json +1 -1
  92. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  93. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  94. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/costs/route.js.nft.json +1 -1
  95. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/dependencies/route.js.nft.json +1 -1
  96. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -1
  97. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -1
  98. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -1
  99. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/pause/route.js.nft.json +1 -1
  100. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -1
  101. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -1
  102. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -1
  103. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -1
  104. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -1
  105. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/schedule/route.js.nft.json +1 -1
  106. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/start/route.js.nft.json +1 -1
  107. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/stop/route.js.nft.json +1 -1
  108. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/heartbeat/route.js.nft.json +1 -1
  109. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/history/route.js.nft.json +1 -1
  110. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
  111. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/stream/route.js.nft.json +1 -1
  112. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js.nft.json +1 -1
  113. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -1
  114. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -1
  115. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -1
  116. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -1
  117. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -1
  118. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
  119. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  120. package/cloud-runtime/standalone/.next/server/app/api/tasks/assign-orphans/route.js.nft.json +1 -1
  121. package/cloud-runtime/standalone/.next/server/app/api/tasks/extract/route.js.nft.json +1 -1
  122. package/cloud-runtime/standalone/.next/server/app/api/tasks/route.js.nft.json +1 -1
  123. package/cloud-runtime/standalone/.next/server/app/api/tasks/stream/route.js.nft.json +1 -1
  124. package/cloud-runtime/standalone/.next/server/app/api/thread-repos/route.js.nft.json +1 -1
  125. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
  126. package/cloud-runtime/standalone/.next/server/app/api/threads/route.js.nft.json +1 -1
  127. package/cloud-runtime/standalone/.next/server/app/api/user-settings/route.js.nft.json +1 -1
  128. package/cloud-runtime/standalone/.next/server/app/automations/page/build-manifest.json +2 -2
  129. package/cloud-runtime/standalone/.next/server/app/automations.html +2 -2
  130. package/cloud-runtime/standalone/.next/server/app/automations.rsc +1 -1
  131. package/cloud-runtime/standalone/.next/server/app/automations.segments/_full.segment.rsc +1 -1
  132. package/cloud-runtime/standalone/.next/server/app/automations.segments/_head.segment.rsc +1 -1
  133. package/cloud-runtime/standalone/.next/server/app/automations.segments/_index.segment.rsc +1 -1
  134. package/cloud-runtime/standalone/.next/server/app/automations.segments/_tree.segment.rsc +1 -1
  135. package/cloud-runtime/standalone/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +1 -1
  136. package/cloud-runtime/standalone/.next/server/app/automations.segments/automations.segment.rsc +1 -1
  137. package/cloud-runtime/standalone/.next/server/app/board/page/build-manifest.json +2 -2
  138. package/cloud-runtime/standalone/.next/server/app/board.html +2 -2
  139. package/cloud-runtime/standalone/.next/server/app/board.rsc +1 -1
  140. package/cloud-runtime/standalone/.next/server/app/board.segments/_full.segment.rsc +1 -1
  141. package/cloud-runtime/standalone/.next/server/app/board.segments/_head.segment.rsc +1 -1
  142. package/cloud-runtime/standalone/.next/server/app/board.segments/_index.segment.rsc +1 -1
  143. package/cloud-runtime/standalone/.next/server/app/board.segments/_tree.segment.rsc +1 -1
  144. package/cloud-runtime/standalone/.next/server/app/board.segments/board/__PAGE__.segment.rsc +1 -1
  145. package/cloud-runtime/standalone/.next/server/app/board.segments/board.segment.rsc +1 -1
  146. package/cloud-runtime/standalone/.next/server/app/execution-graph/page/build-manifest.json +2 -2
  147. package/cloud-runtime/standalone/.next/server/app/execution-graph.html +2 -2
  148. package/cloud-runtime/standalone/.next/server/app/execution-graph.rsc +1 -1
  149. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_full.segment.rsc +1 -1
  150. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_head.segment.rsc +1 -1
  151. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_index.segment.rsc +1 -1
  152. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_tree.segment.rsc +1 -1
  153. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +1 -1
  154. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +1 -1
  155. package/cloud-runtime/standalone/.next/server/app/index.html +2 -2
  156. package/cloud-runtime/standalone/.next/server/app/index.rsc +1 -1
  157. package/cloud-runtime/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  158. package/cloud-runtime/standalone/.next/server/app/index.segments/_full.segment.rsc +1 -1
  159. package/cloud-runtime/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  160. package/cloud-runtime/standalone/.next/server/app/index.segments/_index.segment.rsc +1 -1
  161. package/cloud-runtime/standalone/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  162. package/cloud-runtime/standalone/.next/server/app/page/build-manifest.json +2 -2
  163. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page/build-manifest.json +2 -2
  164. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page/build-manifest.json +2 -2
  165. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page/build-manifest.json +2 -2
  166. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page/build-manifest.json +2 -2
  167. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page/build-manifest.json +2 -2
  168. package/cloud-runtime/standalone/.next/server/app/projects/orphans/page/build-manifest.json +2 -2
  169. package/cloud-runtime/standalone/.next/server/app/projects/orphans.html +2 -2
  170. package/cloud-runtime/standalone/.next/server/app/projects/orphans.rsc +1 -1
  171. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_full.segment.rsc +1 -1
  172. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_head.segment.rsc +1 -1
  173. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_index.segment.rsc +1 -1
  174. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_tree.segment.rsc +1 -1
  175. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +1 -1
  176. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +1 -1
  177. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects.segment.rsc +1 -1
  178. package/cloud-runtime/standalone/.next/server/app/projects/page/build-manifest.json +2 -2
  179. package/cloud-runtime/standalone/.next/server/app/projects.html +2 -2
  180. package/cloud-runtime/standalone/.next/server/app/projects.rsc +1 -1
  181. package/cloud-runtime/standalone/.next/server/app/projects.segments/_full.segment.rsc +1 -1
  182. package/cloud-runtime/standalone/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  183. package/cloud-runtime/standalone/.next/server/app/projects.segments/_index.segment.rsc +1 -1
  184. package/cloud-runtime/standalone/.next/server/app/projects.segments/_tree.segment.rsc +1 -1
  185. package/cloud-runtime/standalone/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +1 -1
  186. package/cloud-runtime/standalone/.next/server/app/projects.segments/projects.segment.rsc +1 -1
  187. package/cloud-runtime/standalone/.next/server/app/settings/page/build-manifest.json +2 -2
  188. package/cloud-runtime/standalone/.next/server/app/settings.html +2 -2
  189. package/cloud-runtime/standalone/.next/server/app/settings.rsc +1 -1
  190. package/cloud-runtime/standalone/.next/server/app/settings.segments/_full.segment.rsc +1 -1
  191. package/cloud-runtime/standalone/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  192. package/cloud-runtime/standalone/.next/server/app/settings.segments/_index.segment.rsc +1 -1
  193. package/cloud-runtime/standalone/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  194. package/cloud-runtime/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  195. package/cloud-runtime/standalone/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  196. package/cloud-runtime/standalone/.next/server/app/skills/page/build-manifest.json +2 -2
  197. package/cloud-runtime/standalone/.next/server/app/skills.html +2 -2
  198. package/cloud-runtime/standalone/.next/server/app/skills.rsc +1 -1
  199. package/cloud-runtime/standalone/.next/server/app/skills.segments/_full.segment.rsc +1 -1
  200. package/cloud-runtime/standalone/.next/server/app/skills.segments/_head.segment.rsc +1 -1
  201. package/cloud-runtime/standalone/.next/server/app/skills.segments/_index.segment.rsc +1 -1
  202. package/cloud-runtime/standalone/.next/server/app/skills.segments/_tree.segment.rsc +1 -1
  203. package/cloud-runtime/standalone/.next/server/app/skills.segments/skills/__PAGE__.segment.rsc +1 -1
  204. package/cloud-runtime/standalone/.next/server/app/skills.segments/skills.segment.rsc +1 -1
  205. package/cloud-runtime/standalone/.next/server/app/status/page/build-manifest.json +2 -2
  206. package/cloud-runtime/standalone/.next/server/app/status.html +2 -2
  207. package/cloud-runtime/standalone/.next/server/app/status.rsc +1 -1
  208. package/cloud-runtime/standalone/.next/server/app/status.segments/_full.segment.rsc +1 -1
  209. package/cloud-runtime/standalone/.next/server/app/status.segments/_head.segment.rsc +1 -1
  210. package/cloud-runtime/standalone/.next/server/app/status.segments/_index.segment.rsc +1 -1
  211. package/cloud-runtime/standalone/.next/server/app/status.segments/_tree.segment.rsc +1 -1
  212. package/cloud-runtime/standalone/.next/server/app/status.segments/status/__PAGE__.segment.rsc +1 -1
  213. package/cloud-runtime/standalone/.next/server/app/status.segments/status.segment.rsc +1 -1
  214. package/cloud-runtime/standalone/.next/server/app/thread/[id]/page/build-manifest.json +2 -2
  215. package/cloud-runtime/standalone/.next/server/app/welcome/page/build-manifest.json +2 -2
  216. package/cloud-runtime/standalone/.next/server/app/welcome.html +2 -2
  217. package/cloud-runtime/standalone/.next/server/app/welcome.rsc +1 -1
  218. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_full.segment.rsc +1 -1
  219. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_head.segment.rsc +1 -1
  220. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_index.segment.rsc +1 -1
  221. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_tree.segment.rsc +1 -1
  222. package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome/__PAGE__.segment.rsc +1 -1
  223. package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome.segment.rsc +1 -1
  224. package/cloud-runtime/standalone/.next/server/chunks/{[externals]__986fcdb7._.js → [externals]__bc6c7111._.js} +1 -1
  225. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__01cd082e._.js +2 -2
  226. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__0936925d._.js +1 -1
  227. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__09ca81e1._.js +101 -0
  228. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__0c3dd73b._.js +6 -6
  229. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__f9cff4b0._.js → [root-of-the-server]__1017e012._.js} +2 -2
  230. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1ac3236d._.js +25 -0
  231. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1b0bb735._.js +2 -2
  232. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1c86bf6e._.js +5 -5
  233. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__20c58b41._.js +2 -2
  234. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__2126c763._.js +2 -2
  235. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__762ab29c._.js → [root-of-the-server]__236c35bb._.js} +4 -4
  236. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__255b11f2._.js +1 -1
  237. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__277ed37d._.js +1 -1
  238. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__2f06f568._.js +2 -2
  239. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__30bd0c87._.js +2 -2
  240. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__374cd94c._.js +2 -2
  241. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3785024c._.js +2 -2
  242. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__379604d4._.js +2 -2
  243. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3c8f1de6._.js +2 -2
  244. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__3d0df5a8._.js +2 -2
  245. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4014ed70._.js +7 -7
  246. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__42fcb81c._.js +16 -16
  247. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4a3cd6ac._.js +2 -2
  248. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4e522535._.js +2 -2
  249. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__50c24784._.js +1 -1
  250. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__50ddd3ce._.js +1 -1
  251. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__529a6e1c._.js +12 -12
  252. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__59d1cdd8._.js +1 -1
  253. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__628d686b._.js +1 -1
  254. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__644e6285._.js +3 -3
  255. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__65755104._.js +2 -2
  256. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__73c20995._.js +2 -2
  257. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__8125bbc3._.js +6 -6
  258. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__85275b88._.js +1 -1
  259. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__89666394._.js +3 -3
  260. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__8c0fb154._.js +2 -2
  261. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__8f5cac13._.js +3 -3
  262. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__91b22098._.js +2 -2
  263. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__92924218._.js +2 -2
  264. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__96ae701e._.js +1 -1
  265. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__98ce983b._.js +1 -1
  266. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__9a9fd39f._.js +6 -6
  267. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__9ad4e385._.js +1 -1
  268. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a01ddd0b._.js +3 -3
  269. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a099c992._.js +14 -14
  270. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__ab7343c8._.js → [root-of-the-server]__a1e62918._.js} +1 -1
  271. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a9b949c3._.js +2 -2
  272. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__af7a73fd._.js +1 -1
  273. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__bd43017b._.js +1 -1
  274. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__bf6fb108._.js +2 -2
  275. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c122c54a._.js +2 -2
  276. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c4ea4921._.js +1 -1
  277. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__d57e800e._.js +2 -2
  278. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__db469f1b._.js +1 -1
  279. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__da3a1ce7._.js → [root-of-the-server]__dc542063._.js} +2 -2
  280. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__dec3e1b7._.js +4 -4
  281. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f1147a4a._.js +2 -2
  282. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f5597fea._.js +2 -2
  283. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f8c94cb3._.js +2 -2
  284. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__f9f7f2df._.js +2 -2
  285. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fa79d53f._.js +11 -11
  286. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fb14cd4a._.js +1 -1
  287. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__fcf0b40a._.js +1 -1
  288. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ffb21023._.js +2 -2
  289. package/cloud-runtime/standalone/.next/server/chunks/_22fe5fd2._.js +3 -0
  290. package/cloud-runtime/standalone/.next/server/chunks/lib_2492d514._.js +81 -0
  291. package/cloud-runtime/standalone/.next/server/chunks/lib_281e5787._.js +16 -0
  292. package/cloud-runtime/standalone/.next/server/chunks/lib_63067e21._.js +16 -0
  293. package/cloud-runtime/standalone/.next/server/chunks/lib_orchestrator_chat-processor_ts_4c335719._.js +134 -0
  294. package/cloud-runtime/standalone/.next/server/chunks/lib_sqlite-query-adapter_ts_3ea4d849._.js +82 -21
  295. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_next_dist_61a87db9._.js +1 -1
  296. package/cloud-runtime/standalone/.next/server/instrumentation.js +1 -1
  297. package/cloud-runtime/standalone/.next/server/middleware-build-manifest.js +2 -2
  298. package/cloud-runtime/standalone/.next/server/middleware-manifest.json +5 -5
  299. package/cloud-runtime/standalone/.next/server/pages/404.html +2 -2
  300. package/cloud-runtime/standalone/.next/server/pages/500.html +2 -2
  301. package/cloud-runtime/standalone/.next/server/server-reference-manifest.js +1 -1
  302. package/cloud-runtime/standalone/.next/server/server-reference-manifest.json +1 -1
  303. package/cloud-runtime/standalone/.next/static/chunks/{dfff51033c303fc7.js → ee5f1457fbc593e1.js} +1 -1
  304. package/cloud-runtime/standalone/.next/static/chunks/{turbopack-22475f0dd0c18f92.js → turbopack-e1d640f2fbe4fa5e.js} +1 -1
  305. package/cloud-runtime/standalone/coverage/clover.xml +1208 -0
  306. package/cloud-runtime/standalone/coverage/coverage-final.json +29 -0
  307. package/cloud-runtime/standalone/coverage/lcov-report/app/api/audit/index.html +116 -0
  308. package/cloud-runtime/standalone/coverage/lcov-report/app/api/audit/route.ts.html +208 -0
  309. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/[...nextauth]/index.html +116 -0
  310. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/[...nextauth]/route.ts.html +166 -0
  311. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/daemon-secret/index.html +116 -0
  312. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/daemon-secret/route.ts.html +532 -0
  313. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/status/index.html +116 -0
  314. package/cloud-runtime/standalone/coverage/lcov-report/app/api/auth/status/route.ts.html +178 -0
  315. package/cloud-runtime/standalone/coverage/lcov-report/app/api/learnings/index.html +116 -0
  316. package/cloud-runtime/standalone/coverage/lcov-report/app/api/learnings/route.ts.html +262 -0
  317. package/cloud-runtime/standalone/coverage/lcov-report/app/api/logs/stream/index.html +116 -0
  318. package/cloud-runtime/standalone/coverage/lcov-report/app/api/logs/stream/route.ts.html +448 -0
  319. package/cloud-runtime/standalone/coverage/lcov-report/app/api/queue/complete/index.html +116 -0
  320. package/cloud-runtime/standalone/coverage/lcov-report/app/api/queue/complete/route.ts.html +331 -0
  321. package/cloud-runtime/standalone/coverage/lcov-report/app/api/queue/index.html +116 -0
  322. package/cloud-runtime/standalone/coverage/lcov-report/app/api/queue/route.ts.html +505 -0
  323. package/cloud-runtime/standalone/coverage/lcov-report/app/api/stage-prompts/index.html +116 -0
  324. package/cloud-runtime/standalone/coverage/lcov-report/app/api/stage-prompts/route.ts.html +412 -0
  325. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/advance/index.html +116 -0
  326. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/advance/route.ts.html +304 -0
  327. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/index.html +116 -0
  328. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/logs/index.html +116 -0
  329. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/logs/route.ts.html +202 -0
  330. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/[id]/route.ts.html +373 -0
  331. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/index.html +116 -0
  332. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/route.ts.html +499 -0
  333. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/stream/index.html +116 -0
  334. package/cloud-runtime/standalone/coverage/lcov-report/app/api/tasks/stream/route.ts.html +349 -0
  335. package/cloud-runtime/standalone/coverage/lcov-report/base.css +224 -0
  336. package/cloud-runtime/standalone/coverage/lcov-report/block-navigation.js +87 -0
  337. package/cloud-runtime/standalone/coverage/lcov-report/components/AuthProvider.tsx.html +259 -0
  338. package/cloud-runtime/standalone/coverage/lcov-report/components/ChatInterface.tsx.html +1228 -0
  339. package/cloud-runtime/standalone/coverage/lcov-report/components/KanbanBoard.tsx.html +1024 -0
  340. package/cloud-runtime/standalone/coverage/lcov-report/components/Layout.tsx.html +211 -0
  341. package/cloud-runtime/standalone/coverage/lcov-report/components/LearningsPanel.tsx.html +535 -0
  342. package/cloud-runtime/standalone/coverage/lcov-report/components/LogTimeline.tsx.html +415 -0
  343. package/cloud-runtime/standalone/coverage/lcov-report/components/SortableTaskCard.tsx.html +358 -0
  344. package/cloud-runtime/standalone/coverage/lcov-report/components/StagePills.tsx.html +439 -0
  345. package/cloud-runtime/standalone/coverage/lcov-report/components/TaskCard.tsx.html +514 -0
  346. package/cloud-runtime/standalone/coverage/lcov-report/components/TaskCardOverlay.tsx.html +256 -0
  347. package/cloud-runtime/standalone/coverage/lcov-report/components/TaskDetail.tsx.html +622 -0
  348. package/cloud-runtime/standalone/coverage/lcov-report/components/TaskList.tsx.html +253 -0
  349. package/cloud-runtime/standalone/coverage/lcov-report/components/index.html +281 -0
  350. package/cloud-runtime/standalone/coverage/lcov-report/favicon.png +0 -0
  351. package/cloud-runtime/standalone/coverage/lcov-report/hooks/index.html +116 -0
  352. package/cloud-runtime/standalone/coverage/lcov-report/hooks/useTasks.ts.html +1042 -0
  353. package/cloud-runtime/standalone/coverage/lcov-report/index.html +341 -0
  354. package/cloud-runtime/standalone/coverage/lcov-report/lib/auth-client.ts.html +202 -0
  355. package/cloud-runtime/standalone/coverage/lcov-report/lib/auth-server.ts.html +172 -0
  356. package/cloud-runtime/standalone/coverage/lcov-report/lib/auth.ts.html +265 -0
  357. package/cloud-runtime/standalone/coverage/lcov-report/lib/db.ts.html +1252 -0
  358. package/cloud-runtime/standalone/coverage/lcov-report/lib/index.html +131 -0
  359. package/cloud-runtime/standalone/coverage/lcov-report/lib/orchestrator.ts.html +409 -0
  360. package/cloud-runtime/standalone/coverage/lcov-report/lib/security.ts.html +1165 -0
  361. package/cloud-runtime/standalone/coverage/lcov-report/lib/supabase-server.ts.html +175 -0
  362. package/cloud-runtime/standalone/coverage/lcov-report/lib/supabase.ts.html +157 -0
  363. package/cloud-runtime/standalone/coverage/lcov-report/prettify.css +1 -0
  364. package/cloud-runtime/standalone/coverage/lcov-report/prettify.js +2 -0
  365. package/cloud-runtime/standalone/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  366. package/cloud-runtime/standalone/coverage/lcov-report/sorter.js +210 -0
  367. package/cloud-runtime/standalone/coverage/lcov.info +2386 -0
  368. package/cloud-runtime/standalone/docs/LIMITS.md +63 -0
  369. package/cloud-runtime/standalone/docs/architecture/ADR-001-hybrid-to-full-sqlite.md +345 -0
  370. package/cloud-runtime/standalone/docs/baseline/baseline-report.json +1009 -0
  371. package/cloud-runtime/standalone/docs/baseline/critical-queries.md +105 -0
  372. package/cloud-runtime/standalone/docs/baseline/lock-metrics.json +21 -0
  373. package/cloud-runtime/standalone/docs/baseline/read-latency.json +146 -0
  374. package/cloud-runtime/standalone/docs/baseline/restore-time.json +10 -0
  375. package/cloud-runtime/standalone/docs/baseline/write-metrics.json +803 -0
  376. package/cloud-runtime/standalone/docs/decisions/sqlite-migration-adr.md +327 -0
  377. package/cloud-runtime/standalone/docs/error-code-mapping.md +74 -0
  378. package/cloud-runtime/standalone/docs/migration-plan.md +120 -0
  379. package/cloud-runtime/standalone/docs/migration-spec.md +345 -0
  380. package/cloud-runtime/standalone/docs/pg-sqlite-compatibility-matrix.md +554 -0
  381. package/cloud-runtime/standalone/docs/project-agent-migration-status.md +229 -0
  382. package/cloud-runtime/standalone/docs/runbook-shadow-read.md +66 -0
  383. package/cloud-runtime/standalone/docs/runbook.md +155 -0
  384. package/cloud-runtime/standalone/docs/specs/cli-postgres-removal.md +69 -0
  385. package/cloud-runtime/standalone/docs/specs/thread-mentions.md +53 -0
  386. package/cloud-runtime/standalone/docs/superpowers/plans/2026-04-01-prompt-scheduler.md +1907 -0
  387. package/cloud-runtime/standalone/docs/superpowers/plans/2026-04-02-sqlite-migration.md +1047 -0
  388. package/cloud-runtime/standalone/docs/transcript.txt +282 -0
  389. package/cloud-runtime/standalone/docs/ux/GlobalChatFlow.storyboard +23 -0
  390. package/cloud-runtime/standalone/docs/ux/assistant-chat-cli.md +32 -0
  391. package/cloud-runtime/standalone/instrumentation.ts +34 -0
  392. package/cloud-runtime/standalone/mcp/dist/constants.js +66 -0
  393. package/cloud-runtime/standalone/mcp/dist/db.js +220 -0
  394. package/cloud-runtime/standalone/mcp/dist/index.js +7 -0
  395. package/cloud-runtime/standalone/mcp/dist/security.js +18 -0
  396. package/cloud-runtime/standalone/mcp/dist/server.js +240 -0
  397. package/cloud-runtime/standalone/mcp/dist/task-context.js +287 -0
  398. package/cloud-runtime/standalone/mcp/dist/test-client.js +82 -0
  399. package/cloud-runtime/standalone/mcp/dist/tools/audit.js +69 -0
  400. package/cloud-runtime/standalone/mcp/dist/tools/learnings.js +88 -0
  401. package/cloud-runtime/standalone/mcp/dist/tools/queue.js +312 -0
  402. package/cloud-runtime/standalone/mcp/dist/tools/tasks.js +244 -0
  403. package/cloud-runtime/standalone/mcp/dist/types.js +74 -0
  404. package/cloud-runtime/standalone/node_modules/@img/sharp-darwin-arm64/lib/sharp-darwin-arm64.node +0 -0
  405. package/cloud-runtime/standalone/node_modules/@img/{sharp-linux-x64 → sharp-darwin-arm64}/package.json +7 -13
  406. package/cloud-runtime/standalone/node_modules/@img/{sharp-libvips-linux-x64 → sharp-libvips-darwin-arm64}/README.md +2 -2
  407. package/cloud-runtime/standalone/node_modules/@img/{sharp-libvips-linuxmusl-x64 → sharp-libvips-darwin-arm64}/lib/glib-2.0/include/glibconfig.h +8 -9
  408. package/cloud-runtime/standalone/node_modules/@img/{sharp-libvips-linux-x64/lib/libvips-cpp.so.8.17.3 → sharp-libvips-darwin-arm64/lib/libvips-cpp.8.17.3.dylib} +0 -0
  409. package/cloud-runtime/standalone/node_modules/@img/{sharp-libvips-linux-x64 → sharp-libvips-darwin-arm64}/package.json +5 -11
  410. package/cloud-runtime/standalone/notes/comments-context-demo.md +141 -0
  411. package/cloud-runtime/standalone/notes/comments-context-plan.md +119 -0
  412. package/cloud-runtime/standalone/notes/context-audit.md +21 -0
  413. package/cloud-runtime/standalone/notes/project-layer-plan.md +30 -0
  414. package/cloud-runtime/standalone/notes/project-layer.md +123 -0
  415. package/cloud-runtime/standalone/notes/temporal-migration-design.md +199 -0
  416. package/cloud-runtime/standalone/playwright-report/data/00d55996f37c1506b90144c85493dd85032c13e5.png +0 -0
  417. package/cloud-runtime/standalone/playwright-report/data/0b9d409e57237ae111d7ba258d3dfe64dc368456.png +0 -0
  418. package/cloud-runtime/standalone/playwright-report/data/b33d5e80a15bd1deda4415b9d318ef73f581c950.png +0 -0
  419. package/cloud-runtime/standalone/playwright-report/data/b55684161aa440d0614595e13c91338f0420abbb.md +131 -0
  420. package/cloud-runtime/standalone/playwright-report/data/b9913957ae07e7565c38ddd71215be79b1ceb017.png +0 -0
  421. package/cloud-runtime/standalone/playwright-report/data/c3538be8ebbebc9fe4a7df8f12f04483af4a0d91.png +0 -0
  422. package/cloud-runtime/standalone/playwright-report/data/fe638f64ff5e36f1c30325564565662d3f57da87.md +180 -0
  423. package/cloud-runtime/standalone/playwright-report/index.html +85 -0
  424. package/cloud-runtime/standalone/server.js +1 -1
  425. package/cloud-runtime/standalone/test-results/auth-Authentication-Flow-S-aff25-sion-across-page-navigation-chromium/test-failed-1.png +0 -0
  426. package/cloud-runtime/standalone/test-results/comments-Task-comments-add-4dc59-nd-persists-it-for-the-task-chromium/error-context.md +131 -0
  427. package/cloud-runtime/standalone/test-results/comments-Task-comments-add-4dc59-nd-persists-it-for-the-task-chromium/test-failed-1.png +0 -0
  428. package/cloud-runtime/standalone/test-results/kanban-Kanban-Board-Stage--4082a-er-planning-after-ideation--chromium/error-context.md +180 -0
  429. package/cloud-runtime/standalone/test-results/kanban-Kanban-Board-Stage--4082a-er-planning-after-ideation--chromium/test-failed-1.png +0 -0
  430. package/cloud-runtime/standalone/test-results/kanban-Kanban-Board-Stage-Columns-displays-all-9-SDLC-stages-chromium/error-context.md +180 -0
  431. package/cloud-runtime/standalone/test-results/kanban-Kanban-Board-Stage-Columns-displays-all-9-SDLC-stages-chromium/test-failed-1.png +0 -0
  432. package/cloud-runtime/standalone/test-results/kanban-Kanban-Board-Task-D-b6d98-ys-tasks-in-correct-columns-chromium/error-context.md +180 -0
  433. package/cloud-runtime/standalone/test-results/kanban-Kanban-Board-Task-D-b6d98-ys-tasks-in-correct-columns-chromium/test-failed-1.png +0 -0
  434. package/cloud-runtime/standalone/test-results/kanban-Kanban-Board-Task-Display-shows-task-count-per-column-chromium/test-failed-1.png +0 -0
  435. package/cloud-runtime/standalone/test-results/kanban-Task-Lifecycle-can-advance-task-through-all-stages-chromium/test-failed-1.png +0 -0
  436. package/cloud-runtime/standalone/tsconfig.json +1 -2
  437. package/cloud-runtime/standalone/tsconfig.tsbuildinfo +1 -0
  438. package/package.json +1 -1
  439. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__4bce7db7._.js +0 -101
  440. package/cloud-runtime/standalone/.next/server/chunks/_17e53c87._.js +0 -3
  441. package/cloud-runtime/standalone/.next/server/chunks/lib_ea45fe73._.js +0 -94
  442. package/cloud-runtime/standalone/node_modules/@img/sharp-libvips-linux-x64/lib/glib-2.0/include/glibconfig.h +0 -221
  443. package/cloud-runtime/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/README.md +0 -46
  444. package/cloud-runtime/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/index.js +0 -1
  445. package/cloud-runtime/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/lib/libvips-cpp.so.8.17.3 +0 -0
  446. package/cloud-runtime/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/package.json +0 -42
  447. package/cloud-runtime/standalone/node_modules/@img/sharp-libvips-linuxmusl-x64/versions.json +0 -30
  448. package/cloud-runtime/standalone/node_modules/@img/sharp-linux-x64/lib/sharp-linux-x64.node +0 -0
  449. package/cloud-runtime/standalone/node_modules/@img/sharp-linuxmusl-x64/lib/sharp-linuxmusl-x64.node +0 -0
  450. package/cloud-runtime/standalone/node_modules/@img/sharp-linuxmusl-x64/package.json +0 -46
  451. /package/cloud-runtime/standalone/.next/static/{V5ruh627UpcC-LTWDgYk8 → tIFXRWCxPD896ykJ6O--N}/_buildManifest.js +0 -0
  452. /package/cloud-runtime/standalone/.next/static/{V5ruh627UpcC-LTWDgYk8 → tIFXRWCxPD896ykJ6O--N}/_clientMiddlewareManifest.json +0 -0
  453. /package/cloud-runtime/standalone/.next/static/{V5ruh627UpcC-LTWDgYk8 → tIFXRWCxPD896ykJ6O--N}/_ssgManifest.js +0 -0
  454. /package/cloud-runtime/standalone/node_modules/@img/{sharp-libvips-linux-x64 → sharp-libvips-darwin-arm64}/lib/index.js +0 -0
  455. /package/cloud-runtime/standalone/node_modules/@img/{sharp-libvips-linux-x64 → sharp-libvips-darwin-arm64}/versions.json +0 -0
@@ -1,4 +1,4 @@
1
- module.exports=[54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},59833,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])},93695,(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"))},18622,(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"))},56704,(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"))},32319,(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"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},33405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},49041,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])},21729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(59833),r=e.i(22734),i=e.i(46786),n=e.i(14747);let l="3.35.0",s=["json1"],a=["fts5"],o=["nfs","smb","cifs","efs","fuse.sshfs"];function d(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function c(c,u){let p=[],f=c.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}(f.v,l)&&p.push({kind:"version_mismatch",message:`SQLite version ${f.v} is below minimum ${l}`,found:f.v,required:`>= ${l}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),s))d(c,e)||p.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of a)d(c,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let m=function(t){"linux"!==i.default.platform()&&i.default.platform();try{let l=n.default.resolve(t),{execSync:s}=e.r(33405);if("darwin"===i.default.platform());else{let e=r.default.readFileSync("/proc/mounts","utf-8"),t="",i="unknown";for(let r of e.split("\n")){let[,e,n]=r.split(/\s+/);e&&l.startsWith(e)&&e.length>t.length&&(t=e,i=n||"unknown")}return i}}catch{}return null}(u);m&&o.some(e=>m.toLowerCase().includes(e))&&p.push({kind:"filesystem_error",message:`Database path '${u}' is on a network filesystem (${m})`,path:u,found:m,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(c,"journal_mode = wal"),(0,t.pragmaSet)(c,"foreign_keys = 1"),(0,t.pragmaSet)(c,"busy_timeout = 5000"),(0,t.pragmaSet)(c,"synchronous = 1"),(0,t.pragmaSet)(c,"cache_size = -64000");let e=(0,t.pragmaGet)(c,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(c,"journal_mode = DELETE");let e=(0,t.pragmaGet)(c,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(c,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):p.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){p.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 p}e.s(["validateSQLiteEnvironment",()=>c])},57431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(60447);return t()}e.i(49041),e.s(["createAdminDbClient",()=>t])},74533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},2157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},37175,e=>{"use strict";var t=e.i(2157),r=e.i(50227),i=e.i(74533),n=e.i(60447);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=[54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},59833,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])},93695,(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"))},18622,(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"))},56704,(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"))},32319,(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"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},33405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},49041,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])},21729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(59833);e.i(22734);var r=e.i(46786),i=e.i(14747);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(33405);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])},57431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(60447);return t()}e.i(49041),e.s(["createAdminDbClient",()=>t])},74533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},2157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},37175,e=>{"use strict";var t=e.i(2157),r=e.i(50227),i=e.i(74533),n=e.i(60447);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
@@ -10,6 +10,6 @@ module.exports=[54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},2
10
10
  GROUP BY provider, repo, skill_id, skill_label
11
11
  ORDER BY learned_at DESC`).all(...r)}function _(e){let t=Array.from(new Set(e.providers.map(e=>d(e)).filter(Boolean)));if(0===t.length)return{ok:!1,command:"",stdout:"",stderr:"",results:[],error:"No supported providers selected"};let r=Date.now(),n=[],l="",s="",o="",u=new Map;for(let e of t){let t=c(e);if(!t)continue;let r=u.get(t)??[];r.push(e),u.set(t,r)}for(let[t,d]of u.entries()){let c=["--yes","skills@latest","add",e.repo,"--skill",e.skillId,"--agent",t,"--yes"];o=`npx ${c.join(" ")}`;let u=(0,i.spawnSync)("npx",c,{cwd:process.cwd(),encoding:"utf8",timeout:12e4,env:{...process.env,FORCE_COLOR:"0"}});l=String(u.stdout??""),s=String(u.stderr??"");let p=0===u.status;for(let i of d)n.push({provider:i,ok:p,agent:t}),g({provider:i,repo:e.repo,skill_id:e.skillId,skill_label:e.skillId,status:p?"succeeded":"failed",command:o,error:p?null:a(s||l).slice(0,1e3),run_started_at:r,run_completed_at:Date.now(),created_at:r,updated_at:Date.now()});if(!p)return{ok:!1,command:o,stdout:l,stderr:s,results:n,error:a(s||l)||"Installation failed"}}return{ok:!0,command:o,stdout:l,stderr:s,results:n}}function k(e){let t=Array.from(new Set(e.providers.map(e=>d(e)).filter(Boolean)));if(0===t.length)return{ok:!1,command:"",stdout:"",stderr:"",results:[],error:"No supported providers selected"};let r=Date.now(),n=[],l="",s="",o="",u=new Map;for(let e of t){let t=c(e);if(!t)continue;let r=u.get(t)??[];r.push(e),u.set(t,r)}for(let[t,d]of u.entries()){let c=["--yes","skills@latest","remove",e.skillId,"--agent",t,"--yes"];o=`npx ${c.join(" ")}`;let u=(0,i.spawnSync)("npx",c,{cwd:process.cwd(),encoding:"utf8",timeout:12e4,env:{...process.env,FORCE_COLOR:"0"}});l=String(u.stdout??""),s=String(u.stderr??"");let p=0===u.status;for(let i of d)n.push({provider:i,ok:p,agent:t}),g({provider:i,repo:"local/remove",skill_id:e.skillId,skill_label:e.skillId,status:p?"succeeded":"failed",command:o,error:p?null:a(s||l).slice(0,1e3),run_started_at:r,run_completed_at:Date.now(),created_at:r,updated_at:Date.now()});if(!p)return{ok:!1,command:o,stdout:l,stderr:s,results:n,error:a(s||l)||"Removal failed"}}return{ok:!0,command:o,stdout:l,stderr:s,results:n}}e.s(["fetchSkillDetail",()=>m,"fetchSkillsCatalog",()=>f,"installSkill",()=>_,"installedSkillPath",()=>u,"listAvailableSkills",()=>v,"listInstalledSkillIds",()=>p,"listSkillHistory",()=>h,"removeSkill",()=>k])},49953,e=>{"use strict";var t=e.i(2157),r=e.i(60447),i=e.i(37175);async function n(e){return(0,r.getSQLiteDb)().prepare("SELECT agent_id, repo, skill_id, condition, created_at FROM agent_skill_bindings WHERE agent_id = ? ORDER BY created_at ASC").all(e).map(e=>({repo:e.repo,skillId:e.skill_id,...e.condition?{condition:e.condition}:{}}))}async function l(e,t){let i=(0,r.getSQLiteDb)(),l=new Map;for(let e of t){let t=e.repo.trim(),r=e.skillId.trim();t&&r&&l.set(`${t}::${r}`,{repo:t,skillId:r,condition:e.condition?.trim()||null})}for(let t of(await n(e))){let r=`${t.repo}::${t.skillId}`;l.has(r)||i.prepare("DELETE FROM agent_skill_bindings WHERE agent_id = ? AND repo = ? AND skill_id = ?").run(e,t.repo,t.skillId)}for(let t of l.values())i.prepare(`INSERT INTO agent_skill_bindings (agent_id, repo, skill_id, condition)
12
12
  VALUES (?, ?, ?, ?)
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])},84776,e=>{"use strict";var t=e.i(62294),r=e.i(49953),i=e.i(49041);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])},23965,e=>{"use strict";var t=e.i(47909),r=e.i(74017),i=e.i(96250),n=e.i(59756),l=e.i(61916),s=e.i(74677),a=e.i(69741),o=e.i(16795),d=e.i(87718),c=e.i(95169),u=e.i(47587),p=e.i(66012),f=e.i(70101),m=e.i(74838),g=e.i(10372),h=e.i(93695);e.i(52474);var v=e.i(220),_=e.i(62294),k=e.i(49953),S=e.i(60447),E=e.i(49041),y=e.i(84776),R=e.i(41334);async function w(){return Response.json(await (0,y.loadDbParticipants)())}function x(e){return"string"==typeof e&&e.trim()?e.trim():void 0}function A(e,t){let r,i=x(e.name),n=x(e.provider),l=x(e.model),s=x(e.id)??t;if(!s||!i||!n||!l)return null;let a=x(e.title),o=x(e.identity),d=x(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=x(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}:{},...x(e.voice)?{voice:x(e.voice)}:{},...x(e.seed)?{seed:x(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=x(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:x(r.voice),seed:x(r.seed)}),await (0,_.setAgentSkills)(t.id,n.skills??[]),await (0,k.setAgentSkillBindings)(t.id,n.skillBindings??[]),(0,R.ensureAgent)(t.id,{voice:x(r.voice),seed:x(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=x(r.projectId)??x(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:x(r.voice),seed:x(r.seed)}),await (0,_.setAgentSkills)(i.id,i.skills??[]),await (0,k.setAgentSkillBindings)(i.id,i.skillBindings??[]),(0,R.ensureAgent)(i.id,{voice:x(r.voice),seed:x(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",()=>w,"PATCH",()=>C,"POST",()=>b,"PUT",()=>L,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],90158);var O=e.i(90158);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 M(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:R,isDraftMode:w,prerenderManifest:x,routerServerContext:A,isOnDemandRevalidate:b,revalidateOnlyGenerated:C,resolvedPathname:L,clientReferenceManifest:I,serverActionsManifest:O}=k,D=(0,a.normalizeAppPath)(_),j=!!(x.dynamicRoutes[D]||x.routes[L]),N=async()=>((null==A?void 0:A.render404)?await A.render404(e,t,R,!1):t.end("This page could not be found"),null);if(j&&!w){let e=!!x.routes[L],t=x.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||w||(B="/index"===(B=L)?"/":B);let M=!0===T.isDev||!j,P=j&&!M;O&&I&&(0,s.setManifestsSingleton)({page:_,clientReferenceManifest:I,serverActionsManifest:O});let q=e.method||"GET",$=(0,l.getTracer)(),F=$.getActiveScopeSpan(),U={params:E,prerenderManifest:x,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:M,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=`${q} ${i}`;e.setAttributes({"next.route":i,"http.route":i,"next.span_name":t}),e.updateName(t)}else e.updateName(`${q} ${_}`)}),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:P,isOnDemandRevalidate:b})},!1,A),t}},c=await T.handleResponse({req:e,nextConfig:y,cacheKey:B,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:x,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"),w&&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:`${q} ${_}`,kind:l.SpanKind.SERVER,attributes:{"http.method":q,"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:P,isOnDemandRevalidate:b})},!1,A),j)throw t;return await (0,p.sendResponse)(H,G,new Response(null,{status:500})),null}}e.s(["handler",()=>M,"patchFetch",()=>B,"routeModule",()=>T,"serverHooks",()=>N,"workAsyncStorage",()=>D,"workUnitAsyncStorage",()=>j],23965)}];
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])},84776,e=>{"use strict";var t=e.i(62294),r=e.i(49953),i=e.i(49041);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])},23965,e=>{"use strict";var t=e.i(47909),r=e.i(74017),i=e.i(96250),n=e.i(59756),l=e.i(61916),s=e.i(74677),a=e.i(69741),o=e.i(16795),d=e.i(87718),c=e.i(95169),u=e.i(47587),p=e.i(66012),f=e.i(70101),m=e.i(74838),g=e.i(10372),h=e.i(93695);e.i(52474);var v=e.i(220),_=e.i(62294),k=e.i(49953),S=e.i(60447),E=e.i(49041),y=e.i(84776),R=e.i(41334);async function x(){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,R.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,R.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",()=>x,"PATCH",()=>C,"POST",()=>b,"PUT",()=>L,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],90158);var O=e.i(90158);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 M(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:R,isDraftMode:x,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,R,!1):t.end("This page could not be found"),null);if(j&&!x){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||x||(B="/index"===(B=L)?"/":B);let M=!0===T.isDev||!j,P=j&&!M;O&&I&&(0,s.setManifestsSingleton)({page:_,clientReferenceManifest:I,serverActionsManifest:O});let $=e.method||"GET",q=(0,l.getTracer)(),F=q.getActiveScopeSpan(),U={params:E,prerenderManifest:w,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:M,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=q.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=`${$} ${i}`;e.setAttributes({"next.route":i,"http.route":i,"next.span_name":t}),e.updateName(t)}else e.updateName(`${$} ${_}`)}),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:P,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"),x&&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 q.withPropagatedContext(e.headers,()=>q.trace(c.BaseServerSpan.handleRequest,{spanName:`${$} ${_}`,kind:l.SpanKind.SERVER,attributes:{"http.method":$,"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:P,isOnDemandRevalidate:b})},!1,A),j)throw t;return await (0,p.sendResponse)(H,G,new Response(null,{status:500})),null}}e.s(["handler",()=>M,"patchFetch",()=>B,"routeModule",()=>T,"serverHooks",()=>N,"workAsyncStorage",()=>D,"workUnitAsyncStorage",()=>j],23965)}];
14
14
 
15
15
  //# sourceMappingURL=%5Broot-of-the-server%5D__73c20995._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[18622,(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"))},56704,(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"))},32319,(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"))},24725,(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"))},93695,(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"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},59833,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 o(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 s=t(...r);return e.exec("COMMIT"),s}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>s,"transaction",()=>o,"transactionFn",()=>n])},33405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},49041,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])},21729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(59833),r=e.i(22734),s=e.i(46786),o=e.i(14747);let n="3.35.0",a=["json1"],i=["fts5"],d=["nfs","smb","cifs","efs","fuse.sshfs"];function u(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function l(l,c){let p=[],h=l.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}(h.v,n)&&p.push({kind:"version_mismatch",message:`SQLite version ${h.v} is below minimum ${n}`,found:h.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),a))u(l,e)||p.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)u(l,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let g=function(t){"linux"!==s.default.platform()&&s.default.platform();try{let n=o.default.resolve(t),{execSync:a}=e.r(33405);if("darwin"===s.default.platform());else{let e=r.default.readFileSync("/proc/mounts","utf-8"),t="",s="unknown";for(let r of e.split("\n")){let[,e,o]=r.split(/\s+/);e&&n.startsWith(e)&&e.length>t.length&&(t=e,s=o||"unknown")}return s}}catch{}return null}(c);g&&d.some(e=>g.toLowerCase().includes(e))&&p.push({kind:"filesystem_error",message:`Database path '${c}' is on a network filesystem (${g})`,path:c,found:g,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`)):p.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){p.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 p}e.s(["validateSQLiteEnvironment",()=>l])},24868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},74533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},2157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},97812,e=>{"use strict";var t=e.i(60447),r=e.i(59833);let s=new Set(["replan","rollback"]);class o extends Error{expectedVersion;actualVersion;constructor(e,t){super(`Execution graph version conflict: expected ${e}, found ${t}.`),this.name="GraphVersionConflictError",this.expectedVersion=e,this.actualVersion=t}}class n extends Error{constructor(e){super(`Execution graph not found: ${e}`),this.name="GraphNotFoundError"}}class a extends Error{nodeIds;constructor(e,t){super(`Execution graph ${e} is missing node(s): ${t.join(", ")}`),this.name="GraphNodeNotFoundError",this.nodeIds=t}}class i extends Error{taskId;existingGraphId;constructor(e,t){super(`Task ${e} is already bound to execution graph ${t}.`),this.name="GraphTaskAlreadyBoundError",this.taskId=e,this.existingGraphId=t}}function d(e){return null==e?null:JSON.stringify(e)}function u(e){if(null==e)return null;if("string"==typeof e)try{return JSON.parse(e)}catch{}return e}function l(e){let t=Date.parse(e);return Number.isNaN(t)?e:new Date(t).toISOString()}function c(e){return!e||"object"!=typeof e||Array.isArray(e)?{}:e}function p(e){let{type:t,status:r,metrics:s,output:o,...n}=e;return{type:t,status:r,config:n,output:o??null,metrics:s??null}}function h(e){let t={...c(u(e.payload))};return"eventType"in t||(t.eventType=e.event_type),"timestamp"in t||(t.timestamp=l(e.timestamp)),t}function g(e){return{query(t,r){let s=e.prepare(t);return/^\s*(INSERT|UPDATE|DELETE)/i.test(t)&&!/RETURNING/i.test(t)?(s.run(...(r??[]).map(e=>e)),{rows:[]}):{rows:s.all(...(r??[]).map(e=>e))}}}}class f{getDb(){return(0,t.getSQLiteDb)()}createGraph(e,t){let s=this.getDb(),o=g(s);t?.skipTaskBinding&&(0,r.pragmaSet)(s,"foreign_keys = OFF");try{return(0,r.transaction)(s,()=>{let r=o.query("SELECT id FROM execution_graphs WHERE task_id = ? LIMIT 1",[e.taskId]).rows[0];if(r&&r.id!==e.id)throw new i(e.taskId,r.id);for(let[t,r]of(o.query(`INSERT INTO execution_graphs
1
+ module.exports=[18622,(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"))},56704,(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"))},32319,(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"))},24725,(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"))},93695,(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"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},59833,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 o(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 s=t(...r);return e.exec("COMMIT"),s}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>s,"transaction",()=>o,"transactionFn",()=>n])},33405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},49041,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])},21729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(59833);e.i(22734);var r=e.i(46786),s=e.i(14747);let o="3.35.0",n=["json1"],a=["fts5"],i=["nfs","smb","cifs","efs","fuse.sshfs"];function d(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,l){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),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,o)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${o}`,found:p.v,required:`>= ${o}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),n))d(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 a)d(u,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 o=s.default.resolve(t),{execSync:n}=e.r(33405);if("darwin"===r.default.platform()){let e=n(`df -T "${o}" 2>/dev/null || df "${o}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),r=t[0]?.toLowerCase()||"";if(r.includes("://")||r.includes("nfs")||r.includes("smb"))return r}}}catch{}return null}(l);h&&i.some(e=>h.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${l}' is on a network filesystem (${h})`,path:l,found:h,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])},24868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},74533,(e,t,r)=>{t.exports=e.x("node:child_process",()=>require("node:child_process"))},50227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},2157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},97812,e=>{"use strict";var t=e.i(60447),r=e.i(59833);let s=new Set(["replan","rollback"]);class o extends Error{expectedVersion;actualVersion;constructor(e,t){super(`Execution graph version conflict: expected ${e}, found ${t}.`),this.name="GraphVersionConflictError",this.expectedVersion=e,this.actualVersion=t}}class n extends Error{constructor(e){super(`Execution graph not found: ${e}`),this.name="GraphNotFoundError"}}class a extends Error{nodeIds;constructor(e,t){super(`Execution graph ${e} is missing node(s): ${t.join(", ")}`),this.name="GraphNodeNotFoundError",this.nodeIds=t}}class i extends Error{taskId;existingGraphId;constructor(e,t){super(`Task ${e} is already bound to execution graph ${t}.`),this.name="GraphTaskAlreadyBoundError",this.taskId=e,this.existingGraphId=t}}function d(e){return null==e?null:JSON.stringify(e)}function u(e){if(null==e)return null;if("string"==typeof e)try{return JSON.parse(e)}catch{}return e}function l(e){let t=Date.parse(e);return Number.isNaN(t)?e:new Date(t).toISOString()}function c(e){return!e||"object"!=typeof e||Array.isArray(e)?{}:e}function p(e){let{type:t,status:r,metrics:s,output:o,...n}=e;return{type:t,status:r,config:n,output:o??null,metrics:s??null}}function h(e){let t={...c(u(e.payload))};return"eventType"in t||(t.eventType=e.event_type),"timestamp"in t||(t.timestamp=l(e.timestamp)),t}function g(e){return{query(t,r){let s=e.prepare(t);return/^\s*(INSERT|UPDATE|DELETE)/i.test(t)&&!/RETURNING/i.test(t)?(s.run(...(r??[]).map(e=>e)),{rows:[]}):{rows:s.all(...(r??[]).map(e=>e))}}}}class f{getDb(){return(0,t.getSQLiteDb)()}createGraph(e,t){let s=this.getDb(),o=g(s);t?.skipTaskBinding&&(0,r.pragmaSet)(s,"foreign_keys = OFF");try{return(0,r.transaction)(s,()=>{let r=o.query("SELECT id FROM execution_graphs WHERE task_id = ? LIMIT 1",[e.taskId]).rows[0];if(r&&r.id!==e.id)throw new i(e.taskId,r.id);for(let[t,r]of(o.query(`INSERT INTO execution_graphs
2
2
  (id, task_id, graph_version, mode, policy, done_criteria, schedule, created_at, updated_at)
3
3
  VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?)
4
4
  ON CONFLICT (id) DO UPDATE SET
@@ -23,7 +23,7 @@ module.exports=[18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/ap
23
23
  FROM graph_nodes WHERE graph_id = ? ORDER BY node_id ASC`,[r.id]),n=e.query(`SELECT from_id, to_id, type, condition, data_mapping
24
24
  FROM graph_edges WHERE graph_id = ? ORDER BY from_id ASC, to_id ASC`,[r.id]),a=e.query(`SELECT event_type, payload, timestamp
25
25
  FROM graph_events WHERE graph_id = ? ORDER BY timestamp ASC, event_type ASC`,[r.id]),i={};for(let e of o.rows)i[e.node_id]=function(e){let t={...c(u(e.config)),type:e.type,status:e.status},r=u(e.metrics);null!==r&&(t.metrics=r);let s=u(e.output);return null!==s&&(t.output=s),t}(e);let d=n.rows.map(e=>({from:e.from_id,to:e.to_id,type:e.type,...e.condition?{condition:u(e.condition)}:{},...e.data_mapping?{dataMapping:u(e.data_mapping)}:{}})),p=[],g=[];for(let e of a.rows){let t=h(e);s.has(t.eventType)?p.push(t):g.push(t)}return{id:r.id,taskId:r.task_id,graphVersion:r.graph_version,mode:r.mode,nodes:i,edges:d,policy:u(r.policy)??{},doneCriteria:u(r.done_criteria)??{},schedule:u(r.schedule)??void 0,versionHistory:p,runtimeEvents:g,createdAt:l(r.created_at),updatedAt:l(r.updated_at)}}appendEventInternal(e,t,r){e.query(`INSERT INTO graph_events (graph_id, event_type, payload, timestamp)
26
- VALUES (?, ?, ?, ?)`,[t,r.eventType,d(r),r.timestamp])}}function m(){return new f}let E=new f;function _(e,t){return E.createGraph(e,t)}function S(e){return E.getGraph(e)}function k(e,t,r){return E.updateNodeRuntime(e,t,r)}function T(e,t,r){return E.updateGraphStructure(e,t,r)}function R(e,t){return E.appendEvent(e,t)}function y(e,r={}){let s=["graph_id = ?"],o=[e];r.eventType&&(s.push("event_type = ?"),o.push(r.eventType)),r.since&&(s.push("timestamp >= ?"),o.push(r.since));let n=r.limit??1e3,a=`SELECT event_type, payload, timestamp
26
+ VALUES (?, ?, ?, ?)`,[t,r.eventType,d(r),r.timestamp])}}function m(){return new f}let E=new f;function _(e,t){return E.createGraph(e,t)}function S(e){return E.getGraph(e)}function T(e,t,r){return E.updateNodeRuntime(e,t,r)}function k(e,t,r){return E.updateGraphStructure(e,t,r)}function R(e,t){return E.appendEvent(e,t)}function y(e,r={}){let s=["graph_id = ?"],o=[e];r.eventType&&(s.push("event_type = ?"),o.push(r.eventType)),r.since&&(s.push("timestamp >= ?"),o.push(r.since));let n=r.limit??1e3,a=`SELECT event_type, payload, timestamp
27
27
  FROM graph_events
28
28
  WHERE ${s.join(" AND ")}
29
29
  ORDER BY timestamp ASC, event_type ASC
@@ -33,15 +33,15 @@ module.exports=[18622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/ap
33
33
  AND json_extract(schedule, '$.rootMessageId') = ?
34
34
  AND json_extract(schedule, '$.state') = 'active'
35
35
  ORDER BY updated_at DESC
36
- LIMIT 1`).get(r)??null:null}function I(){return(0,t.getSQLiteDb)().prepare(`SELECT json_extract(schedule, '$.rootMessageId') AS rootMessageId
36
+ LIMIT 1`).get(r)??null:null}function v(){return(0,t.getSQLiteDb)().prepare(`SELECT json_extract(schedule, '$.rootMessageId') AS rootMessageId
37
37
  FROM execution_graphs
38
38
  WHERE schedule IS NOT NULL
39
- AND json_extract(schedule, '$.state') = 'active'`).all().map(e=>e.rootMessageId).filter(Boolean)}function v(e){let r=e.trim();return r?Number((0,t.getSQLiteDb)().prepare(`UPDATE execution_graphs
39
+ AND json_extract(schedule, '$.state') = 'active'`).all().map(e=>e.rootMessageId).filter(Boolean)}function I(e){let r=e.trim();return r?Number((0,t.getSQLiteDb)().prepare(`UPDATE execution_graphs
40
40
  SET schedule = json_set(schedule, '$.state', 'stopped', '$.tickInProgress', json('false')),
41
41
  updated_at = strftime('%Y-%m-%dT%H:%M:%fZ','now')
42
42
  WHERE schedule IS NOT NULL
43
43
  AND json_extract(schedule, '$.rootMessageId') = ?
44
- AND json_extract(schedule, '$.state') = 'active'`).run(r).changes??0):0}e.s(["GraphNodeNotFoundError",()=>a,"GraphNotFoundError",()=>n,"GraphStore",()=>f,"GraphTaskAlreadyBoundError",()=>i,"GraphVersionConflictError",()=>o,"appendEvent",()=>R,"createGraph",()=>_,"createGraphStore",()=>m,"deactivateSchedulesByRootMessageId",()=>v,"getActiveScheduleForRootMessageId",()=>x,"getActiveScheduleRootMessageIds",()=>I,"getGraph",()=>S,"getGraphEvents",()=>y,"updateGraphStructure",()=>T,"updateNodeRuntime",()=>k])},79042,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"]])},12057,(e,t,r)=>{t.exports=e.x("node:util",()=>require("node:util"))},60526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},36269,e=>{"use strict";var t=e.i(248);function r(e,t=Date.now()){let s=t=>({graph:e,tickFired:!1,resetNodeIds:[],skipReason:t});if(!e.schedule)return s("no_schedule");let o=e.schedule;if("active"!==o.state)return s("not_active");if(o.tickInProgress)return s("tick_in_progress");if(null!=o.maxRuns&&o.runCount>=o.maxRuns)return s("max_runs_reached");if(o.cronExpr&&"number"==typeof o.nextTickAt){if(t<o.nextTickAt)return s("not_due")}else if(t-(o.lastTickAt??0)<o.intervalMs)return s("not_due");let n=JSON.parse(JSON.stringify(e)),a=[];for(let e of o.resetNodeIds){let t=n.nodes[e];t&&("done"===t.status||"passed"===t.status||"failed"===t.status||"skipped"===t.status)&&(n.nodes[e]={...t,status:"pending",startedAt:void 0,completedAt:void 0,metrics:void 0,..."function"===t.type?{output:void 0}:{},..."conditional"===t.type?{evaluatedTo:void 0}:{}},a.push(e))}return n.schedule={...o,tickInProgress:!0,lastTickAt:t,runCount:o.runCount+1},{graph:n,tickFired:!0,resetNodeIds:a}}function s(e){if(!e.schedule||!e.schedule.tickInProgress)return e;let r=e.schedule,s=r.nextTickAt;return r.cronExpr&&(s=(0,t.computeNextTickFromCron)(r.cronExpr)),{...e,schedule:{...r,tickInProgress:!1,nextTickAt:s}}}function o(e){if(!e.schedule)return!0;let t=new Set(["done","passed","failed","skipped"]);for(let r of e.schedule.resetNodeIds){let s=e.nodes[r];if(s&&!t.has(s.status))return!1}return!0}function n(e,t=6e4,r){return{intervalMs:t,state:"active",resetNodeIds:e,maxRuns:r,runCount:0,tickInProgress:!1,createdAt:new Date().toISOString()}}e.s(["completeScheduleTick",()=>s,"createThreadMonitorSchedule",()=>n,"isScheduleTickComplete",()=>o,"scheduleTickIfDue",()=>r])},71080,e=>{"use strict";var t=e.i(60447),r=e.i(36269),s=e.i(248),o=e.i(33601),n=e.i(97812);function a(){return(0,t.getSQLiteDb)().prepare(`
44
+ AND json_extract(schedule, '$.state') = 'active'`).run(r).changes??0):0}e.s(["GraphNodeNotFoundError",()=>a,"GraphNotFoundError",()=>n,"GraphStore",()=>f,"GraphTaskAlreadyBoundError",()=>i,"GraphVersionConflictError",()=>o,"appendEvent",()=>R,"createGraph",()=>_,"createGraphStore",()=>m,"deactivateSchedulesByRootMessageId",()=>I,"getActiveScheduleForRootMessageId",()=>x,"getActiveScheduleRootMessageIds",()=>v,"getGraph",()=>S,"getGraphEvents",()=>y,"updateGraphStructure",()=>k,"updateNodeRuntime",()=>T])},79042,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"]])},12057,(e,t,r)=>{t.exports=e.x("node:util",()=>require("node:util"))},60526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},36269,e=>{"use strict";var t=e.i(248);function r(e,t=Date.now()){let s=t=>({graph:e,tickFired:!1,resetNodeIds:[],skipReason:t});if(!e.schedule)return s("no_schedule");let o=e.schedule;if("active"!==o.state)return s("not_active");if(o.tickInProgress)return s("tick_in_progress");if(null!=o.maxRuns&&o.runCount>=o.maxRuns)return s("max_runs_reached");if(o.cronExpr&&"number"==typeof o.nextTickAt){if(t<o.nextTickAt)return s("not_due")}else if(t-(o.lastTickAt??0)<o.intervalMs)return s("not_due");let n=JSON.parse(JSON.stringify(e)),a=[];for(let e of o.resetNodeIds){let t=n.nodes[e];t&&("done"===t.status||"passed"===t.status||"failed"===t.status||"skipped"===t.status)&&(n.nodes[e]={...t,status:"pending",startedAt:void 0,completedAt:void 0,metrics:void 0,..."function"===t.type?{output:void 0}:{},..."conditional"===t.type?{evaluatedTo:void 0}:{}},a.push(e))}return n.schedule={...o,tickInProgress:!0,lastTickAt:t,runCount:o.runCount+1},{graph:n,tickFired:!0,resetNodeIds:a}}function s(e){if(!e.schedule||!e.schedule.tickInProgress)return e;let r=e.schedule,s=r.nextTickAt;return r.cronExpr&&(s=(0,t.computeNextTickFromCron)(r.cronExpr)),{...e,schedule:{...r,tickInProgress:!1,nextTickAt:s}}}function o(e){if(!e.schedule)return!0;let t=new Set(["done","passed","failed","skipped"]);for(let r of e.schedule.resetNodeIds){let s=e.nodes[r];if(s&&!t.has(s.status))return!1}return!0}function n(e,t=6e4,r){return{intervalMs:t,state:"active",resetNodeIds:e,maxRuns:r,runCount:0,tickInProgress:!1,createdAt:new Date().toISOString()}}e.s(["completeScheduleTick",()=>s,"createThreadMonitorSchedule",()=>n,"isScheduleTickComplete",()=>o,"scheduleTickIfDue",()=>r])},71080,e=>{"use strict";var t=e.i(60447),r=e.i(36269),s=e.i(248),o=e.i(33601),n=e.i(97812);function a(){return(0,t.getSQLiteDb)().prepare(`
45
45
  SELECT task_id, id, schedule
46
46
  FROM execution_graphs
47
47
  WHERE schedule IS NOT NULL
@@ -58,6 +58,6 @@ If not done, message must be exactly one message that combines:
58
58
  - a brief assessment of what is done vs. not done
59
59
  - the concrete next steps for the team
60
60
 
61
- Do not produce separate status and instruction messages.`;function n(){return async(n,a)=>{let i=a.schedule?.rootMessageId;if(!i)return{status:"failure",message:"No rootMessageId on graph schedule"};console.log(`[work-dispatch] Dispatching steer node "${n.title}" for graph ${a.id} (root: ${i})`);try{let{getMessageThread:n,getThreadStatusSnapshot:a,sweepStaleWorkingReactions:d}=await e.A(18760),u=await n(i);if(!u)return{status:"failure",message:`Thread not found for rootMessageId: ${i}`};await d(u.threadId);let l=await a({threadId:u.threadId,rootMessageId:i}),c=l.processes.filter(e=>"working"===e.status).length,p=(l.messages??[]).slice(-10).map(e=>{let t=e.participantId??e.role??"?",r=(e.content??"").slice(0,300);return`[${t}]: ${r}`}).join("\n");console.log(`[work-dispatch] Thread: active=${c}, msgs=${l.messages?.length??0}`);let h=["--- THREAD STATE ---",`Active agents: ${c}`,`Total messages: ${l.messages?.length??0}`,"\nRecent messages:",p,"--- END THREAD STATE ---\n\nAssess the progress and respond with the JSON object."].join("\n"),{runCliResponse:g}=await e.A(31259),f=function(e){switch(e){case"claude":case"gemini":case"ollama":case"codex":case"zai":return e;default:return"claude"}}(function(){try{let e=(0,r.join)((0,s.homedir)(),".agx","config.json");return JSON.parse((0,t.readFileSync)(e,"utf8")).defaultProvider??"claude"}catch{return"claude"}}());console.log(`[work-dispatch] Calling ${f} via runCliResponse (prompt length: ${h.length})...`);let m="";await g({provider:f,model:null,prompt:h,systemContext:o,onDelta:e=>{m+=e},onLog:(e,t)=>{console.log(`[work-dispatch] [${e}] ${t}`)}}),console.log(`[work-dispatch] Raw response: ${m.slice(0,500)}`);let E=function(e){let t=e.match(/\{[\s\S]*?"isDone"\s*:\s*(true|false)[\s\S]*?\}/);if(t)try{let e=JSON.parse(t[0]);return{isDone:!!e.isDone,message:String(e.message??"")}}catch{}return e.includes("[done]")?{isDone:!0,message:e}:{isDone:!1,message:e}}(m.trim());return console.log("[work-dispatch] Parsed result:",E),{status:"success",output:E}}catch(e){return console.error("[work-dispatch] Steer dispatch failed:",e),{status:"failure",message:e instanceof Error?e.message:String(e),error:e}}}}e.s(["createDispatchWork",()=>n])},30995,e=>{"use strict";var t=e.i(47909),r=e.i(74017),s=e.i(96250),o=e.i(59756),n=e.i(61916),a=e.i(74677),i=e.i(69741),d=e.i(16795),u=e.i(87718),l=e.i(95169),c=e.i(47587),p=e.i(66012),h=e.i(70101),g=e.i(74838),f=e.i(10372),m=e.i(93695);e.i(52474);var E=e.i(220),_=e.i(94028),S=e.i(71080),k=e.i(26057),T=e.i(97127);async function R(e){try{let t=await e.json().catch(()=>({})),r=(0,k.createDispatchFunction)(),s=(0,T.createDispatchWork)();if(t.taskId){let e=await (0,S.executeScheduleTick)(t.taskId,{dispatchFunction:r,dispatchWork:s});return _.NextResponse.json({success:e.fired,taskId:t.taskId,error:e.error?.message??null})}let o=await (0,S.pollSchedules)({dispatchFunction:r,dispatchWork:s});return _.NextResponse.json({success:!0,tickedGraphIds:o.tickedGraphIds,skippedGraphIds:o.skippedGraphIds,errorCount:o.errors.length,errors:o.errors.length>0?o.errors.map(e=>({graphId:e.graphId,message:e.error.message})):void 0})}catch(e){return console.error("Schedule poll error:",e),_.NextResponse.json({error:"Failed to poll schedules",message:e instanceof Error?e.message:String(e)},{status:500})}}async function y(){try{let{getGraphsWithActiveSchedules:t}=await e.A(84511),r=t();return _.NextResponse.json({count:r.length,schedules:r.map(e=>({taskId:e.taskId,graphId:e.graphId,state:e.schedule.state,intervalMs:e.schedule.intervalMs,runCount:e.schedule.runCount,lastTickAt:e.schedule.lastTickAt,tickInProgress:e.schedule.tickInProgress}))})}catch(e){return console.error("Failed to list schedules:",e),_.NextResponse.json({error:"Failed to list schedules"},{status:500})}}e.s(["GET",()=>y,"POST",()=>R,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],16548);var x=e.i(16548);let I=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/schedules/poll/route",pathname:"/api/schedules/poll",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/schedules/poll/route.ts",nextConfigOutput:"standalone",userland:x}),{workAsyncStorage:v,workUnitAsyncStorage:w,serverHooks:A}=I;function N(){return(0,s.patchFetch)({workAsyncStorage:v,workUnitAsyncStorage:w})}async function $(e,t,s){I.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let _="/api/schedules/poll/route";_=_.replace(/\/index$/,"")||"/";let S=await I.prepare(e,t,{srcPage:_,multiZoneDraftMode:!1});if(!S)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:k,params:T,nextConfig:R,parsedUrl:y,isDraftMode:x,prerenderManifest:v,routerServerContext:w,isOnDemandRevalidate:A,revalidateOnlyGenerated:N,resolvedPathname:$,clientReferenceManifest:C,serverActionsManifest:O}=S,D=(0,i.normalizeAppPath)(_),b=!!(v.dynamicRoutes[D]||v.routes[$]),L=async()=>((null==w?void 0:w.render404)?await w.render404(e,t,y,!1):t.end("This page could not be found"),null);if(b&&!x){let e=!!v.routes[$],t=v.dynamicRoutes[D];if(t&&!1===t.fallback&&!e){if(R.experimental.adapterPath)return await L();throw new m.NoFallbackError}}let M=null;!b||I.isDev||x||(M="/index"===(M=$)?"/":M);let j=!0===I.isDev||!b,G=b&&!j;O&&C&&(0,a.setManifestsSingleton)({page:_,clientReferenceManifest:C,serverActionsManifest:O});let q=e.method||"GET",F=(0,n.getTracer)(),U=F.getActiveScopeSpan(),P={params:T,prerenderManifest:v,renderOpts:{experimental:{authInterrupts:!!R.experimental.authInterrupts},cacheComponents:!!R.cacheComponents,supportsDynamicResponse:j,incrementalCache:(0,o.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:R.cacheLife,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,o)=>I.onRequestError(e,t,s,o,w)},sharedContext:{buildId:k}},H=new d.NodeNextRequest(e),B=new d.NodeNextResponse(t),W=u.NextRequestAdapter.fromNodeNextRequest(H,(0,u.signalFromNodeResponse)(t));try{let a=async e=>I.handle(W,P).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")!==l.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 s=r.get("next.route");if(s){let t=`${q} ${s}`;e.setAttributes({"next.route":s,"http.route":s,"next.span_name":t}),e.updateName(t)}else e.updateName(`${q} ${_}`)}),i=!!(0,o.getRequestMeta)(e,"minimalMode"),d=async o=>{var n,d;let u=async({previousCacheEntry:r})=>{try{if(!i&&A&&N&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await a(o);e.fetchMetrics=P.renderOpts.fetchMetrics;let d=P.renderOpts.pendingWaitUntil;d&&s.waitUntil&&(s.waitUntil(d),d=void 0);let u=P.renderOpts.collectedTags;if(!b)return await (0,p.sendResponse)(H,B,n,P.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(n.headers);u&&(t[f.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==P.renderOpts.collectedRevalidate&&!(P.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&P.renderOpts.collectedRevalidate,s=void 0===P.renderOpts.collectedExpire||P.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:P.renderOpts.collectedExpire;return{value:{kind:E.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:s}}}}catch(t){throw(null==r?void 0:r.isStale)&&await I.onRequestError(e,t,{routerKind:"App Router",routePath:_,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:G,isOnDemandRevalidate:A})},!1,w),t}},l=await I.handleResponse({req:e,nextConfig:R,cacheKey:M,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:v,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:N,responseGenerator:u,waitUntil:s.waitUntil,isMinimalMode:i});if(!b)return null;if((null==l||null==(n=l.value)?void 0:n.kind)!==E.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(d=l.value)?void 0:d.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",A?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),x&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,h.fromNodeOutgoingHttpHeaders)(l.value.headers);return i&&b||m.delete(f.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,g.getCacheControlHeader)(l.cacheControl)),await (0,p.sendResponse)(H,B,new Response(l.value.body,{headers:m,status:l.value.status||200})),null};U?await d(U):await F.withPropagatedContext(e.headers,()=>F.trace(l.BaseServerSpan.handleRequest,{spanName:`${q} ${_}`,kind:n.SpanKind.SERVER,attributes:{"http.method":q,"http.target":e.url}},d))}catch(t){if(t instanceof m.NoFallbackError||await I.onRequestError(e,t,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:G,isOnDemandRevalidate:A})},!1,w),b)throw t;return await (0,p.sendResponse)(H,B,new Response(null,{status:500})),null}}e.s(["handler",()=>$,"patchFetch",()=>N,"routeModule",()=>I,"serverHooks",()=>A,"workAsyncStorage",()=>v,"workUnitAsyncStorage",()=>w],30995)},82848,e=>{e.v(e=>Promise.resolve().then(()=>e(74533)))},97757,e=>{e.v(e=>Promise.resolve().then(()=>e(26057)))},18801,e=>{e.v(e=>Promise.resolve().then(()=>e(60447)))},18760,e=>{e.v(t=>Promise.all(["server/chunks/lib_history-store_ts_2e721df2._.js"].map(t=>e.l(t))).then(()=>t(42639)))},32025,e=>{e.v(e=>Promise.resolve().then(()=>e(97812)))},31259,e=>{e.v(t=>Promise.all(["server/chunks/lib_87c06aeb._.js"].map(t=>e.l(t))).then(()=>t(14350)))},84511,e=>{e.v(e=>Promise.resolve().then(()=>e(71080)))}];
61
+ Do not produce separate status and instruction messages.`;function n(){return async(n,a)=>{let i=a.schedule?.rootMessageId;if(!i)return{status:"failure",message:"No rootMessageId on graph schedule"};console.log(`[work-dispatch] Dispatching steer node "${n.title}" for graph ${a.id} (root: ${i})`);try{let{getMessageThread:n,getThreadStatusSnapshot:a,sweepStaleWorkingReactions:d}=await e.A(18760),u=await n(i);if(!u)return{status:"failure",message:`Thread not found for rootMessageId: ${i}`};await d(u.threadId);let l=await a({threadId:u.threadId,rootMessageId:i}),c=l.processes.filter(e=>"working"===e.status).length,p=(l.messages??[]).slice(-10).map(e=>{let t=e.participantId??e.role??"?",r=(e.content??"").slice(0,300);return`[${t}]: ${r}`}).join("\n");console.log(`[work-dispatch] Thread: active=${c}, msgs=${l.messages?.length??0}`);let h=["--- THREAD STATE ---",`Active agents: ${c}`,`Total messages: ${l.messages?.length??0}`,"\nRecent messages:",p,"--- END THREAD STATE ---\n\nAssess the progress and respond with the JSON object."].join("\n"),{runCliResponse:g}=await e.A(31259),f=function(e){switch(e){case"claude":case"gemini":case"ollama":case"codex":case"zai":return e;default:return"claude"}}(function(){try{let e=(0,r.join)((0,s.homedir)(),".agx","config.json");return JSON.parse((0,t.readFileSync)(e,"utf8")).defaultProvider??"claude"}catch{return"claude"}}());console.log(`[work-dispatch] Calling ${f} via runCliResponse (prompt length: ${h.length})...`);let m="";await g({provider:f,model:null,prompt:h,systemContext:o,onDelta:e=>{m+=e},onLog:(e,t)=>{console.log(`[work-dispatch] [${e}] ${t}`)}}),console.log(`[work-dispatch] Raw response: ${m.slice(0,500)}`);let E=function(e){let t=e.match(/\{[\s\S]*?"isDone"\s*:\s*(true|false)[\s\S]*?\}/);if(t)try{let e=JSON.parse(t[0]);return{isDone:!!e.isDone,message:String(e.message??"")}}catch{}return e.includes("[done]")?{isDone:!0,message:e}:{isDone:!1,message:e}}(m.trim());return console.log("[work-dispatch] Parsed result:",E),{status:"success",output:E}}catch(e){return console.error("[work-dispatch] Steer dispatch failed:",e),{status:"failure",message:e instanceof Error?e.message:String(e),error:e}}}}e.s(["createDispatchWork",()=>n])},30995,e=>{"use strict";var t=e.i(47909),r=e.i(74017),s=e.i(96250),o=e.i(59756),n=e.i(61916),a=e.i(74677),i=e.i(69741),d=e.i(16795),u=e.i(87718),l=e.i(95169),c=e.i(47587),p=e.i(66012),h=e.i(70101),g=e.i(74838),f=e.i(10372),m=e.i(93695);e.i(52474);var E=e.i(220),_=e.i(94028),S=e.i(71080),T=e.i(26057),k=e.i(97127);async function R(e){try{let t=await e.json().catch(()=>({})),r=(0,T.createDispatchFunction)(),s=(0,k.createDispatchWork)();if(t.taskId){let e=await (0,S.executeScheduleTick)(t.taskId,{dispatchFunction:r,dispatchWork:s});return _.NextResponse.json({success:e.fired,taskId:t.taskId,error:e.error?.message??null})}let o=await (0,S.pollSchedules)({dispatchFunction:r,dispatchWork:s});return _.NextResponse.json({success:!0,tickedGraphIds:o.tickedGraphIds,skippedGraphIds:o.skippedGraphIds,errorCount:o.errors.length,errors:o.errors.length>0?o.errors.map(e=>({graphId:e.graphId,message:e.error.message})):void 0})}catch(e){return console.error("Schedule poll error:",e),_.NextResponse.json({error:"Failed to poll schedules",message:e instanceof Error?e.message:String(e)},{status:500})}}async function y(){try{let{getGraphsWithActiveSchedules:t}=await e.A(84511),r=t();return _.NextResponse.json({count:r.length,schedules:r.map(e=>({taskId:e.taskId,graphId:e.graphId,state:e.schedule.state,intervalMs:e.schedule.intervalMs,runCount:e.schedule.runCount,lastTickAt:e.schedule.lastTickAt,tickInProgress:e.schedule.tickInProgress}))})}catch(e){return console.error("Failed to list schedules:",e),_.NextResponse.json({error:"Failed to list schedules"},{status:500})}}e.s(["GET",()=>y,"POST",()=>R,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],16548);var x=e.i(16548);let v=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/schedules/poll/route",pathname:"/api/schedules/poll",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/schedules/poll/route.ts",nextConfigOutput:"standalone",userland:x}),{workAsyncStorage:I,workUnitAsyncStorage:w,serverHooks:A}=v;function N(){return(0,s.patchFetch)({workAsyncStorage:I,workUnitAsyncStorage:w})}async function $(e,t,s){v.isDev&&(0,o.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let _="/api/schedules/poll/route";_=_.replace(/\/index$/,"")||"/";let S=await v.prepare(e,t,{srcPage:_,multiZoneDraftMode:!1});if(!S)return t.statusCode=400,t.end("Bad Request"),null==s.waitUntil||s.waitUntil.call(s,Promise.resolve()),null;let{buildId:T,params:k,nextConfig:R,parsedUrl:y,isDraftMode:x,prerenderManifest:I,routerServerContext:w,isOnDemandRevalidate:A,revalidateOnlyGenerated:N,resolvedPathname:$,clientReferenceManifest:C,serverActionsManifest:O}=S,D=(0,i.normalizeAppPath)(_),b=!!(I.dynamicRoutes[D]||I.routes[$]),L=async()=>((null==w?void 0:w.render404)?await w.render404(e,t,y,!1):t.end("This page could not be found"),null);if(b&&!x){let e=!!I.routes[$],t=I.dynamicRoutes[D];if(t&&!1===t.fallback&&!e){if(R.experimental.adapterPath)return await L();throw new m.NoFallbackError}}let M=null;!b||v.isDev||x||(M="/index"===(M=$)?"/":M);let j=!0===v.isDev||!b,G=b&&!j;O&&C&&(0,a.setManifestsSingleton)({page:_,clientReferenceManifest:C,serverActionsManifest:O});let q=e.method||"GET",F=(0,n.getTracer)(),U=F.getActiveScopeSpan(),P={params:k,prerenderManifest:I,renderOpts:{experimental:{authInterrupts:!!R.experimental.authInterrupts},cacheComponents:!!R.cacheComponents,supportsDynamicResponse:j,incrementalCache:(0,o.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:R.cacheLife,waitUntil:s.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,s,o)=>v.onRequestError(e,t,s,o,w)},sharedContext:{buildId:T}},H=new d.NodeNextRequest(e),B=new d.NodeNextResponse(t),W=u.NextRequestAdapter.fromNodeNextRequest(H,(0,u.signalFromNodeResponse)(t));try{let a=async e=>v.handle(W,P).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")!==l.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 s=r.get("next.route");if(s){let t=`${q} ${s}`;e.setAttributes({"next.route":s,"http.route":s,"next.span_name":t}),e.updateName(t)}else e.updateName(`${q} ${_}`)}),i=!!(0,o.getRequestMeta)(e,"minimalMode"),d=async o=>{var n,d;let u=async({previousCacheEntry:r})=>{try{if(!i&&A&&N&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await a(o);e.fetchMetrics=P.renderOpts.fetchMetrics;let d=P.renderOpts.pendingWaitUntil;d&&s.waitUntil&&(s.waitUntil(d),d=void 0);let u=P.renderOpts.collectedTags;if(!b)return await (0,p.sendResponse)(H,B,n,P.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,h.toNodeOutgoingHttpHeaders)(n.headers);u&&(t[f.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==P.renderOpts.collectedRevalidate&&!(P.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&P.renderOpts.collectedRevalidate,s=void 0===P.renderOpts.collectedExpire||P.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:P.renderOpts.collectedExpire;return{value:{kind:E.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:s}}}}catch(t){throw(null==r?void 0:r.isStale)&&await v.onRequestError(e,t,{routerKind:"App Router",routePath:_,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:G,isOnDemandRevalidate:A})},!1,w),t}},l=await v.handleResponse({req:e,nextConfig:R,cacheKey:M,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:I,isRoutePPREnabled:!1,isOnDemandRevalidate:A,revalidateOnlyGenerated:N,responseGenerator:u,waitUntil:s.waitUntil,isMinimalMode:i});if(!b)return null;if((null==l||null==(n=l.value)?void 0:n.kind)!==E.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(d=l.value)?void 0:d.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",A?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),x&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,h.fromNodeOutgoingHttpHeaders)(l.value.headers);return i&&b||m.delete(f.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,g.getCacheControlHeader)(l.cacheControl)),await (0,p.sendResponse)(H,B,new Response(l.value.body,{headers:m,status:l.value.status||200})),null};U?await d(U):await F.withPropagatedContext(e.headers,()=>F.trace(l.BaseServerSpan.handleRequest,{spanName:`${q} ${_}`,kind:n.SpanKind.SERVER,attributes:{"http.method":q,"http.target":e.url}},d))}catch(t){if(t instanceof m.NoFallbackError||await v.onRequestError(e,t,{routerKind:"App Router",routePath:D,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:G,isOnDemandRevalidate:A})},!1,w),b)throw t;return await (0,p.sendResponse)(H,B,new Response(null,{status:500})),null}}e.s(["handler",()=>$,"patchFetch",()=>N,"routeModule",()=>v,"serverHooks",()=>A,"workAsyncStorage",()=>I,"workUnitAsyncStorage",()=>w],30995)},82848,e=>{e.v(e=>Promise.resolve().then(()=>e(74533)))},97757,e=>{e.v(e=>Promise.resolve().then(()=>e(26057)))},18801,e=>{e.v(e=>Promise.resolve().then(()=>e(60447)))},18760,e=>{e.v(t=>Promise.all(["server/chunks/lib_history-store_ts_2e721df2._.js"].map(t=>e.l(t))).then(()=>t(42639)))},32025,e=>{e.v(e=>Promise.resolve().then(()=>e(97812)))},31259,e=>{e.v(t=>Promise.all(["server/chunks/lib_87c06aeb._.js"].map(t=>e.l(t))).then(()=>t(14350)))},84511,e=>{e.v(e=>Promise.resolve().then(()=>e(71080)))}];
62
62
 
63
63
  //# sourceMappingURL=%5Broot-of-the-server%5D__8125bbc3._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[18622,(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"))},56704,(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"))},32319,(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"))},24725,(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"))},93695,(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"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},59833,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 s(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function o(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",()=>s,"transactionFn",()=>o])},33405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},49041,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])},21729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(59833),r=e.i(22734),n=e.i(46786),s=e.i(14747);let o="3.35.0",a=["json1"],i=["fts5"],u=["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 g=[],p=l.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),n=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(n[e]||0);if(0!==t)return t}return 0}(p.v,o)&&g.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${o}`,found:p.v,required:`>= ${o}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),a))c(l,e)||g.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 f=function(t){"linux"!==n.default.platform()&&n.default.platform();try{let o=s.default.resolve(t),{execSync:a}=e.r(33405);if("darwin"===n.default.platform());else{let e=r.default.readFileSync("/proc/mounts","utf-8"),t="",n="unknown";for(let r of e.split("\n")){let[,e,s]=r.split(/\s+/);e&&o.startsWith(e)&&e.length>t.length&&(t=e,n=s||"unknown")}return n}}catch{}return null}(d);f&&u.some(e=>f.toLowerCase().includes(e))&&g.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)(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`)):g.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){g.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 g}e.s(["validateSQLiteEnvironment",()=>l])},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},57431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(60447);return t()}e.i(49041),e.s(["createAdminDbClient",()=>t])},82341,e=>{"use strict";var t=e.i(62294),r=e.i(60447);class n extends Error{constraint;detail;constructor(e,t){super(e),this.name="ConflictError",this.constraint=t?.constraint,this.detail=t?.detail}}class s extends Error{code;constructor(e,t){super(e),this.name="RetryableError",this.code=t}}class o extends Error{expectedVersion;actualVersion;entityId;entityType;constructor(e,t,r,n){super(void 0!==n?`Concurrent modification on ${e} ${t}: expected version ${r}, found ${n}`:`Concurrent modification on ${e} ${t}: expected version ${r}, row not updated`),this.name="ConcurrentModificationError",this.entityType=e,this.entityId=t,this.expectedVersion=r,this.actualVersion=n}}function a(e){if(!(e instanceof Error))throw e;let t=e.code??"",r=e.message??"";if("SQLITE_CONSTRAINT_UNIQUE"===t||"SQLITE_CONSTRAINT_PRIMARYKEY"===t||"SQLITE_CONSTRAINT"===t&&(r.includes("UNIQUE")||r.includes("PRIMARY KEY"))||r.includes("UNIQUE constraint failed")||r.includes("PRIMARY KEY constraint failed")){let e=r.match(/(?:UNIQUE|PRIMARY KEY) constraint failed: (.+)/);throw new n(r,{constraint:e?.[1],detail:r})}if("SQLITE_BUSY"===t||"SQLITE_LOCKED"===t||r.includes("database is locked"))throw new s(r,t||"SQLITE_BUSY");throw e}async function i(e){try{return await e()}catch(e){if(e instanceof n||e instanceof s||e instanceof o)throw e;a(e)}}class u{async transaction(e){let t=(0,r.getSQLiteDb)();t.exec("BEGIN IMMEDIATE");try{let r=await e(t);return t.exec("COMMIT"),r}catch(e){try{t.exec("ROLLBACK")}catch{}if(e instanceof n||e instanceof s||e instanceof o)throw e;a(e)}}getTasks(e,r){return t.getTasks(e,r)}getTask(e,r){return t.getTask(e,r)}getTaskBySlug(e,r){return t.getTaskBySlug(e,r)}createTask(e,r,n){return i(()=>t.createTask(e,r,n))}async updateTask(e,n,s,a){let u=a?.expectedVersion;if(void 0!==u){let c=(0,r.getSQLiteDb)();if(0===c.prepare("UPDATE tasks SET version = version + 1 WHERE id = ? AND version = ?").run(e,u).changes){let t=c.prepare("SELECT version FROM tasks WHERE id = ?").get(e);throw new o("task",e,u,t?.version)}let{expectedVersion:l,...d}=a??{};return i(()=>t.updateTask(e,n,s,d))}return(0,r.getSQLiteDb)().prepare("UPDATE tasks SET version = version + 1 WHERE id = ?").run(e),i(()=>t.updateTask(e,n,s,a))}appendRunToIndex(e,r,n){return t.appendRunToIndex(e,r,n)}deleteTask(e,r){return i(()=>t.deleteTask(e,r))}getNextQueuedTask(e){return t.getNextQueuedTask(e)}ensureNoCircularDependency(e,r,n){return t.ensureNoCircularDependency(e,r,n)}getProjects(e){return t.getProjects(e)}getProjectBySlug(e,r){return t.getProjectBySlug(e,r)}getProjectRepos(e){return t.getProjectRepos(e)}getProjectWithRepos(e,r){return t.getProjectWithRepos(e,r)}createProject(e,r,n){return i(()=>t.createProject(e,r,n))}updateProject(e,r,n,s){return t.updateProject(e,r,n,s)}deleteProject(e,r,n){return i(()=>t.deleteProject(e,r,n))}assignOrphanTasksToProject(e,r,n){return t.assignOrphanTasksToProject(e,r,n)}getWorkflows(e){return t.getWorkflows(e)}getWorkflow(e,r){return t.getWorkflow(e,r)}updateWorkflow(e,r,n){return t.updateWorkflow(e,r,n)}getWorkflowNodes(e){return t.getWorkflowNodes(e)}updateWorkflowNodes(e,r,n){return t.updateWorkflowNodes(e,r,n)}getWorkflowNodeByName(e,r){return t.getWorkflowNodeByName(e,r)}getWorkflowTransitions(e){return t.getWorkflowTransitions(e)}getWorkflowTransitionsFromNode(e,r){return t.getWorkflowTransitionsFromNode(e,r)}getWorkflowWithGraph(e,r){return t.getWorkflowWithGraph(e,r)}getTaskLogs(e,r){return t.getTaskLogs(e,r)}addTaskLog(e,r,n,s){return i(()=>t.addTaskLog(e,r,n,s))}addTaskCostEntry(e){return i(()=>t.addTaskCostEntry(e))}getTaskCostEntries(e){return t.getTaskCostEntries(e)}getTaskCostSummary(e){return t.getTaskCostSummary(e)}getTaskComments(e){return t.getTaskComments(e)}addTaskComment(e,r,n,s){return i(()=>t.addTaskComment(e,r,n,s))}deleteTaskComment(e,r){return i(()=>t.deleteTaskComment(e,r))}getLearnings(e,r,n){return t.getLearnings(e,r,n)}addLearning(e,r,n,s){return i(()=>t.addLearning(e,r,n,s))}deleteLearning(e,r){return i(()=>t.deleteLearning(e,r))}getStagePrompts(e,r){return t.getStagePrompts(e,r)}getStagePrompt(e,r,n){return t.getStagePrompt(e,r,n)}upsertStagePrompt(e,r,n,s,o,a){return i(()=>t.upsertStagePrompt(e,r,n,s,o,a))}deleteStagePrompt(e,r){return t.deleteStagePrompt(e,r)}getAgents(e){return t.getAgents(e)}getAgent(e,r){return t.getAgent(e,r)}createAgent(e,r){return i(()=>t.createAgent(e,r))}updateAgent(e,r,n){return t.updateAgent(e,r,n)}deleteAgent(e,r){return t.deleteAgent(e,r)}getProjectAgents(e){return t.getProjectAgents(e)}addProjectAgent(e,r,n){return i(()=>t.addProjectAgent(e,r,n))}removeProjectAgent(e,r){return t.removeProjectAgent(e,r)}reorderProjectAgents(e,r){return t.reorderProjectAgents(e,r)}getProjectSkills(e){return t.getProjectSkills(e)}addProjectSkill(e,r,n){return i(()=>t.addProjectSkill(e,r,n))}removeProjectSkill(e){return t.removeProjectSkill(e)}getProjectVariables(e){return t.getProjectVariables(e)}setProjectVariable(e,r,n){return i(()=>t.setProjectVariable(e,r,n))}deleteProjectVariable(e,r){return t.deleteProjectVariable(e,r)}getProjectMemory(e,r){return t.getProjectMemory(e,r)}addProjectMemory(e,r,n,s){return i(()=>t.addProjectMemory(e,r,n,s))}deleteProjectMemory(e){return t.deleteProjectMemory(e)}getProjectThreads(e){return t.getProjectThreads(e)}addProjectThread(e,r){return i(()=>t.addProjectThread(e,r))}removeProjectThread(e,r){return t.removeProjectThread(e,r)}getProjectForThread(e){return t.getProjectForThread(e)}getUserSettings(e){return t.getUserSettings(e)}upsertUserSettings(e,r,n){return i(()=>t.upsertUserSettings(e,r,n))}async healthCheck(){let e=performance.now();try{return(0,r.getSQLiteDb)().prepare("SELECT 1").get(),{adapter:"sqlite",connected:!0,latencyMs:Math.round(performance.now()-e)}}catch{return{adapter:"sqlite",connected:!1,latencyMs:Math.round(performance.now()-e)}}}}e.s(["SQLiteAdapter",()=>u],82341)},90081,e=>{"use strict";let t=function(){let{SQLiteAdapter:t}=e.r(82341);return new t}();e.s(["db",0,t])}];
1
+ module.exports=[18622,(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"))},56704,(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"))},32319,(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"))},24725,(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"))},93695,(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"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},59833,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 s(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function o(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",()=>s,"transactionFn",()=>o])},33405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},49041,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])},21729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(59833);e.i(22734);var r=e.i(46786),n=e.i(14747);let s="3.35.0",o=["json1"],a=["fts5"],i=["nfs","smb","cifs","efs","fuse.sshfs"];function u(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function c(c,l){let d=[],g=c.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),n=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(n[e]||0);if(0!==t)return t}return 0}(g.v,s)&&d.push({kind:"version_mismatch",message:`SQLite version ${g.v} is below minimum ${s}`,found:g.v,required:`>= ${s}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),o))u(c,e)||d.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of a)u(c,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let p=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let s=n.default.resolve(t),{execSync:o}=e.r(33405);if("darwin"===r.default.platform()){let e=o(`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}(l);p&&i.some(e=>p.toLowerCase().includes(e))&&d.push({kind:"filesystem_error",message:`Database path '${l}' is on a network filesystem (${p})`,path:l,found:p,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(c,"journal_mode = wal"),(0,t.pragmaSet)(c,"foreign_keys = 1"),(0,t.pragmaSet)(c,"busy_timeout = 5000"),(0,t.pragmaSet)(c,"synchronous = 1"),(0,t.pragmaSet)(c,"cache_size = -64000");let e=(0,t.pragmaGet)(c,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(c,"journal_mode = DELETE");let e=(0,t.pragmaGet)(c,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(c,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):d.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){d.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return d}e.s(["validateSQLiteEnvironment",()=>c])},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},57431,e=>{"use strict";function t(){let{createAdminDbClientSQLite:t}=e.r(60447);return t()}e.i(49041),e.s(["createAdminDbClient",()=>t])},82341,e=>{"use strict";var t=e.i(62294),r=e.i(60447);class n extends Error{constraint;detail;constructor(e,t){super(e),this.name="ConflictError",this.constraint=t?.constraint,this.detail=t?.detail}}class s extends Error{code;constructor(e,t){super(e),this.name="RetryableError",this.code=t}}class o extends Error{expectedVersion;actualVersion;entityId;entityType;constructor(e,t,r,n){super(void 0!==n?`Concurrent modification on ${e} ${t}: expected version ${r}, found ${n}`:`Concurrent modification on ${e} ${t}: expected version ${r}, row not updated`),this.name="ConcurrentModificationError",this.entityType=e,this.entityId=t,this.expectedVersion=r,this.actualVersion=n}}function a(e){if(!(e instanceof Error))throw e;let t=e.code??"",r=e.message??"";if("SQLITE_CONSTRAINT_UNIQUE"===t||"SQLITE_CONSTRAINT_PRIMARYKEY"===t||"SQLITE_CONSTRAINT"===t&&(r.includes("UNIQUE")||r.includes("PRIMARY KEY"))||r.includes("UNIQUE constraint failed")||r.includes("PRIMARY KEY constraint failed")){let e=r.match(/(?:UNIQUE|PRIMARY KEY) constraint failed: (.+)/);throw new n(r,{constraint:e?.[1],detail:r})}if("SQLITE_BUSY"===t||"SQLITE_LOCKED"===t||r.includes("database is locked"))throw new s(r,t||"SQLITE_BUSY");throw e}async function i(e){try{return await e()}catch(e){if(e instanceof n||e instanceof s||e instanceof o)throw e;a(e)}}class u{async transaction(e){let t=(0,r.getSQLiteDb)();t.exec("BEGIN IMMEDIATE");try{let r=await e(t);return t.exec("COMMIT"),r}catch(e){try{t.exec("ROLLBACK")}catch{}if(e instanceof n||e instanceof s||e instanceof o)throw e;a(e)}}getTasks(e,r){return t.getTasks(e,r)}getTask(e,r){return t.getTask(e,r)}getTaskBySlug(e,r){return t.getTaskBySlug(e,r)}createTask(e,r,n){return i(()=>t.createTask(e,r,n))}async updateTask(e,n,s,a){let u=a?.expectedVersion;if(void 0!==u){let c=(0,r.getSQLiteDb)();if(0===c.prepare("UPDATE tasks SET version = version + 1 WHERE id = ? AND version = ?").run(e,u).changes){let t=c.prepare("SELECT version FROM tasks WHERE id = ?").get(e);throw new o("task",e,u,t?.version)}let{expectedVersion:l,...d}=a??{};return i(()=>t.updateTask(e,n,s,d))}return(0,r.getSQLiteDb)().prepare("UPDATE tasks SET version = version + 1 WHERE id = ?").run(e),i(()=>t.updateTask(e,n,s,a))}appendRunToIndex(e,r,n){return t.appendRunToIndex(e,r,n)}deleteTask(e,r){return i(()=>t.deleteTask(e,r))}getNextQueuedTask(e){return t.getNextQueuedTask(e)}ensureNoCircularDependency(e,r,n){return t.ensureNoCircularDependency(e,r,n)}getProjects(e){return t.getProjects(e)}getProjectBySlug(e,r){return t.getProjectBySlug(e,r)}getProjectRepos(e){return t.getProjectRepos(e)}getProjectWithRepos(e,r){return t.getProjectWithRepos(e,r)}createProject(e,r,n){return i(()=>t.createProject(e,r,n))}updateProject(e,r,n,s){return t.updateProject(e,r,n,s)}deleteProject(e,r,n){return i(()=>t.deleteProject(e,r,n))}assignOrphanTasksToProject(e,r,n){return t.assignOrphanTasksToProject(e,r,n)}getWorkflows(e){return t.getWorkflows(e)}getWorkflow(e,r){return t.getWorkflow(e,r)}updateWorkflow(e,r,n){return t.updateWorkflow(e,r,n)}getWorkflowNodes(e){return t.getWorkflowNodes(e)}updateWorkflowNodes(e,r,n){return t.updateWorkflowNodes(e,r,n)}getWorkflowNodeByName(e,r){return t.getWorkflowNodeByName(e,r)}getWorkflowTransitions(e){return t.getWorkflowTransitions(e)}getWorkflowTransitionsFromNode(e,r){return t.getWorkflowTransitionsFromNode(e,r)}getWorkflowWithGraph(e,r){return t.getWorkflowWithGraph(e,r)}getTaskLogs(e,r){return t.getTaskLogs(e,r)}addTaskLog(e,r,n,s){return i(()=>t.addTaskLog(e,r,n,s))}addTaskCostEntry(e){return i(()=>t.addTaskCostEntry(e))}getTaskCostEntries(e){return t.getTaskCostEntries(e)}getTaskCostSummary(e){return t.getTaskCostSummary(e)}getTaskComments(e){return t.getTaskComments(e)}addTaskComment(e,r,n,s){return i(()=>t.addTaskComment(e,r,n,s))}deleteTaskComment(e,r){return i(()=>t.deleteTaskComment(e,r))}getLearnings(e,r,n){return t.getLearnings(e,r,n)}addLearning(e,r,n,s){return i(()=>t.addLearning(e,r,n,s))}deleteLearning(e,r){return i(()=>t.deleteLearning(e,r))}getStagePrompts(e,r){return t.getStagePrompts(e,r)}getStagePrompt(e,r,n){return t.getStagePrompt(e,r,n)}upsertStagePrompt(e,r,n,s,o,a){return i(()=>t.upsertStagePrompt(e,r,n,s,o,a))}deleteStagePrompt(e,r){return t.deleteStagePrompt(e,r)}getAgents(e){return t.getAgents(e)}getAgent(e,r){return t.getAgent(e,r)}createAgent(e,r){return i(()=>t.createAgent(e,r))}updateAgent(e,r,n){return t.updateAgent(e,r,n)}deleteAgent(e,r){return t.deleteAgent(e,r)}getProjectAgents(e){return t.getProjectAgents(e)}addProjectAgent(e,r,n){return i(()=>t.addProjectAgent(e,r,n))}removeProjectAgent(e,r){return t.removeProjectAgent(e,r)}reorderProjectAgents(e,r){return t.reorderProjectAgents(e,r)}getProjectSkills(e){return t.getProjectSkills(e)}addProjectSkill(e,r,n){return i(()=>t.addProjectSkill(e,r,n))}removeProjectSkill(e){return t.removeProjectSkill(e)}getProjectVariables(e){return t.getProjectVariables(e)}setProjectVariable(e,r,n){return i(()=>t.setProjectVariable(e,r,n))}deleteProjectVariable(e,r){return t.deleteProjectVariable(e,r)}getProjectMemory(e,r){return t.getProjectMemory(e,r)}addProjectMemory(e,r,n,s){return i(()=>t.addProjectMemory(e,r,n,s))}deleteProjectMemory(e){return t.deleteProjectMemory(e)}getProjectThreads(e){return t.getProjectThreads(e)}addProjectThread(e,r){return i(()=>t.addProjectThread(e,r))}removeProjectThread(e,r){return t.removeProjectThread(e,r)}getProjectForThread(e){return t.getProjectForThread(e)}getUserSettings(e){return t.getUserSettings(e)}upsertUserSettings(e,r,n){return i(()=>t.upsertUserSettings(e,r,n))}async healthCheck(){let e=performance.now();try{return(0,r.getSQLiteDb)().prepare("SELECT 1").get(),{adapter:"sqlite",connected:!0,latencyMs:Math.round(performance.now()-e)}}catch{return{adapter:"sqlite",connected:!1,latencyMs:Math.round(performance.now()-e)}}}}e.s(["SQLiteAdapter",()=>u],82341)},90081,e=>{"use strict";let t=function(){let{SQLiteAdapter:t}=e.r(82341);return new t}();e.s(["db",0,t])}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__85275b88._.js.map
@@ -1,8 +1,8 @@
1
- module.exports=[18622,(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"))},56704,(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"))},32319,(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"))},24725,(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"))},93695,(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"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},59833,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 a(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function s(e,t){return(...r)=>{e.exec("BEGIN");try{let n=t(...r);return e.exec("COMMIT"),n}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>n,"transaction",()=>a,"transactionFn",()=>s])},33405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},49041,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])},21729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(59833),r=e.i(22734),n=e.i(46786),a=e.i(14747);let s="3.35.0",o=["json1"],i=["fts5"],l=["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 d(d,p){let u=[],m=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}(m.v,s)&&u.push({kind:"version_mismatch",message:`SQLite version ${m.v} is below minimum ${s}`,found:m.v,required:`>= ${s}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),o))c(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 i)c(d,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let h=function(t){"linux"!==n.default.platform()&&n.default.platform();try{let s=a.default.resolve(t),{execSync:o}=e.r(33405);if("darwin"===n.default.platform());else{let e=r.default.readFileSync("/proc/mounts","utf-8"),t="",n="unknown";for(let r of e.split("\n")){let[,e,a]=r.split(/\s+/);e&&s.startsWith(e)&&e.length>t.length&&(t=e,n=a||"unknown")}return n}}catch{}return null}(p);h&&l.some(e=>h.toLowerCase().includes(e))&&u.push({kind:"filesystem_error",message:`Database path '${p}' is on a network filesystem (${h})`,path:p,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`)):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])},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},24868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},79042,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"]])},38479,e=>{"use strict";var t=e.i(54799),r=e.i(248);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 a(e){return{id:e.id,jobId:e.job_id,status:e.status,output:e.output,error:e.error,durationMs:e.duration_ms,startedAt:e.started_at,finishedAt:e.finished_at,cancelledAt:e.cancelled_at,createdAt:e.created_at}}class s{db;constructor(e){this.db=e}createJob(e){let n,a=(0,t.randomUUID)(),s=e.cadence,o=e.cronExpr||s,i=e.triggerType??"scheduled",l=e.provider??"claude";return n="condition"===i?Date.now()+(e.checkEveryMs??3e5):(0,r.computeNextTickFromCron)(o)??null,this.db.prepare(`INSERT INTO prompt_jobs (id, name, prompt, cli, agent_id, project_id, provider, model, cli_args, cron_expr, cadence, overlap_policy, catch_up_policy, cancel_check_sec, trigger_type, condition, check_every_ms, next_run_at)
2
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(a,e.name,e.prompt,l,e.agentId||null,e.projectId||null,l,e.model??"",e.cliArgs??"",o,s,e.overlapPolicy??"skip",e.catchUpPolicy??"fire_once",e.cancelCheckSec??5,i,e.condition??"",e.checkEveryMs??3e5,n),this.getJob(a)}getJob(e){let t=this.db.prepare("SELECT * FROM prompt_jobs WHERE id = ?").get(e);return t?n(t):null}listJobs(e){let t="SELECT * FROM prompt_jobs",r=[],a=[];return e?.state&&(r.push("state = ?"),a.push(e.state)),e?.projectId&&(r.push("project_id = ?"),a.push(e.projectId)),r.length>0&&(t+=" WHERE "+r.join(" AND ")),t+=" ORDER BY created_at DESC",this.db.prepare(t).all(...a).map(n)}updateJob(e,t){let n={name:"name",prompt:"prompt",cli:"cli",agentId:"agent_id",projectId:"project_id",provider:"provider",cronExpr:"cron_expr",model:"model",cliArgs:"cli_args",cadence:"cadence",state:"state",overlapPolicy:"overlap_policy",catchUpPolicy:"catch_up_policy",cancelCheckSec:"cancel_check_sec",triggerType:"trigger_type",condition:"condition",checkEveryMs:"check_every_ms",nextRunAt:"next_run_at",lastRunAt:"last_run_at",lastOutcome:"last_outcome"},a=[],s=[];for(let[e,o]of Object.entries(t)){let t=n[e];if(t&&void 0!==o&&(a.push(`${t} = ?`),s.push(o),"cadence"===e&&"string"==typeof o)){a.push("cron_expr = ?"),s.push(o);let e=(0,r.computeNextTickFromCron)(o)??null;a.push("next_run_at = ?"),s.push(e)}}return 0===a.length||(a.push("updated_at = datetime('now')"),s.push(e),this.db.prepare(`UPDATE prompt_jobs SET ${a.join(", ")} WHERE id = ?`).run(...s.map(e=>e))),this.getJob(e)}deleteJob(e){this.db.prepare("DELETE FROM prompt_jobs WHERE id = ?").run(e)}getDueJobs(e=Date.now()){return this.db.prepare(`SELECT * FROM prompt_jobs
1
+ module.exports=[18622,(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"))},56704,(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"))},32319,(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"))},24725,(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"))},93695,(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"))},22734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},14747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},46786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},59833,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])},33405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},49041,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])},21729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(59833);e.i(22734);var r=e.i(46786),a=e.i(14747);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 c(c,d){let p=[],u=c.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}(u.v,n)&&p.push({kind:"version_mismatch",message:`SQLite version ${u.v} is below minimum ${n}`,found:u.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),s))l(c,e)||p.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(c,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let m=function(t){"linux"!==r.default.platform()&&r.default.platform();try{let n=a.default.resolve(t),{execSync:s}=e.r(33405);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);m&&i.some(e=>m.toLowerCase().includes(e))&&p.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)(c,"journal_mode = wal"),(0,t.pragmaSet)(c,"foreign_keys = 1"),(0,t.pragmaSet)(c,"busy_timeout = 5000"),(0,t.pragmaSet)(c,"synchronous = 1"),(0,t.pragmaSet)(c,"cache_size = -64000");let e=(0,t.pragmaGet)(c,"journal_mode").toLowerCase(),r=new Set(["wal","delete"]);if(!r.has(e)){(0,t.pragmaSet)(c,"journal_mode = DELETE");let e=(0,t.pragmaGet)(c,"journal_mode").toLowerCase();r.has(e)?((0,t.pragmaSet)(c,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):p.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){p.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 p}e.s(["validateSQLiteEnvironment",()=>c])},54799,(e,t,r)=>{t.exports=e.x("crypto",()=>require("crypto"))},24868,(e,t,r)=>{t.exports=e.x("fs/promises",()=>require("fs/promises"))},79042,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"]])},38479,e=>{"use strict";var t=e.i(54799),r=e.i(248);function a(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 n(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}}class s{db;constructor(e){this.db=e}createJob(e){let a,n=(0,t.randomUUID)(),s=e.cadence,o=e.cronExpr||s,i=e.triggerType??"scheduled",l=e.provider??"claude";return a="condition"===i?Date.now()+(e.checkEveryMs??3e5):(0,r.computeNextTickFromCron)(o)??null,this.db.prepare(`INSERT INTO prompt_jobs (id, name, prompt, cli, agent_id, project_id, provider, model, cli_args, cron_expr, cadence, overlap_policy, catch_up_policy, cancel_check_sec, trigger_type, condition, check_every_ms, next_run_at)
2
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(n,e.name,e.prompt,l,e.agentId||null,e.projectId||null,l,e.model??"",e.cliArgs??"",o,s,e.overlapPolicy??"skip",e.catchUpPolicy??"fire_once",e.cancelCheckSec??5,i,e.condition??"",e.checkEveryMs??3e5,a),this.getJob(n)}getJob(e){let t=this.db.prepare("SELECT * FROM prompt_jobs WHERE id = ?").get(e);return t?a(t):null}listJobs(e){let t="SELECT * FROM prompt_jobs",r=[],n=[];return e?.state&&(r.push("state = ?"),n.push(e.state)),e?.projectId&&(r.push("project_id = ?"),n.push(e.projectId)),r.length>0&&(t+=" WHERE "+r.join(" AND ")),t+=" ORDER BY created_at DESC",this.db.prepare(t).all(...n).map(a)}updateJob(e,t){let a={name:"name",prompt:"prompt",cli:"cli",agentId:"agent_id",projectId:"project_id",provider:"provider",cronExpr:"cron_expr",model:"model",cliArgs:"cli_args",cadence:"cadence",state:"state",overlapPolicy:"overlap_policy",catchUpPolicy:"catch_up_policy",cancelCheckSec:"cancel_check_sec",triggerType:"trigger_type",condition:"condition",checkEveryMs:"check_every_ms",nextRunAt:"next_run_at",lastRunAt:"last_run_at",lastOutcome:"last_outcome"},n=[],s=[];for(let[e,o]of Object.entries(t)){let t=a[e];if(t&&void 0!==o&&(n.push(`${t} = ?`),s.push(o),"cadence"===e&&"string"==typeof o)){n.push("cron_expr = ?"),s.push(o);let e=(0,r.computeNextTickFromCron)(o)??null;n.push("next_run_at = ?"),s.push(e)}}return 0===n.length||(n.push("updated_at = datetime('now')"),s.push(e),this.db.prepare(`UPDATE prompt_jobs SET ${n.join(", ")} WHERE id = ?`).run(...s.map(e=>e))),this.getJob(e)}deleteJob(e){this.db.prepare("DELETE FROM prompt_jobs WHERE id = ?").run(e)}getDueJobs(e=Date.now()){return this.db.prepare(`SELECT * FROM prompt_jobs
3
3
  WHERE state = 'active'
4
4
  AND next_run_at IS NOT NULL
5
5
  AND next_run_at <= ?
6
- ORDER BY next_run_at ASC`).all(e).map(n)}createRun(e){let r=(0,t.randomUUID)();return this.db.prepare("INSERT INTO prompt_runs (id, job_id) VALUES (?, ?)").run(r,e),this.getRun(r)}getRun(e){let t=this.db.prepare("SELECT * FROM prompt_runs WHERE id = ?").get(e);return t?a(t):null}listRuns(e,t=50){return this.db.prepare("SELECT * FROM prompt_runs WHERE job_id = ? ORDER BY created_at DESC LIMIT ?").all(e,t).map(a)}updateRun(e,t){let r={status:"status",output:"output",error:"error",durationMs:"duration_ms",startedAt:"started_at",finishedAt:"finished_at",cancelledAt:"cancelled_at"},n=[],a=[];for(let[e,s]of Object.entries(t)){let t=r[e];t&&(n.push(`${t} = ?`),a.push(s??null))}return 0===n.length||(a.push(e),this.db.prepare(`UPDATE prompt_runs SET ${n.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"}}var o=e.i(22734),i=e.i(14747),l=e.i(60447);let c=null;function d(){if(!c){let e=(0,l.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,o.readFileSync)(i.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,o.readFileSync)(i.default.join(process.cwd(),"db/sqlite/002_prompt_scheduler_schema.sql"),"utf-8");e.exec(t)}c=new s(e)}return c}e.s(["getPromptJobStore",()=>d],38479)},44506,e=>{"use strict";let t=[{regex:/^every\s+(\d+)\s*s(?:ec(?:ond)?s?)?$/i,handler:e=>({cronExpr:`*/${Math.max(1,Math.ceil(parseInt(e[1])/60))} * * * *`,intervalMs:1e3*parseInt(e[1]),cadence:`Every ${e[1]} seconds`})},{regex:/^every\s+(\d+)\s*m(?:in(?:ute)?s?)?$/i,handler:e=>({cronExpr:`*/${e[1]} * * * *`,cadence:`Every ${e[1]} minutes`})},{regex:/^every\s+(\d+)\s*h(?:(?:ou)?rs?)?$/i,handler:e=>({cronExpr:`0 */${e[1]} * * *`,cadence:`Every ${e[1]} hours`})},{regex:/^every\s+hour$/i,handler:()=>({cronExpr:"0 * * * *",cadence:"Every hour"})},{regex:/^every\s+minute$/i,handler:()=>({cronExpr:"* * * * *",cadence:"Every minute"})},{regex:/^daily\s+at\s+(\d{1,2})(?::(\d{2}))?\s*(am|pm)?$/i,handler:e=>{let t=parseInt(e[1]),r=parseInt(e[2]||"0"),n=e[3]?.toLowerCase();return"pm"===n&&t<12&&(t+=12),"am"===n&&12===t&&(t=0),{cronExpr:`${r} ${t} * * *`,cadence:`Daily at ${t}:${String(r).padStart(2,"0")}`}}},{regex:/^daily\s+at\s+midnight$/i,handler:()=>({cronExpr:"0 0 * * *",cadence:"Daily at midnight"})},{regex:/^daily\s+at\s+noon$/i,handler:()=>({cronExpr:"0 12 * * *",cadence:"Daily at noon"})},{regex:/^weekdays?\s+at\s+(\d{1,2})(?::(\d{2}))?\s*(am|pm)?$/i,handler:e=>{let t=parseInt(e[1]),r=parseInt(e[2]||"0"),n=e[3]?.toLowerCase();return"pm"===n&&t<12&&(t+=12),"am"===n&&12===t&&(t=0),{cronExpr:`${r} ${t} * * 1-5`,cadence:`Weekdays at ${t}:${String(r).padStart(2,"0")}`}}},{regex:/^(monday|tuesday|wednesday|thursday|friday|saturday|sunday)s?\s+at\s+(\d{1,2})(?::(\d{2}))?\s*(am|pm)?$/i,handler:e=>{let t={sunday:0,monday:1,tuesday:2,wednesday:3,thursday:4,friday:5,saturday:6}[e[1].toLowerCase()],r=parseInt(e[2]),n=parseInt(e[3]||"0"),a=e[4]?.toLowerCase();"pm"===a&&r<12&&(r+=12),"am"===a&&12===r&&(r=0);let s=e[1].charAt(0).toUpperCase()+e[1].slice(1).toLowerCase();return{cronExpr:`${n} ${r} * * ${t}`,cadence:`${s}s at ${r}:${String(n).padStart(2,"0")}`}}},{regex:/^every\s+(\d+)\s*days?$/i,handler:e=>({cronExpr:`0 0 */${e[1]} * *`,cadence:`Every ${e[1]} days`})}];function r(e){let r=e.trim();if(/^[\d*\/,-]+\s+[\d*\/,-]+\s+[\d*\/,-]+\s+[\d*\/,-]+\s+[\d*\/,-]+$/.test(r))return{cronExpr:r,cadence:r};let n=function(e){let r=e.trim();for(let{regex:e,handler:n}of t){let t=r.match(e);if(t)return n(t)}}(r);if(n)return{cronExpr:n.cronExpr,cadence:n.cadence}}e.s(["toCronExpr",()=>r])},35338,e=>{"use strict";var t=e.i(44506),r=e.i(8689);function n(e){let n=e.trim();if(!n)return null;let a=(0,t.toCronExpr)(n);return a?{cronExpr:a.cronExpr,cadence:a.cadence}:!function(e){if(5!==e.split(/\s+/).length)return!1;try{return r.CronExpressionParser.parse(e),!0}catch{return!1}}(n)?null:{cronExpr:n,cadence:n}}function a(e,t){try{return r.CronExpressionParser.parse(e,{currentDate:t?new Date(t):new Date}).next().toDate().getTime()}catch{return null}}e.s(["computeNextRun",()=>a,"parseCadence",()=>n])},23291,e=>{"use strict";var t=e.i(47909),r=e.i(74017),n=e.i(96250),a=e.i(59756),s=e.i(61916),o=e.i(74677),i=e.i(69741),l=e.i(16795),c=e.i(87718),d=e.i(95169),p=e.i(47587),u=e.i(66012),m=e.i(70101),h=e.i(74838),E=e.i(10372),g=e.i(93695);e.i(52474);var f=e.i(220),x=e.i(94028),_=e.i(38479),y=e.i(35338);async function R(e){try{let t=(0,_.getPromptJobStore)(),r=e.nextUrl.searchParams.get("state"),n=e.nextUrl.searchParams.get("projectId")??void 0,a={};r&&(a.state=r),n&&(a.projectId=n);let s=t.listJobs(Object.keys(a).length>0?a:void 0);for(let e of s)if("active"===e.state&&null===e.nextRunAt){let r=e.cronExpr,n=(0,y.computeNextRun)(r);if(null===n){let a=(0,y.parseCadence)(r);a&&(r=a.cronExpr,(n=(0,y.computeNextRun)(r))&&t.updateJob(e.id,{cronExpr:r}))}null===n&&"condition"===e.triggerType&&(n=Date.now()+e.checkEveryMs),n&&(t.updateJob(e.id,{nextRunAt:n}),e.nextRunAt=n)}return x.NextResponse.json({count:s.length,jobs:s})}catch(e){return console.error("Failed to list prompt jobs:",e),x.NextResponse.json({error:"Failed to list prompt jobs",message:e instanceof Error?e.message:String(e)},{status:500})}}async function v(e){try{let{name:t,prompt:r,agentId:n,projectId:a,provider:s,model:o,cliArgs:i,cadence:l,overlapPolicy:c,catchUpPolicy:d,cancelCheckSec:p,triggerType:u,condition:m,checkEveryMs:h}=await e.json();if(!t||!r)return x.NextResponse.json({error:"Missing required fields: name, prompt"},{status:400});let E=u??"scheduled";if("scheduled"===E&&!l)return x.NextResponse.json({error:"Missing required field: cadence (required for scheduled triggers)"},{status:400});let g="",f="";if(l){let e=(0,y.parseCadence)(l);e?(g=e.cronExpr,f=e.cadence):(g=l,f=l)}let R=(0,_.getPromptJobStore)().createJob({name:t,prompt:r,agentId:n,projectId:a,provider:s??"claude",model:o,cliArgs:i,cronExpr:g||void 0,cadence:f||`every ${Math.round((h??3e5)/6e4)}m`,overlapPolicy:c,catchUpPolicy:d,cancelCheckSec:p,triggerType:E,condition:m,checkEveryMs:h});return x.NextResponse.json({job:R},{status:201})}catch(e){return console.error("Failed to create prompt job:",e),x.NextResponse.json({error:"Failed to create prompt job",message:e instanceof Error?e.message:String(e)},{status:500})}}e.s(["GET",()=>R,"POST",()=>v,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],31650);var b=e.i(31650);let S=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/prompt-jobs/route",pathname:"/api/prompt-jobs",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/prompt-jobs/route.ts",nextConfigOutput:"standalone",userland:b}),{workAsyncStorage:A,workUnitAsyncStorage:C,serverHooks:T}=S;function w(){return(0,n.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:C})}async function j(e,t,n){S.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let x="/api/prompt-jobs/route";x=x.replace(/\/index$/,"")||"/";let _=await S.prepare(e,t,{srcPage:x,multiZoneDraftMode:!1});if(!_)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:y,params:R,nextConfig:v,parsedUrl:b,isDraftMode:A,prerenderManifest:C,routerServerContext:T,isOnDemandRevalidate:w,revalidateOnlyGenerated:j,resolvedPathname:I,clientReferenceManifest:L,serverActionsManifest:$}=_,N=(0,i.normalizeAppPath)(x),O=!!(C.dynamicRoutes[N]||C.routes[I]),k=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,b,!1):t.end("This page could not be found"),null);if(O&&!A){let e=!!C.routes[I],t=C.dynamicRoutes[N];if(t&&!1===t.fallback&&!e){if(v.experimental.adapterPath)return await k();throw new g.NoFallbackError}}let D=null;!O||S.isDev||A||(D="/index"===(D=I)?"/":D);let M=!0===S.isDev||!O,U=O&&!M;$&&L&&(0,o.setManifestsSingleton)({page:x,clientReferenceManifest:L,serverActionsManifest:$});let P=e.method||"GET",q=(0,s.getTracer)(),F=q.getActiveScopeSpan(),H={params:R,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!v.experimental.authInterrupts},cacheComponents:!!v.cacheComponents,supportsDynamicResponse:M,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:v.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>S.onRequestError(e,t,n,a,T)},sharedContext:{buildId:y}},B=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),G=c.NextRequestAdapter.fromNodeNextRequest(B,(0,c.signalFromNodeResponse)(t));try{let o=async e=>S.handle(G,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=q.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 n=r.get("next.route");if(n){let t=`${P} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${P} ${x}`)}),i=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var s,l;let c=async({previousCacheEntry:r})=>{try{if(!i&&w&&j&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await o(a);e.fetchMetrics=H.renderOpts.fetchMetrics;let l=H.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let c=H.renderOpts.collectedTags;if(!O)return await (0,u.sendResponse)(B,W,s,H.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(s.headers);c&&(t[E.NEXT_CACHE_TAGS_HEADER]=c),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=E.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,n=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=E.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:f.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:x,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:w})},!1,T),t}},d=await S.handleResponse({req:e,nextConfig:v,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:w,revalidateOnlyGenerated:j,responseGenerator:c,waitUntil:n.waitUntil,isMinimalMode:i});if(!O)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==f.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",w?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,m.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&O||g.delete(E.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,u.sendResponse)(B,W,new Response(d.value.body,{headers:g,status:d.value.status||200})),null};F?await l(F):await q.withPropagatedContext(e.headers,()=>q.trace(d.BaseServerSpan.handleRequest,{spanName:`${P} ${x}`,kind:s.SpanKind.SERVER,attributes:{"http.method":P,"http.target":e.url}},l))}catch(t){if(t instanceof g.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:w})},!1,T),O)throw t;return await (0,u.sendResponse)(B,W,new Response(null,{status:500})),null}}e.s(["handler",()=>j,"patchFetch",()=>w,"routeModule",()=>S,"serverHooks",()=>T,"workAsyncStorage",()=>A,"workUnitAsyncStorage",()=>C],23291)}];
6
+ ORDER BY next_run_at ASC`).all(e).map(a)}createRun(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?n(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(n)}updateRun(e,t){let r={status:"status",output:"output",error:"error",durationMs:"duration_ms",startedAt:"started_at",finishedAt:"finished_at",cancelledAt:"cancelled_at"},a=[],n=[];for(let[e,s]of Object.entries(t)){let t=r[e];t&&(a.push(`${t} = ?`),n.push(s??null))}return 0===a.length||(n.push(e),this.db.prepare(`UPDATE prompt_runs SET ${a.join(", ")} WHERE id = ?`).run(...n.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"}}var o=e.i(22734),i=e.i(14747),l=e.i(60447);let c=null;function d(){if(!c){let e=(0,l.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,o.readFileSync)(i.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,o.readFileSync)(i.default.join(process.cwd(),"db/sqlite/002_prompt_scheduler_schema.sql"),"utf-8");e.exec(t)}c=new s(e)}return c}e.s(["getPromptJobStore",()=>d],38479)},44506,e=>{"use strict";let t=[{regex:/^every\s+(\d+)\s*s(?:ec(?:ond)?s?)?$/i,handler:e=>({cronExpr:`*/${Math.max(1,Math.ceil(parseInt(e[1])/60))} * * * *`,intervalMs:1e3*parseInt(e[1]),cadence:`Every ${e[1]} seconds`})},{regex:/^every\s+(\d+)\s*m(?:in(?:ute)?s?)?$/i,handler:e=>({cronExpr:`*/${e[1]} * * * *`,cadence:`Every ${e[1]} minutes`})},{regex:/^every\s+(\d+)\s*h(?:(?:ou)?rs?)?$/i,handler:e=>({cronExpr:`0 */${e[1]} * * *`,cadence:`Every ${e[1]} hours`})},{regex:/^every\s+hour$/i,handler:()=>({cronExpr:"0 * * * *",cadence:"Every hour"})},{regex:/^every\s+minute$/i,handler:()=>({cronExpr:"* * * * *",cadence:"Every minute"})},{regex:/^daily\s+at\s+(\d{1,2})(?::(\d{2}))?\s*(am|pm)?$/i,handler:e=>{let t=parseInt(e[1]),r=parseInt(e[2]||"0"),a=e[3]?.toLowerCase();return"pm"===a&&t<12&&(t+=12),"am"===a&&12===t&&(t=0),{cronExpr:`${r} ${t} * * *`,cadence:`Daily at ${t}:${String(r).padStart(2,"0")}`}}},{regex:/^daily\s+at\s+midnight$/i,handler:()=>({cronExpr:"0 0 * * *",cadence:"Daily at midnight"})},{regex:/^daily\s+at\s+noon$/i,handler:()=>({cronExpr:"0 12 * * *",cadence:"Daily at noon"})},{regex:/^weekdays?\s+at\s+(\d{1,2})(?::(\d{2}))?\s*(am|pm)?$/i,handler:e=>{let t=parseInt(e[1]),r=parseInt(e[2]||"0"),a=e[3]?.toLowerCase();return"pm"===a&&t<12&&(t+=12),"am"===a&&12===t&&(t=0),{cronExpr:`${r} ${t} * * 1-5`,cadence:`Weekdays at ${t}:${String(r).padStart(2,"0")}`}}},{regex:/^(monday|tuesday|wednesday|thursday|friday|saturday|sunday)s?\s+at\s+(\d{1,2})(?::(\d{2}))?\s*(am|pm)?$/i,handler:e=>{let t={sunday:0,monday:1,tuesday:2,wednesday:3,thursday:4,friday:5,saturday:6}[e[1].toLowerCase()],r=parseInt(e[2]),a=parseInt(e[3]||"0"),n=e[4]?.toLowerCase();"pm"===n&&r<12&&(r+=12),"am"===n&&12===r&&(r=0);let s=e[1].charAt(0).toUpperCase()+e[1].slice(1).toLowerCase();return{cronExpr:`${a} ${r} * * ${t}`,cadence:`${s}s at ${r}:${String(a).padStart(2,"0")}`}}},{regex:/^every\s+(\d+)\s*days?$/i,handler:e=>({cronExpr:`0 0 */${e[1]} * *`,cadence:`Every ${e[1]} days`})}];function r(e){let r=e.trim();if(/^[\d*\/,-]+\s+[\d*\/,-]+\s+[\d*\/,-]+\s+[\d*\/,-]+\s+[\d*\/,-]+$/.test(r))return{cronExpr:r,cadence:r};let a=function(e){let r=e.trim();for(let{regex:e,handler:a}of t){let t=r.match(e);if(t)return a(t)}}(r);if(a)return{cronExpr:a.cronExpr,cadence:a.cadence}}e.s(["toCronExpr",()=>r])},35338,e=>{"use strict";var t=e.i(44506),r=e.i(8689);function a(e){let a=e.trim();if(!a)return null;let n=(0,t.toCronExpr)(a);return n?{cronExpr:n.cronExpr,cadence:n.cadence}:!function(e){if(5!==e.split(/\s+/).length)return!1;try{return r.CronExpressionParser.parse(e),!0}catch{return!1}}(a)?null:{cronExpr:a,cadence:a}}function n(e,t){try{return r.CronExpressionParser.parse(e,{currentDate:t?new Date(t):new Date}).next().toDate().getTime()}catch{return null}}e.s(["computeNextRun",()=>n,"parseCadence",()=>a])},23291,e=>{"use strict";var t=e.i(47909),r=e.i(74017),a=e.i(96250),n=e.i(59756),s=e.i(61916),o=e.i(74677),i=e.i(69741),l=e.i(16795),c=e.i(87718),d=e.i(95169),p=e.i(47587),u=e.i(66012),m=e.i(70101),h=e.i(74838),E=e.i(10372),f=e.i(93695);e.i(52474);var g=e.i(220),x=e.i(94028),_=e.i(38479),y=e.i(35338);async function R(e){try{let t=(0,_.getPromptJobStore)(),r=e.nextUrl.searchParams.get("state"),a=e.nextUrl.searchParams.get("projectId")??void 0,n={};r&&(n.state=r),a&&(n.projectId=a);let s=t.listJobs(Object.keys(n).length>0?n:void 0);for(let e of s)if("active"===e.state&&null===e.nextRunAt){let r=e.cronExpr,a=(0,y.computeNextRun)(r);if(null===a){let n=(0,y.parseCadence)(r);n&&(r=n.cronExpr,(a=(0,y.computeNextRun)(r))&&t.updateJob(e.id,{cronExpr:r}))}null===a&&"condition"===e.triggerType&&(a=Date.now()+e.checkEveryMs),a&&(t.updateJob(e.id,{nextRunAt:a}),e.nextRunAt=a)}return x.NextResponse.json({count:s.length,jobs:s})}catch(e){return console.error("Failed to list prompt jobs:",e),x.NextResponse.json({error:"Failed to list prompt jobs",message:e instanceof Error?e.message:String(e)},{status:500})}}async function v(e){try{let{name:t,prompt:r,agentId:a,projectId:n,provider:s,model:o,cliArgs:i,cadence:l,overlapPolicy:c,catchUpPolicy:d,cancelCheckSec:p,triggerType:u,condition:m,checkEveryMs:h}=await e.json();if(!t||!r)return x.NextResponse.json({error:"Missing required fields: name, prompt"},{status:400});let E=u??"scheduled";if("scheduled"===E&&!l)return x.NextResponse.json({error:"Missing required field: cadence (required for scheduled triggers)"},{status:400});let f="",g="";if(l){let e=(0,y.parseCadence)(l);e?(f=e.cronExpr,g=e.cadence):(f=l,g=l)}let R=(0,_.getPromptJobStore)().createJob({name:t,prompt:r,agentId:a,projectId:n,provider:s??"claude",model:o,cliArgs:i,cronExpr:f||void 0,cadence:g||`every ${Math.round((h??3e5)/6e4)}m`,overlapPolicy:c,catchUpPolicy:d,cancelCheckSec:p,triggerType:E,condition:m,checkEveryMs:h});return x.NextResponse.json({job:R},{status:201})}catch(e){return console.error("Failed to create prompt job:",e),x.NextResponse.json({error:"Failed to create prompt job",message:e instanceof Error?e.message:String(e)},{status:500})}}e.s(["GET",()=>R,"POST",()=>v,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],31650);var b=e.i(31650);let S=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/prompt-jobs/route",pathname:"/api/prompt-jobs",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/prompt-jobs/route.ts",nextConfigOutput:"standalone",userland:b}),{workAsyncStorage:A,workUnitAsyncStorage:C,serverHooks:T}=S;function w(){return(0,a.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:C})}async function j(e,t,a){S.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let x="/api/prompt-jobs/route";x=x.replace(/\/index$/,"")||"/";let _=await S.prepare(e,t,{srcPage:x,multiZoneDraftMode:!1});if(!_)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:y,params:R,nextConfig:v,parsedUrl:b,isDraftMode:A,prerenderManifest:C,routerServerContext:T,isOnDemandRevalidate:w,revalidateOnlyGenerated:j,resolvedPathname:I,clientReferenceManifest:L,serverActionsManifest:$}=_,N=(0,i.normalizeAppPath)(x),O=!!(C.dynamicRoutes[N]||C.routes[I]),k=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,b,!1):t.end("This page could not be found"),null);if(O&&!A){let e=!!C.routes[I],t=C.dynamicRoutes[N];if(t&&!1===t.fallback&&!e){if(v.experimental.adapterPath)return await k();throw new f.NoFallbackError}}let D=null;!O||S.isDev||A||(D="/index"===(D=I)?"/":D);let M=!0===S.isDev||!O,U=O&&!M;$&&L&&(0,o.setManifestsSingleton)({page:x,clientReferenceManifest:L,serverActionsManifest:$});let P=e.method||"GET",q=(0,s.getTracer)(),F=q.getActiveScopeSpan(),H={params:R,prerenderManifest:C,renderOpts:{experimental:{authInterrupts:!!v.experimental.authInterrupts},cacheComponents:!!v.cacheComponents,supportsDynamicResponse:M,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:v.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,n)=>S.onRequestError(e,t,a,n,T)},sharedContext:{buildId:y}},B=new l.NodeNextRequest(e),W=new l.NodeNextResponse(t),G=c.NextRequestAdapter.fromNodeNextRequest(B,(0,c.signalFromNodeResponse)(t));try{let o=async e=>S.handle(G,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=q.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=`${P} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${P} ${x}`)}),i=!!(0,n.getRequestMeta)(e,"minimalMode"),l=async n=>{var s,l;let c=async({previousCacheEntry:r})=>{try{if(!i&&w&&j&&!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 c=H.renderOpts.collectedTags;if(!O)return await (0,u.sendResponse)(B,W,s,H.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(s.headers);c&&(t[E.NEXT_CACHE_TAGS_HEADER]=c),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=E.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=E.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:g.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await S.onRequestError(e,t,{routerKind:"App Router",routePath:x,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:w})},!1,T),t}},d=await S.handleResponse({req:e,nextConfig:v,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:C,isRoutePPREnabled:!1,isOnDemandRevalidate:w,revalidateOnlyGenerated:j,responseGenerator:c,waitUntil:a.waitUntil,isMinimalMode:i});if(!O)return null;if((null==d||null==(s=d.value)?void 0:s.kind)!==g.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",w?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let f=(0,m.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&O||f.delete(E.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||f.get("Cache-Control")||f.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,u.sendResponse)(B,W,new Response(d.value.body,{headers:f,status:d.value.status||200})),null};F?await l(F):await q.withPropagatedContext(e.headers,()=>q.trace(d.BaseServerSpan.handleRequest,{spanName:`${P} ${x}`,kind:s.SpanKind.SERVER,attributes:{"http.method":P,"http.target":e.url}},l))}catch(t){if(t instanceof f.NoFallbackError||await S.onRequestError(e,t,{routerKind:"App Router",routePath:N,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:w})},!1,T),O)throw t;return await (0,u.sendResponse)(B,W,new Response(null,{status:500})),null}}e.s(["handler",()=>j,"patchFetch",()=>w,"routeModule",()=>S,"serverHooks",()=>T,"workAsyncStorage",()=>A,"workUnitAsyncStorage",()=>C],23291)}];
7
7
 
8
8
  //# sourceMappingURL=%5Broot-of-the-server%5D__89666394._.js.map