@mndrk/agx 2.4.1 → 2.4.3

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 (305) hide show
  1. package/cloud-runtime/standalone/apps/local/.next/BUILD_ID +1 -1
  2. package/cloud-runtime/standalone/apps/local/.next/app-path-routes-manifest.json +5 -0
  3. package/cloud-runtime/standalone/apps/local/.next/build-manifest.json +2 -2
  4. package/cloud-runtime/standalone/apps/local/.next/prerender-manifest.json +3 -3
  5. package/cloud-runtime/standalone/apps/local/.next/routes-manifest.json +41 -0
  6. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.html +2 -2
  7. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.rsc +1 -1
  8. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  9. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  10. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  11. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  12. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  13. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  14. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.html +2 -2
  15. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.rsc +2 -2
  16. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  17. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  18. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  19. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  20. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  21. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  22. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  23. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  24. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js.nft.json +1 -1
  25. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  26. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.html +2 -2
  27. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.rsc +3 -3
  28. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_full.segment.rsc +3 -3
  29. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  30. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_index.segment.rsc +2 -2
  31. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  32. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
  33. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents.segment.rsc +1 -1
  34. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
  35. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
  36. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js.nft.json +1 -1
  37. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js.nft.json +1 -1
  38. package/cloud-runtime/standalone/apps/local/.next/server/app/api/file-search/route.js.nft.json +1 -1
  39. package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js.nft.json +1 -1
  40. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js.nft.json +1 -1
  41. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.nft.json +1 -1
  42. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js.nft.json +1 -1
  43. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/route.js.nft.json +1 -1
  44. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
  45. package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/check/[id]/route.js.nft.json +1 -1
  46. package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/route.js.nft.json +1 -1
  47. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js.nft.json +1 -1
  48. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
  49. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
  50. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
  51. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/available/route.js.nft.json +1 -1
  52. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
  53. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/history/route.js.nft.json +1 -1
  54. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
  55. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/route.js.nft.json +1 -1
  56. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
  57. package/cloud-runtime/standalone/apps/local/.next/server/app/api/status/route.js.nft.json +1 -1
  58. package/cloud-runtime/standalone/apps/local/.next/server/app/api/summarize/route.js.nft.json +1 -1
  59. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  60. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  61. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
  62. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  63. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js.nft.json +1 -1
  64. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
  65. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js.nft.json +1 -1
  66. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/auth/route.js.nft.json +1 -1
  67. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/callback/route.js.nft.json +1 -1
  68. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/groups/route.js.nft.json +1 -1
  69. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/activity/route.js.nft.json +1 -1
  70. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/recap/route.js.nft.json +1 -1
  71. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/route.js.nft.json +1 -1
  72. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/route.js.nft.json +1 -1
  73. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/[id]/route/app-paths-manifest.json +3 -0
  74. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/[id]/route/build-manifest.json +11 -0
  75. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/[id]/route/server-reference-manifest.json +4 -0
  76. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/[id]/route.js +7 -0
  77. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/[id]/route.js.map +5 -0
  78. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/[id]/route.js.nft.json +1 -0
  79. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/[id]/route_client-reference-manifest.js +2 -0
  80. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/route/app-paths-manifest.json +3 -0
  81. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/route/build-manifest.json +11 -0
  82. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/route/server-reference-manifest.json +4 -0
  83. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/route.js +7 -0
  84. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/route.js.map +5 -0
  85. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/route.js.nft.json +1 -0
  86. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/labels/route_client-reference-manifest.js +2 -0
  87. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/mcp-setup/route.js.nft.json +1 -1
  88. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/bulk/route/app-paths-manifest.json +3 -0
  89. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/bulk/route/build-manifest.json +11 -0
  90. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/bulk/route/server-reference-manifest.json +4 -0
  91. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/bulk/route.js +7 -0
  92. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/bulk/route.js.map +5 -0
  93. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/bulk/route.js.nft.json +1 -0
  94. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/bulk/route_client-reference-manifest.js +2 -0
  95. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/route/app-paths-manifest.json +3 -0
  96. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/route/build-manifest.json +11 -0
  97. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/route/server-reference-manifest.json +4 -0
  98. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/route.js +7 -0
  99. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/route.js.map +5 -0
  100. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/route.js.nft.json +1 -0
  101. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/metadata/route_client-reference-manifest.js +2 -0
  102. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/options/route.js.nft.json +1 -1
  103. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/[id]/route.js.nft.json +1 -1
  104. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/route.js.nft.json +1 -1
  105. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/scripted/route.js.nft.json +1 -1
  106. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/stats/route/app-paths-manifest.json +3 -0
  107. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/stats/route/build-manifest.json +11 -0
  108. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/stats/route/server-reference-manifest.json +4 -0
  109. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/stats/route.js +7 -0
  110. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/stats/route.js.map +5 -0
  111. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/stats/route.js.nft.json +1 -0
  112. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/stats/route_client-reference-manifest.js +2 -0
  113. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route.js.nft.json +1 -1
  114. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route.js.nft.json +1 -1
  115. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route.js.nft.json +1 -1
  116. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route.js.nft.json +1 -1
  117. package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route.js.nft.json +1 -1
  118. package/cloud-runtime/standalone/apps/local/.next/server/app/index.html +2 -2
  119. package/cloud-runtime/standalone/apps/local/.next/server/app/index.rsc +2 -2
  120. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  121. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_full.segment.rsc +2 -2
  122. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_head.segment.rsc +1 -1
  123. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_index.segment.rsc +2 -2
  124. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  125. package/cloud-runtime/standalone/apps/local/.next/server/app/page_client-reference-manifest.js +1 -1
  126. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page/react-loadable-manifest.json +2 -2
  127. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
  128. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
  129. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js.nft.json +1 -1
  130. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page_client-reference-manifest.js +1 -1
  131. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.nft.json +1 -1
  132. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page_client-reference-manifest.js +1 -1
  133. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
  134. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
  135. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js.nft.json +1 -1
  136. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page_client-reference-manifest.js +1 -1
  137. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js.nft.json +1 -1
  138. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page_client-reference-manifest.js +1 -1
  139. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
  140. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  141. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js.nft.json +1 -1
  142. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
  143. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js.nft.json +1 -1
  144. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page_client-reference-manifest.js +1 -1
  145. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js.nft.json +1 -1
  146. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page_client-reference-manifest.js +1 -1
  147. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js.nft.json +1 -1
  148. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page_client-reference-manifest.js +1 -1
  149. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js.nft.json +1 -1
  150. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page_client-reference-manifest.js +1 -1
  151. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js.nft.json +1 -1
  152. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page_client-reference-manifest.js +1 -1
  153. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js.nft.json +1 -1
  154. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page_client-reference-manifest.js +1 -1
  155. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
  156. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
  157. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page/react-loadable-manifest.json +1 -1
  158. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page.js.nft.json +1 -1
  159. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page_client-reference-manifest.js +1 -1
  160. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page.js.nft.json +1 -1
  161. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page_client-reference-manifest.js +1 -1
  162. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page/react-loadable-manifest.json +1 -1
  163. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page.js.nft.json +1 -1
  164. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page_client-reference-manifest.js +1 -1
  165. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  166. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.html +2 -2
  167. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.rsc +2 -2
  168. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_full.segment.rsc +2 -2
  169. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  170. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_index.segment.rsc +2 -2
  171. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  172. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +1 -1
  173. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects.segment.rsc +1 -1
  174. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  175. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.html +2 -2
  176. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.rsc +2 -2
  177. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_full.segment.rsc +2 -2
  178. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_head.segment.rsc +1 -1
  179. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_index.segment.rsc +2 -2
  180. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
  181. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +1 -1
  182. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup.segment.rsc +1 -1
  183. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page_client-reference-manifest.js +1 -1
  184. package/cloud-runtime/standalone/apps/local/.next/server/app/status.html +2 -2
  185. package/cloud-runtime/standalone/apps/local/.next/server/app/status.rsc +2 -2
  186. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_full.segment.rsc +2 -2
  187. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_head.segment.rsc +1 -1
  188. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_index.segment.rsc +2 -2
  189. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_tree.segment.rsc +2 -2
  190. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status/__PAGE__.segment.rsc +1 -1
  191. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status.segment.rsc +1 -1
  192. package/cloud-runtime/standalone/apps/local/.next/server/app-paths-manifest.json +5 -0
  193. package/cloud-runtime/standalone/apps/local/.next/server/chunks/083c9_next-internal_server_app_api_trackers_[tracker]_metadata_route_actions_c83fcc1a.js +3 -0
  194. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_labels_[id]_route_actions_2646388d.js +3 -0
  195. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_metadata_bulk_route_actions_f43e6831.js +3 -0
  196. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0e04eca4._.js +40 -0
  197. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__10a90219._.js +3 -3
  198. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1d970ad0._.js +40 -0
  199. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__3a038592._.js +3 -3
  200. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__3b27260f._.js +23 -8
  201. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__580ddcca._.js +40 -0
  202. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__5da8d281._.js +129 -0
  203. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__68b692c4._.js +9 -9
  204. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__76030d44._.js +40 -0
  205. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__7db7c421._.js +20 -5
  206. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__7fcbb0c2._.js +4 -4
  207. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__d8cc43c7._.js +22 -7
  208. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__f598d976._.js +1 -1
  209. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__f7a936d9._.js +21 -6
  210. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_80b34b78._.js +1 -1
  211. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_8f9f647d._.js +28 -13
  212. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_d256aa32._.js +28 -25
  213. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_orchestrator_chat-processor_ts_46384f36._.js +17 -17
  214. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_tracker_tracker-run-store_ts_5aa9592e._.js +22 -7
  215. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_labels_route_actions_8ba41152.js +3 -0
  216. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_stats_route_actions_7da4ccde.js +3 -0
  217. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__799f4d13._.js → [root-of-the-server]__2af44092._.js} +2 -2
  218. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__452cb0f0._.js +3 -0
  219. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__489568b4._.js +3 -0
  220. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__4ec098a0._.js +3 -0
  221. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__53bd50df._.js +3 -0
  222. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__7774a40c._.js +3 -0
  223. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__b8484b0e._.js +7 -0
  224. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__51edc9b6._.js → [root-of-the-server]__bd05ee09._.js} +2 -2
  225. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_8c4beba9._.js +7 -0
  226. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_35d90b5d._.js → apps_local_bbb7b83b._.js} +2 -2
  227. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_TrackerBoard_tsx_98970bab._.js +6 -6
  228. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_chat-ui_f0554cb4._.js +1 -1
  229. package/cloud-runtime/standalone/apps/local/.next/server/functions-config-manifest.json +5 -0
  230. package/cloud-runtime/standalone/apps/local/.next/server/middleware-manifest.json +5 -5
  231. package/cloud-runtime/standalone/apps/local/.next/server/pages/404.html +2 -2
  232. package/cloud-runtime/standalone/apps/local/.next/server/pages/500.html +2 -2
  233. package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.js +1 -1
  234. package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.json +1 -1
  235. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0243e7d015db440d.js +5 -0
  236. package/cloud-runtime/standalone/apps/local/.next/static/chunks/42a62b80b32a97f7.js +9 -0
  237. package/cloud-runtime/standalone/apps/local/.next/static/chunks/5d047fc7267a8f53.js +16 -0
  238. package/cloud-runtime/standalone/apps/local/.next/static/chunks/716e1716d526ded9.js +46 -0
  239. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{77cea126364aab3c.js → 7353a3a1fcd5825c.js} +1 -1
  240. package/cloud-runtime/standalone/apps/local/.next/static/chunks/9acdd370e9daca0d.js +16 -0
  241. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{6c777fe66e042eec.js → 9df45611d6c84e02.js} +1 -1
  242. package/cloud-runtime/standalone/apps/local/.next/static/chunks/a084c6475513e6fe.js +16 -0
  243. package/cloud-runtime/standalone/apps/local/.next/static/chunks/aa6db7c91c1ccd5f.js +16 -0
  244. package/cloud-runtime/standalone/apps/local/.next/static/chunks/cecf3e8c47c785f5.js +5 -0
  245. package/cloud-runtime/standalone/apps/local/.next/static/chunks/d5607ac80145f3b7.js +1 -0
  246. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{d5b14e14665024a9.js → d5c307b52fd87861.js} +1 -1
  247. package/cloud-runtime/standalone/apps/local/.next/static/chunks/f4acf76cb6c82c73.js +16 -0
  248. package/cloud-runtime/standalone/apps/local/.next/static/chunks/f6d31036588ddfe4.css +1 -0
  249. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/labels/[id]/route.ts +23 -0
  250. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/labels/route.ts +41 -0
  251. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/metadata/bulk/route.ts +68 -0
  252. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/metadata/route.ts +31 -0
  253. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/options/route.ts +1 -0
  254. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/stats/route.ts +20 -0
  255. package/cloud-runtime/standalone/apps/local/components/TrackerBoard.tsx +609 -85
  256. package/cloud-runtime/standalone/apps/local/components/tracker/FibonacciPicker.tsx +41 -0
  257. package/cloud-runtime/standalone/apps/local/components/tracker/FolderRow.tsx +1 -1
  258. package/cloud-runtime/standalone/apps/local/components/tracker/LabelPicker.tsx +118 -0
  259. package/cloud-runtime/standalone/apps/local/components/tracker/LabelSettings.tsx +104 -0
  260. package/cloud-runtime/standalone/apps/local/components/tracker/PromptPopover.tsx +64 -0
  261. package/cloud-runtime/standalone/apps/local/components/tracker/SelectionBar.tsx +276 -23
  262. package/cloud-runtime/standalone/apps/local/components/tracker/StatusGroupRow.tsx +50 -0
  263. package/cloud-runtime/standalone/apps/local/components/tracker/TicketPanel.tsx +14 -2
  264. package/cloud-runtime/standalone/apps/local/components/tracker/TicketRow.tsx +147 -7
  265. package/cloud-runtime/standalone/apps/local/components/tracker/TrackerSettingsModal.tsx +14 -2
  266. package/cloud-runtime/standalone/apps/local/components/ui/ResizeHandle.tsx +15 -22
  267. package/cloud-runtime/standalone/apps/local/hooks/useTrackerIssueStats.ts +52 -0
  268. package/cloud-runtime/standalone/apps/local/hooks/useTrackerItemMetadata.ts +67 -0
  269. package/cloud-runtime/standalone/apps/local/hooks/useTrackerItemsMetadata.ts +51 -0
  270. package/cloud-runtime/standalone/apps/local/hooks/useTrackerLabels.ts +74 -0
  271. package/cloud-runtime/standalone/apps/local/hooks/useTrackerRuns.ts +5 -0
  272. package/cloud-runtime/standalone/apps/local/lib/agent-process-registry.ts +6 -1
  273. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/jira/adapter.tsx +1 -0
  274. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/jira/issues.ts +1 -0
  275. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/linear/adapter.tsx +1 -0
  276. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/linear/client.ts +5 -0
  277. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/linear/issues.ts +1 -0
  278. package/cloud-runtime/standalone/apps/local/lib/tracker/tracker-adapter.ts +2 -0
  279. package/cloud-runtime/standalone/apps/local/lib/tracker/tracker-item-metadata-store.ts +262 -0
  280. package/cloud-runtime/standalone/apps/local/lib/tracker/tracker-item-store.ts +10 -3
  281. package/cloud-runtime/standalone/apps/local/lib/tracker/tracker-run-store.ts +42 -0
  282. package/cloud-runtime/standalone/apps/local/state/trackerBoardFilters.ts +4 -0
  283. package/cloud-runtime/standalone/apps/local/worker/index.js +5 -2
  284. package/package.json +1 -1
  285. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__30bf097e._.js +0 -3
  286. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__46ae9d33._.js +0 -3
  287. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__50fd8680._.js +0 -3
  288. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__8059a285._.js +0 -3
  289. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__886953ec._.js +0 -7
  290. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__97160565._.js +0 -3
  291. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0876dfd6ce07abaf.js +0 -9
  292. package/cloud-runtime/standalone/apps/local/.next/static/chunks/1ec83777a9abd420.js +0 -16
  293. package/cloud-runtime/standalone/apps/local/.next/static/chunks/286758b0fd546c68.js +0 -16
  294. package/cloud-runtime/standalone/apps/local/.next/static/chunks/a72ed5cb3feb0d51.js +0 -5
  295. package/cloud-runtime/standalone/apps/local/.next/static/chunks/b02c180ad1d968eb.js +0 -16
  296. package/cloud-runtime/standalone/apps/local/.next/static/chunks/b048a4812b51f97a.js +0 -1
  297. package/cloud-runtime/standalone/apps/local/.next/static/chunks/c63d97c917d96f47.js +0 -46
  298. package/cloud-runtime/standalone/apps/local/.next/static/chunks/d3bf70e2fbdc0ae5.js +0 -5
  299. package/cloud-runtime/standalone/apps/local/.next/static/chunks/dd5a56eea2d4c067.js +0 -16
  300. package/cloud-runtime/standalone/apps/local/.next/static/chunks/dd7d7c382389b8b9.js +0 -16
  301. package/cloud-runtime/standalone/apps/local/.next/static/chunks/ec92e3bd6c2db6e6.css +0 -1
  302. package/cloud-runtime/standalone/apps/local/.next/static/chunks/ffcc32453866d0c2.js +0 -1
  303. /package/cloud-runtime/standalone/apps/local/.next/static/{ycVU7ABTMiX10ainku7bE → 4MnUE2NHztybGBWFbcBo5}/_buildManifest.js +0 -0
  304. /package/cloud-runtime/standalone/apps/local/.next/static/{ycVU7ABTMiX10ainku7bE → 4MnUE2NHztybGBWFbcBo5}/_clientMiddlewareManifest.json +0 -0
  305. /package/cloud-runtime/standalone/apps/local/.next/static/{ycVU7ABTMiX10ainku7bE → 4MnUE2NHztybGBWFbcBo5}/_ssgManifest.js +0 -0
