@mndrk/agx 2.3.3 → 2.4.2

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 (1038) hide show
  1. package/README.md +1 -1
  2. package/cloud-runtime/standalone/apps/local/.next/BUILD_ID +1 -1
  3. package/cloud-runtime/standalone/apps/local/.next/app-path-routes-manifest.json +27 -19
  4. package/cloud-runtime/standalone/apps/local/.next/build-manifest.json +2 -2
  5. package/cloud-runtime/standalone/apps/local/.next/prerender-manifest.json +3 -3
  6. package/cloud-runtime/standalone/apps/local/.next/routes-manifest.json +213 -125
  7. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page.js.nft.json +1 -1
  8. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  9. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.html +2 -2
  10. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.rsc +1 -1
  11. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  12. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  13. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  14. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  15. package/cloud-runtime/standalone/apps/local/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  16. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page.js.nft.json +1 -1
  17. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  18. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.html +2 -2
  19. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.rsc +2 -2
  20. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  21. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  22. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  23. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  24. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  25. package/cloud-runtime/standalone/apps/local/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  26. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  27. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  28. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page.js.nft.json +1 -1
  29. package/cloud-runtime/standalone/apps/local/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  30. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.html +2 -2
  31. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.rsc +3 -3
  32. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_full.segment.rsc +3 -3
  33. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  34. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_index.segment.rsc +2 -2
  35. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  36. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
  37. package/cloud-runtime/standalone/apps/local/.next/server/app/agents.segments/agents.segment.rsc +1 -1
  38. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js +1 -1
  39. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
  40. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js +1 -1
  41. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
  42. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/skills/route.js +1 -1
  43. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/[id]/skills/route.js.nft.json +1 -1
  44. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js +1 -1
  45. package/cloud-runtime/standalone/apps/local/.next/server/app/api/agents/export/route.js.nft.json +1 -1
  46. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/create/route.js +2 -2
  47. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/create/route.js.nft.json +1 -1
  48. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/route.js +1 -1
  49. package/cloud-runtime/standalone/apps/local/.next/server/app/api/automations/route.js.nft.json +1 -1
  50. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js +10 -10
  51. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat/route.js.nft.json +1 -1
  52. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/[id]/events/route/app-paths-manifest.json +3 -0
  53. package/cloud-runtime/standalone/apps/local/.next/server/app/api/chat-runs/[id]/events/route.js +7 -0
  54. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/activity → chat-runs/[id]/events}/route.js.nft.json +1 -1
  55. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/context → chat-runs/[id]/events}/route_client-reference-manifest.js +1 -1
  56. package/cloud-runtime/standalone/apps/local/.next/server/app/api/daemon/route.js +1 -1
  57. package/cloud-runtime/standalone/apps/local/.next/server/app/api/daemon/route.js.nft.json +1 -1
  58. package/cloud-runtime/standalone/apps/local/.next/server/app/api/file-search/route.js.nft.json +1 -1
  59. package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js +1 -1
  60. package/cloud-runtime/standalone/apps/local/.next/server/app/api/filesystem/analyze/route.js.nft.json +1 -1
  61. package/cloud-runtime/standalone/apps/local/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js +2 -3
  62. package/cloud-runtime/standalone/apps/local/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js.nft.json +1 -1
  63. package/cloud-runtime/standalone/apps/local/.next/server/app/api/health/route.js +1 -1
  64. package/cloud-runtime/standalone/apps/local/.next/server/app/api/health/route.js.nft.json +1 -1
  65. package/cloud-runtime/standalone/apps/local/.next/server/app/api/learnings/route.js +1 -1
  66. package/cloud-runtime/standalone/apps/local/.next/server/app/api/learnings/route.js.nft.json +1 -1
  67. package/cloud-runtime/standalone/apps/local/.next/server/app/api/memories/route.js +1 -1
  68. package/cloud-runtime/standalone/apps/local/.next/server/app/api/memories/route.js.nft.json +1 -1
  69. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/cancel/route.js +1 -1
  70. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/cancel/route.js.nft.json +1 -1
  71. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/signal/route.js +1 -1
  72. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/signal/route.js.nft.json +1 -1
  73. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js +1 -1
  74. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js.nft.json +1 -1
  75. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js +1 -1
  76. package/cloud-runtime/standalone/apps/local/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js.nft.json +1 -1
  77. package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js +1 -1
  78. package/cloud-runtime/standalone/apps/local/.next/server/app/api/participants/route.js.nft.json +1 -1
  79. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/agents/route.js +1 -1
  80. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/agents/route.js.nft.json +1 -1
  81. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/agents/unassigned/route.js +1 -1
  82. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/agents/unassigned/route.js.nft.json +1 -1
  83. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/migrate-v1/route.js +1 -1
  84. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/migrate-v1/route.js.nft.json +1 -1
  85. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/migrate-v2/route.js +1 -1
  86. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/migrate-v2/route.js.nft.json +1 -1
  87. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js +2 -2
  88. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/activities/route.js.nft.json +1 -1
  89. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js +1 -1
  90. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/[noteId]/route.js.nft.json +1 -1
  91. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js +1 -1
  92. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/notes/route.js.nft.json +1 -1
  93. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js +1 -1
  94. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/route.js.nft.json +1 -1
  95. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js +13 -13
  96. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/scheduled-tasks/route.js.nft.json +1 -1
  97. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js +1 -1
  98. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/validate/route.js.nft.json +1 -1
  99. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js +14 -14
  100. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/worker/route.js.nft.json +1 -1
  101. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js +1 -1
  102. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  103. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js +8 -8
  104. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/search/route.js.nft.json +1 -1
  105. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/skills/route.js +1 -1
  106. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/skills/route.js.nft.json +1 -1
  107. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/[teamId]/agents/route.js +1 -1
  108. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/[teamId]/agents/route.js.nft.json +1 -1
  109. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/[teamId]/route.js +1 -1
  110. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/[teamId]/route.js.nft.json +1 -1
  111. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/export/route.js +1 -1
  112. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/export/route.js.nft.json +1 -1
  113. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/import/route.js +1 -1
  114. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/import/route.js.nft.json +1 -1
  115. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/route.js +1 -1
  116. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/teams/route.js.nft.json +1 -1
  117. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/threads/route.js +1 -1
  118. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/threads/route.js.nft.json +1 -1
  119. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/variables/[key]/route.js +1 -1
  120. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/variables/[key]/route.js.nft.json +1 -1
  121. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/variables/route.js +1 -1
  122. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/variables/route.js.nft.json +1 -1
  123. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js +1 -1
  124. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/route.js.nft.json +1 -1
  125. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/cancel/route.js +1 -1
  126. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/cancel/route.js.nft.json +1 -1
  127. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/route.js +1 -1
  128. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/route.js.nft.json +1 -1
  129. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/runs/route.js +1 -1
  130. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/[id]/runs/route.js.nft.json +1 -1
  131. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/agents/route.js +1 -1
  132. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/agents/route.js.nft.json +1 -1
  133. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js +15 -15
  134. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
  135. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/route.js +1 -1
  136. package/cloud-runtime/standalone/apps/local/.next/server/app/api/prompt-jobs/route.js.nft.json +1 -1
  137. package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/check/[id]/route.js.nft.json +1 -1
  138. package/cloud-runtime/standalone/apps/local/.next/server/app/api/providers/route.js.nft.json +1 -1
  139. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/complete/route.js +1 -1
  140. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/complete/route.js.nft.json +1 -1
  141. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js +2 -2
  142. package/cloud-runtime/standalone/apps/local/.next/server/app/api/queue/route.js.nft.json +1 -1
  143. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js +9 -9
  144. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
  145. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js +12 -12
  146. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
  147. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/route.js +2 -2
  148. package/cloud-runtime/standalone/apps/local/.next/server/app/api/schedules/route.js.nft.json +1 -1
  149. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/assign/route.js.nft.json +1 -1
  150. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/available/route.js.nft.json +1 -1
  151. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/detail/route.js.nft.json +1 -1
  152. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/history/route.js.nft.json +1 -1
  153. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/learn/route.js.nft.json +1 -1
  154. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/route.js.nft.json +1 -1
  155. package/cloud-runtime/standalone/apps/local/.next/server/app/api/skills/unlearn/route.js.nft.json +1 -1
  156. package/cloud-runtime/standalone/apps/local/.next/server/app/api/status/route.js +1 -1
  157. package/cloud-runtime/standalone/apps/local/.next/server/app/api/status/route.js.nft.json +1 -1
  158. package/cloud-runtime/standalone/apps/local/.next/server/app/api/summarize/route.js +1 -1
  159. package/cloud-runtime/standalone/apps/local/.next/server/app/api/summarize/route.js.nft.json +1 -1
  160. package/cloud-runtime/standalone/apps/local/.next/server/app/api/task-groups/[id]/route/app-paths-manifest.json +3 -0
  161. package/cloud-runtime/standalone/apps/local/.next/server/app/api/task-groups/[id]/route.js +8 -0
  162. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/mcp-setup → task-groups/[id]}/route.js.nft.json +1 -1
  163. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/mcp-setup → task-groups/[id]}/route_client-reference-manifest.js +1 -1
  164. package/cloud-runtime/standalone/apps/local/.next/server/app/api/task-groups/[id]/tasks/route/app-paths-manifest.json +3 -0
  165. package/cloud-runtime/standalone/apps/local/.next/server/app/api/task-groups/[id]/tasks/route.js +8 -0
  166. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/active-agents → task-groups/[id]/tasks}/route.js.nft.json +1 -1
  167. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/activity → task-groups/[id]/tasks}/route_client-reference-manifest.js +1 -1
  168. package/cloud-runtime/standalone/apps/local/.next/server/app/api/task-groups/route/app-paths-manifest.json +3 -0
  169. package/cloud-runtime/standalone/apps/local/.next/server/app/api/task-groups/route.js +8 -0
  170. package/cloud-runtime/standalone/apps/local/.next/server/app/api/task-groups/route.js.nft.json +1 -0
  171. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/auth → task-groups}/route_client-reference-manifest.js +1 -1
  172. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js +1 -1
  173. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  174. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/route.js +1 -1
  175. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  176. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/costs/route.js +1 -1
  177. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/costs/route.js.nft.json +1 -1
  178. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/dependencies/route.js +1 -1
  179. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/dependencies/route.js.nft.json +1 -1
  180. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/events/route.js +1 -1
  181. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -1
  182. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/history/route.js +1 -1
  183. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -1
  184. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/metrics/route.js +1 -1
  185. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -1
  186. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/replan/route.js +1 -1
  187. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -1
  188. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/restart/route.js +1 -1
  189. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -1
  190. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/resume/route.js +1 -1
  191. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -1
  192. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/rollback/route.js +1 -1
  193. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -1
  194. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/route.js +1 -1
  195. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -1
  196. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/schedule/route.js +1 -1
  197. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/schedule/route.js.nft.json +1 -1
  198. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/start/route.js +1 -1
  199. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/graph/start/route.js.nft.json +1 -1
  200. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/history/route.js +1 -1
  201. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/history/route.js.nft.json +1 -1
  202. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/logs/route.js +1 -1
  203. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
  204. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js +1 -1
  205. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js.nft.json +1 -1
  206. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js +1 -1
  207. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -1
  208. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js +1 -1
  209. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -1
  210. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js +1 -1
  211. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -1
  212. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js +1 -1
  213. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -1
  214. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js +1 -1
  215. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -1
  216. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js +1 -1
  217. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
  218. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/route.js +1 -1
  219. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  220. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/assign-orphans/route.js +1 -1
  221. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/assign-orphans/route.js.nft.json +1 -1
  222. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js +2 -2
  223. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tasks/route.js.nft.json +1 -1
  224. package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js +1 -1
  225. package/cloud-runtime/standalone/apps/local/.next/server/app/api/terminal/sessions/[id]/route.js.nft.json +1 -1
  226. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js +1 -1
  227. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
  228. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js +1 -1
  229. package/cloud-runtime/standalone/apps/local/.next/server/app/api/threads/route.js.nft.json +1 -1
  230. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tracker/notes/route/app-paths-manifest.json +3 -0
  231. package/cloud-runtime/standalone/apps/local/.next/server/app/api/tracker/notes/route.js +6 -0
  232. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/auth → tracker/notes}/route.js.nft.json +1 -1
  233. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/status → tracker/notes}/route_client-reference-manifest.js +1 -1
  234. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/active-agents/route/app-paths-manifest.json +3 -0
  235. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/active-agents/route.js +7 -0
  236. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs/[id] → trackers/[tracker]/active-agents}/route.js.nft.json +1 -1
  237. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/active-agents/route_client-reference-manifest.js +2 -0
  238. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/auth/route/app-paths-manifest.json +3 -0
  239. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id] → trackers/[tracker]/auth}/route.js +8 -7
  240. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/auth/route.js.nft.json +1 -0
  241. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/auth/route_client-reference-manifest.js +2 -0
  242. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/callback/route/app-paths-manifest.json +3 -0
  243. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/callback/route.js +12 -0
  244. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/callback/route.js.nft.json +1 -0
  245. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/active-agents → trackers/[tracker]/callback}/route_client-reference-manifest.js +1 -1
  246. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/groups/route/app-paths-manifest.json +3 -0
  247. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/groups/route.js +12 -0
  248. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/groups/route.js.nft.json +1 -0
  249. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/groups/route_client-reference-manifest.js +2 -0
  250. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/activity/route/app-paths-manifest.json +3 -0
  251. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/activity/route.js +12 -0
  252. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/activity/route.js.nft.json +1 -0
  253. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/activity/route_client-reference-manifest.js +2 -0
  254. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/recap/route/app-paths-manifest.json +3 -0
  255. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/recap/route.js +13 -0
  256. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/recap/route.js.nft.json +1 -0
  257. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/recap/route_client-reference-manifest.js +2 -0
  258. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/route/app-paths-manifest.json +3 -0
  259. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/route.js +12 -0
  260. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/route.js.nft.json +1 -0
  261. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/[id]/route_client-reference-manifest.js +2 -0
  262. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/route/app-paths-manifest.json +3 -0
  263. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/route.js +12 -0
  264. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/items/route.js.nft.json +1 -0
  265. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id]/recap → trackers/[tracker]/items}/route_client-reference-manifest.js +1 -1
  266. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/mcp-setup/route/app-paths-manifest.json +3 -0
  267. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/mcp-setup/route.js +13 -0
  268. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/mcp-setup/route.js.nft.json +1 -0
  269. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/mcp-setup/route_client-reference-manifest.js +2 -0
  270. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/options/route/app-paths-manifest.json +3 -0
  271. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/options/route.js +12 -0
  272. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/options/route.js.nft.json +1 -0
  273. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/options/route_client-reference-manifest.js +2 -0
  274. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/[id]/route/app-paths-manifest.json +3 -0
  275. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/[id]/route.js +12 -0
  276. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/[id]/route.js.nft.json +1 -0
  277. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/[id]/route_client-reference-manifest.js +2 -0
  278. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/route/app-paths-manifest.json +3 -0
  279. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/context → trackers/[tracker]/runs}/route.js +8 -7
  280. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/route.js.nft.json +1 -0
  281. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/route_client-reference-manifest.js +2 -0
  282. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/scripted/route/app-paths-manifest.json +3 -0
  283. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/scripted/route.js +12 -0
  284. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/scripted/route.js.nft.json +1 -0
  285. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/runs/scripted/route_client-reference-manifest.js +2 -0
  286. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route/app-paths-manifest.json +3 -0
  287. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route/build-manifest.json +11 -0
  288. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route.js +12 -0
  289. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route.js.nft.json +1 -0
  290. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/status/route_client-reference-manifest.js +2 -0
  291. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route/app-paths-manifest.json +3 -0
  292. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route/build-manifest.json +11 -0
  293. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route/server-reference-manifest.json +4 -0
  294. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route.js +12 -0
  295. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route.js.map +5 -0
  296. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route.js.nft.json +1 -0
  297. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token/route_client-reference-manifest.js +2 -0
  298. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route/app-paths-manifest.json +3 -0
  299. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route/build-manifest.json +11 -0
  300. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route/server-reference-manifest.json +4 -0
  301. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route.js +12 -0
  302. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route.js.map +5 -0
  303. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route.js.nft.json +1 -0
  304. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/token-receive/route_client-reference-manifest.js +2 -0
  305. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route/app-paths-manifest.json +3 -0
  306. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route/build-manifest.json +11 -0
  307. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route/server-reference-manifest.json +4 -0
  308. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route.js +16 -0
  309. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route.js.map +5 -0
  310. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route.js.nft.json +1 -0
  311. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/[tracker]/worker/route_client-reference-manifest.js +2 -0
  312. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/connections/route/app-paths-manifest.json +3 -0
  313. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/connections/route/build-manifest.json +11 -0
  314. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/connections/route/server-reference-manifest.json +4 -0
  315. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/connections/route.js +7 -0
  316. package/cloud-runtime/standalone/apps/local/.next/server/app/api/trackers/connections/route.js.map +5 -0
  317. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/callback → trackers/connections}/route.js.nft.json +1 -1
  318. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs/scripted → trackers/connections}/route_client-reference-manifest.js +1 -1
  319. package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route/app-paths-manifest.json +3 -0
  320. package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route/build-manifest.json +11 -0
  321. package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route/server-reference-manifest.json +4 -0
  322. package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route.js +7 -0
  323. package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route.js.map +5 -0
  324. package/cloud-runtime/standalone/apps/local/.next/server/app/api/update-check/route.js.nft.json +1 -0
  325. package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/token → update-check}/route_client-reference-manifest.js +1 -1
  326. package/cloud-runtime/standalone/apps/local/.next/server/app/api/user-settings/route.js +1 -1
  327. package/cloud-runtime/standalone/apps/local/.next/server/app/api/user-settings/route.js.nft.json +1 -1
  328. package/cloud-runtime/standalone/apps/local/.next/server/app/index.html +2 -2
  329. package/cloud-runtime/standalone/apps/local/.next/server/app/index.rsc +3 -3
  330. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  331. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_full.segment.rsc +3 -3
  332. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_head.segment.rsc +1 -1
  333. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_index.segment.rsc +2 -2
  334. package/cloud-runtime/standalone/apps/local/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  335. package/cloud-runtime/standalone/apps/local/.next/server/app/page.js.nft.json +1 -1
  336. package/cloud-runtime/standalone/apps/local/.next/server/app/page_client-reference-manifest.js +1 -1
  337. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page/react-loadable-manifest.json +1 -1
  338. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
  339. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
  340. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page.js.nft.json +1 -1
  341. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/env-vars/page_client-reference-manifest.js +1 -1
  342. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page.js.nft.json +1 -1
  343. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/folders/page_client-reference-manifest.js +1 -1
  344. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
  345. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
  346. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page.js.nft.json +1 -1
  347. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/[objectiveId]/page_client-reference-manifest.js +1 -1
  348. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page.js.nft.json +1 -1
  349. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/objectives/page_client-reference-manifest.js +1 -1
  350. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
  351. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  352. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page.js.nft.json +1 -1
  353. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
  354. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page.js.nft.json +1 -1
  355. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/[teamId]/page_client-reference-manifest.js +1 -1
  356. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page.js.nft.json +1 -1
  357. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/adopt/page_client-reference-manifest.js +1 -1
  358. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page.js.nft.json +1 -1
  359. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/new/page_client-reference-manifest.js +1 -1
  360. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page.js.nft.json +1 -1
  361. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/page_client-reference-manifest.js +1 -1
  362. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page.js.nft.json +1 -1
  363. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/teams/replace/page_client-reference-manifest.js +1 -1
  364. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page.js.nft.json +1 -1
  365. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/terminal/page_client-reference-manifest.js +1 -1
  366. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
  367. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
  368. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page/app-paths-manifest.json +3 -0
  369. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page/next-font-manifest.json +11 -0
  370. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/{linear → tracking/[tracker]}/page/react-loadable-manifest.json +3 -3
  371. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page/server-reference-manifest.json +4 -0
  372. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page.js +16 -0
  373. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page.js.map +5 -0
  374. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page.js.nft.json +1 -0
  375. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/[tracker]/page_client-reference-manifest.js +2 -0
  376. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page/app-paths-manifest.json +3 -0
  377. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page/build-manifest.json +18 -0
  378. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page/next-font-manifest.json +11 -0
  379. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page/react-loadable-manifest.json +1 -0
  380. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page/server-reference-manifest.json +4 -0
  381. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page.js +16 -0
  382. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page.js.map +5 -0
  383. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page.js.nft.json +1 -0
  384. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/connect/page_client-reference-manifest.js +2 -0
  385. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page/app-paths-manifest.json +3 -0
  386. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page/build-manifest.json +18 -0
  387. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/{linear → tracking}/page/next-font-manifest.json +1 -1
  388. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page/react-loadable-manifest.json +16 -0
  389. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page/server-reference-manifest.json +4 -0
  390. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/{linear → tracking}/page.js +6 -6
  391. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page.js.map +5 -0
  392. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/{linear → tracking}/page.js.nft.json +1 -1
  393. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/tracking/page_client-reference-manifest.js +2 -0
  394. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page.js.nft.json +1 -1
  395. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  396. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.html +2 -2
  397. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.rsc +3 -3
  398. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_full.segment.rsc +3 -3
  399. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  400. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_index.segment.rsc +2 -2
  401. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  402. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +2 -2
  403. package/cloud-runtime/standalone/apps/local/.next/server/app/projects.segments/projects.segment.rsc +1 -1
  404. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page.js.nft.json +1 -1
  405. package/cloud-runtime/standalone/apps/local/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  406. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.html +2 -2
  407. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.rsc +2 -2
  408. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_full.segment.rsc +2 -2
  409. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_head.segment.rsc +1 -1
  410. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_index.segment.rsc +2 -2
  411. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
  412. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +1 -1
  413. package/cloud-runtime/standalone/apps/local/.next/server/app/setup.segments/setup.segment.rsc +1 -1
  414. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page.js.nft.json +1 -1
  415. package/cloud-runtime/standalone/apps/local/.next/server/app/status/page_client-reference-manifest.js +1 -1
  416. package/cloud-runtime/standalone/apps/local/.next/server/app/status.html +2 -2
  417. package/cloud-runtime/standalone/apps/local/.next/server/app/status.rsc +3 -3
  418. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_full.segment.rsc +3 -3
  419. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_head.segment.rsc +1 -1
  420. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_index.segment.rsc +2 -2
  421. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/_tree.segment.rsc +2 -2
  422. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status/__PAGE__.segment.rsc +2 -2
  423. package/cloud-runtime/standalone/apps/local/.next/server/app/status.segments/status.segment.rsc +1 -1
  424. package/cloud-runtime/standalone/apps/local/.next/server/app-paths-manifest.json +27 -19
  425. package/cloud-runtime/standalone/apps/local/.next/server/chunks/083c9_next-internal_server_app_api_trackers_[tracker]_callback_route_actions_e1d8c3e4.js +3 -0
  426. package/cloud-runtime/standalone/apps/local/.next/server/chunks/0da96_local__next-internal_server_app_api_trackers_connections_route_actions_35145606.js +3 -0
  427. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_active-agents_route_actions_e9c27b60.js +3 -0
  428. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_items_[id]_activity_route_actions_bb364795.js +3 -0
  429. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_items_[id]_recap_route_actions_aaed4138.js +3 -0
  430. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_items_[id]_route_actions_6382f424.js +3 -0
  431. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_mcp-setup_route_actions_1279e3c1.js +3 -0
  432. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_runs_[id]_route_actions_4c32ff23.js +3 -0
  433. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_runs_scripted_route_actions_3c16062e.js +3 -0
  434. package/cloud-runtime/standalone/apps/local/.next/server/chunks/30bdd_server_app_api_trackers_[tracker]_token-receive_route_actions_f831c68f.js +3 -0
  435. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]__cb7264ab._.js +3 -0
  436. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]_fs_promises_0bfe4114._.js +3 -0
  437. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__8ea8c1b9._.js → [root-of-the-server]__03585144._.js} +2 -2
  438. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__9a457fa6._.js → [root-of-the-server]__04ee9637._.js} +2 -2
  439. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__079c42ac._.js +3 -0
  440. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__08a40fc7._.js +3 -0
  441. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__bad0734e._.js → [root-of-the-server]__0a528fae._.js} +2 -2
  442. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__29ef193f._.js → [root-of-the-server]__0b317b6d._.js} +2 -2
  443. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0fbbaf2d._.js +95 -0
  444. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__101fe653._.js +3 -0
  445. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__10a90219._.js +69 -0
  446. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__305e10a8._.js → [root-of-the-server]__10bfac8f._.js} +2 -2
  447. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__121d8e45._.js +3 -0
  448. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1629da24._.js +9 -0
  449. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__9a4dd378._.js → [root-of-the-server]__19d0fac1._.js} +2 -2
  450. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1d3e684e._.js +70 -0
  451. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__203428c1._.js +6 -0
  452. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__21721841._.js +3 -0
  453. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__240d98b0._.js +3 -0
  454. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__a7163d7b._.js → [root-of-the-server]__2ab23e45._.js} +2 -2
  455. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__2bb933c7._.js +3 -0
  456. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__2c148e2b._.js +3 -0
  457. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__2ff70366._.js +3 -0
  458. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__17474404._.js → [root-of-the-server]__368f5ffd._.js} +2 -2
  459. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__80be3fd0._.js → [root-of-the-server]__39baf5f6._.js} +1 -1
  460. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__3a038592._.js +10 -8
  461. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__3b27260f._.js +114 -0
  462. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__f99bf39d._.js → [root-of-the-server]__41534d9e._.js} +2 -2
  463. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__9f7dc3d5._.js → [root-of-the-server]__4641ba3f._.js} +2 -2
  464. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0408eb2d._.js → [root-of-the-server]__4b167927._.js} +2 -2
  465. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0e11afc3._.js → [root-of-the-server]__4b9d4f5c._.js} +2 -2
  466. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__45988247._.js → [root-of-the-server]__4e296e1f._.js} +2 -2
  467. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__3a639150._.js → [root-of-the-server]__4fbf7baa._.js} +2 -2
  468. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__cf874bd3._.js → [root-of-the-server]__5184da61._.js} +3 -3
  469. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__5859156d._.js +8 -0
  470. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__6062bf0a._.js +3 -0
  471. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__68b692c4._.js +131 -0
  472. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__92dfd9af._.js → [root-of-the-server]__6b0b354d._.js} +2 -2
  473. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__8363ba26._.js → [root-of-the-server]__6e0ef488._.js} +2 -2
  474. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__68c85bdd._.js → [root-of-the-server]__6e73b6e1._.js} +2 -2
  475. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__a8861f5b._.js → [root-of-the-server]__6ead08b8._.js} +2 -2
  476. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__fd3e97e7._.js → [root-of-the-server]__6f6afa0f._.js} +20 -20
  477. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__73f80c8c._.js +3 -0
  478. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__7be142e5._.js → [root-of-the-server]__7b7b4601._.js} +2 -2
  479. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__7cd28ae0._.js +3 -0
  480. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__7db7c421._.js +119 -0
  481. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__1888961f._.js → [root-of-the-server]__7fcbb0c2._.js} +96 -94
  482. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__83baa76e._.js → [root-of-the-server]__80aea589._.js} +1 -1
  483. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__8269cb17._.js +3 -0
  484. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__847236fb._.js +3 -0
  485. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__847ab7ae._.js +3 -0
  486. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__91dd4b59._.js → [root-of-the-server]__8dd3b8c5._.js} +2 -2
  487. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__268327fe._.js → [root-of-the-server]__905a5b44._.js} +2 -2
  488. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__8c1f1ac0._.js → [root-of-the-server]__90dd5edd._.js} +2 -2
  489. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__97b5dbf7._.js +3 -0
  490. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__bb6304da._.js → [root-of-the-server]__97e51964._.js} +2 -2
  491. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__0ce28b4a._.js → [root-of-the-server]__97e7a600._.js} +2 -2
  492. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__9e4c0741._.js +8 -0
  493. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__9e9149cd._.js +3 -0
  494. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__cea6728f._.js → [root-of-the-server]__a74338e8._.js} +2 -2
  495. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__816926cc._.js → [root-of-the-server]__aa4e5942._.js} +2 -2
  496. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__ab9b38d8._.js +3 -0
  497. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__4c4892ef._.js → [root-of-the-server]__ac854687._.js} +2 -2
  498. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__c18c59db._.js → [root-of-the-server]__ae54e5ab._.js} +2 -2
  499. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__b0a94c41._.js +70 -0
  500. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__b1357960._.js +3 -0
  501. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__53af378f._.js → [root-of-the-server]__b810670d._.js} +2 -2
  502. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__ba72d342._.js +91 -0
  503. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__da39c8a8._.js → [root-of-the-server]__bb757af8._.js} +2 -2
  504. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c07d22ff._.js +3 -0
  505. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c3408141._.js +3 -0
  506. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c4a986f6._.js +3 -0
  507. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__6e876a97._.js → [root-of-the-server]__c614c26c._.js} +2 -2
  508. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c936d679._.js +17 -0
  509. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__caa79472._.js +3 -0
  510. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__dc146f58._.js → [root-of-the-server]__cbd45246._.js} +2 -2
  511. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__8316aa3e._.js → [root-of-the-server]__d402ed75._.js} +2 -2
  512. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__d8cc43c7._.js +114 -0
  513. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__e9ff8266._.js → [root-of-the-server]__d8efbb6c._.js} +2 -2
  514. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__e679695d._.js → [root-of-the-server]__dd538d32._.js} +2 -2
  515. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__c16e8d2d._.js → [root-of-the-server]__df0f00fd._.js} +2 -2
  516. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__131f801a._.js → [root-of-the-server]__e237981c._.js} +2 -2
  517. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__7d454180._.js → [root-of-the-server]__e583235c._.js} +2 -2
  518. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__ccd1a823._.js → [root-of-the-server]__ece576c1._.js} +2 -2
  519. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__ef1c393e._.js +70 -0
  520. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__c97ac79d._.js → [root-of-the-server]__f21be9eb._.js} +2 -2
  521. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__f598d976._.js +3 -0
  522. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__f7a936d9._.js +114 -0
  523. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{[root-of-the-server]__d7e4a538._.js → [root-of-the-server]__fb5944d3._.js} +1 -1
  524. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__fb694089._.js +3 -0
  525. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__fbe43c0a._.js +3 -0
  526. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{_3a4bfa8b._.js → _08b93004._.js} +2 -2
  527. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_1a4cb196._.js +95 -0
  528. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_2124f905._.js +25 -0
  529. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_21812330._.js +23 -23
  530. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_25136564._.js +11 -0
  531. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_520e6344._.js +25 -0
  532. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_5b3f1f41._.js +1 -1
  533. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_5e5f36c4._.js +91 -0
  534. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_80b34b78._.js +3 -0
  535. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_8f9f647d._.js +128 -0
  536. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_task-groups_[id]_route_actions_b10cc67c.js +3 -0
  537. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_task-groups_route_actions_0079ff4a.js +3 -0
  538. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_tracker_notes_route_actions_b8a47be9.js +3 -0
  539. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_update-check_route_actions_29ba83b6.js +3 -0
  540. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{apps_local_3e0a6a05._.js → apps_local_a15e73a6._.js} +3 -3
  541. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_aac0e4cb._.js +109 -0
  542. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_b8cc7add._.js +23 -23
  543. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{apps_local_2c8c923a._.js → apps_local_c101ba9e._.js} +2 -2
  544. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_d256aa32._.js +286 -0
  545. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_e12b284f._.js +23 -23
  546. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_e1f4d9ad._.js +91 -0
  547. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_e55f28ef._.js +296 -0
  548. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_ea2bca7e._.js +109 -0
  549. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_f8b3abae._.js +91 -0
  550. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_3ddc6591._.js +4 -0
  551. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_6bd3d8a2._.js +15 -15
  552. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_cli-runner_ts_ead5489c._.js +18 -18
  553. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_d268503a._.js +15 -15
  554. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_history-store_ts_e4ff7678._.js +19 -12
  555. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_history-store_ts_e98db4de._.js +19 -12
  556. package/cloud-runtime/standalone/apps/local/.next/server/chunks/{apps_local_58f0d34e._.js → apps_local_lib_linear-issues_ts_50093d17._.js} +15 -20
  557. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_orchestrator_chat-processor_ts_46384f36._.js +14 -13
  558. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_sqlite-query-adapter_ts_7b90c71f._.js +49 -23
  559. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_sqlite-query-adapter_ts_7ee03cea._.js +3 -0
  560. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_sqlite-query-adapter_ts_a3d4d8f4._.js +48 -22
  561. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_lib_tracker_tracker-run-store_ts_5aa9592e._.js +114 -0
  562. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_chat-runs_[id]_events_route_actions_2099e8ec.js +3 -0
  563. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_task-groups_[id]_tasks_route_actions_9a8b437b.js +3 -0
  564. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_auth_route_actions_93e51026.js +3 -0
  565. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_groups_route_actions_950eeaf7.js +3 -0
  566. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_items_route_actions_41ec2af7.js +3 -0
  567. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_options_route_actions_19b0ffef.js +3 -0
  568. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_runs_route_actions_54d24a56.js +3 -0
  569. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_status_route_actions_1f8ce507.js +3 -0
  570. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_token_route_actions_93eeb2d1.js +3 -0
  571. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_trackers_[tracker]_worker_route_actions_22ced26f.js +3 -0
  572. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/083c9_next-internal_server_app_projects_[slug]_tracking_connect_page_actions_72d4a587.js +3 -0
  573. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0da96_local__next-internal_server_app_projects_[slug]_tracking_page_actions_ad982907.js +3 -0
  574. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/30bdd_server_app_projects_[slug]_tracking_[tracker]_page_actions_c27c0fcc.js +3 -0
  575. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/9fb8c_lucide-react_dist_esm_icons_5e38c2ed._.js +3 -0
  576. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__6e4038bb._.js → [root-of-the-server]__2c4531d0._.js} +2 -2
  577. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__30bf097e._.js +3 -0
  578. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__46ae9d33._.js +3 -0
  579. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__50fd8680._.js +3 -0
  580. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__64cb5d93._.js → [root-of-the-server]__51edc9b6._.js} +2 -2
  581. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__5aa35736._.js +3 -0
  582. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__5c817ed1._.js +3 -0
  583. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__799f4d13._.js +3 -0
  584. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__8059a285._.js +3 -0
  585. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__886953ec._.js +7 -0
  586. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__97160565._.js +3 -0
  587. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__b8a00d09._.js +3 -0
  588. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__bc60b3cf._.js +3 -0
  589. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__bce1fbf7._.js +1 -1
  590. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__c2c07c79._.js +3 -0
  591. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__c7e1ea27._.js +1 -1
  592. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{[root-of-the-server]__24007358._.js → [root-of-the-server]__ce586680._.js} +2 -2
  593. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__fdfb2d96._.js +3 -0
  594. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_55671310._.js +13 -13
  595. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_ba2abc47._.js +7 -0
  596. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_e00b6c25._.js +3 -0
  597. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_e485f527._.js +3 -0
  598. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_064c7b93._.js +18 -0
  599. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_16902bc1._.js +1 -1
  600. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_1e4a0236._.js +1 -1
  601. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_35d90b5d._.js +3 -0
  602. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_3e5712aa._.js +3 -0
  603. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_3f9f6417._.js +1 -1
  604. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_5d6a3ce2._.js +3 -0
  605. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_5eebb5cb._.js +3 -0
  606. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_7395ab20._.js +18 -0
  607. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_86f59be8._.js +3 -0
  608. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_988d29c0._.js +1 -1
  609. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_layout_tsx_3bb31889._.js +1 -1
  610. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_page_tsx_76330306._.js +1 -1
  611. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_terminal_page_tsx_0933eeaf._.js +1 -1
  612. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_thread_[threadId]_page_tsx_2a1d1d5e._.js +1 -1
  613. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_c5e75cc1._.js +18 -0
  614. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_TrackerBoard_tsx_98970bab._.js +48 -0
  615. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_chat-ui_f0554cb4._.js +11 -0
  616. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_components_projects_ProjectObjectivesWorkspace_tsx_751ab3d3._.js +3 -3
  617. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_d9a0fd57._.js +4 -0
  618. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_da1774f7._.js +4 -0
  619. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/{apps_local_5b388b71._.js → apps_local_e46807f8._.js} +3 -3
  620. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_e7a823e9._.js +3 -0
  621. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_f67bb291._.js +18 -0
  622. package/cloud-runtime/standalone/apps/local/.next/server/functions-config-manifest.json +20 -17
  623. package/cloud-runtime/standalone/apps/local/.next/server/middleware-manifest.json +5 -5
  624. package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.js +1 -1
  625. package/cloud-runtime/standalone/apps/local/.next/server/next-font-manifest.json +12 -4
  626. package/cloud-runtime/standalone/apps/local/.next/server/pages/404.html +2 -2
  627. package/cloud-runtime/standalone/apps/local/.next/server/pages/500.html +2 -2
  628. package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.js +1 -1
  629. package/cloud-runtime/standalone/apps/local/.next/server/server-reference-manifest.json +1 -1
  630. package/cloud-runtime/standalone/apps/local/.next/static/chunks/0876dfd6ce07abaf.js +9 -0
  631. package/cloud-runtime/standalone/apps/local/.next/static/chunks/114ea1bfd6907330.js +1 -0
  632. package/cloud-runtime/standalone/apps/local/.next/static/chunks/1533a70763aff97d.js +1 -0
  633. package/cloud-runtime/standalone/apps/local/.next/static/chunks/1ec83777a9abd420.js +16 -0
  634. package/cloud-runtime/standalone/apps/local/.next/static/chunks/1fef9364e8667e88.js +1 -0
  635. package/cloud-runtime/standalone/apps/local/.next/static/chunks/286758b0fd546c68.js +16 -0
  636. package/cloud-runtime/standalone/apps/local/.next/static/chunks/31eb3dfbf34049d2.js +1 -0
  637. package/cloud-runtime/standalone/apps/local/.next/static/chunks/31fa61ac9eccd69e.js +1 -0
  638. package/cloud-runtime/standalone/apps/local/.next/static/chunks/37f4e8258ca4d3fb.js +1 -0
  639. package/cloud-runtime/standalone/apps/local/.next/static/chunks/416f4124364c7ec8.js +1 -0
  640. package/cloud-runtime/standalone/apps/local/.next/static/chunks/4eaf7bca1be5edfa.js +1 -0
  641. package/cloud-runtime/standalone/apps/local/.next/static/chunks/6c278ae4535b6d5c.js +1 -0
  642. package/cloud-runtime/standalone/apps/local/.next/static/chunks/6c777fe66e042eec.js +16 -0
  643. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{2b946f9d53da482e.js → 77cea126364aab3c.js} +1 -1
  644. package/cloud-runtime/standalone/apps/local/.next/static/chunks/85b0b6ed57b5df52.js +1 -0
  645. package/cloud-runtime/standalone/apps/local/.next/static/chunks/87e4fb11329a358d.js +1 -0
  646. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{4bc34bec0c539bb8.js → 8a9626e4d7c259ee.js} +6 -6
  647. package/cloud-runtime/standalone/apps/local/.next/static/chunks/a72ed5cb3feb0d51.js +5 -0
  648. package/cloud-runtime/standalone/apps/local/.next/static/chunks/b02c180ad1d968eb.js +16 -0
  649. package/cloud-runtime/standalone/apps/local/.next/static/chunks/b048a4812b51f97a.js +1 -0
  650. package/cloud-runtime/standalone/apps/local/.next/static/chunks/be9022a471666b85.js +1 -0
  651. package/cloud-runtime/standalone/apps/local/.next/static/chunks/c63d97c917d96f47.js +46 -0
  652. package/cloud-runtime/standalone/apps/local/.next/static/chunks/cb19d71dd7ffb935.js +1 -0
  653. package/cloud-runtime/standalone/apps/local/.next/static/chunks/cbb4dbdc63177701.js +1 -0
  654. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{bf4057d9deff2a78.js → cd19b123505dd26c.js} +2 -2
  655. package/cloud-runtime/standalone/apps/local/.next/static/chunks/d3bf70e2fbdc0ae5.js +5 -0
  656. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{592bca7fe1fc1455.js → d500a3f5d15b31d5.js} +1 -1
  657. package/cloud-runtime/standalone/apps/local/.next/static/chunks/d5b14e14665024a9.js +5 -0
  658. package/cloud-runtime/standalone/apps/local/.next/static/chunks/dd5a56eea2d4c067.js +16 -0
  659. package/cloud-runtime/standalone/apps/local/.next/static/chunks/dd7d7c382389b8b9.js +16 -0
  660. package/cloud-runtime/standalone/apps/local/.next/static/chunks/{571e45336377eb45.js → e72724fd8225ec39.js} +3 -3
  661. package/cloud-runtime/standalone/apps/local/.next/static/chunks/ec92e3bd6c2db6e6.css +1 -0
  662. package/cloud-runtime/standalone/apps/local/.next/static/chunks/f3c1b6295b9442c6.js +1 -0
  663. package/cloud-runtime/standalone/apps/local/app/api/chat-runs/[id]/events/route.ts +98 -0
  664. package/cloud-runtime/standalone/apps/local/app/api/prompt-jobs/route.ts +1 -1
  665. package/cloud-runtime/standalone/apps/local/app/api/task-groups/[id]/route.ts +38 -0
  666. package/cloud-runtime/standalone/apps/local/app/api/task-groups/[id]/tasks/route.ts +42 -0
  667. package/cloud-runtime/standalone/apps/local/app/api/task-groups/route.ts +38 -0
  668. package/cloud-runtime/standalone/apps/local/app/api/tracker/notes/route.ts +65 -0
  669. package/cloud-runtime/standalone/apps/local/app/api/{linear/issues → trackers/[tracker]}/active-agents/route.ts +3 -2
  670. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/auth/route.ts +29 -0
  671. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/callback/route.ts +58 -0
  672. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/groups/route.ts +24 -0
  673. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/items/[id]/activity/route.ts +24 -0
  674. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/items/[id]/recap/route.ts +125 -0
  675. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/items/[id]/route.ts +60 -0
  676. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/items/route.ts +44 -0
  677. package/cloud-runtime/standalone/apps/local/app/api/{linear → trackers/[tracker]}/mcp-setup/route.ts +90 -33
  678. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/options/route.ts +33 -0
  679. package/cloud-runtime/standalone/apps/local/app/api/{linear → trackers/[tracker]}/runs/[id]/route.ts +24 -16
  680. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/runs/route.ts +87 -0
  681. package/cloud-runtime/standalone/apps/local/app/api/{linear → trackers/[tracker]}/runs/scripted/route.ts +13 -6
  682. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/status/route.ts +48 -0
  683. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/token/route.ts +49 -0
  684. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/token-receive/route.ts +52 -0
  685. package/cloud-runtime/standalone/apps/local/app/api/trackers/[tracker]/worker/route.ts +163 -0
  686. package/cloud-runtime/standalone/apps/local/app/api/trackers/connections/route.ts +96 -0
  687. package/cloud-runtime/standalone/apps/local/app/api/update-check/route.ts +50 -0
  688. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/layout.tsx +2 -1
  689. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/terminal/page.tsx +4 -1
  690. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/{linear → tracking/[tracker]}/page.tsx +11 -6
  691. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/tracking/connect/page.tsx +180 -0
  692. package/cloud-runtime/standalone/apps/local/app/projects/[slug]/tracking/page.tsx +36 -0
  693. package/cloud-runtime/standalone/apps/local/components/PromptJobBoard.tsx +3 -3
  694. package/cloud-runtime/standalone/apps/local/components/{LinearBoard.tsx → TrackerBoard.tsx} +654 -302
  695. package/cloud-runtime/standalone/apps/local/components/chat-ui/Composer.tsx +18 -75
  696. package/cloud-runtime/standalone/apps/local/components/chat-ui/MessageBubble.tsx +6 -1
  697. package/cloud-runtime/standalone/apps/local/components/chat-ui/MessageList.tsx +34 -8
  698. package/cloud-runtime/standalone/apps/local/components/chat-ui/StreamingSegments.tsx +88 -0
  699. package/cloud-runtime/standalone/apps/local/components/chat-ui/ThreadView.tsx +23 -13
  700. package/cloud-runtime/standalone/apps/local/components/projects/ProjectObjectivesWorkspace.tsx +18 -2
  701. package/cloud-runtime/standalone/apps/local/components/projects/home/ToolPathsSection.tsx +7 -7
  702. package/cloud-runtime/standalone/apps/local/components/terminal/ProjectTerminal.tsx +28 -5
  703. package/cloud-runtime/standalone/apps/local/components/thread/WorkspaceSidebar.tsx +61 -46
  704. package/cloud-runtime/standalone/apps/local/components/tracker/FolderRow.tsx +161 -0
  705. package/cloud-runtime/standalone/apps/local/components/tracker/GroupNamePrompt.tsx +110 -0
  706. package/cloud-runtime/standalone/apps/local/components/tracker/GroupPanel.tsx +306 -0
  707. package/cloud-runtime/standalone/apps/local/components/tracker/NoteSticker.tsx +161 -0
  708. package/cloud-runtime/standalone/apps/local/components/{linear → tracker}/RunScriptManager.tsx +7 -7
  709. package/cloud-runtime/standalone/apps/local/components/tracker/SelectionBar.tsx +38 -0
  710. package/cloud-runtime/standalone/apps/local/components/{linear → tracker}/TicketPanel.tsx +39 -37
  711. package/cloud-runtime/standalone/apps/local/components/{linear → tracker}/TicketRecapSection.tsx +9 -5
  712. package/cloud-runtime/standalone/apps/local/components/tracker/TicketRow.tsx +279 -0
  713. package/cloud-runtime/standalone/apps/local/components/{linear → tracker}/TicketSessionList.tsx +3 -3
  714. package/cloud-runtime/standalone/apps/local/components/{linear/LinearSettingsModal.tsx → tracker/TrackerSettingsModal.tsx} +26 -22
  715. package/cloud-runtime/standalone/apps/local/components/{linear/LinearWorkerConfig.tsx → tracker/TrackerWorkerConfig.tsx} +12 -12
  716. package/cloud-runtime/standalone/apps/local/components/{linear/LinearWorkerRunLog.tsx → tracker/TrackerWorkerRunLog.tsx} +4 -4
  717. package/cloud-runtime/standalone/apps/local/components/tracking/TaskTrackingNav.tsx +125 -0
  718. package/cloud-runtime/standalone/apps/local/components/tracking/TrackerIcon.tsx +58 -0
  719. package/cloud-runtime/standalone/apps/local/components/tracking/TrackerSetup.tsx +264 -0
  720. package/cloud-runtime/standalone/apps/local/hooks/useGroupChat.ts +1 -0
  721. package/cloud-runtime/standalone/apps/local/hooks/useProcessPolling.ts +155 -12
  722. package/cloud-runtime/standalone/apps/local/hooks/useSidebarStage.ts +54 -18
  723. package/cloud-runtime/standalone/apps/local/hooks/useTaskGroups.ts +133 -0
  724. package/cloud-runtime/standalone/apps/local/hooks/{useLinearActiveAgents.ts → useTrackerActiveAgents.ts} +19 -6
  725. package/cloud-runtime/standalone/apps/local/hooks/{useLinearConnection.ts → useTrackerConnection.ts} +107 -26
  726. package/cloud-runtime/standalone/apps/local/hooks/useTrackerConnections.ts +99 -0
  727. package/cloud-runtime/standalone/apps/local/hooks/{useLinearIssueMentions.ts → useTrackerItemMentions.ts} +15 -8
  728. package/cloud-runtime/standalone/apps/local/hooks/useTrackerItems.ts +120 -0
  729. package/cloud-runtime/standalone/apps/local/hooks/{useLinearParticipants.ts → useTrackerParticipants.ts} +4 -4
  730. package/cloud-runtime/standalone/apps/local/hooks/{useLinearRunScripts.ts → useTrackerRunScripts.ts} +15 -15
  731. package/cloud-runtime/standalone/apps/local/hooks/{useLinearRuns.ts → useTrackerRuns.ts} +33 -55
  732. package/cloud-runtime/standalone/apps/local/hooks/useUpdateCheck.ts +37 -0
  733. package/cloud-runtime/standalone/apps/local/hooks/useUrlSelection.ts +19 -0
  734. package/cloud-runtime/standalone/apps/local/lib/agent-process-registry.ts +29 -6
  735. package/cloud-runtime/standalone/apps/local/lib/chat/tracker-issue-context.ts +11 -0
  736. package/cloud-runtime/standalone/apps/local/lib/chat/{linear-issue-context.ts → tracker-item-context.ts} +19 -10
  737. package/cloud-runtime/standalone/apps/local/lib/chat-event-bus.ts +84 -0
  738. package/cloud-runtime/standalone/apps/local/lib/chat-utils.ts +68 -0
  739. package/cloud-runtime/standalone/apps/local/lib/cli-runner.ts +46 -21
  740. package/cloud-runtime/standalone/apps/local/lib/constants/timing.ts +1 -0
  741. package/cloud-runtime/standalone/apps/local/lib/history-store.ts +14 -0
  742. package/cloud-runtime/standalone/apps/local/lib/linear-run-status.ts +3 -1
  743. package/cloud-runtime/standalone/apps/local/lib/{objective-linear-issues.ts → objective-tracker-issues.ts} +12 -6
  744. package/cloud-runtime/standalone/apps/local/lib/orchestrator/chat-processor.ts +35 -1
  745. package/cloud-runtime/standalone/apps/local/lib/sqlite-query-adapter.ts +32 -0
  746. package/cloud-runtime/standalone/apps/local/lib/stream-multiplexer.ts +5 -0
  747. package/cloud-runtime/standalone/apps/local/lib/task-groups-db.ts +130 -0
  748. package/cloud-runtime/standalone/apps/local/lib/tiptap/composer-mentions.ts +5 -5
  749. package/cloud-runtime/standalone/apps/local/lib/tiptap/editor-utils.ts +1 -1
  750. package/cloud-runtime/standalone/apps/local/lib/tiptap/serialize-composer.ts +2 -2
  751. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/jira/adapter.tsx +324 -0
  752. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/jira/client.ts +517 -0
  753. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/jira/index.ts +18 -0
  754. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/jira/issues.ts +268 -0
  755. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/jira/jira-icon.tsx +22 -0
  756. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/linear/adapter.tsx +307 -0
  757. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/linear/client.ts +907 -0
  758. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/linear/index.ts +9 -0
  759. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/linear/issues.ts +376 -0
  760. package/cloud-runtime/standalone/apps/local/lib/tracker/adapters/linear/linear-icon.tsx +14 -0
  761. package/cloud-runtime/standalone/apps/local/lib/tracker/connections.ts +67 -0
  762. package/cloud-runtime/standalone/apps/local/lib/tracker/index.ts +44 -0
  763. package/cloud-runtime/standalone/apps/local/lib/tracker/recap.ts +246 -0
  764. package/cloud-runtime/standalone/apps/local/lib/tracker/registry.ts +32 -0
  765. package/cloud-runtime/standalone/apps/local/lib/tracker/route-helpers.ts +27 -0
  766. package/cloud-runtime/standalone/apps/local/lib/{linear-scripted-session.ts → tracker/scripted-session.ts} +28 -23
  767. package/cloud-runtime/standalone/apps/local/lib/tracker/tracker-adapter.ts +64 -0
  768. package/cloud-runtime/standalone/apps/local/lib/{linear-execution-prompt.ts → tracker/tracker-execution-prompt.ts} +27 -23
  769. package/cloud-runtime/standalone/apps/local/lib/tracker/tracker-item-store.ts +804 -0
  770. package/cloud-runtime/standalone/apps/local/lib/tracker/tracker-run-store.ts +560 -0
  771. package/cloud-runtime/standalone/apps/local/lib/tracker/types.ts +119 -0
  772. package/cloud-runtime/standalone/apps/local/lib/tracker-board-utils.ts +4 -0
  773. package/cloud-runtime/standalone/apps/local/lib/tracker-run-status.ts +88 -0
  774. package/cloud-runtime/standalone/apps/local/lib/types.ts +1 -0
  775. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/objective-worker.ts +4 -4
  776. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/processor.ts +7 -6
  777. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/{linear-worker-constants.ts → task-worker-constants.ts} +11 -11
  778. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/task-worker-job.ts +49 -0
  779. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/{linear-worker.ts → task-worker.ts} +47 -31
  780. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/types.ts +5 -3
  781. package/cloud-runtime/standalone/apps/local/state/lastSession.test.ts +83 -0
  782. package/cloud-runtime/standalone/apps/local/state/lastSession.ts +46 -0
  783. package/cloud-runtime/standalone/apps/local/state/trackerBoardFilters.ts +112 -0
  784. package/cloud-runtime/standalone/apps/local/state/{linearBoardPins.ts → trackerBoardPins.ts} +14 -9
  785. package/cloud-runtime/standalone/apps/local/state/{linearRunScripts.ts → trackerRunScripts.ts} +32 -24
  786. package/cloud-runtime/standalone/apps/local/worker/index.js +194 -14
  787. package/lib/commands/chat.js +0 -4
  788. package/lib/logger.ts +72 -0
  789. package/package.json +1 -1
  790. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/auth/route/app-paths-manifest.json +0 -3
  791. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/auth/route.js +0 -7
  792. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/callback/route/app-paths-manifest.json +0 -3
  793. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/callback/route.js +0 -7
  794. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/callback/route_client-reference-manifest.js +0 -2
  795. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/cycles/route/app-paths-manifest.json +0 -3
  796. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/cycles/route.js +0 -7
  797. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/cycles/route.js.nft.json +0 -1
  798. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/cycles/route_client-reference-manifest.js +0 -2
  799. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/recap/route/app-paths-manifest.json +0 -3
  800. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/recap/route.js +0 -12
  801. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/recap/route.js.nft.json +0 -1
  802. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/route/app-paths-manifest.json +0 -3
  803. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/route.js.nft.json +0 -1
  804. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/[id]/route_client-reference-manifest.js +0 -2
  805. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/active-agents/route/app-paths-manifest.json +0 -3
  806. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/active-agents/route.js +0 -7
  807. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/activity/route/app-paths-manifest.json +0 -3
  808. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/activity/route.js +0 -7
  809. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/context/route/app-paths-manifest.json +0 -3
  810. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/context/route.js.nft.json +0 -1
  811. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/route/app-paths-manifest.json +0 -3
  812. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/route.js +0 -11
  813. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/route.js.nft.json +0 -1
  814. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/issues/route_client-reference-manifest.js +0 -2
  815. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/mcp-setup/route/app-paths-manifest.json +0 -3
  816. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/mcp-setup/route.js +0 -8
  817. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/options/route/app-paths-manifest.json +0 -3
  818. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/options/route.js +0 -11
  819. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/options/route.js.nft.json +0 -1
  820. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/options/route_client-reference-manifest.js +0 -2
  821. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/[id]/route/app-paths-manifest.json +0 -3
  822. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/[id]/route.js +0 -7
  823. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/[id]/route_client-reference-manifest.js +0 -2
  824. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/route/app-paths-manifest.json +0 -3
  825. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/route.js +0 -7
  826. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/route.js.nft.json +0 -1
  827. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/route_client-reference-manifest.js +0 -2
  828. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route/app-paths-manifest.json +0 -3
  829. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route.js +0 -24
  830. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/runs/scripted/route.js.nft.json +0 -1
  831. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/status/route/app-paths-manifest.json +0 -3
  832. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/status/route.js +0 -7
  833. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/status/route.js.nft.json +0 -1
  834. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/token/route/app-paths-manifest.json +0 -3
  835. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/token/route.js +0 -7
  836. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/token/route.js.nft.json +0 -1
  837. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route/app-paths-manifest.json +0 -3
  838. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js +0 -13
  839. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route.js.nft.json +0 -1
  840. package/cloud-runtime/standalone/apps/local/.next/server/app/api/linear/worker/route_client-reference-manifest.js +0 -2
  841. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route/app-paths-manifest.json +0 -3
  842. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route.js +0 -14
  843. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route.js.nft.json +0 -1
  844. package/cloud-runtime/standalone/apps/local/.next/server/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route_client-reference-manifest.js +0 -2
  845. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page/app-paths-manifest.json +0 -3
  846. package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/linear/page_client-reference-manifest.js +0 -2
  847. package/cloud-runtime/standalone/apps/local/.next/server/chunks/083c9_next-internal_server_app_api_linear_issues_active-agents_route_actions_e49a4900.js +0 -3
  848. package/cloud-runtime/standalone/apps/local/.next/server/chunks/0da96_local__next-internal_server_app_api_linear_issues_[id]_route_actions_8966da68.js +0 -3
  849. package/cloud-runtime/standalone/apps/local/.next/server/chunks/0da96_local__next-internal_server_app_api_linear_runs_scripted_route_actions_65d0c32b.js +0 -3
  850. package/cloud-runtime/standalone/apps/local/.next/server/chunks/9fb8c_next_dist_esm_build_templates_app-route_4a0d9040.js +0 -3
  851. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]__c397277f._.js +0 -3
  852. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[externals]__ec108b52._.js +0 -3
  853. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0e80a97a._.js +0 -3
  854. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__0fc11060._.js +0 -3
  855. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1926415e._.js +0 -3
  856. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1a87c857._.js +0 -3
  857. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1d278aeb._.js +0 -8
  858. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__1ee65b64._.js +0 -3
  859. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__2f038740._.js +0 -8
  860. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__4b05c44d._.js +0 -141
  861. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__4c070f04._.js +0 -165
  862. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__6183b682._.js +0 -67
  863. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__63752370._.js +0 -3
  864. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__713ff4cf._.js +0 -145
  865. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__7ce30f24._.js +0 -3
  866. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__87abf03f._.js +0 -141
  867. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__a22e30c6._.js +0 -22
  868. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__b176d4d9._.js +0 -160
  869. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__c84eafe2._.js +0 -141
  870. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__d28ace89._.js +0 -3
  871. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__d7e18064._.js +0 -160
  872. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__d9bbc1a6._.js +0 -141
  873. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__dfd77ac4._.js +0 -31
  874. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__ef75c5b6._.js +0 -4
  875. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__f66666f9._.js +0 -141
  876. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__f844df91._.js +0 -3
  877. package/cloud-runtime/standalone/apps/local/.next/server/chunks/[root-of-the-server]__ff6a99f0._.js +0 -160
  878. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_00ea3122._.js +0 -415
  879. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_022eee16._.js +0 -3
  880. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_08d3c605._.js +0 -25
  881. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_671682cc._.js +0 -3
  882. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_7222e528._.js +0 -9
  883. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_755b8689._.js +0 -415
  884. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_auth_route_actions_845dd997.js +0 -3
  885. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_callback_route_actions_90a636e1.js +0 -3
  886. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_cycles_route_actions_20618fe1.js +0 -3
  887. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_issues_route_actions_f798ab06.js +0 -3
  888. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_mcp-setup_route_actions_9c461973.js +0 -3
  889. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_options_route_actions_3455e6c0.js +0 -3
  890. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_runs_[id]_route_actions_4bd5ad16.js +0 -3
  891. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_runs_route_actions_8613ec29.js +0 -3
  892. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_status_route_actions_746bcaf4.js +0 -3
  893. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_token_route_actions_8fed80a2.js +0 -3
  894. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local__next-internal_server_app_api_linear_worker_route_actions_ef891304.js +0 -3
  895. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_af73c5e8._.js +0 -155
  896. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_b3086d93._.js +0 -25
  897. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_c530bd77._.js +0 -11
  898. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_f13708ae._.js +0 -415
  899. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_077d49c2._.js +0 -8
  900. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_62edff06._.js +0 -4
  901. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_941822a8._.js +0 -4
  902. package/cloud-runtime/standalone/apps/local/.next/server/chunks/apps_local_src_prompt-scheduler_e7ef8bcb._.js +0 -4
  903. package/cloud-runtime/standalone/apps/local/.next/server/chunks/e2f97_api_projects_[id]_objectives_[objectiveId]_linear-issues_route_actions_d506d8a3.js +0 -3
  904. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_linear_issues_[id]_recap_route_actions_7b9ac0ec.js +0 -3
  905. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_linear_issues_activity_route_actions_a25a56a3.js +0 -3
  906. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ebff2__next-internal_server_app_api_linear_issues_context_route_actions_b8ed252b.js +0 -3
  907. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/0da96_local__next-internal_server_app_projects_[slug]_linear_page_actions_d3e5c399.js +0 -3
  908. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/9fb8c_lucide-react_dist_esm_icons_c5dc4091._.js +0 -3
  909. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__31c61bac._.js +0 -3
  910. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__364fdd09._.js +0 -3
  911. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__45e37c6d._.js +0 -18
  912. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__7c5959c3._.js +0 -18
  913. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__8666da53._.js +0 -3
  914. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__94ab2a92._.js +0 -18
  915. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__97e9f8c3._.js +0 -18
  916. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__a3cf8479._.js +0 -3
  917. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__d47e7e93._.js +0 -18
  918. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/[root-of-the-server]__e9f82952._.js +0 -3
  919. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_480cf274._.js +0 -3
  920. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_4e95976c._.js +0 -3
  921. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/_5ec7006b._.js +0 -3
  922. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0ac2a791._.js +0 -3
  923. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_0c3f9085._.js +0 -7
  924. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_37d519f7._.js +0 -7
  925. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_96dee4fc._.js +0 -3
  926. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_app_projects_[slug]_linear_page_tsx_3fd25408._.js +0 -37
  927. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_d30cc504._.js +0 -11
  928. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_df7bb32d._.js +0 -3
  929. package/cloud-runtime/standalone/apps/local/.next/server/chunks/ssr/apps_local_f1b23697._.js +0 -11
  930. package/cloud-runtime/standalone/apps/local/.next/static/chunks/09a9b0ff9fedfd4c.js +0 -1
  931. package/cloud-runtime/standalone/apps/local/.next/static/chunks/1d442896a9e6f641.js +0 -1
  932. package/cloud-runtime/standalone/apps/local/.next/static/chunks/26078932a72e240a.js +0 -1
  933. package/cloud-runtime/standalone/apps/local/.next/static/chunks/28f49fb8b0515698.js +0 -1
  934. package/cloud-runtime/standalone/apps/local/.next/static/chunks/2d455dcd9ffde753.js +0 -5
  935. package/cloud-runtime/standalone/apps/local/.next/static/chunks/37015d5c91f9a893.js +0 -1
  936. package/cloud-runtime/standalone/apps/local/.next/static/chunks/5cfcd19e814c5846.js +0 -1
  937. package/cloud-runtime/standalone/apps/local/.next/static/chunks/678144d458893b62.js +0 -1
  938. package/cloud-runtime/standalone/apps/local/.next/static/chunks/79fc27e54d194ae1.css +0 -1
  939. package/cloud-runtime/standalone/apps/local/.next/static/chunks/8c64b8a9eee8e202.js +0 -16
  940. package/cloud-runtime/standalone/apps/local/.next/static/chunks/8f8da5f39011a5fb.js +0 -5
  941. package/cloud-runtime/standalone/apps/local/.next/static/chunks/9a293e4003752b7f.js +0 -1
  942. package/cloud-runtime/standalone/apps/local/.next/static/chunks/9be47f89ded22972.js +0 -16
  943. package/cloud-runtime/standalone/apps/local/.next/static/chunks/a6bfcaae2ac8b716.js +0 -35
  944. package/cloud-runtime/standalone/apps/local/.next/static/chunks/b2bbe7bc1d2e8729.js +0 -16
  945. package/cloud-runtime/standalone/apps/local/.next/static/chunks/b4175ba3d8d2c54a.js +0 -1
  946. package/cloud-runtime/standalone/apps/local/.next/static/chunks/b6ef2665e828eb71.js +0 -9
  947. package/cloud-runtime/standalone/apps/local/.next/static/chunks/be15308d13860246.js +0 -1
  948. package/cloud-runtime/standalone/apps/local/.next/static/chunks/c91eaf8278deda9c.js +0 -1
  949. package/cloud-runtime/standalone/apps/local/.next/static/chunks/d36cc96f4da78fc6.js +0 -1
  950. package/cloud-runtime/standalone/apps/local/.next/static/chunks/d96375ecaaf51dbd.js +0 -1
  951. package/cloud-runtime/standalone/apps/local/.next/static/chunks/e845c01d0cc3b9a2.js +0 -1
  952. package/cloud-runtime/standalone/apps/local/.next/static/chunks/ec699df05370dd42.js +0 -1
  953. package/cloud-runtime/standalone/apps/local/.next/static/chunks/f67c9e5af56eb2d0.js +0 -5
  954. package/cloud-runtime/standalone/apps/local/.next/static/chunks/f693c7ecc12d1d78.js +0 -16
  955. package/cloud-runtime/standalone/apps/local/.next/static/chunks/fa9d7bb55267b173.js +0 -16
  956. package/cloud-runtime/standalone/apps/local/.next/static/chunks/fdebf03746baf784.js +0 -9
  957. package/cloud-runtime/standalone/apps/local/app/api/linear/auth/route.ts +0 -32
  958. package/cloud-runtime/standalone/apps/local/app/api/linear/callback/route.ts +0 -49
  959. package/cloud-runtime/standalone/apps/local/app/api/linear/cycles/route.ts +0 -27
  960. package/cloud-runtime/standalone/apps/local/app/api/linear/issues/[id]/recap/route.ts +0 -30
  961. package/cloud-runtime/standalone/apps/local/app/api/linear/issues/[id]/route.ts +0 -92
  962. package/cloud-runtime/standalone/apps/local/app/api/linear/issues/activity/route.ts +0 -23
  963. package/cloud-runtime/standalone/apps/local/app/api/linear/issues/context/route.ts +0 -26
  964. package/cloud-runtime/standalone/apps/local/app/api/linear/issues/route.ts +0 -96
  965. package/cloud-runtime/standalone/apps/local/app/api/linear/options/route.ts +0 -48
  966. package/cloud-runtime/standalone/apps/local/app/api/linear/runs/route.ts +0 -106
  967. package/cloud-runtime/standalone/apps/local/app/api/linear/status/route.ts +0 -51
  968. package/cloud-runtime/standalone/apps/local/app/api/linear/token/route.ts +0 -72
  969. package/cloud-runtime/standalone/apps/local/app/api/linear/worker/route.ts +0 -151
  970. package/cloud-runtime/standalone/apps/local/app/api/projects/[id]/objectives/[objectiveId]/linear-issues/route.ts +0 -197
  971. package/cloud-runtime/standalone/apps/local/components/LinearSetup.tsx +0 -239
  972. package/cloud-runtime/standalone/apps/local/components/linear/LinearIcon.tsx +0 -19
  973. package/cloud-runtime/standalone/apps/local/components/linear/TicketRow.tsx +0 -158
  974. package/cloud-runtime/standalone/apps/local/hooks/useLinearIssues.ts +0 -122
  975. package/cloud-runtime/standalone/apps/local/src/prompt-scheduler/linear-worker-job.ts +0 -52
  976. package/cloud-runtime/standalone/apps/local/state/linearBoardFilters.ts +0 -108
  977. package/cloud-runtime/standalone/apps/local/state/linearRunScripts.test.ts +0 -99
  978. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/auth → chat-runs/[id]/events}/route/build-manifest.json +0 -0
  979. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/auth → chat-runs/[id]/events}/route/server-reference-manifest.json +0 -0
  980. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/auth → chat-runs/[id]/events}/route.js.map +0 -0
  981. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/callback → task-groups/[id]}/route/build-manifest.json +0 -0
  982. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/callback → task-groups/[id]}/route/server-reference-manifest.json +0 -0
  983. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/callback → task-groups/[id]}/route.js.map +0 -0
  984. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/cycles → task-groups/[id]/tasks}/route/build-manifest.json +0 -0
  985. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/cycles → task-groups/[id]/tasks}/route/server-reference-manifest.json +0 -0
  986. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/cycles → task-groups/[id]/tasks}/route.js.map +0 -0
  987. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id]/recap → task-groups}/route/build-manifest.json +0 -0
  988. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id]/recap → task-groups}/route/server-reference-manifest.json +0 -0
  989. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id]/recap → task-groups}/route.js.map +0 -0
  990. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id] → tracker/notes}/route/build-manifest.json +0 -0
  991. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id] → tracker/notes}/route/server-reference-manifest.json +0 -0
  992. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/[id] → tracker/notes}/route.js.map +0 -0
  993. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues → trackers/[tracker]}/active-agents/route/build-manifest.json +0 -0
  994. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues → trackers/[tracker]}/active-agents/route/server-reference-manifest.json +0 -0
  995. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues → trackers/[tracker]}/active-agents/route.js.map +0 -0
  996. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/activity → trackers/[tracker]/auth}/route/build-manifest.json +0 -0
  997. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/activity → trackers/[tracker]/auth}/route/server-reference-manifest.json +0 -0
  998. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/activity → trackers/[tracker]/auth}/route.js.map +0 -0
  999. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/context → trackers/[tracker]/callback}/route/build-manifest.json +0 -0
  1000. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/context → trackers/[tracker]/callback}/route/server-reference-manifest.json +0 -0
  1001. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues/context → trackers/[tracker]/callback}/route.js.map +0 -0
  1002. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues → trackers/[tracker]/groups}/route/build-manifest.json +0 -0
  1003. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues → trackers/[tracker]/groups}/route/server-reference-manifest.json +0 -0
  1004. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/issues → trackers/[tracker]/groups}/route.js.map +0 -0
  1005. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/mcp-setup → trackers/[tracker]/items/[id]/activity}/route/build-manifest.json +0 -0
  1006. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/mcp-setup → trackers/[tracker]/items/[id]/activity}/route/server-reference-manifest.json +0 -0
  1007. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/mcp-setup → trackers/[tracker]/items/[id]/activity}/route.js.map +0 -0
  1008. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/options → trackers/[tracker]/items/[id]/recap}/route/build-manifest.json +0 -0
  1009. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/options → trackers/[tracker]/items/[id]/recap}/route/server-reference-manifest.json +0 -0
  1010. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/options → trackers/[tracker]/items/[id]/recap}/route.js.map +0 -0
  1011. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs → trackers/[tracker]/items}/[id]/route/build-manifest.json +0 -0
  1012. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs → trackers/[tracker]/items}/[id]/route/server-reference-manifest.json +0 -0
  1013. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs → trackers/[tracker]/items}/[id]/route.js.map +0 -0
  1014. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs → trackers/[tracker]/items}/route/build-manifest.json +0 -0
  1015. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs → trackers/[tracker]/items}/route/server-reference-manifest.json +0 -0
  1016. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs → trackers/[tracker]/items}/route.js.map +0 -0
  1017. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs/scripted → trackers/[tracker]/mcp-setup}/route/build-manifest.json +0 -0
  1018. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs/scripted → trackers/[tracker]/mcp-setup}/route/server-reference-manifest.json +0 -0
  1019. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/runs/scripted → trackers/[tracker]/mcp-setup}/route.js.map +0 -0
  1020. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/status → trackers/[tracker]/options}/route/build-manifest.json +0 -0
  1021. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/status → trackers/[tracker]/options}/route/server-reference-manifest.json +0 -0
  1022. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/status → trackers/[tracker]/options}/route.js.map +0 -0
  1023. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/token → trackers/[tracker]/runs/[id]}/route/build-manifest.json +0 -0
  1024. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/token → trackers/[tracker]/runs/[id]}/route/server-reference-manifest.json +0 -0
  1025. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/token → trackers/[tracker]/runs/[id]}/route.js.map +0 -0
  1026. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/worker → trackers/[tracker]/runs}/route/build-manifest.json +0 -0
  1027. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/worker → trackers/[tracker]/runs}/route/server-reference-manifest.json +0 -0
  1028. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{linear/worker → trackers/[tracker]/runs}/route.js.map +0 -0
  1029. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{projects/[id]/objectives/[objectiveId]/linear-issues → trackers/[tracker]/runs/scripted}/route/build-manifest.json +0 -0
  1030. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{projects/[id]/objectives/[objectiveId]/linear-issues → trackers/[tracker]/runs/scripted}/route/server-reference-manifest.json +0 -0
  1031. /package/cloud-runtime/standalone/apps/local/.next/server/app/api/{projects/[id]/objectives/[objectiveId]/linear-issues → trackers/[tracker]/runs/scripted}/route.js.map +0 -0
  1032. /package/cloud-runtime/standalone/apps/local/.next/server/app/{projects/[slug]/linear/page → api/trackers/[tracker]/status/route}/server-reference-manifest.json +0 -0
  1033. /package/cloud-runtime/standalone/apps/local/.next/server/app/{projects/[slug]/linear/page.js.map → api/trackers/[tracker]/status/route.js.map} +0 -0
  1034. /package/cloud-runtime/standalone/apps/local/.next/server/app/projects/[slug]/{linear → tracking/[tracker]}/page/build-manifest.json +0 -0
  1035. /package/cloud-runtime/standalone/apps/local/.next/static/{a4zqdHSrJMueXhCPqODSx → QEldoF1LdgJqO0PgpmUmx}/_buildManifest.js +0 -0
  1036. /package/cloud-runtime/standalone/apps/local/.next/static/{a4zqdHSrJMueXhCPqODSx → QEldoF1LdgJqO0PgpmUmx}/_clientMiddlewareManifest.json +0 -0
  1037. /package/cloud-runtime/standalone/apps/local/.next/static/{a4zqdHSrJMueXhCPqODSx → QEldoF1LdgJqO0PgpmUmx}/_ssgManifest.js +0 -0
  1038. /package/cloud-runtime/standalone/apps/local/components/{linear/LinearBoardFilters.tsx → tracker/TrackerBoardFilters.tsx} +0 -0
