@mndrk/agx 2.0.47 → 2.0.48

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 (342) hide show
  1. package/cloud-runtime/standalone/.next/BUILD_ID +1 -1
  2. package/cloud-runtime/standalone/.next/build-manifest.json +2 -2
  3. package/cloud-runtime/standalone/.next/prerender-manifest.json +3 -3
  4. package/cloud-runtime/standalone/.next/server/app/_global-error.html +2 -2
  5. package/cloud-runtime/standalone/.next/server/app/_global-error.rsc +1 -1
  6. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  7. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  8. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  9. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  10. package/cloud-runtime/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  11. package/cloud-runtime/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  12. package/cloud-runtime/standalone/.next/server/app/_not-found.html +2 -2
  13. package/cloud-runtime/standalone/.next/server/app/_not-found.rsc +2 -2
  14. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  15. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  16. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  17. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  18. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  19. package/cloud-runtime/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  20. package/cloud-runtime/standalone/.next/server/app/agents/[id]/page.js.nft.json +1 -1
  21. package/cloud-runtime/standalone/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
  22. package/cloud-runtime/standalone/.next/server/app/agents/page.js.nft.json +1 -1
  23. package/cloud-runtime/standalone/.next/server/app/agents/page_client-reference-manifest.js +1 -1
  24. package/cloud-runtime/standalone/.next/server/app/agents.html +2 -2
  25. package/cloud-runtime/standalone/.next/server/app/agents.rsc +3 -3
  26. package/cloud-runtime/standalone/.next/server/app/agents.segments/_full.segment.rsc +3 -3
  27. package/cloud-runtime/standalone/.next/server/app/agents.segments/_head.segment.rsc +1 -1
  28. package/cloud-runtime/standalone/.next/server/app/agents.segments/_index.segment.rsc +2 -2
  29. package/cloud-runtime/standalone/.next/server/app/agents.segments/_tree.segment.rsc +2 -2
  30. package/cloud-runtime/standalone/.next/server/app/agents.segments/agents/__PAGE__.segment.rsc +2 -2
  31. package/cloud-runtime/standalone/.next/server/app/agents.segments/agents.segment.rsc +1 -1
  32. package/cloud-runtime/standalone/.next/server/app/api/agent-specs/route.js.nft.json +1 -1
  33. package/cloud-runtime/standalone/.next/server/app/api/agents/[id]/profile/route.js.nft.json +1 -1
  34. package/cloud-runtime/standalone/.next/server/app/api/agents/export/route.js.nft.json +1 -1
  35. package/cloud-runtime/standalone/.next/server/app/api/automations/create/route.js.nft.json +1 -1
  36. package/cloud-runtime/standalone/.next/server/app/api/automations/route.js.nft.json +1 -1
  37. package/cloud-runtime/standalone/.next/server/app/api/chat/route.js.nft.json +1 -1
  38. package/cloud-runtime/standalone/.next/server/app/api/file-search/route.js.nft.json +1 -1
  39. package/cloud-runtime/standalone/.next/server/app/api/graphs/[graphId]/nodes/[nodeId]/route.js.nft.json +1 -1
  40. package/cloud-runtime/standalone/.next/server/app/api/health/route.js.nft.json +1 -1
  41. package/cloud-runtime/standalone/.next/server/app/api/knowledge-notes/route.js.nft.json +1 -1
  42. package/cloud-runtime/standalone/.next/server/app/api/learnings/route.js.nft.json +1 -1
  43. package/cloud-runtime/standalone/.next/server/app/api/linear/callback/route.js +1 -1
  44. package/cloud-runtime/standalone/.next/server/app/api/linear/callback/route.js.nft.json +1 -1
  45. package/cloud-runtime/standalone/.next/server/app/api/linear/cycles/route.js +1 -1
  46. package/cloud-runtime/standalone/.next/server/app/api/linear/cycles/route.js.nft.json +1 -1
  47. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/context/route.js.nft.json +1 -1
  48. package/cloud-runtime/standalone/.next/server/app/api/linear/issues/route.js.nft.json +1 -1
  49. package/cloud-runtime/standalone/.next/server/app/api/linear/options/route.js +2 -2
  50. package/cloud-runtime/standalone/.next/server/app/api/linear/options/route.js.nft.json +1 -1
  51. package/cloud-runtime/standalone/.next/server/app/api/linear/status/route.js +1 -1
  52. package/cloud-runtime/standalone/.next/server/app/api/linear/status/route.js.nft.json +1 -1
  53. package/cloud-runtime/standalone/.next/server/app/api/linear/token/route.js +1 -1
  54. package/cloud-runtime/standalone/.next/server/app/api/linear/token/route.js.nft.json +1 -1
  55. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/start/route.js.nft.json +1 -1
  56. package/cloud-runtime/standalone/.next/server/app/api/orchestrator/tasks/[taskId]/status/route.js.nft.json +1 -1
  57. package/cloud-runtime/standalone/.next/server/app/api/participants/route.js.nft.json +1 -1
  58. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/agents/route.js.nft.json +1 -1
  59. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v1/route.js.nft.json +1 -1
  60. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/migrate-v2/route.js.nft.json +1 -1
  61. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/route.js.nft.json +1 -1
  62. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/skills/route.js.nft.json +1 -1
  63. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/threads/route.js.nft.json +1 -1
  64. package/cloud-runtime/standalone/.next/server/app/api/projects/[id]/variables/route.js.nft.json +1 -1
  65. package/cloud-runtime/standalone/.next/server/app/api/projects/route.js.nft.json +1 -1
  66. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/cancel/route.js.nft.json +1 -1
  67. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/route.js.nft.json +1 -1
  68. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/[id]/runs/route.js.nft.json +1 -1
  69. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/agents/route.js.nft.json +1 -1
  70. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/poll/route.js.nft.json +1 -1
  71. package/cloud-runtime/standalone/.next/server/app/api/prompt-jobs/route.js.nft.json +1 -1
  72. package/cloud-runtime/standalone/.next/server/app/api/providers/route.js.nft.json +1 -1
  73. package/cloud-runtime/standalone/.next/server/app/api/queue/complete/route.js.nft.json +1 -1
  74. package/cloud-runtime/standalone/.next/server/app/api/queue/route.js.nft.json +1 -1
  75. package/cloud-runtime/standalone/.next/server/app/api/schedules/debug/route.js.nft.json +1 -1
  76. package/cloud-runtime/standalone/.next/server/app/api/schedules/poll/route.js.nft.json +1 -1
  77. package/cloud-runtime/standalone/.next/server/app/api/schedules/route.js.nft.json +1 -1
  78. package/cloud-runtime/standalone/.next/server/app/api/status/route.js.nft.json +1 -1
  79. package/cloud-runtime/standalone/.next/server/app/api/summarize/route.js.nft.json +1 -1
  80. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/[commentId]/route.js.nft.json +1 -1
  81. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/comments/route.js.nft.json +1 -1
  82. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/costs/route.js.nft.json +1 -1
  83. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/dependencies/route.js.nft.json +1 -1
  84. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/events/route.js.nft.json +1 -1
  85. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/history/route.js.nft.json +1 -1
  86. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/metrics/route.js.nft.json +1 -1
  87. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/replan/route.js.nft.json +1 -1
  88. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/restart/route.js.nft.json +1 -1
  89. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/resume/route.js.nft.json +1 -1
  90. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/rollback/route.js.nft.json +1 -1
  91. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/route.js.nft.json +1 -1
  92. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/schedule/route.js.nft.json +1 -1
  93. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/start/route.js.nft.json +1 -1
  94. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/graph/stop/route.js.nft.json +1 -1
  95. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/history/route.js.nft.json +1 -1
  96. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/logs/route.js.nft.json +1 -1
  97. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/comments/route.js.nft.json +1 -1
  98. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/complete/route.js.nft.json +1 -1
  99. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/fail/route.js.nft.json +1 -1
  100. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/resume/route.js.nft.json +1 -1
  101. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/start/route.js.nft.json +1 -1
  102. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/stop/route.js.nft.json +1 -1
  103. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/nodes/[nodeId]/verify/route.js.nft.json +1 -1
  104. package/cloud-runtime/standalone/.next/server/app/api/tasks/[id]/route.js.nft.json +1 -1
  105. package/cloud-runtime/standalone/.next/server/app/api/tasks/assign-orphans/route.js.nft.json +1 -1
  106. package/cloud-runtime/standalone/.next/server/app/api/tasks/extract/route.js.nft.json +1 -1
  107. package/cloud-runtime/standalone/.next/server/app/api/tasks/route.js.nft.json +1 -1
  108. package/cloud-runtime/standalone/.next/server/app/api/threads/knowledge/route.js.nft.json +1 -1
  109. package/cloud-runtime/standalone/.next/server/app/api/threads/route.js.nft.json +1 -1
  110. package/cloud-runtime/standalone/.next/server/app/api/user-settings/route.js.nft.json +1 -1
  111. package/cloud-runtime/standalone/.next/server/app/automations/page/react-loadable-manifest.json +1 -1
  112. package/cloud-runtime/standalone/.next/server/app/automations/page.js.nft.json +1 -1
  113. package/cloud-runtime/standalone/.next/server/app/automations/page_client-reference-manifest.js +1 -1
  114. package/cloud-runtime/standalone/.next/server/app/automations.html +2 -2
  115. package/cloud-runtime/standalone/.next/server/app/automations.rsc +3 -3
  116. package/cloud-runtime/standalone/.next/server/app/automations.segments/_full.segment.rsc +3 -3
  117. package/cloud-runtime/standalone/.next/server/app/automations.segments/_head.segment.rsc +1 -1
  118. package/cloud-runtime/standalone/.next/server/app/automations.segments/_index.segment.rsc +2 -2
  119. package/cloud-runtime/standalone/.next/server/app/automations.segments/_tree.segment.rsc +2 -2
  120. package/cloud-runtime/standalone/.next/server/app/automations.segments/automations/__PAGE__.segment.rsc +2 -2
  121. package/cloud-runtime/standalone/.next/server/app/automations.segments/automations.segment.rsc +1 -1
  122. package/cloud-runtime/standalone/.next/server/app/board/page_client-reference-manifest.js +1 -1
  123. package/cloud-runtime/standalone/.next/server/app/board.html +2 -2
  124. package/cloud-runtime/standalone/.next/server/app/board.rsc +2 -2
  125. package/cloud-runtime/standalone/.next/server/app/board.segments/_full.segment.rsc +2 -2
  126. package/cloud-runtime/standalone/.next/server/app/board.segments/_head.segment.rsc +1 -1
  127. package/cloud-runtime/standalone/.next/server/app/board.segments/_index.segment.rsc +2 -2
  128. package/cloud-runtime/standalone/.next/server/app/board.segments/_tree.segment.rsc +2 -2
  129. package/cloud-runtime/standalone/.next/server/app/board.segments/board/__PAGE__.segment.rsc +1 -1
  130. package/cloud-runtime/standalone/.next/server/app/board.segments/board.segment.rsc +1 -1
  131. package/cloud-runtime/standalone/.next/server/app/execution-graph/page.js.nft.json +1 -1
  132. package/cloud-runtime/standalone/.next/server/app/execution-graph/page_client-reference-manifest.js +1 -1
  133. package/cloud-runtime/standalone/.next/server/app/execution-graph.html +2 -2
  134. package/cloud-runtime/standalone/.next/server/app/execution-graph.rsc +3 -3
  135. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_full.segment.rsc +3 -3
  136. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_head.segment.rsc +1 -1
  137. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_index.segment.rsc +2 -2
  138. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/_tree.segment.rsc +2 -2
  139. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph/__PAGE__.segment.rsc +2 -2
  140. package/cloud-runtime/standalone/.next/server/app/execution-graph.segments/execution-graph.segment.rsc +1 -1
  141. package/cloud-runtime/standalone/.next/server/app/folders/page.js.nft.json +1 -1
  142. package/cloud-runtime/standalone/.next/server/app/folders/page_client-reference-manifest.js +1 -1
  143. package/cloud-runtime/standalone/.next/server/app/folders.html +2 -2
  144. package/cloud-runtime/standalone/.next/server/app/folders.rsc +3 -3
  145. package/cloud-runtime/standalone/.next/server/app/folders.segments/_full.segment.rsc +3 -3
  146. package/cloud-runtime/standalone/.next/server/app/folders.segments/_head.segment.rsc +1 -1
  147. package/cloud-runtime/standalone/.next/server/app/folders.segments/_index.segment.rsc +2 -2
  148. package/cloud-runtime/standalone/.next/server/app/folders.segments/_tree.segment.rsc +2 -2
  149. package/cloud-runtime/standalone/.next/server/app/folders.segments/folders/__PAGE__.segment.rsc +2 -2
  150. package/cloud-runtime/standalone/.next/server/app/folders.segments/folders.segment.rsc +1 -1
  151. package/cloud-runtime/standalone/.next/server/app/index.html +2 -2
  152. package/cloud-runtime/standalone/.next/server/app/index.rsc +3 -3
  153. package/cloud-runtime/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  154. package/cloud-runtime/standalone/.next/server/app/index.segments/_full.segment.rsc +3 -3
  155. package/cloud-runtime/standalone/.next/server/app/index.segments/_head.segment.rsc +1 -1
  156. package/cloud-runtime/standalone/.next/server/app/index.segments/_index.segment.rsc +2 -2
  157. package/cloud-runtime/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  158. package/cloud-runtime/standalone/.next/server/app/page.js.nft.json +1 -1
  159. package/cloud-runtime/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  160. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page/react-loadable-manifest.json +1 -1
  161. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page.js.nft.json +1 -1
  162. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/automations/page_client-reference-manifest.js +1 -1
  163. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page.js.nft.json +1 -1
  164. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/graph/[taskId]/page_client-reference-manifest.js +1 -1
  165. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page.js.nft.json +1 -1
  166. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/knowledge/page_client-reference-manifest.js +1 -1
  167. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page/react-loadable-manifest.json +1 -1
  168. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page.js.nft.json +1 -1
  169. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/linear/page_client-reference-manifest.js +1 -1
  170. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page.js.nft.json +1 -1
  171. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
  172. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page.js.nft.json +1 -1
  173. package/cloud-runtime/standalone/.next/server/app/projects/[slug]/thread/[threadId]/page_client-reference-manifest.js +1 -1
  174. package/cloud-runtime/standalone/.next/server/app/projects/orphans/page_client-reference-manifest.js +1 -1
  175. package/cloud-runtime/standalone/.next/server/app/projects/orphans.html +2 -2
  176. package/cloud-runtime/standalone/.next/server/app/projects/orphans.rsc +2 -2
  177. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_full.segment.rsc +2 -2
  178. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_head.segment.rsc +1 -1
  179. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_index.segment.rsc +2 -2
  180. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/_tree.segment.rsc +2 -2
  181. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans/__PAGE__.segment.rsc +1 -1
  182. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects/orphans.segment.rsc +1 -1
  183. package/cloud-runtime/standalone/.next/server/app/projects/orphans.segments/projects.segment.rsc +1 -1
  184. package/cloud-runtime/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
  185. package/cloud-runtime/standalone/.next/server/app/projects.html +2 -2
  186. package/cloud-runtime/standalone/.next/server/app/projects.rsc +2 -2
  187. package/cloud-runtime/standalone/.next/server/app/projects.segments/_full.segment.rsc +2 -2
  188. package/cloud-runtime/standalone/.next/server/app/projects.segments/_head.segment.rsc +1 -1
  189. package/cloud-runtime/standalone/.next/server/app/projects.segments/_index.segment.rsc +2 -2
  190. package/cloud-runtime/standalone/.next/server/app/projects.segments/_tree.segment.rsc +2 -2
  191. package/cloud-runtime/standalone/.next/server/app/projects.segments/projects/__PAGE__.segment.rsc +1 -1
  192. package/cloud-runtime/standalone/.next/server/app/projects.segments/projects.segment.rsc +1 -1
  193. package/cloud-runtime/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  194. package/cloud-runtime/standalone/.next/server/app/settings.html +2 -2
  195. package/cloud-runtime/standalone/.next/server/app/settings.rsc +2 -2
  196. package/cloud-runtime/standalone/.next/server/app/settings.segments/_full.segment.rsc +2 -2
  197. package/cloud-runtime/standalone/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  198. package/cloud-runtime/standalone/.next/server/app/settings.segments/_index.segment.rsc +2 -2
  199. package/cloud-runtime/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  200. package/cloud-runtime/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +1 -1
  201. package/cloud-runtime/standalone/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  202. package/cloud-runtime/standalone/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  203. package/cloud-runtime/standalone/.next/server/app/skills.html +2 -2
  204. package/cloud-runtime/standalone/.next/server/app/skills.rsc +2 -2
  205. package/cloud-runtime/standalone/.next/server/app/skills.segments/_full.segment.rsc +2 -2
  206. package/cloud-runtime/standalone/.next/server/app/skills.segments/_head.segment.rsc +1 -1
  207. package/cloud-runtime/standalone/.next/server/app/skills.segments/_index.segment.rsc +2 -2
  208. package/cloud-runtime/standalone/.next/server/app/skills.segments/_tree.segment.rsc +2 -2
  209. package/cloud-runtime/standalone/.next/server/app/skills.segments/skills/__PAGE__.segment.rsc +1 -1
  210. package/cloud-runtime/standalone/.next/server/app/skills.segments/skills.segment.rsc +1 -1
  211. package/cloud-runtime/standalone/.next/server/app/status/page_client-reference-manifest.js +1 -1
  212. package/cloud-runtime/standalone/.next/server/app/status.html +2 -2
  213. package/cloud-runtime/standalone/.next/server/app/status.rsc +2 -2
  214. package/cloud-runtime/standalone/.next/server/app/status.segments/_full.segment.rsc +2 -2
  215. package/cloud-runtime/standalone/.next/server/app/status.segments/_head.segment.rsc +1 -1
  216. package/cloud-runtime/standalone/.next/server/app/status.segments/_index.segment.rsc +2 -2
  217. package/cloud-runtime/standalone/.next/server/app/status.segments/_tree.segment.rsc +2 -2
  218. package/cloud-runtime/standalone/.next/server/app/status.segments/status/__PAGE__.segment.rsc +1 -1
  219. package/cloud-runtime/standalone/.next/server/app/status.segments/status.segment.rsc +1 -1
  220. package/cloud-runtime/standalone/.next/server/app/thread/[id]/page.js.nft.json +1 -1
  221. package/cloud-runtime/standalone/.next/server/app/thread/[id]/page_client-reference-manifest.js +1 -1
  222. package/cloud-runtime/standalone/.next/server/app/welcome/page.js.nft.json +1 -1
  223. package/cloud-runtime/standalone/.next/server/app/welcome/page_client-reference-manifest.js +1 -1
  224. package/cloud-runtime/standalone/.next/server/app/welcome.html +2 -2
  225. package/cloud-runtime/standalone/.next/server/app/welcome.rsc +3 -3
  226. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_full.segment.rsc +3 -3
  227. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_head.segment.rsc +1 -1
  228. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_index.segment.rsc +2 -2
  229. package/cloud-runtime/standalone/.next/server/app/welcome.segments/_tree.segment.rsc +2 -2
  230. package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome/__PAGE__.segment.rsc +2 -2
  231. package/cloud-runtime/standalone/.next/server/app/welcome.segments/welcome.segment.rsc +1 -1
  232. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__015d40a6._.js +67 -0
  233. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__067034dd._.js +67 -0
  234. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__20a2cb22._.js +8 -8
  235. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__37844df7._.js +67 -0
  236. package/cloud-runtime/standalone/.next/server/chunks/{[root-of-the-server]__d9f2041b._.js → [root-of-the-server]__3a93931b._.js} +4 -4
  237. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__a3955224._.js +16 -16
  238. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__c8890cd6._.js +12 -12
  239. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__0b2a2b86._.js +3 -0
  240. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__32546242._.js +3 -0
  241. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__5ff9ead4._.js +3 -0
  242. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__f2c3b7ab._.js +1 -1
  243. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__f59f0dc7._.js +3 -0
  244. package/cloud-runtime/standalone/.next/server/chunks/ssr/{[root-of-the-server]__d96bb3b5._.js → [root-of-the-server]__fbe1ab4a._.js} +2 -2
  245. package/cloud-runtime/standalone/.next/server/chunks/ssr/_1e9b9b1e._.js +3 -0
  246. package/cloud-runtime/standalone/.next/server/chunks/ssr/_24fe6213._.js +3 -0
  247. package/cloud-runtime/standalone/.next/server/chunks/ssr/_36a0c486._.js +3 -0
  248. package/cloud-runtime/standalone/.next/server/chunks/ssr/_3b21d3b2._.js +95 -0
  249. package/cloud-runtime/standalone/.next/server/chunks/ssr/_3eeac8f9._.js +3 -0
  250. package/cloud-runtime/standalone/.next/server/chunks/ssr/_48db42b7._.js +3 -0
  251. package/cloud-runtime/standalone/.next/server/chunks/ssr/_59f30a73._.js +3 -0
  252. package/cloud-runtime/standalone/.next/server/chunks/ssr/_7d3b0032._.js +3 -0
  253. package/cloud-runtime/standalone/.next/server/chunks/ssr/_916950b3._.js +3 -0
  254. package/cloud-runtime/standalone/.next/server/chunks/ssr/_b598ae8a._.js +3 -0
  255. package/cloud-runtime/standalone/.next/server/chunks/ssr/_cc8c8302._.js +3 -0
  256. package/cloud-runtime/standalone/.next/server/chunks/ssr/_d972a4e1._.js +3 -0
  257. package/cloud-runtime/standalone/.next/server/chunks/ssr/_dd7bb6fb._.js +3 -0
  258. package/cloud-runtime/standalone/.next/server/chunks/ssr/_dd9880fb._.js +3 -0
  259. package/cloud-runtime/standalone/.next/server/chunks/ssr/_f02d786a._.js +3 -0
  260. package/cloud-runtime/standalone/.next/server/chunks/ssr/_fd8cafe9._.js +3 -0
  261. package/cloud-runtime/standalone/.next/server/chunks/ssr/app_projects_[slug]_linear_page_tsx_971a6ba7._.js +15 -12
  262. package/cloud-runtime/standalone/.next/server/chunks/ssr/components_chat-ui_bfeda794._.js +1 -1
  263. package/cloud-runtime/standalone/.next/server/chunks/ssr/components_thread_WorkspaceSidebar_tsx_e660301b._.js +1 -1
  264. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_54bf563f._.js +3 -0
  265. package/cloud-runtime/standalone/.next/server/middleware-manifest.json +5 -5
  266. package/cloud-runtime/standalone/.next/server/pages/404.html +2 -2
  267. package/cloud-runtime/standalone/.next/server/pages/500.html +2 -2
  268. package/cloud-runtime/standalone/.next/server/server-reference-manifest.js +1 -1
  269. package/cloud-runtime/standalone/.next/server/server-reference-manifest.json +1 -1
  270. package/cloud-runtime/standalone/.next/static/chunks/04c135686161dbb1.js +40 -0
  271. package/cloud-runtime/standalone/.next/static/chunks/0d63db0c39c0a3b2.js +1 -0
  272. package/cloud-runtime/standalone/.next/static/chunks/136ed07d84b14632.js +1 -0
  273. package/cloud-runtime/standalone/.next/static/chunks/18866ed04ed3a063.css +1 -0
  274. package/cloud-runtime/standalone/.next/static/chunks/{ccaf68956da192f8.js → 1bb38e61d891453c.js} +1 -1
  275. package/cloud-runtime/standalone/.next/static/chunks/2c7c8259c2b56bf5.js +1 -0
  276. package/cloud-runtime/standalone/.next/static/chunks/2da1f13d50dc4e54.js +1 -0
  277. package/cloud-runtime/standalone/.next/static/chunks/{fdadad2379039dce.js → 442eb8ef62bef9f9.js} +3 -3
  278. package/cloud-runtime/standalone/.next/static/chunks/{41c518743656a291.js → 5f33b52d582b0bb4.js} +1 -1
  279. package/cloud-runtime/standalone/.next/static/chunks/{97c11137cd6fc860.js → 64c2961edd3a3b13.js} +1 -1
  280. package/cloud-runtime/standalone/.next/static/chunks/{db131a0b6350e416.js → 692ce04abdbb3970.js} +1 -1
  281. package/cloud-runtime/standalone/.next/static/chunks/83be8569d298c6b0.js +1 -0
  282. package/cloud-runtime/standalone/.next/static/chunks/87b3afe828c8cc52.js +1 -0
  283. package/cloud-runtime/standalone/.next/static/chunks/{4343e7fe5bf5f34a.js → 9328740727c6456d.js} +1 -1
  284. package/cloud-runtime/standalone/.next/static/chunks/95d47e285ae9c031.js +1 -0
  285. package/cloud-runtime/standalone/.next/static/chunks/b9bf5d3ee92a1313.js +1 -0
  286. package/cloud-runtime/standalone/.next/static/chunks/ea35fb870141bcff.js +1 -0
  287. package/cloud-runtime/standalone/.next/static/chunks/f59722264449b61c.js +1 -0
  288. package/cloud-runtime/standalone/.next/static/chunks/f727d2c8f039511d.js +1 -0
  289. package/cloud-runtime/standalone/.next/static/chunks/{31fe4e36a00fd7b5.js → f8706212baa8ec67.js} +1 -1
  290. package/cloud-runtime/standalone/.next/static/chunks/fd823c9d1381335d.js +1 -0
  291. package/cloud-runtime/standalone/app/automations/page.tsx +11 -1
  292. package/cloud-runtime/standalone/app/projects/[slug]/layout.tsx +11 -1
  293. package/cloud-runtime/standalone/components/LinearBoard.tsx +118 -21
  294. package/cloud-runtime/standalone/components/chat-ui/ChatContainer.tsx +10 -0
  295. package/cloud-runtime/standalone/components/linear/RunScriptManager.tsx +356 -0
  296. package/cloud-runtime/standalone/components/thread/WorkspaceSidebar.tsx +35 -0
  297. package/cloud-runtime/standalone/hooks/useLinearRunScripts.ts +115 -0
  298. package/cloud-runtime/standalone/lib/linear-client.ts +33 -3
  299. package/cloud-runtime/standalone/lib/linear-execution-prompt.ts +92 -15
  300. package/cloud-runtime/standalone/state/automations/.state/c4300b01-1203-40fe-b3a9-b9fb9ec0c5cc.json +8 -0
  301. package/cloud-runtime/standalone/state/automations/active/c4300b01-1203-40fe-b3a9-b9fb9ec0c5cc.md +15 -0
  302. package/cloud-runtime/standalone/state/linearRunScripts.test.ts +99 -0
  303. package/cloud-runtime/standalone/state/linearRunScripts.ts +132 -0
  304. package/cloud-runtime/standalone/state/windowState.ts +21 -0
  305. package/cloud-runtime/standalone/tsconfig.tsbuildinfo +1 -1
  306. package/package.json +1 -1
  307. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__1154e5b3._.js +0 -67
  308. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__76290829._.js +0 -67
  309. package/cloud-runtime/standalone/.next/server/chunks/[root-of-the-server]__ad6d6402._.js +0 -67
  310. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__21a9eaef._.js +0 -3
  311. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__69887882._.js +0 -3
  312. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__9ad05ace._.js +0 -3
  313. package/cloud-runtime/standalone/.next/server/chunks/ssr/[root-of-the-server]__bb149a22._.js +0 -3
  314. package/cloud-runtime/standalone/.next/server/chunks/ssr/_11ce4c04._.js +0 -95
  315. package/cloud-runtime/standalone/.next/server/chunks/ssr/_1d949e96._.js +0 -3
  316. package/cloud-runtime/standalone/.next/server/chunks/ssr/_32a156b6._.js +0 -3
  317. package/cloud-runtime/standalone/.next/server/chunks/ssr/_43c091dc._.js +0 -3
  318. package/cloud-runtime/standalone/.next/server/chunks/ssr/_45175f47._.js +0 -3
  319. package/cloud-runtime/standalone/.next/server/chunks/ssr/_4f0c544d._.js +0 -3
  320. package/cloud-runtime/standalone/.next/server/chunks/ssr/_69164b06._.js +0 -95
  321. package/cloud-runtime/standalone/.next/server/chunks/ssr/_7f7a828a._.js +0 -3
  322. package/cloud-runtime/standalone/.next/server/chunks/ssr/_97f6a18e._.js +0 -3
  323. package/cloud-runtime/standalone/.next/server/chunks/ssr/_a511a014._.js +0 -3
  324. package/cloud-runtime/standalone/.next/server/chunks/ssr/_c3a3a829._.js +0 -3
  325. package/cloud-runtime/standalone/.next/server/chunks/ssr/_cee3cf86._.js +0 -95
  326. package/cloud-runtime/standalone/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_e8bdedc5._.js +0 -3
  327. package/cloud-runtime/standalone/.next/static/chunks/14fff3c493ea9c54.js +0 -1
  328. package/cloud-runtime/standalone/.next/static/chunks/2a9c83f8211196e0.js +0 -1
  329. package/cloud-runtime/standalone/.next/static/chunks/5405540470146645.js +0 -1
  330. package/cloud-runtime/standalone/.next/static/chunks/69f2db4b9996b9c1.js +0 -37
  331. package/cloud-runtime/standalone/.next/static/chunks/8aeb69ceb497ad85.css +0 -1
  332. package/cloud-runtime/standalone/.next/static/chunks/a9da98f883ac833b.js +0 -1
  333. package/cloud-runtime/standalone/.next/static/chunks/b2127dc67c5ade9f.js +0 -1
  334. package/cloud-runtime/standalone/.next/static/chunks/baf5d39d089efb87.js +0 -1
  335. package/cloud-runtime/standalone/.next/static/chunks/bf2a2fafb710e63c.js +0 -1
  336. package/cloud-runtime/standalone/.next/static/chunks/c78969fde5798275.js +0 -1
  337. package/cloud-runtime/standalone/.next/static/chunks/d3dc6fadb96ab3a2.js +0 -1
  338. package/cloud-runtime/standalone/state/automations/.state/24a6a5db-3b14-49c4-841f-29f10f015fbb.json +0 -8
  339. package/cloud-runtime/standalone/state/automations/active/24a6a5db-3b14-49c4-841f-29f10f015fbb.md +0 -17
  340. /package/cloud-runtime/standalone/.next/static/{lOB5InbmVcurTLQo9J3KK → gty0FO80D_lbq3o9lSpQQ}/_buildManifest.js +0 -0
  341. /package/cloud-runtime/standalone/.next/static/{lOB5InbmVcurTLQo9J3KK → gty0FO80D_lbq3o9lSpQQ}/_clientMiddlewareManifest.json +0 -0
  342. /package/cloud-runtime/standalone/.next/static/{lOB5InbmVcurTLQo9J3KK → gty0FO80D_lbq3o9lSpQQ}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- module.exports=[918622,(e,t,s)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,s)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,s)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,s)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,s)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let s=e.prepare(`PRAGMA ${t}`).get();if(!s)return;let a=Object.values(s);return a.length>0?a[0]:void 0}function s(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function n(e,t){e.exec("BEGIN");try{let s=t();return e.exec("COMMIT"),s}catch(t){throw e.exec("ROLLBACK"),t}}function i(e,t){return(...s)=>{e.exec("BEGIN");try{let a=t(...s);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>s,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>n,"transactionFn",()=>i])},233405,(e,t,s)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var s=e.i(446786),a=e.i(814747);let n="3.35.0",i=["json1"],r=["fts5"],l=["nfs","smb","cifs","efs","fuse.sshfs"];function u(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function o(o,d){let c=[],p=o.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let s=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(s[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(p.v,n)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${n}`,found:p.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),i))u(o,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of r)u(o,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let m=function(t){"linux"!==s.default.platform()&&s.default.platform();try{let n=a.default.resolve(t),{execSync:i}=e.r(233405);if("darwin"===s.default.platform()){let e=i(`df -T "${n}" 2>/dev/null || df "${n}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),s=t[0]?.toLowerCase()||"";if(s.includes("://")||s.includes("nfs")||s.includes("smb"))return s}}}catch{}return null}(d);m&&l.some(e=>m.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${m})`,path:d,found:m,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(o,"journal_mode = wal"),(0,t.pragmaSet)(o,"foreign_keys = 1"),(0,t.pragmaSet)(o,"busy_timeout = 5000"),(0,t.pragmaSet)(o,"synchronous = 1"),(0,t.pragmaSet)(o,"cache_size = -64000");let e=(0,t.pragmaGet)(o,"journal_mode").toLowerCase(),s=new Set(["wal","delete"]);if(!s.has(e)){(0,t.pragmaSet)(o,"journal_mode = DELETE");let e=(0,t.pragmaGet)(o,"journal_mode").toLowerCase();s.has(e)?((0,t.pragmaSet)(o,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>o])},500874,(e,t,s)=>{t.exports=e.x("buffer",()=>require("buffer"))},750227,(e,t,s)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,s)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,s)=>{t.exports=e.x("node:os",()=>require("node:os"))},666680,(e,t,s)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},423502,(e,t,s)=>{},841897,e=>{"use strict";e.i(423502);var t=e.i(902157),s=e.i(750227);function a(){return s.default.join(process.cwd(),".linear-token.json")}function n(e){(0,t.writeFileSync)(a(),JSON.stringify(e,null,2))}function i(){try{(0,t.unlinkSync)(a())}catch{}}class r{accessToken;constructor(e){this.accessToken=e}get viewer(){return this.request("query { viewer { id name email } }").then(e=>e.viewer)}async users(){return(await this.request(`query {
1
+ module.exports=[918622,(e,t,s)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,s)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,s)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,s)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,s)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let s=e.prepare(`PRAGMA ${t}`).get();if(!s)return;let a=Object.values(s);return a.length>0?a[0]:void 0}function s(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function n(e,t){e.exec("BEGIN");try{let s=t();return e.exec("COMMIT"),s}catch(t){throw e.exec("ROLLBACK"),t}}function r(e,t){return(...s)=>{e.exec("BEGIN");try{let a=t(...s);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>s,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>n,"transactionFn",()=>r])},233405,(e,t,s)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var s=e.i(446786),a=e.i(814747);let n="3.35.0",r=["json1"],i=["fts5"],l=["nfs","smb","cifs","efs","fuse.sshfs"];function u(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function o(o,d){let c=[],p=o.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let s=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(s[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(p.v,n)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${n}`,found:p.v,required:`>= ${n}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),r))u(o,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of i)u(o,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let m=function(t){"linux"!==s.default.platform()&&s.default.platform();try{let n=a.default.resolve(t),{execSync:r}=e.r(233405);if("darwin"===s.default.platform()){let e=r(`df -T "${n}" 2>/dev/null || df "${n}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),s=t[0]?.toLowerCase()||"";if(s.includes("://")||s.includes("nfs")||s.includes("smb"))return s}}}catch{}return null}(d);m&&l.some(e=>m.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${m})`,path:d,found:m,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(o,"journal_mode = wal"),(0,t.pragmaSet)(o,"foreign_keys = 1"),(0,t.pragmaSet)(o,"busy_timeout = 5000"),(0,t.pragmaSet)(o,"synchronous = 1"),(0,t.pragmaSet)(o,"cache_size = -64000");let e=(0,t.pragmaGet)(o,"journal_mode").toLowerCase(),s=new Set(["wal","delete"]);if(!s.has(e)){(0,t.pragmaSet)(o,"journal_mode = DELETE");let e=(0,t.pragmaGet)(o,"journal_mode").toLowerCase();s.has(e)?((0,t.pragmaSet)(o,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>o])},500874,(e,t,s)=>{t.exports=e.x("buffer",()=>require("buffer"))},750227,(e,t,s)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,s)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,s)=>{t.exports=e.x("node:os",()=>require("node:os"))},666680,(e,t,s)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},423502,(e,t,s)=>{},841897,e=>{"use strict";e.i(423502);var t=e.i(902157),s=e.i(660526),a=e.i(750227);let n=a.default.join((0,s.homedir)(),".agx");function r(){return a.default.join(n,"linear-token.json")}function i(){return a.default.join(process.cwd(),".linear-token.json")}function l(e){(0,t.existsSync)(n)||(0,t.mkdirSync)(n,{recursive:!0}),(0,t.writeFileSync)(r(),JSON.stringify(e,null,2))}function u(){try{(0,t.unlinkSync)(r())}catch{}try{(0,t.unlinkSync)(i())}catch{}}class o{accessToken;constructor(e){this.accessToken=e}get viewer(){return this.request("query { viewer { id name email } }").then(e=>e.viewer)}async users(){return(await this.request(`query {
2
2
  users(first: 100) {
3
3
  nodes {
4
4
  id
@@ -62,7 +62,7 @@ module.exports=[918622,(e,t,s)=>{t.exports=e.x("next/dist/compiled/next-server/a
62
62
  }
63
63
  }
64
64
  }
65
- }`),t=new Map;for(let s of e.teams.nodes)for(let e of[...s.activeCycle?[s.activeCycle]:[],...s.cycles.nodes])t.has(e.id)||t.set(e.id,{id:e.id,number:e.number,name:e.name,startsAt:e.startsAt,endsAt:e.endsAt,teamId:e.team?.id??s.id,teamName:e.team?.name??s.name});return[...t.values()].sort((e,t)=>new Date(t.startsAt).getTime()-new Date(e.startsAt).getTime())}async request(e){let t=await fetch("https://api.linear.app/graphql",{method:"POST",headers:{"Content-Type":"application/json",Authorization:this.accessToken},body:JSON.stringify({query:e}),cache:"no-store"}),s=await t.json();if(!t.ok||s.errors?.length)throw Error(s.errors?.map(e=>e.message).find(Boolean)??`Linear request failed with status ${t.status}`);if(!s.data)throw Error("Linear response did not include data");return s.data}}function l(){let e=function(){try{let e=(0,t.readFileSync)(a(),"utf8");return JSON.parse(e)}catch{return null}}();return e?new r(e.accessToken):null}e.s(["LinearClient",()=>r,"deleteLinearToken",()=>i,"getLinearClient",()=>l,"saveLinearToken",()=>n])},832674,343649,e=>{"use strict";e.i(423502);var t=e.i(902157),s=e.i(750227),a=e.i(260476),n=e.i(841897),i=e.x("node:sqlite",()=>require("node:sqlite"),!0),r=e.i(660526),l=e.i(259833);let u=process.env.AGX_LINEAR_DIR?.trim()||s.default.join(process.env.AGX_DATA_DIR||s.default.join(r.default.homedir(),".agx"),"linear"),o=s.default.join(u,"issues.sqlite");function d(e){return e?.trim()||null}function c(e){return new Date(e).toISOString()}function p(e){return{id:e.issue_id,identifier:e.identifier,title:e.title,description:e.description,url:e.url,status:e.status,assigneeId:e.assignee_id,assignee:e.assignee_name,assigneeEmail:e.assignee_email,isAssignedToMe:1===e.is_assigned_to_me,teamId:e.team_id,teamName:e.team_name,teamKey:e.team_key,cycleId:e.cycle_id,cycleName:e.cycle_name,cycleNumber:e.cycle_number,updatedAt:e.updated_at,pulledAt:c(e.pulled_at)}}async function m(e){await t.promises.mkdir(u,{recursive:!0});let s=new i.DatabaseSync(o);(0,l.pragmaSet)(s,"journal_mode = WAL");try{return s.exec(`
65
+ }`),t=new Map;for(let s of e.teams.nodes)for(let e of[...s.activeCycle?[s.activeCycle]:[],...s.cycles.nodes])t.has(e.id)||t.set(e.id,{id:e.id,number:e.number,name:e.name,startsAt:e.startsAt,endsAt:e.endsAt,teamId:e.team?.id??s.id,teamName:e.team?.name??s.name});return[...t.values()].sort((e,t)=>new Date(t.startsAt).getTime()-new Date(e.startsAt).getTime())}async request(e){let t=await fetch("https://api.linear.app/graphql",{method:"POST",headers:{"Content-Type":"application/json",Authorization:this.accessToken},body:JSON.stringify({query:e}),cache:"no-store"}),s=await t.json();if(!t.ok||s.errors?.length)throw Error(s.errors?.map(e=>e.message).find(Boolean)??`Linear request failed with status ${t.status}`);if(!s.data)throw Error("Linear response did not include data");return s.data}}function d(){let e=function(){try{let e=(0,t.readFileSync)(r(),"utf8");return JSON.parse(e)}catch{}try{let e=i(),s=(0,t.readFileSync)(e,"utf8"),a=JSON.parse(s);l(a);try{(0,t.unlinkSync)(e)}catch{}return a}catch{return null}}();return e?new o(e.accessToken):null}e.s(["LinearClient",()=>o,"deleteLinearToken",()=>u,"getLinearClient",()=>d,"saveLinearToken",()=>l])},832674,343649,e=>{"use strict";e.i(423502);var t=e.i(902157),s=e.i(750227),a=e.i(260476),n=e.i(841897),r=e.x("node:sqlite",()=>require("node:sqlite"),!0),i=e.i(660526),l=e.i(259833);let u=process.env.AGX_LINEAR_DIR?.trim()||s.default.join(process.env.AGX_DATA_DIR||s.default.join(i.default.homedir(),".agx"),"linear"),o=s.default.join(u,"issues.sqlite");function d(e){return e?.trim()||null}function c(e){return new Date(e).toISOString()}function p(e){return{id:e.issue_id,identifier:e.identifier,title:e.title,description:e.description,url:e.url,status:e.status,assigneeId:e.assignee_id,assignee:e.assignee_name,assigneeEmail:e.assignee_email,isAssignedToMe:1===e.is_assigned_to_me,teamId:e.team_id,teamName:e.team_name,teamKey:e.team_key,cycleId:e.cycle_id,cycleName:e.cycle_name,cycleNumber:e.cycle_number,updatedAt:e.updated_at,pulledAt:c(e.pulled_at)}}async function m(e){await t.promises.mkdir(u,{recursive:!0});let s=new r.DatabaseSync(o);(0,l.pragmaSet)(s,"journal_mode = WAL");try{return s.exec(`
66
66
  CREATE TABLE IF NOT EXISTS linear_issues (
67
67
  issue_id TEXT PRIMARY KEY,
68
68
  identifier TEXT NOT NULL,
@@ -128,23 +128,23 @@ module.exports=[918622,(e,t,s)=>{t.exports=e.x("next/dist/compiled/next-server/a
128
128
  `).run(a,s,t)})}async function _(e="global"){let t=e.trim()||"global";return m(e=>{let s=e.prepare(`SELECT scope_key, last_pulled_at, issue_count
129
129
  FROM linear_issue_sync_state
130
130
  WHERE scope_key = ?
131
- LIMIT 1`).get(t);return s?{scopeKey:s.scope_key,lastPulledAt:c(s.last_pulled_at),issueCount:s.issue_count}:null})}async function y(){return m(e=>{let t=e.prepare("SELECT COUNT(*) AS count FROM linear_issues").get();return t?.count??0})}async function E(e={}){let t=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),500):50,s=Number.isFinite(Number(e.cursor))?Math.max(Number(e.cursor),0):0;return m(a=>{let n=[],i=[],r=d(e.search??null);if(r){let e=`%${r.toLowerCase().replace(/[\\%_]/g,"\\$&")}%`;n.push("(LOWER(identifier) LIKE ? ESCAPE '\\' OR LOWER(title) LIKE ? ESCAPE '\\' OR LOWER(COALESCE(description, '')) LIKE ? ESCAPE '\\')"),i.push(e,e,e)}let l=Array.from(new Set((e.statuses??[]).map(e=>d(e)).filter(e=>!!e).map(e=>e.toLowerCase())));l.length>0&&(n.push(`LOWER(status) IN (${l.map(()=>"?").join(", ")})`),i.push(...l));let u=Array.from(new Set((e.assigneeIds??[]).map(e=>d(e)).filter(e=>!!e)));u.length>0&&(n.push(`assignee_id IN (${u.map(()=>"?").join(", ")})`),i.push(...u)),e.assignedToMe&&n.push("is_assigned_to_me = 1");let o=d(e.teamId??null);o&&(n.push("team_id = ?"),i.push(o));let c=d(e.cycleId??null);c&&(n.push("cycle_id = ?"),i.push(c));let m=n.length>0?`WHERE ${n.join(" AND ")}`:"",f=a.prepare(`SELECT *
131
+ LIMIT 1`).get(t);return s?{scopeKey:s.scope_key,lastPulledAt:c(s.last_pulled_at),issueCount:s.issue_count}:null})}async function y(){return m(e=>{let t=e.prepare("SELECT COUNT(*) AS count FROM linear_issues").get();return t?.count??0})}async function E(e={}){let t=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),500):50,s=Number.isFinite(Number(e.cursor))?Math.max(Number(e.cursor),0):0;return m(a=>{let n=[],r=[],i=d(e.search??null);if(i){let e=`%${i.toLowerCase().replace(/[\\%_]/g,"\\$&")}%`;n.push("(LOWER(identifier) LIKE ? ESCAPE '\\' OR LOWER(title) LIKE ? ESCAPE '\\' OR LOWER(COALESCE(description, '')) LIKE ? ESCAPE '\\')"),r.push(e,e,e)}let l=Array.from(new Set((e.statuses??[]).map(e=>d(e)).filter(e=>!!e).map(e=>e.toLowerCase())));l.length>0&&(n.push(`LOWER(status) IN (${l.map(()=>"?").join(", ")})`),r.push(...l));let u=Array.from(new Set((e.assigneeIds??[]).map(e=>d(e)).filter(e=>!!e)));u.length>0&&(n.push(`assignee_id IN (${u.map(()=>"?").join(", ")})`),r.push(...u)),e.assignedToMe&&n.push("is_assigned_to_me = 1");let o=d(e.teamId??null);o&&(n.push("team_id = ?"),r.push(o));let c=d(e.cycleId??null);c&&(n.push("cycle_id = ?"),r.push(c));let m=n.length>0?`WHERE ${n.join(" AND ")}`:"",f=a.prepare(`SELECT *
132
132
  FROM linear_issues
133
133
  ${m}
134
134
  ORDER BY updated_at DESC, identifier ASC
135
- LIMIT ? OFFSET ?`).all(...i,t+1,s),g=f.length>t,_=g?f.slice(0,t):f,y=g?String(s+t):null;return{issues:_.map(p),pageInfo:{hasNextPage:g,endCursor:y}}})}async function h(){return m(e=>e.prepare(`SELECT DISTINCT status
135
+ LIMIT ? OFFSET ?`).all(...r,t+1,s),g=f.length>t,_=g?f.slice(0,t):f,y=g?String(s+t):null;return{issues:_.map(p),pageInfo:{hasNextPage:g,endCursor:y}}})}async function h(){return m(e=>e.prepare(`SELECT DISTINCT status
136
136
  FROM linear_issues
137
137
  WHERE TRIM(status) <> ''
138
138
  ORDER BY LOWER(status) ASC`).all().map(e=>e.status.trim()).filter(Boolean))}async function T(e){let t=Array.from(new Set(e.map(e=>e.trim()).filter(Boolean)));return 0===t.length?[]:m(e=>{let s=t.map(()=>"?").join(", "),a=new Map(e.prepare(`SELECT *
139
139
  FROM linear_issues
140
- WHERE issue_id IN (${s})`).all(...t).map(e=>[e.issue_id,p(e)]));return t.map(e=>a.get(e)).filter(e=>!!e)})}e.s(["countCachedLinearIssues",()=>y,"getCachedLinearIssueContexts",()=>T,"getLinearIssueSyncState",()=>_,"listCachedLinearIssueStatuses",()=>h,"listCachedLinearIssues",()=>E,"replaceCachedLinearIssues",()=>f,"setLinearIssueSyncState",()=>g],343649);var x=e.i(492952);let A="global";function S(e){let t=String(e??"").trim().toLowerCase();return t?`project:${t}`:A}function R(e){t.default.mkdirSync(e,{recursive:!0})}function N(e,a){R(s.default.dirname(e));let n=`${e}.tmp-${process.pid}-${Date.now()}`;t.default.writeFileSync(n,a,"utf8"),t.default.renameSync(n,e)}function I(e){return{id:e.id,identifier:e.identifier,title:e.title,url:e.url,status:e.status,assignee:e.assignee,updatedAt:e.updatedAt}}function L(e){return{...I(e),description:e.description,assigneeId:e.assigneeId,assigneeEmail:e.assigneeEmail,isAssignedToMe:e.isAssignedToMe,teamId:e.teamId,teamName:e.teamName,teamKey:e.teamKey,cycleId:e.cycleId,cycleName:e.cycleName,cycleNumber:e.cycleNumber,pulledAt:e.pulledAt}}function w(e,t){return e.trim().replace(/[\\/]/g,"-")||t}async function C(e={}){let t,i=(0,n.getLinearClient)();if(!i)throw Error("Not connected");let r=await i.viewer,l=Date.now(),u=new Date(l).toISOString(),o=0,d=!0,c=[];for(;o<500;){let e=500-o,s=await i.issues({first:Math.min(100,e),after:t,orderBy:"updatedAt"}),a=await Promise.all(s.nodes.map(async e=>{let[t,s,a,n]=await Promise.all([e.state,e.assignee,e.team,e.cycle]);return{id:e.id,identifier:e.identifier,title:e.title,description:e.description??null,url:e.url,status:t?.name??"Unknown",assigneeId:s?.id??null,assignee:s?.name??null,assigneeEmail:s?.email??null,isAssignedToMe:!!(s?.id&&s.id===r.id),teamId:a?.id??null,teamName:a?.name??null,teamKey:a?.key??null,cycleId:n?.id??null,cycleName:n?.name??null,cycleNumber:n?.number??null,updatedAt:e.updatedAt}}));if(c.push(...a),o+=a.length,!s.pageInfo.hasNextPage||!s.pageInfo.endCursor)break;if(o>=500){d=!1;break}t=s.pageInfo.endCursor}await f({issues:c,complete:d,pulledAtMs:l}),await g(A,c.length,l);let p=S(e.projectSlug);return p!==A&&await g(p,c.length,l),!function(e,t,n){let i=function(e){let t=x.vaultStore.getRootDir(),a=String(e??"").trim();if(a){let e=x.vaultStore.getProjectWithRepos(a),n=e?.slug??a;return s.default.join(t,n,"issues")}return s.default.join(t,"_global","Linear","issues")}(n);R(i);let r=["# Linear Issues","",`Last pulled: ${t}`,""];for(let n of e){let e=s.default.join(i,w(n.identifier,n.id));!function(e,t,s){let n=(0,a.dump)(t,{lineWidth:120,noRefs:!0,sortKeys:!0}).trimEnd(),i=String(s||"").replace(/\r\n/g,"\n").split("\n").map(e=>e.replace(/\s+$/g,"")).join("\n").trim();N(e,i?`---
140
+ WHERE issue_id IN (${s})`).all(...t).map(e=>[e.issue_id,p(e)]));return t.map(e=>a.get(e)).filter(e=>!!e)})}e.s(["countCachedLinearIssues",()=>y,"getCachedLinearIssueContexts",()=>T,"getLinearIssueSyncState",()=>_,"listCachedLinearIssueStatuses",()=>h,"listCachedLinearIssues",()=>E,"replaceCachedLinearIssues",()=>f,"setLinearIssueSyncState",()=>g],343649);var x=e.i(492952);let S="global";function A(e){let t=String(e??"").trim().toLowerCase();return t?`project:${t}`:S}function N(e){t.default.mkdirSync(e,{recursive:!0})}function R(e,a){N(s.default.dirname(e));let n=`${e}.tmp-${process.pid}-${Date.now()}`;t.default.writeFileSync(n,a,"utf8"),t.default.renameSync(n,e)}function I(e){return{id:e.id,identifier:e.identifier,title:e.title,url:e.url,status:e.status,assignee:e.assignee,updatedAt:e.updatedAt}}function L(e){return{...I(e),description:e.description,assigneeId:e.assigneeId,assigneeEmail:e.assigneeEmail,isAssignedToMe:e.isAssignedToMe,teamId:e.teamId,teamName:e.teamName,teamKey:e.teamKey,cycleId:e.cycleId,cycleName:e.cycleName,cycleNumber:e.cycleNumber,pulledAt:e.pulledAt}}function w(e,t){return e.trim().replace(/[\\/]/g,"-")||t}async function C(e={}){let t,r=(0,n.getLinearClient)();if(!r)throw Error("Not connected");let i=await r.viewer,l=Date.now(),u=new Date(l).toISOString(),o=0,d=!0,c=[];for(;o<500;){let e=500-o,s=await r.issues({first:Math.min(100,e),after:t,orderBy:"updatedAt"}),a=await Promise.all(s.nodes.map(async e=>{let[t,s,a,n]=await Promise.all([e.state,e.assignee,e.team,e.cycle]);return{id:e.id,identifier:e.identifier,title:e.title,description:e.description??null,url:e.url,status:t?.name??"Unknown",assigneeId:s?.id??null,assignee:s?.name??null,assigneeEmail:s?.email??null,isAssignedToMe:!!(s?.id&&s.id===i.id),teamId:a?.id??null,teamName:a?.name??null,teamKey:a?.key??null,cycleId:n?.id??null,cycleName:n?.name??null,cycleNumber:n?.number??null,updatedAt:e.updatedAt}}));if(c.push(...a),o+=a.length,!s.pageInfo.hasNextPage||!s.pageInfo.endCursor)break;if(o>=500){d=!1;break}t=s.pageInfo.endCursor}await f({issues:c,complete:d,pulledAtMs:l}),await g(S,c.length,l);let p=A(e.projectSlug);return p!==S&&await g(p,c.length,l),!function(e,t,n){let r=function(e){let t=x.vaultStore.getRootDir(),a=String(e??"").trim();if(a){let e=x.vaultStore.getProjectWithRepos(a),n=e?.slug??a;return s.default.join(t,n,"issues")}return s.default.join(t,"_global","Linear","issues")}(n);N(r);let i=["# Linear Issues","",`Last pulled: ${t}`,""];for(let n of e){let e=s.default.join(r,w(n.identifier,n.id));!function(e,t,s){let n=(0,a.dump)(t,{lineWidth:120,noRefs:!0,sortKeys:!0}).trimEnd(),r=String(s||"").replace(/\r\n/g,"\n").split("\n").map(e=>e.replace(/\s+$/g,"")).join("\n").trim();R(e,r?`---
141
141
  ${n}
142
142
  ---
143
- ${i}
143
+ ${r}
144
144
  `:`---
145
145
  ${n}
146
146
  ---
147
- `)}(s.default.join(e,"README.md"),{type:"linear-issue",issue_id:n.id,identifier:n.identifier,title:n.title,status:n.status,assignee_id:n.assigneeId??null,assignee_name:n.assignee??null,assignee_email:n.assigneeEmail??null,team_id:n.teamId??null,team_name:n.teamName??null,team_key:n.teamKey??null,cycle_id:n.cycleId??null,cycle_name:n.cycleName??null,cycle_number:n.cycleNumber??null,url:n.url??null,updated_at:n.updatedAt,pulled_at:t},[`# ${n.identifier}: ${n.title}`,"",`- Status: ${n.status}`,`- Assignee: ${n.assignee??"Unassigned"}`,n.teamName?`- Team: ${n.teamName}`:null,n.cycleName||null!=n.cycleNumber?`- Cycle: ${n.cycleName??`Cycle ${n.cycleNumber}`}`:null,`- Updated in Linear: ${n.updatedAt}`,`- Pulled locally: ${t}`,n.url?`- URL: ${n.url}`:null,"","## Description","",n.description?.trim()||"_No description provided._"].filter(e=>null!==e).join("\n")),r.push(`- [${n.identifier}](${encodeURIComponent(w(n.identifier,n.id))}/README.md) - ${n.title} (${n.status})`)}N(s.default.join(i,"_index.md"),`${r.join("\n")}
148
- `)}(c,u,e.projectSlug),{issueCount:c.length,complete:d,pulledAt:u}}async function v(e={}){let t=!!e.refresh,s=S(e.projectSlug);if(!t){let[e,t]=await Promise.all([y(),_(s)]);if(e>0&&t)return null}return(0,n.getLinearClient)()?C({projectSlug:e.projectSlug}):null}async function b(e={}){let[t,s]=await Promise.all([E(e),_(A)]);return{issues:t.issues.map(I),pageInfo:t.pageInfo,syncState:{lastPulledAt:s?.lastPulledAt??null}}}async function O(e){return(await T(e)).map(L)}e.s(["ensureLinearIssueCache",()=>v,"getLinearIssueContexts",()=>O,"listLinearIssueSummaries",()=>b],832674)},107194,e=>{"use strict";var t=e.i(747909),s=e.i(174017),a=e.i(996250),n=e.i(759756),i=e.i(561916),r=e.i(174677),l=e.i(869741),u=e.i(316795),o=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),m=e.i(570101),f=e.i(626937),g=e.i(10372),_=e.i(193695);e.i(52474);var y=e.i(600220),E=e.i(89171),h=e.i(832674),T=e.i(841897);function x(e){return e?.trim()||void 0}async function A(e){let t=e.nextUrl.searchParams,s=Array.from(new Set(t.getAll("status").map(e=>e.trim()).filter(Boolean))),a=x(t.get("search")),n=x(t.get("teamId")),i=Array.from(new Set(t.getAll("assigneeId").map(e=>e.trim()).filter(Boolean))),r=x(t.get("cursor")),l=x(t.get("cycleId")),u=x(t.get("projectSlug")),o="true"===t.get("assignedToMe"),d="true"===t.get("refresh"),c=Number(t.get("limit")??"50");try{let e=await (0,h.ensureLinearIssueCache)({refresh:d,projectSlug:u}),t=await (0,h.listLinearIssueSummaries)({statuses:s,search:a,assigneeIds:i,assignedToMe:o,teamId:n,cycleId:l,cursor:r,limit:c});if(!t.syncState.lastPulledAt&&!e&&!(0,T.getLinearClient)())return E.NextResponse.json({error:"Not connected"},{status:401});return E.NextResponse.json({issues:t.issues,pageInfo:t.pageInfo,syncState:t.syncState,refreshedAt:e?.pulledAt??null})}catch(e){return E.NextResponse.json({error:e.message??"Failed to fetch issues"},{status:500})}}e.s(["GET",()=>A,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],159699);var S=e.i(159699);let R=new t.AppRouteRouteModule({definition:{kind:s.RouteKind.APP_ROUTE,page:"/api/linear/issues/route",pathname:"/api/linear/issues",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/linear/issues/route.ts",nextConfigOutput:"standalone",userland:S}),{workAsyncStorage:N,workUnitAsyncStorage:I,serverHooks:L}=R;function w(){return(0,a.patchFetch)({workAsyncStorage:N,workUnitAsyncStorage:I})}async function C(e,t,a){R.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let E="/api/linear/issues/route";E=E.replace(/\/index$/,"")||"/";let h=await R.prepare(e,t,{srcPage:E,multiZoneDraftMode:!1});if(!h)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:T,params:x,nextConfig:A,parsedUrl:S,isDraftMode:N,prerenderManifest:I,routerServerContext:L,isOnDemandRevalidate:w,revalidateOnlyGenerated:C,resolvedPathname:v,clientReferenceManifest:b,serverActionsManifest:O}=h,$=(0,l.normalizeAppPath)(E),j=!!(I.dynamicRoutes[$]||I.routes[v]),k=async()=>((null==L?void 0:L.render404)?await L.render404(e,t,S,!1):t.end("This page could not be found"),null);if(j&&!N){let e=!!I.routes[v],t=I.dynamicRoutes[$];if(t&&!1===t.fallback&&!e){if(A.experimental.adapterPath)return await k();throw new _.NoFallbackError}}let q=null;!j||R.isDev||N||(q="/index"===(q=v)?"/":q);let D=!0===R.isDev||!j,M=j&&!D;O&&b&&(0,r.setManifestsSingleton)({page:E,clientReferenceManifest:b,serverActionsManifest:O});let P=e.method||"GET",U=(0,i.getTracer)(),F=U.getActiveScopeSpan(),X={params:x,prerenderManifest:I,renderOpts:{experimental:{authInterrupts:!!A.experimental.authInterrupts},cacheComponents:!!A.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:A.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,s,a,n)=>R.onRequestError(e,t,a,n,L)},sharedContext:{buildId:T}},B=new u.NodeNextRequest(e),G=new u.NodeNextResponse(t),K=o.NextRequestAdapter.fromNodeNextRequest(B,(0,o.signalFromNodeResponse)(t));try{let r=async e=>R.handle(K,X).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let s=U.getRootSpanAttributes();if(!s)return;if(s.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${s.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=s.get("next.route");if(a){let t=`${P} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${P} ${E}`)}),l=!!(0,n.getRequestMeta)(e,"minimalMode"),u=async n=>{var i,u;let o=async({previousCacheEntry:s})=>{try{if(!l&&w&&C&&!s)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await r(n);e.fetchMetrics=X.renderOpts.fetchMetrics;let u=X.renderOpts.pendingWaitUntil;u&&a.waitUntil&&(a.waitUntil(u),u=void 0);let o=X.renderOpts.collectedTags;if(!j)return await (0,p.sendResponse)(B,G,i,X.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(i.headers);o&&(t[g.NEXT_CACHE_TAGS_HEADER]=o),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let s=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,a=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:X.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:s,expire:a}}}}catch(t){throw(null==s?void 0:s.isStale)&&await R.onRequestError(e,t,{routerKind:"App Router",routePath:E,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:w})},!1,L),t}},d=await R.handleResponse({req:e,nextConfig:A,cacheKey:q,routeKind:s.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:I,isRoutePPREnabled:!1,isOnDemandRevalidate:w,revalidateOnlyGenerated:C,responseGenerator:o,waitUntil:a.waitUntil,isMinimalMode:l});if(!j)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==y.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(u=d.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});l||t.setHeader("x-nextjs-cache",w?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),N&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let _=(0,m.fromNodeOutgoingHttpHeaders)(d.value.headers);return l&&j||_.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||_.get("Cache-Control")||_.set("Cache-Control",(0,f.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(B,G,new Response(d.value.body,{headers:_,status:d.value.status||200})),null};F?await u(F):await U.withPropagatedContext(e.headers,()=>U.trace(d.BaseServerSpan.handleRequest,{spanName:`${P} ${E}`,kind:i.SpanKind.SERVER,attributes:{"http.method":P,"http.target":e.url}},u))}catch(t){if(t instanceof _.NoFallbackError||await R.onRequestError(e,t,{routerKind:"App Router",routePath:$,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:w})},!1,L),j)throw t;return await (0,p.sendResponse)(B,G,new Response(null,{status:500})),null}}e.s(["handler",()=>C,"patchFetch",()=>w,"routeModule",()=>R,"serverHooks",()=>L,"workAsyncStorage",()=>N,"workUnitAsyncStorage",()=>I],107194)}];
147
+ `)}(s.default.join(e,"README.md"),{type:"linear-issue",issue_id:n.id,identifier:n.identifier,title:n.title,status:n.status,assignee_id:n.assigneeId??null,assignee_name:n.assignee??null,assignee_email:n.assigneeEmail??null,team_id:n.teamId??null,team_name:n.teamName??null,team_key:n.teamKey??null,cycle_id:n.cycleId??null,cycle_name:n.cycleName??null,cycle_number:n.cycleNumber??null,url:n.url??null,updated_at:n.updatedAt,pulled_at:t},[`# ${n.identifier}: ${n.title}`,"",`- Status: ${n.status}`,`- Assignee: ${n.assignee??"Unassigned"}`,n.teamName?`- Team: ${n.teamName}`:null,n.cycleName||null!=n.cycleNumber?`- Cycle: ${n.cycleName??`Cycle ${n.cycleNumber}`}`:null,`- Updated in Linear: ${n.updatedAt}`,`- Pulled locally: ${t}`,n.url?`- URL: ${n.url}`:null,"","## Description","",n.description?.trim()||"_No description provided._"].filter(e=>null!==e).join("\n")),i.push(`- [${n.identifier}](${encodeURIComponent(w(n.identifier,n.id))}/README.md) - ${n.title} (${n.status})`)}R(s.default.join(r,"_index.md"),`${i.join("\n")}
148
+ `)}(c,u,e.projectSlug),{issueCount:c.length,complete:d,pulledAt:u}}async function v(e={}){let t=!!e.refresh,s=A(e.projectSlug);if(!t){let[e,t]=await Promise.all([y(),_(s)]);if(e>0&&t)return null}return(0,n.getLinearClient)()?C({projectSlug:e.projectSlug}):null}async function b(e={}){let[t,s]=await Promise.all([E(e),_(S)]);return{issues:t.issues.map(I),pageInfo:t.pageInfo,syncState:{lastPulledAt:s?.lastPulledAt??null}}}async function O(e){return(await T(e)).map(L)}e.s(["ensureLinearIssueCache",()=>v,"getLinearIssueContexts",()=>O,"listLinearIssueSummaries",()=>b],832674)},107194,e=>{"use strict";var t=e.i(747909),s=e.i(174017),a=e.i(996250),n=e.i(759756),r=e.i(561916),i=e.i(174677),l=e.i(869741),u=e.i(316795),o=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),m=e.i(570101),f=e.i(626937),g=e.i(10372),_=e.i(193695);e.i(52474);var y=e.i(600220),E=e.i(89171),h=e.i(832674),T=e.i(841897);function x(e){return e?.trim()||void 0}async function S(e){let t=e.nextUrl.searchParams,s=Array.from(new Set(t.getAll("status").map(e=>e.trim()).filter(Boolean))),a=x(t.get("search")),n=x(t.get("teamId")),r=Array.from(new Set(t.getAll("assigneeId").map(e=>e.trim()).filter(Boolean))),i=x(t.get("cursor")),l=x(t.get("cycleId")),u=x(t.get("projectSlug")),o="true"===t.get("assignedToMe"),d="true"===t.get("refresh"),c=Number(t.get("limit")??"50");try{let e=await (0,h.ensureLinearIssueCache)({refresh:d,projectSlug:u}),t=await (0,h.listLinearIssueSummaries)({statuses:s,search:a,assigneeIds:r,assignedToMe:o,teamId:n,cycleId:l,cursor:i,limit:c});if(!t.syncState.lastPulledAt&&!e&&!(0,T.getLinearClient)())return E.NextResponse.json({error:"Not connected"},{status:401});return E.NextResponse.json({issues:t.issues,pageInfo:t.pageInfo,syncState:t.syncState,refreshedAt:e?.pulledAt??null})}catch(e){return E.NextResponse.json({error:e.message??"Failed to fetch issues"},{status:500})}}e.s(["GET",()=>S,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],159699);var A=e.i(159699);let N=new t.AppRouteRouteModule({definition:{kind:s.RouteKind.APP_ROUTE,page:"/api/linear/issues/route",pathname:"/api/linear/issues",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/linear/issues/route.ts",nextConfigOutput:"standalone",userland:A}),{workAsyncStorage:R,workUnitAsyncStorage:I,serverHooks:L}=N;function w(){return(0,a.patchFetch)({workAsyncStorage:R,workUnitAsyncStorage:I})}async function C(e,t,a){N.isDev&&(0,n.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let E="/api/linear/issues/route";E=E.replace(/\/index$/,"")||"/";let h=await N.prepare(e,t,{srcPage:E,multiZoneDraftMode:!1});if(!h)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:T,params:x,nextConfig:S,parsedUrl:A,isDraftMode:R,prerenderManifest:I,routerServerContext:L,isOnDemandRevalidate:w,revalidateOnlyGenerated:C,resolvedPathname:v,clientReferenceManifest:b,serverActionsManifest:O}=h,j=(0,l.normalizeAppPath)(E),$=!!(I.dynamicRoutes[j]||I.routes[v]),k=async()=>((null==L?void 0:L.render404)?await L.render404(e,t,A,!1):t.end("This page could not be found"),null);if($&&!R){let e=!!I.routes[v],t=I.dynamicRoutes[j];if(t&&!1===t.fallback&&!e){if(S.experimental.adapterPath)return await k();throw new _.NoFallbackError}}let q=null;!$||N.isDev||R||(q="/index"===(q=v)?"/":q);let D=!0===N.isDev||!$,M=$&&!D;O&&b&&(0,i.setManifestsSingleton)({page:E,clientReferenceManifest:b,serverActionsManifest:O});let P=e.method||"GET",U=(0,r.getTracer)(),F=U.getActiveScopeSpan(),X={params:x,prerenderManifest:I,renderOpts:{experimental:{authInterrupts:!!S.experimental.authInterrupts},cacheComponents:!!S.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,n.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:S.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,s,a,n)=>N.onRequestError(e,t,a,n,L)},sharedContext:{buildId:T}},B=new u.NodeNextRequest(e),G=new u.NodeNextResponse(t),K=o.NextRequestAdapter.fromNodeNextRequest(B,(0,o.signalFromNodeResponse)(t));try{let i=async e=>N.handle(K,X).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let s=U.getRootSpanAttributes();if(!s)return;if(s.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${s.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=s.get("next.route");if(a){let t=`${P} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${P} ${E}`)}),l=!!(0,n.getRequestMeta)(e,"minimalMode"),u=async n=>{var r,u;let o=async({previousCacheEntry:s})=>{try{if(!l&&w&&C&&!s)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let r=await i(n);e.fetchMetrics=X.renderOpts.fetchMetrics;let u=X.renderOpts.pendingWaitUntil;u&&a.waitUntil&&(a.waitUntil(u),u=void 0);let o=X.renderOpts.collectedTags;if(!$)return await (0,p.sendResponse)(B,G,r,X.renderOpts.pendingWaitUntil),null;{let e=await r.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(r.headers);o&&(t[g.NEXT_CACHE_TAGS_HEADER]=o),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let s=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=g.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,a=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=g.INFINITE_CACHE?void 0:X.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:r.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:s,expire:a}}}}catch(t){throw(null==s?void 0:s.isStale)&&await N.onRequestError(e,t,{routerKind:"App Router",routePath:E,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:w})},!1,L),t}},d=await N.handleResponse({req:e,nextConfig:S,cacheKey:q,routeKind:s.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:I,isRoutePPREnabled:!1,isOnDemandRevalidate:w,revalidateOnlyGenerated:C,responseGenerator:o,waitUntil:a.waitUntil,isMinimalMode:l});if(!$)return null;if((null==d||null==(r=d.value)?void 0:r.kind)!==y.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(u=d.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});l||t.setHeader("x-nextjs-cache",w?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),R&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let _=(0,m.fromNodeOutgoingHttpHeaders)(d.value.headers);return l&&$||_.delete(g.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||_.get("Cache-Control")||_.set("Cache-Control",(0,f.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(B,G,new Response(d.value.body,{headers:_,status:d.value.status||200})),null};F?await u(F):await U.withPropagatedContext(e.headers,()=>U.trace(d.BaseServerSpan.handleRequest,{spanName:`${P} ${E}`,kind:r.SpanKind.SERVER,attributes:{"http.method":P,"http.target":e.url}},u))}catch(t){if(t instanceof _.NoFallbackError||await N.onRequestError(e,t,{routerKind:"App Router",routePath:j,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:w})},!1,L),$)throw t;return await (0,p.sendResponse)(B,G,new Response(null,{status:500})),null}}e.s(["handler",()=>C,"patchFetch",()=>w,"routeModule",()=>N,"serverHooks",()=>L,"workAsyncStorage",()=>R,"workUnitAsyncStorage",()=>I],107194)}];
149
149
 
150
150
  //# sourceMappingURL=%5Broot-of-the-server%5D__20a2cb22._.js.map
@@ -0,0 +1,67 @@
1
+ module.exports=[193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},423502,(e,t,r)=>{},841897,e=>{"use strict";e.i(423502);var t=e.i(902157),r=e.i(660526),n=e.i(750227);let a=n.default.join((0,r.homedir)(),".agx");function s(){return n.default.join(a,"linear-token.json")}function i(){return n.default.join(process.cwd(),".linear-token.json")}function o(e){(0,t.existsSync)(a)||(0,t.mkdirSync)(a,{recursive:!0}),(0,t.writeFileSync)(s(),JSON.stringify(e,null,2))}function l(){try{(0,t.unlinkSync)(s())}catch{}try{(0,t.unlinkSync)(i())}catch{}}class d{accessToken;constructor(e){this.accessToken=e}get viewer(){return this.request("query { viewer { id name email } }").then(e=>e.viewer)}async users(){return(await this.request(`query {
2
+ users(first: 100) {
3
+ nodes {
4
+ id
5
+ name
6
+ }
7
+ }
8
+ }`)).users.nodes.filter(e=>e.name.trim().length>0).map(e=>({id:e.id,name:e.name})).sort((e,t)=>e.name.localeCompare(t.name))}async teams(){return(await this.request(`query {
9
+ teams(first: 50) {
10
+ nodes {
11
+ id
12
+ name
13
+ }
14
+ }
15
+ }`)).teams.nodes.filter(e=>e.name.trim().length>0).map(e=>({id:e.id,name:e.name})).sort((e,t)=>e.name.localeCompare(t.name))}async issues(e){let t,r=(t=[`first: ${e.first}`],e.after&&t.push(`after: ${JSON.stringify(e.after)}`),e.orderBy&&t.push(`orderBy: ${e.orderBy}`),e.filter&&Object.keys(e.filter).length>0&&t.push(`filter: ${function e(t){if(null===t)return"null";if(Array.isArray(t))return`[${t.map(e).join(", ")}]`;if("string"==typeof t)return JSON.stringify(t);if("number"==typeof t||"boolean"==typeof t)return String(t);if("object"==typeof t){let r=Object.entries(t).filter(([,e])=>void 0!==e);return`{ ${r.map(([t,r])=>`${t}: ${e(r)}`).join(", ")} }`}throw Error(`Unsupported GraphQL value: ${typeof t}`)}(e.filter)}`),t.join(", ")),n=await this.request(`query {
16
+ issues(${r}) {
17
+ nodes {
18
+ id
19
+ identifier
20
+ title
21
+ description
22
+ url
23
+ updatedAt
24
+ state { name }
25
+ assignee { id name email }
26
+ team { id name key }
27
+ cycle { id number name }
28
+ }
29
+ pageInfo {
30
+ hasNextPage
31
+ endCursor
32
+ }
33
+ }
34
+ }`);return{nodes:n.issues.nodes.map(e=>({id:e.id,identifier:e.identifier,title:e.title,description:e.description,url:e.url,updatedAt:e.updatedAt,state:Promise.resolve(e.state),assignee:Promise.resolve(e.assignee),team:Promise.resolve(e.team),cycle:Promise.resolve(e.cycle)})),pageInfo:n.issues.pageInfo}}async cycles(){let e=await this.request(`query {
35
+ teams(first: 50) {
36
+ nodes {
37
+ id
38
+ name
39
+ activeCycle {
40
+ id
41
+ number
42
+ name
43
+ startsAt
44
+ endsAt
45
+ team {
46
+ id
47
+ name
48
+ }
49
+ }
50
+ cycles(first: 20) {
51
+ nodes {
52
+ id
53
+ number
54
+ name
55
+ startsAt
56
+ endsAt
57
+ team {
58
+ id
59
+ name
60
+ }
61
+ }
62
+ }
63
+ }
64
+ }
65
+ }`),t=new Map;for(let r of e.teams.nodes)for(let e of[...r.activeCycle?[r.activeCycle]:[],...r.cycles.nodes])t.has(e.id)||t.set(e.id,{id:e.id,number:e.number,name:e.name,startsAt:e.startsAt,endsAt:e.endsAt,teamId:e.team?.id??r.id,teamName:e.team?.name??r.name});return[...t.values()].sort((e,t)=>new Date(t.startsAt).getTime()-new Date(e.startsAt).getTime())}async request(e){let t=await fetch("https://api.linear.app/graphql",{method:"POST",headers:{"Content-Type":"application/json",Authorization:this.accessToken},body:JSON.stringify({query:e}),cache:"no-store"}),r=await t.json();if(!t.ok||r.errors?.length)throw Error(r.errors?.map(e=>e.message).find(Boolean)??`Linear request failed with status ${t.status}`);if(!r.data)throw Error("Linear response did not include data");return r.data}}function u(){let e=function(){try{let e=(0,t.readFileSync)(s(),"utf8");return JSON.parse(e)}catch{}try{let e=i(),r=(0,t.readFileSync)(e,"utf8"),n=JSON.parse(r);o(n);try{(0,t.unlinkSync)(e)}catch{}return n}catch{return null}}();return e?new d(e.accessToken):null}e.s(["LinearClient",()=>d,"deleteLinearToken",()=>l,"getLinearClient",()=>u,"saveLinearToken",()=>o])},416498,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),s=e.i(561916),i=e.i(174677),o=e.i(869741),l=e.i(316795),d=e.i(487718),u=e.i(995169),c=e.i(47587),p=e.i(666012),m=e.i(570101),f=e.i(626937),h=e.i(10372),y=e.i(193695);e.i(52474);var x=e.i(600220),g=e.i(89171),v=e.i(841897);async function w(){let e=(0,v.getLinearClient)();if(!e)return g.NextResponse.json({error:"Not connected"},{status:401});try{let t=await e.cycles();return g.NextResponse.json({cycles:t})}catch(e){return g.NextResponse.json({error:e.message??"Failed to fetch cycles"},{status:500})}}e.s(["GET",()=>w,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],456194);var R=e.i(456194);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/linear/cycles/route",pathname:"/api/linear/cycles",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/linear/cycles/route.ts",nextConfigOutput:"standalone",userland:R}),{workAsyncStorage:C,workUnitAsyncStorage:E,serverHooks:b}=A;function k(){return(0,n.patchFetch)({workAsyncStorage:C,workUnitAsyncStorage:E})}async function q(e,t,n){A.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let g="/api/linear/cycles/route";g=g.replace(/\/index$/,"")||"/";let v=await A.prepare(e,t,{srcPage:g,multiZoneDraftMode:!1});if(!v)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:w,params:R,nextConfig:C,parsedUrl:E,isDraftMode:b,prerenderManifest:k,routerServerContext:q,isOnDemandRevalidate:N,revalidateOnlyGenerated:S,resolvedPathname:T,clientReferenceManifest:j,serverActionsManifest:O}=v,P=(0,o.normalizeAppPath)(g),$=!!(k.dynamicRoutes[P]||k.routes[T]),_=async()=>((null==q?void 0:q.render404)?await q.render404(e,t,E,!1):t.end("This page could not be found"),null);if($&&!b){let e=!!k.routes[T],t=k.dynamicRoutes[P];if(t&&!1===t.fallback&&!e){if(C.experimental.adapterPath)return await _();throw new y.NoFallbackError}}let I=null;!$||A.isDev||b||(I="/index"===(I=T)?"/":I);let H=!0===A.isDev||!$,U=$&&!H;O&&j&&(0,i.setManifestsSingleton)({page:g,clientReferenceManifest:j,serverActionsManifest:O});let D=e.method||"GET",L=(0,s.getTracer)(),M=L.getActiveScopeSpan(),F={params:R,prerenderManifest:k,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts},cacheComponents:!!C.cacheComponents,supportsDynamicResponse:H,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:C.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>A.onRequestError(e,t,n,a,q)},sharedContext:{buildId:w}},B=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),J=d.NextRequestAdapter.fromNodeNextRequest(B,(0,d.signalFromNodeResponse)(t));try{let i=async e=>A.handle(J,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=L.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=`${D} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${g}`)}),o=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var s,l;let d=async({previousCacheEntry:r})=>{try{if(!o&&N&&S&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(a);e.fetchMetrics=F.renderOpts.fetchMetrics;let l=F.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let d=F.renderOpts.collectedTags;if(!$)return await (0,p.sendResponse)(B,K,s,F.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(s.headers);d&&(t[h.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=h.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,n=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=h.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:g,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:N})},!1,q),t}},u=await A.handleResponse({req:e,nextConfig:C,cacheKey:I,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:k,isRoutePPREnabled:!1,isOnDemandRevalidate:N,revalidateOnlyGenerated:S,responseGenerator:d,waitUntil:n.waitUntil,isMinimalMode:o});if(!$)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==x.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});o||t.setHeader("x-nextjs-cache",N?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let y=(0,m.fromNodeOutgoingHttpHeaders)(u.value.headers);return o&&$||y.delete(h.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||y.get("Cache-Control")||y.set("Cache-Control",(0,f.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(B,K,new Response(u.value.body,{headers:y,status:u.value.status||200})),null};M?await l(M):await L.withPropagatedContext(e.headers,()=>L.trace(u.BaseServerSpan.handleRequest,{spanName:`${D} ${g}`,kind:s.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof y.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:P,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:U,isOnDemandRevalidate:N})},!1,q),$)throw t;return await (0,p.sendResponse)(B,K,new Response(null,{status:500})),null}}e.s(["handler",()=>q,"patchFetch",()=>k,"routeModule",()=>A,"serverHooks",()=>b,"workAsyncStorage",()=>C,"workUnitAsyncStorage",()=>E],416498)}];
66
+
67
+ //# sourceMappingURL=%5Broot-of-the-server%5D__37844df7._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},423502,(e,t,r)=>{},841897,e=>{"use strict";e.i(423502);var t=e.i(902157),r=e.i(750227);function n(){return r.default.join(process.cwd(),".linear-token.json")}function a(e){(0,t.writeFileSync)(n(),JSON.stringify(e,null,2))}function s(){try{(0,t.unlinkSync)(n())}catch{}}class i{accessToken;constructor(e){this.accessToken=e}get viewer(){return this.request("query { viewer { id name email } }").then(e=>e.viewer)}async users(){return(await this.request(`query {
1
+ module.exports=[193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},918622,(e,t,r)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,r)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},750227,(e,t,r)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,r)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,r)=>{t.exports=e.x("node:os",()=>require("node:os"))},423502,(e,t,r)=>{},841897,e=>{"use strict";e.i(423502);var t=e.i(902157),r=e.i(660526),n=e.i(750227);let a=n.default.join((0,r.homedir)(),".agx");function s(){return n.default.join(a,"linear-token.json")}function i(){return n.default.join(process.cwd(),".linear-token.json")}function o(e){(0,t.existsSync)(a)||(0,t.mkdirSync)(a,{recursive:!0}),(0,t.writeFileSync)(s(),JSON.stringify(e,null,2))}function l(){try{(0,t.unlinkSync)(s())}catch{}try{(0,t.unlinkSync)(i())}catch{}}class d{accessToken;constructor(e){this.accessToken=e}get viewer(){return this.request("query { viewer { id name email } }").then(e=>e.viewer)}async users(){return(await this.request(`query {
2
2
  users(first: 100) {
3
3
  nodes {
4
4
  id
@@ -62,11 +62,11 @@ module.exports=[193695,(e,t,r)=>{t.exports=e.x("next/dist/shared/lib/no-fallback
62
62
  }
63
63
  }
64
64
  }
65
- }`),t=new Map;for(let r of e.teams.nodes)for(let e of[...r.activeCycle?[r.activeCycle]:[],...r.cycles.nodes])t.has(e.id)||t.set(e.id,{id:e.id,number:e.number,name:e.name,startsAt:e.startsAt,endsAt:e.endsAt,teamId:e.team?.id??r.id,teamName:e.team?.name??r.name});return[...t.values()].sort((e,t)=>new Date(t.startsAt).getTime()-new Date(e.startsAt).getTime())}async request(e){let t=await fetch("https://api.linear.app/graphql",{method:"POST",headers:{"Content-Type":"application/json",Authorization:this.accessToken},body:JSON.stringify({query:e}),cache:"no-store"}),r=await t.json();if(!t.ok||r.errors?.length)throw Error(r.errors?.map(e=>e.message).find(Boolean)??`Linear request failed with status ${t.status}`);if(!r.data)throw Error("Linear response did not include data");return r.data}}function o(){let e=function(){try{let e=(0,t.readFileSync)(n(),"utf8");return JSON.parse(e)}catch{return null}}();return e?new i(e.accessToken):null}e.s(["LinearClient",()=>i,"deleteLinearToken",()=>s,"getLinearClient",()=>o,"saveLinearToken",()=>a])},358142,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),s=e.i(561916),i=e.i(174677),o=e.i(869741),l=e.i(316795),d=e.i(487718),u=e.i(995169),c=e.i(47587),p=e.i(666012),m=e.i(570101),h=e.i(626937),f=e.i(10372),y=e.i(193695);e.i(52474);var x=e.i(600220),v=e.i(89171),g=e.i(841897);async function w(e){let t=e.nextUrl.searchParams.get("access_token");if(!t)return new v.NextResponse("<html><body><p>Connection failed. You can close this tab.</p></body></html>",{headers:{"Content-Type":"text/html"}});let r=e.nextUrl.searchParams.get("expires_in");return(0,g.saveLinearToken)({accessToken:t,expiresAt:r?Date.now()+1e3*Number(r):void 0}),new v.NextResponse(`<html><body style="font-family:system-ui;display:flex;align-items:center;justify-content:center;height:100vh;margin:0;color:#666">
65
+ }`),t=new Map;for(let r of e.teams.nodes)for(let e of[...r.activeCycle?[r.activeCycle]:[],...r.cycles.nodes])t.has(e.id)||t.set(e.id,{id:e.id,number:e.number,name:e.name,startsAt:e.startsAt,endsAt:e.endsAt,teamId:e.team?.id??r.id,teamName:e.team?.name??r.name});return[...t.values()].sort((e,t)=>new Date(t.startsAt).getTime()-new Date(e.startsAt).getTime())}async request(e){let t=await fetch("https://api.linear.app/graphql",{method:"POST",headers:{"Content-Type":"application/json",Authorization:this.accessToken},body:JSON.stringify({query:e}),cache:"no-store"}),r=await t.json();if(!t.ok||r.errors?.length)throw Error(r.errors?.map(e=>e.message).find(Boolean)??`Linear request failed with status ${t.status}`);if(!r.data)throw Error("Linear response did not include data");return r.data}}function u(){let e=function(){try{let e=(0,t.readFileSync)(s(),"utf8");return JSON.parse(e)}catch{}try{let e=i(),r=(0,t.readFileSync)(e,"utf8"),n=JSON.parse(r);o(n);try{(0,t.unlinkSync)(e)}catch{}return n}catch{return null}}();return e?new d(e.accessToken):null}e.s(["LinearClient",()=>d,"deleteLinearToken",()=>l,"getLinearClient",()=>u,"saveLinearToken",()=>o])},358142,e=>{"use strict";var t=e.i(747909),r=e.i(174017),n=e.i(996250),a=e.i(759756),s=e.i(561916),i=e.i(174677),o=e.i(869741),l=e.i(316795),d=e.i(487718),u=e.i(995169),c=e.i(47587),p=e.i(666012),m=e.i(570101),h=e.i(626937),f=e.i(10372),y=e.i(193695);e.i(52474);var x=e.i(600220),v=e.i(89171),g=e.i(841897);async function w(e){let t=e.nextUrl.searchParams.get("access_token");if(!t)return new v.NextResponse("<html><body><p>Connection failed. You can close this tab.</p></body></html>",{headers:{"Content-Type":"text/html"}});let r=e.nextUrl.searchParams.get("expires_in");return(0,g.saveLinearToken)({accessToken:t,expiresAt:r?Date.now()+1e3*Number(r):void 0}),new v.NextResponse(`<html><body style="font-family:system-ui;display:flex;align-items:center;justify-content:center;height:100vh;margin:0;color:#666">
66
66
  <div style="text-align:center">
67
67
  <p>Connected to Linear. You can close this tab.</p>
68
68
  <script>window.close()</script>
69
69
  </div>
70
- </body></html>`,{headers:{"Content-Type":"text/html"}})}async function R(e){try{let t=(await e.json()).accessToken;if(!t||"string"!=typeof t)return v.NextResponse.json({error:"Missing access token"},{status:400});let r=new g.LinearClient(t);try{await r.viewer}catch{return v.NextResponse.json({error:"Invalid API key"},{status:401})}return(0,g.saveLinearToken)({accessToken:t}),v.NextResponse.json({ok:!0})}catch{return v.NextResponse.json({error:"Invalid request"},{status:400})}}e.s(["GET",()=>w,"POST",()=>R,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],884242);var C=e.i(884242);let A=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/linear/token/route",pathname:"/api/linear/token",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/linear/token/route.ts",nextConfigOutput:"standalone",userland:C}),{workAsyncStorage:b,workUnitAsyncStorage:E,serverHooks:k}=A;function T(){return(0,n.patchFetch)({workAsyncStorage:b,workUnitAsyncStorage:E})}async function N(e,t,n){A.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/linear/token/route";v=v.replace(/\/index$/,"")||"/";let g=await A.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:w,params:R,nextConfig:C,parsedUrl:b,isDraftMode:E,prerenderManifest:k,routerServerContext:T,isOnDemandRevalidate:N,revalidateOnlyGenerated:q,resolvedPathname:j,clientReferenceManifest:P,serverActionsManifest:O}=g,S=(0,o.normalizeAppPath)(v),I=!!(k.dynamicRoutes[S]||k.routes[j]),_=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,b,!1):t.end("This page could not be found"),null);if(I&&!E){let e=!!k.routes[j],t=k.dynamicRoutes[S];if(t&&!1===t.fallback&&!e){if(C.experimental.adapterPath)return await _();throw new y.NoFallbackError}}let $=null;!I||A.isDev||E||($="/index"===($=j)?"/":$);let U=!0===A.isDev||!I,H=I&&!U;O&&P&&(0,i.setManifestsSingleton)({page:v,clientReferenceManifest:P,serverActionsManifest:O});let D=e.method||"GET",L=(0,s.getTracer)(),M=L.getActiveScopeSpan(),F={params:R,prerenderManifest:k,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts},cacheComponents:!!C.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:C.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>A.onRequestError(e,t,n,a,T)},sharedContext:{buildId:w}},B=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),G=d.NextRequestAdapter.fromNodeNextRequest(B,(0,d.signalFromNodeResponse)(t));try{let i=async e=>A.handle(G,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=L.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=`${D} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${v}`)}),o=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var s,l;let d=async({previousCacheEntry:r})=>{try{if(!o&&N&&q&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(a);e.fetchMetrics=F.renderOpts.fetchMetrics;let l=F.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let d=F.renderOpts.collectedTags;if(!I)return await (0,p.sendResponse)(B,K,s,F.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(s.headers);d&&(t[f.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,n=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:N})},!1,T),t}},u=await A.handleResponse({req:e,nextConfig:C,cacheKey:$,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:k,isRoutePPREnabled:!1,isOnDemandRevalidate:N,revalidateOnlyGenerated:q,responseGenerator:d,waitUntil:n.waitUntil,isMinimalMode:o});if(!I)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==x.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});o||t.setHeader("x-nextjs-cache",N?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),E&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let y=(0,m.fromNodeOutgoingHttpHeaders)(u.value.headers);return o&&I||y.delete(f.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||y.get("Cache-Control")||y.set("Cache-Control",(0,h.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(B,K,new Response(u.value.body,{headers:y,status:u.value.status||200})),null};M?await l(M):await L.withPropagatedContext(e.headers,()=>L.trace(u.BaseServerSpan.handleRequest,{spanName:`${D} ${v}`,kind:s.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof y.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:S,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:N})},!1,T),I)throw t;return await (0,p.sendResponse)(B,K,new Response(null,{status:500})),null}}e.s(["handler",()=>N,"patchFetch",()=>T,"routeModule",()=>A,"serverHooks",()=>k,"workAsyncStorage",()=>b,"workUnitAsyncStorage",()=>E],358142)}];
70
+ </body></html>`,{headers:{"Content-Type":"text/html"}})}async function R(e){try{let t=(await e.json()).accessToken;if(!t||"string"!=typeof t)return v.NextResponse.json({error:"Missing access token"},{status:400});let r=new g.LinearClient(t);try{await r.viewer}catch{return v.NextResponse.json({error:"Invalid API key"},{status:401})}return(0,g.saveLinearToken)({accessToken:t}),v.NextResponse.json({ok:!0})}catch{return v.NextResponse.json({error:"Invalid request"},{status:400})}}e.s(["GET",()=>w,"POST",()=>R,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],884242);var C=e.i(884242);let k=new t.AppRouteRouteModule({definition:{kind:r.RouteKind.APP_ROUTE,page:"/api/linear/token/route",pathname:"/api/linear/token",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/linear/token/route.ts",nextConfigOutput:"standalone",userland:C}),{workAsyncStorage:A,workUnitAsyncStorage:b,serverHooks:E}=k;function T(){return(0,n.patchFetch)({workAsyncStorage:A,workUnitAsyncStorage:b})}async function N(e,t,n){k.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let v="/api/linear/token/route";v=v.replace(/\/index$/,"")||"/";let g=await k.prepare(e,t,{srcPage:v,multiZoneDraftMode:!1});if(!g)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:w,params:R,nextConfig:C,parsedUrl:A,isDraftMode:b,prerenderManifest:E,routerServerContext:T,isOnDemandRevalidate:N,revalidateOnlyGenerated:j,resolvedPathname:q,clientReferenceManifest:S,serverActionsManifest:P}=g,O=(0,o.normalizeAppPath)(v),I=!!(E.dynamicRoutes[O]||E.routes[q]),_=async()=>((null==T?void 0:T.render404)?await T.render404(e,t,A,!1):t.end("This page could not be found"),null);if(I&&!b){let e=!!E.routes[q],t=E.dynamicRoutes[O];if(t&&!1===t.fallback&&!e){if(C.experimental.adapterPath)return await _();throw new y.NoFallbackError}}let $=null;!I||k.isDev||b||($="/index"===($=q)?"/":$);let U=!0===k.isDev||!I,H=I&&!U;P&&S&&(0,i.setManifestsSingleton)({page:v,clientReferenceManifest:S,serverActionsManifest:P});let D=e.method||"GET",L=(0,s.getTracer)(),M=L.getActiveScopeSpan(),F={params:R,prerenderManifest:E,renderOpts:{experimental:{authInterrupts:!!C.experimental.authInterrupts},cacheComponents:!!C.cacheComponents,supportsDynamicResponse:U,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:C.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,r,n,a)=>k.onRequestError(e,t,n,a,T)},sharedContext:{buildId:w}},B=new l.NodeNextRequest(e),K=new l.NodeNextResponse(t),J=d.NextRequestAdapter.fromNodeNextRequest(B,(0,d.signalFromNodeResponse)(t));try{let i=async e=>k.handle(J,F).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let r=L.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=`${D} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${D} ${v}`)}),o=!!(0,a.getRequestMeta)(e,"minimalMode"),l=async a=>{var s,l;let d=async({previousCacheEntry:r})=>{try{if(!o&&N&&j&&!r)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let s=await i(a);e.fetchMetrics=F.renderOpts.fetchMetrics;let l=F.renderOpts.pendingWaitUntil;l&&n.waitUntil&&(n.waitUntil(l),l=void 0);let d=F.renderOpts.collectedTags;if(!I)return await (0,p.sendResponse)(B,K,s,F.renderOpts.pendingWaitUntil),null;{let e=await s.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(s.headers);d&&(t[f.NEXT_CACHE_TAGS_HEADER]=d),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let r=void 0!==F.renderOpts.collectedRevalidate&&!(F.renderOpts.collectedRevalidate>=f.INFINITE_CACHE)&&F.renderOpts.collectedRevalidate,n=void 0===F.renderOpts.collectedExpire||F.renderOpts.collectedExpire>=f.INFINITE_CACHE?void 0:F.renderOpts.collectedExpire;return{value:{kind:x.CachedRouteKind.APP_ROUTE,status:s.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:r,expire:n}}}}catch(t){throw(null==r?void 0:r.isStale)&&await k.onRequestError(e,t,{routerKind:"App Router",routePath:v,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:N})},!1,T),t}},u=await k.handleResponse({req:e,nextConfig:C,cacheKey:$,routeKind:r.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:E,isRoutePPREnabled:!1,isOnDemandRevalidate:N,revalidateOnlyGenerated:j,responseGenerator:d,waitUntil:n.waitUntil,isMinimalMode:o});if(!I)return null;if((null==u||null==(s=u.value)?void 0:s.kind)!==x.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});o||t.setHeader("x-nextjs-cache",N?"REVALIDATED":u.isMiss?"MISS":u.isStale?"STALE":"HIT"),b&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let y=(0,m.fromNodeOutgoingHttpHeaders)(u.value.headers);return o&&I||y.delete(f.NEXT_CACHE_TAGS_HEADER),!u.cacheControl||t.getHeader("Cache-Control")||y.get("Cache-Control")||y.set("Cache-Control",(0,h.getCacheControlHeader)(u.cacheControl)),await (0,p.sendResponse)(B,K,new Response(u.value.body,{headers:y,status:u.value.status||200})),null};M?await l(M):await L.withPropagatedContext(e.headers,()=>L.trace(u.BaseServerSpan.handleRequest,{spanName:`${D} ${v}`,kind:s.SpanKind.SERVER,attributes:{"http.method":D,"http.target":e.url}},l))}catch(t){if(t instanceof y.NoFallbackError||await k.onRequestError(e,t,{routerKind:"App Router",routePath:O,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:H,isOnDemandRevalidate:N})},!1,T),I)throw t;return await (0,p.sendResponse)(B,K,new Response(null,{status:500})),null}}e.s(["handler",()=>N,"patchFetch",()=>T,"routeModule",()=>k,"serverHooks",()=>E,"workAsyncStorage",()=>A,"workUnitAsyncStorage",()=>b],358142)}];
71
71
 
72
- //# sourceMappingURL=%5Broot-of-the-server%5D__d9f2041b._.js.map
72
+ //# sourceMappingURL=%5Broot-of-the-server%5D__3a93931b._.js.map
@@ -1,4 +1,4 @@
1
- module.exports=[918622,(e,t,s)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,s)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,s)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,s)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,s)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let s=e.prepare(`PRAGMA ${t}`).get();if(!s)return;let a=Object.values(s);return a.length>0?a[0]:void 0}function s(e,t){return e.prepare(`PRAGMA ${t}`).all()}function a(e,t){e.exec(`PRAGMA ${t}`)}function i(e,t){e.exec("BEGIN");try{let s=t();return e.exec("COMMIT"),s}catch(t){throw e.exec("ROLLBACK"),t}}function n(e,t){return(...s)=>{e.exec("BEGIN");try{let a=t(...s);return e.exec("COMMIT"),a}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>s,"pragmaGet",()=>t,"pragmaSet",()=>a,"transaction",()=>i,"transactionFn",()=>n])},233405,(e,t,s)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var s=e.i(446786),a=e.i(814747);let i="3.35.0",n=["json1"],r=["fts5"],l=["nfs","smb","cifs","efs","fuse.sshfs"];function u(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function o(o,d){let c=[],p=o.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let s=e.split(".").map(Number),a=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(s[e]||0)-(a[e]||0);if(0!==t)return t}return 0}(p.v,i)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${i}`,found:p.v,required:`>= ${i}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),n))u(o,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of r)u(o,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let m=function(t){"linux"!==s.default.platform()&&s.default.platform();try{let i=a.default.resolve(t),{execSync:n}=e.r(233405);if("darwin"===s.default.platform()){let e=n(`df -T "${i}" 2>/dev/null || df "${i}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),s=t[0]?.toLowerCase()||"";if(s.includes("://")||s.includes("nfs")||s.includes("smb"))return s}}}catch{}return null}(d);m&&l.some(e=>m.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${m})`,path:d,found:m,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(o,"journal_mode = wal"),(0,t.pragmaSet)(o,"foreign_keys = 1"),(0,t.pragmaSet)(o,"busy_timeout = 5000"),(0,t.pragmaSet)(o,"synchronous = 1"),(0,t.pragmaSet)(o,"cache_size = -64000");let e=(0,t.pragmaGet)(o,"journal_mode").toLowerCase(),s=new Set(["wal","delete"]);if(!s.has(e)){(0,t.pragmaSet)(o,"journal_mode = DELETE");let e=(0,t.pragmaGet)(o,"journal_mode").toLowerCase();s.has(e)?((0,t.pragmaSet)(o,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>o])},500874,(e,t,s)=>{t.exports=e.x("buffer",()=>require("buffer"))},750227,(e,t,s)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,s)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,s)=>{t.exports=e.x("node:os",()=>require("node:os"))},666680,(e,t,s)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},423502,(e,t,s)=>{},841897,e=>{"use strict";e.i(423502);var t=e.i(902157),s=e.i(750227);function a(){return s.default.join(process.cwd(),".linear-token.json")}function i(e){(0,t.writeFileSync)(a(),JSON.stringify(e,null,2))}function n(){try{(0,t.unlinkSync)(a())}catch{}}class r{accessToken;constructor(e){this.accessToken=e}get viewer(){return this.request("query { viewer { id name email } }").then(e=>e.viewer)}async users(){return(await this.request(`query {
1
+ module.exports=[918622,(e,t,s)=>{t.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},556704,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},832319,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},324725,(e,t,s)=>{t.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},193695,(e,t,s)=>{t.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},522734,(e,t,s)=>{t.exports=e.x("fs",()=>require("fs"))},814747,(e,t,s)=>{t.exports=e.x("path",()=>require("path"))},446786,(e,t,s)=>{t.exports=e.x("os",()=>require("os"))},259833,e=>{"use strict";function t(e,t){let s=e.prepare(`PRAGMA ${t}`).get();if(!s)return;let n=Object.values(s);return n.length>0?n[0]:void 0}function s(e,t){return e.prepare(`PRAGMA ${t}`).all()}function n(e,t){e.exec(`PRAGMA ${t}`)}function a(e,t){e.exec("BEGIN");try{let s=t();return e.exec("COMMIT"),s}catch(t){throw e.exec("ROLLBACK"),t}}function i(e,t){return(...s)=>{e.exec("BEGIN");try{let n=t(...s);return e.exec("COMMIT"),n}catch(t){throw e.exec("ROLLBACK"),t}}}e.s(["pragmaAll",()=>s,"pragmaGet",()=>t,"pragmaSet",()=>n,"transaction",()=>a,"transactionFn",()=>i])},233405,(e,t,s)=>{t.exports=e.x("child_process",()=>require("child_process"))},949041,e=>{"use strict";let t={id:"2c3cc1ca-956d-4b62-b295-4d2d3374103f",email:process.env.AGX_BOARD_USER_EMAIL||"local@agx.board",name:process.env.AGX_BOARD_USER_NAME||"Local Board User"};e.s(["LOCAL_USER",0,t])},121729,e=>{"use strict";e.x("node:sqlite",()=>require("node:sqlite"),!0);var t=e.i(259833);e.i(522734);var s=e.i(446786),n=e.i(814747);let a="3.35.0",i=["json1"],r=["fts5"],l=["nfs","smb","cifs","efs","fuse.sshfs"];function u(e,t){try{if("json1"===t)return e.prepare("SELECT json('{}')").get(),!0;if("fts5"===t)return e.exec("CREATE VIRTUAL TABLE IF NOT EXISTS _fts5_check USING fts5(x)"),e.exec("DROP TABLE IF EXISTS _fts5_check"),!0;return!1}catch{return!1}}function o(o,d){let c=[],p=o.prepare("SELECT sqlite_version() as v").get();for(let e of(0>function(e,t){let s=e.split(".").map(Number),n=t.split(".").map(Number);for(let e=0;e<3;e++){let t=(s[e]||0)-(n[e]||0);if(0!==t)return t}return 0}(p.v,a)&&c.push({kind:"version_mismatch",message:`SQLite version ${p.v} is below minimum ${a}`,found:p.v,required:`>= ${a}`,fix:"Ensure Node.js >= 22.16 is installed (node:sqlite is built-in)"}),i))u(o,e)||c.push({kind:"missing_extension",message:`Required SQLite extension '${e}' is not available`,required:e,fix:`Rebuild SQLite with -DSQLITE_ENABLE_${e.toUpperCase()}=1, or use a system SQLite that includes it`});for(let e of r)u(o,e)||console.warn(`[startup] Recommended SQLite extension '${e}' is not available. Full-text search will be disabled.`);let m=function(t){"linux"!==s.default.platform()&&s.default.platform();try{let a=n.default.resolve(t),{execSync:i}=e.r(233405);if("darwin"===s.default.platform()){let e=i(`df -T "${a}" 2>/dev/null || df "${a}"`,{encoding:"utf-8",timeout:3e3}).trim().split("\n");if(e.length>=2){let t=e[1].split(/\s+/),s=t[0]?.toLowerCase()||"";if(s.includes("://")||s.includes("nfs")||s.includes("smb"))return s}}}catch{}return null}(d);m&&l.some(e=>m.toLowerCase().includes(e))&&c.push({kind:"filesystem_error",message:`Database path '${d}' is on a network filesystem (${m})`,path:d,found:m,fix:"Move the database file to a local SSD. WAL mode requires local filesystem with reliable fsync."});try{(0,t.pragmaSet)(o,"journal_mode = wal"),(0,t.pragmaSet)(o,"foreign_keys = 1"),(0,t.pragmaSet)(o,"busy_timeout = 5000"),(0,t.pragmaSet)(o,"synchronous = 1"),(0,t.pragmaSet)(o,"cache_size = -64000");let e=(0,t.pragmaGet)(o,"journal_mode").toLowerCase(),s=new Set(["wal","delete"]);if(!s.has(e)){(0,t.pragmaSet)(o,"journal_mode = DELETE");let e=(0,t.pragmaGet)(o,"journal_mode").toLowerCase();s.has(e)?((0,t.pragmaSet)(o,"synchronous = FULL"),console.warn(`[startup] WAL unavailable, using journal_mode=${e} with synchronous=FULL`)):c.push({kind:"pragma_error",message:`Failed to set journal_mode (got '${e}', tried WAL then DELETE)`,found:e,required:"wal or delete",fix:"Ensure the database file is on a local filesystem and no other process holds an exclusive lock."})}}catch(e){c.push({kind:"pragma_error",message:`Failed to apply required PRAGMAs: ${e.message}`,fix:"Check file permissions and ensure the database is not read-only."})}return c}e.s(["validateSQLiteEnvironment",()=>o])},500874,(e,t,s)=>{t.exports=e.x("buffer",()=>require("buffer"))},750227,(e,t,s)=>{t.exports=e.x("node:path",()=>require("node:path"))},902157,(e,t,s)=>{t.exports=e.x("node:fs",()=>require("node:fs"))},660526,(e,t,s)=>{t.exports=e.x("node:os",()=>require("node:os"))},666680,(e,t,s)=>{t.exports=e.x("node:crypto",()=>require("node:crypto"))},423502,(e,t,s)=>{},841897,e=>{"use strict";e.i(423502);var t=e.i(902157),s=e.i(660526),n=e.i(750227);let a=n.default.join((0,s.homedir)(),".agx");function i(){return n.default.join(a,"linear-token.json")}function r(){return n.default.join(process.cwd(),".linear-token.json")}function l(e){(0,t.existsSync)(a)||(0,t.mkdirSync)(a,{recursive:!0}),(0,t.writeFileSync)(i(),JSON.stringify(e,null,2))}function u(){try{(0,t.unlinkSync)(i())}catch{}try{(0,t.unlinkSync)(r())}catch{}}class o{accessToken;constructor(e){this.accessToken=e}get viewer(){return this.request("query { viewer { id name email } }").then(e=>e.viewer)}async users(){return(await this.request(`query {
2
2
  users(first: 100) {
3
3
  nodes {
4
4
  id
@@ -12,7 +12,7 @@ module.exports=[918622,(e,t,s)=>{t.exports=e.x("next/dist/compiled/next-server/a
12
12
  name
13
13
  }
14
14
  }
15
- }`)).teams.nodes.filter(e=>e.name.trim().length>0).map(e=>({id:e.id,name:e.name})).sort((e,t)=>e.name.localeCompare(t.name))}async issues(e){let t,s=(t=[`first: ${e.first}`],e.after&&t.push(`after: ${JSON.stringify(e.after)}`),e.orderBy&&t.push(`orderBy: ${e.orderBy}`),e.filter&&Object.keys(e.filter).length>0&&t.push(`filter: ${function e(t){if(null===t)return"null";if(Array.isArray(t))return`[${t.map(e).join(", ")}]`;if("string"==typeof t)return JSON.stringify(t);if("number"==typeof t||"boolean"==typeof t)return String(t);if("object"==typeof t){let s=Object.entries(t).filter(([,e])=>void 0!==e);return`{ ${s.map(([t,s])=>`${t}: ${e(s)}`).join(", ")} }`}throw Error(`Unsupported GraphQL value: ${typeof t}`)}(e.filter)}`),t.join(", ")),a=await this.request(`query {
15
+ }`)).teams.nodes.filter(e=>e.name.trim().length>0).map(e=>({id:e.id,name:e.name})).sort((e,t)=>e.name.localeCompare(t.name))}async issues(e){let t,s=(t=[`first: ${e.first}`],e.after&&t.push(`after: ${JSON.stringify(e.after)}`),e.orderBy&&t.push(`orderBy: ${e.orderBy}`),e.filter&&Object.keys(e.filter).length>0&&t.push(`filter: ${function e(t){if(null===t)return"null";if(Array.isArray(t))return`[${t.map(e).join(", ")}]`;if("string"==typeof t)return JSON.stringify(t);if("number"==typeof t||"boolean"==typeof t)return String(t);if("object"==typeof t){let s=Object.entries(t).filter(([,e])=>void 0!==e);return`{ ${s.map(([t,s])=>`${t}: ${e(s)}`).join(", ")} }`}throw Error(`Unsupported GraphQL value: ${typeof t}`)}(e.filter)}`),t.join(", ")),n=await this.request(`query {
16
16
  issues(${s}) {
17
17
  nodes {
18
18
  id
@@ -31,7 +31,7 @@ module.exports=[918622,(e,t,s)=>{t.exports=e.x("next/dist/compiled/next-server/a
31
31
  endCursor
32
32
  }
33
33
  }
34
- }`);return{nodes:a.issues.nodes.map(e=>({id:e.id,identifier:e.identifier,title:e.title,description:e.description,url:e.url,updatedAt:e.updatedAt,state:Promise.resolve(e.state),assignee:Promise.resolve(e.assignee),team:Promise.resolve(e.team),cycle:Promise.resolve(e.cycle)})),pageInfo:a.issues.pageInfo}}async cycles(){let e=await this.request(`query {
34
+ }`);return{nodes:n.issues.nodes.map(e=>({id:e.id,identifier:e.identifier,title:e.title,description:e.description,url:e.url,updatedAt:e.updatedAt,state:Promise.resolve(e.state),assignee:Promise.resolve(e.assignee),team:Promise.resolve(e.team),cycle:Promise.resolve(e.cycle)})),pageInfo:n.issues.pageInfo}}async cycles(){let e=await this.request(`query {
35
35
  teams(first: 50) {
36
36
  nodes {
37
37
  id
@@ -62,7 +62,7 @@ module.exports=[918622,(e,t,s)=>{t.exports=e.x("next/dist/compiled/next-server/a
62
62
  }
63
63
  }
64
64
  }
65
- }`),t=new Map;for(let s of e.teams.nodes)for(let e of[...s.activeCycle?[s.activeCycle]:[],...s.cycles.nodes])t.has(e.id)||t.set(e.id,{id:e.id,number:e.number,name:e.name,startsAt:e.startsAt,endsAt:e.endsAt,teamId:e.team?.id??s.id,teamName:e.team?.name??s.name});return[...t.values()].sort((e,t)=>new Date(t.startsAt).getTime()-new Date(e.startsAt).getTime())}async request(e){let t=await fetch("https://api.linear.app/graphql",{method:"POST",headers:{"Content-Type":"application/json",Authorization:this.accessToken},body:JSON.stringify({query:e}),cache:"no-store"}),s=await t.json();if(!t.ok||s.errors?.length)throw Error(s.errors?.map(e=>e.message).find(Boolean)??`Linear request failed with status ${t.status}`);if(!s.data)throw Error("Linear response did not include data");return s.data}}function l(){let e=function(){try{let e=(0,t.readFileSync)(a(),"utf8");return JSON.parse(e)}catch{return null}}();return e?new r(e.accessToken):null}e.s(["LinearClient",()=>r,"deleteLinearToken",()=>n,"getLinearClient",()=>l,"saveLinearToken",()=>i])},832674,343649,e=>{"use strict";e.i(423502);var t=e.i(902157),s=e.i(750227),a=e.i(260476),i=e.i(841897),n=e.x("node:sqlite",()=>require("node:sqlite"),!0),r=e.i(660526),l=e.i(259833);let u=process.env.AGX_LINEAR_DIR?.trim()||s.default.join(process.env.AGX_DATA_DIR||s.default.join(r.default.homedir(),".agx"),"linear"),o=s.default.join(u,"issues.sqlite");function d(e){return e?.trim()||null}function c(e){return new Date(e).toISOString()}function p(e){return{id:e.issue_id,identifier:e.identifier,title:e.title,description:e.description,url:e.url,status:e.status,assigneeId:e.assignee_id,assignee:e.assignee_name,assigneeEmail:e.assignee_email,isAssignedToMe:1===e.is_assigned_to_me,teamId:e.team_id,teamName:e.team_name,teamKey:e.team_key,cycleId:e.cycle_id,cycleName:e.cycle_name,cycleNumber:e.cycle_number,updatedAt:e.updated_at,pulledAt:c(e.pulled_at)}}async function m(e){await t.promises.mkdir(u,{recursive:!0});let s=new n.DatabaseSync(o);(0,l.pragmaSet)(s,"journal_mode = WAL");try{return s.exec(`
65
+ }`),t=new Map;for(let s of e.teams.nodes)for(let e of[...s.activeCycle?[s.activeCycle]:[],...s.cycles.nodes])t.has(e.id)||t.set(e.id,{id:e.id,number:e.number,name:e.name,startsAt:e.startsAt,endsAt:e.endsAt,teamId:e.team?.id??s.id,teamName:e.team?.name??s.name});return[...t.values()].sort((e,t)=>new Date(t.startsAt).getTime()-new Date(e.startsAt).getTime())}async request(e){let t=await fetch("https://api.linear.app/graphql",{method:"POST",headers:{"Content-Type":"application/json",Authorization:this.accessToken},body:JSON.stringify({query:e}),cache:"no-store"}),s=await t.json();if(!t.ok||s.errors?.length)throw Error(s.errors?.map(e=>e.message).find(Boolean)??`Linear request failed with status ${t.status}`);if(!s.data)throw Error("Linear response did not include data");return s.data}}function d(){let e=function(){try{let e=(0,t.readFileSync)(i(),"utf8");return JSON.parse(e)}catch{}try{let e=r(),s=(0,t.readFileSync)(e,"utf8"),n=JSON.parse(s);l(n);try{(0,t.unlinkSync)(e)}catch{}return n}catch{return null}}();return e?new o(e.accessToken):null}e.s(["LinearClient",()=>o,"deleteLinearToken",()=>u,"getLinearClient",()=>d,"saveLinearToken",()=>l])},832674,343649,e=>{"use strict";e.i(423502);var t=e.i(902157),s=e.i(750227),n=e.i(260476),a=e.i(841897),i=e.x("node:sqlite",()=>require("node:sqlite"),!0),r=e.i(660526),l=e.i(259833);let u=process.env.AGX_LINEAR_DIR?.trim()||s.default.join(process.env.AGX_DATA_DIR||s.default.join(r.default.homedir(),".agx"),"linear"),o=s.default.join(u,"issues.sqlite");function d(e){return e?.trim()||null}function c(e){return new Date(e).toISOString()}function p(e){return{id:e.issue_id,identifier:e.identifier,title:e.title,description:e.description,url:e.url,status:e.status,assigneeId:e.assignee_id,assignee:e.assignee_name,assigneeEmail:e.assignee_email,isAssignedToMe:1===e.is_assigned_to_me,teamId:e.team_id,teamName:e.team_name,teamKey:e.team_key,cycleId:e.cycle_id,cycleName:e.cycle_name,cycleNumber:e.cycle_number,updatedAt:e.updated_at,pulledAt:c(e.pulled_at)}}async function m(e){await t.promises.mkdir(u,{recursive:!0});let s=new i.DatabaseSync(o);(0,l.pragmaSet)(s,"journal_mode = WAL");try{return s.exec(`
66
66
  CREATE TABLE IF NOT EXISTS linear_issues (
67
67
  issue_id TEXT PRIMARY KEY,
68
68
  identifier TEXT NOT NULL,
@@ -94,7 +94,7 @@ module.exports=[918622,(e,t,s)=>{t.exports=e.x("next/dist/compiled/next-server/a
94
94
  last_pulled_at INTEGER NOT NULL,
95
95
  issue_count INTEGER NOT NULL
96
96
  );
97
- `),e(s)}finally{s.close()}}async function f(e){let t=e.pulledAtMs??Date.now();return m(s=>{s.exec("BEGIN");try{let i=s.prepare(`
97
+ `),e(s)}finally{s.close()}}async function f(e){let t=e.pulledAtMs??Date.now();return m(s=>{s.exec("BEGIN");try{let a=s.prepare(`
98
98
  INSERT INTO linear_issues (
99
99
  issue_id, identifier, title, description, url, status,
100
100
  assignee_id, assignee_name, assignee_email, is_assigned_to_me,
@@ -119,32 +119,32 @@ module.exports=[918622,(e,t,s)=>{t.exports=e.x("next/dist/compiled/next-server/a
119
119
  cycle_number = excluded.cycle_number,
120
120
  updated_at = excluded.updated_at,
121
121
  pulled_at = excluded.pulled_at
122
- `);for(let s of e.issues){var a;i.run(s.id.trim(),s.identifier.trim(),s.title.trim(),d(s.description??null),d(s.url??null),s.status.trim(),d(s.assigneeId??null),d(s.assignee??null),d(s.assigneeEmail??null),+!!s.isAssignedToMe,d(s.teamId??null),d(s.teamName??null),d(s.teamKey??null),d(s.cycleId??null),d(s.cycleName??null),(a=s.cycleNumber??null,"number"==typeof a&&Number.isFinite(a)?a:null),s.updatedAt.trim(),t)}if(e.complete)if(0===e.issues.length)s.exec("DELETE FROM linear_issues");else{let t=e.issues.map(()=>"?").join(", ");s.prepare(`DELETE FROM linear_issues WHERE issue_id NOT IN (${t})`).run(...e.issues.map(e=>e.id.trim()))}s.exec("COMMIT")}catch(e){throw s.exec("ROLLBACK"),e}})}async function _(e,t,s=Date.now()){let a=e.trim()||"global";return m(e=>{e.prepare(`
122
+ `);for(let s of e.issues){var n;a.run(s.id.trim(),s.identifier.trim(),s.title.trim(),d(s.description??null),d(s.url??null),s.status.trim(),d(s.assigneeId??null),d(s.assignee??null),d(s.assigneeEmail??null),+!!s.isAssignedToMe,d(s.teamId??null),d(s.teamName??null),d(s.teamKey??null),d(s.cycleId??null),d(s.cycleName??null),(n=s.cycleNumber??null,"number"==typeof n&&Number.isFinite(n)?n:null),s.updatedAt.trim(),t)}if(e.complete)if(0===e.issues.length)s.exec("DELETE FROM linear_issues");else{let t=e.issues.map(()=>"?").join(", ");s.prepare(`DELETE FROM linear_issues WHERE issue_id NOT IN (${t})`).run(...e.issues.map(e=>e.id.trim()))}s.exec("COMMIT")}catch(e){throw s.exec("ROLLBACK"),e}})}async function _(e,t,s=Date.now()){let n=e.trim()||"global";return m(e=>{e.prepare(`
123
123
  INSERT INTO linear_issue_sync_state (scope_key, last_pulled_at, issue_count)
124
124
  VALUES (?, ?, ?)
125
125
  ON CONFLICT(scope_key) DO UPDATE SET
126
126
  last_pulled_at = excluded.last_pulled_at,
127
127
  issue_count = excluded.issue_count
128
- `).run(a,s,t)})}async function g(e="global"){let t=e.trim()||"global";return m(e=>{let s=e.prepare(`SELECT scope_key, last_pulled_at, issue_count
128
+ `).run(n,s,t)})}async function g(e="global"){let t=e.trim()||"global";return m(e=>{let s=e.prepare(`SELECT scope_key, last_pulled_at, issue_count
129
129
  FROM linear_issue_sync_state
130
130
  WHERE scope_key = ?
131
- LIMIT 1`).get(t);return s?{scopeKey:s.scope_key,lastPulledAt:c(s.last_pulled_at),issueCount:s.issue_count}:null})}async function y(){return m(e=>{let t=e.prepare("SELECT COUNT(*) AS count FROM linear_issues").get();return t?.count??0})}async function E(e={}){let t=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),500):50,s=Number.isFinite(Number(e.cursor))?Math.max(Number(e.cursor),0):0;return m(a=>{let i=[],n=[],r=d(e.search??null);if(r){let e=`%${r.toLowerCase().replace(/[\\%_]/g,"\\$&")}%`;i.push("(LOWER(identifier) LIKE ? ESCAPE '\\' OR LOWER(title) LIKE ? ESCAPE '\\' OR LOWER(COALESCE(description, '')) LIKE ? ESCAPE '\\')"),n.push(e,e,e)}let l=Array.from(new Set((e.statuses??[]).map(e=>d(e)).filter(e=>!!e).map(e=>e.toLowerCase())));l.length>0&&(i.push(`LOWER(status) IN (${l.map(()=>"?").join(", ")})`),n.push(...l));let u=Array.from(new Set((e.assigneeIds??[]).map(e=>d(e)).filter(e=>!!e)));u.length>0&&(i.push(`assignee_id IN (${u.map(()=>"?").join(", ")})`),n.push(...u)),e.assignedToMe&&i.push("is_assigned_to_me = 1");let o=d(e.teamId??null);o&&(i.push("team_id = ?"),n.push(o));let c=d(e.cycleId??null);c&&(i.push("cycle_id = ?"),n.push(c));let m=i.length>0?`WHERE ${i.join(" AND ")}`:"",f=a.prepare(`SELECT *
131
+ LIMIT 1`).get(t);return s?{scopeKey:s.scope_key,lastPulledAt:c(s.last_pulled_at),issueCount:s.issue_count}:null})}async function y(){return m(e=>{let t=e.prepare("SELECT COUNT(*) AS count FROM linear_issues").get();return t?.count??0})}async function E(e={}){let t=Number.isFinite(e.limit)?Math.min(Math.max(Number(e.limit),1),500):50,s=Number.isFinite(Number(e.cursor))?Math.max(Number(e.cursor),0):0;return m(n=>{let a=[],i=[],r=d(e.search??null);if(r){let e=`%${r.toLowerCase().replace(/[\\%_]/g,"\\$&")}%`;a.push("(LOWER(identifier) LIKE ? ESCAPE '\\' OR LOWER(title) LIKE ? ESCAPE '\\' OR LOWER(COALESCE(description, '')) LIKE ? ESCAPE '\\')"),i.push(e,e,e)}let l=Array.from(new Set((e.statuses??[]).map(e=>d(e)).filter(e=>!!e).map(e=>e.toLowerCase())));l.length>0&&(a.push(`LOWER(status) IN (${l.map(()=>"?").join(", ")})`),i.push(...l));let u=Array.from(new Set((e.assigneeIds??[]).map(e=>d(e)).filter(e=>!!e)));u.length>0&&(a.push(`assignee_id IN (${u.map(()=>"?").join(", ")})`),i.push(...u)),e.assignedToMe&&a.push("is_assigned_to_me = 1");let o=d(e.teamId??null);o&&(a.push("team_id = ?"),i.push(o));let c=d(e.cycleId??null);c&&(a.push("cycle_id = ?"),i.push(c));let m=a.length>0?`WHERE ${a.join(" AND ")}`:"",f=n.prepare(`SELECT *
132
132
  FROM linear_issues
133
133
  ${m}
134
134
  ORDER BY updated_at DESC, identifier ASC
135
- LIMIT ? OFFSET ?`).all(...n,t+1,s),_=f.length>t,g=_?f.slice(0,t):f,y=_?String(s+t):null;return{issues:g.map(p),pageInfo:{hasNextPage:_,endCursor:y}}})}async function h(){return m(e=>e.prepare(`SELECT DISTINCT status
135
+ LIMIT ? OFFSET ?`).all(...i,t+1,s),_=f.length>t,g=_?f.slice(0,t):f,y=_?String(s+t):null;return{issues:g.map(p),pageInfo:{hasNextPage:_,endCursor:y}}})}async function h(){return m(e=>e.prepare(`SELECT DISTINCT status
136
136
  FROM linear_issues
137
137
  WHERE TRIM(status) <> ''
138
- ORDER BY LOWER(status) ASC`).all().map(e=>e.status.trim()).filter(Boolean))}async function T(e){let t=Array.from(new Set(e.map(e=>e.trim()).filter(Boolean)));return 0===t.length?[]:m(e=>{let s=t.map(()=>"?").join(", "),a=new Map(e.prepare(`SELECT *
138
+ ORDER BY LOWER(status) ASC`).all().map(e=>e.status.trim()).filter(Boolean))}async function x(e){let t=Array.from(new Set(e.map(e=>e.trim()).filter(Boolean)));return 0===t.length?[]:m(e=>{let s=t.map(()=>"?").join(", "),n=new Map(e.prepare(`SELECT *
139
139
  FROM linear_issues
140
- WHERE issue_id IN (${s})`).all(...t).map(e=>[e.issue_id,p(e)]));return t.map(e=>a.get(e)).filter(e=>!!e)})}e.s(["countCachedLinearIssues",()=>y,"getCachedLinearIssueContexts",()=>T,"getLinearIssueSyncState",()=>g,"listCachedLinearIssueStatuses",()=>h,"listCachedLinearIssues",()=>E,"replaceCachedLinearIssues",()=>f,"setLinearIssueSyncState",()=>_],343649);var x=e.i(492952);let A="global";function R(e){let t=String(e??"").trim().toLowerCase();return t?`project:${t}`:A}function N(e){t.default.mkdirSync(e,{recursive:!0})}function S(e,a){N(s.default.dirname(e));let i=`${e}.tmp-${process.pid}-${Date.now()}`;t.default.writeFileSync(i,a,"utf8"),t.default.renameSync(i,e)}function I(e){return{id:e.id,identifier:e.identifier,title:e.title,url:e.url,status:e.status,assignee:e.assignee,updatedAt:e.updatedAt}}function L(e){return{...I(e),description:e.description,assigneeId:e.assigneeId,assigneeEmail:e.assigneeEmail,isAssignedToMe:e.isAssignedToMe,teamId:e.teamId,teamName:e.teamName,teamKey:e.teamKey,cycleId:e.cycleId,cycleName:e.cycleName,cycleNumber:e.cycleNumber,pulledAt:e.pulledAt}}function w(e,t){return e.trim().replace(/[\\/]/g,"-")||t}async function C(e={}){let t,n=(0,i.getLinearClient)();if(!n)throw Error("Not connected");let r=await n.viewer,l=Date.now(),u=new Date(l).toISOString(),o=0,d=!0,c=[];for(;o<500;){let e=500-o,s=await n.issues({first:Math.min(100,e),after:t,orderBy:"updatedAt"}),a=await Promise.all(s.nodes.map(async e=>{let[t,s,a,i]=await Promise.all([e.state,e.assignee,e.team,e.cycle]);return{id:e.id,identifier:e.identifier,title:e.title,description:e.description??null,url:e.url,status:t?.name??"Unknown",assigneeId:s?.id??null,assignee:s?.name??null,assigneeEmail:s?.email??null,isAssignedToMe:!!(s?.id&&s.id===r.id),teamId:a?.id??null,teamName:a?.name??null,teamKey:a?.key??null,cycleId:i?.id??null,cycleName:i?.name??null,cycleNumber:i?.number??null,updatedAt:e.updatedAt}}));if(c.push(...a),o+=a.length,!s.pageInfo.hasNextPage||!s.pageInfo.endCursor)break;if(o>=500){d=!1;break}t=s.pageInfo.endCursor}await f({issues:c,complete:d,pulledAtMs:l}),await _(A,c.length,l);let p=R(e.projectSlug);return p!==A&&await _(p,c.length,l),!function(e,t,i){let n=function(e){let t=x.vaultStore.getRootDir(),a=String(e??"").trim();if(a){let e=x.vaultStore.getProjectWithRepos(a),i=e?.slug??a;return s.default.join(t,i,"issues")}return s.default.join(t,"_global","Linear","issues")}(i);N(n);let r=["# Linear Issues","",`Last pulled: ${t}`,""];for(let i of e){let e=s.default.join(n,w(i.identifier,i.id));!function(e,t,s){let i=(0,a.dump)(t,{lineWidth:120,noRefs:!0,sortKeys:!0}).trimEnd(),n=String(s||"").replace(/\r\n/g,"\n").split("\n").map(e=>e.replace(/\s+$/g,"")).join("\n").trim();S(e,n?`---
141
- ${i}
140
+ WHERE issue_id IN (${s})`).all(...t).map(e=>[e.issue_id,p(e)]));return t.map(e=>n.get(e)).filter(e=>!!e)})}e.s(["countCachedLinearIssues",()=>y,"getCachedLinearIssueContexts",()=>x,"getLinearIssueSyncState",()=>g,"listCachedLinearIssueStatuses",()=>h,"listCachedLinearIssues",()=>E,"replaceCachedLinearIssues",()=>f,"setLinearIssueSyncState",()=>_],343649);var T=e.i(492952);let A="global";function S(e){let t=String(e??"").trim().toLowerCase();return t?`project:${t}`:A}function R(e){t.default.mkdirSync(e,{recursive:!0})}function N(e,n){R(s.default.dirname(e));let a=`${e}.tmp-${process.pid}-${Date.now()}`;t.default.writeFileSync(a,n,"utf8"),t.default.renameSync(a,e)}function I(e){return{id:e.id,identifier:e.identifier,title:e.title,url:e.url,status:e.status,assignee:e.assignee,updatedAt:e.updatedAt}}function L(e){return{...I(e),description:e.description,assigneeId:e.assigneeId,assigneeEmail:e.assigneeEmail,isAssignedToMe:e.isAssignedToMe,teamId:e.teamId,teamName:e.teamName,teamKey:e.teamKey,cycleId:e.cycleId,cycleName:e.cycleName,cycleNumber:e.cycleNumber,pulledAt:e.pulledAt}}function w(e,t){return e.trim().replace(/[\\/]/g,"-")||t}async function C(e={}){let t,i=(0,a.getLinearClient)();if(!i)throw Error("Not connected");let r=await i.viewer,l=Date.now(),u=new Date(l).toISOString(),o=0,d=!0,c=[];for(;o<500;){let e=500-o,s=await i.issues({first:Math.min(100,e),after:t,orderBy:"updatedAt"}),n=await Promise.all(s.nodes.map(async e=>{let[t,s,n,a]=await Promise.all([e.state,e.assignee,e.team,e.cycle]);return{id:e.id,identifier:e.identifier,title:e.title,description:e.description??null,url:e.url,status:t?.name??"Unknown",assigneeId:s?.id??null,assignee:s?.name??null,assigneeEmail:s?.email??null,isAssignedToMe:!!(s?.id&&s.id===r.id),teamId:n?.id??null,teamName:n?.name??null,teamKey:n?.key??null,cycleId:a?.id??null,cycleName:a?.name??null,cycleNumber:a?.number??null,updatedAt:e.updatedAt}}));if(c.push(...n),o+=n.length,!s.pageInfo.hasNextPage||!s.pageInfo.endCursor)break;if(o>=500){d=!1;break}t=s.pageInfo.endCursor}await f({issues:c,complete:d,pulledAtMs:l}),await _(A,c.length,l);let p=S(e.projectSlug);return p!==A&&await _(p,c.length,l),!function(e,t,a){let i=function(e){let t=T.vaultStore.getRootDir(),n=String(e??"").trim();if(n){let e=T.vaultStore.getProjectWithRepos(n),a=e?.slug??n;return s.default.join(t,a,"issues")}return s.default.join(t,"_global","Linear","issues")}(a);R(i);let r=["# Linear Issues","",`Last pulled: ${t}`,""];for(let a of e){let e=s.default.join(i,w(a.identifier,a.id));!function(e,t,s){let a=(0,n.dump)(t,{lineWidth:120,noRefs:!0,sortKeys:!0}).trimEnd(),i=String(s||"").replace(/\r\n/g,"\n").split("\n").map(e=>e.replace(/\s+$/g,"")).join("\n").trim();N(e,i?`---
141
+ ${a}
142
142
  ---
143
- ${n}
144
- `:`---
145
143
  ${i}
144
+ `:`---
145
+ ${a}
146
146
  ---
147
- `)}(s.default.join(e,"README.md"),{type:"linear-issue",issue_id:i.id,identifier:i.identifier,title:i.title,status:i.status,assignee_id:i.assigneeId??null,assignee_name:i.assignee??null,assignee_email:i.assigneeEmail??null,team_id:i.teamId??null,team_name:i.teamName??null,team_key:i.teamKey??null,cycle_id:i.cycleId??null,cycle_name:i.cycleName??null,cycle_number:i.cycleNumber??null,url:i.url??null,updated_at:i.updatedAt,pulled_at:t},[`# ${i.identifier}: ${i.title}`,"",`- Status: ${i.status}`,`- Assignee: ${i.assignee??"Unassigned"}`,i.teamName?`- Team: ${i.teamName}`:null,i.cycleName||null!=i.cycleNumber?`- Cycle: ${i.cycleName??`Cycle ${i.cycleNumber}`}`:null,`- Updated in Linear: ${i.updatedAt}`,`- Pulled locally: ${t}`,i.url?`- URL: ${i.url}`:null,"","## Description","",i.description?.trim()||"_No description provided._"].filter(e=>null!==e).join("\n")),r.push(`- [${i.identifier}](${encodeURIComponent(w(i.identifier,i.id))}/README.md) - ${i.title} (${i.status})`)}S(s.default.join(n,"_index.md"),`${r.join("\n")}
148
- `)}(c,u,e.projectSlug),{issueCount:c.length,complete:d,pulledAt:u}}async function v(e={}){let t=!!e.refresh,s=R(e.projectSlug);if(!t){let[e,t]=await Promise.all([y(),g(s)]);if(e>0&&t)return null}return(0,i.getLinearClient)()?C({projectSlug:e.projectSlug}):null}async function b(e={}){let[t,s]=await Promise.all([E(e),g(A)]);return{issues:t.issues.map(I),pageInfo:t.pageInfo,syncState:{lastPulledAt:s?.lastPulledAt??null}}}async function O(e){return(await T(e)).map(L)}e.s(["ensureLinearIssueCache",()=>v,"getLinearIssueContexts",()=>O,"listLinearIssueSummaries",()=>b],832674)},772341,e=>{"use strict";var t=e.i(747909),s=e.i(174017),a=e.i(996250),i=e.i(759756),n=e.i(561916),r=e.i(174677),l=e.i(869741),u=e.i(316795),o=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),m=e.i(570101),f=e.i(626937),_=e.i(10372),g=e.i(193695);e.i(52474);var y=e.i(600220),E=e.i(89171),h=e.i(832674);async function T(e){try{let t=await e.json().catch(()=>({})),s=Array.isArray(t.issueIds)?t.issueIds.filter(e=>"string"==typeof e&&e.trim().length>0):[],a=await (0,h.getLinearIssueContexts)(s);return E.NextResponse.json({issues:a})}catch(e){return E.NextResponse.json({error:e?.message??"Failed to load issue context"},{status:500})}}e.s(["POST",()=>T,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],259781);var x=e.i(259781);let A=new t.AppRouteRouteModule({definition:{kind:s.RouteKind.APP_ROUTE,page:"/api/linear/issues/context/route",pathname:"/api/linear/issues/context",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/linear/issues/context/route.ts",nextConfigOutput:"standalone",userland:x}),{workAsyncStorage:R,workUnitAsyncStorage:N,serverHooks:S}=A;function I(){return(0,a.patchFetch)({workAsyncStorage:R,workUnitAsyncStorage:N})}async function L(e,t,a){A.isDev&&(0,i.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let E="/api/linear/issues/context/route";E=E.replace(/\/index$/,"")||"/";let h=await A.prepare(e,t,{srcPage:E,multiZoneDraftMode:!1});if(!h)return t.statusCode=400,t.end("Bad Request"),null==a.waitUntil||a.waitUntil.call(a,Promise.resolve()),null;let{buildId:T,params:x,nextConfig:R,parsedUrl:N,isDraftMode:S,prerenderManifest:I,routerServerContext:L,isOnDemandRevalidate:w,revalidateOnlyGenerated:C,resolvedPathname:v,clientReferenceManifest:b,serverActionsManifest:O}=h,$=(0,l.normalizeAppPath)(E),j=!!(I.dynamicRoutes[$]||I.routes[v]),k=async()=>((null==L?void 0:L.render404)?await L.render404(e,t,N,!1):t.end("This page could not be found"),null);if(j&&!S){let e=!!I.routes[v],t=I.dynamicRoutes[$];if(t&&!1===t.fallback&&!e){if(R.experimental.adapterPath)return await k();throw new g.NoFallbackError}}let q=null;!j||A.isDev||S||(q="/index"===(q=v)?"/":q);let D=!0===A.isDev||!j,M=j&&!D;O&&b&&(0,r.setManifestsSingleton)({page:E,clientReferenceManifest:b,serverActionsManifest:O});let P=e.method||"GET",U=(0,n.getTracer)(),F=U.getActiveScopeSpan(),X={params:x,prerenderManifest:I,renderOpts:{experimental:{authInterrupts:!!R.experimental.authInterrupts},cacheComponents:!!R.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,i.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:R.cacheLife,waitUntil:a.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,s,a,i)=>A.onRequestError(e,t,a,i,L)},sharedContext:{buildId:T}},B=new u.NodeNextRequest(e),G=new u.NodeNextResponse(t),K=o.NextRequestAdapter.fromNodeNextRequest(B,(0,o.signalFromNodeResponse)(t));try{let r=async e=>A.handle(K,X).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let s=U.getRootSpanAttributes();if(!s)return;if(s.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${s.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let a=s.get("next.route");if(a){let t=`${P} ${a}`;e.setAttributes({"next.route":a,"http.route":a,"next.span_name":t}),e.updateName(t)}else e.updateName(`${P} ${E}`)}),l=!!(0,i.getRequestMeta)(e,"minimalMode"),u=async i=>{var n,u;let o=async({previousCacheEntry:s})=>{try{if(!l&&w&&C&&!s)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let n=await r(i);e.fetchMetrics=X.renderOpts.fetchMetrics;let u=X.renderOpts.pendingWaitUntil;u&&a.waitUntil&&(a.waitUntil(u),u=void 0);let o=X.renderOpts.collectedTags;if(!j)return await (0,p.sendResponse)(B,G,n,X.renderOpts.pendingWaitUntil),null;{let e=await n.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(n.headers);o&&(t[_.NEXT_CACHE_TAGS_HEADER]=o),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let s=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=_.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,a=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=_.INFINITE_CACHE?void 0:X.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:n.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:s,expire:a}}}}catch(t){throw(null==s?void 0:s.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:E,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:w})},!1,L),t}},d=await A.handleResponse({req:e,nextConfig:R,cacheKey:q,routeKind:s.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:I,isRoutePPREnabled:!1,isOnDemandRevalidate:w,revalidateOnlyGenerated:C,responseGenerator:o,waitUntil:a.waitUntil,isMinimalMode:l});if(!j)return null;if((null==d||null==(n=d.value)?void 0:n.kind)!==y.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(u=d.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});l||t.setHeader("x-nextjs-cache",w?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),S&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,m.fromNodeOutgoingHttpHeaders)(d.value.headers);return l&&j||g.delete(_.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,f.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(B,G,new Response(d.value.body,{headers:g,status:d.value.status||200})),null};F?await u(F):await U.withPropagatedContext(e.headers,()=>U.trace(d.BaseServerSpan.handleRequest,{spanName:`${P} ${E}`,kind:n.SpanKind.SERVER,attributes:{"http.method":P,"http.target":e.url}},u))}catch(t){if(t instanceof g.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:$,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:w})},!1,L),j)throw t;return await (0,p.sendResponse)(B,G,new Response(null,{status:500})),null}}e.s(["handler",()=>L,"patchFetch",()=>I,"routeModule",()=>A,"serverHooks",()=>S,"workAsyncStorage",()=>R,"workUnitAsyncStorage",()=>N],772341)}];
147
+ `)}(s.default.join(e,"README.md"),{type:"linear-issue",issue_id:a.id,identifier:a.identifier,title:a.title,status:a.status,assignee_id:a.assigneeId??null,assignee_name:a.assignee??null,assignee_email:a.assigneeEmail??null,team_id:a.teamId??null,team_name:a.teamName??null,team_key:a.teamKey??null,cycle_id:a.cycleId??null,cycle_name:a.cycleName??null,cycle_number:a.cycleNumber??null,url:a.url??null,updated_at:a.updatedAt,pulled_at:t},[`# ${a.identifier}: ${a.title}`,"",`- Status: ${a.status}`,`- Assignee: ${a.assignee??"Unassigned"}`,a.teamName?`- Team: ${a.teamName}`:null,a.cycleName||null!=a.cycleNumber?`- Cycle: ${a.cycleName??`Cycle ${a.cycleNumber}`}`:null,`- Updated in Linear: ${a.updatedAt}`,`- Pulled locally: ${t}`,a.url?`- URL: ${a.url}`:null,"","## Description","",a.description?.trim()||"_No description provided._"].filter(e=>null!==e).join("\n")),r.push(`- [${a.identifier}](${encodeURIComponent(w(a.identifier,a.id))}/README.md) - ${a.title} (${a.status})`)}N(s.default.join(i,"_index.md"),`${r.join("\n")}
148
+ `)}(c,u,e.projectSlug),{issueCount:c.length,complete:d,pulledAt:u}}async function v(e={}){let t=!!e.refresh,s=S(e.projectSlug);if(!t){let[e,t]=await Promise.all([y(),g(s)]);if(e>0&&t)return null}return(0,a.getLinearClient)()?C({projectSlug:e.projectSlug}):null}async function b(e={}){let[t,s]=await Promise.all([E(e),g(A)]);return{issues:t.issues.map(I),pageInfo:t.pageInfo,syncState:{lastPulledAt:s?.lastPulledAt??null}}}async function O(e){return(await x(e)).map(L)}e.s(["ensureLinearIssueCache",()=>v,"getLinearIssueContexts",()=>O,"listLinearIssueSummaries",()=>b],832674)},772341,e=>{"use strict";var t=e.i(747909),s=e.i(174017),n=e.i(996250),a=e.i(759756),i=e.i(561916),r=e.i(174677),l=e.i(869741),u=e.i(316795),o=e.i(487718),d=e.i(995169),c=e.i(47587),p=e.i(666012),m=e.i(570101),f=e.i(626937),_=e.i(10372),g=e.i(193695);e.i(52474);var y=e.i(600220),E=e.i(89171),h=e.i(832674);async function x(e){try{let t=await e.json().catch(()=>({})),s=Array.isArray(t.issueIds)?t.issueIds.filter(e=>"string"==typeof e&&e.trim().length>0):[],n=await (0,h.getLinearIssueContexts)(s);return E.NextResponse.json({issues:n})}catch(e){return E.NextResponse.json({error:e?.message??"Failed to load issue context"},{status:500})}}e.s(["POST",()=>x,"dynamic",0,"force-dynamic","runtime",0,"nodejs"],259781);var T=e.i(259781);let A=new t.AppRouteRouteModule({definition:{kind:s.RouteKind.APP_ROUTE,page:"/api/linear/issues/context/route",pathname:"/api/linear/issues/context",filename:"route",bundlePath:""},distDir:".next",relativeProjectDir:"",resolvedPagePath:"[project]/app/api/linear/issues/context/route.ts",nextConfigOutput:"standalone",userland:T}),{workAsyncStorage:S,workUnitAsyncStorage:R,serverHooks:N}=A;function I(){return(0,n.patchFetch)({workAsyncStorage:S,workUnitAsyncStorage:R})}async function L(e,t,n){A.isDev&&(0,a.addRequestMeta)(e,"devRequestTimingInternalsEnd",process.hrtime.bigint());let E="/api/linear/issues/context/route";E=E.replace(/\/index$/,"")||"/";let h=await A.prepare(e,t,{srcPage:E,multiZoneDraftMode:!1});if(!h)return t.statusCode=400,t.end("Bad Request"),null==n.waitUntil||n.waitUntil.call(n,Promise.resolve()),null;let{buildId:x,params:T,nextConfig:S,parsedUrl:R,isDraftMode:N,prerenderManifest:I,routerServerContext:L,isOnDemandRevalidate:w,revalidateOnlyGenerated:C,resolvedPathname:v,clientReferenceManifest:b,serverActionsManifest:O}=h,j=(0,l.normalizeAppPath)(E),$=!!(I.dynamicRoutes[j]||I.routes[v]),k=async()=>((null==L?void 0:L.render404)?await L.render404(e,t,R,!1):t.end("This page could not be found"),null);if($&&!N){let e=!!I.routes[v],t=I.dynamicRoutes[j];if(t&&!1===t.fallback&&!e){if(S.experimental.adapterPath)return await k();throw new g.NoFallbackError}}let q=null;!$||A.isDev||N||(q="/index"===(q=v)?"/":q);let D=!0===A.isDev||!$,M=$&&!D;O&&b&&(0,r.setManifestsSingleton)({page:E,clientReferenceManifest:b,serverActionsManifest:O});let P=e.method||"GET",U=(0,i.getTracer)(),F=U.getActiveScopeSpan(),X={params:T,prerenderManifest:I,renderOpts:{experimental:{authInterrupts:!!S.experimental.authInterrupts},cacheComponents:!!S.cacheComponents,supportsDynamicResponse:D,incrementalCache:(0,a.getRequestMeta)(e,"incrementalCache"),cacheLifeProfiles:S.cacheLife,waitUntil:n.waitUntil,onClose:e=>{t.on("close",e)},onAfterTaskError:void 0,onInstrumentationRequestError:(t,s,n,a)=>A.onRequestError(e,t,n,a,L)},sharedContext:{buildId:x}},B=new u.NodeNextRequest(e),G=new u.NodeNextResponse(t),K=o.NextRequestAdapter.fromNodeNextRequest(B,(0,o.signalFromNodeResponse)(t));try{let r=async e=>A.handle(K,X).finally(()=>{if(!e)return;e.setAttributes({"http.status_code":t.statusCode,"next.rsc":!1});let s=U.getRootSpanAttributes();if(!s)return;if(s.get("next.span_type")!==d.BaseServerSpan.handleRequest)return void console.warn(`Unexpected root span type '${s.get("next.span_type")}'. Please report this Next.js issue https://github.com/vercel/next.js`);let n=s.get("next.route");if(n){let t=`${P} ${n}`;e.setAttributes({"next.route":n,"http.route":n,"next.span_name":t}),e.updateName(t)}else e.updateName(`${P} ${E}`)}),l=!!(0,a.getRequestMeta)(e,"minimalMode"),u=async a=>{var i,u;let o=async({previousCacheEntry:s})=>{try{if(!l&&w&&C&&!s)return t.statusCode=404,t.setHeader("x-nextjs-cache","REVALIDATED"),t.end("This page could not be found"),null;let i=await r(a);e.fetchMetrics=X.renderOpts.fetchMetrics;let u=X.renderOpts.pendingWaitUntil;u&&n.waitUntil&&(n.waitUntil(u),u=void 0);let o=X.renderOpts.collectedTags;if(!$)return await (0,p.sendResponse)(B,G,i,X.renderOpts.pendingWaitUntil),null;{let e=await i.blob(),t=(0,m.toNodeOutgoingHttpHeaders)(i.headers);o&&(t[_.NEXT_CACHE_TAGS_HEADER]=o),!t["content-type"]&&e.type&&(t["content-type"]=e.type);let s=void 0!==X.renderOpts.collectedRevalidate&&!(X.renderOpts.collectedRevalidate>=_.INFINITE_CACHE)&&X.renderOpts.collectedRevalidate,n=void 0===X.renderOpts.collectedExpire||X.renderOpts.collectedExpire>=_.INFINITE_CACHE?void 0:X.renderOpts.collectedExpire;return{value:{kind:y.CachedRouteKind.APP_ROUTE,status:i.status,body:Buffer.from(await e.arrayBuffer()),headers:t},cacheControl:{revalidate:s,expire:n}}}}catch(t){throw(null==s?void 0:s.isStale)&&await A.onRequestError(e,t,{routerKind:"App Router",routePath:E,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:w})},!1,L),t}},d=await A.handleResponse({req:e,nextConfig:S,cacheKey:q,routeKind:s.RouteKind.APP_ROUTE,isFallback:!1,prerenderManifest:I,isRoutePPREnabled:!1,isOnDemandRevalidate:w,revalidateOnlyGenerated:C,responseGenerator:o,waitUntil:n.waitUntil,isMinimalMode:l});if(!$)return null;if((null==d||null==(i=d.value)?void 0:i.kind)!==y.CachedRouteKind.APP_ROUTE)throw Object.defineProperty(Error(`Invariant: app-route received invalid cache entry ${null==d||null==(u=d.value)?void 0:u.kind}`),"__NEXT_ERROR_CODE",{value:"E701",enumerable:!1,configurable:!0});l||t.setHeader("x-nextjs-cache",w?"REVALIDATED":d.isMiss?"MISS":d.isStale?"STALE":"HIT"),N&&t.setHeader("Cache-Control","private, no-cache, no-store, max-age=0, must-revalidate");let g=(0,m.fromNodeOutgoingHttpHeaders)(d.value.headers);return l&&$||g.delete(_.NEXT_CACHE_TAGS_HEADER),!d.cacheControl||t.getHeader("Cache-Control")||g.get("Cache-Control")||g.set("Cache-Control",(0,f.getCacheControlHeader)(d.cacheControl)),await (0,p.sendResponse)(B,G,new Response(d.value.body,{headers:g,status:d.value.status||200})),null};F?await u(F):await U.withPropagatedContext(e.headers,()=>U.trace(d.BaseServerSpan.handleRequest,{spanName:`${P} ${E}`,kind:i.SpanKind.SERVER,attributes:{"http.method":P,"http.target":e.url}},u))}catch(t){if(t instanceof g.NoFallbackError||await A.onRequestError(e,t,{routerKind:"App Router",routePath:j,routeType:"route",revalidateReason:(0,c.getRevalidateReason)({isStaticGeneration:M,isOnDemandRevalidate:w})},!1,L),$)throw t;return await (0,p.sendResponse)(B,G,new Response(null,{status:500})),null}}e.s(["handler",()=>L,"patchFetch",()=>I,"routeModule",()=>A,"serverHooks",()=>N,"workAsyncStorage",()=>S,"workUnitAsyncStorage",()=>R],772341)}];
149
149
 
150
150
  //# sourceMappingURL=%5Broot-of-the-server%5D__a3955224._.js.map