@@ -91,15 +91,30 @@ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/a
91
91
  issue_id, issue_identifier, issue_title,
92
92
  issue_status, issue_assignee, thread_id, root_message_id, chat_run_id,
93
93
  agent_id, agent_name, mode, status, error, recap_file_path, created_at, updated_at
94
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, NULL, NULL, ?, ?, ?, 'queued', NULL, ?, ?, ?)`).run(r,u(e.projectId??null),u(e.projectSlug??null),i,e.issueId.trim(),e.issueIdentifier.trim(),e.issueTitle.trim(),e.issueStatus.trim(),u(e.issueAssignee??null),a,e.agentId.trim(),e.agentName.trim(),s,u(e.recapFilePath??null),t,t);let o=n.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(r);if(!o)throw Error(`Failed to create tracker run ${r}`);return d(o)})}async function E(e){return c(t=>{let r=["updated_at = ?"],a=[Date.now()];void 0!==e.rootMessageId&&(r.push("root_message_id = ?"),a.push(u(e.rootMessageId))),void 0!==e.chatRunId&&(r.push("chat_run_id = ?"),a.push(u(e.chatRunId))),void 0!==e.status&&(r.push("status = ?"),a.push(e.status)),void 0!==e.error&&(r.push("error = ?"),a.push(u(e.error))),a.push(e.id.trim()),t.prepare(`UPDATE tracker_runs SET ${r.join(", ")} WHERE id = ?`).run(...a);let s=t.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(e.id.trim());return s?d(s):null})}async function T(e){return c(t=>{let r=t.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(e.trim());return r?d(r):null})}async function h(e){let t=e.issueId.trim(),r=u(e.projectId??null),a=u(e.trackerType??null),s=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),100):50;return c(e=>{let i=[t],n=["tr.issue_id = ?"];return r&&(n.push("tr.project_id = ?"),i.push(r)),a&&(n.push("tr.tracker_type = ?"),i.push(a)),i.push(s),e.prepare(`${p}
94
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, NULL, NULL, ?, ?, ?, 'queued', NULL, ?, ?, ?)`).run(r,u(e.projectId??null),u(e.projectSlug??null),i,e.issueId.trim(),e.issueIdentifier.trim(),e.issueTitle.trim(),e.issueStatus.trim(),u(e.issueAssignee??null),a,e.agentId.trim(),e.agentName.trim(),s,u(e.recapFilePath??null),t,t);let o=n.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(r);if(!o)throw Error(`Failed to create tracker run ${r}`);return d(o)})}async function E(e){return c(t=>{let r=["updated_at = ?"],a=[Date.now()];void 0!==e.rootMessageId&&(r.push("root_message_id = ?"),a.push(u(e.rootMessageId))),void 0!==e.chatRunId&&(r.push("chat_run_id = ?"),a.push(u(e.chatRunId))),void 0!==e.status&&(r.push("status = ?"),a.push(e.status)),void 0!==e.error&&(r.push("error = ?"),a.push(u(e.error))),a.push(e.id.trim()),t.prepare(`UPDATE tracker_runs SET ${r.join(", ")} WHERE id = ?`).run(...a);let s=t.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(e.id.trim());return s?d(s):null})}async function T(e){return c(t=>{let r=t.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(e.trim());return r?d(r):null})}async function m(e){let t=e.issueId.trim(),r=u(e.projectId??null),a=u(e.trackerType??null),s=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),100):50;return c(e=>{let i=[t],n=["tr.issue_id = ?"];return r&&(n.push("tr.project_id = ?"),i.push(r)),a&&(n.push("tr.tracker_type = ?"),i.push(a)),i.push(s),e.prepare(`${p}
95
95
  WHERE ${n.join(" AND ")}
96
96
  ORDER BY tr.created_at DESC
97
- LIMIT ?`).all(...i).map(d)})}async function m(e){return c(t=>{let r=e?.trim(),a=r?`SELECT issue_id, MAX(created_at) AS last_activity_at
97
+ LIMIT ?`).all(...i).map(d)})}async function h(e){return c(t=>{let r=e?.trim(),a=r?`SELECT issue_id, MAX(created_at) AS last_activity_at
98
98
  FROM tracker_runs
99
99
  WHERE project_id = ?
100
100
  GROUP BY issue_id`:`SELECT issue_id, MAX(created_at) AS last_activity_at
101
101
  FROM tracker_runs
102
- GROUP BY issue_id`,s=r?t.prepare(a).all(e.trim()):t.prepare(a).all(),i=new Map;for(let e of s)i.set(e.issue_id,new Date(e.last_activity_at).toISOString());return i})}async function g(e){return c(t=>{let r=e?.trim(),a=r?`SELECT DISTINCT tr.issue_id, tr.agent_id, tr.agent_name
102
+ GROUP BY issue_id`,s=r?t.prepare(a).all(e.trim()):t.prepare(a).all(),i=new Map;for(let e of s)i.set(e.issue_id,new Date(e.last_activity_at).toISOString());return i})}async function g(e){return c(t=>{let r=e?.trim(),a=r?`SELECT tr.issue_id,
103
+ COUNT(DISTINCT tr.id) AS sessions,
104
+ COALESCE(SUM(mc.cnt), 0) AS messages
105
+ FROM tracker_runs tr
106
+ LEFT JOIN (
107
+ SELECT thread_id, COUNT(*) AS cnt FROM messages GROUP BY thread_id
108
+ ) mc ON mc.thread_id = tr.thread_id
109
+ WHERE tr.project_id = ?
110
+ GROUP BY tr.issue_id`:`SELECT tr.issue_id,
111
+ COUNT(DISTINCT tr.id) AS sessions,
112
+ COALESCE(SUM(mc.cnt), 0) AS messages
113
+ FROM tracker_runs tr
114
+ LEFT JOIN (
115
+ SELECT thread_id, COUNT(*) AS cnt FROM messages GROUP BY thread_id
116
+ ) mc ON mc.thread_id = tr.thread_id
117
+ GROUP BY tr.issue_id`;return(r?t.prepare(a).all(e.trim()):t.prepare(a).all()).map(e=>({issueId:e.issue_id,sessions:e.sessions,messages:e.messages}))})}async function f(e){return c(t=>{let r=e?.trim(),a=r?`SELECT DISTINCT tr.issue_id, tr.agent_id, tr.agent_name
103
118
  FROM tracker_runs tr