@@ -0,0 +1,91 @@
1
+ module.exports=[11061,e=>{"use strict";var t=e.i(522734),r=e.i(446786),s=e.i(814747),i=e.i(769025);let{DatabaseSync:a}=process.getBuiltinModule("node:sqlite"),n=process.env.AGX_GROUP_CHAT_DIR?.trim()||s.default.join(r.default.homedir(),".agx","group-chat"),o=s.default.join(n,"history.sqlite");function c(e){return"scripted"===e?"scripted":"chat"}function u(e){let t,r=e.chat_created_at??e.created_at,s=e.chat_completed_at??null,i=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,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:c(e.mode),sessionTitle:"chat"===c(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:i,durationMs:null!=s?Math.max(s-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 s?new Date(s).toISOString():null}}async function l(e){await t.promises.mkdir(n,{recursive:!0});let r=new a(o);(0,i.pragmaSet)(r,"journal_mode = WAL");try{r.exec(`
2
+ CREATE TABLE IF NOT EXISTS chat_runs (
3
+ id TEXT PRIMARY KEY,
4
+ thread_id TEXT NOT NULL,
5
+ root_message_id TEXT,
6
+ user_id TEXT NOT NULL,
7
+ project_slug TEXT,
8
+ status TEXT NOT NULL,
9
+ current_step INTEGER NOT NULL DEFAULT 0,
10
+ max_steps INTEGER NOT NULL DEFAULT 10,
11
+ steps_used INTEGER NOT NULL DEFAULT 0,
12
+ last_error TEXT,
13
+ active_participant_ids TEXT NOT NULL DEFAULT '[]',
14
+ payload_json TEXT,
15
+ result_json TEXT,
16
+ created_at INTEGER NOT NULL,
17
+ updated_at INTEGER NOT NULL,
18
+ completed_at INTEGER
19
+ );
20
+ CREATE TABLE IF NOT EXISTS messages (
21
+ thread_id TEXT NOT NULL,
22
+ id TEXT NOT NULL,
23
+ role TEXT NOT NULL,
24
+ participant_id TEXT,
25
+ content TEXT NOT NULL,
26
+ timestamp INTEGER NOT NULL,
27
+ root_message_id TEXT,
28
+ parent_message_id TEXT,
29
+ depth INTEGER NOT NULL DEFAULT 0,
30
+ thread_status TEXT,
31
+ outcome_note TEXT,
32
+ PRIMARY KEY (thread_id, id)
33
+ );
34
+ CREATE TABLE IF NOT EXISTS linear_runs (
35
+ id TEXT PRIMARY KEY,
36
+ project_id TEXT,
37
+ project_slug TEXT,
38
+ issue_id TEXT NOT NULL,
39
+ issue_identifier TEXT NOT NULL,
40
+ issue_title TEXT NOT NULL,
41
+ issue_status TEXT NOT NULL,
42
+ issue_assignee TEXT,
43
+ thread_id TEXT NOT NULL,
44
+ root_message_id TEXT,
45
+ chat_run_id TEXT,
46
+ agent_id TEXT NOT NULL,
47
+ agent_name TEXT NOT NULL,
48
+ mode TEXT NOT NULL DEFAULT 'chat',
49
+ status TEXT NOT NULL DEFAULT 'queued',
50
+ error TEXT,
51
+ recap_file_path TEXT,
52
+ created_at INTEGER NOT NULL,
53
+ updated_at INTEGER NOT NULL
54
+ );
55
+ CREATE INDEX IF NOT EXISTS idx_linear_runs_issue_created
56
+ ON linear_runs (issue_id, created_at DESC);
57
+ CREATE INDEX IF NOT EXISTS idx_linear_runs_project_issue_created
58
+ ON linear_runs (project_id, issue_id, created_at DESC);
59
+ CREATE UNIQUE INDEX IF NOT EXISTS idx_linear_runs_chat_run_id
60
+ ON linear_runs (chat_run_id)
61
+ WHERE chat_run_id IS NOT NULL;
62
+ `);let t=r.prepare("PRAGMA table_info(linear_runs)").all();return t.some(e=>"mode"===e.name)||r.exec("ALTER TABLE linear_runs ADD COLUMN mode TEXT NOT NULL DEFAULT 'chat';"),t.some(e=>"recap_file_path"===e.name)||r.exec("ALTER TABLE linear_runs ADD COLUMN recap_file_path TEXT;"),e(r)}finally{r.close()}}async function d(e){var t;let r=e.issueId.trim(),s=(t=e.projectId??null,t?.trim()||null),i=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),100):50;return l(e=>{let t=[r],a=["lr.issue_id = ?"];return s&&(a.push("lr.project_id = ?"),t.push(s)),t.push(i),e.prepare(`SELECT
63
+ lr.*,
64
+ cr.status AS chat_status,
65
+ cr.last_error AS chat_last_error,
66
+ cr.created_at AS chat_created_at,
67
+ cr.updated_at AS chat_updated_at,
68
+ cr.completed_at AS chat_completed_at,
69
+ msg.content AS root_content
70
+ FROM linear_runs lr
71
+ LEFT JOIN chat_runs cr ON cr.id = (
72
+ SELECT id FROM chat_runs WHERE thread_id = lr.thread_id ORDER BY updated_at DESC LIMIT 1
73
+ )
74
+ LEFT JOIN messages msg ON msg.thread_id = lr.thread_id AND msg.id = lr.root_message_id
75
+ WHERE ${a.join(" AND ")}
76
+ ORDER BY lr.created_at DESC
77
+ LIMIT ?`).all(...t).map(u)})}async function p(e){return l(t=>{let r=e?.trim(),s=r?`SELECT DISTINCT lr.issue_id, lr.agent_id, lr.agent_name
78
+ FROM linear_runs lr
79
+ INNER JOIN chat_runs cr ON cr.id = (
80
+ SELECT id FROM chat_runs WHERE thread_id = lr.thread_id ORDER BY updated_at DESC LIMIT 1
81
+ )
82
+ WHERE cr.status IN ('queued', 'running')
83
+ AND lr.project_id = ?`:`SELECT DISTINCT lr.issue_id, lr.agent_id, lr.agent_name
84
+ FROM linear_runs lr
85
+ INNER JOIN chat_runs cr ON cr.id = (
86
+ SELECT id FROM chat_runs WHERE thread_id = lr.thread_id ORDER BY updated_at DESC LIMIT 1
87
+ )
88
+ WHERE cr.status IN ('queued', 'running')`;return(r?t.prepare(s).all(e.trim()):t.prepare(s).all()).map(e=>({issueId:e.issue_id,agentId:e.agent_id,agentName:e.agent_name}))})}e.s(["getIssueActiveAgents",()=>p,"listLinearRuns",()=>d])},720395,e=>{"use strict";var t=e.i(84516),r=e.i(29764),s=e.i(11061),i=e.i(124985);e.i(243174);var a=e.i(248821),n=e.i(901977);let o="project_objective_health_history",c={"on track":"on_track","at risk":"at_risk","off track":"off_track",done:"done"};function u(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}function l(e){return"number"==typeof e&&Number.isFinite(e)?Math.max(0,Math.min(100,Math.round(e))):0}function d(e){return"string"==typeof e&&e.trim()?e.trim():void 0}function p(...e){let t=e.flatMap(e=>e??[]),r=[];for(let e of[...t].sort((e,t)=>Date.parse(e.recordedAt)-Date.parse(t.recordedAt))){let t=r[r.length-1]??null;t&&t.progress===e.progress&&t.status===e.status&&(!t.source||!e.source||t.source===e.source)&&5e3>=Math.abs(Date.parse(e.recordedAt)-Date.parse(t.recordedAt))||r.push(e)}return r}var T=e.i(460275),_=e.i(765443);let E={on_track:"On track",at_risk:"At risk",off_track:"Off track",done:"Done"};async function m(e){let t=Date.now(),r="";try{return await (0,T.runCliResponse)({provider:e.provider,model:e.model,prompt:e.prompt,identity:e.identity,self:e.self,skills:e.skills,systemContext:e.systemContext,passthroughArgs:e.cliArgs?e.cliArgs.split(/\s+/).filter(Boolean):void 0,onDelta:e=>{r+=e},onSpawn:e.onSpawn}),{output:r,error:"",durationMs:Date.now()-t,status:"success"}}catch(e){return{output:r,error:e instanceof Error?e.message:String(e),durationMs:Date.now()-t,status:"failed"}}}function g(e){try{let t=JSON.parse(e);return t&&"object"==typeof t&&!Array.isArray(t)?t:null}catch{return null}}function h(e){let t=e.trim();if(!t)return null;let r=g(t);if(r)return r;let s=t.indexOf("{"),i=t.lastIndexOf("}");return -1===s||i<=s?null:g(t.slice(s,i+1))}function N(e){return"number"==typeof e&&Number.isFinite(e)?(0,_.normalizeProjectHealthProgress)(e):null}function j(e){return"string"==typeof e&&e.trim()?(0,_.normalizeProjectHealthStatus)(e):null}function I(e,t,r){return`${e}: ${t}% ${E[r]}`}function f(e){return[`- id: ${e.id}`,` identifier: ${e.identifier}`,` title: ${e.title}`,` status: ${e.status}`,` assignee: ${e.assignee??"Unassigned"}`,e.url?` url: ${e.url}`:null].filter(e=>!!e).join("\n")}async function b(e){let{job:n,objectiveContext:o}=e,{project:c,workspace:u,objective:l}=o,d=c.slug??c.id,[{issues:p},T,_,E]=await Promise.all([(0,r.listObjectiveTrackerIssues)({projectId:c.id,objectiveKey:l.key,projectSlug:d,refresh:!0}),(0,s.getIssueActiveAgents)(c.id),Promise.resolve((0,i.getActivityRepository)(d,l.key).list({limit:20})),Promise.resolve((0,a.getNoteRepository)(d,l.key).readAll())]),m=new Set(p.map(e=>e.id)),g=T.filter(e=>m.has(e.issueId)),h=(0,r.filterObjectiveTrackerIssuesForAction)(p,g.map(e=>e.issueId)),N=(0,t.getPromptJobStore)().listJobs({objectiveId:l.id}).filter(e=>e.id!==n.id),j=u.objectives.filter(e=>e.id!==l.id),I=[];I.push("GOAL",l.title,l.summary?.trim()||"No summary provided."),I.push("","CURRENT STATE",`Progress: ${l.progress}% | Status: ${l.status}`),E.length>0&&I.push("","NOTES",...E.map(e=>`### ${e.title}
89
+ ${e.body}`));let b=_.activities??[];return b.length>0&&I.push("","RECENT ACTIVITY",...b.map(e=>{let t=e.createdAt.replace("T"," ").replace(/\.\d+Z$/,"").slice(0,16);return`- [${t}] ${e.body.split("\n")[0]}`})),p.length>0?I.push("","LINEAR TICKETS",p.map(e=>f(e)).join("\n\n")):I.push("","LINEAR TICKETS","- None."),g.length>0&&I.push("","ACTIVE SESSIONS",...g.map(e=>`- ${e.issueId}: running with ${e.agentName}`)),N.length>0&&I.push("","SCHEDULED TASKS",...N.map(e=>`- ${e.name} | state: ${e.state} | last outcome: ${e.lastOutcome??"none"}`)),j.length>0&&I.push("","PROJECT CONTEXT",...j.map(e=>`- ${e.title} (${e.key}) | ${e.progress}% | ${e.status}`)),I.push("","GUIDANCE",n.prompt.trim()||"No additional guidance provided."),I.push("","ELIGIBLE TICKETS",h.length>0?h.map(e=>f(e)).join("\n\n"):"- None."),I.push("","---","What single action most advances this objective right now?"),{prompt:I.join("\n"),issues:p,eligibleIssues:h,activeIssueAgents:g}}async function L(t){let r=Date.now();try{if(!t.job.projectId||!t.job.objectiveId)throw Error("Objective worker jobs require projectId and objectiveId.");let s=await (0,n.loadProjectObjectiveContext)(t.job.projectId,t.job.objectiveId);if(!s)throw Error("Objective context could not be resolved for this scheduled task.");let i=await b({job:t.job,objectiveContext:s}),a=await m({...t.controllerContext,prompt:i.prompt,systemContext:'You are deciding what action an objective worker should take next.\nReturn ONLY raw JSON with no markdown fences or commentary.\nValid responses:\n{"action":"work_ticket","ticketId":"ticket-id","reason":"...","objectiveProgress":42,"objectiveStatus":"at_risk","projectProgress":35,"projectStatus":"at_risk"}\n{"action":"run_prompt","prompt":"detailed instructions","reason":"...","objectiveProgress":42,"objectiveStatus":"at_risk"}\n{"action":"stop","reason":"...","objectiveProgress":42,"objectiveStatus":"at_risk"}\nRules:\n- "work_ticket": ticketId must exactly match one of the ELIGIBLE TICKETS ids.\n- "run_prompt": for work not captured by existing tickets. When no tickets are actionable and the objective is not done, use this to plan: review notes, refine the last plan, or outline next steps. The prompt should instruct the agent to append to an existing note when one is relevant rather than creating a new note.\n- "stop": only when the objective is done or genuinely no action (including planning) adds value.\nPercentages must be integers 0-100.\nStatuses: on_track, at_risk, off_track, done.',cliArgs:t.cliArgs,onSpawn:t.onSpawn});if("success"!==a.status)return{...a,output:a.output||"Objective controller failed before selecting an action."};let T=h(a.output),E="string"==typeof T?.action?T.action.trim().toLowerCase():"string"==typeof T?.decision?T.decision.trim().toLowerCase():"",g="string"==typeof T?.reason?T.reason.trim():"",f=N(T?.objectiveProgress),L=j(T?.objectiveStatus),O=N(T?.projectProgress),A=j(T?.projectStatus),v="string"==typeof T?.projectNote?T.projectNote.trim():"",S="string"==typeof T?.objectiveNote?T.objectiveNote.trim():"",y=new Date().toISOString(),R=null!==f&&L?I("Objective health",f,L):null,k=null!==O&&A?I("Project health",O,A):null,w=null!==f&&null!==L?{objectiveId:s.objective.id,objectiveKey:s.objective.key,progress:f,status:L,recordedAt:y,source:`scheduled-task:${t.job.id}`,note:S||void 0}:null,D=null!==f&&null!==L&&(f!==s.objective.progress||L!==s.objective.status),X=D?(0,_.upsertProjectObjective)(s.workspace,{...s.objective,progress:f,status:L,updatedAt:y}):s.workspace,C=null!==O&&null!==A?{progress:O,status:A,updatedAt:y,source:`scheduled-task:${t.job.id}`,objectiveId:s.objective.id,objectiveKey:s.objective.key,note:v||void 0}:null,U=e=>{let t=e;return C&&(t=(0,_.writeProjectHealthSnapshot)(t,C)),w&&(t=function(e,t){let r=t.objectiveId.trim();if(!r)return e;let s=function(e,t){if(!u(e)||!t.trim())return[];let r=e[o];if(!u(r))return[];let s=r[t.trim()];return Array.isArray(s)?p(s.map(e=>(function(e){if(!u(e))return null;let t=function(e){if("string"!=typeof e)return null;let t=e.trim().toLowerCase();return"on_track"===t||"at_risk"===t||"off_track"===t||"done"===t?t:c[t]??null}(e.status),r=function(e){if("string"!=typeof e)return null;let t=Date.parse(e);return Number.isNaN(t)?null:new Date(t).toISOString()}(e.recordedAt);return t&&r?{progress:l(e.progress),status:t,recordedAt:r,source:d(e.source),note:d(e.note),objectiveId:d(e.objectiveId)??null,objectiveKey:d(e.objectiveKey)??null}:null})(e)).filter(e=>!!e)):[]}(e,r),i=p(s,[t]).slice(-200),a=u(e[o])?e[o]:{};return{...e,[o]:{...a,[r]:i.map(e=>({progress:l(e.progress),status:e.status,recordedAt:e.recordedAt,...e.source?{source:e.source}:{},...e.note?{note:e.note}:{},...e.objectiveId?{objectiveId:e.objectiveId}:{},...e.objectiveKey?{objectiveKey:e.objectiveKey}:{}}))}}}(t,w)),t};D?await (0,n.persistProjectObjectiveWorkspace)({projectId:s.project.id,currentMetadata:s.project.metadata,workspace:X,transformMetadata:U}):(w||C)&&await (0,n.persistProjectObjectiveMetadata)({projectId:s.project.id,currentMetadata:s.project.metadata,transformMetadata:U});let{dispatchObjectiveAction:M}=await e.A(688671),x=await M({action:"work"===E?"work_ticket":E,parsed:T,reason:g,job:t.job,controllerContext:t.controllerContext,sessionAgent:t.sessionAgent,objectiveContext:s,eligibleIssues:i.eligibleIssues,issues:i.issues,healthSummaries:{objectiveHealthSummary:R,projectHealthSummary:k,objectiveNote:S,projectNote:v},cliArgs:t.cliArgs,onSpawn:t.onSpawn,startMs:r}),{logActionReceipt:P}=await e.A(688671);return await P(x,{jobId:t.job.id,projectId:t.job.projectId,objectiveId:t.job.objectiveId}),{output:x.result,error:"failed"===x.status?x.result:"",durationMs:Date.now()-r,status:x.status}}catch(e){return{output:"",error:e instanceof Error?e.message:String(e),durationMs:Date.now()-r,status:"failed"}}}e.s(["buildObjectiveObservation",()=>b,"executeObjectiveWorker",()=>L,"extractFirstJsonObject",()=>h],720395)},688671,e=>{e.v(e=>Promise.resolve().then(()=>e(917435)))}];
90
+
91
+ //# sourceMappingURL=apps_local_5e5f36c4._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[615501,(e,t,a)=>{"use strict";t.exports=e.r(185615).vendored["react-rsc"].ReactJsxRuntime},698134,e=>{"use strict";var t=e.i(88007),a=e.i(581001),r=e.i(404258),s=e.i(615501);function i({className:e}){return(0,s.jsx)("svg",{className:e,viewBox:"0 0 24 24",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",children:(0,s.jsx)("path",{d:"M2.886 4.18A11.982 11.982 0 0 1 11.99 0C18.624 0 24 5.376 24 12.009c0 3.64-1.62 6.903-4.18 9.105L2.887 4.18ZM1.817 5.626l16.556 16.556c-.524.33-1.075.62-1.65.866L.951 7.277c.247-.575.537-1.126.866-1.65ZM.322 9.163l14.515 14.515c-.71.172-1.443.282-2.195.322L0 11.358a12 12 0 0 1 .322-2.195Zm-.17 4.862 9.823 9.824a12.02 12.02 0 0 1-9.824-9.824Z"})})}function n(e){let t=e.trim().toLowerCase();return["done","completed","closed"].includes(t)?"done":["cancelled","canceled","duplicate"].includes(t)?"cancelled":["in progress","in review","started","testing","deployed","in deployment"].includes(t)?"in_progress":"todo"}async function o(e,t){throw Error("Linear OAuth callback must be handled by the route handler")}async function l(e){let t=(0,a.getLinearClient)(e);if(!t)return{connected:!1};try{let e=await t.viewer;return{connected:!0,user:{id:e.id,name:e.name,avatarUrl:void 0}}}catch{return{connected:!1}}}async function c(t){let{deleteProjectTicketToken:a}=await e.A(836400);a(t,"linear")}function u(e){return{id:e.id,name:e.name??`Cycle ${e.number}`,type:"cycle"}}e.i(78362);var d=e.i(754493),p=e.i(607495);function y({className:e}){return(0,s.jsx)("svg",{className:e,viewBox:"0 0 100 100",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg",children:(0,s.jsx)("path",{d:"M94.6 12.2c-1.4-1.6-3.4-2.5-5.6-2.5H10.8c-2.1 0-4.1.9-5.6 2.5C3.8 13.8 3 15.8 3 17.9v64.2c0 2.1.8 4.1 2.2 5.7 1.5 1.6 3.5 2.5 5.6 2.5h78.2c2.2 0 4.2-.9 5.6-2.5 1.5-1.6 2.2-3.6 2.2-5.7V17.9c.1-2.1-.6-4.1-2.2-5.7zM50 72.4L27.6 50 50 27.6 72.4 50 50 72.4z"})})}e.i(242617);let g=new class{type="linear";displayName="Linear";icon=i;getAuthUrl(e){let t;return t=new URL((0,r.getConfiguredAppBaseUrl)()).port||"41741",`https://www.runagx.com/integrations/linear/auth?port=${t}`}async handleCallback(e,t){return o(e,t)}async getStatus(e){return l(e)}async disconnect(e){return c(e)}async listItems(t,a){let{ensureLinearIssueCache:r,listLinearIssueSummaries:s}=await e.A(58723),{getIssueActivityMap:i}=await e.A(138720),n=!a.cursor;await r({projectId:t,refresh:n});let o=a.hasActivity?await i(t):void 0,{listCachedTrackerItems:l}=await e.A(410437),c=await l({trackerType:"linear",search:a.search,statuses:a.statuses,statusCategories:a.statusCategories,assigneeIds:a.assigneeIds,groupIds:a.groupIds,cursor:a.cursor,limit:a.limit,sortBy:a.sortBy??"activity",sortDir:a.sortDir,hasActivity:a.hasActivity,activityMap:o});return{items:c.issues.map(e=>({id:e.id,trackerId:e.trackerId||`linear:${e.teamId??"default"}`,trackerType:"linear",identifier:e.identifier,title:e.title,description:e.description??void 0,status:e.status,statusCategory:e.statusCategory,assignee:e.assignee?{id:e.assigneeId??e.assignee,name:e.assignee,avatarUrl:void 0}:void 0,priority:void 0,labels:e.labels??[],createdAt:e.pulledAt,updatedAt:e.updatedAt,url:e.url??`https://linear.app/issue/${e.identifier}`})),pageInfo:c.pageInfo}}async getItem(t,a){let{getCachedTrackerItemContexts:r}=await e.A(410437),s=(await r([a]))[0];if(!s)throw Error(`Item ${a} not found`);return{id:s.id,trackerId:s.trackerId||`linear:${s.teamId??"default"}`,trackerType:"linear",identifier:s.identifier,title:s.title,description:s.description??void 0,status:s.status,statusCategory:s.statusCategory,assignee:s.assignee?{id:s.assigneeId??s.assignee,name:s.assignee,avatarUrl:void 0}:void 0,labels:s.labels??[],createdAt:s.pulledAt,updatedAt:s.updatedAt,url:s.url??`https://linear.app/issue/${s.identifier}`,comments:[],activity:[],metadata:{teamId:s.teamId,teamName:s.teamName,teamKey:s.teamKey,cycleId:s.cycleId,cycleName:s.cycleName,cycleNumber:s.cycleNumber,isAssignedToMe:s.isAssignedToMe}}}async updateItem(t,r,s){let i=(0,a.getLinearClient)(t);if(!i)throw Error("Not connected to Linear");if(s.status){let t=await i.updateIssueStatus(r,s.status),{updateCachedTrackerItemStatus:a}=await e.A(410437);return await a({issueId:r,status:t.status??s.status,updatedAt:t.updatedAt}),{id:r,trackerId:"linear:default",trackerType:"linear",identifier:t.identifier,title:t.title,status:t.status??s.status,statusCategory:n(t.status??s.status),assignee:t.assignee?{id:t.assignee,name:t.assignee}:void 0,labels:[],createdAt:t.updatedAt,updatedAt:t.updatedAt,url:t.url??`https://linear.app/issue/${t.identifier}`}}throw Error("Only status updates are currently supported")}async addComment(e,t,a){throw Error("Linear addComment not yet implemented")}async getActivity(e,t){return[]}async listGroups(e){let t=(0,a.getLinearClient)(e);return t?(await t.cycles()).map(u):[]}async listStatuses(e){let t=(0,a.getLinearClient)(e);if(!t)return[];try{let e=await t.workflowStates(),a=new Set;return e.map(e=>({id:e.id,name:e.name,category:n(e.name)})).filter(e=>!a.has(e.name)&&(a.add(e.name),!0))}catch{return[{id:"todo",name:"Todo",category:"todo"},{id:"in_progress",name:"In Progress",category:"in_progress"},{id:"done",name:"Done",category:"done"},{id:"cancelled",name:"Cancelled",category:"cancelled"}]}}async listAssignees(e){let t=(0,a.getLinearClient)(e);return t?(await t.users()).map(e=>({id:e.id,name:e.name,avatarUrl:void 0})):[]}async handleApiKeyConnect(t,a){let{saveProjectTicketToken:r}=await e.A(836400);r(t,"linear",{accessToken:a})}async handleTokenDelivery(t,a){let r=a.access_token;if(!r)throw Error("Missing access_token");let{saveProjectTicketToken:s}=await e.A(836400),i=a.expires_in?Number(a.expires_in):void 0;s(t,"linear",{accessToken:r,...i&&{expiresAt:Date.now()+1e3*i}})}getMcpConfig(e){let t=(0,a.getProjectTicketToken)(e,"linear");return{name:"linear",url:"https://mcp.linear.app/sse",headers:t?{Authorization:`Bearer ${t.accessToken}`}:{}}}renderGroupLabel(e){return"cycle"===e.type?`Cycle: ${e.name}`:e.name}};(0,t.registerAdapter)(g);let m=new class{type="jira";displayName="Jira Cloud";icon=y;getAuthUrl(e){return(0,d.getJiraAuthUrl)(e)}async handleCallback(e,t){let a=await (0,d.exchangeJiraCode)(t),r=(await (0,d.getAccessibleResources)(a.accessToken))[0];if(!r)throw Error("No accessible Jira resources found");return(0,d.saveJiraToken)(e,{accessToken:a.accessToken,refreshToken:a.refreshToken,expiresAt:a.expiresAt,cloudId:r.id,siteUrl:r.url}),{accessToken:a.accessToken,refreshToken:a.refreshToken,expiresAt:a.expiresAt}}async getStatus(e){let t=(0,d.getJiraToken)(e);if(!t?.accessToken||!t?.cloudId)return{connected:!1};try{let t=await (0,d.getJiraClient)(e);if(!t)return{connected:!1};let a=await t.getMyself();return{connected:!0,user:{id:a.id,name:a.name,avatarUrl:a.avatarUrl}}}catch{return{connected:!1}}}async disconnect(t){(0,d.deleteJiraToken)(t);let{removeTrackerConnection:a}=await e.A(169447);a(t,"jira")}async listItems(t,a){let{ensureJiraIssueCache:r,mapJiraIssue:s}=await e.A(119130),i=(0,d.getJiraToken)(t),n=!a.cursor;await r({projectId:t,refresh:n});let{listCachedTrackerItems:o}=await e.A(410437),l=await o({trackerType:"jira",search:a.search,statuses:a.statuses,statusCategories:a.statusCategories,assigneeIds:a.assigneeIds,groupIds:a.groupIds,cursor:a.cursor,limit:a.limit,sortBy:a.sortBy??"activity",sortDir:a.sortDir,hasActivity:a.hasActivity}),c=i?.siteUrl??"https://example.atlassian.net";return{items:l.issues.map(e=>({id:e.id,trackerId:e.trackerId||"jira:default",trackerType:"jira",identifier:e.identifier,title:e.title,description:e.description??void 0,status:e.status,statusCategory:e.statusCategory,assignee:e.assignee?{id:e.assigneeId??e.assignee,name:e.assignee}:void 0,labels:e.labels??[],createdAt:e.pulledAt,updatedAt:e.updatedAt,url:e.url??`${c}/browse/${e.identifier}`})),pageInfo:l.pageInfo}}async getItem(t,a){let{getJiraIssueDetail:r}=await e.A(119130);return r(t,a)}async updateItem(t,a,r){let s=await (0,d.getJiraClient)(t);if(!s)throw Error("Not connected to Jira");if(r.status){let e=await s.getTransitions(a),t=e.find(e=>e.to.name===r.status||e.name===r.status);if(!t)throw Error(`No transition to status "${r.status}" available. Valid transitions: ${e.map(e=>e.name).join(", ")}`);await s.transitionIssue(a,t.id)}r.assigneeId&&await s.updateIssue(a,{assignee:{accountId:r.assigneeId}}),r.labels&&await s.updateIssue(a,{labels:r.labels});let i=(0,d.getJiraToken)(t),n=i?.siteUrl??"https://example.atlassian.net",o=await s.getIssue(a),{mapJiraIssue:l}=await e.A(119130);return l(o,n)}async addComment(e,t,a){let r=await (0,d.getJiraClient)(e);if(!r)throw Error("Not connected to Jira");await r.addComment(t,a)}async getActivity(e,t){let a=await (0,d.getJiraClient)(e);return a?(await a.getActivity(t)).map(e=>({id:e.id,type:"update",description:e.items.map(e=>`${e.field}: ${e.fromString??""} → ${e.toString??""}`).join(", "),actor:{id:e.author.accountId,name:e.author.displayName},createdAt:e.created})):[]}async listGroups(e){let t=await (0,d.getJiraClient)(e);if(!t)return[];try{let e=await t.getBoards(),a=[];for(let r of e.slice(0,5))for(let e of(await t.getSprints(r.id)))("active"===e.state||"future"===e.state)&&a.push({id:String(e.id),name:e.name,type:"sprint"});return a}catch{return[]}}async listStatuses(e){let t=await (0,d.getJiraClient)(e);if(!t)return[];try{let e=await t.getStatuses(),a=new Set,r=[];for(let t of e)a.has(t.name)||(a.add(t.name),r.push({id:t.id,name:t.name,category:(0,p.jiraStatusCategoryToCanonical)(t.statusCategory?.key)}));return r}catch{return[]}}async listAssignees(t){let a=await (0,d.getJiraClient)(t);if(!a)return[];(0,d.getJiraToken)(t);let{listCachedTrackerItems:r}=await e.A(410437),s=await r({trackerType:"jira",limit:1}),i=s.issues[0]?.teamKey;if(!i)return[];try{return(await a.getAssignableUsers(i)).map(e=>({id:e.accountId,name:e.displayName,avatarUrl:e.avatarUrls?.["48x48"]}))}catch{return[]}}async handleApiKeyConnect(e,t){throw Error("Jira Cloud requires OAuth authentication — use the Connect button instead")}async handleTokenDelivery(e,t){let a=t.access_token,r=t.cloud_id,s=t.site_url;if(!a||!r||!s)throw Error("Missing required Jira token fields (access_token, cloud_id, site_url)");let i=t.expires_in?Number(t.expires_in):void 0;(0,d.saveJiraToken)(e,{accessToken:a,refreshToken:t.refresh_token,cloudId:r,siteUrl:s,...i&&{expiresAt:Date.now()+1e3*i}})}getMcpConfig(e){let t=(0,d.getJiraToken)(e);return{name:"jira",url:"https://mcp.atlassian.com/v1/sse",headers:t?{Authorization:`Bearer ${t.accessToken}`}:{}}}renderGroupLabel(e){return"sprint"===e.type?`Sprint: ${e.name}`:e.name}};(0,t.registerAdapter)(m),e.s([],698134)},242617,e=>{"use strict";e.i(712513);var t=e.i(902157),a=e.i(660526),r=e.i(750227);let s=r.default.join((0,a.homedir)(),".agx");function i(e){return r.default.join(s,"projects",e,"integrations","trackers.json")}function n(e){let a=r.default.dirname(e);(0,t.existsSync)(a)||(0,t.mkdirSync)(a,{recursive:!0})}function o(e){if(!e)return[];let a=i(e);try{let e=(0,t.readFileSync)(a,"utf8"),r=JSON.parse(e);return Array.isArray(r.connections)?r.connections:[]}catch{return[]}}function l(e,a){if(!e)return;let r=i(e);n(r);let s=o(e),l=s.findIndex(e=>e.type===a.type);l>=0?s[l]=a:s.push(a),(0,t.writeFileSync)(r,JSON.stringify({connections:s},null,2),"utf8")}function c(e,a){if(!e)return;let r=i(e),s=o(e).filter(e=>e.type!==a);if(0===s.length)try{(0,t.unlinkSync)(r)}catch{}else n(r),(0,t.writeFileSync)(r,JSON.stringify({connections:s},null,2),"utf8")}e.s(["addTrackerConnection",()=>l,"listTrackerConnections",()=>o,"removeTrackerConnection",()=>c])},88007,e=>{"use strict";let t=new Map;function a(e){if(t.has(e.type))throw Error(`Tracker adapter "${e.type}" is already registered`);t.set(e.type,e)}function r(e){let a=t.get(e);if(!a)throw Error(`Unknown tracker type: "${e}". Available: ${i().join(", ")}`);return a}function s(e){return t.get(e)??null}function i(){return[...t.keys()]}function n(){return[...t.values()]}e.s(["getAdapter",()=>r,"getAdapterOrNull",()=>s,"listAdapterTypes",()=>i,"listAdapters",()=>n,"registerAdapter",()=>a])},404258,e=>{"use strict";function t(e){let t=e?.trim();return t?t.replace(/\/+$/,""):null}let a="http://localhost:41741";function r(){return t(process.env.NEXT_PUBLIC_APP_URL)??t(process.env.AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_AGX_BOARD_URL)??a}function s(){return t(process.env.AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_APP_URL)??a}function i(){let e=new Set([a,"http://127.0.0.1:41741"]);for(let a of[process.env.NEXT_PUBLIC_APP_URL,process.env.AGX_BOARD_URL,process.env.NEXT_PUBLIC_AGX_BOARD_URL]){let r=t(a);r&&e.add(r)}return Array.from(e)}e.s(["getAllowedOrigins",()=>i,"getConfiguredAppBaseUrl",()=>r,"getConfiguredBoardBaseUrl",()=>s])},607495,754493,e=>{"use strict";e.i(712513);var t=e.i(902157),a=e.i(660526),r=e.i(750227),s=e.i(404258);let i=r.default.join((0,a.homedir)(),".agx"),n="https://api.atlassian.com";function o(e){return r.default.join(i,"projects",e,"integrations","jira.json")}function l(e){if(!e)return null;let a=o(e);try{let e=(0,t.readFileSync)(a,"utf8");return JSON.parse(e)}catch{return null}}function c(e,a){if(!e)throw Error("projectId is required to save a Jira token");let s=o(e),i=r.default.dirname(s);(0,t.existsSync)(i)||(0,t.mkdirSync)(i,{recursive:!0}),(0,t.writeFileSync)(s,JSON.stringify(a,null,2),"utf8")}function u(e){if(!e)return;let a=o(e);try{(0,t.unlinkSync)(a)}catch{}}function d(e){let t=new URL((0,s.getConfiguredAppBaseUrl)()).port||"41741";return`https://www.runagx.com/integrations/jira/auth?port=${t}`}async function p(e){let t=process.env.JIRA_CLIENT_ID,a=process.env.JIRA_CLIENT_SECRET;if(!t||!a)throw Error("JIRA_CLIENT_ID and JIRA_CLIENT_SECRET must be set");let r=await fetch("https://auth.atlassian.com/oauth/token",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({grant_type:"authorization_code",code:e,client_id:t,client_secret:a,redirect_uri:`${(0,s.getConfiguredAppBaseUrl)()}/api/trackers/jira/callback`})});if(!r.ok){let e=await r.text();throw Error(`Jira token exchange failed: ${r.status} ${e}`)}let i=await r.json(),n="number"==typeof i.expires_in?i.expires_in:3600;return{accessToken:i.access_token,refreshToken:i.refresh_token,expiresAt:Date.now()+1e3*n}}async function y(e){let t=await fetch("https://www.runagx.com/integrations/jira/refresh",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({refresh_token:e})});if(!t.ok){let e=await t.text();throw Error(`Jira token refresh failed: ${t.status} ${e}`)}let a=await t.json(),r="number"==typeof a.expires_in?a.expires_in:3600;return{accessToken:a.access_token,refreshToken:a.refresh_token??e,expiresAt:Date.now()+1e3*r}}async function g(e){let t=await fetch(`${n}/oauth/token/accessible-resources`,{headers:{Authorization:`Bearer ${e}`}});return t.ok?t.json():[]}class m{accessToken;cloudId;siteUrl;constructor(e,t,a){this.accessToken=e,this.cloudId=t,this.siteUrl=a}get baseUrl(){return`${n}/ex/jira/${this.cloudId}/rest/api/3`}get agileUrl(){return`${n}/ex/jira/${this.cloudId}/rest/agile/1.0`}async request(e,t){return await fetch(e,{...t,headers:{Authorization:`Bearer ${this.accessToken}`,"Content-Type":"application/json",Accept:"application/json",...t?.headers}})}async getMyself(){let e=await this.request(`${this.baseUrl}/myself`);if(!e.ok)throw Error(`Failed to get Jira user: ${e.status}`);let t=await e.json();return{id:t.accountId,name:t.displayName,avatarUrl:t.avatarUrls?.["48x48"]}}async searchIssues(e,t){let a={jql:e,maxResults:t?.maxResults??50,fields:t?.fields??["summary","status","assignee","priority","labels","description","updated","created","issuetype","project","customfield_10020","comment"]};t?.nextPageToken&&(a.nextPageToken=t.nextPageToken);let r=await this.request(`${this.baseUrl}/search/jql`,{method:"POST",body:JSON.stringify(a)});if(!r.ok){let e=await r.text();throw Error(`Jira search failed: ${r.status} ${e}`)}return r.json()}async getIssue(e){let t=await this.request(`${this.baseUrl}/issue/${encodeURIComponent(e)}?expand=renderedFields`);if(!t.ok)throw Error(`Failed to get Jira issue ${e}: ${t.status}`);return t.json()}async updateIssue(e,t){let a=await this.request(`${this.baseUrl}/issue/${encodeURIComponent(e)}`,{method:"PUT",body:JSON.stringify({fields:t})});if(!a.ok){let t=await a.text();throw Error(`Failed to update Jira issue ${e}: ${a.status} ${t}`)}}async addComment(e,t){let a=await this.request(`${this.baseUrl}/issue/${encodeURIComponent(e)}/comment`,{method:"POST",body:JSON.stringify({body:{type:"doc",version:1,content:t.split("\n\n").map(e=>({type:"paragraph",content:e?[{type:"text",text:e}]:[]}))}})});if(!a.ok){let t=await a.text();throw Error(`Failed to add comment to ${e}: ${a.status} ${t}`)}}async getComments(e){let t=await this.request(`${this.baseUrl}/issue/${encodeURIComponent(e)}/comment`);return t.ok?(await t.json()).comments??[]:[]}async getTransitions(e){let t=await this.request(`${this.baseUrl}/issue/${encodeURIComponent(e)}/transitions`);return t.ok?(await t.json()).transitions??[]:[]}async transitionIssue(e,t){let a=await this.request(`${this.baseUrl}/issue/${encodeURIComponent(e)}/transitions`,{method:"POST",body:JSON.stringify({transition:{id:t}})});if(!a.ok){let t=await a.text();throw Error(`Failed to transition ${e}: ${a.status} ${t}`)}}async getProjects(){let e=await this.request(`${this.baseUrl}/project`);return e.ok?e.json():[]}async getStatuses(){let e=await this.request(`${this.baseUrl}/status`);return e.ok?e.json():[]}async getBoards(){let e=await this.request(`${this.agileUrl}/board`);return e.ok?(await e.json()).values??[]:[]}async getSprints(e){let t=await this.request(`${this.agileUrl}/board/${e}/sprint`);return t.ok?(await t.json()).values??[]:[]}async getAssignableUsers(e){let t=new URLSearchParams({project:e}),a=await this.request(`${this.baseUrl}/user/assignable/search?${t}`);return a.ok?a.json():[]}async getActivity(e,t=200){let a=[],r=0;for(;a.length<t;){let s=new URLSearchParams({startAt:String(r),maxResults:String(Math.min(100,t-a.length))}),i=await this.request(`${this.baseUrl}/issue/${encodeURIComponent(e)}/changelog?${s}`);if(!i.ok)break;let n=await i.json(),o=n.values??[];if(a.push(...o),0===o.length||a.length>=(n.total??0))break;r+=o.length}return a}}async function f(e){let t=l(e);if(!t?.accessToken||!t?.cloudId||!t?.siteUrl)return null;if(t.expiresAt&&Date.now()>t.expiresAt-6e4&&t.refreshToken)try{let a=await y(t.refreshToken),r={...t,accessToken:a.accessToken,refreshToken:a.refreshToken,expiresAt:a.expiresAt};return c(e,r),new m(r.accessToken,t.cloudId,t.siteUrl)}catch{return null}return new m(t.accessToken,t.cloudId,t.siteUrl)}function h(e){return e?"string"==typeof e?e:function e(t){return"string"==typeof t?t:t&&"object"==typeof t?"text"===t.type&&"string"==typeof t.text?t.text:Array.isArray(t.content)?t.content.map(e).join(""):"":""}(e):null}e.s(["adfToPlainText",()=>h,"deleteJiraToken",()=>u,"exchangeJiraCode",()=>p,"getAccessibleResources",()=>g,"getJiraAuthUrl",()=>d,"getJiraClient",()=>f,"getJiraToken",()=>l,"saveJiraToken",()=>c],754493);var w=e.i(862263);function k(e){switch(e){case"new":default:return"todo";case"indeterminate":return"in_progress";case"done":return"done"}}function A(e,t,a){let r=e.fields,s=r.status?.statusCategory?.key??"new";return{id:e.id,trackerId:`jira:${r.project?.key??"unknown"}`,trackerType:"jira",identifier:e.key,title:r.summary,description:h(r.description)??void 0,status:r.status?.name??"Unknown",statusCategory:k(s),assignee:r.assignee?{id:r.assignee.accountId,name:r.assignee.displayName,avatarUrl:r.assignee.avatarUrls?.["48x48"]}:void 0,priority:function(e){if(!e)return;let t=e.toLowerCase();return t.includes("highest")||t.includes("critical")?"urgent":t.includes("high")?"high":t.includes("medium")||t.includes("major")?"medium":t.includes("low")||t.includes("minor")||t.includes("lowest")||t.includes("trivial")?"low":"none"}(r.priority?.name),labels:r.labels??[],createdAt:r.created,updatedAt:r.updated,url:`${t}/browse/${e.key}`}}async function I(e){let t,a=await f(e.projectId);if(!a)throw Error("Not connected to Jira");let r=l(e.projectId);if(!r?.siteUrl)throw Error("Missing Jira site URL");let s=e.jql??(e.projectKey?`project = ${e.projectKey} ORDER BY updated DESC`:"assignee = currentUser() OR reporter = currentUser() ORDER BY updated DESC"),i=e.limit??100,n=[],o=!1;for(;!o&&n.length<i;){let e=await a.searchIssues(s,{nextPageToken:t,maxResults:Math.min(50,i-n.length)});for(let t of e.issues)n.push(function(e,t){let a=e.fields,r=a.status?.statusCategory?.key??"new";return{id:e.id,trackerType:"jira",trackerId:`jira:${a.project?.key??"unknown"}`,identifier:e.key,title:a.summary,description:h(a.description),status:a.status?.name??"Unknown",statusCategory:k(r),assigneeId:a.assignee?.accountId??null,assignee:a.assignee?.displayName??null,assigneeEmail:null,isAssignedToMe:!1,teamId:a.project?.id??null,teamName:a.project?.name??null,teamKey:a.project?.key??null,cycleId:a.customfield_10020?String(a.customfield_10020.id):null,cycleName:a.customfield_10020?.name??null,cycleNumber:a.customfield_10020?a.customfield_10020.id:null,priority:a.priority?.name??null,labels:a.labels??[],url:`${t}/browse/${e.key}`,updatedAt:a.updated}}(t,r.siteUrl));o=e.isLast||0===e.issues.length,t=e.nextPageToken}return await (0,w.replaceCachedTrackerItems)({trackerType:"jira",issues:n,complete:o,pulledAtMs:Date.now()}),{pulled:n.length}}async function T(t){let{getTrackerItemSyncState:a,setTrackerItemSyncState:r}=await e.A(410437),s=await a("jira");return(t.refresh||!s?.lastPulledAt)&&(await I({projectId:t.projectId,projectKey:t.projectKey}),await r("jira",0,Date.now())),{pulledAt:s?.lastPulledAt??null}}async function C(e){return{issues:(await (0,w.listCachedTrackerItems)({trackerType:"jira",limit:e?.limit??500})).issues.map(e=>({id:e.id,trackerId:e.trackerId||"jira:default",trackerType:"jira",identifier:e.identifier,title:e.title,description:e.description??void 0,status:e.status,statusCategory:e.statusCategory,assignee:e.assignee?{id:e.assigneeId??e.assignee,name:e.assignee}:void 0,priority:void 0,labels:e.labels??[],createdAt:e.pulledAt,updatedAt:e.updatedAt,url:e.url??"#"}))}}async function j(e,t){let a=await f(e);if(!a)throw Error("Not connected to Jira");let r=l(e),s=r?.siteUrl??"https://example.atlassian.net",i=await a.getIssue(t),n=A(i,s),o=(i.fields.comment?.comments??[]).map(e=>({id:e.id,body:"string"==typeof e.body?e.body:h(e.body)??"",author:{id:e.author.accountId,name:e.author.displayName},createdAt:e.created})),c=(await a.getActivity(t)).map(e=>({id:e.id,type:"update",description:e.items.map(e=>`${e.field}: ${e.fromString??""} → ${e.toString??""}`).join(", "),actor:{id:e.author.accountId,name:e.author.displayName},createdAt:e.created}));return{...n,comments:o,activity:c,metadata:{projectId:i.fields.project?.id,projectKey:i.fields.project?.key,projectName:i.fields.project?.name,issueType:i.fields.issuetype?.name,sprintId:i.fields.customfield_10020?.id,sprintName:i.fields.customfield_10020?.name}}}e.s(["ensureJiraIssueCache",()=>T,"getJiraIssueDetail",()=>j,"jiraStatusCategoryToCanonical",()=>k,"listJiraIssueSummaries",()=>C,"mapJiraIssue",()=>A,"pullJiraIssues",()=>I],607495)}];
2
+
3
+ //# sourceMappingURL=apps_local_80b34b78._.js.map
@@ -0,0 +1,128 @@
1
+ module.exports=[85e4,e=>{"use strict";var t=e.i(522734),r=e.i(446786),a=e.i(814747),i=e.i(769025);let{DatabaseSync:s}=process.getBuiltinModule("node:sqlite"),n=process.env.AGX_GROUP_CHAT_DIR?.trim()||a.default.join(r.default.homedir(),".agx","group-chat"),u=a.default.join(n,"history.sqlite");function o(e){return e?.trim()||null}function c(e){return"scripted"===e?"scripted":"chat"}function d(e){let t,r=e.chat_created_at??e.created_at,a=e.chat_completed_at??null,i=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:c(e.mode),sessionTitle:"chat"===c(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:i,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(n,{recursive:!0});let r=new s(u);(0,i.pragmaSet)(r,"journal_mode = WAL");try{r.exec(`
2
+ CREATE TABLE IF NOT EXISTS chat_runs (
3
+ id TEXT PRIMARY KEY,
4
+ thread_id TEXT NOT NULL,
5
+ root_message_id TEXT,
6
+ user_id TEXT NOT NULL,
7
+ project_slug TEXT,
8
+ status TEXT NOT NULL,
9
+ current_step INTEGER NOT NULL DEFAULT 0,
10
+ max_steps INTEGER NOT NULL DEFAULT 10,
11
+ steps_used INTEGER NOT NULL DEFAULT 0,
12
+ last_error TEXT,
13
+ active_participant_ids TEXT NOT NULL DEFAULT '[]',
14
+ payload_json TEXT,
15
+ result_json TEXT,
16
+ created_at INTEGER NOT NULL,
17
+ updated_at INTEGER NOT NULL,
18
+ completed_at INTEGER
19
+ );
20
+ CREATE TABLE IF NOT EXISTS messages (
21
+ thread_id TEXT NOT NULL,
22
+ id TEXT NOT NULL,
23
+ role TEXT NOT NULL,
24
+ participant_id TEXT,
25
+ content TEXT NOT NULL,
26
+ timestamp INTEGER NOT NULL,
27
+ root_message_id TEXT,
28
+ parent_message_id TEXT,
29
+ depth INTEGER NOT NULL DEFAULT 0,
30
+ thread_status TEXT,
31
+ outcome_note TEXT,
32
+ PRIMARY KEY (thread_id, id)
33
+ );
34
+ CREATE TABLE IF NOT EXISTS tracker_runs (
35
+ id TEXT PRIMARY KEY,
36
+ project_id TEXT,
37
+ project_slug TEXT,
38
+ tracker_type TEXT NOT NULL DEFAULT 'linear',
39
+ issue_id TEXT NOT NULL,
40
+ issue_identifier TEXT NOT NULL,
41
+ issue_title TEXT NOT NULL,
42
+ issue_status TEXT NOT NULL,
43
+ issue_assignee TEXT,
44
+ thread_id TEXT NOT NULL,
45
+ root_message_id TEXT,
46
+ chat_run_id TEXT,
47
+ agent_id TEXT NOT NULL,
48
+ agent_name TEXT NOT NULL,
49
+ mode TEXT NOT NULL DEFAULT 'chat',
50
+ status TEXT NOT NULL DEFAULT 'queued',
51
+ error TEXT,
52
+ recap_file_path TEXT,
53
+ created_at INTEGER NOT NULL,
54
+ updated_at INTEGER NOT NULL
55
+ );
56
+ CREATE INDEX IF NOT EXISTS idx_tracker_runs_issue_created
57
+ ON tracker_runs (issue_id, created_at DESC);
58
+ CREATE INDEX IF NOT EXISTS idx_tracker_runs_project_issue_created
59
+ ON tracker_runs (project_id, issue_id, created_at DESC);
60
+ CREATE INDEX IF NOT EXISTS idx_tracker_runs_type_created
61
+ ON tracker_runs (tracker_type, created_at DESC);
62
+ CREATE UNIQUE INDEX IF NOT EXISTS idx_tracker_runs_chat_run_id
63
+ ON tracker_runs (chat_run_id)
64
+ WHERE chat_run_id IS NOT NULL;
65
+ `),function(e){if(!e.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='linear_runs'").get())return;let t=e.prepare("SELECT * FROM linear_runs").all();if(t.length>0){let r=e.prepare(`
66
+ INSERT INTO tracker_runs (
67
+ id, project_id, project_slug, tracker_type,
68
+ issue_id, issue_identifier, issue_title, issue_status, issue_assignee,
69
+ thread_id, root_message_id, chat_run_id,
70
+ agent_id, agent_name, mode, status, error, recap_file_path,
71
+ created_at, updated_at
72
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
73
+ ON CONFLICT(id) DO UPDATE SET
74
+ tracker_type = excluded.tracker_type
75
+ `);for(let e of t)r.run(String(e.id),o(String(e.project_id??"")),o(String(e.project_slug??"")),"linear",String(e.issue_id),String(e.issue_identifier),String(e.issue_title),String(e.issue_status),o(String(e.issue_assignee??"")),String(e.thread_id),o(String(e.root_message_id??"")),o(String(e.chat_run_id??"")),String(e.agent_id),String(e.agent_name),c(String(e.mode??"chat")),String(e.status??"queued"),o(String(e.error??"")),o(String(e.recap_file_path??"")),Number(e.created_at),Number(e.updated_at))}e.exec("DROP TABLE IF EXISTS linear_runs")}(r);let t=r.prepare("PRAGMA table_info(tracker_runs)").all();return t.some(e=>"mode"===e.name)||r.exec("ALTER TABLE tracker_runs ADD COLUMN mode TEXT NOT NULL DEFAULT 'chat';"),t.some(e=>"recap_file_path"===e.name)||r.exec("ALTER TABLE tracker_runs ADD COLUMN recap_file_path TEXT;"),t.some(e=>"tracker_type"===e.name)||r.exec("ALTER TABLE tracker_runs ADD COLUMN tracker_type TEXT NOT NULL DEFAULT 'linear';"),e(r)}finally{r.close()}}let p=`
76
+ SELECT
77
+ tr.*,
78
+ cr.status AS chat_status,
79
+ cr.last_error AS chat_last_error,
80
+ cr.created_at AS chat_created_at,
81
+ cr.updated_at AS chat_updated_at,
82
+ cr.completed_at AS chat_completed_at,
83
+ msg.content AS root_content
84
+ FROM tracker_runs tr
85
+ LEFT JOIN chat_runs cr ON cr.id = (
86
+ SELECT id FROM chat_runs WHERE thread_id = tr.thread_id ORDER BY updated_at DESC LIMIT 1
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=o(e.id)??crypto.randomUUID(),a=o(e.threadId)??`tracker-run:${r}`,i=c(e.mode),s=e.trackerType??"linear";return l(n=>{n.prepare(`INSERT INTO tracker_runs (
89
+ id, project_id, project_slug, tracker_type,
90
+ issue_id, issue_identifier, issue_title,
91
+ issue_status, issue_assignee, thread_id, root_message_id, chat_run_id,
92
+ agent_id, agent_name, mode, status, error, recap_file_path, created_at, updated_at
93
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, NULL, NULL, ?, ?, ?, 'queued', NULL, ?, ?, ?)`).run(r,o(e.projectId??null),o(e.projectSlug??null),s,e.issueId.trim(),e.issueIdentifier.trim(),e.issueTitle.trim(),e.issueStatus.trim(),o(e.issueAssignee??null),a,e.agentId.trim(),e.agentName.trim(),i,o(e.recapFilePath??null),t,t);let u=n.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(r);if(!u)throw Error(`Failed to create tracker run ${r}`);return d(u)})}async function T(e){return l(t=>{let r=["updated_at = ?"],a=[Date.now()];void 0!==e.rootMessageId&&(r.push("root_message_id = ?"),a.push(o(e.rootMessageId))),void 0!==e.chatRunId&&(r.push("chat_run_id = ?"),a.push(o(e.chatRunId))),void 0!==e.status&&(r.push("status = ?"),a.push(e.status)),void 0!==e.error&&(r.push("error = ?"),a.push(o(e.error))),a.push(e.id.trim()),t.prepare(`UPDATE tracker_runs SET ${r.join(", ")} WHERE id = ?`).run(...a);let i=t.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(e.id.trim());return i?d(i):null})}async function m(e){return l(t=>{let r=t.prepare(`${p} WHERE tr.id = ? LIMIT 1`).get(e.trim());return r?d(r):null})}async function g(e){let t=e.issueId.trim(),r=o(e.projectId??null),a=o(e.trackerType??null),i=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),100):50;return l(e=>{let s=[t],n=["tr.issue_id = ?"];return r&&(n.push("tr.project_id = ?"),s.push(r)),a&&(n.push("tr.tracker_type = ?"),s.push(a)),s.push(i),e.prepare(`${p}
94
+ WHERE ${n.join(" AND ")}
95
+ ORDER BY tr.created_at DESC
96
+ LIMIT ?`).all(...s).map(d)})}async function E(e){return l(t=>{let r=e?.trim(),a=r?`SELECT issue_id, MAX(created_at) AS last_activity_at
97
+ FROM tracker_runs
98
+ WHERE project_id = ?
99
+ GROUP BY issue_id`:`SELECT issue_id, MAX(created_at) AS last_activity_at
100
+ FROM tracker_runs
101
+ GROUP BY issue_id`,i=r?t.prepare(a).all(e.trim()):t.prepare(a).all(),s=new Map;for(let e of i)s.set(e.issue_id,new Date(e.last_activity_at).toISOString());return s})}async function h(e){return l(t=>{let r=e?.trim(),a=r?`SELECT DISTINCT tr.issue_id, tr.agent_id, tr.agent_name
102
+ FROM tracker_runs tr
103
+ INNER JOIN chat_runs cr ON cr.id = (
104
+ SELECT id FROM chat_runs WHERE thread_id = tr.thread_id ORDER BY updated_at DESC LIMIT 1
105
+ )
106
+ WHERE cr.status IN ('queued', 'running')
107
+ AND tr.project_id = ?`:`SELECT DISTINCT tr.issue_id, tr.agent_id, tr.agent_name
108
+ FROM tracker_runs tr
109
+ INNER JOIN chat_runs cr ON cr.id = (
110
+ SELECT id FROM chat_runs WHERE thread_id = tr.thread_id ORDER BY updated_at DESC LIMIT 1
111
+ )
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",()=>h,"getIssueActivityMap",()=>E,"getLinearRun",0,m,"getTrackerRun",()=>m,"listLinearRuns",0,g,"listTrackerRuns",()=>g,"updateLinearRun",0,T,"updateTrackerRun",()=>T])},166224,e=>{"use strict";function t(e,t){return e.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||t}function r(e){var t;let r=a(e),i=r.issue.identifier,s=r.issue.title,n=r.issue.status,u=r.issue.assignee,o=r.runtime.knowledgeBaseRoot,c=r.runtime.issueKnowledgePath,d=r.runtime.isolatedWorktreePath,l="",p=e.runtime?.recapContent?.trim();p&&(l=`TICKET RECAP
113
+ ${p}`);let _=["TICKET EXECUTION","You are an engineer working through a single ticket from the project's issue tracker (Linear, Jira, or whichever tracker is configured). Work like a careful teammate: continue existing work when present, investigate before coding, present a plan before implementation, ask clarifying questions when requirements are ambiguous, and stop cleanly when blocked instead of guessing.",'TERMINOLOGY NOTE\n- "Ticket" / "issue" = the work item you are executing (from Linear, Jira, etc.)\n- "Task" in this project\'s UI = a scheduled or manual background task (cron jobs, automations) — NOT this ticket.\n- Do not confuse scheduled tasks with the ticket you are working on.',`INJECTED CONTEXT
114
+ - Ticket: ${i}
115
+ - Title: ${s}
116
+ - Current status: ${n}
117
+ - Current assignee: ${u}
118
+ - Project: ${r.project.label}
119
+ - Knowledge base root: ${o}
120
+ - Issue knowledge path: ${c}
121
+ - Suggested isolated worktree: ${d}
122
+ - Additional project resources such as repo knowledge, project memory, and project variables are injected separately by the active project context.`,`SOURCE REPOSITORIES
123
+ ${!(t=r.project.repos)||0===t.length?"- Use the active project context to discover the right repository or workspace; do not hardcode paths.":t.map(e=>{let t=[e.name.trim()||"repository"],r=String(e.path??"").trim(),a=String(e.notes??"").trim();return r&&t.push(`path: ${r}`),a&&t.push(`notes: ${a}`),`- ${t.join(" | ")}`}).join("\n")}`,"WORKFLOW\n1. Read the full issue and comment thread before acting. Use the issue tracker MCP for issue details, comments, state changes, and follow-up.\n2. Prefer resuming existing work: existing knowledge-base notes, branches, PRs, or prior discussion.\n3. If requirements are unclear, ask specific clarifying questions in the issue tracker and stop.\n4. If the ticket is fresh, investigate first, capture findings in the knowledge base, write a plan, and share the plan before implementation.\n5. If a reviewed plan already exists or the ticket is explicitly ready for implementation, implement in an isolated worktree or equivalent isolated workspace rather than a shared checkout.\n6. Validate with the appropriate tests, linting, type checks, and manual verification for the change.\n7. Keep the issue tracker accurate: comments, links, statuses, blockers, and PR references should match reality.\n8. Keep the knowledge base current with what you learned, what changed, and what remains.\n9. Work on exactly this ticket during this session.","RULES\n- Use the injected project context instead of hardcoded repo-specific paths or conventions.\n- Use knowledge base terminology; the filesystem path above is the storage location.\n- If a PR already exists, focus on CI failures, reviewer feedback, merge status, or ticket follow-up instead of starting over.\n- Leave the ticket and the knowledge base in a resumable state at the end of the session. Clean up temporary worktrees or session claims if your workflow created them."];return l&&_.splice(3,0,l),{prompt:`Work on this ticket: ${i} - ${s}`,promptPrefix:_.join("\n\n")+"\n\n"}}function a(e){var r;let a,i,s=e.issue.identifier.trim()||"TICKET-ID",n=e.issue.title.trim()||"Untitled ticket",u=String(e.issue.status??"").trim()||"Unknown",o=String(e.issue.assignee??"").trim()||"Unassigned",c=function(e){let r=String(e?.slug??"").trim();if(r)return t(r,"project");let a=String(e?.name??"").trim();return a?t(a,"project"):"project"}(e.project),d=String(e.project?.name??"").trim()||c,l=String(e.runtime?.knowledgeBaseRoot??"").trim()||`~/.agx/vault/${c}`,p=String(e.runtime?.issueKnowledgePath??"").trim()||`${l}/issues/${s}/`,_=String(e.runtime?.isolatedWorktreePath??"").trim()||`/tmp/agx-${t(s,"ticket")}`;return{issue:{identifier:s,title:n,status:u,assignee:o},project:{name:d,slug:c,label:(r=e.project,a=String(r?.name??"").trim(),i=String(r?.slug??"").trim(),a&&i?`${a} (${i})`:a||i||"current project"),repos:e.project?.repos?[...e.project.repos]:[]},runtime:{knowledgeBaseRoot:l,issueKnowledgePath:p,isolatedWorktreePath:_}}}function i(e,t){let r=a(t),i={"ticket.identifier":r.issue.identifier,"ticket.title":r.issue.title,"ticket.status":r.issue.status,"ticket.assignee":r.issue.assignee,"project.name":r.project.name,"project.slug":r.project.slug,"project.label":r.project.label,"knowledge_base.root":r.runtime.knowledgeBaseRoot,"knowledge_base.issue_path":r.runtime.issueKnowledgePath,"worktree.path":r.runtime.isolatedWorktreePath};return e.replace(/\{\{\s*([a-zA-Z0-9._-]+)\s*\}\}/g,(e,t)=>i[t]??"")}e.s(["buildTrackerExecutionPrompt",()=>r,"renderTrackerExecutionPromptTemplate",()=>i])},914284,e=>{"use strict";var t=e.i(522734),r=e.i(446786),a=e.i(814747);let i="latest.md";function s(e){return a.default.join(process.env.AGX_HOME??a.default.join(r.default.homedir(),".agx"),"linear",e,"recaps")}async function n(e,r){let n=s(e);await t.promises.mkdir(n,{recursive:!0});let u=new Date().toISOString().replace(/[:.]/g,"-")+".md",c=a.default.join(n,u);await t.promises.writeFile(c,r,"utf8");let d=a.default.join(n,i);try{await t.promises.unlink(d)}catch{}await t.promises.symlink(u,d),await o(n);let l=await t.promises.stat(c);return{filePath:c,latestPath:d,generatedAt:l.mtime}}async function u(e){let r=a.default.join(s(e),i);try{let e=await t.promises.stat(r);return{content:await t.promises.readFile(r,"utf8"),filePath:r,generatedAt:e.mtime}}catch{return null}}async function o(e){for(let r of(await t.promises.readdir(e)).filter(e=>e.endsWith(".md")&&e!==i).sort().reverse().slice(10))try{await t.promises.unlink(a.default.join(e,r))}catch{}}e.s(["readLatestRecap",()=>u,"writeRecap",()=>n])},471315,e=>{"use strict";e.i(712513);var t=e.i(744071),r=e.i(391310),a=e.i(166224),i=e.i(85e4),s=e.i(914284),n=e.i(601544),u=e.i(848159),o=e.i(565248),c=e.i(735330);async function d(e){let t=(await (0,r.loadDbParticipants)()).find(t=>t.id===e.agentId)??null;if(!t)throw Error(`Agent "${e.agentId}" could not be resolved for scripted tracker work.`);let n=await (0,s.readLatestRecap)(e.issue.id),u=await (0,i.createTrackerRun)({projectId:e.projectId??null,projectSlug:e.projectSlug??null,issueId:e.issue.id,issueIdentifier:e.issue.identifier,issueTitle:e.issue.title,issueStatus:e.issue.status,issueAssignee:e.issue.assignee??null,agentId:t.id,agentName:t.name,mode:"scripted",recapFilePath:n?.filePath??null});try{let r={issue:{identifier:e.issue.identifier,title:e.issue.title,status:e.issue.status,assignee:e.issue.assignee??null},project:e.projectSlug?{slug:e.projectSlug}:null,runtime:{recapContent:n?.content??null}},{prompt:s,promptPrefix:o}=(0,a.buildTrackerExecutionPrompt)(r),c=e.scriptPrompt?.trim()??"",d=e.scriptName?.trim()??"",p=c&&(0,a.renderTrackerExecutionPromptTemplate)(c,r).trim()||s,_=c?`${o}ACTIVE SESSION SCRIPT
124
+ - Name: ${d||"Custom script"}
125
+
126
+ `:o,{chatRunId:T,userMessageId:m}=await l({threadId:u.threadId,prompt:p,promptPrefix:_,projectSlug:e.projectSlug??null,participantId:t.id});return{run:u=await (0,i.updateTrackerRun)({id:u.id,chatRunId:T,rootMessageId:m})??u,chatRunId:T,userMessageId:m}}catch(e){throw await (0,i.updateTrackerRun)({id:u.id,status:"failed",error:e instanceof Error?e.message:String(e)}),e}}async function l(e){let a=(await (0,r.loadDbParticipants)()).find(t=>t.id===e.participantId)??null;if(!a)throw Error(`Participant "${e.participantId}" is unavailable.`);let i=(0,c.normalizeProjectSlug)(e.projectSlug),s=await (0,c.resolveProjectContext)(i,[],[a]),d=Date.now(),l=crypto.randomUUID(),p={id:l,role:"user",participantId:null,content:e.prompt,timestamp:d,rootMessageId:null,parentMessageId:null,depth:0};await (0,n.saveMessages)(e.threadId,[p]);let _=e.promptPrefix?`${e.promptPrefix}${e.prompt}`:e.prompt,T=crypto.randomUUID(),m={threadId:e.threadId,prompt:_,projectContext:s,mentionedIds:[],initialParallelIds:[],maxRounds:Math.min(Math.max(e.maxRounds??10,1),50),recentHistory:[],currentUserMessageId:l,rootMessageId:l,participantIds:[a.id]};await (0,n.createChatRun)({id:T,threadId:e.threadId,rootMessageId:l,userId:t.LOCAL_USER.id,projectSlug:i||null,maxSteps:m.maxRounds,activeParticipantIds:[a.id],payload:m}),await (0,u.ensureOrchestratorRuntime)();let g=await (0,o.getQueue)();return await g.send(o.QUEUE_NAMES.CHAT_RUN_PROCESS,{chatRunId:T,userId:t.LOCAL_USER.id,signal:"start"}),{chatRunId:T,userMessageId:l}}e.s(["startScriptedTrackerSession",()=>d])}];
127
+
128
+ //# sourceMappingURL=apps_local_8f9f647d._.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[526212,(e,o,d)=>{}];
2
+
3
+ //# sourceMappingURL=apps_local__next-internal_server_app_api_task-groups_%5Bid%5D_route_actions_b10cc67c.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[808283,(e,o,d)=>{}];
2
+
3
+ //# sourceMappingURL=apps_local__next-internal_server_app_api_task-groups_route_actions_0079ff4a.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[379824,(e,o,d)=>{}];
2
+
3
+ //# sourceMappingURL=apps_local__next-internal_server_app_api_tracker_notes_route_actions_b8a47be9.js.map
@@ -0,0 +1,3 @@
1
+ module.exports=[737919,(e,o,d)=>{}];
2
+
3
+ //# sourceMappingURL=apps_local__next-internal_server_app_api_update-check_route_actions_29ba83b6.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[84548,e=>{"use strict";function t(e,t){return`---
1
+ module.exports=[404258,e=>{"use strict";function t(e){let t=e?.trim();return t?t.replace(/\/+$/,""):null}let r="http://localhost:41741";function n(){return t(process.env.NEXT_PUBLIC_APP_URL)??t(process.env.AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_AGX_BOARD_URL)??r}function a(){return t(process.env.AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_APP_URL)??r}function o(){let e=new Set([r,"http://127.0.0.1:41741"]);for(let r of[process.env.NEXT_PUBLIC_APP_URL,process.env.AGX_BOARD_URL,process.env.NEXT_PUBLIC_AGX_BOARD_URL]){let n=t(r);n&&e.add(n)}return Array.from(e)}e.s(["getAllowedOrigins",()=>o,"getConfiguredAppBaseUrl",()=>n,"getConfiguredBoardBaseUrl",()=>a])},84548,e=>{"use strict";function t(e,t){return`---
2
2
  ${Object.entries(e).map(([e,t])=>`${e}: ${null==t?"":String(t)}`).join("\n")}
3
3
  ---
4
4
  ${t}`}e.s(["buildMarkdownWithFrontmatter",()=>t])},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])},471206,e=>{"use strict";var t=e.i(522734),r=e.i(446786),n=e.i(814747);let a=process.env.AGX_DATA_DIR||n.default.join(r.default.homedir(),".agx"),o=process.env.AGX_DEBUG_LOG_PATH||n.default.join(a,"logs","desktop-chat-debug.log");function s(e,t){return t instanceof Error?{name:t.name,message:t.message,stack:t.stack}:"string"==typeof t&&t.length>2e3?`${t.slice(0,2e3)}...<truncated>`:t}function i(){return o}function l(e,r){try{t.default.mkdirSync(n.default.dirname(o),{recursive:!0});let a=JSON.stringify({ts:new Date().toISOString(),pid:process.pid,event:e,...r?{payload:r}:{}},s);t.default.appendFileSync(o,`${a}
@@ -45,6 +45,6 @@ Current note:
45
45
  ${t||"(empty)"}
46
46
 
47
47
  Task:
48
- ${n}`,o="";try{await (0,r.runCliResponse)({provider:"claude",model:"claude-haiku-4-5-20251001",prompt:a,onDelta:e=>{o+=e}})}catch(e){return console.warn("[project-knowledge] LLM call failed:",e),[]}let s=o.trim().replace(/^```(?:json)?\s*/i,"").replace(/\s*```\s*$/,"").trim();try{let e=JSON.parse(s);if(!e||"object"!=typeof e||Array.isArray(e))return[];let t="string"==typeof e.updated_note?e.updated_note.trim():"";if(e.no_change||!t)return[];return[{updated_note:t,change_summary:"string"==typeof e.change_summary?e.change_summary.trim():void 0,no_change:!1}]}catch{return console.warn("[project-knowledge] Failed to parse LLM response:",s.slice(0,200)),[]}}async function v(e,t,r){if(0===r.length)return 0;let n=r[0];return n&&n.updated_note?.trim()?+!!(0,i.upsertKnowledgeNote)({scope:"project",subjectId:e,content:n.updated_note.trim(),changeSummary:n.change_summary,sourceType:"task_completion",sourceId:t,metadata:{task_id:t}}).changed:0}async function E(e,t,r){let n=await w(t);if(!n)return;let a=await y(r,(0,i.getKnowledgeNote)("project",n)?.content??"");if(0===a.length)return;let o=await v(n,e,a);o>0&&console.log(`[project-knowledge] Stored ${o} project knowledge entries for task ${e}`)}e.s(["extractAndStoreMemories",()=>h,"extractAndStoreProjectKnowledge",()=>E,"resolveMemoryAgentId",()=>_],582743)},689303,e=>{"use strict";var t=e.i(488877);function r(e){let r=[];for(let n of e){if(!n.id){let e=String(n.notes??"").trim();if(!e)continue;r.push({repoId:"",repoName:n.name,path:n.path??null,content:e,producer:"human"});continue}let e=t.vaultStore.getKnowledgeNote("repo",n.id),a=e?.content.trim()||String(n.notes??"").trim();a&&r.push({repoId:n.id,repoName:n.name,path:n.path??null,content:a,producer:"human"})}return r}e.s(["listResolvedRepoKnowledge",()=>r])},986488,e=>{"use strict";var t=e.i(173426),r=e.i(846888),n=e.i(764541),a=e.i(84548);async function o(e){let o=e.nowIso??new Date().toISOString(),s=(0,t.createAdminDbClient)(),i=await n.db.getTask(e.taskId,e.userId),l={status:e.status,stage:"PROGRESS",updated_at:o};if(Object.prototype.hasOwnProperty.call(e,"startedAt")&&(l.started_at=e.startedAt??null),Object.prototype.hasOwnProperty.call(e,"completedAt")&&(l.completed_at=e.completedAt??null),i){let{frontmatter:t,body:n}=(0,r.parseFrontmatter)(String(i.content||""));t.status=e.status,t.stage="PROGRESS",e.clearError&&delete t.error,l.content=(0,a.buildMarkdownWithFrontmatter)(t,n)}let d=s.from("tasks").update(l).eq("id",e.taskId);e.userId&&(d=d.eq("user_id",e.userId));let{error:u}=await d;if(u)throw u}e.s(["syncTaskProgressForGraphExecution",()=>o])},323218,e=>{"use strict";var t=e.i(254799),r=e.i(173426),n=e.i(779429),a=e.i(689303),o=e.i(33878),s=e.i(488877),i=e.i(582743),l=e.i(846888);async function d(e){let t=(0,r.createAdminDbClient)(),{data:n,error:a}=await t.from("task_comments").select("*").eq("task_id",e).is("deleted_at",null).order("created_at",{ascending:!0}).order("id",{ascending:!0});if(a){let e="string"==typeof a.message?a.message:"";if("42P01"===a.code||"PGRST205"===a.code||e.includes('relation "task_comments" does not exist')||e.includes("Could not find the table 'agx.task_comments'")||e.includes("Could not find the table 'public.task_comments'"))return[];throw a}return n||[]}async function u(e){let t=(0,r.createAdminDbClient)(),n=e.user_id,a=t.from("learnings").select("*").eq("scope","task").eq("scope_id",e.id);n&&a.eq("user_id",n);let[{data:o,error:i}]=await Promise.all([a]);if(i)throw i;return{task:o||[],project:[],global:s.vaultStore.getLearnings("global")||[]}}async function c(e){let t,n=e.stage;if(!n)return{prompt:null};let a=(0,r.createAdminDbClient)(),o=(t=e.workflow_id)&&/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(t)?e.workflow_id:"";if(!o&&e.project_id)try{let t=await (0,l.getProjectWithRepos)(e.project_id,e.user_id);t?.workflow_id&&(o=t.workflow_id)}catch{}o||(o=l.DEFAULT_WORKFLOW_ID);try{let{data:e,error:t}=await a.from("workflow_nodes").select("*").eq("workflow_id",o).eq("name",n).maybeSingle();if(!t&&e){let t=e.metadata&&"object"==typeof e.metadata?e.metadata:{},r="boolean"==typeof t.swarm&&t.swarm,n=Array.isArray(t.swarm_models)?t.swarm_models:void 0;if(e.prompt)return{prompt:e.prompt,swarm:r,provider:e.provider||void 0,model:e.model||void 0,swarm_models:n};return{prompt:null,swarm:r,provider:e.provider||void 0,model:e.model||void 0,swarm_models:n}}}catch{}try{let t=[];t.push(a.from("stage_prompts").select("*").eq("stage",n).eq("is_default",!0).eq("workflow_id",o).maybeSingle()),e.user_id&&t.push(a.from("stage_prompts").select("*").eq("stage",n).eq("user_id",e.user_id).eq("workflow_id",o).maybeSingle());let r=await Promise.all(t),s=r[0]?.data||null,i=e.user_id?r[1]?.data:null,l=i?.prompt||s?.prompt||null;if(l)return{prompt:l,swarm:i?.swarm??s?.swarm??!1,provider:i?.provider||s?.provider,model:i?.model||s?.model,swarm_models:i?.swarm_models||s?.swarm_models}}catch{}let s=l.defaultStagePrompts[n];return s?.prompt?{prompt:s.prompt,swarm:s.swarm??!1,provider:s.provider,model:s.model,swarm_models:s.swarm_models}:{prompt:null}}async function p(e,t){let r=e.project_id,n=e.project||void 0,s=null;if(r&&(s=await (0,l.getProjectWithRepos)(r,e.user_id)),!s&&n){let t=await (0,l.getProjectBySlug)(n,e.user_id);if(t){let e=await (0,l.getProjectRepos)(t.id);s={...t,repos:e}}}if(!s)return null;let i=await (0,l.getProjectMemory)(s.id,"human"),d=(0,o.getKnowledgeNote)("project",s.id);if(s.repos.length>0){let e=(0,a.listResolvedRepoKnowledge)(s.repos),t=new Map;for(let r of e){if(!r.repoId)continue;let e="system"===r.producer?`[System-generated] ${r.content}`:r.content,n=t.get(r.repoId)??[];n.push(e),t.set(r.repoId,n)}s={...s,repos:s.repos.map(e=>({...e,notes:t.has(e.id)?t.get(e.id).join("\n\n"):e.notes}))}}return{project:s,repos:s.repos??[],learnings:[...i.map(e=>e.content),...d?.content?[`[System-generated] ${d.content}`]:[]]}}async function m(e){let r,[a,o,s,m]=await Promise.all([d(e.id),u(e),c(e),e.user_id?(0,l.getUserSettings)(e.user_id):Promise.resolve(null)]),g=await p(e,o.project),{frontmatter:_}=(0,l.parseFrontmatter)(e.content),f=(0,i.resolveMemoryAgentId)({defaultUserId:e.user_id||"system",frontmatter:_}),h=_.no_memory?[]:function(e,t=5){try{return(0,n.getSQLiteDb)().prepare("SELECT content FROM agent_memory WHERE agent_id = ? ORDER BY created_at DESC LIMIT ?").all(e,t).map(e=>e.content)}catch{return[]}}(f),w=(r=JSON.stringify(a.map(e=>({id:e.id,task_id:e.task_id,author_type:e.author_type||null,author_id:e.author_id||null,content:e.content||"",created_at:e.created_at||null}))),(0,t.createHash)("sha256").update(r).digest("hex")),y="string"==typeof e.stage&&e.stage.trim()?e.stage.trim():"",v=s.prompt??null,E={};if(v&&y){E[y]=v;let e=y.toLowerCase();E[e]||(E[e]=v)}let S=v&&y?[{stage:y,prompt:v}]:[];return{comments:a,learnings:o,agent_memories:h,stage_config:s,stage_prompt:v,stage_prompts:E,stage_objective:v,stageObjective:v,stagePrompts:S,project_context:g,comments_digest:w,user_settings:m}}e.s(["buildTaskContext",()=>m])},404258,e=>{"use strict";function t(e){let t=e?.trim();return t?t.replace(/\/+$/,""):null}let r="http://localhost:41741";function n(){return t(process.env.NEXT_PUBLIC_APP_URL)??t(process.env.AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_AGX_BOARD_URL)??r}function a(){return t(process.env.AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_AGX_BOARD_URL)??t(process.env.NEXT_PUBLIC_APP_URL)??r}function o(){let e=new Set([r,"http://127.0.0.1:41741"]);for(let r of[process.env.NEXT_PUBLIC_APP_URL,process.env.AGX_BOARD_URL,process.env.NEXT_PUBLIC_AGX_BOARD_URL]){let n=t(r);n&&e.add(n)}return Array.from(e)}e.s(["getAllowedOrigins",()=>o,"getConfiguredAppBaseUrl",()=>n,"getConfiguredBoardBaseUrl",()=>a])},828032,e=>{"use strict";e.i(254799);var t=e.i(404258),r=e.i(173426);let n=[/rm\s+(-rf?|--recursive)\s+[\/~]/i,/rm\s+-rf?\s+\*/i,/chmod\s+(777|a\+rwx)/i,/chown\s+.*\s+\//i,/>\s*\/dev\/sd[a-z]/i,/\.env/i,/credentials?\.json/i,/api[_-]?key/i,/secret[_-]?key/i,/private[_-]?key/i,/password/i,/curl.*\|\s*(ba)?sh/i,/wget.*\|\s*(ba)?sh/i,/nc\s+-l/i,/socat/i,/sudo\s+/i,/su\s+-/i,/mkfs\./i,/dd\s+if=/i,/eval\s*\(/i,/exec\s*\(/i,/child_process/i,/__import__/i,/base64.*>/i,/xxd/i,/tar.*-c.*\|.*curl/i];function a(e){let t=[];for(let r of n)r.test(e)&&t.push(r.source);let r="low";return/rm\s+(-rf?|--recursive)\s*[\/~\*]|sudo\s+|mkfs\.|dd\s+if=/i.test(e)?r="critical":/curl.*\|\s*(ba)?sh|wget.*\|\s*(ba)?sh|chmod\s+(777|a\+rwx)|\.env\b/i.test(e)?r="high":/password|api[_-]?key|secret[_-]?key|private[_-]?key|credentials?\.json/i.test(e)&&(r="medium"),{isDangerous:t.length>0,patterns:t,severity:r}}async function o(e){let t=(0,r.createAdminDbClient)(),{data:n,error:a}=await t.from("task_audit_log").insert({user_id:e.user_id,task_id:e.task_id,action:e.action,payload:e.payload,signature:e.signature,ip_address:e.ip_address,user_agent:e.user_agent,result:e.result||"pending"}).select("id").single();if(a)throw console.error("Failed to write audit log:",a),Error("Audit log write failed");return n.id}let s=["https://agx-cloud.vercel.app",...(0,t.getAllowedOrigins)()];function i(e){return!!e&&s.includes(e)}async function l(e){if(!e?.startsWith("Bearer "))return{valid:!1};let t=e.slice(7),n=(0,r.createAdminDbClient)(),{data:{user:a},error:o}=await n.auth.getUser(t);return o||!a?{valid:!1}:{valid:!0,userId:a.id}}e.s(["detectDangerousOperations",()=>a,"isValidOrigin",()=>i,"validateBearerToken",()=>l,"writeAuditLog",()=>o])},693295,e=>{"use strict";var t=e.i(692988),r=e.i(635595),n=e.i(75473),a=e.i(923435),o=e.i(418475),s=e.i(303482),i=e.i(976287),l=e.i(774462),d=e.i(111998),u=e.i(201516),c=e.i(68877),p=e.i(259460),m=e.i(257714),g=e.i(502073),_=e.i(187345),f=e.i(193695);e.i(293777);var h=e.i(274321),w=e.i(732470),y=e.i(846888),v=e.i(173426),E=e.i(828032),S=e.i(323218),R=e.i(744071),A=e.i(353476),T=e.i(986488);async function k(e){try{let t=R.LOCAL_USER.id,{searchParams:r}=new URL(e.url),n=r.get("engine")||void 0,a=(0,v.createAdminDbClient)(),o=a.from("tasks").select("*").eq("user_id",t).eq("status","queued").neq("stage","done").order("priority",{ascending:!0,nullsFirst:!1}).order("created_at",{ascending:!0}).limit(25);n&&(o=o.eq("engine",n));let{data:s,error:i}=await o;if(i)throw i;let l=null;if(Array.isArray(s)){for(let e of s)if(!(await (0,A.getMissingDependencies)(e,t)).length){l=e;break}}if(!l)return w.NextResponse.json({task:null,message:"No tasks in queue"});let d=new Date().toISOString(),u=l;if("in_progress"!==l.status){let e={status:"in_progress",updated_at:d};l.started_at||(e.started_at=d),l.graph_id?(await (0,T.syncTaskProgressForGraphExecution)({taskId:l.id,userId:t,status:"in_progress",nowIso:d,startedAt:l.started_at||d}),e.stage="PROGRESS"):await a.from("tasks").update(e).eq("id",l.id).eq("user_id",t),u={...l,...e}}let c=await (0,S.buildTaskContext)(u),{comments_digest:p,stage_config:m,user_settings:g}=c,_=(0,y.resolveTaskConfig)(u,m,g),f=e.headers.get("x-forwarded-for")?.split(",")[0].trim()||e.headers.get("x-real-ip")||void 0,h=e.headers.get("user-agent")||void 0;await (0,E.writeAuditLog)({user_id:t,task_id:u.id,action:"execute",payload:{title:u.title,stage:u.stage,engine:u.engine,provider:_.provider,model:_.model??void 0,swarm:_.swarm,swarm_models:_.swarm_models},signature:"unsigned",ip_address:f,user_agent:h,result:"pending"});let k={...u,..._,...c};return w.NextResponse.json({task:k,stage_prompt:k.stage_prompt,stage_prompts:k.stage_prompts,stage_objective:k.stage_objective,stageObjective:k.stageObjective,stagePrompts:k.stagePrompts})}catch(e){return console.error("Error pulling from queue:",e),w.NextResponse.json({error:"Failed to pull from queue"},{status:500})}}e.s(["GET",()=>k],3546);var O=e.i(3546);let C=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/queue/route",pathname:"/api/queue",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/local/app/api/queue/route.ts",nextConfigOutput:"standalone",userland:O}),{workAsyncStorage:I,workUnitAsyncStorage:b,serverHooks:L}=C;function N(){return(0,n.patchFetch)({workAsyncStorage:I,workUnitAsyncStorage:b})}async function M(e,t,n){C.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/queue/route";w=w.replace(/\/index$/,"")||"/";let y=await C.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:v,params:E,nextConfig:S,parsedUrl:R,isDraftMode:A,prerenderManifest:T,routerServerContext:k,isOnDemandRevalidate:O,revalidateOnlyGenerated:I,resolvedPathname:b,clientReferenceManifest:L,serverActionsManifest:N}=y,M=(0,i.normalizeAppPath)(w),P=!!(T.dynamicRoutes[M]||T.routes[b]),D=async()=>((null==k?void 0:k.render404)?await k.render404(e,t,R,!1):t.end("This page could not be found"),null);if(P&&!A){let e=!!T.routes[b],t=T.dynamicRoutes[M];if(t&&!1===t.fallback&&!e){if(S.experimental.adapterPath)return await D();throw new f.NoFallbackError}}let U=null;!P||C.isDev||A||(U="/index"===(U=b)?"/":U);let x=!0===C.isDev||!P,j=P&&!x;N&&L&&(0,s.setManifestsSingleton)({page:w,clientReferenceManifest:L,serverActionsManifest:N});let q=e.method||"GET",H=(0,o.getTracer)(),$=H.getActiveScopeSpan(),K={params:E,prerenderManifest:T,renderOpts:{experimental:{authInterrupts:!!S.experimental.authInterrupts},cacheComponents:!!S.cacheComponents,supportsDynamicResponse:x,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:S.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>C.onRequestError(e,t,n,a,k)},sharedContext:{buildId:v}},B=new l.NodeNextRequest(e),F=new l.NodeNextResponse(t),G=d.NextRequestAdapter.fromNodeNextRequest(B,(0,d.signalFromNodeResponse)(t));try{let s=async e=>C.handle(G,K).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${q} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${q} ${w}`)}),i=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var o,l;let d=async({previousCacheEntry:r})=>{try{if(!i&&O&&I&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await s(a);e.fetchMetrics=K.renderOpts.fetchMetrics;let l=K.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let d=K.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(B,F,o,K.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(o.headers);d&&(t[_.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==K.renderOpts.collectedRevalidate&&!(K.renderOpts.collectedRevalidate>=_.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,n=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=_.INFINITE_CACHE?void 0:K.renderOpts.collectedExpire;return{value:{kind:h.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await C.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:O})},!1,k),t}},u=await C.handleResponse({req:e,nextConfig:S,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:T,isRoutePPREnabled:!1,isOnDemandRevalidate:O,revalidateOnlyGenerated:I,responseGenerator:d,waitUntil:n.waitUntil,isMinimalMode:i});if(!P)return null;if((null==u||null==(o=u.value)?void 0:o.kind)!==h.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(l=u.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",O?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let f=(0,m.fromNodeOutgoingHttpHeaders)(u.value.headers);return i&&P||f.delete(_.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||f.get("Cache-Control")||f.set("Cache-Control",(0,g.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(B,F,new Response(u.value.body,{headers:f,status:u.value.status||200})),null};$?await l($):await H.withPropagatedContext(e.headers,()=>H.trace(u.BaseServerSpan.handleRequest,{spanName:`${q} ${w}`,kind:o.SpanKind.SERVER,attributes:{"http.method":q,"http.target":e.url}},l))}catch(t){if(t instanceof f.NoFallbackError||await C.onRequestError(e,t,{routerKind:"App Router",routePath:M,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:O})},!1,k),P)throw t;return await (0,p.sendResponse)(B,F,new Response(null,{status:500})),null}}e.s(["handler",()=>M,"patchFetch",()=>N,"routeModule",()=>C,"serverHooks",()=>L,"workAsyncStorage",()=>I,"workUnitAsyncStorage",()=>b],693295)}];
48
+ ${n}`,o="";try{await (0,r.runCliResponse)({provider:"claude",model:"claude-haiku-4-5-20251001",prompt:a,onDelta:e=>{o+=e}})}catch(e){return console.warn("[project-knowledge] LLM call failed:",e),[]}let s=o.trim().replace(/^```(?:json)?\s*/i,"").replace(/\s*```\s*$/,"").trim();try{let e=JSON.parse(s);if(!e||"object"!=typeof e||Array.isArray(e))return[];let t="string"==typeof e.updated_note?e.updated_note.trim():"";if(e.no_change||!t)return[];return[{updated_note:t,change_summary:"string"==typeof e.change_summary?e.change_summary.trim():void 0,no_change:!1}]}catch{return console.warn("[project-knowledge] Failed to parse LLM response:",s.slice(0,200)),[]}}async function v(e,t,r){if(0===r.length)return 0;let n=r[0];return n&&n.updated_note?.trim()?+!!(0,i.upsertKnowledgeNote)({scope:"project",subjectId:e,content:n.updated_note.trim(),changeSummary:n.change_summary,sourceType:"task_completion",sourceId:t,metadata:{task_id:t}}).changed:0}async function E(e,t,r){let n=await w(t);if(!n)return;let a=await y(r,(0,i.getKnowledgeNote)("project",n)?.content??"");if(0===a.length)return;let o=await v(n,e,a);o>0&&console.log(`[project-knowledge] Stored ${o} project knowledge entries for task ${e}`)}e.s(["extractAndStoreMemories",()=>h,"extractAndStoreProjectKnowledge",()=>E,"resolveMemoryAgentId",()=>_],582743)},689303,e=>{"use strict";var t=e.i(488877);function r(e){let r=[];for(let n of e){if(!n.id){let e=String(n.notes??"").trim();if(!e)continue;r.push({repoId:"",repoName:n.name,path:n.path??null,content:e,producer:"human"});continue}let e=t.vaultStore.getKnowledgeNote("repo",n.id),a=e?.content.trim()||String(n.notes??"").trim();a&&r.push({repoId:n.id,repoName:n.name,path:n.path??null,content:a,producer:"human"})}return r}e.s(["listResolvedRepoKnowledge",()=>r])},986488,e=>{"use strict";var t=e.i(173426),r=e.i(846888),n=e.i(764541),a=e.i(84548);async function o(e){let o=e.nowIso??new Date().toISOString(),s=(0,t.createAdminDbClient)(),i=await n.db.getTask(e.taskId,e.userId),l={status:e.status,stage:"PROGRESS",updated_at:o};if(Object.prototype.hasOwnProperty.call(e,"startedAt")&&(l.started_at=e.startedAt??null),Object.prototype.hasOwnProperty.call(e,"completedAt")&&(l.completed_at=e.completedAt??null),i){let{frontmatter:t,body:n}=(0,r.parseFrontmatter)(String(i.content||""));t.status=e.status,t.stage="PROGRESS",e.clearError&&delete t.error,l.content=(0,a.buildMarkdownWithFrontmatter)(t,n)}let d=s.from("tasks").update(l).eq("id",e.taskId);e.userId&&(d=d.eq("user_id",e.userId));let{error:u}=await d;if(u)throw u}e.s(["syncTaskProgressForGraphExecution",()=>o])},323218,e=>{"use strict";var t=e.i(254799),r=e.i(173426),n=e.i(779429),a=e.i(689303),o=e.i(33878),s=e.i(488877),i=e.i(582743),l=e.i(846888);async function d(e){let t=(0,r.createAdminDbClient)(),{data:n,error:a}=await t.from("task_comments").select("*").eq("task_id",e).is("deleted_at",null).order("created_at",{ascending:!0}).order("id",{ascending:!0});if(a){let e="string"==typeof a.message?a.message:"";if("42P01"===a.code||"PGRST205"===a.code||e.includes('relation "task_comments" does not exist')||e.includes("Could not find the table 'agx.task_comments'")||e.includes("Could not find the table 'public.task_comments'"))return[];throw a}return n||[]}async function u(e){let t=(0,r.createAdminDbClient)(),n=e.user_id,a=t.from("learnings").select("*").eq("scope","task").eq("scope_id",e.id);n&&a.eq("user_id",n);let[{data:o,error:i}]=await Promise.all([a]);if(i)throw i;return{task:o||[],project:[],global:s.vaultStore.getLearnings("global")||[]}}async function c(e){let t,n=e.stage;if(!n)return{prompt:null};let a=(0,r.createAdminDbClient)(),o=(t=e.workflow_id)&&/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(t)?e.workflow_id:"";if(!o&&e.project_id)try{let t=await (0,l.getProjectWithRepos)(e.project_id,e.user_id);t?.workflow_id&&(o=t.workflow_id)}catch{}o||(o=l.DEFAULT_WORKFLOW_ID);try{let{data:e,error:t}=await a.from("workflow_nodes").select("*").eq("workflow_id",o).eq("name",n).maybeSingle();if(!t&&e){let t=e.metadata&&"object"==typeof e.metadata?e.metadata:{},r="boolean"==typeof t.swarm&&t.swarm,n=Array.isArray(t.swarm_models)?t.swarm_models:void 0;if(e.prompt)return{prompt:e.prompt,swarm:r,provider:e.provider||void 0,model:e.model||void 0,swarm_models:n};return{prompt:null,swarm:r,provider:e.provider||void 0,model:e.model||void 0,swarm_models:n}}}catch{}try{let t=[];t.push(a.from("stage_prompts").select("*").eq("stage",n).eq("is_default",!0).eq("workflow_id",o).maybeSingle()),e.user_id&&t.push(a.from("stage_prompts").select("*").eq("stage",n).eq("user_id",e.user_id).eq("workflow_id",o).maybeSingle());let r=await Promise.all(t),s=r[0]?.data||null,i=e.user_id?r[1]?.data:null,l=i?.prompt||s?.prompt||null;if(l)return{prompt:l,swarm:i?.swarm??s?.swarm??!1,provider:i?.provider||s?.provider,model:i?.model||s?.model,swarm_models:i?.swarm_models||s?.swarm_models}}catch{}let s=l.defaultStagePrompts[n];return s?.prompt?{prompt:s.prompt,swarm:s.swarm??!1,provider:s.provider,model:s.model,swarm_models:s.swarm_models}:{prompt:null}}async function p(e,t){let r=e.project_id,n=e.project||void 0,s=null;if(r&&(s=await (0,l.getProjectWithRepos)(r,e.user_id)),!s&&n){let t=await (0,l.getProjectBySlug)(n,e.user_id);if(t){let e=await (0,l.getProjectRepos)(t.id);s={...t,repos:e}}}if(!s)return null;let i=await (0,l.getProjectMemory)(s.id,"human"),d=(0,o.getKnowledgeNote)("project",s.id);if(s.repos.length>0){let e=(0,a.listResolvedRepoKnowledge)(s.repos),t=new Map;for(let r of e){if(!r.repoId)continue;let e="system"===r.producer?`[System-generated] ${r.content}`:r.content,n=t.get(r.repoId)??[];n.push(e),t.set(r.repoId,n)}s={...s,repos:s.repos.map(e=>({...e,notes:t.has(e.id)?t.get(e.id).join("\n\n"):e.notes}))}}return{project:s,repos:s.repos??[],learnings:[...i.map(e=>e.content),...d?.content?[`[System-generated] ${d.content}`]:[]]}}async function m(e){let r,[a,o,s,m]=await Promise.all([d(e.id),u(e),c(e),e.user_id?(0,l.getUserSettings)(e.user_id):Promise.resolve(null)]),g=await p(e,o.project),{frontmatter:_}=(0,l.parseFrontmatter)(e.content),f=(0,i.resolveMemoryAgentId)({defaultUserId:e.user_id||"system",frontmatter:_}),h=_.no_memory?[]:function(e,t=5){try{return(0,n.getSQLiteDb)().prepare("SELECT content FROM agent_memory WHERE agent_id = ? ORDER BY created_at DESC LIMIT ?").all(e,t).map(e=>e.content)}catch{return[]}}(f),w=(r=JSON.stringify(a.map(e=>({id:e.id,task_id:e.task_id,author_type:e.author_type||null,author_id:e.author_id||null,content:e.content||"",created_at:e.created_at||null}))),(0,t.createHash)("sha256").update(r).digest("hex")),y="string"==typeof e.stage&&e.stage.trim()?e.stage.trim():"",v=s.prompt??null,E={};if(v&&y){E[y]=v;let e=y.toLowerCase();E[e]||(E[e]=v)}let S=v&&y?[{stage:y,prompt:v}]:[];return{comments:a,learnings:o,agent_memories:h,stage_config:s,stage_prompt:v,stage_prompts:E,stage_objective:v,stageObjective:v,stagePrompts:S,project_context:g,comments_digest:w,user_settings:m}}e.s(["buildTaskContext",()=>m])},828032,e=>{"use strict";e.i(254799);var t=e.i(404258),r=e.i(173426);let n=[/rm\s+(-rf?|--recursive)\s+[\/~]/i,/rm\s+-rf?\s+\*/i,/chmod\s+(777|a\+rwx)/i,/chown\s+.*\s+\//i,/>\s*\/dev\/sd[a-z]/i,/\.env/i,/credentials?\.json/i,/api[_-]?key/i,/secret[_-]?key/i,/private[_-]?key/i,/password/i,/curl.*\|\s*(ba)?sh/i,/wget.*\|\s*(ba)?sh/i,/nc\s+-l/i,/socat/i,/sudo\s+/i,/su\s+-/i,/mkfs\./i,/dd\s+if=/i,/eval\s*\(/i,/exec\s*\(/i,/child_process/i,/__import__/i,/base64.*>/i,/xxd/i,/tar.*-c.*\|.*curl/i];function a(e){let t=[];for(let r of n)r.test(e)&&t.push(r.source);let r="low";return/rm\s+(-rf?|--recursive)\s*[\/~\*]|sudo\s+|mkfs\.|dd\s+if=/i.test(e)?r="critical":/curl.*\|\s*(ba)?sh|wget.*\|\s*(ba)?sh|chmod\s+(777|a\+rwx)|\.env\b/i.test(e)?r="high":/password|api[_-]?key|secret[_-]?key|private[_-]?key|credentials?\.json/i.test(e)&&(r="medium"),{isDangerous:t.length>0,patterns:t,severity:r}}async function o(e){let t=(0,r.createAdminDbClient)(),{data:n,error:a}=await t.from("task_audit_log").insert({user_id:e.user_id,task_id:e.task_id,action:e.action,payload:e.payload,signature:e.signature,ip_address:e.ip_address,user_agent:e.user_agent,result:e.result||"pending"}).select("id").single();if(a)throw console.error("Failed to write audit log:",a),Error("Audit log write failed");return n.id}let s=["https://agx-cloud.vercel.app",...(0,t.getAllowedOrigins)()];function i(e){return!!e&&s.includes(e)}async function l(e){if(!e?.startsWith("Bearer "))return{valid:!1};let t=e.slice(7),n=(0,r.createAdminDbClient)(),{data:{user:a},error:o}=await n.auth.getUser(t);return o||!a?{valid:!1}:{valid:!0,userId:a.id}}e.s(["detectDangerousOperations",()=>a,"isValidOrigin",()=>i,"validateBearerToken",()=>l,"writeAuditLog",()=>o])},693295,e=>{"use strict";var t=e.i(692988),r=e.i(635595),n=e.i(75473),a=e.i(923435),o=e.i(418475),s=e.i(303482),i=e.i(976287),l=e.i(774462),d=e.i(111998),u=e.i(201516),c=e.i(68877),p=e.i(259460),m=e.i(257714),g=e.i(502073),_=e.i(187345),f=e.i(193695);e.i(293777);var h=e.i(274321),w=e.i(732470),y=e.i(846888),v=e.i(173426),E=e.i(828032),S=e.i(323218),R=e.i(744071),A=e.i(353476),T=e.i(986488);async function k(e){try{let t=R.LOCAL_USER.id,{searchParams:r}=new URL(e.url),n=r.get("engine")||void 0,a=(0,v.createAdminDbClient)(),o=a.from("tasks").select("*").eq("user_id",t).eq("status","queued").neq("stage","done").order("priority",{ascending:!0,nullsFirst:!1}).order("created_at",{ascending:!0}).limit(25);n&&(o=o.eq("engine",n));let{data:s,error:i}=await o;if(i)throw i;let l=null;if(Array.isArray(s)){for(let e of s)if(!(await (0,A.getMissingDependencies)(e,t)).length){l=e;break}}if(!l)return w.NextResponse.json({task:null,message:"No tasks in queue"});let d=new Date().toISOString(),u=l;if("in_progress"!==l.status){let e={status:"in_progress",updated_at:d};l.started_at||(e.started_at=d),l.graph_id?(await (0,T.syncTaskProgressForGraphExecution)({taskId:l.id,userId:t,status:"in_progress",nowIso:d,startedAt:l.started_at||d}),e.stage="PROGRESS"):await a.from("tasks").update(e).eq("id",l.id).eq("user_id",t),u={...l,...e}}let c=await (0,S.buildTaskContext)(u),{comments_digest:p,stage_config:m,user_settings:g}=c,_=(0,y.resolveTaskConfig)(u,m,g),f=e.headers.get("x-forwarded-for")?.split(",")[0].trim()||e.headers.get("x-real-ip")||void 0,h=e.headers.get("user-agent")||void 0;await (0,E.writeAuditLog)({user_id:t,task_id:u.id,action:"execute",payload:{title:u.title,stage:u.stage,engine:u.engine,provider:_.provider,model:_.model??void 0,swarm:_.swarm,swarm_models:_.swarm_models},signature:"unsigned",ip_address:f,user_agent:h,result:"pending"});let k={...u,..._,...c};return w.NextResponse.json({task:k,stage_prompt:k.stage_prompt,stage_prompts:k.stage_prompts,stage_objective:k.stage_objective,stageObjective:k.stageObjective,stagePrompts:k.stagePrompts})}catch(e){return console.error("Error pulling from queue:",e),w.NextResponse.json({error:"Failed to pull from queue"},{status:500})}}e.s(["GET",()=>k],3546);var O=e.i(3546);let C=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/queue/route",pathname:"/api/queue",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/apps/local/app/api/queue/route.ts",nextConfigOutput:"standalone",userland:O}),{workAsyncStorage:I,workUnitAsyncStorage:b,serverHooks:L}=C;function N(){return(0,n.patchFetch)({workAsyncStorage:I,workUnitAsyncStorage:b})}async function M(e,t,n){C.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let w="/api/queue/route";w=w.replace(/\/index$/,"")||"/";let y=await C.prepare(e,t,{srcPage:w,multiZoneDraftMode:!1});if(!y)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:v,params:E,nextConfig:S,parsedUrl:R,isDraftMode:A,prerenderManifest:T,routerServerContext:k,isOnDemandRevalidate:O,revalidateOnlyGenerated:I,resolvedPathname:b,clientReferenceManifest:L,serverActionsManifest:N}=y,M=(0,i.normalizeAppPath)(w),P=!!(T.dynamicRoutes[M]||T.routes[b]),D=async()=>((null==k?void 0:k.render404)?await k.render404(e,t,R,!1):t.end("This page could not be found"),null);if(P&&!A){let e=!!T.routes[b],t=T.dynamicRoutes[M];if(t&&!1===t.fallback&&!e){if(S.experimental.adapterPath)return await D();throw new f.NoFallbackError}}let U=null;!P||C.isDev||A||(U="/index"===(U=b)?"/":U);let x=!0===C.isDev||!P,j=P&&!x;N&&L&&(0,s.setManifestsSingleton)({page:w,clientReferenceManifest:L,serverActionsManifest:N});let q=e.method||"GET",H=(0,o.getTracer)(),$=H.getActiveScopeSpan(),K={params:E,prerenderManifest:T,renderOpts:{experimental:{authInterrupts:!!S.experimental.authInterrupts},cacheComponents:!!S.cacheComponents,supportsDynamicResponse:x,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:S.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>C.onRequestError(e,t,n,a,k)},sharedContext:{buildId:v}},B=new l.NodeNextRequest(e),F=new l.NodeNextResponse(t),G=d.NextRequestAdapter.fromNodeNextRequest(B,(0,d.signalFromNodeResponse)(t));try{let s=async e=>C.handle(G,K).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=H.getRootSpanAttributes();if(!r)return;if(r.get("next.span_type")!==u.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${r.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=r.get("next.route");if(n){let t=`${q} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${q} ${w}`)}),i=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var o,l;let d=async({previousCacheEntry:r})=>{try{if(!i&&O&&I&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let o=await s(a);e.fetchMetrics=K.renderOpts.fetchMetrics;let l=K.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let d=K.renderOpts.collectedTags;if(!P)return await (0,p.sendResponse)(B,F,o,K.renderOpts.pendingWaitUntil),null;{let e=await o.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(o.headers);d&&(t[_.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==K.renderOpts.collectedRevalidate&&!(K.renderOpts.collectedRevalidate>=_.INFINITE_CACHE)&&K.renderOpts.collectedRevalidate,n=void 0===K.renderOpts.collectedExpire||K.renderOpts.collectedExpire>=_.INFINITE_CACHE?void 0:K.renderOpts.collectedExpire;return{value:{kind:h.CachedRouteKind.APP_ROUTE,status:o.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await C.onRequestError(e,t,{routerKind:"App Router",routePath:w,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:O})},!1,k),t}},u=await C.handleResponse({req:e,nextConfig:S,cacheKey:U,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:T,isRoutePPREnabled:!1,isOnDemandRevalidate:O,revalidateOnlyGenerated:I,responseGenerator:d,waitUntil:n.waitUntil,isMinimalMode:i});if(!P)return null;if((null==u||null==(o=u.value)?void 0:o.kind)!==h.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==u||null==(l=u.value)?void 0:l.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});i||t.setHeader("x-nextjs-cache",O?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),A&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let f=(0,m.fromNodeOutgoingHttpHeaders)(u.value.headers);return i&&P||f.delete(_.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||f.get("Cache-Control")||f.set("Cache-Control",(0,g.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(B,F,new Response(u.value.body,{headers:f,status:u.value.status||200})),null};$?await l($):await H.withPropagatedContext(e.headers,()=>H.trace(u.BaseServerSpan.handleRequest,{spanName:`${q} ${w}`,kind:o.SpanKind.SERVER,attributes:{"http.method":q,"http.target":e.url}},l))}catch(t){if(t instanceof f.NoFallbackError||await C.onRequestError(e,t,{routerKind:"App Router",routePath:M,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:j,isOnDemandRevalidate:O})},!1,k),P)throw t;return await (0,p.sendResponse)(B,F,new Response(null,{status:500})),null}}e.s(["handler",()=>M,"patchFetch",()=>N,"routeModule",()=>C,"serverHooks",()=>L,"workAsyncStorage",()=>I,"workUnitAsyncStorage",()=>b],693295)}];
49
49
 
50
- //# sourceMappingURL=apps_local_3e0a6a05._.js.map
50
+ //# sourceMappingURL=apps_local_a15e73a6._.js.map
@@ -0,0 +1,109 @@
1
+ module.exports=[280948,153703,e=>{"use strict";function t(e,t){return e.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"")||t}function r(e){var t;let r=a(e),i=r.issue.identifier,s=r.issue.title,n=r.issue.status,o=r.issue.assignee,u=r.runtime.knowledgeBaseRoot,c=r.runtime.issueKnowledgePath,d=r.runtime.isolatedWorktreePath,l="",p=e.runtime?.recapContent?.trim();p&&(l=`TICKET RECAP
2
+ ${p}`);let _=["TICKET EXECUTION","You are an engineer working through a single ticket from the project's issue tracker (Linear, Jira, or whichever tracker is configured). Work like a careful teammate: continue existing work when present, investigate before coding, present a plan before implementation, ask clarifying questions when requirements are ambiguous, and stop cleanly when blocked instead of guessing.",'TERMINOLOGY NOTE\n- "Ticket" / "issue" = the work item you are executing (from Linear, Jira, etc.)\n- "Task" in this project\'s UI = a scheduled or manual background task (cron jobs, automations) — NOT this ticket.\n- Do not confuse scheduled tasks with the ticket you are working on.',`INJECTED CONTEXT
3
+ - Ticket: ${i}
4
+ - Title: ${s}
5
+ - Current status: ${n}
6
+ - Current assignee: ${o}
7
+ - Project: ${r.project.label}
8
+ - Knowledge base root: ${u}
9
+ - Issue knowledge path: ${c}
10
+ - Suggested isolated worktree: ${d}
11
+ - Additional project resources such as repo knowledge, project memory, and project variables are injected separately by the active project context.`,`SOURCE REPOSITORIES
12
+ ${!(t=r.project.repos)||0===t.length?"- Use the active project context to discover the right repository or workspace; do not hardcode paths.":t.map(e=>{let t=[e.name.trim()||"repository"],r=String(e.path??"").trim(),a=String(e.notes??"").trim();return r&&t.push(`path: ${r}`),a&&t.push(`notes: ${a}`),`- ${t.join(" | ")}`}).join("\n")}`,"WORKFLOW\n1. Read the full issue and comment thread before acting. Use the issue tracker MCP for issue details, comments, state changes, and follow-up.\n2. Prefer resuming existing work: existing knowledge-base notes, branches, PRs, or prior discussion.\n3. If requirements are unclear, ask specific clarifying questions in the issue tracker and stop.\n4. If the ticket is fresh, investigate first, capture findings in the knowledge base, write a plan, and share the plan before implementation.\n5. If a reviewed plan already exists or the ticket is explicitly ready for implementation, implement in an isolated worktree or equivalent isolated workspace rather than a shared checkout.\n6. Validate with the appropriate tests, linting, type checks, and manual verification for the change.\n7. Keep the issue tracker accurate: comments, links, statuses, blockers, and PR references should match reality.\n8. Keep the knowledge base current with what you learned, what changed, and what remains.\n9. Work on exactly this ticket during this session.","RULES\n- Use the injected project context instead of hardcoded repo-specific paths or conventions.\n- Use knowledge base terminology; the filesystem path above is the storage location.\n- If a PR already exists, focus on CI failures, reviewer feedback, merge status, or ticket follow-up instead of starting over.\n- Leave the ticket and the knowledge base in a resumable state at the end of the session. Clean up temporary worktrees or session claims if your workflow created them."];return l&&_.splice(3,0,l),{prompt:`Work on this ticket: ${i} - ${s}`,promptPrefix:_.join("\n\n")+"\n\n"}}function a(e){var r;let a,i,s=e.issue.identifier.trim()||"TICKET-ID",n=e.issue.title.trim()||"Untitled ticket",o=String(e.issue.status??"").trim()||"Unknown",u=String(e.issue.assignee??"").trim()||"Unassigned",c=function(e){let r=String(e?.slug??"").trim();if(r)return t(r,"project");let a=String(e?.name??"").trim();return a?t(a,"project"):"project"}(e.project),d=String(e.project?.name??"").trim()||c,l=String(e.runtime?.knowledgeBaseRoot??"").trim()||`~/.agx/vault/${c}`,p=String(e.runtime?.issueKnowledgePath??"").trim()||`${l}/issues/${s}/`,_=String(e.runtime?.isolatedWorktreePath??"").trim()||`/tmp/agx-${t(s,"ticket")}`;return{issue:{identifier:s,title:n,status:o,assignee:u},project:{name:d,slug:c,label:(r=e.project,a=String(r?.name??"").trim(),i=String(r?.slug??"").trim(),a&&i?`${a} (${i})`:a||i||"current project"),repos:e.project?.repos?[...e.project.repos]:[]},runtime:{knowledgeBaseRoot:l,issueKnowledgePath:p,isolatedWorktreePath:_}}}function i(e,t){let r=a(t),i={"ticket.identifier":r.issue.identifier,"ticket.title":r.issue.title,"ticket.status":r.issue.status,"ticket.assignee":r.issue.assignee,"project.name":r.project.name,"project.slug":r.project.slug,"project.label":r.project.label,"knowledge_base.root":r.runtime.knowledgeBaseRoot,"knowledge_base.issue_path":r.runtime.issueKnowledgePath,"worktree.path":r.runtime.isolatedWorktreePath};return e.replace(/\{\{\s*([a-zA-Z0-9._-]+)\s*\}\}/g,(e,t)=>i[t]??"")}e.s(["buildTrackerExecutionPrompt",()=>r,"renderTrackerExecutionPromptTemplate",()=>i],280948);var s=e.i(522734),n=e.i(446786),o=e.i(814747),u=e.i(801243);let{DatabaseSync:c}=process.getBuiltinModule("node:sqlite"),d=process.env.AGX_GROUP_CHAT_DIR?.trim()||o.default.join(n.default.homedir(),".agx","group-chat"),l=o.default.join(d,"history.sqlite");function p(e){return e?.trim()||null}function _(e){return"scripted"===e?"scripted":"chat"}function T(e){let t,r=e.chat_created_at??e.created_at,a=e.chat_completed_at??null,i=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:_(e.mode),sessionTitle:"chat"===_(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:i,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 m(e){await s.promises.mkdir(d,{recursive:!0});let t=new c(l);(0,u.pragmaSet)(t,"journal_mode = WAL");try{t.exec(`
13
+ CREATE TABLE IF NOT EXISTS chat_runs (
14
+ id TEXT PRIMARY KEY,
15
+ thread_id TEXT NOT NULL,
16
+ root_message_id TEXT,
17
+ user_id TEXT NOT NULL,
18
+ project_slug TEXT,
19
+ status TEXT NOT NULL,
20
+ current_step INTEGER NOT NULL DEFAULT 0,
21
+ max_steps INTEGER NOT NULL DEFAULT 10,
22
+ steps_used INTEGER NOT NULL DEFAULT 0,
23
+ last_error TEXT,
24
+ active_participant_ids TEXT NOT NULL DEFAULT '[]',
25
+ payload_json TEXT,
26
+ result_json TEXT,
27
+ created_at INTEGER NOT NULL,
28
+ updated_at INTEGER NOT NULL,
29
+ completed_at INTEGER
30
+ );
31
+ CREATE TABLE IF NOT EXISTS messages (
32
+ thread_id TEXT NOT NULL,
33
+ id TEXT NOT NULL,
34
+ role TEXT NOT NULL,
35
+ participant_id TEXT,
36
+ content TEXT NOT NULL,
37
+ timestamp INTEGER NOT NULL,
38
+ root_message_id TEXT,
39
+ parent_message_id TEXT,
40
+ depth INTEGER NOT NULL DEFAULT 0,
41
+ thread_status TEXT,
42
+ outcome_note TEXT,
43
+ PRIMARY KEY (thread_id, id)
44
+ );
45
+ CREATE TABLE IF NOT EXISTS tracker_runs (
46
+ id TEXT PRIMARY KEY,
47
+ project_id TEXT,
48
+ project_slug TEXT,
49
+ tracker_type TEXT NOT NULL DEFAULT 'linear',
50
+ issue_id TEXT NOT NULL,
51
+ issue_identifier TEXT NOT NULL,
52
+ issue_title TEXT NOT NULL,
53
+ issue_status TEXT NOT NULL,
54
+ issue_assignee TEXT,
55
+ thread_id TEXT NOT NULL,
56
+ root_message_id TEXT,
57
+ chat_run_id TEXT,
58
+ agent_id TEXT NOT NULL,
59
+ agent_name TEXT NOT NULL,
60
+ mode TEXT NOT NULL DEFAULT 'chat',
61
+ status TEXT NOT NULL DEFAULT 'queued',
62
+ error TEXT,
63
+ recap_file_path TEXT,
64
+ created_at INTEGER NOT NULL,
65
+ updated_at INTEGER NOT NULL
66
+ );
67
+ CREATE INDEX IF NOT EXISTS idx_tracker_runs_issue_created
68
+ ON tracker_runs (issue_id, created_at DESC);
69
+ CREATE INDEX IF NOT EXISTS idx_tracker_runs_project_issue_created
70
+ ON tracker_runs (project_id, issue_id, created_at DESC);
71
+ CREATE INDEX IF NOT EXISTS idx_tracker_runs_type_created
72
+ ON tracker_runs (tracker_type, created_at DESC);
73
+ CREATE UNIQUE INDEX IF NOT EXISTS idx_tracker_runs_chat_run_id
74
+ ON tracker_runs (chat_run_id)
75
+ WHERE chat_run_id IS NOT NULL;
76
+ `),function(e){if(!e.prepare("SELECT name FROM sqlite_master WHERE type='table' AND name='linear_runs'").get())return;let t=e.prepare("SELECT * FROM linear_runs").all();if(t.length>0){let r=e.prepare(`
77
+ INSERT INTO tracker_runs (
78
+ id, project_id, project_slug, tracker_type,
79
+ issue_id, issue_identifier, issue_title, issue_status, issue_assignee,
80
+ thread_id, root_message_id, chat_run_id,
81
+ agent_id, agent_name, mode, status, error, recap_file_path,
82
+ created_at, updated_at
83
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
84
+ ON CONFLICT(id) DO UPDATE SET
85
+ tracker_type = excluded.tracker_type
86
+ `);for(let e of t)r.run(String(e.id),p(String(e.project_id??"")),p(String(e.project_slug??"")),"linear",String(e.issue_id),String(e.issue_identifier),String(e.issue_title),String(e.issue_status),p(String(e.issue_assignee??"")),String(e.thread_id),p(String(e.root_message_id??"")),p(String(e.chat_run_id??"")),String(e.agent_id),String(e.agent_name),_(String(e.mode??"chat")),String(e.status??"queued"),p(String(e.error??"")),p(String(e.recap_file_path??"")),Number(e.created_at),Number(e.updated_at))}e.exec("DROP TABLE IF EXISTS linear_runs")}(t);let r=t.prepare("PRAGMA table_info(tracker_runs)").all();return r.some(e=>"mode"===e.name)||t.exec("ALTER TABLE tracker_runs ADD COLUMN mode TEXT NOT NULL DEFAULT 'chat';"),r.some(e=>"recap_file_path"===e.name)||t.exec("ALTER TABLE tracker_runs ADD COLUMN recap_file_path TEXT;"),r.some(e=>"tracker_type"===e.name)||t.exec("ALTER TABLE tracker_runs ADD COLUMN tracker_type TEXT NOT NULL DEFAULT 'linear';"),e(t)}finally{t.close()}}let g=`
87
+ SELECT
88
+ tr.*,
89
+ cr.status AS chat_status,
90
+ cr.last_error AS chat_last_error,
91
+ cr.created_at AS chat_created_at,
92
+ cr.updated_at AS chat_updated_at,
93
+ cr.completed_at AS chat_completed_at,
94
+ msg.content AS root_content
95
+ FROM tracker_runs tr
96
+ LEFT JOIN chat_runs cr ON cr.id = (
97
+ SELECT id FROM chat_runs WHERE thread_id = tr.thread_id ORDER BY updated_at DESC LIMIT 1
98
+ )
99
+ LEFT JOIN messages msg ON msg.thread_id = tr.thread_id AND msg.id = tr.root_message_id`;async function E(e){let t=Date.now(),r=p(e.id)??crypto.randomUUID(),a=p(e.threadId)??`tracker-run:${r}`,i=_(e.mode),s=e.trackerType??"linear";return m(n=>{n.prepare(`INSERT INTO tracker_runs (
100
+ id, project_id, project_slug, tracker_type,
101
+ issue_id, issue_identifier, issue_title,
102
+ issue_status, issue_assignee, thread_id, root_message_id, chat_run_id,
103
+ agent_id, agent_name, mode, status, error, recap_file_path, created_at, updated_at
104
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, NULL, NULL, ?, ?, ?, 'queued', NULL, ?, ?, ?)`).run(r,p(e.projectId??null),p(e.projectSlug??null),s,e.issueId.trim(),e.issueIdentifier.trim(),e.issueTitle.trim(),e.issueStatus.trim(),p(e.issueAssignee??null),a,e.agentId.trim(),e.agentName.trim(),i,p(e.recapFilePath??null),t,t);let o=n.prepare(`${g} WHERE tr.id = ? LIMIT 1`).get(r);if(!o)throw Error(`Failed to create tracker run ${r}`);return T(o)})}async function h(e){return m(t=>{let r=["updated_at = ?"],a=[Date.now()];void 0!==e.rootMessageId&&(r.push("root_message_id = ?"),a.push(p(e.rootMessageId))),void 0!==e.chatRunId&&(r.push("chat_run_id = ?"),a.push(p(e.chatRunId))),void 0!==e.status&&(r.push("status = ?"),a.push(e.status)),void 0!==e.error&&(r.push("error = ?"),a.push(p(e.error))),a.push(e.id.trim()),t.prepare(`UPDATE tracker_runs SET ${r.join(", ")} WHERE id = ?`).run(...a);let i=t.prepare(`${g} WHERE tr.id = ? LIMIT 1`).get(e.id.trim());return i?T(i):null})}e.s(["createTrackerRun",()=>E,"updateTrackerRun",()=>h],153703)},696871,e=>{"use strict";var t=e.i(522734),r=e.i(446786),a=e.i(814747);let i="latest.md";function s(e){return a.default.join(process.env.AGX_HOME??a.default.join(r.default.homedir(),".agx"),"linear",e,"recaps")}async function n(e,r){let n=s(e);await t.promises.mkdir(n,{recursive:!0});let o=new Date().toISOString().replace(/[:.]/g,"-")+".md",c=a.default.join(n,o);await t.promises.writeFile(c,r,"utf8");let d=a.default.join(n,i);try{await t.promises.unlink(d)}catch{}await t.promises.symlink(o,d),await u(n);let l=await t.promises.stat(c);return{filePath:c,latestPath:d,generatedAt:l.mtime}}async function o(e){let r=a.default.join(s(e),i);try{let e=await t.promises.stat(r);return{content:await t.promises.readFile(r,"utf8"),filePath:r,generatedAt:e.mtime}}catch{return null}}async function u(e){for(let r of(await t.promises.readdir(e)).filter(e=>e.endsWith(".md")&&e!==i).sort().reverse().slice(10))try{await t.promises.unlink(a.default.join(e,r))}catch{}}e.s(["readLatestRecap",()=>o,"writeRecap",()=>n])},309084,e=>{"use strict";e.i(838482);var t=e.i(864075),r=e.i(133439),a=e.i(280948),i=e.i(153703),s=e.i(696871),n=e.i(200704),o=e.i(202322),u=e.i(295851),c=e.i(251642);async function d(e){let t=(await (0,r.loadDbParticipants)()).find(t=>t.id===e.agentId)??null;if(!t)throw Error(`Agent "${e.agentId}" could not be resolved for scripted tracker work.`);let n=await (0,s.readLatestRecap)(e.issue.id),o=await (0,i.createTrackerRun)({projectId:e.projectId??null,projectSlug:e.projectSlug??null,issueId:e.issue.id,issueIdentifier:e.issue.identifier,issueTitle:e.issue.title,issueStatus:e.issue.status,issueAssignee:e.issue.assignee??null,agentId:t.id,agentName:t.name,mode:"scripted",recapFilePath:n?.filePath??null});try{let r={issue:{identifier:e.issue.identifier,title:e.issue.title,status:e.issue.status,assignee:e.issue.assignee??null},project:e.projectSlug?{slug:e.projectSlug}:null,runtime:{recapContent:n?.content??null}},{prompt:s,promptPrefix:u}=(0,a.buildTrackerExecutionPrompt)(r),c=e.scriptPrompt?.trim()??"",d=e.scriptName?.trim()??"",p=c&&(0,a.renderTrackerExecutionPromptTemplate)(c,r).trim()||s,_=c?`${u}ACTIVE SESSION SCRIPT
105
+ - Name: ${d||"Custom script"}
106
+
107
+ `:u,{chatRunId:T,userMessageId:m}=await l({threadId:o.threadId,prompt:p,promptPrefix:_,projectSlug:e.projectSlug??null,participantId:t.id});return{run:o=await (0,i.updateTrackerRun)({id:o.id,chatRunId:T,rootMessageId:m})??o,chatRunId:T,userMessageId:m}}catch(e){throw await (0,i.updateTrackerRun)({id:o.id,status:"failed",error:e instanceof Error?e.message:String(e)}),e}}async function l(e){let a=(await (0,r.loadDbParticipants)()).find(t=>t.id===e.participantId)??null;if(!a)throw Error(`Participant "${e.participantId}" is unavailable.`);let i=(0,c.normalizeProjectSlug)(e.projectSlug),s=await (0,c.resolveProjectContext)(i,[],[a]),d=Date.now(),l=crypto.randomUUID(),p={id:l,role:"user",participantId:null,content:e.prompt,timestamp:d,rootMessageId:null,parentMessageId:null,depth:0};await (0,n.saveMessages)(e.threadId,[p]);let _=e.promptPrefix?`${e.promptPrefix}${e.prompt}`:e.prompt,T=crypto.randomUUID(),m={threadId:e.threadId,prompt:_,projectContext:s,mentionedIds:[],initialParallelIds:[],maxRounds:Math.min(Math.max(e.maxRounds??10,1),50),recentHistory:[],currentUserMessageId:l,rootMessageId:l,participantIds:[a.id]};await (0,n.createChatRun)({id:T,threadId:e.threadId,rootMessageId:l,userId:t.LOCAL_USER.id,projectSlug:i||null,maxSteps:m.maxRounds,activeParticipantIds:[a.id],payload:m}),await (0,o.ensureOrchestratorRuntime)();let g=await (0,u.getQueue)();return await g.send(u.QUEUE_NAMES.CHAT_RUN_PROCESS,{chatRunId:T,userId:t.LOCAL_USER.id,signal:"start"}),{chatRunId:T,userMessageId:l}}e.s(["startScriptedTrackerSession",()=>d])}];
108
+
109
+ //# sourceMappingURL=apps_local_aac0e4cb._.js.map