104
119
  INNER JOIN chat_runs cr ON cr.id = (
105
120
  SELECT id FROM chat_runs WHERE thread_id = tr.thread_id ORDER BY updated_at DESC LIMIT 1
@@ -110,10 +125,10 @@ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/a
110
125
  INNER JOIN chat_runs cr ON cr.id = (
111
126
  SELECT id FROM chat_runs WHERE thread_id = tr.thread_id ORDER BY updated_at DESC LIMIT 1
112
127
  )
113
- WHERE cr.status IN ('queued', 'running')`;return(r?t.prepare(a).all(e.trim()):t.prepare(a).all()).map(e=>({issueId:e.issue_id,agentId:e.agent_id,agentName:e.agent_name}))})}e.s(["createLinearRun",0,_,"createTrackerRun",()=>_,"getIssueActiveAgents",()=>g,"getIssueActivityMap",()=>m,"getLinearRun",0,T,"getTrackerRun",()=>T,"listLinearRuns",0,h,"listTrackerRuns",()=>h,"updateLinearRun",0,E,"updateTrackerRun",()=>E])},87057,e=>{"use strict";var t=e.i(692988),r=e.i(635595),a=e.i(75473),s=e.i(923435),i=e.i(418475),n=e.i(303482),o=e.i(976287),u=e.i(774462),l=e.i(111998),d=e.i(201516),c=e.i(68877),p=e.i(259460),_=e.i(257714),E=e.i(502073),T=e.i(187345),h=e.i(193695);e.i(293777);var m=e.i(274321),g=e.i(732470);e.i(698134);var f=e.i(85e4),N=e.i(522734),L=e.i(446786),S=e.i(814747),R=e.i(460275);let I="latest.md";function A(e,t){return S.default.join(process.env.AGX_HOME??S.default.join(L.default.homedir(),".agx"),"tracker",e,t,"recaps")}async function O(e,t,r){let a=A(e,t);await N.promises.mkdir(a,{recursive:!0});let s=new Date().toISOString().replace(/[:.]/g,"-")+".md",i=S.default.join(a,s);await N.promises.writeFile(i,r,"utf8");let n=S.default.join(a,I);try{await N.promises.unlink(n)}catch{}for(let e of(await N.promises.symlink(s,n),(await N.promises.readdir(a)).filter(e=>e.endsWith(".md")&&e!==I).sort().reverse().slice(10)))try{await N.promises.unlink(S.default.join(a,e))}catch{}let o=await N.promises.stat(i);return{content:r,filePath:i,generatedAt:o.mtime}}async function w(e,t){let r=S.default.join(A(e,t),I);try{let e=await N.promises.stat(r);return{content:await N.promises.readFile(r,"utf8"),filePath:r,generatedAt:e.mtime}}catch{return null}}async function x(e,t,r){let a,s=!!r.tickets,i=(await (0,f.listTrackerRuns)({issueId:t,trackerType:e,limit:10})).map(e=>`- ${e.status}: ${e.sessionTitle??e.issueTitle} (${e.agentName})`).join("\n");if(s&&r.tickets){let e=r.tickets.map(e=>`- ${e.identifier}: ${e.title} [${e.status}]${e.assignee?` (${e.assignee.name})`:""}`).join("\n");a=[`Group: ${r.title}`,"",`Tickets (${r.tickets.length}):`,e,"",i?`Prior sessions:
128
+ WHERE cr.status IN ('queued', 'running')`;return(r?t.prepare(a).all(e.trim()):t.prepare(a).all()).map(e=>({issueId:e.issue_id,agentId:e.agent_id,agentName:e.agent_name}))})}e.s(["createLinearRun",0,_,"createTrackerRun",()=>_,"getIssueActiveAgents",()=>f,"getIssueActivityMap",()=>h,"getIssueStats",()=>g,"getLinearRun",0,T,"getTrackerRun",()=>T,"listLinearRuns",0,m,"listTrackerRuns",()=>m,"updateLinearRun",0,E,"updateTrackerRun",()=>E])},87057,e=>{"use strict";var t=e.i(692988),r=e.i(635595),a=e.i(75473),s=e.i(923435),i=e.i(418475),n=e.i(303482),o=e.i(976287),u=e.i(774462),l=e.i(111998),d=e.i(201516),c=e.i(68877),p=e.i(259460),_=e.i(257714),E=e.i(502073),T=e.i(187345),m=e.i(193695);e.i(293777);var h=e.i(274321),g=e.i(732470);e.i(698134);var f=e.i(85e4),S=e.i(522734),N=e.i(446786),L=e.i(814747),R=e.i(460275);let I="latest.md";function A(e,t){return L.default.join(process.env.AGX_HOME??L.default.join(N.default.homedir(),".agx"),"tracker",e,t,"recaps")}async function O(e,t,r){let a=A(e,t);await S.promises.mkdir(a,{recursive:!0});let s=new Date().toISOString().replace(/[:.]/g,"-")+".md",i=L.default.join(a,s);await S.promises.writeFile(i,r,"utf8");let n=L.default.join(a,I);try{await S.promises.unlink(n)}catch{}for(let e of(await S.promises.symlink(s,n),(await S.promises.readdir(a)).filter(e=>e.endsWith(".md")&&e!==I).sort().reverse().slice(10)))try{await S.promises.unlink(L.default.join(a,e))}catch{}let o=await S.promises.stat(i);return{content:r,filePath:i,generatedAt:o.mtime}}async function w(e,t){let r=L.default.join(A(e,t),I);try{let e=await S.promises.stat(r);return{content:await S.promises.readFile(r,"utf8"),filePath:r,generatedAt:e.mtime}}catch{return null}}async function x(e,t,r){let a,s=!!r.tickets,i=(await (0,f.listTrackerRuns)({issueId:t,trackerType:e,limit:10})).map(e=>`- ${e.status}: ${e.sessionTitle??e.issueTitle} (${e.agentName})`).join("\n");if(s&&r.tickets){let e=r.tickets.map(e=>`- ${e.identifier}: ${e.title} [${e.status}]${e.assignee?` (${e.assignee.name})`:""}`).join("\n");a=[`Group: ${r.title}`,"",`Tickets (${r.tickets.length}):`,e,"",i?`Prior sessions:
114
129
  ${i}`:"No prior sessions.","\nWrite the recap now."].join("\n")}else a=[`Ticket: ${r.identifier} — ${r.title}`,`Status: ${r.status}`,r.assignee?`Assignee: ${r.assignee}`:null,r.description?`
115
130
  Description:
116
131
  ${r.description}`:null,"",i?`Prior sessions:
117
- ${i}`:"No prior sessions.","","Write the recap now."].filter(Boolean).join("\n");let n="";await (0,R.runCliResponse)({provider:"claude",model:null,prompt:a,systemContext:s?"You are writing a short recap of a group of tracker tickets (e.g. a cycle or sprint).\nOutput raw markdown only — no JSON, no fences around the whole response.\nKeep it 150–350 words.\nCover: overall progress, what's done, what's in progress, and what's remaining.\nMention individual tickets by identifier when relevant.\nWrite in plain prose. No headings above h3.":"You are writing a short recap of a tracker ticket.\nOutput raw markdown only — no JSON, no fences around the whole response.\nKeep it 100–250 words.\nCover: what the ticket is about, what's been attempted (if anything), and what's open.\nWrite in plain prose. No headings above h3.",onDelta:e=>{n+=e}});let o=n.trim();if(!o)throw Error("Recap generation returned empty output");await O(e,t,o)}let v=new Map;function y(e,t){return`${e}:${t}`}async function k(e,t,r){let a=y(e,t);v.set(a,{status:"running",startedAt:Date.now()});try{await x(e,t,r),v.delete(a)}catch(t){let e=t instanceof Error?t.message:String(t);v.set(a,{status:"failed",startedAt:Date.now(),error:e}),setTimeout(()=>{let e=v.get(a);e?.status==="failed"&&v.delete(a)},6e4)}}var C=e.i(88007);async function M(t,{params:r}){let{tracker:a,id:s}=await r,i=t.nextUrl.searchParams.get("projectId")?.trim(),n=t.nextUrl.searchParams.get("runId")?.trim();try{if(n){let t=await (0,f.getTrackerRun)(n);if(t?.recapFilePath){let{readFile:r}=await e.A(260815),a=await r(t.recapFilePath,"utf-8");return g.NextResponse.json({content:a,generatedAt:t.updatedAt,filePath:t.recapFilePath,status:"idle",error:null})}}let t=await w(a,s),r=v.get(y(a,s))??null;if(!t){let t=(await (0,f.listTrackerRuns)({issueId:s,projectId:i??null,trackerType:a,limit:1}))[0];if(t?.recapFilePath){let{readFile:a}=await e.A(260815);try{let e=await a(t.recapFilePath,"utf-8");return g.NextResponse.json({content:e,generatedAt:t.updatedAt,filePath:t.recapFilePath,status:r?.status??"idle",error:r?.error??null})}catch{}}}return g.NextResponse.json({content:t?.content??null,generatedAt:t?.generatedAt.toISOString()??null,filePath:t?.filePath??null,status:r?.status??"idle",error:r?.error??null})}catch(t){let e=t instanceof Error?t.message:"Failed to fetch recap";return g.NextResponse.json({error:e},{status:500})}}async function U(e,{params:t}){let{tracker:r,id:a}=await t,s=e.nextUrl.searchParams.get("projectId")?.trim();try{let e,t=(0,C.getAdapter)(r);try{let r=await t.getItem(s??"",a);e={identifier:r.identifier,title:r.title,status:r.status,assignee:r.assignee?.name,description:r.description}}catch{let{items:i}=await t.listItems(s??"",{groupIds:[a],limit:50}),n=(await (0,f.listTrackerRuns)({issueId:a,trackerType:r,projectId:s??null,limit:1}))[0];e={identifier:n?.issueIdentifier??a,title:n?.issueTitle??"Group",status:n?.issueStatus??"unknown",tickets:i}}let i=function(e,t,r){let a=y(e,t),s=v.get(a);if(s&&"failed"!==s.status)return s;let i={status:"queued",startedAt:Date.now()};return v.set(a,i),Promise.resolve().then(()=>k(e,t,r)),i}(r,a,e);return g.NextResponse.json({status:i.status,startedAt:new Date(i.startedAt).toISOString()})}catch(t){let e=t instanceof Error?t.message:"Failed to enqueue recap";return g.NextResponse.json({error:e},{status:500})}}e.s(["GET",()=>M,"POST",()=>U,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],953346);var D=e.i(953346);let P=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/trackers/[tracker]/items/[id]/recap/route",pathname:"/api/trackers/[tracker]/items/[id]/recap",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/local/app/api/trackers/[tracker]/items/[id]/recap/route.ts",nextConfigOutput:"standalone",userland:D}),{workAsyncStorage:j,workUnitAsyncStorage:b,serverHooks:F}=P;function X(){return(0,a.patchFetch)({workAsyncStorage:j,workUnitAsyncStorage:b})}async function $(e,t,a){P.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/trackers/[tracker]/items/[id]/recap/route";g=g.replace(/\/index$/,"")||"/";let f=await P.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!f)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:N,params:L,nextConfig:S,parsedUrl:R,isDraftMode:I,prerenderManifest:A,routerServerContext:O,isOnDemandRevalidate:w,revalidateOnlyGenerated:x,resolvedPathname:v,clientReferenceManifest:y,serverActionsManifest:k}=f,C=(0,o.normalizeAppPath)(g),M=!!(A.dynamicRoutes[C]||A.routes[v]),U=async()=>((null==O?void 0:O.render404)?await O.render404(e,t,R,!1):t.end("This page could not be found"),null);if(M&&!I){let e=!!A.routes[v],t=A.dynamicRoutes[C];if(t&&!1===t.fallback&&!e){if(S.experimental.adapterPath)return await U();throw new h.NoFallbackError}}let D=null;!M||P.isDev||I||(D="/index"===(D=v)?"/":D);let j=!0===P.isDev||!M,b=M&&!j;k&&y&&(0,n.setManifestsSingleton)({page:g,clientReferenceManifest:y,serverActionsManifest:k});let F=e.method||"GET",X=(0,i.getTracer)(),$=X.getActiveScopeSpan(),q={params:L,prerenderManifest:A,renderOpts:{experimental:{authInterrupts:!!S.experimental.authInterrupts},cacheComponents:!!S.cacheComponents,supportsDynamicResponse:j,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:S.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>P.onRequestError(e,t,a,s,O)},sharedContext:{buildId:N}},H=new u.NodeNextRequest(e),G=new u.NodeNextResponse(t),B=l.NextRequestAdapter.fromNodeNextRequest(H,(0,l.signalFromNodeResponse)(t));try{let n=async e=>P.handle(B,q).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=X.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=`${F} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${F} ${g}`)}),o=!!(0,s.getRequestMeta)(e,"minimalMode"),u=async s=>{var i,u;let l=async({previousCacheEntry:r})=>{try{if(!o&&w&&x&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await n(s);e.fetchMetrics=q.renderOpts.fetchMetrics;let u=q.renderOpts.pendingWaitUntil;u&&a.waitUntil&&(a.waitUntil(u),u=void 0);let l=q.renderOpts.collectedTags;if(!M)return await (0,p.sendResponse)(H,G,i,q.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,_.toNodeOutgoingHttpHeaders)(i.headers);l&&(t[T.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==q.renderOpts.collectedRevalidate&&!(q.renderOpts.collectedRevalidate>=T.INFINITE_CACHE)&&q.renderOpts.collectedRevalidate,a=void 0===q.renderOpts.collectedExpire||q.renderOpts.collectedExpire>=T.INFINITE_CACHE?void 0:q.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await P.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:b,isOnDemandRevalidate:w})},!1,O),t}},d=await P.handleResponse({req:e,nextConfig:S,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:w,revalidateOnlyGenerated:x,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:o});if(!M)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(u=d.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",w?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),I&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,_.fromNodeOutgoingHttpHeaders)(d.value.headers);return o&&M||h.delete(T.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,E.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(H,G,new Response(d.value.body,{headers:h,status:d.value.status||200})),null};$?await u($):await X.withPropagatedContext(e.headers,()=>X.trace(d.BaseServerSpan.handleRequest,{spanName:`${F} ${g}`,kind:i.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},u))}catch(t){if(t instanceof h.NoFallbackError||await P.onRequestError(e,t,{routerKind:"App Router",routePath:C,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:b,isOnDemandRevalidate:w})},!1,O),M)throw t;return await (0,p.sendResponse)(H,G,new Response(null,{status:500})),null}}e.s(["handler",()=>$,"patchFetch",()=>X,"routeModule",()=>P,"serverHooks",()=>F,"workAsyncStorage",()=>j,"workUnitAsyncStorage",()=>b],87057)},58723,e=>{e.v(e=>Promise.resolve().then(()=>e(78362)))},138720,e=>{e.v(e=>Promise.resolve().then(()=>e(85e4)))},410437,e=>{e.v(e=>Promise.resolve().then(()=>e(862263)))},836400,e=>{e.v(e=>Promise.resolve().then(()=>e(581001)))},169447,e=>{e.v(e=>Promise.resolve().then(()=>e(242617)))},119130,e=>{e.v(e=>Promise.resolve().then(()=>e(607495)))},260815,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_fs_promises_0bfe4114._.js"].map(t=>e.l(t))).then(()=>t(924868)))}];
132
+ ${i}`:"No prior sessions.","","Write the recap now."].filter(Boolean).join("\n");let n="";await (0,R.runCliResponse)({provider:"claude",model:null,prompt:a,systemContext:s?"You are writing a short recap of a group of tracker tickets (e.g. a cycle or sprint).\nOutput raw markdown only — no JSON, no fences around the whole response.\nKeep it 150–350 words.\nCover: overall progress, what's done, what's in progress, and what's remaining.\nMention individual tickets by identifier when relevant.\nWrite in plain prose. No headings above h3.":"You are writing a short recap of a tracker ticket.\nOutput raw markdown only — no JSON, no fences around the whole response.\nKeep it 100–250 words.\nCover: what the ticket is about, what's been attempted (if anything), and what's open.\nWrite in plain prose. No headings above h3.",onDelta:e=>{n+=e}});let o=n.trim();if(!o)throw Error("Recap generation returned empty output");await O(e,t,o)}let C=new Map;function v(e,t){return`${e}:${t}`}async function y(e,t,r){let a=v(e,t);C.set(a,{status:"running",startedAt:Date.now()});try{await x(e,t,r),C.delete(a)}catch(t){let e=t instanceof Error?t.message:String(t);C.set(a,{status:"failed",startedAt:Date.now(),error:e}),setTimeout(()=>{let e=C.get(a);e?.status==="failed"&&C.delete(a)},6e4)}}var k=e.i(88007);async function U(t,{params:r}){let{tracker:a,id:s}=await r,i=t.nextUrl.searchParams.get("projectId")?.trim(),n=t.nextUrl.searchParams.get("runId")?.trim();try{if(n){let t=await (0,f.getTrackerRun)(n);if(t?.recapFilePath){let{readFile:r}=await e.A(260815),a=await r(t.recapFilePath,"utf-8");return g.NextResponse.json({content:a,generatedAt:t.updatedAt,filePath:t.recapFilePath,status:"idle",error:null})}}let t=await w(a,s),r=C.get(v(a,s))??null;if(!t){let t=(await (0,f.listTrackerRuns)({issueId:s,projectId:i??null,trackerType:a,limit:1}))[0];if(t?.recapFilePath){let{readFile:a}=await e.A(260815);try{let e=await a(t.recapFilePath,"utf-8");return g.NextResponse.json({content:e,generatedAt:t.updatedAt,filePath:t.recapFilePath,status:r?.status??"idle",error:r?.error??null})}catch{}}}return g.NextResponse.json({content:t?.content??null,generatedAt:t?.generatedAt.toISOString()??null,filePath:t?.filePath??null,status:r?.status??"idle",error:r?.error??null})}catch(t){let e=t instanceof Error?t.message:"Failed to fetch recap";return g.NextResponse.json({error:e},{status:500})}}async function M(e,{params:t}){let{tracker:r,id:a}=await t,s=e.nextUrl.searchParams.get("projectId")?.trim();try{let e,t=(0,k.getAdapter)(r);try{let r=await t.getItem(s??"",a);e={identifier:r.identifier,title:r.title,status:r.status,assignee:r.assignee?.name,description:r.description}}catch{let{items:i}=await t.listItems(s??"",{groupIds:[a],limit:50}),n=(await (0,f.listTrackerRuns)({issueId:a,trackerType:r,projectId:s??null,limit:1}))[0];e={identifier:n?.issueIdentifier??a,title:n?.issueTitle??"Group",status:n?.issueStatus??"unknown",tickets:i}}let i=function(e,t,r){let a=v(e,t),s=C.get(a);if(s&&"failed"!==s.status)return s;let i={status:"queued",startedAt:Date.now()};return C.set(a,i),Promise.resolve().then(()=>y(e,t,r)),i}(r,a,e);return g.NextResponse.json({status:i.status,startedAt:new Date(i.startedAt).toISOString()})}catch(t){let e=t instanceof Error?t.message:"Failed to enqueue recap";return g.NextResponse.json({error:e},{status:500})}}e.s(["GET",()=>U,"POST",()=>M,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],953346);var D=e.i(953346);let P=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/trackers/[tracker]/items/[id]/recap/route",pathname:"/api/trackers/[tracker]/items/[id]/recap",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/local/app/api/trackers/[tracker]/items/[id]/recap/route.ts",nextConfigOutput:"standalone",userland:D}),{workAsyncStorage:j,workUnitAsyncStorage:F,serverHooks:b}=P;function X(){return(0,a.patchFetch)({workAsyncStorage:j,workUnitAsyncStorage:F})}async function $(e,t,a){P.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/trackers/[tracker]/items/[id]/recap/route";g=g.replace(/\/index$/,"")||"/";let f=await P.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!f)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:S,params:N,nextConfig:L,parsedUrl:R,isDraftMode:I,prerenderManifest:A,routerServerContext:O,isOnDemandRevalidate:w,revalidateOnlyGenerated:x,resolvedPathname:C,clientReferenceManifest:v,serverActionsManifest:y}=f,k=(0,o.normalizeAppPath)(g),U=!!(A.dynamicRoutes[k]||A.routes[C]),M=async()=>((null==O?void 0:O.render404)?await O.render404(e,t,R,!1):t.end("This page could not be found"),null);if(U&&!I){let e=!!A.routes[C],t=A.dynamicRoutes[k];if(t&&!1===t.fallback&&!e){if(L.experimental.adapterPath)return await M();throw new m.NoFallbackError}}let D=null;!U||P.isDev||I||(D="/index"===(D=C)?"/":D);let j=!0===P.isDev||!U,F=U&&!j;y&&v&&(0,n.setManifestsSingleton)({page:g,clientReferenceManifest:v,serverActionsManifest:y});let b=e.method||"GET",X=(0,i.getTracer)(),$=X.getActiveScopeSpan(),H={params:N,prerenderManifest:A,renderOpts:{experimental:{authInterrupts:!!L.experimental.authInterrupts},cacheComponents:!!L.cacheComponents,supportsDynamicResponse:j,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:L.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>P.onRequestError(e,t,a,s,O)},sharedContext:{buildId:S}},q=new u.NodeNextRequest(e),G=new u.NodeNextResponse(t),B=l.NextRequestAdapter.fromNodeNextRequest(q,(0,l.signalFromNodeResponse)(t));try{let n=async e=>P.handle(B,H).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=X.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=`${b} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${b} ${g}`)}),o=!!(0,s.getRequestMeta)(e,"minimalMode"),u=async s=>{var i,u;let l=async({previousCacheEntry:r})=>{try{if(!o&&w&&x&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await n(s);e.fetchMetrics=H.renderOpts.fetchMetrics;let u=H.renderOpts.pendingWaitUntil;u&&a.waitUntil&&(a.waitUntil(u),u=void 0);let l=H.renderOpts.collectedTags;if(!U)return await (0,p.sendResponse)(q,G,i,H.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,_.toNodeOutgoingHttpHeaders)(i.headers);l&&(t[T.NEXT_CACHE_TAGS_HEADER]=l),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==H.renderOpts.collectedRevalidate&&!(H.renderOpts.collectedRevalidate>=T.INFINITE_CACHE)&&H.renderOpts.collectedRevalidate,a=void 0===H.renderOpts.collectedExpire||H.renderOpts.collectedExpire>=T.INFINITE_CACHE?void 0:H.renderOpts.collectedExpire;return{value:{kind:h.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await P.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:F,isOnDemandRevalidate:w})},!1,O),t}},d=await P.handleResponse({req:e,nextConfig:L,cacheKey:D,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:w,revalidateOnlyGenerated:x,responseGenerator:l,waitUntil:a.waitUntil,isMinimalMode:o});if(!U)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==h.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(u=d.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",w?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),I&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,_.fromNodeOutgoingHttpHeaders)(d.value.headers);return o&&U||m.delete(T.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,E.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(q,G,new Response(d.value.body,{headers:m,status:d.value.status||200})),null};$?await u($):await X.withPropagatedContext(e.headers,()=>X.trace(d.BaseServerSpan.handleRequest,{spanName:`${b} ${g}`,kind:i.SpanKind.SERVER,attributes:{"http.method":b,"http.target":e.url}},u))}catch(t){if(t instanceof m.NoFallbackError||await P.onRequestError(e,t,{routerKind:"App Router",routePath:k,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:F,isOnDemandRevalidate:w})},!1,O),U)throw t;return await (0,p.sendResponse)(q,G,new Response(null,{status:500})),null}}e.s(["handler",()=>$,"patchFetch",()=>X,"routeModule",()=>P,"serverHooks",()=>b,"workAsyncStorage",()=>j,"workUnitAsyncStorage",()=>F],87057)},58723,e=>{e.v(e=>Promise.resolve().then(()=>e(78362)))},138720,e=>{e.v(e=>Promise.resolve().then(()=>e(85e4)))},410437,e=>{e.v(e=>Promise.resolve().then(()=>e(862263)))},836400,e=>{e.v(e=>Promise.resolve().then(()=>e(581001)))},169447,e=>{e.v(e=>Promise.resolve().then(()=>e(242617)))},119130,e=>{e.v(e=>Promise.resolve().then(()=>e(607495)))},260815,e=>{e.v(t=>Promise.all(["server/chunks/[externals]_fs_promises_0bfe4114._.js"].map(t=>e.l(t))).then(()=>t(924868)))}];
118
133
 
119
134
  //# sourceMappingURL=%5Broot-of-the-server%5D__7db7c421._.js.map
@@ -119,12 +119,12 @@ ${n}`,i="";try{await (0,r.runCliResponse)({provider:"claude",model:"claude-haiku
119
119
  LIMIT 1`).get(r)??null}function C(){let e=new Set;if((0,a.isAutomationFrontmatterEnabled)()){for(let t of(0,a.getAutomationRepository)().listVisibleAutomations({targetType:"execution_graph",state:"active"}))"execution_graph"===t.definition.target.type&&t.definition.target.rootMessageId&&e.add(t.definition.target.rootMessageId);if(!(0,a.isAutomationDualReadEnabled)())return[...e]}for(let r of(0,t.getSQLiteDb)().prepare(`SELECT json_extract(schedule, '$.rootMessageId') AS rootMessageId
120
120
  FROM execution_graphs
121
121
  WHERE schedule IS NOT NULL
122
- AND json_extract(schedule, '$.state') = 'active'`).all())r.rootMessageId&&e.add(r.rootMessageId);return[...e]}function w(e){let r=e.trim();if(!r)return 0;let n=0;if((0,a.isAutomationFrontmatterEnabled)()){for(let e of(0,a.getAutomationRepository)().listVisibleAutomations({targetType:"execution_graph",state:"active",rootMessageId:r})){if("execution_graph"!==e.definition.target.type)continue;let t=e.definition.target.graphId??e.definition.id,r=e.definition.target.taskId??g(t);if(!r)continue;let a=N(r);a?.schedule&&(S.updateGraphStructure(a.id,{mode:a.mode,nodes:a.nodes,edges:a.edges,policy:a.policy,doneCriteria:a.doneCriteria,schedule:{...a.schedule,state:"stopped",tickInProgress:!1,currentConcurrency:0}},a.graphVersion),n+=1)}if(n>0||!(0,a.isAutomationDualReadEnabled)())return n}return Number((0,t.getSQLiteDb)().prepare(`UPDATE execution_graphs
122
+ AND json_extract(schedule, '$.state') = 'active'`).all())r.rootMessageId&&e.add(r.rootMessageId);return[...e]}function M(e){let r=e.trim();if(!r)return 0;let n=0;if((0,a.isAutomationFrontmatterEnabled)()){for(let e of(0,a.getAutomationRepository)().listVisibleAutomations({targetType:"execution_graph",state:"active",rootMessageId:r})){if("execution_graph"!==e.definition.target.type)continue;let t=e.definition.target.graphId??e.definition.id,r=e.definition.target.taskId??g(t);if(!r)continue;let a=N(r);a?.schedule&&(S.updateGraphStructure(a.id,{mode:a.mode,nodes:a.nodes,edges:a.edges,policy:a.policy,doneCriteria:a.doneCriteria,schedule:{...a.schedule,state:"stopped",tickInProgress:!1,currentConcurrency:0}},a.graphVersion),n+=1)}if(n>0||!(0,a.isAutomationDualReadEnabled)())return n}return Number((0,t.getSQLiteDb)().prepare(`UPDATE execution_graphs
123
123
  SET schedule = json_set(schedule, '$.state', 'stopped', '$.tickInProgress', json('false'), '$.currentConcurrency', 0),
124
124
  updated_at = strftime('%Y-%m-%dT%H:%M:%fZ','now')
125
125
  WHERE schedule IS NOT NULL
126
126
  AND json_extract(schedule, '$.rootMessageId') = ?
127
- AND json_extract(schedule, '$.state') = 'active'`).run(r).changes??0)}e.s(["GraphNodeNotFoundError",()=>d,"GraphNotFoundError",()=>o,"GraphStore",()=>f,"GraphTaskAlreadyBoundError",()=>u,"GraphVersionConflictError",()=>s,"appendEvent",()=>R,"createGraph",()=>A,"createGraphStore",()=>y,"deactivateSchedulesByRootMessageId",()=>w,"getActiveScheduleForRootMessageId",()=>k,"getActiveScheduleRootMessageIds",()=>C,"getGraph",()=>N,"getGraphEvents",()=>O,"getTaskIdForGraphId",()=>g,"updateGraphStructure",()=>L,"updateNodeRuntime",()=>I])},533655,e=>{"use strict";e.s(["BASH_FUNCTION_TIMEOUT_MS",0,3e4,"CHECK_NPM_BUILD_TIMEOUT_MS",0,6e5,"CHECK_NPM_COVERAGE_TIMEOUT_MS",0,3e5,"CHECK_NPM_LINT_TIMEOUT_MS",0,6e4,"CHECK_NPM_TEST_TIMEOUT_MS",0,3e5,"CHECK_NPM_TYPECHECK_TIMEOUT_MS",0,12e4,"GRAPH_TIMEOUT_DEFAULT_MS",0,864e5,"NODE_TIMEOUT_DEFAULT_MS",0,18e5,"PS_COMMAND_TIMEOUT_MS",0,5e3,"QUEUE_POLL_INTERVAL_MS",0,1e3,"SCHEDULE_POLL_INTERVAL_MS",0,5e3,"SHELL_COMMAND_TIMEOUT_MS",0,5e3,"SKILLS_CACHE_TTL_MS",0,36e5,"SKILL_DETAIL_CACHE_TTL_MS",0,36e5,"SKILL_FETCH_TIMEOUT_MS",0,12e4,"STEER_DUPLICATE_WINDOW_MS",0,9e5,"WRITE_RATE_SAMPLE_WINDOW_MS",0,1e4,"WRITE_RATE_WARNING_COOLDOWN_MS",0,6e4])},466713,e=>{"use strict";var t=e.i(533655);let r={replanBudgetRemaining:3,replanBudgetInitial:3,verifyBudgetRemaining:5,verifyBudgetInitial:5,maxConcurrentAutoChecks:1,immutableRequiredGates:!0,maxConcurrent:3,priorityMode:"fifo",nodeTimeoutMs:t.NODE_TIMEOUT_DEFAULT_MS,graphTimeoutMs:t.GRAPH_TIMEOUT_DEFAULT_MS};e.s(["DEFAULT_EXECUTION_POLICY",0,r,"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"]])},84548,e=>{"use strict";function t(e,t){return`---
127
+ AND json_extract(schedule, '$.state') = 'active'`).run(r).changes??0)}e.s(["GraphNodeNotFoundError",()=>d,"GraphNotFoundError",()=>o,"GraphStore",()=>f,"GraphTaskAlreadyBoundError",()=>u,"GraphVersionConflictError",()=>s,"appendEvent",()=>R,"createGraph",()=>A,"createGraphStore",()=>y,"deactivateSchedulesByRootMessageId",()=>M,"getActiveScheduleForRootMessageId",()=>k,"getActiveScheduleRootMessageIds",()=>C,"getGraph",()=>N,"getGraphEvents",()=>O,"getTaskIdForGraphId",()=>g,"updateGraphStructure",()=>L,"updateNodeRuntime",()=>I])},533655,e=>{"use strict";e.s(["BASH_FUNCTION_TIMEOUT_MS",0,3e4,"CHECK_NPM_BUILD_TIMEOUT_MS",0,6e5,"CHECK_NPM_COVERAGE_TIMEOUT_MS",0,3e5,"CHECK_NPM_LINT_TIMEOUT_MS",0,6e4,"CHECK_NPM_TEST_TIMEOUT_MS",0,3e5,"CHECK_NPM_TYPECHECK_TIMEOUT_MS",0,12e4,"GRAPH_TIMEOUT_DEFAULT_MS",0,864e5,"NODE_TIMEOUT_DEFAULT_MS",0,18e5,"PS_COMMAND_TIMEOUT_MS",0,5e3,"QUEUE_POLL_INTERVAL_MS",0,1e3,"SCHEDULE_POLL_INTERVAL_MS",0,5e3,"SHELL_COMMAND_TIMEOUT_MS",0,5e3,"SKILLS_CACHE_TTL_MS",0,36e5,"SKILL_DETAIL_CACHE_TTL_MS",0,36e5,"SKILL_FETCH_TIMEOUT_MS",0,12e4,"STEER_DUPLICATE_WINDOW_MS",0,9e5,"WRITE_RATE_SAMPLE_WINDOW_MS",0,1e4,"WRITE_RATE_WARNING_COOLDOWN_MS",0,6e4])},466713,e=>{"use strict";var t=e.i(533655);let r={replanBudgetRemaining:3,replanBudgetInitial:3,verifyBudgetRemaining:5,verifyBudgetInitial:5,maxConcurrentAutoChecks:1,immutableRequiredGates:!0,maxConcurrent:3,priorityMode:"fifo",nodeTimeoutMs:t.NODE_TIMEOUT_DEFAULT_MS,graphTimeoutMs:t.GRAPH_TIMEOUT_DEFAULT_MS};e.s(["DEFAULT_EXECUTION_POLICY",0,r,"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"]])},84548,e=>{"use strict";function t(e,t){return`---
128
128
  ${Object.entries(e).map(([e,t])=>`${e}: ${null==t?"":String(t)}`).join("\n")}
129
129
  ---
130
130
  ${t}`}e.s(["buildMarkdownWithFrontmatter",()=>t])},558174,e=>{"use strict";var t=e.i(769025),r=e.i(814747),n=e.i(446786),a=e.i(522734);let{DatabaseSync:i}=process.getBuiltinModule("node:sqlite"),s=process.env.AGX_GROUP_CHAT_DIR?.trim()||r.default.join(n.default.homedir(),".agx","group-chat"),o=r.default.join(s,"history.sqlite");function d(e){return{id:e.id,workspaceId:e.workspace_id,threadId:e.thread_id,agentId:e.agent_id,pid:e.pid,state:e.state,sinceMessageId:e.since_message_id,responseMessageId:e.response_message_id||"",startedAt:e.started_at,lastActivity:e.last_activity,projectSlug:e.project_slug||""}}function u(e){let r=function(){(0,a.mkdirSync)(s,{recursive:!0});let e=new i(o);(0,t.pragmaSet)(e,"journal_mode = WAL"),e.exec(`
@@ -173,7 +173,7 @@ ${t}`}e.s(["buildMarkdownWithFrontmatter",()=>t])},558174,e=>{"use strict";var t
173
173
  created_at INTEGER NOT NULL,
174
174
  updated_at INTEGER NOT NULL
175
175
  )
176
- `),e}();try{return e(r)}finally{r.close()}}function c(e){return u(t=>{let r=t.prepare(`INSERT INTO agent_processes (workspace_id, thread_id, agent_id, pid, state, since_message_id, response_message_id, started_at, last_activity, project_slug)
176
+ `),e.prepare("PRAGMA table_info(tracker_runs)").all().some(e=>"tracker_type"===e.name)||e.exec("ALTER TABLE tracker_runs ADD COLUMN tracker_type TEXT NOT NULL DEFAULT 'linear'"),e}();try{return e(r)}finally{r.close()}}function c(e){return u(t=>{let r=t.prepare(`INSERT INTO agent_processes (workspace_id, thread_id, agent_id, pid, state, since_message_id, response_message_id, started_at, last_activity, project_slug)
177
177
  VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
178
178
  ON CONFLICT(workspace_id, agent_id)
179
179
  DO UPDATE SET
@@ -190,7 +190,7 @@ ${t}`}e.s(["buildMarkdownWithFrontmatter",()=>t])},558174,e=>{"use strict";var t
190
190
  tr.tracker_type AS tracker_type
191
191
  FROM agent_processes ap
192
192
  LEFT JOIN messages m ON m.id = ap.thread_id AND m.thread_id = ap.workspace_id
193
- LEFT JOIN tracker_runs tr ON tr.thread_id = ap.workspace_id
193
+ LEFT JOIN tracker_runs tr ON tr.chat_run_id = ap.id
194
194
  `).all().map(e=>({...d(e),threadTitle:e.thread_title,trackerItemId:e.tracker_item_id??null,trackerRunId:e.tracker_run_id??null,trackerType:e.tracker_type??null,linearIssueId:e.tracker_item_id??null,linearRunId:e.tracker_run_id??null})))}function h(e){let t=0;for(let r of e){if(r.pid>0)try{process.kill(r.pid,"SIGTERM")}catch{}t++}return t}function m(e){let t=h(p(e).filter(e=>"running"===e.state||"spawning"===e.state));return t>0&&u(t=>t.prepare(`UPDATE agent_processes SET state = 'killed', last_activity = ?
195
195
  WHERE thread_id = ? AND state IN ('running', 'spawning')`).run(Date.now(),e)),t}function T(e){let t=h(E(e).filter(e=>"running"===e.state||"spawning"===e.state));return t>0&&u(t=>t.prepare(`UPDATE agent_processes SET state = 'killed', last_activity = ?
196
196
  WHERE workspace_id = ? AND state IN ('running', 'spawning')`).run(Date.now(),e)),t}e.s(["getAll",()=>_,"getAllEnriched",()=>g,"getByThread",()=>p,"getByWorkspace",()=>E,"killByThread",()=>m,"killByWorkspace",()=>T,"register",()=>c,"update",()=>l])}];
@@ -1,4 +1,4 @@
1
- module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},769025,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function s(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function n(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>s,"transactionFn",()=>n])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},744071,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])},452377,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(769025),r=e.i(522734),a=e.i(446786),s=e.i(814747);let n="3.35.0",i=["json1"],o=["fts5"],u=["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 l(l,c){let p=[],_=l.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}(_.v,n)&&p.push({kind:"version_mismatch",message:`SQLite version ${_.v} is below minimum ${n}`,found:_.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),i))d(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 o)d(l,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let E=function(t){"linux"!==a.default.platform()&&a.default.platform();try{let n=s.default.resolve(t),{execSync:i}=e.r(233405);if("darwin"===a.default.platform());else{let e=r.default.readFileSync("/proc/mounts","utf-8"),t="",a="unknown";for(let r of e.split("\n")){let[,e,s]=r.split(/\s+/);e&&n.startsWith(e)&&e.length>t.length&&(t=e,a=s||"unknown")}return a}}catch{}return null}(c);E&&u.some(e=>E.toLowerCase().includes(e))&&p.push({kind:"filesystem_error",message:`Database path '${c}' is on a network filesystem (${E})`,path:c,found:E,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])},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},770027,e=>{"use strict";e.i(698134);var t=e.i(88007);function r(e){if(!e)throw Error(`Missing tracker type. Available: ${(0,t.listAdapterTypes)().join(", ")}`);return(0,t.getAdapter)(e)}function a(e){return Response.json({error:e},{status:400})}e.s(["badRequest",()=>a,"resolveAdapter",()=>r])},85e4,e=>{"use strict";var t=e.i(522734),r=e.i(446786),a=e.i(814747),s=e.i(769025);let{DatabaseSync:n}=process.getBuiltinModule("node:sqlite"),i=process.env.AGX_GROUP_CHAT_DIR?.trim()||a.default.join(r.default.homedir(),".agx","group-chat"),o=a.default.join(i,"history.sqlite");function u(e){return e?.trim()||null}function d(e){return"scripted"===e?"scripted":"chat"}function l(e){let t,r=e.chat_created_at??e.created_at,a=e.chat_completed_at??null,s=function(e,t){switch(e){case"queued":return"queued";case"running":case"awaiting_user":case"blocked":return"running";case"completed":return"success";case"failed":return"failed";case"cancelled":return"cancelled";default:return t}}(e.chat_status,e.status);return{id:e.id,projectId:e.project_id,projectSlug:e.project_slug,trackerType:e.tracker_type,issueId:e.issue_id,issueIdentifier:e.issue_identifier,issueTitle:e.issue_title,issueStatus:e.issue_status,issueAssignee:e.issue_assignee,threadId:e.thread_id,rootMessageId:e.root_message_id,chatRunId:e.chat_run_id,agentId:e.agent_id,agentName:e.agent_name,mode:d(e.mode),sessionTitle:"chat"===d(e.mode)&&(t=String(e.root_content??"").replace(/\[reaction\s+[^\]]*\]/gi,"").replace(/\[agx:[^\]]*\]/g,"").replace(/\[checkpoint\]/g,"").replace(/\[criteria:\s*[^\]]*\]/g,"").replace(/\[done\]/g,"").replace(/\[blocked[^\]]*\]/g,"").replace(/^\[SKIP\]$/gm,"").replace(/\s+/g," ").trim())?t.length>72?`${t.slice(0,69).trimEnd()}...`:t:null,status:s,durationMs:null!=a?Math.max(a-r,0):null,lastError:e.chat_last_error??e.error,recapFilePath:e.recap_file_path??null,startedAt:new Date(r).toISOString(),updatedAt:new Date((e.chat_updated_at??e.updated_at)||e.updated_at).toISOString(),completedAt:"number"==typeof a?new Date(a).toISOString():null}}async function c(e){await t.promises.mkdir(i,{recursive:!0});let r=new n(o);(0,s.pragmaSet)(r,"journal_mode = WAL");try{r.exec(`
1
+ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},769025,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function s(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function i(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>s,"transactionFn",()=>i])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},744071,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])},452377,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(769025),r=e.i(522734),a=e.i(446786),s=e.i(814747);let i="3.35.0",n=["json1"],o=["fts5"],u=["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 l(l,c){let p=[],_=l.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}(_.v,i)&&p.push({kind:"version_mismatch",message:`SQLite version ${_.v} is below minimum ${i}`,found:_.v,required:`>= ${i}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),n))d(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 o)d(l,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let E=function(t){"linux"!==a.default.platform()&&a.default.platform();try{let i=s.default.resolve(t),{execSync:n}=e.r(233405);if("darwin"===a.default.platform());else{let e=r.default.readFileSync("/proc/mounts","utf-8"),t="",a="unknown";for(let r of e.split("\n")){let[,e,s]=r.split(/\s+/);e&&i.startsWith(e)&&e.length>t.length&&(t=e,a=s||"unknown")}return a}}catch{}return null}(c);E&&u.some(e=>E.toLowerCase().includes(e))&&p.push({kind:"filesystem_error",message:`Database path '${c}' is on a network filesystem (${E})`,path:c,found:E,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])},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},770027,e=>{"use strict";e.i(698134);var t=e.i(88007);function r(e){if(!e)throw Error(`Missing tracker type. Available: ${(0,t.listAdapterTypes)().join(", ")}`);return(0,t.getAdapter)(e)}function a(e){return Response.json({error:e},{status:400})}e.s(["badRequest",()=>a,"resolveAdapter",()=>r])},85e4,e=>{"use strict";var t=e.i(522734),r=e.i(446786),a=e.i(814747),s=e.i(769025);let{DatabaseSync:i}=process.getBuiltinModule("node:sqlite"),n=process.env.AGX_GROUP_CHAT_DIR?.trim()||a.default.join(r.default.homedir(),".agx","group-chat"),o=a.default.join(n,"history.sqlite");function u(e){return e?.trim()||null}function d(e){return"scripted"===e?"scripted":"chat"}function l(e){let t,r=e.chat_created_at??e.created_at,a=e.chat_completed_at??null,s=function(e,t){switch(e){case"queued":return"queued";case"running":case"awaiting_user":case"blocked":return"running";case"completed":return"success";case"failed":return"failed";case"cancelled":return"cancelled";default:return t}}(e.chat_status,e.status);return{id:e.id,projectId:e.project_id,projectSlug:e.project_slug,trackerType:e.tracker_type,issueId:e.issue_id,issueIdentifier:e.issue_identifier,issueTitle:e.issue_title,issueStatus:e.issue_status,issueAssignee:e.issue_assignee,threadId:e.thread_id,rootMessageId:e.root_message_id,chatRunId:e.chat_run_id,agentId:e.agent_id,agentName:e.agent_name,mode:d(e.mode),sessionTitle:"chat"===d(e.mode)&&(t=String(e.root_content??"").replace(/\[reaction\s+[^\]]*\]/gi,"").replace(/\[agx:[^\]]*\]/g,"").replace(/\[checkpoint\]/g,"").replace(/\[criteria:\s*[^\]]*\]/g,"").replace(/\[done\]/g,"").replace(/\[blocked[^\]]*\]/g,"").replace(/^\[SKIP\]$/gm,"").replace(/\s+/g," ").trim())?t.length>72?`${t.slice(0,69).trimEnd()}...`:t:null,status:s,durationMs:null!=a?Math.max(a-r,0):null,lastError:e.chat_last_error??e.error,recapFilePath:e.recap_file_path??null,startedAt:new Date(r).toISOString(),updatedAt:new Date((e.chat_updated_at??e.updated_at)||e.updated_at).toISOString(),completedAt:"number"==typeof a?new Date(a).toISOString():null}}async function c(e){await t.promises.mkdir(n,{recursive:!0});let r=new i(o);(0,s.pragmaSet)(r,"journal_mode = WAL");try{r.exec(`
2
2
  CREATE TABLE IF NOT EXISTS chat_runs (
3
3
  id TEXT PRIMARY KEY,
4
4
  thread_id TEXT NOT NULL,
@@ -85,20 +85,35 @@ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/a
85
85
  LEFT JOIN chat_runs cr ON cr.id = (
86
86
  SELECT id FROM chat_runs WHERE thread_id = tr.thread_id ORDER BY updated_at DESC LIMIT 1
87
87
  )
88
- LEFT JOIN messages msg ON msg.thread_id = tr.thread_id AND msg.id = tr.root_message_id`;async function _(e){let t=Date.now(),r=u(e.id)??crypto.randomUUID(),a=u(e.threadId)??`tracker-run:${r}`,s=d(e.mode),n=e.trackerType??"linear";return c(i=>{i.prepare(`INSERT INTO tracker_runs (
88
+ LEFT JOIN messages msg ON msg.thread_id = tr.thread_id AND msg.id = tr.root_message_id`;async function _(e){let t=Date.now(),r=u(e.id)??crypto.randomUUID(),a=u(e.threadId)??`tracker-run:${r}`,s=d(e.mode),i=e.trackerType??"linear";return c(n=>{n.prepare(`INSERT INTO tracker_runs (
89
89
  id, project_id, project_slug, tracker_type,
90
90
  issue_id, issue_identifier, issue_title,
91
91
  issue_status, issue_assignee, thread_id, root_message_id, chat_run_id,
92
92
  agent_id, agent_name, mode, status, error, recap_file_path, created_at, updated_at
93
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, NULL, NULL, ?, ?, ?, 'queued', NULL, ?, ?, ?)`).run(r,u(e.projectId??null),u(e.projectSlug??null),n,e.issueId.trim(),e.issueIdentifier.trim(),e.issueTitle.trim(),e.issueStatus.trim(),u(e.issueAssignee??null),a,e.agentId.trim(),e.agentName.trim(),s,u(e.recapFilePath??null),t,t);let o=i.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(r);if(!o)throw Error(`Failed to create tracker run ${r}`);return l(o)})}async function E(e){return c(t=>{let r=["updated_at = ?"],a=[Date.now()];void 0!==e.rootMessageId&&(r.push("root_message_id = ?"),a.push(u(e.rootMessageId))),void 0!==e.chatRunId&&(r.push("chat_run_id = ?"),a.push(u(e.chatRunId))),void 0!==e.status&&(r.push("status = ?"),a.push(e.status)),void 0!==e.error&&(r.push("error = ?"),a.push(u(e.error))),a.push(e.id.trim()),t.prepare(`UPDATE tracker_runs SET ${r.join(", ")} WHERE id = ?`).run(...a);let s=t.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(e.id.trim());return s?l(s):null})}async function T(e){return c(t=>{let r=t.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(e.trim());return r?l(r):null})}async function h(e){let t=e.issueId.trim(),r=u(e.projectId??null),a=u(e.trackerType??null),s=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),100):50;return c(e=>{let n=[t],i=["tr.issue_id = ?"];return r&&(i.push("tr.project_id = ?"),n.push(r)),a&&(i.push("tr.tracker_type = ?"),n.push(a)),n.push(s),e.prepare(`${p}
94
- WHERE ${i.join(" AND ")}
93
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, NULL, NULL, ?, ?, ?, 'queued', NULL, ?, ?, ?)`).run(r,u(e.projectId??null),u(e.projectSlug??null),i,e.issueId.trim(),e.issueIdentifier.trim(),e.issueTitle.trim(),e.issueStatus.trim(),u(e.issueAssignee??null),a,e.agentId.trim(),e.agentName.trim(),s,u(e.recapFilePath??null),t,t);let o=n.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(r);if(!o)throw Error(`Failed to create tracker run ${r}`);return l(o)})}async function E(e){return c(t=>{let r=["updated_at = ?"],a=[Date.now()];void 0!==e.rootMessageId&&(r.push("root_message_id = ?"),a.push(u(e.rootMessageId))),void 0!==e.chatRunId&&(r.push("chat_run_id = ?"),a.push(u(e.chatRunId))),void 0!==e.status&&(r.push("status = ?"),a.push(e.status)),void 0!==e.error&&(r.push("error = ?"),a.push(u(e.error))),a.push(e.id.trim()),t.prepare(`UPDATE tracker_runs SET ${r.join(", ")} WHERE id = ?`).run(...a);let s=t.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(e.id.trim());return s?l(s):null})}async function T(e){return c(t=>{let r=t.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(e.trim());return r?l(r):null})}async function m(e){let t=e.issueId.trim(),r=u(e.projectId??null),a=u(e.trackerType??null),s=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),100):50;return c(e=>{let i=[t],n=["tr.issue_id = ?"];return r&&(n.push("tr.project_id = ?"),i.push(r)),a&&(n.push("tr.tracker_type = ?"),i.push(a)),i.push(s),e.prepare(`${p}
94
+ WHERE ${n.join(" AND ")}
95
95
  ORDER BY tr.created_at DESC
96
- LIMIT ?`).all(...n).map(l)})}async function m(e){return c(t=>{let r=e?.trim(),a=r?`SELECT issue_id, MAX(created_at) AS last_activity_at
96
+ LIMIT ?`).all(...i).map(l)})}async function h(e){return c(t=>{let r=e?.trim(),a=r?`SELECT issue_id, MAX(created_at) AS last_activity_at
97
97
  FROM tracker_runs
98
98
  WHERE project_id = ?
99
99
  GROUP BY issue_id`:`SELECT issue_id, MAX(created_at) AS last_activity_at
100
100
  FROM tracker_runs
101
- GROUP BY issue_id`,s=r?t.prepare(a).all(e.trim()):t.prepare(a).all(),n=new Map;for(let e of s)n.set(e.issue_id,new Date(e.last_activity_at).toISOString());return n})}async function g(e){return c(t=>{let r=e?.trim(),a=r?`SELECT DISTINCT tr.issue_id, tr.agent_id, tr.agent_name
101
+ GROUP BY issue_id`,s=r?t.prepare(a).all(e.trim()):t.prepare(a).all(),i=new Map;for(let e of s)i.set(e.issue_id,new Date(e.last_activity_at).toISOString());return i})}async function g(e){return c(t=>{let r=e?.trim(),a=r?`SELECT tr.issue_id,
102
+ COUNT(DISTINCT tr.id) AS sessions,
103
+ COALESCE(SUM(mc.cnt), 0) AS messages
104
+ FROM tracker_runs tr
105
+ LEFT JOIN (
106
+ SELECT thread_id, COUNT(*) AS cnt FROM messages GROUP BY thread_id
107
+ ) mc ON mc.thread_id = tr.thread_id
108
+ WHERE tr.project_id = ?
109
+ GROUP BY tr.issue_id`:`SELECT tr.issue_id,
110
+ COUNT(DISTINCT tr.id) AS sessions,
111
+ COALESCE(SUM(mc.cnt), 0) AS messages
112
+ FROM tracker_runs tr
113
+ LEFT JOIN (
114
+ SELECT thread_id, COUNT(*) AS cnt FROM messages GROUP BY thread_id
115
+ ) mc ON mc.thread_id = tr.thread_id
116
+ GROUP BY tr.issue_id`;return(r?t.prepare(a).all(e.trim()):t.prepare(a).all()).map(e=>({issueId:e.issue_id,sessions:e.sessions,messages:e.messages}))})}async function N(e){return c(t=>{let r=e?.trim(),a=r?`SELECT DISTINCT tr.issue_id, tr.agent_id, tr.agent_name
102
117
  FROM tracker_runs tr
103
118
  INNER JOIN chat_runs cr ON cr.id = (
104
119
  SELECT id FROM chat_runs WHERE thread_id = tr.thread_id ORDER BY updated_at DESC LIMIT 1
@@ -109,6 +124,6 @@ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/a
109
124
  INNER JOIN chat_runs cr ON cr.id = (
110
125
  SELECT id FROM chat_runs WHERE thread_id = tr.thread_id ORDER BY updated_at DESC LIMIT 1
111
126
  )
112
- WHERE cr.status IN ('queued', 'running')`;return(r?t.prepare(a).all(e.trim()):t.prepare(a).all()).map(e=>({issueId:e.issue_id,agentId:e.agent_id,agentName:e.agent_name}))})}e.s(["createLinearRun",0,_,"createTrackerRun",()=>_,"getIssueActiveAgents",()=>g,"getIssueActivityMap",()=>m,"getLinearRun",0,T,"getTrackerRun",()=>T,"listLinearRuns",0,h,"listTrackerRuns",()=>h,"updateLinearRun",0,E,"updateTrackerRun",()=>E])},711794,e=>{"use strict";var t=e.i(692988),r=e.i(635595),a=e.i(75473),s=e.i(923435),n=e.i(418475),i=e.i(303482),o=e.i(976287),u=e.i(774462),d=e.i(111998),l=e.i(201516),c=e.i(68877),p=e.i(259460),_=e.i(257714),E=e.i(502073),T=e.i(187345),h=e.i(193695);e.i(293777);var m=e.i(274321),g=e.i(732470);e.i(698134);var f=e.i(770027),N=e.i(85e4);function R(e){return"string"==typeof e&&e.trim()?e.trim():null}async function L(e,{params:t}){let{tracker:r}=await t;try{let t=e.nextUrl.searchParams.get("issueId")?.trim(),a=e.nextUrl.searchParams.get("projectId")?.trim()??null,s=e.nextUrl.searchParams.get("limit"),n=s?Number.parseInt(s,10):void 0;if(!t)return(0,f.badRequest)("issueId is required");let i=await (0,N.listTrackerRuns)({issueId:t,projectId:a,trackerType:r,limit:n});return g.NextResponse.json({count:i.length,runs:i})}catch(e){return console.error("Failed to list tracker runs:",e),g.NextResponse.json({error:"Failed to list tracker runs",message:e instanceof Error?e.message:String(e)},{status:500})}}async function S(e,{params:t}){let{tracker:r}=await t;try{var a;let t=await e.json().catch(()=>({})),s=R(t.issueId),n=R(t.issueIdentifier),i=R(t.issueTitle),o=R(t.issueStatus),u=R(t.agentId),d=R(t.agentName);if(!s||!n||!i||!o||!u||!d)return(0,f.badRequest)("issueId, issueIdentifier, issueTitle, issueStatus, agentId, and agentName are required");let l=await (0,N.createTrackerRun)({projectId:R(t.projectId),projectSlug:R(t.projectSlug),trackerType:r,issueId:s,issueIdentifier:n,issueTitle:i,issueStatus:o,issueAssignee:R(t.issueAssignee),agentId:u,agentName:d,mode:(a=t.mode,"scripted"===a?"scripted":"chat")});return g.NextResponse.json({run:l},{status:201})}catch(e){return console.error("Failed to create tracker run:",e),g.NextResponse.json({error:"Failed to create tracker run",message:e instanceof Error?e.message:String(e)},{status:500})}}e.s(["GET",()=>L,"POST",()=>S,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],184760);var I=e.i(184760);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/trackers/[tracker]/runs/route",pathname:"/api/trackers/[tracker]/runs",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/local/app/api/trackers/[tracker]/runs/route.ts",nextConfigOutput:"standalone",userland:I}),{workAsyncStorage:x,workUnitAsyncStorage:O,serverHooks:v}=A;function y(){return(0,a.patchFetch)({workAsyncStorage:x,workUnitAsyncStorage:O})}async function k(e,t,a){A.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/trackers/[tracker]/runs/route";g=g.replace(/\/index$/,"")||"/";let f=await A.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!f)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:N,params:R,nextConfig:L,parsedUrl:S,isDraftMode:I,prerenderManifest:x,routerServerContext:O,isOnDemandRevalidate:v,revalidateOnlyGenerated:y,resolvedPathname:k,clientReferenceManifest:U,serverActionsManifest:C}=f,w=(0,o.normalizeAppPath)(g),D=!!(x.dynamicRoutes[w]||x.routes[k]),j=async()=>((null==O?void 0:O.render404)?await O.render404(e,t,S,!1):t.end("This page could not be found"),null);if(D&&!I){let e=!!x.routes[k],t=x.dynamicRoutes[w];if(t&&!1===t.fallback&&!e){if(L.experimental.adapterPath)return await j();throw new h.NoFallbackError}}let b=null;!D||A.isDev||I||(b="/index"===(b=k)?"/":b);let X=!0===A.isDev||!D,M=D&&!X;C&&U&&(0,i.setManifestsSingleton)({page:g,clientReferenceManifest:U,serverActionsManifest:C});let F=e.method||"GET",q=(0,n.getTracer)(),P=q.getActiveScopeSpan(),$={params:R,prerenderManifest:x,renderOpts:{experimental:{authInterrupts:!!L.experimental.authInterrupts},cacheComponents:!!L.cacheComponents,supportsDynamicResponse:X,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:L.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>A.onRequestError(e,t,a,s,O)},sharedContext:{buildId:N}},G=new u.NodeNextRequest(e),H=new u.NodeNextResponse(t),B=d.NextRequestAdapter.fromNodeNextRequest(G,(0,d.signalFromNodeResponse)(t));try{let i=async e=>A.handle(B,$).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")!==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 a=r.get("next.route");if(a){let t=`${F} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${F} ${g}`)}),o=!!(0,s.getRequestMeta)(e,"minimalMode"),u=async s=>{var n,u;let d=async({previousCacheEntry:r})=>{try{if(!o&&v&&y&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await i(s);e.fetchMetrics=$.renderOpts.fetchMetrics;let u=$.renderOpts.pendingWaitUntil;u&&a.waitUntil&&(a.waitUntil(u),u=void 0);let d=$.renderOpts.collectedTags;if(!D)return await (0,p.sendResponse)(G,H,n,$.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,_.toNodeOutgoingHttpHeaders)(n.headers);d&&(t[T.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=T.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,a=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=T.INFINITE_CACHE?void 0:$.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:v})},!1,O),t}},l=await A.handleResponse({req:e,nextConfig:L,cacheKey:b,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:x,isRoutePPREnabled:!1,isOnDemandRevalidate:v,revalidateOnlyGenerated:y,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:o});if(!D)return null;if((null==l||null==(n=l.value)?void 0:n.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(u=l.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",v?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),I&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,_.fromNodeOutgoingHttpHeaders)(l.value.headers);return o&&D||h.delete(T.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||t.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,E.getCacheControlHeader)(l.cacheControl)),await (0,p.sendResponse)(G,H,new Response(l.value.body,{headers:h,status:l.value.status||200})),null};P?await u(P):await q.withPropagatedContext(e.headers,()=>q.trace(l.BaseServerSpan.handleRequest,{spanName:`${F} ${g}`,kind:n.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},u))}catch(t){if(t instanceof h.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:v})},!1,O),D)throw t;return await (0,p.sendResponse)(G,H,new Response(null,{status:500})),null}}e.s(["handler",()=>k,"patchFetch",()=>y,"routeModule",()=>A,"serverHooks",()=>v,"workAsyncStorage",()=>x,"workUnitAsyncStorage",()=>O],711794)},58723,e=>{e.v(e=>Promise.resolve().then(()=>e(78362)))},138720,e=>{e.v(e=>Promise.resolve().then(()=>e(85e4)))},410437,e=>{e.v(e=>Promise.resolve().then(()=>e(862263)))},836400,e=>{e.v(e=>Promise.resolve().then(()=>e(581001)))},169447,e=>{e.v(e=>Promise.resolve().then(()=>e(242617)))},119130,e=>{e.v(e=>Promise.resolve().then(()=>e(607495)))}];
127
+ WHERE cr.status IN ('queued', 'running')`;return(r?t.prepare(a).all(e.trim()):t.prepare(a).all()).map(e=>({issueId:e.issue_id,agentId:e.agent_id,agentName:e.agent_name}))})}e.s(["createLinearRun",0,_,"createTrackerRun",()=>_,"getIssueActiveAgents",()=>N,"getIssueActivityMap",()=>h,"getIssueStats",()=>g,"getLinearRun",0,T,"getTrackerRun",()=>T,"listLinearRuns",0,m,"listTrackerRuns",()=>m,"updateLinearRun",0,E,"updateTrackerRun",()=>E])},711794,e=>{"use strict";var t=e.i(692988),r=e.i(635595),a=e.i(75473),s=e.i(923435),i=e.i(418475),n=e.i(303482),o=e.i(976287),u=e.i(774462),d=e.i(111998),l=e.i(201516),c=e.i(68877),p=e.i(259460),_=e.i(257714),E=e.i(502073),T=e.i(187345),m=e.i(193695);e.i(293777);var h=e.i(274321),g=e.i(732470);e.i(698134);var N=e.i(770027),R=e.i(85e4);function f(e){return"string"==typeof e&&e.trim()?e.trim():null}async function L(e,{params:t}){let{tracker:r}=await t;try{let t=e.nextUrl.searchParams.get("issueId")?.trim(),a=e.nextUrl.searchParams.get("projectId")?.trim()??null,s=e.nextUrl.searchParams.get("limit"),i=s?Number.parseInt(s,10):void 0;if(!t)return(0,N.badRequest)("issueId is required");let n=await (0,R.listTrackerRuns)({issueId:t,projectId:a,trackerType:r,limit:i});return g.NextResponse.json({count:n.length,runs:n})}catch(e){return console.error("Failed to list tracker runs:",e),g.NextResponse.json({error:"Failed to list tracker runs",message:e instanceof Error?e.message:String(e)},{status:500})}}async function S(e,{params:t}){let{tracker:r}=await t;try{var a;let t=await e.json().catch(()=>({})),s=f(t.issueId),i=f(t.issueIdentifier),n=f(t.issueTitle),o=f(t.issueStatus),u=f(t.agentId),d=f(t.agentName);if(!s||!i||!n||!o||!u||!d)return(0,N.badRequest)("issueId, issueIdentifier, issueTitle, issueStatus, agentId, and agentName are required");let l=await (0,R.createTrackerRun)({projectId:f(t.projectId),projectSlug:f(t.projectSlug),trackerType:r,issueId:s,issueIdentifier:i,issueTitle:n,issueStatus:o,issueAssignee:f(t.issueAssignee),agentId:u,agentName:d,mode:(a=t.mode,"scripted"===a?"scripted":"chat")});return g.NextResponse.json({run:l},{status:201})}catch(e){return console.error("Failed to create tracker run:",e),g.NextResponse.json({error:"Failed to create tracker run",message:e instanceof Error?e.message:String(e)},{status:500})}}e.s(["GET",()=>L,"POST",()=>S,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],184760);var I=e.i(184760);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/trackers/[tracker]/runs/route",pathname:"/api/trackers/[tracker]/runs",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/local/app/api/trackers/[tracker]/runs/route.ts",nextConfigOutput:"standalone",userland:I}),{workAsyncStorage:O,workUnitAsyncStorage:x,serverHooks:v}=A;function y(){return(0,a.patchFetch)({workAsyncStorage:O,workUnitAsyncStorage:x})}async function k(e,t,a){A.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/trackers/[tracker]/runs/route";g=g.replace(/\/index$/,"")||"/";let N=await A.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!N)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:R,params:f,nextConfig:L,parsedUrl:S,isDraftMode:I,prerenderManifest:O,routerServerContext:x,isOnDemandRevalidate:v,revalidateOnlyGenerated:y,resolvedPathname:k,clientReferenceManifest:U,serverActionsManifest:C}=N,w=(0,o.normalizeAppPath)(g),D=!!(O.dynamicRoutes[w]||O.routes[k]),j=async()=>((null==x?void 0:x.render404)?await x.render404(e,t,S,!1):t.end("This page could not be found"),null);if(D&&!I){let e=!!O.routes[k],t=O.dynamicRoutes[w];if(t&&!1===t.fallback&&!e){if(L.experimental.adapterPath)return await j();throw new m.NoFallbackError}}let M=null;!D||A.isDev||I||(M="/index"===(M=k)?"/":M);let b=!0===A.isDev||!D,F=D&&!b;C&&U&&(0,n.setManifestsSingleton)({page:g,clientReferenceManifest:U,serverActionsManifest:C});let X=e.method||"GET",P=(0,i.getTracer)(),q=P.getActiveScopeSpan(),G={params:f,prerenderManifest:O,renderOpts:{experimental:{authInterrupts:!!L.experimental.authInterrupts},cacheComponents:!!L.cacheComponents,supportsDynamicResponse:b,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:L.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>A.onRequestError(e,t,a,s,x)},sharedContext:{buildId:R}},$=new u.NodeNextRequest(e),B=new u.NodeNextResponse(t),H=d.NextRequestAdapter.fromNodeNextRequest($,(0,d.signalFromNodeResponse)(t));try{let n=async e=>A.handle(H,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=P.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 a=r.get("next.route");if(a){let t=`${X} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${X} ${g}`)}),o=!!(0,s.getRequestMeta)(e,"minimalMode"),u=async s=>{var i,u;let d=async({previousCacheEntry:r})=>{try{if(!o&&v&&y&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await n(s);e.fetchMetrics=G.renderOpts.fetchMetrics;let u=G.renderOpts.pendingWaitUntil;u&&a.waitUntil&&(a.waitUntil(u),u=void 0);let d=G.renderOpts.collectedTags;if(!D)return await (0,p.sendResponse)($,B,i,G.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,_.toNodeOutgoingHttpHeaders)(i.headers);d&&(t[T.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=T.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=T.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:h.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:F,isOnDemandRevalidate:v})},!1,x),t}},l=await A.handleResponse({req:e,nextConfig:L,cacheKey:M,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:O,isRoutePPREnabled:!1,isOnDemandRevalidate:v,revalidateOnlyGenerated:y,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:o});if(!D)return null;if((null==l||null==(i=l.value)?void 0:i.kind)!==h.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(u=l.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",v?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),I&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let m=(0,_.fromNodeOutgoingHttpHeaders)(l.value.headers);return o&&D||m.delete(T.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||t.getHeader("Cache-Control")||m.get("Cache-Control")||m.set("Cache-Control",(0,E.getCacheControlHeader)(l.cacheControl)),await (0,p.sendResponse)($,B,new Response(l.value.body,{headers:m,status:l.value.status||200})),null};q?await u(q):await P.withPropagatedContext(e.headers,()=>P.trace(l.BaseServerSpan.handleRequest,{spanName:`${X} ${g}`,kind:i.SpanKind.SERVER,attributes:{"http.method":X,"http.target":e.url}},u))}catch(t){if(t instanceof m.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:F,isOnDemandRevalidate:v})},!1,x),D)throw t;return await (0,p.sendResponse)($,B,new Response(null,{status:500})),null}}e.s(["handler",()=>k,"patchFetch",()=>y,"routeModule",()=>A,"serverHooks",()=>v,"workAsyncStorage",()=>O,"workUnitAsyncStorage",()=>x],711794)},58723,e=>{e.v(e=>Promise.resolve().then(()=>e(78362)))},138720,e=>{e.v(e=>Promise.resolve().then(()=>e(85e4)))},410437,e=>{e.v(e=>Promise.resolve().then(()=>e(862263)))},836400,e=>{e.v(e=>Promise.resolve().then(()=>e(581001)))},169447,e=>{e.v(e=>Promise.resolve().then(()=>e(242617)))},119130,e=>{e.v(e=>Promise.resolve().then(()=>e(607495)))}];
113
128
 
114
129
  //# sourceMappingURL=%5Broot-of-the-server%5D__d8cc43c7._.js.map
@@ -1,3 +1,3 @@
1
- module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},769025,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function s(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function n(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>s,"transactionFn",()=>n])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},744071,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])},452377,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(769025),r=e.i(522734),a=e.i(446786),s=e.i(814747);let n="3.35.0",o=["json1"],i=["fts5"],l=["nfs","smb","cifs","efs","fuse.sshfs"];function u(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function d(d,c){let p=[],f=d.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(f.v,n)&&p.push({kind:"version_mismatch",message:`SQLite version ${f.v} is below minimum ${n}`,found:f.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),o))u(d,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(d,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let h=function(t){"linux"!==a.default.platform()&&a.default.platform();try{let n=s.default.resolve(t),{execSync:o}=e.r(233405);if("darwin"===a.default.platform());else{let e=r.default.readFileSync("/proc/mounts","utf-8"),t="",a="unknown";for(let r of e.split("\n")){let[,e,s]=r.split(/\s+/);e&&n.startsWith(e)&&e.length>t.length&&(t=e,a=s||"unknown")}return a}}catch{}return null}(c);h&&l.some(e=>h.toLowerCase().includes(e))&&p.push({kind:"filesystem_error",message:`Database path '${c}' is on a network filesystem (${h})`,path:c,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`)):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",()=>d])},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},770027,e=>{"use strict";e.i(698134);var t=e.i(88007);function r(e){if(!e)throw Error(`Missing tracker type. Available: ${(0,t.listAdapterTypes)().join(", ")}`);return(0,t.getAdapter)(e)}function a(e){return Response.json({error:e},{status:400})}e.s(["badRequest",()=>a,"resolveAdapter",()=>r])},824656,e=>{"use strict";var t=e.i(692988),r=e.i(635595),a=e.i(75473),s=e.i(923435),n=e.i(418475),o=e.i(303482),i=e.i(976287),l=e.i(774462),u=e.i(111998),d=e.i(201516),c=e.i(68877),p=e.i(259460),f=e.i(257714),h=e.i(502073),m=e.i(187345),x=e.i(193695);e.i(293777);var v=e.i(274321),g=e.i(732470);e.i(698134);var R=e.i(770027);async function E(e,{params:t}){let{tracker:r}=await t,a=e.nextUrl.searchParams.get("projectId")?.trim();if(!a)return(0,R.badRequest)("projectId required");let s=(0,R.resolveAdapter)(r);try{let[e,t,r]=await Promise.allSettled([s.listAssignees(a),s.listGroups(a),s.listStatuses(a)]);return g.NextResponse.json({assignees:"fulfilled"===e.status?e.value:[],groups:"fulfilled"===t.status?t.value:[],statuses:"fulfilled"===r.status?r.value:[]})}catch(t){let e=t instanceof Error?t.message:"Failed to fetch options";return g.NextResponse.json({error:e},{status:500})}}e.s(["GET",()=>E,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],11579);var w=e.i(11579);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/trackers/[tracker]/options/route",pathname:"/api/trackers/[tracker]/options",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/local/app/api/trackers/[tracker]/options/route.ts",nextConfigOutput:"standalone",userland:w}),{workAsyncStorage:y,workUnitAsyncStorage:_,serverHooks:b}=A;function S(){return(0,a.patchFetch)({workAsyncStorage:y,workUnitAsyncStorage:_})}async function C(e,t,a){A.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/trackers/[tracker]/options/route";g=g.replace(/\/index$/,"")||"/";let R=await A.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,params:w,nextConfig:y,parsedUrl:_,isDraftMode:b,prerenderManifest:S,routerServerContext:C,isOnDemandRevalidate:k,revalidateOnlyGenerated:q,resolvedPathname:T,clientReferenceManifest:L,serverActionsManifest:j}=R,P=(0,i.normalizeAppPath)(g),N=!!(S.dynamicRoutes[P]||S.routes[T]),O=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,_,!1):t.end("This page could not be found"),null);if(N&&!b){let e=!!S.routes[T],t=S.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await O();throw new x.NoFallbackError}}let I=null;!N||A.isDev||b||(I="/index"===(I=T)?"/":I);let U=!0===A.isDev||!N,M=N&&!U;j&&L&&(0,o.setManifestsSingleton)({page:g,clientReferenceManifest:L,serverActionsManifest:j});let $=e.method||"GET",D=(0,n.getTracer)(),F=D.getActiveScopeSpan(),G={params:w,prerenderManifest:S,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>A.onRequestError(e,t,a,s,C)},sharedContext:{buildId:E}},H=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),K=u.NextRequestAdapter.fromNodeNextRequest(H,(0,u.signalFromNodeResponse)(t));try{let o=async e=>A.handle(K,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=D.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=`${$} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${$} ${g}`)}),i=!!(0,s.getRequestMeta)(e,"minimalMode"),l=async s=>{var n,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&k&&q&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await o(s);e.fetchMetrics=G.renderOpts.fetchMetrics;let l=G.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let u=G.renderOpts.collectedTags;if(!N)return await (0,p.sendResponse)(H,B,n,G.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(n.headers);u&&(t[m.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:k})},!1,C),t}},d=await A.handleResponse({req:e,nextConfig:y,cacheKey:I,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:S,isRoutePPREnabled:!1,isOnDemandRevalidate:k,revalidateOnlyGenerated:q,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:i});if(!N)return null;if((null==d||null==(n=d.value)?void 0:n.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",k?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let x=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&N||x.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||x.get("Cache-Control")||x.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(H,B,new Response(d.value.body,{headers:x,status:d.value.status||200})),null};F?await l(F):await D.withPropagatedContext(e.headers,()=>D.trace(d.BaseServerSpan.handleRequest,{spanName:`${$} ${g}`,kind:n.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},l))}catch(t){if(t instanceof x.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:k})},!1,C),N)throw t;return await (0,p.sendResponse)(H,B,new Response(null,{status:500})),null}}e.s(["handler",()=>C,"patchFetch",()=>S,"routeModule",()=>A,"serverHooks",()=>b,"workAsyncStorage",()=>y,"workUnitAsyncStorage",()=>_],824656)},58723,e=>{e.v(e=>Promise.resolve().then(()=>e(78362)))},138720,e=>{e.v(t=>Promise.all(["server/chunks/apps_local_lib_tracker_tracker-run-store_ts_5aa9592e._.js"].map(t=>e.l(t))).then(()=>t(85e4)))},410437,e=>{e.v(e=>Promise.resolve().then(()=>e(862263)))},836400,e=>{e.v(e=>Promise.resolve().then(()=>e(581001)))},169447,e=>{e.v(e=>Promise.resolve().then(()=>e(242617)))},119130,e=>{e.v(e=>Promise.resolve().then(()=>e(607495)))}];
1
+ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},769025,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function s(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function n(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>s,"transactionFn",()=>n])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},744071,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])},452377,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(769025),r=e.i(522734),a=e.i(446786),s=e.i(814747);let n="3.35.0",o=["json1"],i=["fts5"],l=["nfs","smb","cifs","efs","fuse.sshfs"];function u(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function d(d,p){let c=[],f=d.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let r=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(r[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(f.v,n)&&c.push({kind:"version_mismatch",message:`SQLite version ${f.v} is below minimum ${n}`,found:f.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),o))u(d,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of i)u(d,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let h=function(t){"linux"!==a.default.platform()&&a.default.platform();try{let n=s.default.resolve(t),{execSync:o}=e.r(233405);if("darwin"===a.default.platform());else{let e=r.default.readFileSync("/proc/mounts","utf-8"),t="",a="unknown";for(let r of e.split("\n")){let[,e,s]=r.split(/\s+/);e&&n.startsWith(e)&&e.length>t.length&&(t=e,a=s||"unknown")}return a}}catch{}return null}(p);h&&l.some(e=>h.toLowerCase().includes(e))&&c.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`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>d])},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},770027,e=>{"use strict";e.i(698134);var t=e.i(88007);function r(e){if(!e)throw Error(`Missing tracker type. Available: ${(0,t.listAdapterTypes)().join(", ")}`);return(0,t.getAdapter)(e)}function a(e){return Response.json({error:e},{status:400})}e.s(["badRequest",()=>a,"resolveAdapter",()=>r])},824656,e=>{"use strict";var t=e.i(692988),r=e.i(635595),a=e.i(75473),s=e.i(923435),n=e.i(418475),o=e.i(303482),i=e.i(976287),l=e.i(774462),u=e.i(111998),d=e.i(201516),p=e.i(68877),c=e.i(259460),f=e.i(257714),h=e.i(502073),m=e.i(187345),x=e.i(193695);e.i(293777);var v=e.i(274321),g=e.i(732470);e.i(698134);var R=e.i(770027);async function E(e,{params:t}){let{tracker:r}=await t,a=e.nextUrl.searchParams.get("projectId")?.trim();if(!a)return(0,R.badRequest)("projectId required");let s=(0,R.resolveAdapter)(r);try{let[e,t,r]=await Promise.allSettled([s.listAssignees(a),s.listGroups(a),s.listStatuses(a)]);return g.NextResponse.json({assignees:"fulfilled"===e.status?e.value:[],groups:"fulfilled"===t.status?t.value:[],groupLabel:s.groupLabel,statuses:"fulfilled"===r.status?r.value:[]})}catch(t){let e=t instanceof Error?t.message:"Failed to fetch options";return g.NextResponse.json({error:e},{status:500})}}e.s(["GET",()=>E,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],11579);var w=e.i(11579);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/trackers/[tracker]/options/route",pathname:"/api/trackers/[tracker]/options",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/local/app/api/trackers/[tracker]/options/route.ts",nextConfigOutput:"standalone",userland:w}),{workAsyncStorage:y,workUnitAsyncStorage:_,serverHooks:b}=A;function S(){return(0,a.patchFetch)({workAsyncStorage:y,workUnitAsyncStorage:_})}async function C(e,t,a){A.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/trackers/[tracker]/options/route";g=g.replace(/\/index$/,"")||"/";let R=await A.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!R)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:E,params:w,nextConfig:y,parsedUrl:_,isDraftMode:b,prerenderManifest:S,routerServerContext:C,isOnDemandRevalidate:k,revalidateOnlyGenerated:q,resolvedPathname:L,clientReferenceManifest:T,serverActionsManifest:j}=R,P=(0,i.normalizeAppPath)(g),N=!!(S.dynamicRoutes[P]||S.routes[L]),O=async()=>((null==C?void 0:C.render404)?await C.render404(e,t,_,!1):t.end("This page could not be found"),null);if(N&&!b){let e=!!S.routes[L],t=S.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(y.experimental.adapterPath)return await O();throw new x.NoFallbackError}}let I=null;!N||A.isDev||b||(I="/index"===(I=L)?"/":I);let U=!0===A.isDev||!N,M=N&&!U;j&&T&&(0,o.setManifestsSingleton)({page:g,clientReferenceManifest:T,serverActionsManifest:j});let $=e.method||"GET",D=(0,n.getTracer)(),F=D.getActiveScopeSpan(),G={params:w,prerenderManifest:S,renderOpts:{experimental:{authInterrupts:!!y.experimental.authInterrupts},cacheComponents:!!y.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:y.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>A.onRequestError(e,t,a,s,C)},sharedContext:{buildId:E}},H=new l.NodeNextRequest(e),B=new l.NodeNextResponse(t),K=u.NextRequestAdapter.fromNodeNextRequest(H,(0,u.signalFromNodeResponse)(t));try{let o=async e=>A.handle(K,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=D.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=`${$} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${$} ${g}`)}),i=!!(0,s.getRequestMeta)(e,"minimalMode"),l=async s=>{var n,l;let u=async({previousCacheEntry:r})=>{try{if(!i&&k&&q&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await o(s);e.fetchMetrics=G.renderOpts.fetchMetrics;let l=G.renderOpts.pendingWaitUntil;l&&a.waitUntil&&(a.waitUntil(l),l=void 0);let u=G.renderOpts.collectedTags;if(!N)return await (0,c.sendResponse)(H,B,n,G.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,f.toNodeOutgoingHttpHeaders)(n.headers);u&&(t[m.NEXT_CACHE_TAGS_HEADER]=u),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=m.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=m.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:v.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:k})},!1,C),t}},d=await A.handleResponse({req:e,nextConfig:y,cacheKey:I,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:S,isRoutePPREnabled:!1,isOnDemandRevalidate:k,revalidateOnlyGenerated:q,responseGenerator:u,waitUntil:a.waitUntil,isMinimalMode:i});if(!N)return null;if((null==d||null==(n=d.value)?void 0:n.kind)!==v.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(l=d.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",k?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let x=(0,f.fromNodeOutgoingHttpHeaders)(d.value.headers);return i&&N||x.delete(m.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||x.get("Cache-Control")||x.set("Cache-Control",(0,h.getCacheControlHeader)(d.cacheControl)),await (0,c.sendResponse)(H,B,new Response(d.value.body,{headers:x,status:d.value.status||200})),null};F?await l(F):await D.withPropagatedContext(e.headers,()=>D.trace(d.BaseServerSpan.handleRequest,{spanName:`${$} ${g}`,kind:n.SpanKind.SERVER,attributes:{"http.method":$,"http.target":e.url}},l))}catch(t){if(t instanceof x.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,p.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:k})},!1,C),N)throw t;return await (0,c.sendResponse)(H,B,new Response(null,{status:500})),null}}e.s(["handler",()=>C,"patchFetch",()=>S,"routeModule",()=>A,"serverHooks",()=>b,"workAsyncStorage",()=>y,"workUnitAsyncStorage",()=>_],824656)},58723,e=>{e.v(e=>Promise.resolve().then(()=>e(78362)))},138720,e=>{e.v(t=>Promise.all(["server/chunks/apps_local_lib_tracker_tracker-run-store_ts_5aa9592e._.js"].map(t=>e.l(t))).then(()=>t(85e4)))},410437,e=>{e.v(e=>Promise.resolve().then(()=>e(862263)))},836400,e=>{e.v(e=>Promise.resolve().then(()=>e(581001)))},169447,e=>{e.v(e=>Promise.resolve().then(()=>e(242617)))},119130,e=>{e.v(e=>Promise.resolve().then(()=>e(607495)))}];
2
2
 
3
3
  //# sourceMappingURL=%5Broot-of-the-server%5D__f598d976._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},769025,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function s(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function n(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>s,"transactionFn",()=>n])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},744071,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])},452377,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(769025),r=e.i(522734),a=e.i(446786),s=e.i(814747);let n="3.35.0",i=["json1"],o=["fts5"],u=["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 l(l,c){let p=[],_=l.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}(_.v,n)&&p.push({kind:"version_mismatch",message:`SQLite version ${_.v} is below minimum ${n}`,found:_.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),i))d(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 o)d(l,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let E=function(t){"linux"!==a.default.platform()&&a.default.platform();try{let n=s.default.resolve(t),{execSync:i}=e.r(233405);if("darwin"===a.default.platform());else{let e=r.default.readFileSync("/proc/mounts","utf-8"),t="",a="unknown";for(let r of e.split("\n")){let[,e,s]=r.split(/\s+/);e&&n.startsWith(e)&&e.length>t.length&&(t=e,a=s||"unknown")}return a}}catch{}return null}(c);E&&u.some(e=>E.toLowerCase().includes(e))&&p.push({kind:"filesystem_error",message:`Database path '${c}' is on a network filesystem (${E})`,path:c,found:E,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])},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},85e4,e=>{"use strict";var t=e.i(522734),r=e.i(446786),a=e.i(814747),s=e.i(769025);let{DatabaseSync:n}=process.getBuiltinModule("node:sqlite"),i=process.env.AGX_GROUP_CHAT_DIR?.trim()||a.default.join(r.default.homedir(),".agx","group-chat"),o=a.default.join(i,"history.sqlite");function u(e){return e?.trim()||null}function d(e){return"scripted"===e?"scripted":"chat"}function l(e){let t,r=e.chat_created_at??e.created_at,a=e.chat_completed_at??null,s=function(e,t){switch(e){case"queued":return"queued";case"running":case"awaiting_user":case"blocked":return"running";case"completed":return"success";case"failed":return"failed";case"cancelled":return"cancelled";default:return t}}(e.chat_status,e.status);return{id:e.id,projectId:e.project_id,projectSlug:e.project_slug,trackerType:e.tracker_type,issueId:e.issue_id,issueIdentifier:e.issue_identifier,issueTitle:e.issue_title,issueStatus:e.issue_status,issueAssignee:e.issue_assignee,threadId:e.thread_id,rootMessageId:e.root_message_id,chatRunId:e.chat_run_id,agentId:e.agent_id,agentName:e.agent_name,mode:d(e.mode),sessionTitle:"chat"===d(e.mode)&&(t=String(e.root_content??"").replace(/\[reaction\s+[^\]]*\]/gi,"").replace(/\[agx:[^\]]*\]/g,"").replace(/\[checkpoint\]/g,"").replace(/\[criteria:\s*[^\]]*\]/g,"").replace(/\[done\]/g,"").replace(/\[blocked[^\]]*\]/g,"").replace(/^\[SKIP\]$/gm,"").replace(/\s+/g," ").trim())?t.length>72?`${t.slice(0,69).trimEnd()}...`:t:null,status:s,durationMs:null!=a?Math.max(a-r,0):null,lastError:e.chat_last_error??e.error,recapFilePath:e.recap_file_path??null,startedAt:new Date(r).toISOString(),updatedAt:new Date((e.chat_updated_at??e.updated_at)||e.updated_at).toISOString(),completedAt:"number"==typeof a?new Date(a).toISOString():null}}async function c(e){await t.promises.mkdir(i,{recursive:!0});let r=new n(o);(0,s.pragmaSet)(r,"journal_mode = WAL");try{r.exec(`
1
+ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,r)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,r)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,r)=>{t.exports=e.x("os",()=>require("os"))},769025,e=>{"use strict";function t(e,t){let r=e.prepare(`PRAGMA ${t}`).get();if(!r)return;let a=Object.values(r);return a.length>0?a[0]:void 0}function r(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function s(e,t){e.exec("BEGIN");try{let r=t();return e.exec("COMMIT"),r}catch(t){throw e.exec("ROLLBACK"),t}}function n(e,t){return(...r)=>{e.exec("BEGIN");try{let a=t(...r);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>r,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>s,"transactionFn",()=>n])},233405,(e,t,r)=>{t.exports=e.x("child_process",()=>require("child_process"))},744071,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])},452377,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(769025),r=e.i(522734),a=e.i(446786),s=e.i(814747);let n="3.35.0",i=["json1"],o=["fts5"],u=["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,l){let p=[],_=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}(_.v,n)&&p.push({kind:"version_mismatch",message:`SQLite version ${_.v} is below minimum ${n}`,found:_.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),i))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 o)d(c,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let E=function(t){"linux"!==a.default.platform()&&a.default.platform();try{let n=s.default.resolve(t),{execSync:i}=e.r(233405);if("darwin"===a.default.platform());else{let e=r.default.readFileSync("/proc/mounts","utf-8"),t="",a="unknown";for(let r of e.split("\n")){let[,e,s]=r.split(/\s+/);e&&n.startsWith(e)&&e.length>t.length&&(t=e,a=s||"unknown")}return a}}catch{}return null}(l);E&&u.some(e=>E.toLowerCase().includes(e))&&p.push({kind:"filesystem_error",message:`Database path '${l}' is on a network filesystem (${E})`,path:l,found:E,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])},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},500874,(e,t,r)=>{t.exports=e.x("buffer",()=>require("buffer"))},666680,(e,t,r)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},85e4,e=>{"use strict";var t=e.i(522734),r=e.i(446786),a=e.i(814747),s=e.i(769025);let{DatabaseSync:n}=process.getBuiltinModule("node:sqlite"),i=process.env.AGX_GROUP_CHAT_DIR?.trim()||a.default.join(r.default.homedir(),".agx","group-chat"),o=a.default.join(i,"history.sqlite");function u(e){return e?.trim()||null}function d(e){return"scripted"===e?"scripted":"chat"}function c(e){let t,r=e.chat_created_at??e.created_at,a=e.chat_completed_at??null,s=function(e,t){switch(e){case"queued":return"queued";case"running":case"awaiting_user":case"blocked":return"running";case"completed":return"success";case"failed":return"failed";case"cancelled":return"cancelled";default:return t}}(e.chat_status,e.status);return{id:e.id,projectId:e.project_id,projectSlug:e.project_slug,trackerType:e.tracker_type,issueId:e.issue_id,issueIdentifier:e.issue_identifier,issueTitle:e.issue_title,issueStatus:e.issue_status,issueAssignee:e.issue_assignee,threadId:e.thread_id,rootMessageId:e.root_message_id,chatRunId:e.chat_run_id,agentId:e.agent_id,agentName:e.agent_name,mode:d(e.mode),sessionTitle:"chat"===d(e.mode)&&(t=String(e.root_content??"").replace(/\[reaction\s+[^\]]*\]/gi,"").replace(/\[agx:[^\]]*\]/g,"").replace(/\[checkpoint\]/g,"").replace(/\[criteria:\s*[^\]]*\]/g,"").replace(/\[done\]/g,"").replace(/\[blocked[^\]]*\]/g,"").replace(/^\[SKIP\]$/gm,"").replace(/\s+/g," ").trim())?t.length>72?`${t.slice(0,69).trimEnd()}...`:t:null,status:s,durationMs:null!=a?Math.max(a-r,0):null,lastError:e.chat_last_error??e.error,recapFilePath:e.recap_file_path??null,startedAt:new Date(r).toISOString(),updatedAt:new Date((e.chat_updated_at??e.updated_at)||e.updated_at).toISOString(),completedAt:"number"==typeof a?new Date(a).toISOString():null}}async function l(e){await t.promises.mkdir(i,{recursive:!0});let r=new n(o);(0,s.pragmaSet)(r,"journal_mode = WAL");try{r.exec(`
2
2
  CREATE TABLE IF NOT EXISTS chat_runs (
3
3
  id TEXT PRIMARY KEY,
4
4
  thread_id TEXT NOT NULL,
@@ -85,20 +85,35 @@ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/a
85
85
  LEFT JOIN chat_runs cr ON cr.id = (
86
86
  SELECT id FROM chat_runs WHERE thread_id = tr.thread_id ORDER BY updated_at DESC LIMIT 1
87
87
  )
88
- LEFT JOIN messages msg ON msg.thread_id = tr.thread_id AND msg.id = tr.root_message_id`;async function _(e){let t=Date.now(),r=u(e.id)??crypto.randomUUID(),a=u(e.threadId)??`tracker-run:${r}`,s=d(e.mode),n=e.trackerType??"linear";return c(i=>{i.prepare(`INSERT INTO tracker_runs (
88
+ LEFT JOIN messages msg ON msg.thread_id = tr.thread_id AND msg.id = tr.root_message_id`;async function _(e){let t=Date.now(),r=u(e.id)??crypto.randomUUID(),a=u(e.threadId)??`tracker-run:${r}`,s=d(e.mode),n=e.trackerType??"linear";return l(i=>{i.prepare(`INSERT INTO tracker_runs (
89
89
  id, project_id, project_slug, tracker_type,
90
90
  issue_id, issue_identifier, issue_title,
91
91
  issue_status, issue_assignee, thread_id, root_message_id, chat_run_id,
92
92
  agent_id, agent_name, mode, status, error, recap_file_path, created_at, updated_at
93
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, NULL, NULL, ?, ?, ?, 'queued', NULL, ?, ?, ?)`).run(r,u(e.projectId??null),u(e.projectSlug??null),n,e.issueId.trim(),e.issueIdentifier.trim(),e.issueTitle.trim(),e.issueStatus.trim(),u(e.issueAssignee??null),a,e.agentId.trim(),e.agentName.trim(),s,u(e.recapFilePath??null),t,t);let o=i.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(r);if(!o)throw Error(`Failed to create tracker run ${r}`);return l(o)})}async function E(e){return c(t=>{let r=["updated_at = ?"],a=[Date.now()];void 0!==e.rootMessageId&&(r.push("root_message_id = ?"),a.push(u(e.rootMessageId))),void 0!==e.chatRunId&&(r.push("chat_run_id = ?"),a.push(u(e.chatRunId))),void 0!==e.status&&(r.push("status = ?"),a.push(e.status)),void 0!==e.error&&(r.push("error = ?"),a.push(u(e.error))),a.push(e.id.trim()),t.prepare(`UPDATE tracker_runs SET ${r.join(", ")} WHERE id = ?`).run(...a);let s=t.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(e.id.trim());return s?l(s):null})}async function T(e){return c(t=>{let r=t.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(e.trim());return r?l(r):null})}async function h(e){let t=e.issueId.trim(),r=u(e.projectId??null),a=u(e.trackerType??null),s=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),100):50;return c(e=>{let n=[t],i=["tr.issue_id = ?"];return r&&(i.push("tr.project_id = ?"),n.push(r)),a&&(i.push("tr.tracker_type = ?"),n.push(a)),n.push(s),e.prepare(`${p}
93
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, NULL, NULL, ?, ?, ?, 'queued', NULL, ?, ?, ?)`).run(r,u(e.projectId??null),u(e.projectSlug??null),n,e.issueId.trim(),e.issueIdentifier.trim(),e.issueTitle.trim(),e.issueStatus.trim(),u(e.issueAssignee??null),a,e.agentId.trim(),e.agentName.trim(),s,u(e.recapFilePath??null),t,t);let o=i.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(r);if(!o)throw Error(`Failed to create tracker run ${r}`);return c(o)})}async function E(e){return l(t=>{let r=["updated_at = ?"],a=[Date.now()];void 0!==e.rootMessageId&&(r.push("root_message_id = ?"),a.push(u(e.rootMessageId))),void 0!==e.chatRunId&&(r.push("chat_run_id = ?"),a.push(u(e.chatRunId))),void 0!==e.status&&(r.push("status = ?"),a.push(e.status)),void 0!==e.error&&(r.push("error = ?"),a.push(u(e.error))),a.push(e.id.trim()),t.prepare(`UPDATE tracker_runs SET ${r.join(", ")} WHERE id = ?`).run(...a);let s=t.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(e.id.trim());return s?c(s):null})}async function T(e){return l(t=>{let r=t.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(e.trim());return r?c(r):null})}async function h(e){let t=e.issueId.trim(),r=u(e.projectId??null),a=u(e.trackerType??null),s=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),100):50;return l(e=>{let n=[t],i=["tr.issue_id = ?"];return r&&(i.push("tr.project_id = ?"),n.push(r)),a&&(i.push("tr.tracker_type = ?"),n.push(a)),n.push(s),e.prepare(`${p}
94
94
  WHERE ${i.join(" AND ")}
95
95
  ORDER BY tr.created_at DESC
96
- LIMIT ?`).all(...n).map(l)})}async function m(e){return c(t=>{let r=e?.trim(),a=r?`SELECT issue_id, MAX(created_at) AS last_activity_at
96
+ LIMIT ?`).all(...n).map(c)})}async function m(e){return l(t=>{let r=e?.trim(),a=r?`SELECT issue_id, MAX(created_at) AS last_activity_at
97
97
  FROM tracker_runs
98
98
  WHERE project_id = ?
99
99
  GROUP BY issue_id`:`SELECT issue_id, MAX(created_at) AS last_activity_at
100
100
  FROM tracker_runs
101
- GROUP BY issue_id`,s=r?t.prepare(a).all(e.trim()):t.prepare(a).all(),n=new Map;for(let e of s)n.set(e.issue_id,new Date(e.last_activity_at).toISOString());return n})}async function g(e){return c(t=>{let r=e?.trim(),a=r?`SELECT DISTINCT tr.issue_id, tr.agent_id, tr.agent_name
101
+ GROUP BY issue_id`,s=r?t.prepare(a).all(e.trim()):t.prepare(a).all(),n=new Map;for(let e of s)n.set(e.issue_id,new Date(e.last_activity_at).toISOString());return n})}async function g(e){return l(t=>{let r=e?.trim(),a=r?`SELECT tr.issue_id,
102
+ COUNT(DISTINCT tr.id) AS sessions,
103
+ COALESCE(SUM(mc.cnt), 0) AS messages
104
+ FROM tracker_runs tr
105
+ LEFT JOIN (
106
+ SELECT thread_id, COUNT(*) AS cnt FROM messages GROUP BY thread_id
107
+ ) mc ON mc.thread_id = tr.thread_id
108
+ WHERE tr.project_id = ?
109
+ GROUP BY tr.issue_id`:`SELECT tr.issue_id,
110
+ COUNT(DISTINCT tr.id) AS sessions,
111
+ COALESCE(SUM(mc.cnt), 0) AS messages
112
+ FROM tracker_runs tr
113
+ LEFT JOIN (
114
+ SELECT thread_id, COUNT(*) AS cnt FROM messages GROUP BY thread_id
115
+ ) mc ON mc.thread_id = tr.thread_id
116
+ GROUP BY tr.issue_id`;return(r?t.prepare(a).all(e.trim()):t.prepare(a).all()).map(e=>({issueId:e.issue_id,sessions:e.sessions,messages:e.messages}))})}async function N(e){return l(t=>{let r=e?.trim(),a=r?`SELECT DISTINCT tr.issue_id, tr.agent_id, tr.agent_name
102
117
  FROM tracker_runs tr
103
118
  INNER JOIN chat_runs cr ON cr.id = (
104
119
  SELECT id FROM chat_runs WHERE thread_id = tr.thread_id ORDER BY updated_at DESC LIMIT 1
@@ -109,6 +124,6 @@ module.exports=[918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/a
109
124
  INNER JOIN chat_runs cr ON cr.id = (
110
125
  SELECT id FROM chat_runs WHERE thread_id = tr.thread_id ORDER BY updated_at DESC LIMIT 1
111
126
  )
112
- WHERE cr.status IN ('queued', 'running')`;return(r?t.prepare(a).all(e.trim()):t.prepare(a).all()).map(e=>({issueId:e.issue_id,agentId:e.agent_id,agentName:e.agent_name}))})}e.s(["createLinearRun",0,_,"createTrackerRun",()=>_,"getIssueActiveAgents",()=>g,"getIssueActivityMap",()=>m,"getLinearRun",0,T,"getTrackerRun",()=>T,"listLinearRuns",0,h,"listTrackerRuns",()=>h,"updateLinearRun",0,E,"updateTrackerRun",()=>E])},266517,e=>{"use strict";var t=e.i(692988),r=e.i(635595),a=e.i(75473),s=e.i(923435),n=e.i(418475),i=e.i(303482),o=e.i(976287),u=e.i(774462),d=e.i(111998),l=e.i(201516),c=e.i(68877),p=e.i(259460),_=e.i(257714),E=e.i(502073),T=e.i(187345),h=e.i(193695);e.i(293777);var m=e.i(274321),g=e.i(732470);e.i(698134);var f=e.i(85e4);function N(e){if(void 0!==e)return"string"==typeof e&&e.trim()?e.trim():null}async function R(e,t){try{let{id:e}=await t.params,r=await (0,f.getTrackerRun)(e);if(!r)return g.NextResponse.json({error:"Tracker run not found"},{status:404});return g.NextResponse.json({run:r})}catch(e){return console.error("Failed to load tracker run:",e),g.NextResponse.json({error:"Failed to load tracker run",message:e instanceof Error?e.message:String(e)},{status:500})}}async function L(e,t){try{let{id:r}=await t.params,a=await e.json().catch(()=>({})),s=await (0,f.updateTrackerRun)({id:r,rootMessageId:N(a.rootMessageId),chatRunId:N(a.chatRunId),status:function(e){if("queued"===e||"running"===e||"success"===e||"failed"===e||"cancelled"===e)return e}(a.status),error:N(a.error)});if(!s)return g.NextResponse.json({error:"Tracker run not found"},{status:404});return g.NextResponse.json({run:s})}catch(e){return console.error("Failed to update tracker run:",e),g.NextResponse.json({error:"Failed to update tracker run",message:e instanceof Error?e.message:String(e)},{status:500})}}e.s(["GET",()=>R,"PATCH",()=>L,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],674729);var S=e.i(674729);let I=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/trackers/[tracker]/runs/[id]/route",pathname:"/api/trackers/[tracker]/runs/[id]",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/local/app/api/trackers/[tracker]/runs/[id]/route.ts",nextConfigOutput:"standalone",userland:S}),{workAsyncStorage:x,workUnitAsyncStorage:A,serverHooks:O}=I;function v(){return(0,a.patchFetch)({workAsyncStorage:x,workUnitAsyncStorage:A})}async function k(e,t,a){I.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/trackers/[tracker]/runs/[id]/route";g=g.replace(/\/index$/,"")||"/";let f=await I.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!f)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:N,params:R,nextConfig:L,parsedUrl:S,isDraftMode:x,prerenderManifest:A,routerServerContext:O,isOnDemandRevalidate:v,revalidateOnlyGenerated:k,resolvedPathname:y,clientReferenceManifest:U,serverActionsManifest:C}=f,w=(0,o.normalizeAppPath)(g),D=!!(A.dynamicRoutes[w]||A.routes[y]),j=async()=>((null==O?void 0:O.render404)?await O.render404(e,t,S,!1):t.end("This page could not be found"),null);if(D&&!x){let e=!!A.routes[y],t=A.dynamicRoutes[w];if(t&&!1===t.fallback&&!e){if(L.experimental.adapterPath)return await j();throw new h.NoFallbackError}}let X=null;!D||I.isDev||x||(X="/index"===(X=y)?"/":X);let M=!0===I.isDev||!D,b=D&&!M;C&&U&&(0,i.setManifestsSingleton)({page:g,clientReferenceManifest:U,serverActionsManifest:C});let F=e.method||"GET",q=(0,n.getTracer)(),P=q.getActiveScopeSpan(),$={params:R,prerenderManifest:A,renderOpts:{experimental:{authInterrupts:!!L.experimental.authInterrupts},cacheComponents:!!L.cacheComponents,supportsDynamicResponse:M,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:L.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>I.onRequestError(e,t,a,s,O)},sharedContext:{buildId:N}},H=new u.NodeNextRequest(e),G=new u.NodeNextResponse(t),B=d.NextRequestAdapter.fromNodeNextRequest(H,(0,d.signalFromNodeResponse)(t));try{let i=async e=>I.handle(B,$).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")!==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 a=r.get("next.route");if(a){let t=`${F} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${F} ${g}`)}),o=!!(0,s.getRequestMeta)(e,"minimalMode"),u=async s=>{var n,u;let d=async({previousCacheEntry:r})=>{try{if(!o&&v&&k&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await i(s);e.fetchMetrics=$.renderOpts.fetchMetrics;let u=$.renderOpts.pendingWaitUntil;u&&a.waitUntil&&(a.waitUntil(u),u=void 0);let d=$.renderOpts.collectedTags;if(!D)return await (0,p.sendResponse)(H,G,n,$.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,_.toNodeOutgoingHttpHeaders)(n.headers);d&&(t[T.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==$.renderOpts.collectedRevalidate&&!($.renderOpts.collectedRevalidate>=T.INFINITE_CACHE)&&$.renderOpts.collectedRevalidate,a=void 0===$.renderOpts.collectedExpire||$.renderOpts.collectedExpire>=T.INFINITE_CACHE?void 0:$.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await I.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:b,isOnDemandRevalidate:v})},!1,O),t}},l=await I.handleResponse({req:e,nextConfig:L,cacheKey:X,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:A,isRoutePPREnabled:!1,isOnDemandRevalidate:v,revalidateOnlyGenerated:k,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:o});if(!D)return null;if((null==l||null==(n=l.value)?void 0:n.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==l||null==(u=l.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",v?"REVALIDATED":l.isMiss?"MISS":l.isStale?"STALE":"HIT"),x&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,_.fromNodeOutgoingHttpHeaders)(l.value.headers);return o&&D||h.delete(T.NEXT_CACHE_TAGS_HEADER),!l.cacheControl||t.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,E.getCacheControlHeader)(l.cacheControl)),await (0,p.sendResponse)(H,G,new Response(l.value.body,{headers:h,status:l.value.status||200})),null};P?await u(P):await q.withPropagatedContext(e.headers,()=>q.trace(l.BaseServerSpan.handleRequest,{spanName:`${F} ${g}`,kind:n.SpanKind.SERVER,attributes:{"http.method":F,"http.target":e.url}},u))}catch(t){if(t instanceof h.NoFallbackError||await I.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:b,isOnDemandRevalidate:v})},!1,O),D)throw t;return await (0,p.sendResponse)(H,G,new Response(null,{status:500})),null}}e.s(["handler",()=>k,"patchFetch",()=>v,"routeModule",()=>I,"serverHooks",()=>O,"workAsyncStorage",()=>x,"workUnitAsyncStorage",()=>A],266517)},58723,e=>{e.v(e=>Promise.resolve().then(()=>e(78362)))},138720,e=>{e.v(e=>Promise.resolve().then(()=>e(85e4)))},410437,e=>{e.v(e=>Promise.resolve().then(()=>e(862263)))},836400,e=>{e.v(e=>Promise.resolve().then(()=>e(581001)))},169447,e=>{e.v(e=>Promise.resolve().then(()=>e(242617)))},119130,e=>{e.v(e=>Promise.resolve().then(()=>e(607495)))}];
127
+ WHERE cr.status IN ('queued', 'running')`;return(r?t.prepare(a).all(e.trim()):t.prepare(a).all()).map(e=>({issueId:e.issue_id,agentId:e.agent_id,agentName:e.agent_name}))})}e.s(["createLinearRun",0,_,"createTrackerRun",()=>_,"getIssueActiveAgents",()=>N,"getIssueActivityMap",()=>m,"getIssueStats",()=>g,"getLinearRun",0,T,"getTrackerRun",()=>T,"listLinearRuns",0,h,"listTrackerRuns",()=>h,"updateLinearRun",0,E,"updateTrackerRun",()=>E])},266517,e=>{"use strict";var t=e.i(692988),r=e.i(635595),a=e.i(75473),s=e.i(923435),n=e.i(418475),i=e.i(303482),o=e.i(976287),u=e.i(774462),d=e.i(111998),c=e.i(201516),l=e.i(68877),p=e.i(259460),_=e.i(257714),E=e.i(502073),T=e.i(187345),h=e.i(193695);e.i(293777);var m=e.i(274321),g=e.i(732470);e.i(698134);var N=e.i(85e4);function R(e){if(void 0!==e)return"string"==typeof e&&e.trim()?e.trim():null}async function f(e,t){try{let{id:e}=await t.params,r=await (0,N.getTrackerRun)(e);if(!r)return g.NextResponse.json({error:"Tracker run not found"},{status:404});return g.NextResponse.json({run:r})}catch(e){return console.error("Failed to load tracker run:",e),g.NextResponse.json({error:"Failed to load tracker run",message:e instanceof Error?e.message:String(e)},{status:500})}}async function L(e,t){try{let{id:r}=await t.params,a=await e.json().catch(()=>({})),s=await (0,N.updateTrackerRun)({id:r,rootMessageId:R(a.rootMessageId),chatRunId:R(a.chatRunId),status:function(e){if("queued"===e||"running"===e||"success"===e||"failed"===e||"cancelled"===e)return e}(a.status),error:R(a.error)});if(!s)return g.NextResponse.json({error:"Tracker run not found"},{status:404});return g.NextResponse.json({run:s})}catch(e){return console.error("Failed to update tracker run:",e),g.NextResponse.json({error:"Failed to update tracker run",message:e instanceof Error?e.message:String(e)},{status:500})}}e.s(["GET",()=>f,"PATCH",()=>L,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],674729);var S=e.i(674729);let I=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/trackers/[tracker]/runs/[id]/route",pathname:"/api/trackers/[tracker]/runs/[id]",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/local/app/api/trackers/[tracker]/runs/[id]/route.ts",nextConfigOutput:"standalone",userland:S}),{workAsyncStorage:A,workUnitAsyncStorage:O,serverHooks:x}=I;function v(){return(0,a.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:O})}async function k(e,t,a){I.isDev&&(0,s.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/trackers/[tracker]/runs/[id]/route";g=g.replace(/\/index$/,"")||"/";let N=await I.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!N)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:R,params:f,nextConfig:L,parsedUrl:S,isDraftMode:A,prerenderManifest:O,routerServerContext:x,isOnDemandRevalidate:v,revalidateOnlyGenerated:k,resolvedPathname:C,clientReferenceManifest:y,serverActionsManifest:U}=N,w=(0,o.normalizeAppPath)(g),D=!!(O.dynamicRoutes[w]||O.routes[C]),M=async()=>((null==x?void 0:x.render404)?await x.render404(e,t,S,!1):t.end("This page could not be found"),null);if(D&&!A){let e=!!O.routes[C],t=O.dynamicRoutes[w];if(t&&!1===t.fallback&&!e){if(L.experimental.adapterPath)return await M();throw new h.NoFallbackError}}let j=null;!D||I.isDev||A||(j="/index"===(j=C)?"/":j);let F=!0===I.isDev||!D,X=D&&!F;U&&y&&(0,i.setManifestsSingleton)({page:g,clientReferenceManifest:y,serverActionsManifest:U});let b=e.method||"GET",P=(0,n.getTracer)(),q=P.getActiveScopeSpan(),G={params:f,prerenderManifest:O,renderOpts:{experimental:{authInterrupts:!!L.experimental.authInterrupts},cacheComponents:!!L.cacheComponents,supportsDynamicResponse:F,incrementalCache:(0,s.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:L.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,a,s)=>I.onRequestError(e,t,a,s,x)},sharedContext:{buildId:R}},B=new u.NodeNextRequest(e),H=new u.NodeNextResponse(t),$=d.NextRequestAdapter.fromNodeNextRequest(B,(0,d.signalFromNodeResponse)(t));try{let i=async e=>I.handle($,G).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=P.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 a=r.get("next.route");if(a){let t=`${b} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${b} ${g}`)}),o=!!(0,s.getRequestMeta)(e,"minimalMode"),u=async s=>{var n,u;let d=async({previousCacheEntry:r})=>{try{if(!o&&v&&k&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await i(s);e.fetchMetrics=G.renderOpts.fetchMetrics;let u=G.renderOpts.pendingWaitUntil;u&&a.waitUntil&&(a.waitUntil(u),u=void 0);let d=G.renderOpts.collectedTags;if(!D)return await (0,p.sendResponse)(B,H,n,G.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,_.toNodeOutgoingHttpHeaders)(n.headers);d&&(t[T.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==G.renderOpts.collectedRevalidate&&!(G.renderOpts.collectedRevalidate>=T.INFINITE_CACHE)&&G.renderOpts.collectedRevalidate,a=void 0===G.renderOpts.collectedExpire||G.renderOpts.collectedExpire>=T.INFINITE_CACHE?void 0:G.renderOpts.collectedExpire;return{value:{kind:m.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:a}}}}catch(t){throw(null==r?void 0:r.isStale)&&await I.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,l.getRevalidateReason)({isStaticGeneration:X,isOnDemandRevalidate:v})},!1,x),t}},c=await I.handleResponse({req:e,nextConfig:L,cacheKey:j,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:O,isRoutePPREnabled:!1,isOnDemandRevalidate:v,revalidateOnlyGenerated:k,responseGenerator:d,waitUntil:a.waitUntil,isMinimalMode:o});if(!D)return null;if((null==c||null==(n=c.value)?void 0:n.kind)!==m.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==c||null==(u=c.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});o||t.setHeader("x-nextjs-cache",v?"REVALIDATED":c.isMiss?"MISS":c.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let h=(0,_.fromNodeOutgoingHttpHeaders)(c.value.headers);return o&&D||h.delete(T.NEXT_CACHE_TAGS_HEADER),!c.cacheControl||t.getHeader("Cache-Control")||h.get("Cache-Control")||h.set("Cache-Control",(0,E.getCacheControlHeader)(c.cacheControl)),await (0,p.sendResponse)(B,H,new Response(c.value.body,{headers:h,status:c.value.status||200})),null};q?await u(q):await P.withPropagatedContext(e.headers,()=>P.trace(c.BaseServerSpan.handleRequest,{spanName:`${b} ${g}`,kind:n.SpanKind.SERVER,attributes:{"http.method":b,"http.target":e.url}},u))}catch(t){if(t instanceof h.NoFallbackError||await I.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,l.getRevalidateReason)({isStaticGeneration:X,isOnDemandRevalidate:v})},!1,x),D)throw t;return await (0,p.sendResponse)(B,H,new Response(null,{status:500})),null}}e.s(["handler",()=>k,"patchFetch",()=>v,"routeModule",()=>I,"serverHooks",()=>x,"workAsyncStorage",()=>A,"workUnitAsyncStorage",()=>O],266517)},58723,e=>{e.v(e=>Promise.resolve().then(()=>e(78362)))},138720,e=>{e.v(e=>Promise.resolve().then(()=>e(85e4)))},410437,e=>{e.v(e=>Promise.resolve().then(()=>e(862263)))},836400,e=>{e.v(e=>Promise.resolve().then(()=>e(581001)))},169447,e=>{e.v(e=>Promise.resolve().then(()=>e(242617)))},119130,e=>{e.v(e=>Promise.resolve().then(()=>e(607495)))}];
113
128
 
114
129
  //# sourceMappingURL=%5Broot-of-the-server%5D__f7a936d9._.js.map