@surething/cockpit 1.0.224 → 1.0.226

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 (609) hide show
  1. package/.next-prod/BUILD_ID +1 -1
  2. package/.next-prod/app-path-routes-manifest.json +2 -1
  3. package/.next-prod/build-manifest.json +3 -3
  4. package/.next-prod/prerender-manifest.json +3 -3
  5. package/.next-prod/react-loadable-manifest.json +1 -1
  6. package/.next-prod/routes-manifest.json +6 -0
  7. package/.next-prod/server/app/_global-error/page.js +2 -2
  8. package/.next-prod/server/app/_global-error/page.js.nft.json +1 -1
  9. package/.next-prod/server/app/_global-error/page_client-reference-manifest.js +1 -1
  10. package/.next-prod/server/app/_global-error.html +1 -1
  11. package/.next-prod/server/app/_global-error.rsc +1 -1
  12. package/.next-prod/server/app/_global-error.segments/_full.segment.rsc +1 -1
  13. package/.next-prod/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  14. package/.next-prod/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  15. package/.next-prod/server/app/_global-error.segments/_head.segment.rsc +1 -1
  16. package/.next-prod/server/app/_global-error.segments/_index.segment.rsc +1 -1
  17. package/.next-prod/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  18. package/.next-prod/server/app/_not-found/page.js +2 -2
  19. package/.next-prod/server/app/_not-found/page.js.nft.json +1 -1
  20. package/.next-prod/server/app/_not-found/page_client-reference-manifest.js +1 -1
  21. package/.next-prod/server/app/_not-found.html +2 -2
  22. package/.next-prod/server/app/_not-found.rsc +3 -3
  23. package/.next-prod/server/app/_not-found.segments/_full.segment.rsc +3 -3
  24. package/.next-prod/server/app/_not-found.segments/_head.segment.rsc +1 -1
  25. package/.next-prod/server/app/_not-found.segments/_index.segment.rsc +3 -3
  26. package/.next-prod/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  27. package/.next-prod/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  28. package/.next-prod/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  29. package/.next-prod/server/app/api/agent/test/route.js +1 -1
  30. package/.next-prod/server/app/api/agent/test/route.js.nft.json +1 -1
  31. package/.next-prod/server/app/api/bash/route.js +1 -1
  32. package/.next-prod/server/app/api/bash/route.js.nft.json +1 -1
  33. package/.next-prod/server/app/api/chat/codex/route.js +3 -27
  34. package/.next-prod/server/app/api/chat/codex/route.js.nft.json +1 -1
  35. package/.next-prod/server/app/api/chat/deepseek/route.js +1 -5
  36. package/.next-prod/server/app/api/chat/deepseek/route.js.nft.json +1 -1
  37. package/.next-prod/server/app/api/chat/kimi/route.js +3 -21
  38. package/.next-prod/server/app/api/chat/kimi/route.js.nft.json +1 -1
  39. package/.next-prod/server/app/api/chat/ollama/route.js +1 -91
  40. package/.next-prod/server/app/api/chat/ollama/route.js.nft.json +1 -1
  41. package/.next-prod/server/app/api/chat/pty-input/route.js +1 -1
  42. package/.next-prod/server/app/api/chat/pty-input/route.js.nft.json +1 -1
  43. package/.next-prod/server/app/api/chat/route.js +1 -23
  44. package/.next-prod/server/app/api/chat/route.js.nft.json +1 -1
  45. package/.next-prod/server/app/api/chat/stop/route.js +1 -1
  46. package/.next-prod/server/app/api/chat/stop/route.js.nft.json +1 -1
  47. package/.next-prod/server/app/api/claude-stats/route.js +1 -1
  48. package/.next-prod/server/app/api/claude-stats/route.js.nft.json +1 -1
  49. package/.next-prod/server/app/api/commands/route.js +1 -1
  50. package/.next-prod/server/app/api/commands/route.js.nft.json +1 -1
  51. package/.next-prod/server/app/api/comments/route.js +1 -1
  52. package/.next-prod/server/app/api/comments/route.js.nft.json +1 -1
  53. package/.next-prod/server/app/api/db/columns/route.js +2 -2
  54. package/.next-prod/server/app/api/db/columns/route.js.nft.json +1 -1
  55. package/.next-prod/server/app/api/db/connect/route.js +1 -1
  56. package/.next-prod/server/app/api/db/connect/route.js.nft.json +1 -1
  57. package/.next-prod/server/app/api/db/disconnect/route.js +1 -1
  58. package/.next-prod/server/app/api/db/disconnect/route.js.nft.json +1 -1
  59. package/.next-prod/server/app/api/db/export/route.js +1 -1
  60. package/.next-prod/server/app/api/db/export/route.js.nft.json +1 -1
  61. package/.next-prod/server/app/api/db/query/route.js +1 -1
  62. package/.next-prod/server/app/api/db/query/route.js.nft.json +1 -1
  63. package/.next-prod/server/app/api/db/schemas/route.js +1 -1
  64. package/.next-prod/server/app/api/db/schemas/route.js.nft.json +1 -1
  65. package/.next-prod/server/app/api/dev/spans/route.js +1 -1
  66. package/.next-prod/server/app/api/dev/spans/route.js.nft.json +1 -1
  67. package/.next-prod/server/app/api/extension/version/route.js +1 -1
  68. package/.next-prod/server/app/api/extension/version/route.js.nft.json +1 -1
  69. package/.next-prod/server/app/api/file/route.js +1 -1
  70. package/.next-prod/server/app/api/file/route.js.nft.json +1 -1
  71. package/.next-prod/server/app/api/files/blame/route.js +1 -1
  72. package/.next-prod/server/app/api/files/blame/route.js.nft.json +1 -1
  73. package/.next-prod/server/app/api/files/clipboard/route.js +1 -1
  74. package/.next-prod/server/app/api/files/clipboard/route.js.nft.json +1 -1
  75. package/.next-prod/server/app/api/files/copy/route.js +1 -1
  76. package/.next-prod/server/app/api/files/copy/route.js.nft.json +1 -1
  77. package/.next-prod/server/app/api/files/delete/route.js +1 -1
  78. package/.next-prod/server/app/api/files/delete/route.js.nft.json +1 -1
  79. package/.next-prod/server/app/api/files/expanded/route.js +1 -1
  80. package/.next-prod/server/app/api/files/expanded/route.js.nft.json +1 -1
  81. package/.next-prod/server/app/api/files/index/route.js +1 -1
  82. package/.next-prod/server/app/api/files/index/route.js.nft.json +1 -1
  83. package/.next-prod/server/app/api/files/init/route.js +1 -1
  84. package/.next-prod/server/app/api/files/init/route.js.nft.json +1 -1
  85. package/.next-prod/server/app/api/files/paste/route.js +1 -1
  86. package/.next-prod/server/app/api/files/paste/route.js.nft.json +1 -1
  87. package/.next-prod/server/app/api/files/read/route.js +1 -1
  88. package/.next-prod/server/app/api/files/read/route.js.nft.json +1 -1
  89. package/.next-prod/server/app/api/files/readdir/route.js +1 -1
  90. package/.next-prod/server/app/api/files/readdir/route.js.nft.json +1 -1
  91. package/.next-prod/server/app/api/files/recent/route.js +1 -1
  92. package/.next-prod/server/app/api/files/recent/route.js.nft.json +1 -1
  93. package/.next-prod/server/app/api/files/save/route.js +1 -1
  94. package/.next-prod/server/app/api/files/save/route.js.nft.json +1 -1
  95. package/.next-prod/server/app/api/files/search/route.js +1 -1
  96. package/.next-prod/server/app/api/files/search/route.js.nft.json +1 -1
  97. package/.next-prod/server/app/api/files/stat/route.js +1 -1
  98. package/.next-prod/server/app/api/files/stat/route.js.nft.json +1 -1
  99. package/.next-prod/server/app/api/files/text/route.js +1 -1
  100. package/.next-prod/server/app/api/files/text/route.js.nft.json +1 -1
  101. package/.next-prod/server/app/api/git/branch-diff/route.js +1 -1
  102. package/.next-prod/server/app/api/git/branch-diff/route.js.nft.json +1 -1
  103. package/.next-prod/server/app/api/git/branches/route.js +1 -1
  104. package/.next-prod/server/app/api/git/branches/route.js.nft.json +1 -1
  105. package/.next-prod/server/app/api/git/commit-diff/route.js +1 -1
  106. package/.next-prod/server/app/api/git/commit-diff/route.js.nft.json +1 -1
  107. package/.next-prod/server/app/api/git/commits/route.js +1 -1
  108. package/.next-prod/server/app/api/git/commits/route.js.nft.json +1 -1
  109. package/.next-prod/server/app/api/git/current-branch/route.js +1 -1
  110. package/.next-prod/server/app/api/git/current-branch/route.js.nft.json +1 -1
  111. package/.next-prod/server/app/api/git/diff/route.js +1 -1
  112. package/.next-prod/server/app/api/git/diff/route.js.nft.json +1 -1
  113. package/.next-prod/server/app/api/git/discard/route.js +1 -1
  114. package/.next-prod/server/app/api/git/discard/route.js.nft.json +1 -1
  115. package/.next-prod/server/app/api/git/stage/route.js +1 -1
  116. package/.next-prod/server/app/api/git/stage/route.js.nft.json +1 -1
  117. package/.next-prod/server/app/api/git/status/route.js +1 -1
  118. package/.next-prod/server/app/api/git/status/route.js.nft.json +1 -1
  119. package/.next-prod/server/app/api/git/unstage/route.js +1 -1
  120. package/.next-prod/server/app/api/git/unstage/route.js.nft.json +1 -1
  121. package/.next-prod/server/app/api/git/worktree/route.js +1 -1
  122. package/.next-prod/server/app/api/git/worktree/route.js.nft.json +1 -1
  123. package/.next-prod/server/app/api/global-state/route.js +1 -1
  124. package/.next-prod/server/app/api/global-state/route.js.nft.json +1 -1
  125. package/.next-prod/server/app/api/health/route.js +1 -0
  126. package/.next-prod/server/app/api/health/route.js.nft.json +1 -0
  127. package/.next-prod/server/app/api/health/route_client-reference-manifest.js +1 -0
  128. package/.next-prod/server/app/api/jupyter/load/route.js +1 -1
  129. package/.next-prod/server/app/api/jupyter/load/route.js.nft.json +1 -1
  130. package/.next-prod/server/app/api/jupyter/save/route.js +1 -1
  131. package/.next-prod/server/app/api/jupyter/save/route.js.nft.json +1 -1
  132. package/.next-prod/server/app/api/jupyter/shutdown/route.js +1 -1
  133. package/.next-prod/server/app/api/jupyter/shutdown/route.js.nft.json +1 -1
  134. package/.next-prod/server/app/api/lsp/definition/route.js +1 -1
  135. package/.next-prod/server/app/api/lsp/definition/route.js.nft.json +1 -1
  136. package/.next-prod/server/app/api/lsp/hover/route.js +1 -1
  137. package/.next-prod/server/app/api/lsp/hover/route.js.nft.json +1 -1
  138. package/.next-prod/server/app/api/lsp/references/route.js +1 -1
  139. package/.next-prod/server/app/api/lsp/references/route.js.nft.json +1 -1
  140. package/.next-prod/server/app/api/lsp/status/route.js +1 -1
  141. package/.next-prod/server/app/api/lsp/status/route.js.nft.json +1 -1
  142. package/.next-prod/server/app/api/lsp/warmup/route.js +1 -1
  143. package/.next-prod/server/app/api/lsp/warmup/route.js.nft.json +1 -1
  144. package/.next-prod/server/app/api/mysql/columns/route.js +2 -2
  145. package/.next-prod/server/app/api/mysql/columns/route.js.nft.json +1 -1
  146. package/.next-prod/server/app/api/mysql/connect/route.js +1 -1
  147. package/.next-prod/server/app/api/mysql/connect/route.js.nft.json +1 -1
  148. package/.next-prod/server/app/api/mysql/disconnect/route.js +1 -1
  149. package/.next-prod/server/app/api/mysql/disconnect/route.js.nft.json +1 -1
  150. package/.next-prod/server/app/api/mysql/export/route.js +1 -1
  151. package/.next-prod/server/app/api/mysql/export/route.js.nft.json +1 -1
  152. package/.next-prod/server/app/api/mysql/query/route.js +1 -1
  153. package/.next-prod/server/app/api/mysql/query/route.js.nft.json +1 -1
  154. package/.next-prod/server/app/api/mysql/schemas/route.js +1 -1
  155. package/.next-prod/server/app/api/mysql/schemas/route.js.nft.json +1 -1
  156. package/.next-prod/server/app/api/neo4j/connect/route.js +1 -1
  157. package/.next-prod/server/app/api/neo4j/connect/route.js.nft.json +1 -1
  158. package/.next-prod/server/app/api/neo4j/disconnect/route.js +1 -1
  159. package/.next-prod/server/app/api/neo4j/disconnect/route.js.nft.json +1 -1
  160. package/.next-prod/server/app/api/neo4j/query/route.js +1 -1
  161. package/.next-prod/server/app/api/neo4j/query/route.js.nft.json +1 -1
  162. package/.next-prod/server/app/api/neo4j/schema/route.js +1 -1
  163. package/.next-prod/server/app/api/neo4j/schema/route.js.nft.json +1 -1
  164. package/.next-prod/server/app/api/note/route.js +1 -1
  165. package/.next-prod/server/app/api/note/route.js.nft.json +1 -1
  166. package/.next-prod/server/app/api/ollama/models/route.js +1 -1
  167. package/.next-prod/server/app/api/ollama/models/route.js.nft.json +1 -1
  168. package/.next-prod/server/app/api/ollama/start/route.js +1 -1
  169. package/.next-prod/server/app/api/ollama/start/route.js.nft.json +1 -1
  170. package/.next-prod/server/app/api/open-cursor/route.js +1 -1
  171. package/.next-prod/server/app/api/open-cursor/route.js.nft.json +1 -1
  172. package/.next-prod/server/app/api/open-vscode/route.js +1 -1
  173. package/.next-prod/server/app/api/open-vscode/route.js.nft.json +1 -1
  174. package/.next-prod/server/app/api/pick-folder/route.js +1 -1
  175. package/.next-prod/server/app/api/pick-folder/route.js.nft.json +1 -1
  176. package/.next-prod/server/app/api/pinned-sessions/route.js +1 -1
  177. package/.next-prod/server/app/api/pinned-sessions/route.js.nft.json +1 -1
  178. package/.next-prod/server/app/api/project-settings/route.js +1 -1
  179. package/.next-prod/server/app/api/project-settings/route.js.nft.json +1 -1
  180. package/.next-prod/server/app/api/project-state/route.js +2 -2
  181. package/.next-prod/server/app/api/project-state/route.js.nft.json +1 -1
  182. package/.next-prod/server/app/api/projectGraph/affected/route.js +1 -1
  183. package/.next-prod/server/app/api/projectGraph/affected/route.js.nft.json +1 -1
  184. package/.next-prod/server/app/api/projectGraph/callees/route.js +1 -1
  185. package/.next-prod/server/app/api/projectGraph/callees/route.js.nft.json +1 -1
  186. package/.next-prod/server/app/api/projectGraph/callers/route.js +1 -1
  187. package/.next-prod/server/app/api/projectGraph/callers/route.js.nft.json +1 -1
  188. package/.next-prod/server/app/api/projectGraph/coedit/route.js +1 -1
  189. package/.next-prod/server/app/api/projectGraph/coedit/route.js.nft.json +1 -1
  190. package/.next-prod/server/app/api/projectGraph/context/route.js +1 -1
  191. package/.next-prod/server/app/api/projectGraph/context/route.js.nft.json +1 -1
  192. package/.next-prod/server/app/api/projectGraph/file/route.js +1 -1
  193. package/.next-prod/server/app/api/projectGraph/file/route.js.nft.json +1 -1
  194. package/.next-prod/server/app/api/projectGraph/file-functions/route.js +1 -1
  195. package/.next-prod/server/app/api/projectGraph/file-functions/route.js.nft.json +1 -1
  196. package/.next-prod/server/app/api/projectGraph/impact/route.js +1 -1
  197. package/.next-prod/server/app/api/projectGraph/impact/route.js.nft.json +1 -1
  198. package/.next-prod/server/app/api/projectGraph/related/route.js +1 -1
  199. package/.next-prod/server/app/api/projectGraph/related/route.js.nft.json +1 -1
  200. package/.next-prod/server/app/api/projectGraph/risk/route.js +1 -1
  201. package/.next-prod/server/app/api/projectGraph/risk/route.js.nft.json +1 -1
  202. package/.next-prod/server/app/api/projectGraph/search/route.js +1 -1
  203. package/.next-prod/server/app/api/projectGraph/search/route.js.nft.json +1 -1
  204. package/.next-prod/server/app/api/projects/route.js +1 -1
  205. package/.next-prod/server/app/api/projects/route.js.nft.json +1 -1
  206. package/.next-prod/server/app/api/push/public-key/route.js +1 -1
  207. package/.next-prod/server/app/api/push/public-key/route.js.nft.json +1 -1
  208. package/.next-prod/server/app/api/push/subscribe/route.js +1 -1
  209. package/.next-prod/server/app/api/push/subscribe/route.js.nft.json +1 -1
  210. package/.next-prod/server/app/api/push/unsubscribe/route.js +1 -1
  211. package/.next-prod/server/app/api/push/unsubscribe/route.js.nft.json +1 -1
  212. package/.next-prod/server/app/api/redis/command/route.js +1 -1
  213. package/.next-prod/server/app/api/redis/command/route.js.nft.json +1 -1
  214. package/.next-prod/server/app/api/redis/connect/route.js +1 -1
  215. package/.next-prod/server/app/api/redis/connect/route.js.nft.json +1 -1
  216. package/.next-prod/server/app/api/redis/delete/route.js +1 -1
  217. package/.next-prod/server/app/api/redis/delete/route.js.nft.json +1 -1
  218. package/.next-prod/server/app/api/redis/disconnect/route.js +1 -1
  219. package/.next-prod/server/app/api/redis/disconnect/route.js.nft.json +1 -1
  220. package/.next-prod/server/app/api/redis/get/route.js +1 -1
  221. package/.next-prod/server/app/api/redis/get/route.js.nft.json +1 -1
  222. package/.next-prod/server/app/api/redis/keys/route.js +1 -1
  223. package/.next-prod/server/app/api/redis/keys/route.js.nft.json +1 -1
  224. package/.next-prod/server/app/api/redis/set/route.js +1 -1
  225. package/.next-prod/server/app/api/redis/set/route.js.nft.json +1 -1
  226. package/.next-prod/server/app/api/review/[id]/comments/route.js +1 -1
  227. package/.next-prod/server/app/api/review/[id]/comments/route.js.nft.json +1 -1
  228. package/.next-prod/server/app/api/review/[id]/replies/route.js +1 -1
  229. package/.next-prod/server/app/api/review/[id]/replies/route.js.nft.json +1 -1
  230. package/.next-prod/server/app/api/review/[id]/route.js +1 -1
  231. package/.next-prod/server/app/api/review/[id]/route.js.nft.json +1 -1
  232. package/.next-prod/server/app/api/review/identify/route.js +1 -1
  233. package/.next-prod/server/app/api/review/identify/route.js.nft.json +1 -1
  234. package/.next-prod/server/app/api/review/order/route.js +1 -1
  235. package/.next-prod/server/app/api/review/order/route.js.nft.json +1 -1
  236. package/.next-prod/server/app/api/review/route.js +1 -1
  237. package/.next-prod/server/app/api/review/route.js.nft.json +1 -1
  238. package/.next-prod/server/app/api/review/share-info/route.js +1 -1
  239. package/.next-prod/server/app/api/review/share-info/route.js.nft.json +1 -1
  240. package/.next-prod/server/app/api/review/users/route.js +1 -1
  241. package/.next-prod/server/app/api/review/users/route.js.nft.json +1 -1
  242. package/.next-prod/server/app/api/scheduled-tasks/route.js +9 -1
  243. package/.next-prod/server/app/api/scheduled-tasks/route.js.nft.json +1 -1
  244. package/.next-prod/server/app/api/services/config/route.js +1 -1
  245. package/.next-prod/server/app/api/services/config/route.js.nft.json +1 -1
  246. package/.next-prod/server/app/api/services/scripts/route.js +1 -1
  247. package/.next-prod/server/app/api/services/scripts/route.js.nft.json +1 -1
  248. package/.next-prod/server/app/api/session/[sessionId]/fork/route.js +1 -1
  249. package/.next-prod/server/app/api/session/[sessionId]/fork/route.js.nft.json +1 -1
  250. package/.next-prod/server/app/api/session/[sessionId]/history/route.js +1 -1
  251. package/.next-prod/server/app/api/session/[sessionId]/history/route.js.nft.json +1 -1
  252. package/.next-prod/server/app/api/session-by-path/route.js +1 -1
  253. package/.next-prod/server/app/api/session-by-path/route.js.nft.json +1 -1
  254. package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js +1 -1
  255. package/.next-prod/server/app/api/sessions/projects/[encodedPath]/route.js.nft.json +1 -1
  256. package/.next-prod/server/app/api/sessions/projects/route.js +1 -1
  257. package/.next-prod/server/app/api/sessions/projects/route.js.nft.json +1 -1
  258. package/.next-prod/server/app/api/sessions/route.js +1 -1
  259. package/.next-prod/server/app/api/sessions/route.js.nft.json +1 -1
  260. package/.next-prod/server/app/api/settings/route.js +1 -1
  261. package/.next-prod/server/app/api/settings/route.js.nft.json +1 -1
  262. package/.next-prod/server/app/api/skills/[id]/route.js +1 -1
  263. package/.next-prod/server/app/api/skills/[id]/route.js.nft.json +1 -1
  264. package/.next-prod/server/app/api/skills/content/route.js +1 -1
  265. package/.next-prod/server/app/api/skills/content/route.js.nft.json +1 -1
  266. package/.next-prod/server/app/api/skills/route.js +1 -1
  267. package/.next-prod/server/app/api/skills/route.js.nft.json +1 -1
  268. package/.next-prod/server/app/api/terminal/aliases/route.js +1 -1
  269. package/.next-prod/server/app/api/terminal/aliases/route.js.nft.json +1 -1
  270. package/.next-prod/server/app/api/terminal/autocomplete/route.js +1 -1
  271. package/.next-prod/server/app/api/terminal/autocomplete/route.js.nft.json +1 -1
  272. package/.next-prod/server/app/api/terminal/bubble-order/route.js +1 -1
  273. package/.next-prod/server/app/api/terminal/bubble-order/route.js.nft.json +1 -1
  274. package/.next-prod/server/app/api/terminal/env/route.js +1 -1
  275. package/.next-prod/server/app/api/terminal/env/route.js.nft.json +1 -1
  276. package/.next-prod/server/app/api/terminal/history/route.js +1 -1
  277. package/.next-prod/server/app/api/terminal/history/route.js.nft.json +1 -1
  278. package/.next-prod/server/app/api/version/route.js +1 -1
  279. package/.next-prod/server/app/api/version/route.js.nft.json +1 -1
  280. package/.next-prod/server/app/favicon.ico/route.js +1 -1
  281. package/.next-prod/server/app/favicon.ico/route.js.nft.json +1 -1
  282. package/.next-prod/server/app/m/page.js +2 -2
  283. package/.next-prod/server/app/m/page.js.nft.json +1 -1
  284. package/.next-prod/server/app/m/page_client-reference-manifest.js +1 -1
  285. package/.next-prod/server/app/manifest.webmanifest/route.js +2 -2
  286. package/.next-prod/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  287. package/.next-prod/server/app/page.js +2 -2
  288. package/.next-prod/server/app/page.js.nft.json +1 -1
  289. package/.next-prod/server/app/page_client-reference-manifest.js +1 -1
  290. package/.next-prod/server/app/project/page.js +2 -2
  291. package/.next-prod/server/app/project/page.js.nft.json +1 -1
  292. package/.next-prod/server/app/project/page_client-reference-manifest.js +1 -1
  293. package/.next-prod/server/app/review/[id]/page.js +2 -2
  294. package/.next-prod/server/app/review/[id]/page.js.nft.json +1 -1
  295. package/.next-prod/server/app/review/[id]/page_client-reference-manifest.js +1 -1
  296. package/.next-prod/server/app-paths-manifest.json +2 -1
  297. package/.next-prod/server/chunks/2939.js +1 -1
  298. package/.next-prod/server/chunks/304.js +1 -1
  299. package/.next-prod/server/chunks/{2637.js → 3633.js} +8 -8
  300. package/.next-prod/server/chunks/3742.js +1 -0
  301. package/.next-prod/server/chunks/3792.js +1 -1
  302. package/.next-prod/server/chunks/6955.js +1 -1
  303. package/.next-prod/server/chunks/7003.js +1 -1
  304. package/.next-prod/server/chunks/7338.js +89 -0
  305. package/.next-prod/server/chunks/8916.js +1 -1
  306. package/.next-prod/server/chunks/9658.js +16 -14
  307. package/.next-prod/server/chunks/9989.js +1 -0
  308. package/.next-prod/server/functions-config-manifest.json +1 -0
  309. package/.next-prod/server/middleware-build-manifest.js +1 -1
  310. package/.next-prod/server/middleware-react-loadable-manifest.js +1 -1
  311. package/.next-prod/server/pages/404.html +2 -2
  312. package/.next-prod/server/pages/500.html +1 -1
  313. package/.next-prod/server/server-reference-manifest.json +1 -1
  314. package/.next-prod/static/8ynyJhylJ-L1v1YRm30nG/_buildManifest.js +1 -0
  315. package/.next-prod/static/chunks/{1959.b9473117faf354bf.js → 1959.698f1d1accabcbe6.js} +2 -2
  316. package/.next-prod/static/chunks/217-259a6d7d3cac75d8.js +5 -0
  317. package/.next-prod/static/chunks/2576-02f5659d0b08eada.js +25 -0
  318. package/.next-prod/static/chunks/9469-7902249e8fbf7955.js +14 -0
  319. package/.next-prod/static/chunks/app/_global-error/page-d7801a0008b8d59b.js +1 -0
  320. package/.next-prod/static/chunks/app/api/agent/test/route-d7801a0008b8d59b.js +1 -0
  321. package/.next-prod/static/chunks/app/api/bash/route-d7801a0008b8d59b.js +1 -0
  322. package/.next-prod/static/chunks/app/api/chat/codex/route-d7801a0008b8d59b.js +1 -0
  323. package/.next-prod/static/chunks/app/api/chat/deepseek/route-d7801a0008b8d59b.js +1 -0
  324. package/.next-prod/static/chunks/app/api/chat/kimi/route-d7801a0008b8d59b.js +1 -0
  325. package/.next-prod/static/chunks/app/api/chat/ollama/route-d7801a0008b8d59b.js +1 -0
  326. package/.next-prod/static/chunks/app/api/chat/pty-input/route-d7801a0008b8d59b.js +1 -0
  327. package/.next-prod/static/chunks/app/api/chat/route-d7801a0008b8d59b.js +1 -0
  328. package/.next-prod/static/chunks/app/api/chat/stop/route-d7801a0008b8d59b.js +1 -0
  329. package/.next-prod/static/chunks/app/api/claude-stats/route-d7801a0008b8d59b.js +1 -0
  330. package/.next-prod/static/chunks/app/api/commands/route-d7801a0008b8d59b.js +1 -0
  331. package/.next-prod/static/chunks/app/api/comments/route-d7801a0008b8d59b.js +1 -0
  332. package/.next-prod/static/chunks/app/api/db/columns/route-d7801a0008b8d59b.js +1 -0
  333. package/.next-prod/static/chunks/app/api/db/connect/route-d7801a0008b8d59b.js +1 -0
  334. package/.next-prod/static/chunks/app/api/db/disconnect/route-d7801a0008b8d59b.js +1 -0
  335. package/.next-prod/static/chunks/app/api/db/export/route-d7801a0008b8d59b.js +1 -0
  336. package/.next-prod/static/chunks/app/api/db/query/route-d7801a0008b8d59b.js +1 -0
  337. package/.next-prod/static/chunks/app/api/db/schemas/route-d7801a0008b8d59b.js +1 -0
  338. package/.next-prod/static/chunks/app/api/dev/spans/route-d7801a0008b8d59b.js +1 -0
  339. package/.next-prod/static/chunks/app/api/extension/version/route-d7801a0008b8d59b.js +1 -0
  340. package/.next-prod/static/chunks/app/api/file/route-d7801a0008b8d59b.js +1 -0
  341. package/.next-prod/static/chunks/app/api/files/blame/route-d7801a0008b8d59b.js +1 -0
  342. package/.next-prod/static/chunks/app/api/files/clipboard/route-d7801a0008b8d59b.js +1 -0
  343. package/.next-prod/static/chunks/app/api/files/copy/route-d7801a0008b8d59b.js +1 -0
  344. package/.next-prod/static/chunks/app/api/files/delete/route-d7801a0008b8d59b.js +1 -0
  345. package/.next-prod/static/chunks/app/api/files/expanded/route-d7801a0008b8d59b.js +1 -0
  346. package/.next-prod/static/chunks/app/api/files/index/route-d7801a0008b8d59b.js +1 -0
  347. package/.next-prod/static/chunks/app/api/files/init/route-d7801a0008b8d59b.js +1 -0
  348. package/.next-prod/static/chunks/app/api/files/paste/route-d7801a0008b8d59b.js +1 -0
  349. package/.next-prod/static/chunks/app/api/files/read/route-d7801a0008b8d59b.js +1 -0
  350. package/.next-prod/static/chunks/app/api/files/readdir/route-d7801a0008b8d59b.js +1 -0
  351. package/.next-prod/static/chunks/app/api/files/recent/route-d7801a0008b8d59b.js +1 -0
  352. package/.next-prod/static/chunks/app/api/files/save/route-d7801a0008b8d59b.js +1 -0
  353. package/.next-prod/static/chunks/app/api/files/search/route-d7801a0008b8d59b.js +1 -0
  354. package/.next-prod/static/chunks/app/api/files/stat/route-d7801a0008b8d59b.js +1 -0
  355. package/.next-prod/static/chunks/app/api/files/text/route-d7801a0008b8d59b.js +1 -0
  356. package/.next-prod/static/chunks/app/api/git/branch-diff/route-d7801a0008b8d59b.js +1 -0
  357. package/.next-prod/static/chunks/app/api/git/branches/route-d7801a0008b8d59b.js +1 -0
  358. package/.next-prod/static/chunks/app/api/git/commit-diff/route-d7801a0008b8d59b.js +1 -0
  359. package/.next-prod/static/chunks/app/api/git/commits/route-d7801a0008b8d59b.js +1 -0
  360. package/.next-prod/static/chunks/app/api/git/current-branch/route-d7801a0008b8d59b.js +1 -0
  361. package/.next-prod/static/chunks/app/api/git/diff/route-d7801a0008b8d59b.js +1 -0
  362. package/.next-prod/static/chunks/app/api/git/discard/route-d7801a0008b8d59b.js +1 -0
  363. package/.next-prod/static/chunks/app/api/git/stage/route-d7801a0008b8d59b.js +1 -0
  364. package/.next-prod/static/chunks/app/api/git/status/route-d7801a0008b8d59b.js +1 -0
  365. package/.next-prod/static/chunks/app/api/git/unstage/route-d7801a0008b8d59b.js +1 -0
  366. package/.next-prod/static/chunks/app/api/git/worktree/route-d7801a0008b8d59b.js +1 -0
  367. package/.next-prod/static/chunks/app/api/global-state/route-d7801a0008b8d59b.js +1 -0
  368. package/.next-prod/static/chunks/app/api/health/route-d7801a0008b8d59b.js +1 -0
  369. package/.next-prod/static/chunks/app/api/jupyter/load/route-d7801a0008b8d59b.js +1 -0
  370. package/.next-prod/static/chunks/app/api/jupyter/save/route-d7801a0008b8d59b.js +1 -0
  371. package/.next-prod/static/chunks/app/api/jupyter/shutdown/route-d7801a0008b8d59b.js +1 -0
  372. package/.next-prod/static/chunks/app/api/lsp/definition/route-d7801a0008b8d59b.js +1 -0
  373. package/.next-prod/static/chunks/app/api/lsp/hover/route-d7801a0008b8d59b.js +1 -0
  374. package/.next-prod/static/chunks/app/api/lsp/references/route-d7801a0008b8d59b.js +1 -0
  375. package/.next-prod/static/chunks/app/api/lsp/status/route-d7801a0008b8d59b.js +1 -0
  376. package/.next-prod/static/chunks/app/api/lsp/warmup/route-d7801a0008b8d59b.js +1 -0
  377. package/.next-prod/static/chunks/app/api/mysql/columns/route-d7801a0008b8d59b.js +1 -0
  378. package/.next-prod/static/chunks/app/api/mysql/connect/route-d7801a0008b8d59b.js +1 -0
  379. package/.next-prod/static/chunks/app/api/mysql/disconnect/route-d7801a0008b8d59b.js +1 -0
  380. package/.next-prod/static/chunks/app/api/mysql/export/route-d7801a0008b8d59b.js +1 -0
  381. package/.next-prod/static/chunks/app/api/mysql/query/route-d7801a0008b8d59b.js +1 -0
  382. package/.next-prod/static/chunks/app/api/mysql/schemas/route-d7801a0008b8d59b.js +1 -0
  383. package/.next-prod/static/chunks/app/api/neo4j/connect/route-d7801a0008b8d59b.js +1 -0
  384. package/.next-prod/static/chunks/app/api/neo4j/disconnect/route-d7801a0008b8d59b.js +1 -0
  385. package/.next-prod/static/chunks/app/api/neo4j/query/route-d7801a0008b8d59b.js +1 -0
  386. package/.next-prod/static/chunks/app/api/neo4j/schema/route-d7801a0008b8d59b.js +1 -0
  387. package/.next-prod/static/chunks/app/api/note/route-d7801a0008b8d59b.js +1 -0
  388. package/.next-prod/static/chunks/app/api/ollama/models/route-d7801a0008b8d59b.js +1 -0
  389. package/.next-prod/static/chunks/app/api/ollama/start/route-d7801a0008b8d59b.js +1 -0
  390. package/.next-prod/static/chunks/app/api/open-cursor/route-d7801a0008b8d59b.js +1 -0
  391. package/.next-prod/static/chunks/app/api/open-vscode/route-d7801a0008b8d59b.js +1 -0
  392. package/.next-prod/static/chunks/app/api/pick-folder/route-d7801a0008b8d59b.js +1 -0
  393. package/.next-prod/static/chunks/app/api/pinned-sessions/route-d7801a0008b8d59b.js +1 -0
  394. package/.next-prod/static/chunks/app/api/project-settings/route-d7801a0008b8d59b.js +1 -0
  395. package/.next-prod/static/chunks/app/api/project-state/route-d7801a0008b8d59b.js +1 -0
  396. package/.next-prod/static/chunks/app/api/projectGraph/affected/route-d7801a0008b8d59b.js +1 -0
  397. package/.next-prod/static/chunks/app/api/projectGraph/callees/route-d7801a0008b8d59b.js +1 -0
  398. package/.next-prod/static/chunks/app/api/projectGraph/callers/route-d7801a0008b8d59b.js +1 -0
  399. package/.next-prod/static/chunks/app/api/projectGraph/coedit/route-d7801a0008b8d59b.js +1 -0
  400. package/.next-prod/static/chunks/app/api/projectGraph/context/route-d7801a0008b8d59b.js +1 -0
  401. package/.next-prod/static/chunks/app/api/projectGraph/file/route-d7801a0008b8d59b.js +1 -0
  402. package/.next-prod/static/chunks/app/api/projectGraph/file-functions/route-d7801a0008b8d59b.js +1 -0
  403. package/.next-prod/static/chunks/app/api/projectGraph/impact/route-d7801a0008b8d59b.js +1 -0
  404. package/.next-prod/static/chunks/app/api/projectGraph/related/route-d7801a0008b8d59b.js +1 -0
  405. package/.next-prod/static/chunks/app/api/projectGraph/risk/route-d7801a0008b8d59b.js +1 -0
  406. package/.next-prod/static/chunks/app/api/projectGraph/search/route-d7801a0008b8d59b.js +1 -0
  407. package/.next-prod/static/chunks/app/api/projects/route-d7801a0008b8d59b.js +1 -0
  408. package/.next-prod/static/chunks/app/api/push/public-key/route-d7801a0008b8d59b.js +1 -0
  409. package/.next-prod/static/chunks/app/api/push/subscribe/route-d7801a0008b8d59b.js +1 -0
  410. package/.next-prod/static/chunks/app/api/push/unsubscribe/route-d7801a0008b8d59b.js +1 -0
  411. package/.next-prod/static/chunks/app/api/redis/command/route-d7801a0008b8d59b.js +1 -0
  412. package/.next-prod/static/chunks/app/api/redis/connect/route-d7801a0008b8d59b.js +1 -0
  413. package/.next-prod/static/chunks/app/api/redis/delete/route-d7801a0008b8d59b.js +1 -0
  414. package/.next-prod/static/chunks/app/api/redis/disconnect/route-d7801a0008b8d59b.js +1 -0
  415. package/.next-prod/static/chunks/app/api/redis/get/route-d7801a0008b8d59b.js +1 -0
  416. package/.next-prod/static/chunks/app/api/redis/keys/route-d7801a0008b8d59b.js +1 -0
  417. package/.next-prod/static/chunks/app/api/redis/set/route-d7801a0008b8d59b.js +1 -0
  418. package/.next-prod/static/chunks/app/api/review/[id]/comments/route-d7801a0008b8d59b.js +1 -0
  419. package/.next-prod/static/chunks/app/api/review/[id]/replies/route-d7801a0008b8d59b.js +1 -0
  420. package/.next-prod/static/chunks/app/api/review/[id]/route-d7801a0008b8d59b.js +1 -0
  421. package/.next-prod/static/chunks/app/api/review/identify/route-d7801a0008b8d59b.js +1 -0
  422. package/.next-prod/static/chunks/app/api/review/order/route-d7801a0008b8d59b.js +1 -0
  423. package/.next-prod/static/chunks/app/api/review/route-d7801a0008b8d59b.js +1 -0
  424. package/.next-prod/static/chunks/app/api/review/share-info/route-d7801a0008b8d59b.js +1 -0
  425. package/.next-prod/static/chunks/app/api/review/users/route-d7801a0008b8d59b.js +1 -0
  426. package/.next-prod/static/chunks/app/api/scheduled-tasks/route-d7801a0008b8d59b.js +1 -0
  427. package/.next-prod/static/chunks/app/api/services/config/route-d7801a0008b8d59b.js +1 -0
  428. package/.next-prod/static/chunks/app/api/services/scripts/route-d7801a0008b8d59b.js +1 -0
  429. package/.next-prod/static/chunks/app/api/session/[sessionId]/fork/route-d7801a0008b8d59b.js +1 -0
  430. package/.next-prod/static/chunks/app/api/session/[sessionId]/history/route-d7801a0008b8d59b.js +1 -0
  431. package/.next-prod/static/chunks/app/api/session-by-path/route-d7801a0008b8d59b.js +1 -0
  432. package/.next-prod/static/chunks/app/api/sessions/projects/[encodedPath]/route-d7801a0008b8d59b.js +1 -0
  433. package/.next-prod/static/chunks/app/api/sessions/projects/route-d7801a0008b8d59b.js +1 -0
  434. package/.next-prod/static/chunks/app/api/sessions/route-d7801a0008b8d59b.js +1 -0
  435. package/.next-prod/static/chunks/app/api/settings/route-d7801a0008b8d59b.js +1 -0
  436. package/.next-prod/static/chunks/app/api/skills/[id]/route-d7801a0008b8d59b.js +1 -0
  437. package/.next-prod/static/chunks/app/api/skills/content/route-d7801a0008b8d59b.js +1 -0
  438. package/.next-prod/static/chunks/app/api/skills/route-d7801a0008b8d59b.js +1 -0
  439. package/.next-prod/static/chunks/app/api/terminal/aliases/route-d7801a0008b8d59b.js +1 -0
  440. package/.next-prod/static/chunks/app/api/terminal/autocomplete/route-d7801a0008b8d59b.js +1 -0
  441. package/.next-prod/static/chunks/app/api/terminal/bubble-order/route-d7801a0008b8d59b.js +1 -0
  442. package/.next-prod/static/chunks/app/api/terminal/env/route-d7801a0008b8d59b.js +1 -0
  443. package/.next-prod/static/chunks/app/api/terminal/history/route-d7801a0008b8d59b.js +1 -0
  444. package/.next-prod/static/chunks/app/api/version/route-d7801a0008b8d59b.js +1 -0
  445. package/.next-prod/static/chunks/app/{layout-312d106fe47907df.js → layout-edef27fb2f6b346e.js} +1 -1
  446. package/.next-prod/static/chunks/app/m/page-50afaa8bd837e768.js +1 -0
  447. package/.next-prod/static/chunks/app/manifest.webmanifest/route-d7801a0008b8d59b.js +1 -0
  448. package/.next-prod/static/chunks/app/{page-db70085227aa56aa.js → page-49470b6c107b5dee.js} +1 -1
  449. package/.next-prod/static/chunks/app/project/{page-db70085227aa56aa.js → page-49470b6c107b5dee.js} +1 -1
  450. package/.next-prod/static/chunks/next/dist/client/components/builtin/app-error-d7801a0008b8d59b.js +1 -0
  451. package/.next-prod/static/chunks/next/dist/client/components/builtin/forbidden-d7801a0008b8d59b.js +1 -0
  452. package/.next-prod/static/chunks/next/dist/client/components/builtin/not-found-d7801a0008b8d59b.js +1 -0
  453. package/.next-prod/static/chunks/next/dist/client/components/builtin/unauthorized-d7801a0008b8d59b.js +1 -0
  454. package/.next-prod/static/chunks/{webpack-cb3881d9a37f80b7.js → webpack-2404d47da29b5b14.js} +1 -1
  455. package/.next-prod/static/css/431aee2b8a9b6d2b.css +1 -0
  456. package/.next-prod/trace +13 -13
  457. package/.next-prod/trace-build +1 -1
  458. package/.next-prod/types/app/api/health/route.ts +351 -0
  459. package/.next-prod/types/routes.d.ts +2 -1
  460. package/.next-prod/types/validator.ts +9 -0
  461. package/bin/cock-browser.mjs +7 -3
  462. package/bin/cock-connection.mjs +5 -1
  463. package/bin/cock-terminal.mjs +6 -2
  464. package/dist/{chunk-5BOGGUGT.mjs → chunk-GFI4IHYM.mjs} +91 -78
  465. package/dist/{chunk-SDWQ72YQ.mjs → chunk-J5B4FIW5.mjs} +172 -1
  466. package/dist/{chunk-BM3ZNL5S.mjs → chunk-R564FMS3.mjs} +162 -34
  467. package/dist/httpApi.mjs +4 -2
  468. package/dist/scheduledTasks.mjs +17076 -110
  469. package/dist/{server-DRMO2DUJ.mjs → server-J7ZUYRI6.mjs} +8 -2
  470. package/dist/wsServer.mjs +15 -7
  471. package/package.json +1 -1
  472. package/server.mjs +58 -9
  473. package/.next-prod/static/cTq1mDm5D_oZLiumFG6di/_buildManifest.js +0 -1
  474. package/.next-prod/static/chunks/2576-fe33a1bae037bd9b.js +0 -25
  475. package/.next-prod/static/chunks/5156-2953531342c13696.js +0 -3
  476. package/.next-prod/static/chunks/9469-fb5c6f08ba6bab74.js +0 -14
  477. package/.next-prod/static/chunks/app/_global-error/page-cc849cd7b6f01cad.js +0 -1
  478. package/.next-prod/static/chunks/app/api/agent/test/route-cc849cd7b6f01cad.js +0 -1
  479. package/.next-prod/static/chunks/app/api/bash/route-cc849cd7b6f01cad.js +0 -1
  480. package/.next-prod/static/chunks/app/api/chat/codex/route-cc849cd7b6f01cad.js +0 -1
  481. package/.next-prod/static/chunks/app/api/chat/deepseek/route-cc849cd7b6f01cad.js +0 -1
  482. package/.next-prod/static/chunks/app/api/chat/kimi/route-cc849cd7b6f01cad.js +0 -1
  483. package/.next-prod/static/chunks/app/api/chat/ollama/route-cc849cd7b6f01cad.js +0 -1
  484. package/.next-prod/static/chunks/app/api/chat/pty-input/route-cc849cd7b6f01cad.js +0 -1
  485. package/.next-prod/static/chunks/app/api/chat/route-cc849cd7b6f01cad.js +0 -1
  486. package/.next-prod/static/chunks/app/api/chat/stop/route-cc849cd7b6f01cad.js +0 -1
  487. package/.next-prod/static/chunks/app/api/claude-stats/route-cc849cd7b6f01cad.js +0 -1
  488. package/.next-prod/static/chunks/app/api/commands/route-cc849cd7b6f01cad.js +0 -1
  489. package/.next-prod/static/chunks/app/api/comments/route-cc849cd7b6f01cad.js +0 -1
  490. package/.next-prod/static/chunks/app/api/db/columns/route-cc849cd7b6f01cad.js +0 -1
  491. package/.next-prod/static/chunks/app/api/db/connect/route-cc849cd7b6f01cad.js +0 -1
  492. package/.next-prod/static/chunks/app/api/db/disconnect/route-cc849cd7b6f01cad.js +0 -1
  493. package/.next-prod/static/chunks/app/api/db/export/route-cc849cd7b6f01cad.js +0 -1
  494. package/.next-prod/static/chunks/app/api/db/query/route-cc849cd7b6f01cad.js +0 -1
  495. package/.next-prod/static/chunks/app/api/db/schemas/route-cc849cd7b6f01cad.js +0 -1
  496. package/.next-prod/static/chunks/app/api/dev/spans/route-cc849cd7b6f01cad.js +0 -1
  497. package/.next-prod/static/chunks/app/api/extension/version/route-cc849cd7b6f01cad.js +0 -1
  498. package/.next-prod/static/chunks/app/api/file/route-cc849cd7b6f01cad.js +0 -1
  499. package/.next-prod/static/chunks/app/api/files/blame/route-cc849cd7b6f01cad.js +0 -1
  500. package/.next-prod/static/chunks/app/api/files/clipboard/route-cc849cd7b6f01cad.js +0 -1
  501. package/.next-prod/static/chunks/app/api/files/copy/route-cc849cd7b6f01cad.js +0 -1
  502. package/.next-prod/static/chunks/app/api/files/delete/route-cc849cd7b6f01cad.js +0 -1
  503. package/.next-prod/static/chunks/app/api/files/expanded/route-cc849cd7b6f01cad.js +0 -1
  504. package/.next-prod/static/chunks/app/api/files/index/route-cc849cd7b6f01cad.js +0 -1
  505. package/.next-prod/static/chunks/app/api/files/init/route-cc849cd7b6f01cad.js +0 -1
  506. package/.next-prod/static/chunks/app/api/files/paste/route-cc849cd7b6f01cad.js +0 -1
  507. package/.next-prod/static/chunks/app/api/files/read/route-cc849cd7b6f01cad.js +0 -1
  508. package/.next-prod/static/chunks/app/api/files/readdir/route-cc849cd7b6f01cad.js +0 -1
  509. package/.next-prod/static/chunks/app/api/files/recent/route-cc849cd7b6f01cad.js +0 -1
  510. package/.next-prod/static/chunks/app/api/files/save/route-cc849cd7b6f01cad.js +0 -1
  511. package/.next-prod/static/chunks/app/api/files/search/route-cc849cd7b6f01cad.js +0 -1
  512. package/.next-prod/static/chunks/app/api/files/stat/route-cc849cd7b6f01cad.js +0 -1
  513. package/.next-prod/static/chunks/app/api/files/text/route-cc849cd7b6f01cad.js +0 -1
  514. package/.next-prod/static/chunks/app/api/git/branch-diff/route-cc849cd7b6f01cad.js +0 -1
  515. package/.next-prod/static/chunks/app/api/git/branches/route-cc849cd7b6f01cad.js +0 -1
  516. package/.next-prod/static/chunks/app/api/git/commit-diff/route-cc849cd7b6f01cad.js +0 -1
  517. package/.next-prod/static/chunks/app/api/git/commits/route-cc849cd7b6f01cad.js +0 -1
  518. package/.next-prod/static/chunks/app/api/git/current-branch/route-cc849cd7b6f01cad.js +0 -1
  519. package/.next-prod/static/chunks/app/api/git/diff/route-cc849cd7b6f01cad.js +0 -1
  520. package/.next-prod/static/chunks/app/api/git/discard/route-cc849cd7b6f01cad.js +0 -1
  521. package/.next-prod/static/chunks/app/api/git/stage/route-cc849cd7b6f01cad.js +0 -1
  522. package/.next-prod/static/chunks/app/api/git/status/route-cc849cd7b6f01cad.js +0 -1
  523. package/.next-prod/static/chunks/app/api/git/unstage/route-cc849cd7b6f01cad.js +0 -1
  524. package/.next-prod/static/chunks/app/api/git/worktree/route-cc849cd7b6f01cad.js +0 -1
  525. package/.next-prod/static/chunks/app/api/global-state/route-cc849cd7b6f01cad.js +0 -1
  526. package/.next-prod/static/chunks/app/api/jupyter/load/route-cc849cd7b6f01cad.js +0 -1
  527. package/.next-prod/static/chunks/app/api/jupyter/save/route-cc849cd7b6f01cad.js +0 -1
  528. package/.next-prod/static/chunks/app/api/jupyter/shutdown/route-cc849cd7b6f01cad.js +0 -1
  529. package/.next-prod/static/chunks/app/api/lsp/definition/route-cc849cd7b6f01cad.js +0 -1
  530. package/.next-prod/static/chunks/app/api/lsp/hover/route-cc849cd7b6f01cad.js +0 -1
  531. package/.next-prod/static/chunks/app/api/lsp/references/route-cc849cd7b6f01cad.js +0 -1
  532. package/.next-prod/static/chunks/app/api/lsp/status/route-cc849cd7b6f01cad.js +0 -1
  533. package/.next-prod/static/chunks/app/api/lsp/warmup/route-cc849cd7b6f01cad.js +0 -1
  534. package/.next-prod/static/chunks/app/api/mysql/columns/route-cc849cd7b6f01cad.js +0 -1
  535. package/.next-prod/static/chunks/app/api/mysql/connect/route-cc849cd7b6f01cad.js +0 -1
  536. package/.next-prod/static/chunks/app/api/mysql/disconnect/route-cc849cd7b6f01cad.js +0 -1
  537. package/.next-prod/static/chunks/app/api/mysql/export/route-cc849cd7b6f01cad.js +0 -1
  538. package/.next-prod/static/chunks/app/api/mysql/query/route-cc849cd7b6f01cad.js +0 -1
  539. package/.next-prod/static/chunks/app/api/mysql/schemas/route-cc849cd7b6f01cad.js +0 -1
  540. package/.next-prod/static/chunks/app/api/neo4j/connect/route-cc849cd7b6f01cad.js +0 -1
  541. package/.next-prod/static/chunks/app/api/neo4j/disconnect/route-cc849cd7b6f01cad.js +0 -1
  542. package/.next-prod/static/chunks/app/api/neo4j/query/route-cc849cd7b6f01cad.js +0 -1
  543. package/.next-prod/static/chunks/app/api/neo4j/schema/route-cc849cd7b6f01cad.js +0 -1
  544. package/.next-prod/static/chunks/app/api/note/route-cc849cd7b6f01cad.js +0 -1
  545. package/.next-prod/static/chunks/app/api/ollama/models/route-cc849cd7b6f01cad.js +0 -1
  546. package/.next-prod/static/chunks/app/api/ollama/start/route-cc849cd7b6f01cad.js +0 -1
  547. package/.next-prod/static/chunks/app/api/open-cursor/route-cc849cd7b6f01cad.js +0 -1
  548. package/.next-prod/static/chunks/app/api/open-vscode/route-cc849cd7b6f01cad.js +0 -1
  549. package/.next-prod/static/chunks/app/api/pick-folder/route-cc849cd7b6f01cad.js +0 -1
  550. package/.next-prod/static/chunks/app/api/pinned-sessions/route-cc849cd7b6f01cad.js +0 -1
  551. package/.next-prod/static/chunks/app/api/project-settings/route-cc849cd7b6f01cad.js +0 -1
  552. package/.next-prod/static/chunks/app/api/project-state/route-cc849cd7b6f01cad.js +0 -1
  553. package/.next-prod/static/chunks/app/api/projectGraph/affected/route-cc849cd7b6f01cad.js +0 -1
  554. package/.next-prod/static/chunks/app/api/projectGraph/callees/route-cc849cd7b6f01cad.js +0 -1
  555. package/.next-prod/static/chunks/app/api/projectGraph/callers/route-cc849cd7b6f01cad.js +0 -1
  556. package/.next-prod/static/chunks/app/api/projectGraph/coedit/route-cc849cd7b6f01cad.js +0 -1
  557. package/.next-prod/static/chunks/app/api/projectGraph/context/route-cc849cd7b6f01cad.js +0 -1
  558. package/.next-prod/static/chunks/app/api/projectGraph/file/route-cc849cd7b6f01cad.js +0 -1
  559. package/.next-prod/static/chunks/app/api/projectGraph/file-functions/route-cc849cd7b6f01cad.js +0 -1
  560. package/.next-prod/static/chunks/app/api/projectGraph/impact/route-cc849cd7b6f01cad.js +0 -1
  561. package/.next-prod/static/chunks/app/api/projectGraph/related/route-cc849cd7b6f01cad.js +0 -1
  562. package/.next-prod/static/chunks/app/api/projectGraph/risk/route-cc849cd7b6f01cad.js +0 -1
  563. package/.next-prod/static/chunks/app/api/projectGraph/search/route-cc849cd7b6f01cad.js +0 -1
  564. package/.next-prod/static/chunks/app/api/projects/route-cc849cd7b6f01cad.js +0 -1
  565. package/.next-prod/static/chunks/app/api/push/public-key/route-cc849cd7b6f01cad.js +0 -1
  566. package/.next-prod/static/chunks/app/api/push/subscribe/route-cc849cd7b6f01cad.js +0 -1
  567. package/.next-prod/static/chunks/app/api/push/unsubscribe/route-cc849cd7b6f01cad.js +0 -1
  568. package/.next-prod/static/chunks/app/api/redis/command/route-cc849cd7b6f01cad.js +0 -1
  569. package/.next-prod/static/chunks/app/api/redis/connect/route-cc849cd7b6f01cad.js +0 -1
  570. package/.next-prod/static/chunks/app/api/redis/delete/route-cc849cd7b6f01cad.js +0 -1
  571. package/.next-prod/static/chunks/app/api/redis/disconnect/route-cc849cd7b6f01cad.js +0 -1
  572. package/.next-prod/static/chunks/app/api/redis/get/route-cc849cd7b6f01cad.js +0 -1
  573. package/.next-prod/static/chunks/app/api/redis/keys/route-cc849cd7b6f01cad.js +0 -1
  574. package/.next-prod/static/chunks/app/api/redis/set/route-cc849cd7b6f01cad.js +0 -1
  575. package/.next-prod/static/chunks/app/api/review/[id]/comments/route-cc849cd7b6f01cad.js +0 -1
  576. package/.next-prod/static/chunks/app/api/review/[id]/replies/route-cc849cd7b6f01cad.js +0 -1
  577. package/.next-prod/static/chunks/app/api/review/[id]/route-cc849cd7b6f01cad.js +0 -1
  578. package/.next-prod/static/chunks/app/api/review/identify/route-cc849cd7b6f01cad.js +0 -1
  579. package/.next-prod/static/chunks/app/api/review/order/route-cc849cd7b6f01cad.js +0 -1
  580. package/.next-prod/static/chunks/app/api/review/route-cc849cd7b6f01cad.js +0 -1
  581. package/.next-prod/static/chunks/app/api/review/share-info/route-cc849cd7b6f01cad.js +0 -1
  582. package/.next-prod/static/chunks/app/api/review/users/route-cc849cd7b6f01cad.js +0 -1
  583. package/.next-prod/static/chunks/app/api/scheduled-tasks/route-cc849cd7b6f01cad.js +0 -1
  584. package/.next-prod/static/chunks/app/api/services/config/route-cc849cd7b6f01cad.js +0 -1
  585. package/.next-prod/static/chunks/app/api/services/scripts/route-cc849cd7b6f01cad.js +0 -1
  586. package/.next-prod/static/chunks/app/api/session/[sessionId]/fork/route-cc849cd7b6f01cad.js +0 -1
  587. package/.next-prod/static/chunks/app/api/session/[sessionId]/history/route-cc849cd7b6f01cad.js +0 -1
  588. package/.next-prod/static/chunks/app/api/session-by-path/route-cc849cd7b6f01cad.js +0 -1
  589. package/.next-prod/static/chunks/app/api/sessions/projects/[encodedPath]/route-cc849cd7b6f01cad.js +0 -1
  590. package/.next-prod/static/chunks/app/api/sessions/projects/route-cc849cd7b6f01cad.js +0 -1
  591. package/.next-prod/static/chunks/app/api/sessions/route-cc849cd7b6f01cad.js +0 -1
  592. package/.next-prod/static/chunks/app/api/settings/route-cc849cd7b6f01cad.js +0 -1
  593. package/.next-prod/static/chunks/app/api/skills/[id]/route-cc849cd7b6f01cad.js +0 -1
  594. package/.next-prod/static/chunks/app/api/skills/content/route-cc849cd7b6f01cad.js +0 -1
  595. package/.next-prod/static/chunks/app/api/skills/route-cc849cd7b6f01cad.js +0 -1
  596. package/.next-prod/static/chunks/app/api/terminal/aliases/route-cc849cd7b6f01cad.js +0 -1
  597. package/.next-prod/static/chunks/app/api/terminal/autocomplete/route-cc849cd7b6f01cad.js +0 -1
  598. package/.next-prod/static/chunks/app/api/terminal/bubble-order/route-cc849cd7b6f01cad.js +0 -1
  599. package/.next-prod/static/chunks/app/api/terminal/env/route-cc849cd7b6f01cad.js +0 -1
  600. package/.next-prod/static/chunks/app/api/terminal/history/route-cc849cd7b6f01cad.js +0 -1
  601. package/.next-prod/static/chunks/app/api/version/route-cc849cd7b6f01cad.js +0 -1
  602. package/.next-prod/static/chunks/app/m/page-0be3799c1b38c991.js +0 -1
  603. package/.next-prod/static/chunks/app/manifest.webmanifest/route-cc849cd7b6f01cad.js +0 -1
  604. package/.next-prod/static/chunks/next/dist/client/components/builtin/app-error-cc849cd7b6f01cad.js +0 -1
  605. package/.next-prod/static/chunks/next/dist/client/components/builtin/forbidden-cc849cd7b6f01cad.js +0 -1
  606. package/.next-prod/static/chunks/next/dist/client/components/builtin/not-found-cc849cd7b6f01cad.js +0 -1
  607. package/.next-prod/static/chunks/next/dist/client/components/builtin/unauthorized-cc849cd7b6f01cad.js +0 -1
  608. package/.next-prod/static/css/217cb3486f7b68d7.css +0 -1
  609. /package/.next-prod/static/{cTq1mDm5D_oZLiumFG6di → 8ynyJhylJ-L1v1YRm30nG}/_ssgManifest.js +0 -0
@@ -1 +1 @@
1
- "use strict";exports.id=2939,exports.ids=[2939],exports.modules={4253:(a,b,c)=>{c.d(b,{L8:()=>p,No:()=>h,Pe:()=>o,VA:()=>q,hC:()=>m,hH:()=>l,hn:()=>s,iF:()=>r,lU:()=>t,nw:()=>n,pZ:()=>g});var d=c(79748),e=c(33873),f=c.n(e);let g=0xa00000,h=0x3200000,i=new Set([".png",".jpg",".jpeg",".gif",".webp",".svg",".ico",".bmp",".avif"]),j=new Set([".pdf",".doc",".docx",".xls",".xlsx",".ppt",".pptx",".zip",".tar",".gz",".rar",".7z",".exe",".dll",".so",".dylib",".mp3",".mp4",".avi",".mov",".mkv",".wav",".flac",".ttf",".otf",".woff",".woff2",".eot",".db",".sqlite",".sqlite3",".pyc",".class",".o",".a"]),k={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".svg":"image/svg+xml",".ico":"image/x-icon",".bmp":"image/bmp",".avif":"image/avif"};function l(a){return k[a.toLowerCase()]||"application/octet-stream"}function m(a,b){if("string"!=typeof b||0===b.length)return null;let c=f().resolve(a),d=f().resolve(c,b);return d===c||d.startsWith(c+f().sep)?d:null}async function n(a){let b;if("string"!=typeof a||0===a.length)return{ok:!1,reason:"Missing cwd parameter"};if(!f().isAbsolute(a))return{ok:!1,reason:"cwd must be an absolute path"};let c=f().resolve(a);try{b=await (0,d.stat)(c)}catch{return{ok:!1,reason:"cwd does not exist"}}return b.isDirectory()?{ok:!0,abs:c}:{ok:!1,reason:"cwd is not a directory"}}function o(a,b){return`"${a.toString(36)}-${Math.floor(b).toString(36)}"`}function p(a,b){let c=a.startsWith(".")?a.toLowerCase():f().extname(a).toLowerCase();return i.has(c)?b>h?"too-large":"image":j.has(c)?"binary":b>g?"too-large":"text"}function q(a){let b=0,c=Math.min(a.length,1e3);for(let d=0;d<c;d++){let c=a.charCodeAt(d);if(0===c)return!0;c<32&&9!==c&&10!==c&&13!==c&&b++}return c>0&&b/c>.1}async function r(a){let b,c=!1;try{(await (0,d.lstat)(a)).isSymbolicLink()&&(c=!0,b=await (0,d.readlink)(a))}catch{}let e=await (0,d.stat)(a);return{size:e.size,mtimeMs:e.mtimeMs,isDirectory:e.isDirectory(),isSymlink:c,symlinkTarget:b}}function s(a,b){return{ETag:a,"Last-Modified":new Date(b).toUTCString(),"Cache-Control":"no-cache, must-revalidate"}}function t(a,b){return!!a&&a.split(",").map(a=>a.trim().replace(/^W\//,"")).includes(b)}},7939:(a,b,c)=>{c.d(b,{$A:()=>M,A0:()=>X,An:()=>$,BF:()=>I,Ct:()=>Q,Eu:()=>H,Ex:()=>u,GB:()=>r,JE:()=>Z,JY:()=>L,Ki:()=>C,Kk:()=>R,Kv:()=>j,LN:()=>k,Mx:()=>D,O0:()=>B,Sr:()=>J,Tb:()=>s,Ux:()=>ab,Wd:()=>Y,aO:()=>m,at:()=>y,ec:()=>o,eg:()=>V,h9:()=>x,i4:()=>G,iK:()=>p,im:()=>T,iy:()=>P,jp:()=>t,lT:()=>z,lq:()=>F,ls:()=>K,mT:()=>w,n6:()=>n,oK:()=>O,oZ:()=>S,of:()=>E,po:()=>N,tP:()=>q,th:()=>v,v4:()=>l,vI:()=>W,yw:()=>U});var d=c(21820),e=c(33873),f=c(79748),g=c(29021),h=c(79646);let i=(0,d.homedir)(),j=(0,e.join)(i,".cockpit"),k=(0,e.join)(j,"projects"),l=(0,e.join)(j,"state.json"),m=(0,e.join)(j,"pinned-sessions.json"),n=(0,e.join)(j,"push-subscriptions.json"),o=(0,e.join)(j,"note.md"),p=(0,e.join)(j,"scheduled-tasks.json"),q=(0,e.join)(j,"settings.json"),r=(0,e.join)(j,"skills.json"),s=(0,e.join)(j,"review"),t=(0,e.join)(s,"_signal");function u(){try{(0,g.existsSync)(s)||(0,g.mkdirSync)(s,{recursive:!0}),(0,g.writeFileSync)(t,Date.now().toString())}catch{}}let v=(0,e.join)(i,".claude"),w=(0,e.join)(v,"projects"),x=(0,e.join)(i,".claude2"),y=(0,e.join)(x,"projects"),z=(0,e.join)(j,"deepseek"),A=(0,e.join)(z,"projects");function B(a){return a.replace(/[/.]/g,"-")}function C(a){return(0,e.join)(k,B(a))}function D(a){return(0,e.join)(C(a),"session.json")}function E(a){return(0,e.join)(C(a),"recent-files.json")}function F(a){return(0,e.join)(C(a),"expanded-paths.json")}function G(a){return(0,e.join)(C(a),"comments.json")}function H(a){return(0,e.join)(C(a),"services.json")}function I(a){return(0,e.join)(C(a),"note.md")}function J(a,b){return(0,e.join)(C(a),`terminal-history-${b}.jsonl`)}function K(a,b){return(0,e.join)(C(a),`terminal-output-${b}.txt`)}function L(a,b){let c=b?`terminal-env-${b}.json`:"terminal-env-global.json";return(0,e.join)(C(a),c)}function M(){return(0,e.join)(j,"terminal-aliases.json")}function N(){return(0,e.join)(j,"services.json")}function O(a){return(0,e.join)(C(a),"project-settings.json")}function P(a,b){return(0,e.join)(C(a),`terminal-bubble-order-${b}.json`)}function Q(a){return(0,e.join)(s,`${a}.json`)}function R(a,b){return(0,e.join)((0,e.join)(w,B(a)),`${b}.jsonl`)}function S(a,b){return(0,e.join)((0,e.join)(y,B(a)),`${b}.jsonl`)}function T(a,b){return(0,e.join)((0,e.join)(A,B(a)),`${b}.jsonl`)}function U(a,b){return(0,e.join)((0,e.join)(j,"ollama-sessions",B(a)),`${b}.jsonl`)}function V(a){let b=(0,e.join)(i,".codex","sessions");if(!(0,g.existsSync)(b))return null;try{let c=(0,h.execSync)(`find ${JSON.stringify(b)} -name "*${a}.jsonl" -type f 2>/dev/null`,{encoding:"utf8",timeout:3e3}).trim();if(c)return c.split("\n")[0]}catch{}return null}function W(a){let b=(0,e.join)(i,".kimi","sessions");if(!(0,g.existsSync)(b))return null;try{for(let c of(0,g.readdirSync)(b)){let d=(0,e.join)(b,c,a,"context.jsonl");if((0,g.existsSync)(d))return d}}catch{}return null}async function X(a){(0,g.existsSync)(a)||await (0,f.mkdir)(a,{recursive:!0})}async function Y(a){let b=(0,e.join)(a,"..");await X(b)}async function Z(a,b){try{let b=await (0,f.readFile)(a,"utf-8");return JSON.parse(b)}catch{return b}}async function $(a,b){await Y(a),await (0,f.writeFile)(a,JSON.stringify(b,null,2),"utf-8")}let _=globalThis,aa=_.__cockpitFileLocks??(_.__cockpitFileLocks=new Map);function ab(a,b){let c=(aa.get(a)??Promise.resolve()).then(b),d=c.then(()=>{},()=>{});return aa.set(a,d),d.then(()=>{aa.get(a)===d&&aa.delete(a)}),c}},25344:(a,b,c)=>{c.d(b,{BE:()=>l,IS:()=>v,KP:()=>r,ZT:()=>x,_0:()=>s,iU:()=>n,jH:()=>o,zC:()=>t});var d=c(31421),e=c(73024),f=c(76760),g=c.n(f),h=c(57975),i=c(28677);let j=(0,h.promisify)(d.exec),k=new Set([".git","node_modules"]),l=8e3;function m(a){let b=a.toLowerCase(),c=b.lastIndexOf(".");if(c<0)return!1;let d=b.slice(c);for(let a of(0,i.cn)())if(a.toLowerCase()===d)return!0;return!1}async function n(a){try{await j("git rev-parse --git-dir",{cwd:a})}catch{return null}let{stdout:b}=await j("git -c core.quotePath=false ls-files --cached --others --exclude-standard",{cwd:a,maxBuffer:0x3200000}),c=[];for(let a of b.split("\n")){let b=a.trim();if(b&&m(b.slice(b.lastIndexOf("/")+1))&&(c.push(b),c.length>=l))break}return c}async function o(a,b,c){let d;if(!(c.length>=l)){try{d=await e.promises.readdir(a,{withFileTypes:!0})}catch{return}for(let e of d){if(c.length>=l)return;if(k.has(e.name)||e.name.startsWith(".git"))continue;let d=g().join(a,e.name);e.isDirectory()?await o(d,b,c):e.isFile()&&m(e.name)&&c.push(g().relative(b,d))}}}let p=[".ts",".tsx",".js",".jsx",".mjs",".cjs"],q=[".js",".jsx",".mjs",".cjs"];function r(a,b,c){let d=g().relative(b,a);if(d.startsWith(".."))return null;for(let a of q)if(d.endsWith(a)){d=d.slice(0,-a.length);break}if(c.has(d))return d;for(let a of p){let b=d+a;if(c.has(b))return b}for(let a of p){let b=g().join(d,"index"+a);if(c.has(b))return b}return null}function s(a,b){return""===b||a===b||a.startsWith(b+"/")}async function t(a,b){let c=await u(a);if(0===c.length)return new Map;let d=[];try{let{stdout:b}=await j("git -c core.quotePath=false ls-files --cached --others --exclude-standard",{cwd:a,maxBuffer:0x3200000});d=b.split("\n").map(a=>a.trim()).filter(a=>a.endsWith("/package.json")&&!a.includes("node_modules/"))}catch{return new Map}let f=d.filter(a=>{let b=a.slice(0,-13);return c.some(a=>{var c;return c=b,RegExp("^"+a.replace(/\\/g,"/").replace(/[.+^${}()|[\]]/g,"\\$&").replace(/\*\*/g,"___DOUBLESTAR___").replace(/\*/g,"[^/]*").replace(/___DOUBLESTAR___/g,".*")+"$").test(c)})}),h=new Map;for(let c of f){let d;try{d=JSON.parse(await e.promises.readFile(g().join(a,c),"utf8"))}catch{continue}if("string"!=typeof d.name)continue;let f=g().dirname(c),i=function(a,b,c){let d,e=b=>{let d=b.replace(/^\.\//,"");return v(g().posix.join(a,d),c)},f=b.exports;if("string"==typeof f)d=f;else if(f&&"object"==typeof f&&f["."]){let a=f["."];"string"==typeof a?d=a:a&&"object"==typeof a&&(d=a.types??a.import??a.default??a.require)}if("string"==typeof d){let a=e(d);if(a)return a}if("string"==typeof b.main){let a=e(b.main);if(a)return a}for(let b of["src/index.ts","src/index.tsx","index.ts","index.tsx","src/index.js","index.js"])if(c.has(g().posix.join(a,b)))return g().posix.join(a,b);return null}(f,d,b);h.set(d.name,{name:d.name,dir:f,entryFile:i})}return h}async function u(a){try{var b=await e.promises.readFile(g().join(a,"pnpm-workspace.yaml"),"utf8");let c=[],d=!1;for(let a of b.split("\n")){let b=a.replace(/#.*$/,"");if(/^packages\s*:/.test(b)){d=!0;continue}if(!d)continue;let e=b.match(/^\s*-\s*['"]?([^'"#\s]+)['"]?\s*$/);e?c.push(e[1]):/^\S/.test(b)&&(d=!1)}return c}catch{}try{let b=JSON.parse(await e.promises.readFile(g().join(a,"package.json"),"utf8")),c=b?.workspaces;if(Array.isArray(c))return c.filter(a=>"string"==typeof a);if(c&&Array.isArray(c.packages))return c.packages.filter(a=>"string"==typeof a)}catch{}return[]}function v(a,b){if(a.startsWith("..")||a.startsWith("/"))return null;for(let b of q)if(a.endsWith(b)){a=a.slice(0,-b.length);break}if(b.has(a))return a;for(let c of p){let d=a+c;if(b.has(d))return d}for(let c of p){let d=g().posix.join(a,"index"+c);if(b.has(d))return d}return null}async function w(a,b){let c,d=new Map;try{let b=(await e.promises.readFile(a,"utf8")).replace(/^\s*\/\/.*$/gm,"");c=JSON.parse(b)}catch{return d}let f=c?.compilerOptions?.baseUrl??".",h=c?.compilerOptions?.paths??{},i=g().resolve(g().dirname(a),f),j=g().relative(b,i)||".";for(let[a,b]of Object.entries(h)){if(!Array.isArray(b)||0===b.length)continue;let c=a.replace(/\/\*$/,""),e=b[0].replace(/\/\*$/,"");d.set(c,g().join(j,e))}return d}async function x(a){let b=[],c=[];try{let{stdout:b}=await j("git -c core.quotePath=false ls-files --cached --others --exclude-standard",{cwd:a,maxBuffer:0x3200000});c=b.split("\n").map(a=>a.trim()).filter(a=>/(^|\/)tsconfig[^/]*\.json$/.test(a)&&!a.includes("node_modules/"))}catch{try{await e.promises.access(g().join(a,"tsconfig.json")),c=["tsconfig.json"]}catch{}}for(let d of c){let c=await w(g().join(a,d),a);if(0===c.size)continue;let e=g().dirname(d);b.push({scope:"."===e?"":e,aliases:c,sortedAliases:y(c)})}let d=b.find(a=>""===a.scope);return d||(d={scope:"",aliases:new Map,sortedAliases:[]},b.push(d)),d.aliases.has("@")||(d.aliases.set("@","./src"),d.sortedAliases=y(d.aliases)),b.sort((a,b)=>b.scope.length-a.scope.length)}function y(a){return[...a.entries()].sort(([a],[b])=>b.length-a.length)}},27485:(a,b,c)=>{c.d(b,{_:()=>e});let d=new Set(["function","class","method"]);function e(a){return d.has(a.kind)}},28677:(a,b,c)=>{c.d(b,{Bu:()=>f,cn:()=>g,ik:()=>e});let d=new Map;function e(a){d.set(a.grammarId,a)}function f(a){let b=d.get(a);if(!b)throw Error(`[codeMap] no handler registered for grammar '${a}' — did the handler module get imported (handlers/index.ts barrel)?`);return b}function g(){let a=new Set;for(let b of d.values())for(let c of b.extensions)a.add(c.toLowerCase());return[...a]}},33265:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{E:()=>G,J:()=>M,Mv:()=>L,Xn:()=>K,bQ:()=>I,cl:()=>w,ih:()=>t,s7:()=>F,u$:()=>v,xl:()=>B});var e=c(73024),f=c(76760),g=c.n(f),h=c(31421),i=c(57975),j=c(87956),k=c(86236),l=c(25344),m=c(27485),n=c(37765),o=a([j]);async function p(a,b,c){let d=Array(a.length),e=0;async function f(){for(;e<a.length;){let b=e++;d[b]=await c(a[b])}}return await Promise.all(Array.from({length:Math.min(b,a.length)},f)),d}j=(o.then?(await o)():o)[0];let N=/(['"`])([A-Za-z][A-Za-z0-9_.-]{2,63})\1/g;async function q(a,b){let c,d,f,g=(0,j.M)(b);if(!g)return null;try{[c,d]=await Promise.all([e.promises.readFile(a,"utf8"),e.promises.stat(a).then(a=>a.mtimeMs)])}catch{return null}if(c.length>1e6)return null;let h=await (0,j.b)(g);try{f=h.parse(c)}catch(a){return console.error("[codeIndex] parse failed for",b,a),null}if(!f)return null;try{let a,e=(0,n.Bu)(g),h=e.extractSymbols(f.rootNode,c),i=(a=[],!function c(d){for(let e of d)a.push({filePath:b,qualifiedName:e.qualifiedName,name:e.name,kind:e.kind,startLine:e.startLine,endLine:e.endLine,params:e.params}),c(e.children)}(h),a),{specs:j,bindings:k}=e.extractImports(f.rootNode),l=e.extractCallSites(f.rootNode,i),m=function(a,b){let c,d=[],e=new Set,f=[0];for(let b=0;b<a.length;b++)10===a.charCodeAt(b)&&f.push(b+1);for(N.lastIndex=0;null!==(c=N.exec(a))&&!(d.length>=500);){let a=c[2],g=function(a){let b=0,c=f.length-1;for(;b<c;){let d=b+c+1>>>1;f[d]<=a?b=d:c=d-1}return b+1}(c.index),h=`${a}\0${g}`;if(e.has(h))continue;e.add(h);let i=r(b,g);d.push({value:a,line:g,...i?{enclosingQname:i.qualifiedName}:{}})}return d}(c,i);return{path:b,language:g,mtime:d,symbolsTree:h,flatSymbols:i,importBindings:k,importSpecifiers:j,rawCalls:l,literals:m}}finally{f.delete()}}function r(a,b){let c=null;for(let d of a)d.startLine<=b&&b<=d.endLine&&(!c||d.endLine-d.startLine<c.endLine-c.startLine)&&(c=d);return c}async function s(a){let b=Date.now(),c=await (0,l.iU)(a);c||(c=[],await (0,l.jH)(a,a,c));let d=c.length>l.BE;d&&(c=c.slice(0,l.BE));let e=new Set(c),f=await (0,l.ZT)(a),h=await (0,l.zC)(a,e),i=new Map;for(let b of k.I){let c=(0,n.Bu)(b);i.set(b,await c.buildProjectContext(a,e))}let j=(await p(c,50,b=>q(g().join(a,b),b))).filter(a=>null!==a),m=new Map;for(let a of j){let b=(0,n.Bu)(a.language),c=i.get(a.language),d=new Map,f=new Set;for(let g of a.importSpecifiers){if(d.has(g))continue;let h=b.resolveSpecifier(g,a.path,c,e);h&&h!==a.path&&(d.set(g,h),f.add(h))}let g=new Map,h=new Map;for(let b of a.flatSymbols){h.set(b.qualifiedName,b);let a=g.get(b.name);a?a.push(b):g.set(b.name,[b])}let j=new Map,k=new Map;for(let b of a.importBindings)b.isReexport?k.set(b.localName,b):j.set(b.localName,b);m.set(a.path,{path:a.path,language:a.language,mtime:a.mtime,symbolsTree:a.symbolsTree,flatSymbols:a.flatSymbols,literals:a.literals,importedFiles:f,importedBy:new Set,importBindings:a.importBindings,resolvedImports:d,intraCalls:[],outgoingCalls:[],incomingCalls:[],externalCalls:[],methodCalls:[],symbolsByName:g,symbolsByQname:h,bindingsByLocalName:j,reexportsByLocalName:k})}for(let a of m.values())for(let b of a.importedFiles){let c=m.get(b);c&&c.importedBy.add(a.path)}for(let a of j){let b=m.get(a.path),c=(0,n.Bu)(a.language),d=i.get(a.language),e=new Map,f=new Map,g=new Map,h=new Map;for(let i of a.rawCalls){let a=r(b.flatSymbols,i.line);if(a){for(let j of c.resolveCall(i,a,b,m,d))if("symbol"===j.kind)if(j.addr.filePath===b.path){let c=`${a.qualifiedName}${j.addr.qualifiedName}`,d=e.get(c);if(d)d.lines.push(i.line);else{let d={from:a.qualifiedName,to:j.addr.qualifiedName,lines:[i.line]};e.set(c,d),b.intraCalls.push(d)}}else{let c=`${a.qualifiedName}${j.addr.filePath}${j.addr.qualifiedName}`,d=f.get(c);if(d)d.lines.push(i.line);else{let d={from:a.qualifiedName,to:{filePath:j.addr.filePath,qualifiedName:j.addr.qualifiedName},lines:[i.line]};f.set(c,d),b.outgoingCalls.push(d)}}else if("external"===j.kind){let c=`${a.qualifiedName}${j.packageSpec}${j.name}`,d=g.get(c);if(d)d.lines.push(i.line);else{let d={from:a.qualifiedName,packageSpec:j.packageSpec,importedName:j.name,lines:[i.line]};g.set(c,d),b.externalCalls.push(d)}}else if("method-unresolved"===j.kind){let c=b.bindingsByLocalName.get(j.receiverName),d=c?b.resolvedImports.get(c.specifier)??"":"",e=`${a.qualifiedName}${j.receiverName}${j.methodName}`,f=h.get(e);if(f)f.lines.push(i.line);else{let c={from:a.qualifiedName,receiverName:j.receiverName,methodName:j.methodName,receiverFilePath:d,lines:[i.line]};h.set(e,c),b.methodCalls.push(c)}}}}for(let a of b.intraCalls)a.lines.sort((a,b)=>a-b);for(let a of b.outgoingCalls)a.lines.sort((a,b)=>a-b);for(let a of b.externalCalls)a.lines.sort((a,b)=>a-b);for(let a of b.methodCalls)a.lines.sort((a,b)=>a-b)}for(let a of m.values())for(let b of a.outgoingCalls){let c=m.get(b.to.filePath);c&&c.incomingCalls.push({from:{filePath:a.path,qualifiedName:b.from},to:b.to.qualifiedName,lines:b.lines})}return{cwd:a,files:m,truncated:d,fileCountCap:d?l.BE:void 0,tsconfigs:f,workspaces:h,projectContexts:i,fileSet:e,generatedAt:Date.now(),buildMs:Date.now()-b}}let O=new Map,P=new Map,Q=new Set,R=new Set,S=null;function t(a){if(S=a,a)for(let b of R)a(b,()=>Q.add(b))}async function u(a,b){let c=Array.from(b.files.keys()),d=0,e=async()=>{for(;d<c.length;){let e=d++;try{await B(a,c[e],b)}catch{}}};await Promise.all(Array.from({length:Math.min(8,c.length)},e))}async function v(a,b={}){!R.has(a)&&(R.add(a),S&&S(a,()=>Q.add(a))),b.forceRefresh&&(O.delete(a),Q.delete(a));let d=O.get(a);if(d){if(Q.has(a)){Q.delete(a);try{await u(a,d)}catch{}}return d}let e=P.get(a);if(e)return e;let f=s(a).then(b=>(O.set(a,b),P.delete(a),Q.delete(a),Promise.all([c.e(4008),c.e(2540)]).then(c.bind(c,92540)).then(c=>c.precomputeAnalytics(a,b)).catch(a=>{console.error("[codeIndex] analytics precompute failed:",a)}),b));return P.set(a,f),f}function w(a){if(Promise.all([c.e(4008),c.e(2540)]).then(c.bind(c,92540)).then(b=>b.invalidateAnalytics(a)).catch(()=>{}),!a){O.clear(),P.clear(),Q.clear();return}O.delete(a),P.delete(a),Q.delete(a)}let T=(0,i.promisify)(h.exec);async function x(a,b){let c=!0;try{await T("git rev-parse --git-dir",{cwd:a})}catch{c=!1}if(!c)return!(b.startsWith(".git")||b.startsWith("node_modules/")||b.includes("/node_modules/"));try{return await T(`git -c core.quotePath=false ls-files --cached --others --exclude-standard --error-unmatch -- '${b.replace(/'/g,"'\\''")}'`,{cwd:a}),!0}catch{return!1}}function y(a){Promise.all([c.e(4008),c.e(2540)]).then(c.bind(c,92540)).then(b=>b.invalidateAnalytics(a)).catch(()=>{})}async function z(a,b,c){if(!(0,j.M)(b)||c.files.size>=l.BE||!await x(a,b))return!1;let d=await q(g().join(a,b),b);return!!d&&(c.fileSet.add(d.path),await A(d,null,c),y(a),!0)}async function A(a,b,c){let d=(0,n.Bu)(a.language),e=c.projectContexts.get(a.language),f=new Map,g=new Set;for(let b of a.importSpecifiers){if(f.has(b))continue;let h=d.resolveSpecifier(b,a.path,e,c.fileSet);h&&h!==a.path&&(f.set(b,h),g.add(h))}let h=new Map,i=new Map;for(let b of a.flatSymbols){i.set(b.qualifiedName,b);let a=h.get(b.name);a?a.push(b):h.set(b.name,[b])}let j=new Map,k=new Map;for(let b of a.importBindings)b.isReexport?k.set(b.localName,b):j.set(b.localName,b);let l={path:a.path,language:a.language,mtime:a.mtime,symbolsTree:a.symbolsTree,flatSymbols:a.flatSymbols,literals:a.literals,importedFiles:g,importedBy:b?.importedBy??new Set,importBindings:a.importBindings,resolvedImports:f,intraCalls:[],outgoingCalls:[],incomingCalls:b?.incomingCalls??[],externalCalls:[],methodCalls:[],symbolsByName:h,symbolsByQname:i,bindingsByLocalName:j,reexportsByLocalName:k},m=new Map,o=new Map,p=new Map,q=new Map;for(let b of(c.files.set(a.path,l),a.rawCalls)){let a=r(l.flatSymbols,b.line);if(a){for(let f of d.resolveCall(b,a,l,c.files,e))if("symbol"===f.kind)if(f.addr.filePath===l.path){let c=`${a.qualifiedName}${f.addr.qualifiedName}`,d=m.get(c);if(d)d.lines.push(b.line);else{let d={from:a.qualifiedName,to:f.addr.qualifiedName,lines:[b.line]};m.set(c,d),l.intraCalls.push(d)}}else{let c=`${a.qualifiedName}${f.addr.filePath}${f.addr.qualifiedName}`,d=o.get(c);if(d)d.lines.push(b.line);else{let d={from:a.qualifiedName,to:{filePath:f.addr.filePath,qualifiedName:f.addr.qualifiedName},lines:[b.line]};o.set(c,d),l.outgoingCalls.push(d)}}else if("external"===f.kind){let c=`${a.qualifiedName}${f.packageSpec}${f.name}`,d=p.get(c);if(d)d.lines.push(b.line);else{let d={from:a.qualifiedName,packageSpec:f.packageSpec,importedName:f.name,lines:[b.line]};p.set(c,d),l.externalCalls.push(d)}}else if("method-unresolved"===f.kind){let c=l.bindingsByLocalName.get(f.receiverName),d=c?l.resolvedImports.get(c.specifier)??"":"",e=`${a.qualifiedName}${f.receiverName}${f.methodName}`,g=q.get(e);if(g)g.lines.push(b.line);else{let c={from:a.qualifiedName,receiverName:f.receiverName,methodName:f.methodName,receiverFilePath:d,lines:[b.line]};q.set(e,c),l.methodCalls.push(c)}}}}for(let a of l.intraCalls)a.lines.sort((a,b)=>a-b);for(let a of l.outgoingCalls)a.lines.sort((a,b)=>a-b);for(let a of l.externalCalls)a.lines.sort((a,b)=>a-b);for(let a of l.methodCalls)a.lines.sort((a,b)=>a-b);return l}async function B(a,b,c){let d,f=c.files.get(b);if(!f)return z(a,b,c);try{d=(await e.promises.stat(g().join(a,b))).mtimeMs}catch{return!1}if(d===f.mtime)return!1;let h=await q(g().join(a,b),b);return!!h&&(await A(h,f,c),y(a),!0)}function C(a){return{filePath:a.filePath,qualifiedName:a.qualifiedName,name:a.name,kind:a.kind,startLine:a.startLine,endLine:a.endLine,params:a.params}}function D(a){let b=a.indexOf(">");return b>=0?a.slice(0,b):a}function E(a){if(a.length<2)return a;let b=[a[0]];for(let c=1;c<a.length;c++)a[c]!==a[c-1]&&b.push(a[c]);return b}function F(a,b){let c=a.files.get(b);if(!c)return null;let d=c.flatSymbols.filter(a=>!a.qualifiedName.includes(">")).map(C).sort((a,b)=>a.startLine-b.startLine),e=new Set(d.map(a=>a.qualifiedName)),f=new Map,g=[];for(let a of c.intraCalls){let b=D(a.from),c=D(a.to);if(b===c||!e.has(b)||!e.has(c))continue;let d=`${b}|${c}`,h=f.get(d);if(h)for(let b of a.lines)h.lines.push(b);else{let e={from:b,to:c,lines:a.lines.slice()};f.set(d,e),g.push(e)}}for(let a of g)a.lines.sort((a,b)=>a-b),a.lines=E(a.lines);let h=[],i=new Map;for(let b of c.outgoingCalls){let d=D(b.from);if(!e.has(d)||b.to.filePath===c.path)continue;let f=a.files.get(b.to.filePath);if(!f)continue;let g=f.symbolsByQname.get(b.to.qualifiedName);if(!g||!(0,m._)(g))continue;let j=`${g.filePath}|${g.qualifiedName}|${d}`,k=i.get(j);if(k)for(let a of b.lines)k.lines.push(a);else{let a={external:C(g),focalQname:d,lines:b.lines.slice()};i.set(j,a),h.push(a)}}let j=[],k=new Map;for(let b of c.incomingCalls){let d=D(b.to);if(!e.has(d)||b.from.filePath===c.path)continue;let f=a.files.get(b.from.filePath);if(!f)continue;let g=f.symbolsByQname.get(b.from.qualifiedName);if(!g||!(0,m._)(g))continue;let h=`${g.filePath}|${g.qualifiedName}|${d}`,i=k.get(h);if(i)for(let a of b.lines)i.lines.push(a);else{let a={external:C(g),focalQname:d,lines:b.lines.slice()};k.set(h,a),j.push(a)}}for(let a of h)a.lines.sort((a,b)=>a-b),a.lines=E(a.lines);for(let a of j)a.lines.sort((a,b)=>a-b),a.lines=E(a.lines);let l=[],n=new Map;for(let a of c.externalCalls){let b=D(a.from);if(!e.has(b))continue;let c=`${b}|${a.packageSpec}|${a.importedName}`,d=n.get(c);if(d)for(let b of a.lines)d.lines.push(b);else{let d={external:{name:a.importedName,packageSpec:a.packageSpec},focalQname:b,lines:a.lines.slice()};n.set(c,d),l.push(d)}}for(let a of l)a.lines.sort((a,b)=>a-b),a.lines=E(a.lines);let o=[],p=new Map;for(let a of c.methodCalls){let b=D(a.from);if(!e.has(b))continue;let c=`${b}|${a.receiverName}|${a.methodName}`,d=p.get(c);if(d)for(let b of a.lines)d.lines.push(b);else{let d={focalQname:b,receiverName:a.receiverName,methodName:a.methodName,receiverFilePath:a.receiverFilePath,lines:a.lines.slice()};p.set(c,d),o.push(d)}}for(let a of o)a.lines.sort((a,b)=>a-b),a.lines=E(a.lines);let q=(a,b)=>a.external.filePath.localeCompare(b.external.filePath)||a.external.qualifiedName.localeCompare(b.external.qualifiedName);return j.sort(q),h.sort(q),l.sort((a,b)=>a.external.packageSpec.localeCompare(b.external.packageSpec)||a.external.name.localeCompare(b.external.name)),o.sort((a,b)=>a.receiverName.localeCompare(b.receiverName)||a.methodName.localeCompare(b.methodName)),{filePath:c.path,language:c.language,fileCount:a.files.size,mtimeMs:c.mtime,functions:d,intraCalls:g,externalCalls:l,methodCalls:o,upstreamCalls:j,downstreamCalls:h}}function G(a,b){let c=a.files.get(b);return c?{filePath:c.path,language:c.language,symbols:function a(b){let c=[];for(let d of b)"unknown"!==d.kind&&c.push({...d,children:a(d.children)});return c}(c.symbolsTree)}:null}function H(a){let b="";for(let c=0;c<a.length;c++){let d=a.charCodeAt(c);95!==d&&45!==d&&46!==d&&32!==d&&(b+=d>=65&&d<=90?String.fromCharCode(d+32):a[c])}return b}function I(a,b,c,d={}){let e=b.trim();if(!e)return d.includeLiterals?{files:[],symbols:[],literals:[]}:{files:[],symbols:[]};let f=H(e),g=[];for(let b of a.files.values()){if(g.length>=c)break;H(b.path).includes(f)&&g.push({type:"file",label:function(a){let b=a.lastIndexOf("/");return b>=0?a.slice(b+1):a}(b.path),hint:b.path,target:{kind:"file",filePath:b.path}})}let h=[];for(let b of a.files.values()){let a=!1;if(!function a(b,c){for(let d of b)if(c(d)||a(d.children,c))return!0;return!1}(b.symbolsTree,d=>h.length>=c?(a=!0,!0):"unknown"!==d.kind&&(H(d.name).includes(f)&&h.push({type:"symbol",label:d.name,hint:`${d.kind} \xb7 ${b.path}`,target:{kind:"symbol",filePath:b.path,line:d.startLine,symbolName:d.name,symbolKind:d.kind,qualifiedName:d.qualifiedName}}),!1)),a)break}if(!d.includeLiterals)return{files:g,symbols:h};let i=[];a:for(let b of a.files.values())for(let a of b.literals){if(i.length>=c)break a;H(a.value).includes(f)&&i.push({type:"literal",value:a.value,filePath:b.path,line:a.line,...a.enclosingQname?{enclosingSymbol:a.enclosingQname}:{}})}return{files:g,symbols:h,literals:i}}function J(a,b,c){if(c){let d=a.files.get(c);return d&&d.symbolsByQname.has(b)?[d]:[]}let d=[];for(let c of a.files.values())c.symbolsByQname.has(b)&&d.push(c);return d}function K(a,b,c){let d=J(a,b,c);if(0===d.length)return{qname:b,target:null,callers:[]};let e=[],f=new Map;for(let c of d){for(let a of c.intraCalls){if(a.to!==b)continue;let d=c.symbolsByQname.get(a.from);if(!d)continue;let g=`${c.path}|${a.from}`,h=f.get(g);if(h)for(let b of a.lines)h.callLines.push(b);else{let b={caller:C(d),callLines:a.lines.slice()};f.set(g,b),e.push(b)}}for(let d of c.incomingCalls){if(d.to!==b)continue;let c=a.files.get(d.from.filePath),g=c?.symbolsByQname.get(d.from.qualifiedName);if(!g)continue;let h=`${d.from.filePath}|${d.from.qualifiedName}`,i=f.get(h);if(i)for(let a of d.lines)i.callLines.push(a);else{let a={caller:C(g),callLines:d.lines.slice()};f.set(h,a),e.push(a)}}}for(let a of e)a.callLines.sort((a,b)=>a-b),a.callLines=E(a.callLines);e.sort((a,b)=>a.caller.filePath.localeCompare(b.caller.filePath)||a.caller.qualifiedName.localeCompare(b.caller.qualifiedName));let g=C(d[0].symbolsByQname.get(b)),h=d.length>1?d.map(a=>a.path):void 0;return{qname:b,target:g,callers:e,ambiguousIn:h}}function L(a,b,c){let d=J(a,b,c);if(0===d.length)return{qname:b,source:null,callees:[]};let e=[],f=new Map;for(let c of d){for(let a of c.intraCalls){if(a.from!==b)continue;let d=c.symbolsByQname.get(a.to);if(!d)continue;let g=`${c.path}|${a.to}`,h=f.get(g);if(h)for(let b of a.lines)h.callLines.push(b);else{let b={callee:C(d),callLines:a.lines.slice()};f.set(g,b),e.push(b)}}for(let d of c.outgoingCalls){if(d.from!==b)continue;let c=a.files.get(d.to.filePath),g=c?.symbolsByQname.get(d.to.qualifiedName);if(!g)continue;let h=`${d.to.filePath}|${d.to.qualifiedName}`,i=f.get(h);if(i)for(let a of d.lines)i.callLines.push(a);else{let a={callee:C(g),callLines:d.lines.slice()};f.set(h,a),e.push(a)}}}for(let a of e)a.callLines.sort((a,b)=>a-b),a.callLines=E(a.callLines);e.sort((a,b)=>a.callee.filePath.localeCompare(b.callee.filePath)||a.callee.qualifiedName.localeCompare(b.callee.qualifiedName));let g=C(d[0].symbolsByQname.get(b)),h=d.length>1?d.map(a=>a.path):void 0;return{qname:b,source:g,callees:e,ambiguousIn:h}}function M(a,b,c,d){let e=J(a,b,d);if(0===e.length)return{qname:b,target:null,nodes:[],truncated:!1};let f=Math.min(Math.max(c,1),5),g=C(e[0].symbolsByQname.get(b)),h=e.length>1?e.map(a=>a.path):void 0,i=e.map(a=>({filePath:a.path,qname:b})),j=new Set(i.map(a=>`${a.filePath}|${a.qname}`)),k=i.map(b=>{let c=a.files.get(b.filePath).symbolsByQname.get(b.qname);return{symbol:C(c),depth:0}}),l=i.slice(),m=!1;for(let b=1;b<=f;b++){let c=[];for(let d of l){let e=a.files.get(d.filePath);if(e){for(let a of e.intraCalls){if(a.to!==d.qname)continue;let f=e.symbolsByQname.get(a.from);if(!f)continue;let g=`${e.path}|${a.from}`;if(!j.has(g)&&(j.add(g),k.push({symbol:C(f),depth:b}),c.push({filePath:e.path,qname:a.from}),k.length>=500)){m=!0;break}}if(m)break;for(let f of e.incomingCalls){if(f.to!==d.qname)continue;let e=a.files.get(f.from.filePath),g=e?.symbolsByQname.get(f.from.qualifiedName);if(!g)continue;let h=`${f.from.filePath}|${f.from.qualifiedName}`;if(!j.has(h)&&(j.add(h),k.push({symbol:C(g),depth:b}),c.push({filePath:f.from.filePath,qname:f.from.qualifiedName}),k.length>=500)){m=!0;break}}if(m)break}}if(m||0===c.length)break;l=c}return k.sort((a,b)=>a.depth-b.depth||a.symbol.filePath.localeCompare(b.symbol.filePath)||a.symbol.qualifiedName.localeCompare(b.symbol.qualifiedName)),{qname:b,target:g,nodes:k,truncated:m,ambiguousIn:h}}d()}catch(a){d(a)}})},37765:(a,b,c)=>{c.d(b,{Bu:()=>d.Bu});var d=c(28677),e=c(76760),f=c.n(e);function g(a){let b=0xdeadbeef,c=0x41c6ce57;for(let d=0;d<a.length;d++){let e=a.charCodeAt(d);b=Math.imul(b^e,0x9e3779b1),c=Math.imul(c^e,0x5f356495)}return b=Math.imul(b^b>>>16,0x85ebca6b)^Math.imul(c^c>>>13,0xc2b2ae35),(0x100000000*(2097151&(c=Math.imul(c^c>>>16,0x85ebca6b)^Math.imul(b^b>>>13,0xc2b2ae35)))+(b>>>0)>>>0).toString(16)}function h(a){return a.replace(/\s+/g," ").trim()}function i(a,b){return a?`${a}>${b}`:b}function j(a){let b=a.childForFieldName("name");if(b)return b.text;for(let b=0;b<a.namedChildCount;b++){let c=a.namedChild(b);if(c&&("identifier"===c.type||"type_identifier"===c.type||"property_identifier"===c.type))return c.text}return"<anonymous>"}function k(a,b,c,d,e=[],f){return{qualifiedName:i(d,b),name:b,kind:c,startLine:a.startPosition.row+1,endLine:a.endPosition.row+1,contentHash:g(h(a.text)),children:e,params:f}}function l(a){let b=a.childForFieldName("parameter");if(b)return[b.text];let c=a.childForFieldName("parameters");if(!c)return;let d=[];for(let a=0;a<c.namedChildCount;a++){let b=c.namedChild(a);b&&d.push(function a(b){switch(b.type){case"required_parameter":case"optional_parameter":{let c=b.childForFieldName("pattern");return c?a(c):b.text}case"assignment_pattern":{let c=b.childForFieldName("left");return c?a(c):b.text}case"default_parameter":case"typed_default_parameter":{let a=b.childForFieldName("name");return a?a.text:b.text}case"typed_parameter":for(let a=0;a<b.namedChildCount;a++){let c=b.namedChild(a);if(c?.type==="identifier")return c.text}return b.text;default:return b.text}}(b))}return d}function m(a,b){let c=a.text.split("\n"),d=c.length;if(0===d)return[];let e=new Uint8Array(d+2);for(let a of b){let b=Math.max(1,a.startLine),c=Math.min(d,a.endLine);for(let a=b;a<=c;a++)e[a]=1}let f=[],i=(a,b)=>{let d=!1;for(let e=a;e<=b;e++){let a=c[e-1];if(a&&a.trim().length>0){d=!0;break}}if(!d)return;let e=c.slice(a-1,b).join("\n");f.push({qualifiedName:`__code_${a}_${b}__`,name:"code",kind:"unknown",startLine:a,endLine:b,contentHash:g(h(e)),children:[]})},j=-1;for(let a=1;a<=d;a++)e[a]?j>=0&&(i(j,a-1),j=-1):j<0&&(j=a);return j>=0&&i(j,d),f}function n(a){let b=[],c=function(a){let b=[],c=-1,d=-1;for(let e=0;e<a.namedChildCount;e++){let f=a.namedChild(e);if(f){if("import_statement"===f.type||"export_statement"===f.type&&null!==f.childForFieldName("source")||"import_from_statement"===f.type||"future_import_statement"===f.type)b.push(f),c<0&&(c=f.startPosition.row+1),d=f.endPosition.row+1;else if(c>=0)break}}return c<0?null:{qualifiedName:"__imports__",name:"imports",kind:"unknown",startLine:c,endLine:d,contentHash:g(h(b.map(a=>a.text).join("\n"))),children:[]}}(a);c&&b.push(c);for(let c=0;c<a.namedChildCount;c++){let d=a.namedChild(c);d&&b.push(...function a(b,c,d=!1){switch(b.type){case"export_statement":case"export_default_declaration":{let d=[];for(let e=0;e<b.namedChildCount;e++){let f=b.namedChild(e);f&&d.push(...a(f,c,!0))}return d}case"function_declaration":case"generator_function_declaration":case"function_definition":return[k(b,j(b),"function",c,[],l(b))];case"class_declaration":case"abstract_class_declaration":{let a=j(b),d=i(c,a),e=function(a,b){if(!a)return[];let c=[];for(let d=0;d<a.namedChildCount;d++){let e=a.namedChild(d);if(e){if("method_definition"===e.type)c.push(k(e,j(e),"method",b,[],l(e)));else if("public_field_definition"===e.type){let a=e.childForFieldName("value");a&&("arrow_function"===a.type||"function_expression"===a.type)&&c.push(k(e,j(e),"method",b,[],l(a)))}}}return c}(b.childForFieldName("body"),d);return[k(b,a,"class",c,e)]}case"interface_declaration":return[k(b,j(b),"interface",c)];case"type_alias_declaration":return[k(b,j(b),"type",c)];case"enum_declaration":return[k(b,j(b),"enum",c)];case"lexical_declaration":case"variable_declaration":return function(a,b){let c=[];for(let d=0;d<a.namedChildCount;d++){let e=a.namedChild(d);if(!e||"variable_declarator"!==e.type)continue;let f=e.childForFieldName("name"),g=e.childForFieldName("value");if(!f)continue;let h=f.text,i=g&&("arrow_function"===g.type||"function_expression"===g.type),m=i&&g?l(g):void 0;if(c.push(k(a,h,i?"function":"const",b,[],m)),g&&"object"===g.type&&!i){let a=b?`${b}>${h}`:h;for(let b=0;b<g.namedChildCount;b++){let d=g.namedChild(b);if(d){if("pair"===d.type){let b=d.childForFieldName("key"),e=d.childForFieldName("value");if(!b||!e||"property_identifier"!==b.type&&"identifier"!==b.type||"arrow_function"!==e.type&&"function_expression"!==e.type)continue;c.push(k(d,b.text,"method",a,[],l(e)))}else if("method_definition"===d.type){let b=j(d);b&&c.push(k(d,b,"method",a,[],l(d)))}}}}}return c}(b,c);case"class_definition":{let a=j(b),d=i(c,a),e=function a(b,c){if(!b)return[];let d=[];for(let e=0;e<b.namedChildCount;e++){let f=b.namedChild(e);if(f){if("function_definition"===f.type)d.push(k(f,j(f),"method",c,[],l(f)));else if("decorated_definition"===f.type){let b=f.childForFieldName("definition");if(b?.type==="function_definition")d.push({...k(b,j(b),"method",c,[],l(b)),startLine:f.startPosition.row+1,contentHash:g(h(f.text))});else if(b?.type==="class_definition"){let e=j(b),l=i(c,e),m=a(b.childForFieldName("body"),l);d.push({...k(b,e,"class",c,m),startLine:f.startPosition.row+1,contentHash:g(h(f.text))})}}else if("class_definition"===f.type){let b=j(f),e=i(c,b),g=a(f.childForFieldName("body"),e);d.push(k(f,b,"class",c,g))}}}return d}(b.childForFieldName("body"),d);return[k(b,a,"class",c,e)]}case"decorated_definition":{let d=b.childForFieldName("definition");if(!d)return[];return a(d,c,!1).map(a=>({...a,startLine:b.startPosition.row+1,contentHash:g(h(b.text))}))}case"expression_statement":{let a=[];for(let d=0;d<b.namedChildCount;d++){let e=b.namedChild(d);if(e?.type==="assignment"){let d=function(a,b,c){let d=b.childForFieldName("left");if(!d||"identifier"!==d.type)return null;let e=d.text;return{qualifiedName:i(c,e),name:e,kind:"const",startLine:a.startPosition.row+1,endLine:a.endPosition.row+1,contentHash:g(h(a.text)),children:[]}}(b,e,c);d&&a.push(d)}}return a.push(...function(a,b){let c=null;for(let b=0;b<a.namedChildCount;b++){let d=a.namedChild(b);if(d){if("call_expression"===d.type){c=d;break}if("await_expression"===d.type){for(let a=0;a<d.namedChildCount;a++){let b=d.namedChild(a);if(b?.type==="call_expression"){c=b;break}}break}}}if(!c)return[];let d=c.childForFieldName("function"),e=c.childForFieldName("arguments");if(!d||!e)return[];let f=null,g=[];for(let a=0;a<e.namedChildCount;a++){let b=e.namedChild(a);if(b){if(null===f&&("string"===b.type||"template_string"===b.type)){let a=b.text;f=a.length>=2&&/^["'`]/.test(a)?a.slice(1,-1):a}("arrow_function"===b.type||"function_expression"===b.type)&&g.push(b)}}if(0===g.length||!f)return[];let h=function a(b){if("identifier"===b.type)return b.text;if("member_expression"===b.type){let a=b.childForFieldName("property");return a?.text??""}if("call_expression"===b.type){let c=b.childForFieldName("function");return c?a(c):""}return""}(d),i=h?`${h} ${f}`:f;return g.map((a,c)=>k(a,g.length>1?`${i} #${c+1}`:i,"function",b,[],l(a)))}(b,c)),a}default:return[]}}(d,void 0,!1))}return b.push(...m(a,b)),b}function o(a){let b=[];return!function a(c){if("call_expression"===c.type||"call"===c.type){let a=c.childForFieldName("function"),d=function a(b){if(!b)return null;if("identifier"===b.type||"shorthand_property_identifier"===b.type)return b.text;if("member_expression"===b.type){let a=b.childForFieldName("property");return a?.text??null}if("attribute"===b.type){let a=b.childForFieldName("attribute");return a?.text??null}return"call_expression"===b.type||"call"===b.type?a(b.childForFieldName("function")):null}(a);if(d){let e=function(a){if(!a||"member_expression"!==a.type&&"attribute"!==a.type)return;let b=a;for(;b;){if("identifier"===b.type)return b.text;if("this"===b.type||"super"===b.type)break;if("member_expression"===b.type||"attribute"===b.type){b=b.childForFieldName("object");continue}break}}(a);b.push({calleeName:d,line:c.startPosition.row+1,...e?{receiverName:e}:{}})}}else if("jsx_opening_element"===c.type||"jsx_self_closing_element"===c.type){let a=function a(b){return b?"identifier"===b.type?/^[A-Z]/.test(b.text)?b.text:null:"member_expression"===b.type||"jsx_member_expression"===b.type?a(b.childForFieldName("object")??b.namedChild(0)):null:null}(c.childForFieldName("name"));a&&b.push({calleeName:a,line:c.startPosition.row+1})}for(let b=0;b<c.childCount;b++){let d=c.child(b);d&&a(d)}}(a),b}function p(a){let b=[];for(let c=0;c<a.namedChildCount;c++){let d=a.namedChild(c);if(d)if("import_statement"===d.type){let a=d.childForFieldName("source");a?function(a,b,c){let d=q(b.text),e=null;for(let b=0;b<a.namedChildCount;b++){let c=a.namedChild(b);if(c?.type==="import_clause"){e=c;break}}if(e)for(let a=0;a<e.namedChildCount;a++){let b=e.namedChild(a);if(b){if("identifier"===b.type)c.push({specifier:d,importedName:"default",localName:b.text});else if("namespace_import"===b.type){let a=function(a,b){for(let c=0;c<a.namedChildCount;c++){let d=a.namedChild(c);if(d?.type===b)return d}return null}(b,"identifier");a&&c.push({specifier:d,importedName:"*",localName:a.text})}else if("named_imports"===b.type)for(let a=0;a<b.namedChildCount;a++){let e=b.namedChild(a);if(!e||"import_specifier"!==e.type)continue;let f=e.childForFieldName("name"),g=e.childForFieldName("alias");f&&c.push({specifier:d,importedName:f.text,localName:g?.text??f.text})}}}}(d,a,b):function(a,b){for(let c=0;c<a.childCount;c++){let d=a.child(c);if(d&&"name"===a.fieldNameForChild(c)){if("dotted_name"===d.type){let a=d.text,c=a.split(".")[0];b.push({specifier:a,importedName:"*",localName:c})}else if("aliased_import"===d.type){let a=d.childForFieldName("name"),c=d.childForFieldName("alias");a?.type==="dotted_name"&&c&&b.push({specifier:a.text,importedName:"*",localName:c.text})}}}}(d,b)}else"import_from_statement"===d.type&&function(a,b){let c=a.childForFieldName("module_name"),d="";if(c){if("dotted_name"===c.type)d=c.text;else if("relative_import"===c.type){let a="",b="";for(let d=0;d<c.namedChildCount;d++){let e=c.namedChild(d);e&&("import_prefix"===e.type?a=e.text:"dotted_name"===e.type&&(b=e.text))}d=a+b}}if(!d)return;let e=!1;for(let c=0;c<a.childCount;c++){let f=a.child(c);if(!f)continue;let g=a.fieldNameForChild(c);if("wildcard_import"===f.type){e=!0;continue}if("name"===g){if("dotted_name"===f.type){let a=f.text;b.push({specifier:d,importedName:a,localName:a})}else if("aliased_import"===f.type){let a=f.childForFieldName("name"),c=f.childForFieldName("alias");a?.type==="dotted_name"&&c&&b.push({specifier:d,importedName:a.text,localName:c.text})}}}e&&b.push({specifier:d,importedName:"*",localName:"*"})}(d,b)}return b}function q(a){return a.length>=2&&('"'===a[0]||"'"===a[0])&&a[a.length-1]===a[0]?a.slice(1,-1):a}function r(a){let b=[];function c(a){if(!a||"string"!==a.type)return null;for(let b=0;b<a.namedChildCount;b++){let c=a.namedChild(b);if(c&&"string_fragment"===c.type)return c.text}return""}return!function a(d){switch(d.type){case"import_statement":case"export_statement":{let a=c(d.childForFieldName("source"));a&&b.push(a);return}case"call_expression":{let a=d.childForFieldName("function");if(a){let e="import"===a.type,f="identifier"===a.type&&"require"===a.text;if(e||f){let a=d.childForFieldName("arguments");if(a&&a.namedChildCount>0){let d=c(a.namedChild(0));d&&b.push(d)}}}}}for(let b=0;b<d.namedChildCount;b++){let c=d.namedChild(b);c&&a(c)}}(a),b}let s={typescript:r,tsx:r,javascript:r,python:function(a){let b=[];return!function a(c){switch(c.type){case"import_statement":for(let a=0;a<c.childCount;a++){let d=c.child(a);if(d&&"name"===c.fieldNameForChild(a)){if("dotted_name"===d.type)b.push(d.text);else if("aliased_import"===d.type){let a=d.childForFieldName("name");a?.type==="dotted_name"&&b.push(a.text)}}}return;case"import_from_statement":{let a=function(a){let b=a.childForFieldName("module_name");if(!b)return"";if("dotted_name"===b.type)return b.text;if("relative_import"===b.type){let a="",c="";for(let d=0;d<b.namedChildCount;d++){let e=b.namedChild(d);e&&("import_prefix"===e.type?a=e.text:"dotted_name"===e.type&&(c=e.text))}return a+c}return""}(c);a&&b.push(a);return}}for(let b=0;b<c.namedChildCount;b++){let d=c.namedChild(b);d&&a(d)}}(a),b}};function t(a,b){let c=s[b];return c?c(a):[]}var u=c(25344);function v(a){return"function"===a||"class"===a||"method"===a}function w(a,b){return{grammarId:a,extensions:b,extractSymbols:(a,b)=>n(a),extractImports:b=>({specs:t(b,a),bindings:[...p(b),...function(a){let b=[];for(let c=0;c<a.namedChildCount;c++){let d=a.namedChild(c);if(!d||"export_statement"!==d.type)continue;let e=d.childForFieldName("source");if(!e)continue;let f=q(e.text),g=null;for(let a=0;a<d.namedChildCount;a++){let b=d.namedChild(a);if(b?.type==="export_clause"){g=b;break}}if(g)for(let a=0;a<g.namedChildCount;a++){let c=g.namedChild(a);if(!c||"export_specifier"!==c.type)continue;let d=c.childForFieldName("name"),e=c.childForFieldName("alias");if(!d)continue;let h=d.text,i=e?.text??h;b.push({localName:i,specifier:f,importedName:h,isReexport:!0})}}return b}(b)]}),extractCallSites:(a,b)=>o(a),async buildProjectContext(a,b){let c=new Set(b),d=await (0,u.ZT)(a),e=await (0,u.zC)(a,c),f=[...e.keys()].sort((a,b)=>b.length-a.length);return{cwd:a,tsconfigs:d,workspaces:e,sortedWsNames:f,owningScopesCache:new Map}},resolveSpecifier(a,b,c,d){let e=c.owningScopesCache.get(b);if(e||(e=c.tsconfigs.filter(a=>(0,u._0)(b,a.scope)),c.owningScopesCache.set(b,e)),a.startsWith("./")||a.startsWith("../"))return(0,u.KP)(f().resolve(c.cwd,f().dirname(b),a),c.cwd,d);if(a.startsWith("/"))return(0,u.KP)(f().resolve(c.cwd,a.slice(1)),c.cwd,d);for(let b of e){let e=b.sortedAliases.find(([b])=>a===b||a.startsWith(b+"/"));if(!e)continue;let[g,h]=e,i=a===g?"":a.slice(g.length+1),j=(0,u.KP)(f().resolve(c.cwd,h,i),c.cwd,d);if(j)return j}for(let b of c.sortedWsNames){if(a!==b&&!a.startsWith(b+"/"))continue;let e=c.workspaces.get(b);if(a===b)return e.entryFile;let g=a.slice(b.length+1);return(0,u.IS)(f().posix.join(e.dir,g),d)??(0,u.IS)(f().posix.join(e.dir,"src",g),d)}return null},resolveCall(a,b,c,d,e){if(a.receiverName){let b=c.bindingsByLocalName.get(a.receiverName);if(!b)return[];let e=c.resolvedImports.get(b.specifier);if(!e)return[];let f=d.get(e);if(!f)return[];let g=function a(b,c,d,e,f,g){if(e>5||f.has(b.path))return null;if(f.add(b.path),"*"!==c){let a=`${c}>${d}`,e=b.symbolsByQname.get(a);if(e&&v(e.kind))return e}if("*"===c){let a=b.symbolsByName.get(d);if(a){let b=null;for(let c of a)!c.qualifiedName.includes(">")&&v(c.kind)&&(!b||c.endLine-c.startLine>b.endLine-b.startLine)&&(b=c);if(b)return b}}let h=b.reexportsByLocalName.get(c);if(h){let c=b.resolvedImports.get(h.specifier);if(c){let b=g.get(c);if(b){let c=a(b,h.importedName,d,e+1,f,g);if(c)return c}}}return null}(f,b.importedName,a.calleeName,0,new Set,d);return g?[{kind:"symbol",addr:{filePath:g.filePath,qualifiedName:g.qualifiedName}}]:[{kind:"method-unresolved",receiverName:a.receiverName,methodName:a.calleeName}]}let f=c.symbolsByName.get(a.calleeName);if(f&&f.length>0){let a=[];for(let c of f)c.qualifiedName!==b.qualifiedName&&v(c.kind)&&a.push({kind:"symbol",addr:{filePath:c.filePath,qualifiedName:c.qualifiedName}});return a}let g=c.bindingsByLocalName.get(a.calleeName);if(!g)return[];let h=c.resolvedImports.get(g.specifier);if(!h)return[{kind:"external",name:g.importedName,packageSpec:g.specifier}];let i=d.get(h);if(!i)return[];let j=function a(b,c,d,e,f){if(d>5||e.has(b.path))return null;e.add(b.path);let g=b.symbolsByName.get(c);if(g){let a=null;for(let b of g)v(b.kind)&&(!a||b.endLine-b.startLine>a.endLine-a.startLine)&&(a=b);if(a)return a}let h=b.reexportsByLocalName.get(c);if(h){let c=b.resolvedImports.get(h.specifier);if(c){let b=f.get(c);if(b){let c=a(b,h.importedName,d+1,e,f);if(c)return c}}}return null}(i,g.importedName,0,new Set,d);return j?[{kind:"symbol",addr:{filePath:j.filePath,qualifiedName:j.qualifiedName}}]:[]},moduleForFile:(a,b)=>a}}let x=w("typescript",[".ts"]),y=w("tsx",[".tsx",".jsx"]),z=w("javascript",[".js",".mjs",".cjs"]);function A(a){return"function"===a||"class"===a||"method"===a}function B(a,b,c){let d=b.replace(/\./g,"/"),e=(...a)=>a.filter(a=>""!==a&&"."!==a).join("/");if(!d){let b=e(a,"__init__.py");return c.has(b)?b:null}let f=e(a,d+".py");if(c.has(f))return f;let g=e(a,d,"__init__.py");return c.has(g)?g:null}var C=c(73024);function D(a,b,c,d,e=[],f){return{qualifiedName:d?`${d}>${b}`:b,name:b,kind:c,startLine:a.startPosition.row+1,endLine:a.endPosition.row+1,contentHash:g(h(a.text)),children:e,params:f}}function E(a){let b=a.childForFieldName("parameters");if(!b)return;let c=[];for(let a=0;a<b.namedChildCount;a++){let d=b.namedChild(a);if(d){if("parameter_declaration"===d.type){let a=d.childForFieldName("name");if(!a){c.push("_");continue}if("identifier"===a.type)c.push(a.text);else if("identifier_list"===a.type)for(let b=0;b<a.namedChildCount;b++){let d=a.namedChild(b);d?.type==="identifier"&&c.push(d.text)}else c.push(a.text)}else if("variadic_parameter_declaration"===d.type){let a=d.childForFieldName("name");a?.type==="identifier"?c.push(`...${a.text}`):c.push("...")}}}return c}async function F(a){try{let b=await C.promises.readFile(f().join(a,"go.mod"),"utf8"),c=/^\s*module\s+(\S+)/m.exec(b);return c?c[1].trim():null}catch{return null}}function G(a){return"function"===a||"class"===a||"method"===a}function H(a,b,c,d,e=[],f){return{qualifiedName:d?`${d}>${b}`:b,name:b,kind:c,startLine:a.startPosition.row+1,endLine:a.endPosition.row+1,contentHash:g(h(a.text)),children:e,params:f}}function I(a){let b=a.childForFieldName("parameters");if(!b)return;let c=[];for(let a=0;a<b.namedChildCount;a++){let d=b.namedChild(a);if(d)if("self_parameter"===d.type)c.push(d.text);else if("parameter"===d.type){let a=d.childForFieldName("pattern");a?c.push(a.text):c.push("_")}else"variadic_parameter"===d.type&&c.push("...")}return c}async function J(a,b){let c=new Map,d=new Map,e=new Set;async function g(h,i){let j;if(e.has(i))return;e.add(i),c.set(h,i),d.set(i,h);try{j=await C.promises.readFile(f().join(a,i),"utf8")}catch{return}let k=function(a){let b,c=a.replace(/\/\*[\s\S]*?\*\//g,"").replace(/\/\/.*$/gm,"").replace(/"(?:\\.|[^"\\\n])*"/g,'""'),d=[],e=/\b(?:pub(?:\s*\([^)]*\))?\s+)?mod\s+(\w+)\s*;/g;for(;null!==(b=e.exec(c));)d.push(b[1]);return d}(j);if(0===k.length)return;let l=f().dirname(i),m=f().basename(i,".rs"),n="mod"===m||"lib"===m||"main"===m?[l]:[l,f().join(l,m)];for(let a of k){let c=`${h}::${a}`,d=null;for(let c of n){for(let e of[f().join(c,`${a}.rs`),f().join(c,a,"mod.rs")]){let a=e.startsWith("./")?e.slice(2):e;if(b.has(a)){d=a;break}}if(d)break}d&&await g(c,d)}}for(let a of function(a){let b=[];for(let c of a)("src/lib.rs"===c||"src/main.rs"===c||c.endsWith("/src/lib.rs")||c.endsWith("/src/main.rs")||/^src\/bin\/[^/]+\.rs$/.test(c)||/\/src\/bin\/[^/]+\.rs$/.test(c))&&b.push(c);return b}(b))if("src/lib.rs"===a||"src/main.rs"===a)await g("crate",a);else if(a.startsWith("src/bin/"))await g("crate",a);else{let b=a.split("/"),c=b.indexOf("src");if(c>0){let d=b[c-1];await g(d,a)}}return{modTree:c,fileToMod:d}}function K(a){return"function"===a||"class"===a||"method"===a}(0,d.ik)(x),(0,d.ik)(y),(0,d.ik)(z),(0,d.ik)({grammarId:"python",extensions:[".py",".pyi"],extractSymbols:(a,b)=>n(a),extractImports:a=>({specs:t(a,"python"),bindings:p(a)}),extractCallSites:(a,b)=>o(a),buildProjectContext(a,b){let c=[a],d=!1;if(b.has("src/__init__.py"))d=!0;else for(let a of b)if(a.startsWith("src/")&&a.endsWith(".py")){d=!0;break}return d&&c.push(f().join(a,"src")),{cwd:a,pythonRoots:c}},resolveSpecifier(a,b,c,d){let e=/^(\.+)/.exec(a);if(e){let c=e[1].length,g=a.slice(c),h=f().dirname(b);for(let a=1;a<c;a++)h=f().dirname(h);return B(h||".",g,d)}for(let b of c.pythonRoots){let e=B(f().relative(c.cwd,b)||".",a,d);if(e)return e}return null},resolveCall(a,b,c,d,e){if(a.receiverName){let b=c.bindingsByLocalName.get(a.receiverName);if(!b)return[];let e=c.resolvedImports.get(b.specifier);if(!e)return[];let f=d.get(e);if(!f)return[];let g=function(a,b,c){if("*"!==b){let d=`${b}>${c}`,e=a.symbolsByQname.get(d);if(e&&A(e.kind))return e}if("*"===b){let b=a.symbolsByName.get(c);if(b){let a=null;for(let c of b)!c.qualifiedName.includes(">")&&A(c.kind)&&(!a||c.endLine-c.startLine>a.endLine-a.startLine)&&(a=c);if(a)return a}}return null}(f,b.importedName,a.calleeName);return g?[{kind:"symbol",addr:{filePath:g.filePath,qualifiedName:g.qualifiedName}}]:[{kind:"method-unresolved",receiverName:a.receiverName,methodName:a.calleeName}]}let f=c.symbolsByName.get(a.calleeName);if(f&&f.length>0){let a=[];for(let c of f)c.qualifiedName!==b.qualifiedName&&A(c.kind)&&a.push({kind:"symbol",addr:{filePath:c.filePath,qualifiedName:c.qualifiedName}});return a}let g=c.bindingsByLocalName.get(a.calleeName);if(!g)return[];let h=c.resolvedImports.get(g.specifier);if(!h)return[{kind:"external",name:g.importedName,packageSpec:g.specifier}];let i=d.get(h);if(!i)return[];let j=function(a,b){let c=a.symbolsByName.get(b);if(!c)return null;let d=null;for(let a of c)A(a.kind)&&(!d||a.endLine-a.startLine>d.endLine-d.startLine)&&(d=a);return d}(i,g.importedName);return j?[{kind:"symbol",addr:{filePath:j.filePath,qualifiedName:j.qualifiedName}}]:[]},moduleForFile:(a,b)=>a}),(0,d.ik)({grammarId:"go",extensions:[".go"],extractSymbols(a,b){let c=[],d=function(a){let b=[],c=-1,d=-1;for(let e=0;e<a.namedChildCount;e++){let f=a.namedChild(e);if(f){if("import_declaration"===f.type)b.push(f),c<0&&(c=f.startPosition.row+1),d=f.endPosition.row+1;else if("package_clause"===f.type)continue;else if(c>=0)break}}return c<0?null:{qualifiedName:"__imports__",name:"imports",kind:"unknown",startLine:c,endLine:d,contentHash:g(h(b.map(a=>a.text).join("\n"))),children:[]}}(a);d&&c.push(d);let{symbols:e,pendingMethods:f}=function(a){let b=[],c=[];for(let d=0;d<a.namedChildCount;d++){let e=a.namedChild(d);if(e)switch(e.type){case"function_declaration":{let a=e.childForFieldName("name");if(!a)break;b.push(D(e,a.text,"function",void 0,[],E(e)));break}case"method_declaration":{let a=e.childForFieldName("name");if(!a)break;let d=function(a){let b=a.childForFieldName("receiver");if(!b)return null;for(let a=0;a<b.namedChildCount;a++){let c=b.namedChild(a);if(c?.type!=="parameter_declaration")continue;let d=c.childForFieldName("type");if(!d)break;return function a(b){if("type_identifier"===b.type)return b.text;if("pointer_type"===b.type){for(let c=0;c<b.namedChildCount;c++){let d=b.namedChild(c);if(d){let b=a(d);if(b)return b}}return null}if("generic_type"===b.type){let c=b.childForFieldName("type");if(c)return a(c)}return null}(d)}return null}(e),f=D(e,a.text,"method",d??void 0,[],E(e));d?c.push({receiverType:d,symbol:f}):b.push(f);break}case"type_declaration":b.push(...function(a,b){let c=[];for(let d=0;d<a.namedChildCount;d++){let e=a.namedChild(d);if(e&&("type_spec"===e.type||"type_alias"===e.type)){let a=e.childForFieldName("name"),d=e.childForFieldName("type");if(!a)continue;let f=a.text,g=d?.type==="interface_type"?"interface":"class";c.push(D(e,f,g,b))}}return c}(e,void 0));break;case"var_declaration":case"const_declaration":b.push(...function(a,b){let c=[];for(let d=0;d<a.namedChildCount;d++){let e=a.namedChild(d);if(e&&("var_spec"===e.type||"const_spec"===e.type)){let a=e.childForFieldName("name");if(!a)continue;if("identifier_list"===a.type)for(let d=0;d<a.namedChildCount;d++){let f=a.namedChild(d);f?.type==="identifier"&&c.push(D(e,f.text,"const",b))}else"identifier"===a.type&&c.push(D(e,a.text,"const",b))}}return c}(e,void 0))}}return{symbols:b,pendingMethods:c}}(a);return c.push(...function(a,b){if(0===b.length)return a;let c=new Map;for(let b of a)("class"===b.kind||"interface"===b.kind)&&c.set(b.name,b);let d=[];for(let a of b){let b=c.get(a.receiverType);b?b.children=[...b.children,a.symbol]:d.push(a.symbol)}return[...a,...d]}(e,f)),c.push(...m(a,c)),c},extractImports:a=>(function(a){let b=[],c=[];function d(a){var d;let e,f=a.childForFieldName("path");if(!f)return;let g=(d=f.text).length>=2&&('"'===d[0]||"'"===d[0]||"`"===d[0])&&d[d.length-1]===d[0]?d.slice(1,-1):d;if(!g)return;b.push(g);let h=a.childForFieldName("name");if(h)e=h.text;else{let a=g.split("/");e=a[a.length-1]||g}c.push({specifier:g,importedName:"*",localName:e})}return!function a(b){if("import_declaration"===b.type){for(let a=0;a<b.namedChildCount;a++){let c=b.namedChild(a);if(c){if("import_spec"===c.type)d(c);else if("import_spec_list"===c.type)for(let a=0;a<c.namedChildCount;a++){let b=c.namedChild(a);b?.type==="import_spec"&&d(b)}}}return}for(let c=0;c<b.namedChildCount;c++){let d=b.namedChild(c);d&&a(d)}}(a),{specs:b,bindings:c}})(a),extractCallSites:(a,b)=>{let c;return c=[],!function a(b){if("call_expression"===b.type){let a=b.childForFieldName("function"),d=function a(b){if(!b)return null;if("identifier"===b.type)return b.text;if("selector_expression"===b.type){let a=b.childForFieldName("field");return a?.text??null}return"call_expression"===b.type?a(b.childForFieldName("function")):null}(a);if(d){let e=function(a){if(!a||"selector_expression"!==a.type)return;let b=a;for(;b;){if("identifier"===b.type)return b.text;if("selector_expression"===b.type){b=b.childForFieldName("operand");continue}break}}(a);c.push({calleeName:d,line:b.startPosition.row+1,...e?{receiverName:e}:{}})}}for(let c=0;c<b.childCount;c++){let d=b.child(c);d&&a(d)}}(a),c},async buildProjectContext(a,b){let c=await F(a);return{cwd:a,modulePath:c,dirToGoFiles:function(a){let b=new Map;for(let c of a){if(!c.endsWith(".go"))continue;let a=f().dirname(c),d=b.get(a);d?d.push(c):b.set(a,[c])}return b}(b)}},resolveSpecifier(a,b,c,d){if(!c.modulePath)return null;if(a===c.modulePath){let a=c.dirToGoFiles.get(".");return a?.[0]??null}if(a.startsWith(c.modulePath+"/")){let b=a.slice(c.modulePath.length+1),d=c.dirToGoFiles.get(b);return d?.[0]??null}return null},resolveCall(a,b,c,d,e){let g=f().dirname(c.path),h=e.dirToGoFiles.get(g)??[c.path];if(a.receiverName){let b=c.bindingsByLocalName.get(a.receiverName);if(b){let g=c.resolvedImports.get(b.specifier);if(!g)return[{kind:"external",name:a.calleeName,packageSpec:b.specifier}];let h=f().dirname(g);for(let b of e.dirToGoFiles.get(h)??[]){let c,e=d.get(b);if(!e)continue;let f=e.symbolsByName.get(a.calleeName);if(f){for(let a of f)if(!a.qualifiedName.includes(">")&&G(a.kind)){c=a;break}if(c)return[{kind:"symbol",addr:{filePath:c.filePath,qualifiedName:c.qualifiedName}}]}}return[{kind:"external",name:a.calleeName,packageSpec:b.specifier}]}let g=`${a.receiverName}>${a.calleeName}`;for(let a of h){let b=d.get(a);if(!b)continue;let c=b.symbolsByQname.get(g);if(c&&G(c.kind))return[{kind:"symbol",addr:{filePath:c.filePath,qualifiedName:c.qualifiedName}}]}return[{kind:"method-unresolved",receiverName:a.receiverName,methodName:a.calleeName}]}let i=[];for(let c of h){let e=d.get(c);if(!e)continue;let f=e.symbolsByName.get(a.calleeName);if(f)for(let a of f)!(a.qualifiedName===b.qualifiedName||a.qualifiedName.includes(">"))&&G(a.kind)&&i.push({kind:"symbol",addr:{filePath:a.filePath,qualifiedName:a.qualifiedName}})}return i},moduleForFile(a,b){let c=f().dirname(a);return b?.modulePath?"."===c?b.modulePath:`${b.modulePath}/${c}`:c}}),(0,d.ik)({grammarId:"rust",extensions:[".rs"],extractSymbols(a,b){let c=[],d=function(a){let b=[],c=-1,d=-1;for(let e=0;e<a.namedChildCount;e++){let f=a.namedChild(e);if(f){if("use_declaration"===f.type||"extern_crate_declaration"===f.type)b.push(f),c<0&&(c=f.startPosition.row+1),d=f.endPosition.row+1;else if(c>=0)break}}return c<0?null:{qualifiedName:"__imports__",name:"imports",kind:"unknown",startLine:c,endLine:d,contentHash:g(h(b.map(a=>a.text).join("\n"))),children:[]}}(a);d&&c.push(d);let{symbols:e,pendingImpls:f}=function(a){let b=[],c=[];for(let d=0;d<a.namedChildCount;d++){let e=a.namedChild(d);if(e)switch(e.type){case"function_item":{let a=e.childForFieldName("name");if(!a)break;b.push(H(e,a.text,"function",void 0,[],I(e)));break}case"struct_item":case"union_item":{let a=e.childForFieldName("name");if(!a)break;b.push(H(e,a.text,"class",void 0));break}case"enum_item":{let a=e.childForFieldName("name");if(!a)break;b.push(H(e,a.text,"enum",void 0));break}case"trait_item":{let a=e.childForFieldName("name");if(!a)break;let c=function(a,b){let c=a.childForFieldName("body");if(!c)return[];let d=[];for(let a=0;a<c.namedChildCount;a++){let e=c.namedChild(a);if(e&&("function_item"===e.type||"function_signature_item"===e.type)){let a=e.childForFieldName("name");if(!a)continue;d.push(H(e,a.text,"method",b,[],I(e)))}}return d}(e,a.text);b.push(H(e,a.text,"interface",void 0,c));break}case"impl_item":{let a=function(a){let b=a.childForFieldName("type");return b?function a(b){if("type_identifier"===b.type)return b.text;if("generic_type"===b.type){let c=b.childForFieldName("type");if(c)return a(c)}if("reference_type"===b.type)for(let c=0;c<b.namedChildCount;c++){let d=b.namedChild(c);if(d){let b=a(d);if(b)return b}}if("scoped_type_identifier"===b.type){let a=b.childForFieldName("name");if(a?.type==="type_identifier")return a.text}return null}(b):null}(e);if(!a)break;let b=function(a,b){let c=a.childForFieldName("body");if(!c)return[];let d=[];for(let a=0;a<c.namedChildCount;a++){let e=c.namedChild(a);if(e){if("function_item"===e.type){let a=e.childForFieldName("name");if(!a)continue;d.push(H(e,a.text,"method",b,[],I(e)))}else if("function_signature_item"===e.type){let a=e.childForFieldName("name");if(!a)continue;d.push(H(e,a.text,"method",b,[],I(e)))}}}return d}(e,a);b.length>0&&c.push({targetType:a,methods:b});break}case"const_item":case"static_item":{let a=e.childForFieldName("name");if(!a)break;b.push(H(e,a.text,"const",void 0));break}case"type_item":{let a=e.childForFieldName("name");if(!a)break;b.push(H(e,a.text,"type",void 0));break}case"mod_item":{let a=e.childForFieldName("name"),c=e.childForFieldName("body");if(!a||!c)break;b.push(H(e,a.text,"class",void 0))}}}return{symbols:b,pendingImpls:c}}(a);return c.push(...function(a,b){if(0===b.length)return a;let c=new Map;for(let b of a)("class"===b.kind||"enum"===b.kind||"interface"===b.kind)&&c.set(b.name,b);let d=[];for(let a of b){let b=c.get(a.targetType);b?b.children=[...b.children,...a.methods]:d.push(...a.methods)}return[...a,...d]}(e,f)),c.push(...m(a,c)),c},extractImports:a=>(function(a){let b=[],c=[];function d(a){if("identifier"===a.type||"crate"===a.type||"self"===a.type||"super"===a.type)return a.text;if("scoped_identifier"===a.type){let b=a.childForFieldName("path"),c=a.childForFieldName("name"),e=b?d(b):"",f=c?.text??"";return e?`${e}::${f}`:f}return a.text}function e(a,b){return a?b?`${a}::${b}`:a:b}function f(a){let b=a.split("::");return b[b.length-1]??a}return!function a(g){if("use_declaration"===g.type)return void function(a){for(let g=0;g<a.namedChildCount;g++){let h=a.namedChild(g);h&&function a(g,h){switch(g.type){case"use_as_clause":{let a=g.childForFieldName("path"),i=g.childForFieldName("alias");if(a&&i){let g=e(h,d(a));b.push(g),c.push({specifier:g,importedName:f(g),localName:i.text})}break}case"use_list":for(let b=0;b<g.namedChildCount;b++){let c=g.namedChild(b);c&&a(c,h)}break;case"scoped_use_list":{let b=g.childForFieldName("path"),c=g.childForFieldName("list"),f=b?e(h,d(b)):h;if(c)for(let b=0;b<c.namedChildCount;b++){let d=c.namedChild(b);d&&a(d,f)}break}case"use_wildcard":{let a=g.childForFieldName("path"),f=a?e(h,d(a)):h;f&&(b.push(f),c.push({specifier:f,importedName:"*",localName:"*"}));break}case"identifier":case"self":case"super":case"crate":case"scoped_identifier":{let a=e(h,d(g));a&&(b.push(a),c.push({specifier:a,importedName:f(a),localName:f(a)}))}}}(h,"")}}(g);if("extern_crate_declaration"===g.type){let a=g.childForFieldName("name");a&&(b.push(a.text),c.push({specifier:a.text,importedName:"*",localName:a.text}));return}if("mod_item"===g.type){let a=g.childForFieldName("body"),c=g.childForFieldName("name");!a&&c&&b.push(c.text);return}for(let b=0;b<g.namedChildCount;b++){let c=g.namedChild(b);c&&a(c)}}(a),{specs:b,bindings:c}})(a),extractCallSites:(a,b)=>{let c;return c=[],!function a(b){if("call_expression"===b.type){let a=b.childForFieldName("function"),d=function(a){if(!a)return null;if("identifier"===a.type)return a.text;if("scoped_identifier"===a.type){let b=a.childForFieldName("name");return b?.text??null}if("field_expression"===a.type){let b=a.childForFieldName("field");return b?.text??null}return null}(a);if(d){let e=function(a){if(a){if("scoped_identifier"===a.type){let b=a;for(;b;){if("identifier"===b.type)return b.text;if("scoped_identifier"===b.type){b=b.childForFieldName("path");continue}break}}if("field_expression"===a.type){let b=a.childForFieldName("value");if(b?.type==="identifier")return b.text}}}(a);c.push({calleeName:d,line:b.startPosition.row+1,...e?{receiverName:e}:{}})}}else if("method_call_expression"===b.type){let a=b.childForFieldName("method"),d=b.childForFieldName("value");if(a){let e=d?.type==="identifier"?d.text:void 0;c.push({calleeName:a.text,line:b.startPosition.row+1,...e?{receiverName:e}:{}})}}for(let c=0;c<b.childCount;c++){let d=b.child(c);d&&a(d)}}(a),c},async buildProjectContext(a,b){let{modTree:c,fileToMod:d}=await J(a,b);return{cwd:a,modTree:c,fileToMod:d}},resolveSpecifier(a,b,c,d){let e=c.fileToMod.get(b);if(!e)return null;let f=function(a,b){if(a.startsWith("crate::"))return a;if("crate"===a)return"crate";if(a.startsWith("self::"))return`${b}::${a.slice(6)}`;if("self"===a)return b;if(a.startsWith("super::")){let c=b,d=a;for(;d.startsWith("super::");){let a=c.lastIndexOf("::");if(a<0)return null;c=c.slice(0,a),d=d.slice(7)}if("super"===d){let a=c.lastIndexOf("::");return a<0?null:c.slice(0,a)}return d?`${c}::${d}`:c}return null}(a,e);if(!f)return null;if(c.modTree.has(f))return c.modTree.get(f);let g=f.split("::");for(;g.length>1;){g.pop();let a=g.join("::"),b=c.modTree.get(a);if(b)return b}return null},resolveCall(a,b,c,d,e){let f;if(a.receiverName){let b=c.bindingsByLocalName.get(a.receiverName);if(b){let e=c.resolvedImports.get(b.specifier);if(!e)return[{kind:"external",name:a.calleeName,packageSpec:b.specifier}];let f=d.get(e);if(!f)return[];let g=f.symbolsByName.get(a.calleeName);if(g){for(let a of g)if(!a.qualifiedName.includes(">")&&K(a.kind))return[{kind:"symbol",addr:{filePath:a.filePath,qualifiedName:a.qualifiedName}}]}let h=`${b.importedName}>${a.calleeName}`,i=f.symbolsByQname.get(h);return i&&K(i.kind)?[{kind:"symbol",addr:{filePath:i.filePath,qualifiedName:i.qualifiedName}}]:[{kind:"method-unresolved",receiverName:a.receiverName,methodName:a.calleeName}]}let e=`${a.receiverName}>${a.calleeName}`,f=c.symbolsByQname.get(e);if(f)return[{kind:"symbol",addr:{filePath:f.filePath,qualifiedName:f.qualifiedName}}];let g=[],h=c.symbolsByName.get(a.calleeName);if(h)for(let a of h)"method"===a.kind&&g.push({kind:"symbol",addr:{filePath:a.filePath,qualifiedName:a.qualifiedName}});return g.length>0?g:[{kind:"method-unresolved",receiverName:a.receiverName,methodName:a.calleeName}]}let g=[],h=c.symbolsByName.get(a.calleeName);if(h)for(let a of h)!(a.qualifiedName===b.qualifiedName||a.qualifiedName.includes(">"))&&K(a.kind)&&g.push({kind:"symbol",addr:{filePath:a.filePath,qualifiedName:a.qualifiedName}});if(g.length>0)return g;let i=c.bindingsByLocalName.get(a.calleeName);if(!i)return[];let j=c.resolvedImports.get(i.specifier);if(!j)return[{kind:"external",name:i.importedName,packageSpec:i.specifier}];let k=d.get(j);if(!k)return[];let l=k.symbolsByName.get(i.importedName);if(l){for(let a of l)if(!a.qualifiedName.includes(">")&&K(a.kind)){f=a;break}}return f?[{kind:"symbol",addr:{filePath:f.filePath,qualifiedName:f.qualifiedName}}]:[]},moduleForFile:(a,b)=>b?.fileToMod.get(a)??f().dirname(a)})},64949:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{g:()=>h});var e=c(33265),f=c(88395),g=a([e]);e=(g.then?(await g)():g)[0];let i=!1;function h(){i||(i=!0,(0,e.ih)((a,b)=>{f.t.subscribe(a,a=>{a.some(a=>"file"===a.type||"git"===a.type)&&b()})}))}d()}catch(a){d(a)}})},72891:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{OZ:()=>o,RL:()=>n,k9:()=>p,ok:()=>l});var e=c(37625),f=c(52693),g=c(18412),h=c(89705),i=c(94506),j=c(770),k=a([i]);i=(k.then?(await k)():k)[0];let l=(a,b=200)=>new Response(JSON.stringify(a),{status:b,headers:{"content-type":"application/json"}}),m=a=>{let b=e.od(a);if(f.Ru(b)){let a=b.value,c=(0,j.Sh)(a);return new Response(JSON.stringify({error:(a=>{let b=a.message;if("string"==typeof b&&b.length>0)return b;let c=a.cause;if(c instanceof Error&&c.message.length>0)return c.message;switch(a._tag){case"ValidationError":return`Invalid ${a.field}: ${a.reason}`;case"NotFoundError":return`${a.resource} not found: ${a.id}`;case"PermissionError":return`Permission denied: ${a.action} on ${a.resource}`;case"DBError":return`${a.db} ${a.op} failed`;case"FSError":return`${a.op} ${a.path} failed`;case"WSError":return`${a.proto} ${a.kind} failed`;case"AgentError":return`${a.provider} ${a.kind} failed`;default:return a._tag}})(a),tag:a._tag}),{status:c,headers:{"content-type":"application/json"}})}return console.error("[handler] uncaught defect:\n"+e.j9(a)),new Response(JSON.stringify({error:"Internal Server Error",tag:"InternalError"}),{status:500,headers:{"content-type":"application/json"}})},n=a=>async b=>{let c=await i.s9.runPromiseExit(a(b));return g.YW(c,{onFailure:a=>m(a),onSuccess:a=>a})},o=a=>async(b,c)=>{let d=await c.params,e=await i.s9.runPromiseExit(a(b,d));return g.YW(e,{onFailure:a=>m(a),onSuccess:a=>a})},p=a=>h.$mh({try:()=>a.json(),catch:()=>new j.yI({field:"body",reason:"invalid JSON"})});d()}catch(a){d(a)}})},86236:(a,b,c)=>{c.d(b,{I:()=>d});let d=new Set(["typescript","tsx","javascript","python","go","rust"])},87956:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{M:()=>j,b:()=>i});var e=c(12629),f=c(76760),g=c.n(f),h=a([e]);e=(h.then?(await h)():h)[0];let k=g().join(process.cwd(),"public","tree-sitter"),l=null,m=new Map,n=new Map;async function i(a){let b,c=n.get(a);if(c)return c;let d=await (!(b=m.get(a))&&(b=(async()=>(await (!l&&(l=e.Parser.init({locateFile:a=>g().join(k,a)})),l),e.Language.load(g().join(k,`tree-sitter-${a}.wasm`))))(),m.set(a,b)),b);return(c=new e.Parser).setLanguage(d),n.set(a,c),c}function j(a){switch(a.slice(a.lastIndexOf(".")).toLowerCase()){case".ts":return"typescript";case".tsx":case".jsx":return"tsx";case".js":case".mjs":case".cjs":return"javascript";case".py":case".pyi":return"python";case".go":return"go";case".rs":return"rust";default:return null}}d()}catch(a){d(a)}})},88395:(a,b,c)=>{c.d(b,{t:()=>l});var d=c(29021),e=c(33873),f=c(7939);let g=[".git/HEAD",".git/MERGE_HEAD",".git/REBASE_HEAD"],h=[".git/refs"];class i{subscribe(a,b){let c=this.watchers.get(a);return c||(c=this.createWatcher(a),this.watchers.set(a,c)),c.listeners.add(b),()=>{this.unsubscribe(a,b)}}unsubscribe(a,b){let c=this.watchers.get(a);if(c&&(c.listeners.delete(b),0===c.listeners.size)){for(let a of(c.debounceTimer&&clearTimeout(c.debounceTimer),c.throttleTimer&&clearTimeout(c.throttleTimer),c.cwdRestartTimer&&clearTimeout(c.cwdRestartTimer),c.watchers))try{a.close()}catch{}this.watchers.delete(a)}}createWatcher(a){let b={watchers:[],listeners:new Set,pendingEvents:[],debounceTimer:null,throttleTimer:null,cwdRestartTimer:null},c=a=>{b.pendingEvents.some(b=>b.type===a.type)||b.pendingEvents.push(a),b.debounceTimer&&clearTimeout(b.debounceTimer),b.debounceTimer=setTimeout(()=>{this.flush(b)},500),b.throttleTimer||(b.throttleTimer=setTimeout(()=>{this.flush(b)},3e3))},f=()=>{try{let e=(0,d.watch)(a,{recursive:!0},(a,b)=>{if(b&&!(b.startsWith(".next/")||b.startsWith("node_modules/"))){if(b.startsWith(".git/")){(".git/HEAD"===b||b.startsWith(".git/refs/"))&&c({type:"git"});return}c({type:"file"})}});e.on("error",c=>{console.error(`File watcher error for ${a}:`,c);let d=b.watchers.indexOf(e);-1!==d&&b.watchers.splice(d,1);try{e.close()}catch{}b.listeners.size>0&&!b.cwdRestartTimer&&(b.cwdRestartTimer=setTimeout(()=>{b.cwdRestartTimer=null,b.listeners.size>0&&f()},2e3))}),b.watchers.push(e)}catch(b){console.error(`Failed to watch ${a}:`,b)}};f();let i=function(a){let b=(0,e.join)(a,".git");try{if((0,d.statSync)(b).isDirectory())return b;let c=(0,d.readFileSync)(b,"utf-8").trim().match(/^gitdir:\s*(.+)$/);if(c)return(0,e.resolve)(a,c[1])}catch{}return b}(a),j=a=>{try{let e=(0,d.watch)(a,()=>{c({type:"git"});try{e.close()}catch{}let d=b.watchers.indexOf(e);-1!==d&&b.watchers.splice(d,1),b.listeners.size>0&&setTimeout(()=>j(a),50)});e.on("error",()=>{let c=b.watchers.indexOf(e);-1!==c&&b.watchers.splice(c,1),b.listeners.size>0&&(0,d.existsSync)(a)&&setTimeout(()=>j(a),500)}),b.watchers.push(e)}catch{}};for(let a of g){let b=a.replace(".git/","");j((0,e.join)(i,b))}for(let a of h){let f=a.replace(".git/","");try{let a=(0,d.watch)((0,e.join)(i,f),{recursive:!0},()=>{c({type:"git"})});a.on("error",()=>{}),b.watchers.push(a)}catch{}}return b}flush(a){if(a.debounceTimer&&(clearTimeout(a.debounceTimer),a.debounceTimer=null),a.throttleTimer&&(clearTimeout(a.throttleTimer),a.throttleTimer=null),0===a.pendingEvents.length)return;let b=[...a.pendingEvents];for(let c of(a.pendingEvents=[],a.listeners))try{c(b)}catch(a){console.error("File watcher callback error:",a)}}constructor(){this.watchers=new Map}}class j{subscribe(a){return this.listeners.add(a),this.watcher||this.start(),()=>{this.listeners.delete(a),0===this.listeners.size&&this.stop()}}start(){try{(0,d.existsSync)(f.Tb)||(0,d.mkdirSync)(f.Tb,{recursive:!0}),(0,d.existsSync)(f.jp)||(0,d.writeFileSync)(f.jp,"0"),this.watcher=(0,d.watch)(f.jp,()=>{this.debounceTimer&&clearTimeout(this.debounceTimer),this.debounceTimer=setTimeout(()=>this.notify(),300)}),this.watcher.on("error",()=>{this.stop(),setTimeout(()=>{this.listeners.size>0&&this.start()},2e3)})}catch{}}stop(){if(this.watcher){try{this.watcher.close()}catch{}this.watcher=null}this.debounceTimer&&(clearTimeout(this.debounceTimer),this.debounceTimer=null)}notify(){for(let a of this.listeners)try{a()}catch(a){console.error("ReviewWatcher callback error:",a)}}constructor(){this.listeners=new Set,this.watcher=null,this.debounceTimer=null}}let k=globalThis,l=k.__cockpitFileWatcher??(k.__cockpitFileWatcher=new i);k.__cockpitReviewWatcher??(k.__cockpitReviewWatcher=new j)}};
1
+ "use strict";exports.id=2939,exports.ids=[2939],exports.modules={4253:(a,b,c)=>{c.d(b,{L8:()=>p,No:()=>h,Pe:()=>o,VA:()=>q,hC:()=>m,hH:()=>l,hn:()=>s,iF:()=>r,lU:()=>t,nw:()=>n,pZ:()=>g});var d=c(79748),e=c(33873),f=c.n(e);let g=0xa00000,h=0x3200000,i=new Set([".png",".jpg",".jpeg",".gif",".webp",".svg",".ico",".bmp",".avif"]),j=new Set([".pdf",".doc",".docx",".xls",".xlsx",".ppt",".pptx",".zip",".tar",".gz",".rar",".7z",".exe",".dll",".so",".dylib",".mp3",".mp4",".avi",".mov",".mkv",".wav",".flac",".ttf",".otf",".woff",".woff2",".eot",".db",".sqlite",".sqlite3",".pyc",".class",".o",".a"]),k={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".svg":"image/svg+xml",".ico":"image/x-icon",".bmp":"image/bmp",".avif":"image/avif"};function l(a){return k[a.toLowerCase()]||"application/octet-stream"}function m(a,b){if("string"!=typeof b||0===b.length)return null;let c=f().resolve(a),d=f().resolve(c,b);return d===c||d.startsWith(c+f().sep)?d:null}async function n(a){let b;if("string"!=typeof a||0===a.length)return{ok:!1,reason:"Missing cwd parameter"};if(!f().isAbsolute(a))return{ok:!1,reason:"cwd must be an absolute path"};let c=f().resolve(a);try{b=await (0,d.stat)(c)}catch{return{ok:!1,reason:"cwd does not exist"}}return b.isDirectory()?{ok:!0,abs:c}:{ok:!1,reason:"cwd is not a directory"}}function o(a,b){return`"${a.toString(36)}-${Math.floor(b).toString(36)}"`}function p(a,b){let c=a.startsWith(".")?a.toLowerCase():f().extname(a).toLowerCase();return i.has(c)?b>h?"too-large":"image":j.has(c)?"binary":b>g?"too-large":"text"}function q(a){let b=0,c=Math.min(a.length,1e3);for(let d=0;d<c;d++){let c=a.charCodeAt(d);if(0===c)return!0;c<32&&9!==c&&10!==c&&13!==c&&b++}return c>0&&b/c>.1}async function r(a){let b,c=!1;try{(await (0,d.lstat)(a)).isSymbolicLink()&&(c=!0,b=await (0,d.readlink)(a))}catch{}let e=await (0,d.stat)(a);return{size:e.size,mtimeMs:e.mtimeMs,isDirectory:e.isDirectory(),isSymlink:c,symlinkTarget:b}}function s(a,b){return{ETag:a,"Last-Modified":new Date(b).toUTCString(),"Cache-Control":"no-cache, must-revalidate"}}function t(a,b){return!!a&&a.split(",").map(a=>a.trim().replace(/^W\//,"")).includes(b)}},7939:(a,b,c)=>{c.d(b,{$A:()=>M,A0:()=>X,An:()=>$,BF:()=>I,Ct:()=>Q,Eu:()=>H,Ex:()=>u,GB:()=>r,JE:()=>Z,JY:()=>L,Ki:()=>C,Kk:()=>R,Kv:()=>j,LN:()=>k,Mx:()=>D,N9:()=>ac,O0:()=>B,Sr:()=>J,Tb:()=>s,Ux:()=>ab,Wd:()=>Y,aO:()=>m,at:()=>y,ec:()=>o,eg:()=>V,h9:()=>x,i4:()=>G,iK:()=>p,im:()=>T,iy:()=>P,jp:()=>t,lT:()=>z,lq:()=>F,ls:()=>K,mT:()=>w,n6:()=>n,oK:()=>O,oZ:()=>S,of:()=>E,po:()=>N,tP:()=>q,th:()=>v,v4:()=>l,vI:()=>W,yw:()=>U});var d=c(21820),e=c(33873),f=c(79748),g=c(29021),h=c(79646);let i=(0,d.homedir)(),j=process.env.COCKPIT_HOME?(0,e.resolve)(process.env.COCKPIT_HOME.replace(/^~(?=$|\/)/,i)):(0,e.join)(i,".cockpit"),k=(0,e.join)(j,"projects"),l=(0,e.join)(j,"state.json"),m=(0,e.join)(j,"pinned-sessions.json"),n=(0,e.join)(j,"push-subscriptions.json"),o=(0,e.join)(j,"note.md"),p=(0,e.join)(j,"scheduled-tasks.json"),q=(0,e.join)(j,"settings.json"),r=(0,e.join)(j,"skills.json"),s=(0,e.join)(j,"review"),t=(0,e.join)(s,"_signal");function u(){try{(0,g.existsSync)(s)||(0,g.mkdirSync)(s,{recursive:!0}),(0,g.writeFileSync)(t,Date.now().toString())}catch{}}let v=(0,e.join)(i,".claude"),w=(0,e.join)(v,"projects"),x=(0,e.join)(i,".claude2"),y=(0,e.join)(x,"projects"),z=(0,e.join)(j,"deepseek"),A=(0,e.join)(z,"projects");function B(a){return a.replace(/[/.]/g,"-")}function C(a){return(0,e.join)(k,B(a))}function D(a){return(0,e.join)(C(a),"session.json")}function E(a){return(0,e.join)(C(a),"recent-files.json")}function F(a){return(0,e.join)(C(a),"expanded-paths.json")}function G(a){return(0,e.join)(C(a),"comments.json")}function H(a){return(0,e.join)(C(a),"services.json")}function I(a){return(0,e.join)(C(a),"note.md")}function J(a,b){return(0,e.join)(C(a),`terminal-history-${b}.jsonl`)}function K(a,b){return(0,e.join)(C(a),`terminal-output-${b}.txt`)}function L(a,b){let c=b?`terminal-env-${b}.json`:"terminal-env-global.json";return(0,e.join)(C(a),c)}function M(){return(0,e.join)(j,"terminal-aliases.json")}function N(){return(0,e.join)(j,"services.json")}function O(a){return(0,e.join)(C(a),"project-settings.json")}function P(a,b){return(0,e.join)(C(a),`terminal-bubble-order-${b}.json`)}function Q(a){return(0,e.join)(s,`${a}.json`)}function R(a,b){return(0,e.join)((0,e.join)(w,B(a)),`${b}.jsonl`)}function S(a,b){return(0,e.join)((0,e.join)(y,B(a)),`${b}.jsonl`)}function T(a,b){return(0,e.join)((0,e.join)(A,B(a)),`${b}.jsonl`)}function U(a,b){return(0,e.join)((0,e.join)(j,"ollama-sessions",B(a)),`${b}.jsonl`)}function V(a){let b=(0,e.join)(i,".codex","sessions");if(!(0,g.existsSync)(b))return null;try{let c=(0,h.execSync)(`find ${JSON.stringify(b)} -name "*${a}.jsonl" -type f 2>/dev/null`,{encoding:"utf8",timeout:3e3}).trim();if(c)return c.split("\n")[0]}catch{}return null}function W(a){let b=(0,e.join)(i,".kimi","sessions");if(!(0,g.existsSync)(b))return null;try{for(let c of(0,g.readdirSync)(b)){let d=(0,e.join)(b,c,a,"context.jsonl");if((0,g.existsSync)(d))return d}}catch{}return null}async function X(a){(0,g.existsSync)(a)||await (0,f.mkdir)(a,{recursive:!0})}async function Y(a){let b=(0,e.join)(a,"..");await X(b)}async function Z(a,b){try{let b=await (0,f.readFile)(a,"utf-8");return JSON.parse(b)}catch{return b}}async function $(a,b){await Y(a),await (0,f.writeFile)(a,JSON.stringify(b,null,2),"utf-8")}let _=globalThis,aa=_.__cockpitFileLocks??(_.__cockpitFileLocks=new Map);function ab(a,b){let c=(aa.get(a)??Promise.resolve()).then(b),d=c.then(()=>{},()=>{});return aa.set(a,d),d.then(()=>{aa.get(a)===d&&aa.delete(a)}),c}function ac(a,b,c){return ab(a,async()=>{let d=await Z(a,b),e=await c(d);return await $(a,e),e})}},25344:(a,b,c)=>{c.d(b,{BE:()=>l,IS:()=>v,KP:()=>r,ZT:()=>x,_0:()=>s,iU:()=>n,jH:()=>o,zC:()=>t});var d=c(31421),e=c(73024),f=c(76760),g=c.n(f),h=c(57975),i=c(28677);let j=(0,h.promisify)(d.exec),k=new Set([".git","node_modules"]),l=8e3;function m(a){let b=a.toLowerCase(),c=b.lastIndexOf(".");if(c<0)return!1;let d=b.slice(c);for(let a of(0,i.cn)())if(a.toLowerCase()===d)return!0;return!1}async function n(a){try{await j("git rev-parse --git-dir",{cwd:a})}catch{return null}let{stdout:b}=await j("git -c core.quotePath=false ls-files --cached --others --exclude-standard",{cwd:a,maxBuffer:0x3200000}),c=[];for(let a of b.split("\n")){let b=a.trim();if(b&&m(b.slice(b.lastIndexOf("/")+1))&&(c.push(b),c.length>=l))break}return c}async function o(a,b,c){let d;if(!(c.length>=l)){try{d=await e.promises.readdir(a,{withFileTypes:!0})}catch{return}for(let e of d){if(c.length>=l)return;if(k.has(e.name)||e.name.startsWith(".git"))continue;let d=g().join(a,e.name);e.isDirectory()?await o(d,b,c):e.isFile()&&m(e.name)&&c.push(g().relative(b,d))}}}let p=[".ts",".tsx",".js",".jsx",".mjs",".cjs"],q=[".js",".jsx",".mjs",".cjs"];function r(a,b,c){let d=g().relative(b,a);if(d.startsWith(".."))return null;for(let a of q)if(d.endsWith(a)){d=d.slice(0,-a.length);break}if(c.has(d))return d;for(let a of p){let b=d+a;if(c.has(b))return b}for(let a of p){let b=g().join(d,"index"+a);if(c.has(b))return b}return null}function s(a,b){return""===b||a===b||a.startsWith(b+"/")}async function t(a,b){let c=await u(a);if(0===c.length)return new Map;let d=[];try{let{stdout:b}=await j("git -c core.quotePath=false ls-files --cached --others --exclude-standard",{cwd:a,maxBuffer:0x3200000});d=b.split("\n").map(a=>a.trim()).filter(a=>a.endsWith("/package.json")&&!a.includes("node_modules/"))}catch{return new Map}let f=d.filter(a=>{let b=a.slice(0,-13);return c.some(a=>{var c;return c=b,RegExp("^"+a.replace(/\\/g,"/").replace(/[.+^${}()|[\]]/g,"\\$&").replace(/\*\*/g,"___DOUBLESTAR___").replace(/\*/g,"[^/]*").replace(/___DOUBLESTAR___/g,".*")+"$").test(c)})}),h=new Map;for(let c of f){let d;try{d=JSON.parse(await e.promises.readFile(g().join(a,c),"utf8"))}catch{continue}if("string"!=typeof d.name)continue;let f=g().dirname(c),i=function(a,b,c){let d,e=b=>{let d=b.replace(/^\.\//,"");return v(g().posix.join(a,d),c)},f=b.exports;if("string"==typeof f)d=f;else if(f&&"object"==typeof f&&f["."]){let a=f["."];"string"==typeof a?d=a:a&&"object"==typeof a&&(d=a.types??a.import??a.default??a.require)}if("string"==typeof d){let a=e(d);if(a)return a}if("string"==typeof b.main){let a=e(b.main);if(a)return a}for(let b of["src/index.ts","src/index.tsx","index.ts","index.tsx","src/index.js","index.js"])if(c.has(g().posix.join(a,b)))return g().posix.join(a,b);return null}(f,d,b);h.set(d.name,{name:d.name,dir:f,entryFile:i})}return h}async function u(a){try{var b=await e.promises.readFile(g().join(a,"pnpm-workspace.yaml"),"utf8");let c=[],d=!1;for(let a of b.split("\n")){let b=a.replace(/#.*$/,"");if(/^packages\s*:/.test(b)){d=!0;continue}if(!d)continue;let e=b.match(/^\s*-\s*['"]?([^'"#\s]+)['"]?\s*$/);e?c.push(e[1]):/^\S/.test(b)&&(d=!1)}return c}catch{}try{let b=JSON.parse(await e.promises.readFile(g().join(a,"package.json"),"utf8")),c=b?.workspaces;if(Array.isArray(c))return c.filter(a=>"string"==typeof a);if(c&&Array.isArray(c.packages))return c.packages.filter(a=>"string"==typeof a)}catch{}return[]}function v(a,b){if(a.startsWith("..")||a.startsWith("/"))return null;for(let b of q)if(a.endsWith(b)){a=a.slice(0,-b.length);break}if(b.has(a))return a;for(let c of p){let d=a+c;if(b.has(d))return d}for(let c of p){let d=g().posix.join(a,"index"+c);if(b.has(d))return d}return null}async function w(a,b){let c,d=new Map;try{let b=(await e.promises.readFile(a,"utf8")).replace(/^\s*\/\/.*$/gm,"");c=JSON.parse(b)}catch{return d}let f=c?.compilerOptions?.baseUrl??".",h=c?.compilerOptions?.paths??{},i=g().resolve(g().dirname(a),f),j=g().relative(b,i)||".";for(let[a,b]of Object.entries(h)){if(!Array.isArray(b)||0===b.length)continue;let c=a.replace(/\/\*$/,""),e=b[0].replace(/\/\*$/,"");d.set(c,g().join(j,e))}return d}async function x(a){let b=[],c=[];try{let{stdout:b}=await j("git -c core.quotePath=false ls-files --cached --others --exclude-standard",{cwd:a,maxBuffer:0x3200000});c=b.split("\n").map(a=>a.trim()).filter(a=>/(^|\/)tsconfig[^/]*\.json$/.test(a)&&!a.includes("node_modules/"))}catch{try{await e.promises.access(g().join(a,"tsconfig.json")),c=["tsconfig.json"]}catch{}}for(let d of c){let c=await w(g().join(a,d),a);if(0===c.size)continue;let e=g().dirname(d);b.push({scope:"."===e?"":e,aliases:c,sortedAliases:y(c)})}let d=b.find(a=>""===a.scope);return d||(d={scope:"",aliases:new Map,sortedAliases:[]},b.push(d)),d.aliases.has("@")||(d.aliases.set("@","./src"),d.sortedAliases=y(d.aliases)),b.sort((a,b)=>b.scope.length-a.scope.length)}function y(a){return[...a.entries()].sort(([a],[b])=>b.length-a.length)}},27485:(a,b,c)=>{c.d(b,{_:()=>e});let d=new Set(["function","class","method"]);function e(a){return d.has(a.kind)}},28677:(a,b,c)=>{c.d(b,{Bu:()=>f,cn:()=>g,ik:()=>e});let d=new Map;function e(a){d.set(a.grammarId,a)}function f(a){let b=d.get(a);if(!b)throw Error(`[codeMap] no handler registered for grammar '${a}' — did the handler module get imported (handlers/index.ts barrel)?`);return b}function g(){let a=new Set;for(let b of d.values())for(let c of b.extensions)a.add(c.toLowerCase());return[...a]}},33265:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{E:()=>G,J:()=>M,Mv:()=>L,Xn:()=>K,bQ:()=>I,cl:()=>w,ih:()=>t,s7:()=>F,u$:()=>v,xl:()=>B});var e=c(73024),f=c(76760),g=c.n(f),h=c(31421),i=c(57975),j=c(87956),k=c(86236),l=c(25344),m=c(27485),n=c(37765),o=a([j]);async function p(a,b,c){let d=Array(a.length),e=0;async function f(){for(;e<a.length;){let b=e++;d[b]=await c(a[b])}}return await Promise.all(Array.from({length:Math.min(b,a.length)},f)),d}j=(o.then?(await o)():o)[0];let N=/(['"`])([A-Za-z][A-Za-z0-9_.-]{2,63})\1/g;async function q(a,b){let c,d,f,g=(0,j.M)(b);if(!g)return null;try{[c,d]=await Promise.all([e.promises.readFile(a,"utf8"),e.promises.stat(a).then(a=>a.mtimeMs)])}catch{return null}if(c.length>1e6)return null;let h=await (0,j.b)(g);try{f=h.parse(c)}catch(a){return console.error("[codeIndex] parse failed for",b,a),null}if(!f)return null;try{let a,e=(0,n.Bu)(g),h=e.extractSymbols(f.rootNode,c),i=(a=[],!function c(d){for(let e of d)a.push({filePath:b,qualifiedName:e.qualifiedName,name:e.name,kind:e.kind,startLine:e.startLine,endLine:e.endLine,params:e.params}),c(e.children)}(h),a),{specs:j,bindings:k}=e.extractImports(f.rootNode),l=e.extractCallSites(f.rootNode,i),m=function(a,b){let c,d=[],e=new Set,f=[0];for(let b=0;b<a.length;b++)10===a.charCodeAt(b)&&f.push(b+1);for(N.lastIndex=0;null!==(c=N.exec(a))&&!(d.length>=500);){let a=c[2],g=function(a){let b=0,c=f.length-1;for(;b<c;){let d=b+c+1>>>1;f[d]<=a?b=d:c=d-1}return b+1}(c.index),h=`${a}\0${g}`;if(e.has(h))continue;e.add(h);let i=r(b,g);d.push({value:a,line:g,...i?{enclosingQname:i.qualifiedName}:{}})}return d}(c,i);return{path:b,language:g,mtime:d,symbolsTree:h,flatSymbols:i,importBindings:k,importSpecifiers:j,rawCalls:l,literals:m}}finally{f.delete()}}function r(a,b){let c=null;for(let d of a)d.startLine<=b&&b<=d.endLine&&(!c||d.endLine-d.startLine<c.endLine-c.startLine)&&(c=d);return c}async function s(a){let b=Date.now(),c=await (0,l.iU)(a);c||(c=[],await (0,l.jH)(a,a,c));let d=c.length>l.BE;d&&(c=c.slice(0,l.BE));let e=new Set(c),f=await (0,l.ZT)(a),h=await (0,l.zC)(a,e),i=new Map;for(let b of k.I){let c=(0,n.Bu)(b);i.set(b,await c.buildProjectContext(a,e))}let j=(await p(c,50,b=>q(g().join(a,b),b))).filter(a=>null!==a),m=new Map;for(let a of j){let b=(0,n.Bu)(a.language),c=i.get(a.language),d=new Map,f=new Set;for(let g of a.importSpecifiers){if(d.has(g))continue;let h=b.resolveSpecifier(g,a.path,c,e);h&&h!==a.path&&(d.set(g,h),f.add(h))}let g=new Map,h=new Map;for(let b of a.flatSymbols){h.set(b.qualifiedName,b);let a=g.get(b.name);a?a.push(b):g.set(b.name,[b])}let j=new Map,k=new Map;for(let b of a.importBindings)b.isReexport?k.set(b.localName,b):j.set(b.localName,b);m.set(a.path,{path:a.path,language:a.language,mtime:a.mtime,symbolsTree:a.symbolsTree,flatSymbols:a.flatSymbols,literals:a.literals,importedFiles:f,importedBy:new Set,importBindings:a.importBindings,resolvedImports:d,intraCalls:[],outgoingCalls:[],incomingCalls:[],externalCalls:[],methodCalls:[],symbolsByName:g,symbolsByQname:h,bindingsByLocalName:j,reexportsByLocalName:k})}for(let a of m.values())for(let b of a.importedFiles){let c=m.get(b);c&&c.importedBy.add(a.path)}for(let a of j){let b=m.get(a.path),c=(0,n.Bu)(a.language),d=i.get(a.language),e=new Map,f=new Map,g=new Map,h=new Map;for(let i of a.rawCalls){let a=r(b.flatSymbols,i.line);if(a){for(let j of c.resolveCall(i,a,b,m,d))if("symbol"===j.kind)if(j.addr.filePath===b.path){let c=`${a.qualifiedName}${j.addr.qualifiedName}`,d=e.get(c);if(d)d.lines.push(i.line);else{let d={from:a.qualifiedName,to:j.addr.qualifiedName,lines:[i.line]};e.set(c,d),b.intraCalls.push(d)}}else{let c=`${a.qualifiedName}${j.addr.filePath}${j.addr.qualifiedName}`,d=f.get(c);if(d)d.lines.push(i.line);else{let d={from:a.qualifiedName,to:{filePath:j.addr.filePath,qualifiedName:j.addr.qualifiedName},lines:[i.line]};f.set(c,d),b.outgoingCalls.push(d)}}else if("external"===j.kind){let c=`${a.qualifiedName}${j.packageSpec}${j.name}`,d=g.get(c);if(d)d.lines.push(i.line);else{let d={from:a.qualifiedName,packageSpec:j.packageSpec,importedName:j.name,lines:[i.line]};g.set(c,d),b.externalCalls.push(d)}}else if("method-unresolved"===j.kind){let c=b.bindingsByLocalName.get(j.receiverName),d=c?b.resolvedImports.get(c.specifier)??"":"",e=`${a.qualifiedName}${j.receiverName}${j.methodName}`,f=h.get(e);if(f)f.lines.push(i.line);else{let c={from:a.qualifiedName,receiverName:j.receiverName,methodName:j.methodName,receiverFilePath:d,lines:[i.line]};h.set(e,c),b.methodCalls.push(c)}}}}for(let a of b.intraCalls)a.lines.sort((a,b)=>a-b);for(let a of b.outgoingCalls)a.lines.sort((a,b)=>a-b);for(let a of b.externalCalls)a.lines.sort((a,b)=>a-b);for(let a of b.methodCalls)a.lines.sort((a,b)=>a-b)}for(let a of m.values())for(let b of a.outgoingCalls){let c=m.get(b.to.filePath);c&&c.incomingCalls.push({from:{filePath:a.path,qualifiedName:b.from},to:b.to.qualifiedName,lines:b.lines})}return{cwd:a,files:m,truncated:d,fileCountCap:d?l.BE:void 0,tsconfigs:f,workspaces:h,projectContexts:i,fileSet:e,generatedAt:Date.now(),buildMs:Date.now()-b}}let O=new Map,P=new Map,Q=new Set,R=new Set,S=null;function t(a){if(S=a,a)for(let b of R)a(b,()=>Q.add(b))}async function u(a,b){let c=Array.from(b.files.keys()),d=0,e=async()=>{for(;d<c.length;){let e=d++;try{await B(a,c[e],b)}catch{}}};await Promise.all(Array.from({length:Math.min(8,c.length)},e))}async function v(a,b={}){!R.has(a)&&(R.add(a),S&&S(a,()=>Q.add(a))),b.forceRefresh&&(O.delete(a),Q.delete(a));let d=O.get(a);if(d){if(Q.has(a)){Q.delete(a);try{await u(a,d)}catch{}}return d}let e=P.get(a);if(e)return e;let f=s(a).then(b=>(O.set(a,b),P.delete(a),Q.delete(a),Promise.all([c.e(4008),c.e(2540)]).then(c.bind(c,92540)).then(c=>c.precomputeAnalytics(a,b)).catch(a=>{console.error("[codeIndex] analytics precompute failed:",a)}),b));return P.set(a,f),f}function w(a){if(Promise.all([c.e(4008),c.e(2540)]).then(c.bind(c,92540)).then(b=>b.invalidateAnalytics(a)).catch(()=>{}),!a){O.clear(),P.clear(),Q.clear();return}O.delete(a),P.delete(a),Q.delete(a)}let T=(0,i.promisify)(h.exec);async function x(a,b){let c=!0;try{await T("git rev-parse --git-dir",{cwd:a})}catch{c=!1}if(!c)return!(b.startsWith(".git")||b.startsWith("node_modules/")||b.includes("/node_modules/"));try{return await T(`git -c core.quotePath=false ls-files --cached --others --exclude-standard --error-unmatch -- '${b.replace(/'/g,"'\\''")}'`,{cwd:a}),!0}catch{return!1}}function y(a){Promise.all([c.e(4008),c.e(2540)]).then(c.bind(c,92540)).then(b=>b.invalidateAnalytics(a)).catch(()=>{})}async function z(a,b,c){if(!(0,j.M)(b)||c.files.size>=l.BE||!await x(a,b))return!1;let d=await q(g().join(a,b),b);return!!d&&(c.fileSet.add(d.path),await A(d,null,c),y(a),!0)}async function A(a,b,c){let d=(0,n.Bu)(a.language),e=c.projectContexts.get(a.language),f=new Map,g=new Set;for(let b of a.importSpecifiers){if(f.has(b))continue;let h=d.resolveSpecifier(b,a.path,e,c.fileSet);h&&h!==a.path&&(f.set(b,h),g.add(h))}let h=new Map,i=new Map;for(let b of a.flatSymbols){i.set(b.qualifiedName,b);let a=h.get(b.name);a?a.push(b):h.set(b.name,[b])}let j=new Map,k=new Map;for(let b of a.importBindings)b.isReexport?k.set(b.localName,b):j.set(b.localName,b);let l={path:a.path,language:a.language,mtime:a.mtime,symbolsTree:a.symbolsTree,flatSymbols:a.flatSymbols,literals:a.literals,importedFiles:g,importedBy:b?.importedBy??new Set,importBindings:a.importBindings,resolvedImports:f,intraCalls:[],outgoingCalls:[],incomingCalls:b?.incomingCalls??[],externalCalls:[],methodCalls:[],symbolsByName:h,symbolsByQname:i,bindingsByLocalName:j,reexportsByLocalName:k},m=new Map,o=new Map,p=new Map,q=new Map;for(let b of(c.files.set(a.path,l),a.rawCalls)){let a=r(l.flatSymbols,b.line);if(a){for(let f of d.resolveCall(b,a,l,c.files,e))if("symbol"===f.kind)if(f.addr.filePath===l.path){let c=`${a.qualifiedName}${f.addr.qualifiedName}`,d=m.get(c);if(d)d.lines.push(b.line);else{let d={from:a.qualifiedName,to:f.addr.qualifiedName,lines:[b.line]};m.set(c,d),l.intraCalls.push(d)}}else{let c=`${a.qualifiedName}${f.addr.filePath}${f.addr.qualifiedName}`,d=o.get(c);if(d)d.lines.push(b.line);else{let d={from:a.qualifiedName,to:{filePath:f.addr.filePath,qualifiedName:f.addr.qualifiedName},lines:[b.line]};o.set(c,d),l.outgoingCalls.push(d)}}else if("external"===f.kind){let c=`${a.qualifiedName}${f.packageSpec}${f.name}`,d=p.get(c);if(d)d.lines.push(b.line);else{let d={from:a.qualifiedName,packageSpec:f.packageSpec,importedName:f.name,lines:[b.line]};p.set(c,d),l.externalCalls.push(d)}}else if("method-unresolved"===f.kind){let c=l.bindingsByLocalName.get(f.receiverName),d=c?l.resolvedImports.get(c.specifier)??"":"",e=`${a.qualifiedName}${f.receiverName}${f.methodName}`,g=q.get(e);if(g)g.lines.push(b.line);else{let c={from:a.qualifiedName,receiverName:f.receiverName,methodName:f.methodName,receiverFilePath:d,lines:[b.line]};q.set(e,c),l.methodCalls.push(c)}}}}for(let a of l.intraCalls)a.lines.sort((a,b)=>a-b);for(let a of l.outgoingCalls)a.lines.sort((a,b)=>a-b);for(let a of l.externalCalls)a.lines.sort((a,b)=>a-b);for(let a of l.methodCalls)a.lines.sort((a,b)=>a-b);return l}async function B(a,b,c){let d,f=c.files.get(b);if(!f)return z(a,b,c);try{d=(await e.promises.stat(g().join(a,b))).mtimeMs}catch{return!1}if(d===f.mtime)return!1;let h=await q(g().join(a,b),b);return!!h&&(await A(h,f,c),y(a),!0)}function C(a){return{filePath:a.filePath,qualifiedName:a.qualifiedName,name:a.name,kind:a.kind,startLine:a.startLine,endLine:a.endLine,params:a.params}}function D(a){let b=a.indexOf(">");return b>=0?a.slice(0,b):a}function E(a){if(a.length<2)return a;let b=[a[0]];for(let c=1;c<a.length;c++)a[c]!==a[c-1]&&b.push(a[c]);return b}function F(a,b){let c=a.files.get(b);if(!c)return null;let d=c.flatSymbols.filter(a=>!a.qualifiedName.includes(">")).map(C).sort((a,b)=>a.startLine-b.startLine),e=new Set(d.map(a=>a.qualifiedName)),f=new Map,g=[];for(let a of c.intraCalls){let b=D(a.from),c=D(a.to);if(b===c||!e.has(b)||!e.has(c))continue;let d=`${b}|${c}`,h=f.get(d);if(h)for(let b of a.lines)h.lines.push(b);else{let e={from:b,to:c,lines:a.lines.slice()};f.set(d,e),g.push(e)}}for(let a of g)a.lines.sort((a,b)=>a-b),a.lines=E(a.lines);let h=[],i=new Map;for(let b of c.outgoingCalls){let d=D(b.from);if(!e.has(d)||b.to.filePath===c.path)continue;let f=a.files.get(b.to.filePath);if(!f)continue;let g=f.symbolsByQname.get(b.to.qualifiedName);if(!g||!(0,m._)(g))continue;let j=`${g.filePath}|${g.qualifiedName}|${d}`,k=i.get(j);if(k)for(let a of b.lines)k.lines.push(a);else{let a={external:C(g),focalQname:d,lines:b.lines.slice()};i.set(j,a),h.push(a)}}let j=[],k=new Map;for(let b of c.incomingCalls){let d=D(b.to);if(!e.has(d)||b.from.filePath===c.path)continue;let f=a.files.get(b.from.filePath);if(!f)continue;let g=f.symbolsByQname.get(b.from.qualifiedName);if(!g||!(0,m._)(g))continue;let h=`${g.filePath}|${g.qualifiedName}|${d}`,i=k.get(h);if(i)for(let a of b.lines)i.lines.push(a);else{let a={external:C(g),focalQname:d,lines:b.lines.slice()};k.set(h,a),j.push(a)}}for(let a of h)a.lines.sort((a,b)=>a-b),a.lines=E(a.lines);for(let a of j)a.lines.sort((a,b)=>a-b),a.lines=E(a.lines);let l=[],n=new Map;for(let a of c.externalCalls){let b=D(a.from);if(!e.has(b))continue;let c=`${b}|${a.packageSpec}|${a.importedName}`,d=n.get(c);if(d)for(let b of a.lines)d.lines.push(b);else{let d={external:{name:a.importedName,packageSpec:a.packageSpec},focalQname:b,lines:a.lines.slice()};n.set(c,d),l.push(d)}}for(let a of l)a.lines.sort((a,b)=>a-b),a.lines=E(a.lines);let o=[],p=new Map;for(let a of c.methodCalls){let b=D(a.from);if(!e.has(b))continue;let c=`${b}|${a.receiverName}|${a.methodName}`,d=p.get(c);if(d)for(let b of a.lines)d.lines.push(b);else{let d={focalQname:b,receiverName:a.receiverName,methodName:a.methodName,receiverFilePath:a.receiverFilePath,lines:a.lines.slice()};p.set(c,d),o.push(d)}}for(let a of o)a.lines.sort((a,b)=>a-b),a.lines=E(a.lines);let q=(a,b)=>a.external.filePath.localeCompare(b.external.filePath)||a.external.qualifiedName.localeCompare(b.external.qualifiedName);return j.sort(q),h.sort(q),l.sort((a,b)=>a.external.packageSpec.localeCompare(b.external.packageSpec)||a.external.name.localeCompare(b.external.name)),o.sort((a,b)=>a.receiverName.localeCompare(b.receiverName)||a.methodName.localeCompare(b.methodName)),{filePath:c.path,language:c.language,fileCount:a.files.size,mtimeMs:c.mtime,functions:d,intraCalls:g,externalCalls:l,methodCalls:o,upstreamCalls:j,downstreamCalls:h}}function G(a,b){let c=a.files.get(b);return c?{filePath:c.path,language:c.language,symbols:function a(b){let c=[];for(let d of b)"unknown"!==d.kind&&c.push({...d,children:a(d.children)});return c}(c.symbolsTree)}:null}function H(a){let b="";for(let c=0;c<a.length;c++){let d=a.charCodeAt(c);95!==d&&45!==d&&46!==d&&32!==d&&(b+=d>=65&&d<=90?String.fromCharCode(d+32):a[c])}return b}function I(a,b,c,d={}){let e=b.trim();if(!e)return d.includeLiterals?{files:[],symbols:[],literals:[]}:{files:[],symbols:[]};let f=H(e),g=[];for(let b of a.files.values()){if(g.length>=c)break;H(b.path).includes(f)&&g.push({type:"file",label:function(a){let b=a.lastIndexOf("/");return b>=0?a.slice(b+1):a}(b.path),hint:b.path,target:{kind:"file",filePath:b.path}})}let h=[];for(let b of a.files.values()){let a=!1;if(!function a(b,c){for(let d of b)if(c(d)||a(d.children,c))return!0;return!1}(b.symbolsTree,d=>h.length>=c?(a=!0,!0):"unknown"!==d.kind&&(H(d.name).includes(f)&&h.push({type:"symbol",label:d.name,hint:`${d.kind} \xb7 ${b.path}`,target:{kind:"symbol",filePath:b.path,line:d.startLine,symbolName:d.name,symbolKind:d.kind,qualifiedName:d.qualifiedName}}),!1)),a)break}if(!d.includeLiterals)return{files:g,symbols:h};let i=[];a:for(let b of a.files.values())for(let a of b.literals){if(i.length>=c)break a;H(a.value).includes(f)&&i.push({type:"literal",value:a.value,filePath:b.path,line:a.line,...a.enclosingQname?{enclosingSymbol:a.enclosingQname}:{}})}return{files:g,symbols:h,literals:i}}function J(a,b,c){if(c){let d=a.files.get(c);return d&&d.symbolsByQname.has(b)?[d]:[]}let d=[];for(let c of a.files.values())c.symbolsByQname.has(b)&&d.push(c);return d}function K(a,b,c){let d=J(a,b,c);if(0===d.length)return{qname:b,target:null,callers:[]};let e=[],f=new Map;for(let c of d){for(let a of c.intraCalls){if(a.to!==b)continue;let d=c.symbolsByQname.get(a.from);if(!d)continue;let g=`${c.path}|${a.from}`,h=f.get(g);if(h)for(let b of a.lines)h.callLines.push(b);else{let b={caller:C(d),callLines:a.lines.slice()};f.set(g,b),e.push(b)}}for(let d of c.incomingCalls){if(d.to!==b)continue;let c=a.files.get(d.from.filePath),g=c?.symbolsByQname.get(d.from.qualifiedName);if(!g)continue;let h=`${d.from.filePath}|${d.from.qualifiedName}`,i=f.get(h);if(i)for(let a of d.lines)i.callLines.push(a);else{let a={caller:C(g),callLines:d.lines.slice()};f.set(h,a),e.push(a)}}}for(let a of e)a.callLines.sort((a,b)=>a-b),a.callLines=E(a.callLines);e.sort((a,b)=>a.caller.filePath.localeCompare(b.caller.filePath)||a.caller.qualifiedName.localeCompare(b.caller.qualifiedName));let g=C(d[0].symbolsByQname.get(b)),h=d.length>1?d.map(a=>a.path):void 0;return{qname:b,target:g,callers:e,ambiguousIn:h}}function L(a,b,c){let d=J(a,b,c);if(0===d.length)return{qname:b,source:null,callees:[]};let e=[],f=new Map;for(let c of d){for(let a of c.intraCalls){if(a.from!==b)continue;let d=c.symbolsByQname.get(a.to);if(!d)continue;let g=`${c.path}|${a.to}`,h=f.get(g);if(h)for(let b of a.lines)h.callLines.push(b);else{let b={callee:C(d),callLines:a.lines.slice()};f.set(g,b),e.push(b)}}for(let d of c.outgoingCalls){if(d.from!==b)continue;let c=a.files.get(d.to.filePath),g=c?.symbolsByQname.get(d.to.qualifiedName);if(!g)continue;let h=`${d.to.filePath}|${d.to.qualifiedName}`,i=f.get(h);if(i)for(let a of d.lines)i.callLines.push(a);else{let a={callee:C(g),callLines:d.lines.slice()};f.set(h,a),e.push(a)}}}for(let a of e)a.callLines.sort((a,b)=>a-b),a.callLines=E(a.callLines);e.sort((a,b)=>a.callee.filePath.localeCompare(b.callee.filePath)||a.callee.qualifiedName.localeCompare(b.callee.qualifiedName));let g=C(d[0].symbolsByQname.get(b)),h=d.length>1?d.map(a=>a.path):void 0;return{qname:b,source:g,callees:e,ambiguousIn:h}}function M(a,b,c,d){let e=J(a,b,d);if(0===e.length)return{qname:b,target:null,nodes:[],truncated:!1};let f=Math.min(Math.max(c,1),5),g=C(e[0].symbolsByQname.get(b)),h=e.length>1?e.map(a=>a.path):void 0,i=e.map(a=>({filePath:a.path,qname:b})),j=new Set(i.map(a=>`${a.filePath}|${a.qname}`)),k=i.map(b=>{let c=a.files.get(b.filePath).symbolsByQname.get(b.qname);return{symbol:C(c),depth:0}}),l=i.slice(),m=!1;for(let b=1;b<=f;b++){let c=[];for(let d of l){let e=a.files.get(d.filePath);if(e){for(let a of e.intraCalls){if(a.to!==d.qname)continue;let f=e.symbolsByQname.get(a.from);if(!f)continue;let g=`${e.path}|${a.from}`;if(!j.has(g)&&(j.add(g),k.push({symbol:C(f),depth:b}),c.push({filePath:e.path,qname:a.from}),k.length>=500)){m=!0;break}}if(m)break;for(let f of e.incomingCalls){if(f.to!==d.qname)continue;let e=a.files.get(f.from.filePath),g=e?.symbolsByQname.get(f.from.qualifiedName);if(!g)continue;let h=`${f.from.filePath}|${f.from.qualifiedName}`;if(!j.has(h)&&(j.add(h),k.push({symbol:C(g),depth:b}),c.push({filePath:f.from.filePath,qname:f.from.qualifiedName}),k.length>=500)){m=!0;break}}if(m)break}}if(m||0===c.length)break;l=c}return k.sort((a,b)=>a.depth-b.depth||a.symbol.filePath.localeCompare(b.symbol.filePath)||a.symbol.qualifiedName.localeCompare(b.symbol.qualifiedName)),{qname:b,target:g,nodes:k,truncated:m,ambiguousIn:h}}d()}catch(a){d(a)}})},37765:(a,b,c)=>{c.d(b,{Bu:()=>d.Bu});var d=c(28677),e=c(76760),f=c.n(e);function g(a){let b=0xdeadbeef,c=0x41c6ce57;for(let d=0;d<a.length;d++){let e=a.charCodeAt(d);b=Math.imul(b^e,0x9e3779b1),c=Math.imul(c^e,0x5f356495)}return b=Math.imul(b^b>>>16,0x85ebca6b)^Math.imul(c^c>>>13,0xc2b2ae35),(0x100000000*(2097151&(c=Math.imul(c^c>>>16,0x85ebca6b)^Math.imul(b^b>>>13,0xc2b2ae35)))+(b>>>0)>>>0).toString(16)}function h(a){return a.replace(/\s+/g," ").trim()}function i(a,b){return a?`${a}>${b}`:b}function j(a){let b=a.childForFieldName("name");if(b)return b.text;for(let b=0;b<a.namedChildCount;b++){let c=a.namedChild(b);if(c&&("identifier"===c.type||"type_identifier"===c.type||"property_identifier"===c.type))return c.text}return"<anonymous>"}function k(a,b,c,d,e=[],f){return{qualifiedName:i(d,b),name:b,kind:c,startLine:a.startPosition.row+1,endLine:a.endPosition.row+1,contentHash:g(h(a.text)),children:e,params:f}}function l(a){let b=a.childForFieldName("parameter");if(b)return[b.text];let c=a.childForFieldName("parameters");if(!c)return;let d=[];for(let a=0;a<c.namedChildCount;a++){let b=c.namedChild(a);b&&d.push(function a(b){switch(b.type){case"required_parameter":case"optional_parameter":{let c=b.childForFieldName("pattern");return c?a(c):b.text}case"assignment_pattern":{let c=b.childForFieldName("left");return c?a(c):b.text}case"default_parameter":case"typed_default_parameter":{let a=b.childForFieldName("name");return a?a.text:b.text}case"typed_parameter":for(let a=0;a<b.namedChildCount;a++){let c=b.namedChild(a);if(c?.type==="identifier")return c.text}return b.text;default:return b.text}}(b))}return d}function m(a,b){let c=a.text.split("\n"),d=c.length;if(0===d)return[];let e=new Uint8Array(d+2);for(let a of b){let b=Math.max(1,a.startLine),c=Math.min(d,a.endLine);for(let a=b;a<=c;a++)e[a]=1}let f=[],i=(a,b)=>{let d=!1;for(let e=a;e<=b;e++){let a=c[e-1];if(a&&a.trim().length>0){d=!0;break}}if(!d)return;let e=c.slice(a-1,b).join("\n");f.push({qualifiedName:`__code_${a}_${b}__`,name:"code",kind:"unknown",startLine:a,endLine:b,contentHash:g(h(e)),children:[]})},j=-1;for(let a=1;a<=d;a++)e[a]?j>=0&&(i(j,a-1),j=-1):j<0&&(j=a);return j>=0&&i(j,d),f}function n(a){let b=[],c=function(a){let b=[],c=-1,d=-1;for(let e=0;e<a.namedChildCount;e++){let f=a.namedChild(e);if(f){if("import_statement"===f.type||"export_statement"===f.type&&null!==f.childForFieldName("source")||"import_from_statement"===f.type||"future_import_statement"===f.type)b.push(f),c<0&&(c=f.startPosition.row+1),d=f.endPosition.row+1;else if(c>=0)break}}return c<0?null:{qualifiedName:"__imports__",name:"imports",kind:"unknown",startLine:c,endLine:d,contentHash:g(h(b.map(a=>a.text).join("\n"))),children:[]}}(a);c&&b.push(c);for(let c=0;c<a.namedChildCount;c++){let d=a.namedChild(c);d&&b.push(...function a(b,c,d=!1){switch(b.type){case"export_statement":case"export_default_declaration":{let d=[];for(let e=0;e<b.namedChildCount;e++){let f=b.namedChild(e);f&&d.push(...a(f,c,!0))}return d}case"function_declaration":case"generator_function_declaration":case"function_definition":return[k(b,j(b),"function",c,[],l(b))];case"class_declaration":case"abstract_class_declaration":{let a=j(b),d=i(c,a),e=function(a,b){if(!a)return[];let c=[];for(let d=0;d<a.namedChildCount;d++){let e=a.namedChild(d);if(e){if("method_definition"===e.type)c.push(k(e,j(e),"method",b,[],l(e)));else if("public_field_definition"===e.type){let a=e.childForFieldName("value");a&&("arrow_function"===a.type||"function_expression"===a.type)&&c.push(k(e,j(e),"method",b,[],l(a)))}}}return c}(b.childForFieldName("body"),d);return[k(b,a,"class",c,e)]}case"interface_declaration":return[k(b,j(b),"interface",c)];case"type_alias_declaration":return[k(b,j(b),"type",c)];case"enum_declaration":return[k(b,j(b),"enum",c)];case"lexical_declaration":case"variable_declaration":return function(a,b){let c=[];for(let d=0;d<a.namedChildCount;d++){let e=a.namedChild(d);if(!e||"variable_declarator"!==e.type)continue;let f=e.childForFieldName("name"),g=e.childForFieldName("value");if(!f)continue;let h=f.text,i=g&&("arrow_function"===g.type||"function_expression"===g.type),m=i&&g?l(g):void 0;if(c.push(k(a,h,i?"function":"const",b,[],m)),g&&"object"===g.type&&!i){let a=b?`${b}>${h}`:h;for(let b=0;b<g.namedChildCount;b++){let d=g.namedChild(b);if(d){if("pair"===d.type){let b=d.childForFieldName("key"),e=d.childForFieldName("value");if(!b||!e||"property_identifier"!==b.type&&"identifier"!==b.type||"arrow_function"!==e.type&&"function_expression"!==e.type)continue;c.push(k(d,b.text,"method",a,[],l(e)))}else if("method_definition"===d.type){let b=j(d);b&&c.push(k(d,b,"method",a,[],l(d)))}}}}}return c}(b,c);case"class_definition":{let a=j(b),d=i(c,a),e=function a(b,c){if(!b)return[];let d=[];for(let e=0;e<b.namedChildCount;e++){let f=b.namedChild(e);if(f){if("function_definition"===f.type)d.push(k(f,j(f),"method",c,[],l(f)));else if("decorated_definition"===f.type){let b=f.childForFieldName("definition");if(b?.type==="function_definition")d.push({...k(b,j(b),"method",c,[],l(b)),startLine:f.startPosition.row+1,contentHash:g(h(f.text))});else if(b?.type==="class_definition"){let e=j(b),l=i(c,e),m=a(b.childForFieldName("body"),l);d.push({...k(b,e,"class",c,m),startLine:f.startPosition.row+1,contentHash:g(h(f.text))})}}else if("class_definition"===f.type){let b=j(f),e=i(c,b),g=a(f.childForFieldName("body"),e);d.push(k(f,b,"class",c,g))}}}return d}(b.childForFieldName("body"),d);return[k(b,a,"class",c,e)]}case"decorated_definition":{let d=b.childForFieldName("definition");if(!d)return[];return a(d,c,!1).map(a=>({...a,startLine:b.startPosition.row+1,contentHash:g(h(b.text))}))}case"expression_statement":{let a=[];for(let d=0;d<b.namedChildCount;d++){let e=b.namedChild(d);if(e?.type==="assignment"){let d=function(a,b,c){let d=b.childForFieldName("left");if(!d||"identifier"!==d.type)return null;let e=d.text;return{qualifiedName:i(c,e),name:e,kind:"const",startLine:a.startPosition.row+1,endLine:a.endPosition.row+1,contentHash:g(h(a.text)),children:[]}}(b,e,c);d&&a.push(d)}}return a.push(...function(a,b){let c=null;for(let b=0;b<a.namedChildCount;b++){let d=a.namedChild(b);if(d){if("call_expression"===d.type){c=d;break}if("await_expression"===d.type){for(let a=0;a<d.namedChildCount;a++){let b=d.namedChild(a);if(b?.type==="call_expression"){c=b;break}}break}}}if(!c)return[];let d=c.childForFieldName("function"),e=c.childForFieldName("arguments");if(!d||!e)return[];let f=null,g=[];for(let a=0;a<e.namedChildCount;a++){let b=e.namedChild(a);if(b){if(null===f&&("string"===b.type||"template_string"===b.type)){let a=b.text;f=a.length>=2&&/^["'`]/.test(a)?a.slice(1,-1):a}("arrow_function"===b.type||"function_expression"===b.type)&&g.push(b)}}if(0===g.length||!f)return[];let h=function a(b){if("identifier"===b.type)return b.text;if("member_expression"===b.type){let a=b.childForFieldName("property");return a?.text??""}if("call_expression"===b.type){let c=b.childForFieldName("function");return c?a(c):""}return""}(d),i=h?`${h} ${f}`:f;return g.map((a,c)=>k(a,g.length>1?`${i} #${c+1}`:i,"function",b,[],l(a)))}(b,c)),a}default:return[]}}(d,void 0,!1))}return b.push(...m(a,b)),b}function o(a){let b=[];return!function a(c){if("call_expression"===c.type||"call"===c.type){let a=c.childForFieldName("function"),d=function a(b){if(!b)return null;if("identifier"===b.type||"shorthand_property_identifier"===b.type)return b.text;if("member_expression"===b.type){let a=b.childForFieldName("property");return a?.text??null}if("attribute"===b.type){let a=b.childForFieldName("attribute");return a?.text??null}return"call_expression"===b.type||"call"===b.type?a(b.childForFieldName("function")):null}(a);if(d){let e=function(a){if(!a||"member_expression"!==a.type&&"attribute"!==a.type)return;let b=a;for(;b;){if("identifier"===b.type)return b.text;if("this"===b.type||"super"===b.type)break;if("member_expression"===b.type||"attribute"===b.type){b=b.childForFieldName("object");continue}break}}(a);b.push({calleeName:d,line:c.startPosition.row+1,...e?{receiverName:e}:{}})}}else if("jsx_opening_element"===c.type||"jsx_self_closing_element"===c.type){let a=function a(b){return b?"identifier"===b.type?/^[A-Z]/.test(b.text)?b.text:null:"member_expression"===b.type||"jsx_member_expression"===b.type?a(b.childForFieldName("object")??b.namedChild(0)):null:null}(c.childForFieldName("name"));a&&b.push({calleeName:a,line:c.startPosition.row+1})}for(let b=0;b<c.childCount;b++){let d=c.child(b);d&&a(d)}}(a),b}function p(a){let b=[];for(let c=0;c<a.namedChildCount;c++){let d=a.namedChild(c);if(d)if("import_statement"===d.type){let a=d.childForFieldName("source");a?function(a,b,c){let d=q(b.text),e=null;for(let b=0;b<a.namedChildCount;b++){let c=a.namedChild(b);if(c?.type==="import_clause"){e=c;break}}if(e)for(let a=0;a<e.namedChildCount;a++){let b=e.namedChild(a);if(b){if("identifier"===b.type)c.push({specifier:d,importedName:"default",localName:b.text});else if("namespace_import"===b.type){let a=function(a,b){for(let c=0;c<a.namedChildCount;c++){let d=a.namedChild(c);if(d?.type===b)return d}return null}(b,"identifier");a&&c.push({specifier:d,importedName:"*",localName:a.text})}else if("named_imports"===b.type)for(let a=0;a<b.namedChildCount;a++){let e=b.namedChild(a);if(!e||"import_specifier"!==e.type)continue;let f=e.childForFieldName("name"),g=e.childForFieldName("alias");f&&c.push({specifier:d,importedName:f.text,localName:g?.text??f.text})}}}}(d,a,b):function(a,b){for(let c=0;c<a.childCount;c++){let d=a.child(c);if(d&&"name"===a.fieldNameForChild(c)){if("dotted_name"===d.type){let a=d.text,c=a.split(".")[0];b.push({specifier:a,importedName:"*",localName:c})}else if("aliased_import"===d.type){let a=d.childForFieldName("name"),c=d.childForFieldName("alias");a?.type==="dotted_name"&&c&&b.push({specifier:a.text,importedName:"*",localName:c.text})}}}}(d,b)}else"import_from_statement"===d.type&&function(a,b){let c=a.childForFieldName("module_name"),d="";if(c){if("dotted_name"===c.type)d=c.text;else if("relative_import"===c.type){let a="",b="";for(let d=0;d<c.namedChildCount;d++){let e=c.namedChild(d);e&&("import_prefix"===e.type?a=e.text:"dotted_name"===e.type&&(b=e.text))}d=a+b}}if(!d)return;let e=!1;for(let c=0;c<a.childCount;c++){let f=a.child(c);if(!f)continue;let g=a.fieldNameForChild(c);if("wildcard_import"===f.type){e=!0;continue}if("name"===g){if("dotted_name"===f.type){let a=f.text;b.push({specifier:d,importedName:a,localName:a})}else if("aliased_import"===f.type){let a=f.childForFieldName("name"),c=f.childForFieldName("alias");a?.type==="dotted_name"&&c&&b.push({specifier:d,importedName:a.text,localName:c.text})}}}e&&b.push({specifier:d,importedName:"*",localName:"*"})}(d,b)}return b}function q(a){return a.length>=2&&('"'===a[0]||"'"===a[0])&&a[a.length-1]===a[0]?a.slice(1,-1):a}function r(a){let b=[];function c(a){if(!a||"string"!==a.type)return null;for(let b=0;b<a.namedChildCount;b++){let c=a.namedChild(b);if(c&&"string_fragment"===c.type)return c.text}return""}return!function a(d){switch(d.type){case"import_statement":case"export_statement":{let a=c(d.childForFieldName("source"));a&&b.push(a);return}case"call_expression":{let a=d.childForFieldName("function");if(a){let e="import"===a.type,f="identifier"===a.type&&"require"===a.text;if(e||f){let a=d.childForFieldName("arguments");if(a&&a.namedChildCount>0){let d=c(a.namedChild(0));d&&b.push(d)}}}}}for(let b=0;b<d.namedChildCount;b++){let c=d.namedChild(b);c&&a(c)}}(a),b}let s={typescript:r,tsx:r,javascript:r,python:function(a){let b=[];return!function a(c){switch(c.type){case"import_statement":for(let a=0;a<c.childCount;a++){let d=c.child(a);if(d&&"name"===c.fieldNameForChild(a)){if("dotted_name"===d.type)b.push(d.text);else if("aliased_import"===d.type){let a=d.childForFieldName("name");a?.type==="dotted_name"&&b.push(a.text)}}}return;case"import_from_statement":{let a=function(a){let b=a.childForFieldName("module_name");if(!b)return"";if("dotted_name"===b.type)return b.text;if("relative_import"===b.type){let a="",c="";for(let d=0;d<b.namedChildCount;d++){let e=b.namedChild(d);e&&("import_prefix"===e.type?a=e.text:"dotted_name"===e.type&&(c=e.text))}return a+c}return""}(c);a&&b.push(a);return}}for(let b=0;b<c.namedChildCount;b++){let d=c.namedChild(b);d&&a(d)}}(a),b}};function t(a,b){let c=s[b];return c?c(a):[]}var u=c(25344);function v(a){return"function"===a||"class"===a||"method"===a}function w(a,b){return{grammarId:a,extensions:b,extractSymbols:(a,b)=>n(a),extractImports:b=>({specs:t(b,a),bindings:[...p(b),...function(a){let b=[];for(let c=0;c<a.namedChildCount;c++){let d=a.namedChild(c);if(!d||"export_statement"!==d.type)continue;let e=d.childForFieldName("source");if(!e)continue;let f=q(e.text),g=null;for(let a=0;a<d.namedChildCount;a++){let b=d.namedChild(a);if(b?.type==="export_clause"){g=b;break}}if(g)for(let a=0;a<g.namedChildCount;a++){let c=g.namedChild(a);if(!c||"export_specifier"!==c.type)continue;let d=c.childForFieldName("name"),e=c.childForFieldName("alias");if(!d)continue;let h=d.text,i=e?.text??h;b.push({localName:i,specifier:f,importedName:h,isReexport:!0})}}return b}(b)]}),extractCallSites:(a,b)=>o(a),async buildProjectContext(a,b){let c=new Set(b),d=await (0,u.ZT)(a),e=await (0,u.zC)(a,c),f=[...e.keys()].sort((a,b)=>b.length-a.length);return{cwd:a,tsconfigs:d,workspaces:e,sortedWsNames:f,owningScopesCache:new Map}},resolveSpecifier(a,b,c,d){let e=c.owningScopesCache.get(b);if(e||(e=c.tsconfigs.filter(a=>(0,u._0)(b,a.scope)),c.owningScopesCache.set(b,e)),a.startsWith("./")||a.startsWith("../"))return(0,u.KP)(f().resolve(c.cwd,f().dirname(b),a),c.cwd,d);if(a.startsWith("/"))return(0,u.KP)(f().resolve(c.cwd,a.slice(1)),c.cwd,d);for(let b of e){let e=b.sortedAliases.find(([b])=>a===b||a.startsWith(b+"/"));if(!e)continue;let[g,h]=e,i=a===g?"":a.slice(g.length+1),j=(0,u.KP)(f().resolve(c.cwd,h,i),c.cwd,d);if(j)return j}for(let b of c.sortedWsNames){if(a!==b&&!a.startsWith(b+"/"))continue;let e=c.workspaces.get(b);if(a===b)return e.entryFile;let g=a.slice(b.length+1);return(0,u.IS)(f().posix.join(e.dir,g),d)??(0,u.IS)(f().posix.join(e.dir,"src",g),d)}return null},resolveCall(a,b,c,d,e){if(a.receiverName){let b=c.bindingsByLocalName.get(a.receiverName);if(!b)return[];let e=c.resolvedImports.get(b.specifier);if(!e)return[];let f=d.get(e);if(!f)return[];let g=function a(b,c,d,e,f,g){if(e>5||f.has(b.path))return null;if(f.add(b.path),"*"!==c){let a=`${c}>${d}`,e=b.symbolsByQname.get(a);if(e&&v(e.kind))return e}if("*"===c){let a=b.symbolsByName.get(d);if(a){let b=null;for(let c of a)!c.qualifiedName.includes(">")&&v(c.kind)&&(!b||c.endLine-c.startLine>b.endLine-b.startLine)&&(b=c);if(b)return b}}let h=b.reexportsByLocalName.get(c);if(h){let c=b.resolvedImports.get(h.specifier);if(c){let b=g.get(c);if(b){let c=a(b,h.importedName,d,e+1,f,g);if(c)return c}}}return null}(f,b.importedName,a.calleeName,0,new Set,d);return g?[{kind:"symbol",addr:{filePath:g.filePath,qualifiedName:g.qualifiedName}}]:[{kind:"method-unresolved",receiverName:a.receiverName,methodName:a.calleeName}]}let f=c.symbolsByName.get(a.calleeName);if(f&&f.length>0){let a=[];for(let c of f)c.qualifiedName!==b.qualifiedName&&v(c.kind)&&a.push({kind:"symbol",addr:{filePath:c.filePath,qualifiedName:c.qualifiedName}});return a}let g=c.bindingsByLocalName.get(a.calleeName);if(!g)return[];let h=c.resolvedImports.get(g.specifier);if(!h)return[{kind:"external",name:g.importedName,packageSpec:g.specifier}];let i=d.get(h);if(!i)return[];let j=function a(b,c,d,e,f){if(d>5||e.has(b.path))return null;e.add(b.path);let g=b.symbolsByName.get(c);if(g){let a=null;for(let b of g)v(b.kind)&&(!a||b.endLine-b.startLine>a.endLine-a.startLine)&&(a=b);if(a)return a}let h=b.reexportsByLocalName.get(c);if(h){let c=b.resolvedImports.get(h.specifier);if(c){let b=f.get(c);if(b){let c=a(b,h.importedName,d+1,e,f);if(c)return c}}}return null}(i,g.importedName,0,new Set,d);return j?[{kind:"symbol",addr:{filePath:j.filePath,qualifiedName:j.qualifiedName}}]:[]},moduleForFile:(a,b)=>a}}let x=w("typescript",[".ts"]),y=w("tsx",[".tsx",".jsx"]),z=w("javascript",[".js",".mjs",".cjs"]);function A(a){return"function"===a||"class"===a||"method"===a}function B(a,b,c){let d=b.replace(/\./g,"/"),e=(...a)=>a.filter(a=>""!==a&&"."!==a).join("/");if(!d){let b=e(a,"__init__.py");return c.has(b)?b:null}let f=e(a,d+".py");if(c.has(f))return f;let g=e(a,d,"__init__.py");return c.has(g)?g:null}var C=c(73024);function D(a,b,c,d,e=[],f){return{qualifiedName:d?`${d}>${b}`:b,name:b,kind:c,startLine:a.startPosition.row+1,endLine:a.endPosition.row+1,contentHash:g(h(a.text)),children:e,params:f}}function E(a){let b=a.childForFieldName("parameters");if(!b)return;let c=[];for(let a=0;a<b.namedChildCount;a++){let d=b.namedChild(a);if(d){if("parameter_declaration"===d.type){let a=d.childForFieldName("name");if(!a){c.push("_");continue}if("identifier"===a.type)c.push(a.text);else if("identifier_list"===a.type)for(let b=0;b<a.namedChildCount;b++){let d=a.namedChild(b);d?.type==="identifier"&&c.push(d.text)}else c.push(a.text)}else if("variadic_parameter_declaration"===d.type){let a=d.childForFieldName("name");a?.type==="identifier"?c.push(`...${a.text}`):c.push("...")}}}return c}async function F(a){try{let b=await C.promises.readFile(f().join(a,"go.mod"),"utf8"),c=/^\s*module\s+(\S+)/m.exec(b);return c?c[1].trim():null}catch{return null}}function G(a){return"function"===a||"class"===a||"method"===a}function H(a,b,c,d,e=[],f){return{qualifiedName:d?`${d}>${b}`:b,name:b,kind:c,startLine:a.startPosition.row+1,endLine:a.endPosition.row+1,contentHash:g(h(a.text)),children:e,params:f}}function I(a){let b=a.childForFieldName("parameters");if(!b)return;let c=[];for(let a=0;a<b.namedChildCount;a++){let d=b.namedChild(a);if(d)if("self_parameter"===d.type)c.push(d.text);else if("parameter"===d.type){let a=d.childForFieldName("pattern");a?c.push(a.text):c.push("_")}else"variadic_parameter"===d.type&&c.push("...")}return c}async function J(a,b){let c=new Map,d=new Map,e=new Set;async function g(h,i){let j;if(e.has(i))return;e.add(i),c.set(h,i),d.set(i,h);try{j=await C.promises.readFile(f().join(a,i),"utf8")}catch{return}let k=function(a){let b,c=a.replace(/\/\*[\s\S]*?\*\//g,"").replace(/\/\/.*$/gm,"").replace(/"(?:\\.|[^"\\\n])*"/g,'""'),d=[],e=/\b(?:pub(?:\s*\([^)]*\))?\s+)?mod\s+(\w+)\s*;/g;for(;null!==(b=e.exec(c));)d.push(b[1]);return d}(j);if(0===k.length)return;let l=f().dirname(i),m=f().basename(i,".rs"),n="mod"===m||"lib"===m||"main"===m?[l]:[l,f().join(l,m)];for(let a of k){let c=`${h}::${a}`,d=null;for(let c of n){for(let e of[f().join(c,`${a}.rs`),f().join(c,a,"mod.rs")]){let a=e.startsWith("./")?e.slice(2):e;if(b.has(a)){d=a;break}}if(d)break}d&&await g(c,d)}}for(let a of function(a){let b=[];for(let c of a)("src/lib.rs"===c||"src/main.rs"===c||c.endsWith("/src/lib.rs")||c.endsWith("/src/main.rs")||/^src\/bin\/[^/]+\.rs$/.test(c)||/\/src\/bin\/[^/]+\.rs$/.test(c))&&b.push(c);return b}(b))if("src/lib.rs"===a||"src/main.rs"===a)await g("crate",a);else if(a.startsWith("src/bin/"))await g("crate",a);else{let b=a.split("/"),c=b.indexOf("src");if(c>0){let d=b[c-1];await g(d,a)}}return{modTree:c,fileToMod:d}}function K(a){return"function"===a||"class"===a||"method"===a}(0,d.ik)(x),(0,d.ik)(y),(0,d.ik)(z),(0,d.ik)({grammarId:"python",extensions:[".py",".pyi"],extractSymbols:(a,b)=>n(a),extractImports:a=>({specs:t(a,"python"),bindings:p(a)}),extractCallSites:(a,b)=>o(a),buildProjectContext(a,b){let c=[a],d=!1;if(b.has("src/__init__.py"))d=!0;else for(let a of b)if(a.startsWith("src/")&&a.endsWith(".py")){d=!0;break}return d&&c.push(f().join(a,"src")),{cwd:a,pythonRoots:c}},resolveSpecifier(a,b,c,d){let e=/^(\.+)/.exec(a);if(e){let c=e[1].length,g=a.slice(c),h=f().dirname(b);for(let a=1;a<c;a++)h=f().dirname(h);return B(h||".",g,d)}for(let b of c.pythonRoots){let e=B(f().relative(c.cwd,b)||".",a,d);if(e)return e}return null},resolveCall(a,b,c,d,e){if(a.receiverName){let b=c.bindingsByLocalName.get(a.receiverName);if(!b)return[];let e=c.resolvedImports.get(b.specifier);if(!e)return[];let f=d.get(e);if(!f)return[];let g=function(a,b,c){if("*"!==b){let d=`${b}>${c}`,e=a.symbolsByQname.get(d);if(e&&A(e.kind))return e}if("*"===b){let b=a.symbolsByName.get(c);if(b){let a=null;for(let c of b)!c.qualifiedName.includes(">")&&A(c.kind)&&(!a||c.endLine-c.startLine>a.endLine-a.startLine)&&(a=c);if(a)return a}}return null}(f,b.importedName,a.calleeName);return g?[{kind:"symbol",addr:{filePath:g.filePath,qualifiedName:g.qualifiedName}}]:[{kind:"method-unresolved",receiverName:a.receiverName,methodName:a.calleeName}]}let f=c.symbolsByName.get(a.calleeName);if(f&&f.length>0){let a=[];for(let c of f)c.qualifiedName!==b.qualifiedName&&A(c.kind)&&a.push({kind:"symbol",addr:{filePath:c.filePath,qualifiedName:c.qualifiedName}});return a}let g=c.bindingsByLocalName.get(a.calleeName);if(!g)return[];let h=c.resolvedImports.get(g.specifier);if(!h)return[{kind:"external",name:g.importedName,packageSpec:g.specifier}];let i=d.get(h);if(!i)return[];let j=function(a,b){let c=a.symbolsByName.get(b);if(!c)return null;let d=null;for(let a of c)A(a.kind)&&(!d||a.endLine-a.startLine>d.endLine-d.startLine)&&(d=a);return d}(i,g.importedName);return j?[{kind:"symbol",addr:{filePath:j.filePath,qualifiedName:j.qualifiedName}}]:[]},moduleForFile:(a,b)=>a}),(0,d.ik)({grammarId:"go",extensions:[".go"],extractSymbols(a,b){let c=[],d=function(a){let b=[],c=-1,d=-1;for(let e=0;e<a.namedChildCount;e++){let f=a.namedChild(e);if(f){if("import_declaration"===f.type)b.push(f),c<0&&(c=f.startPosition.row+1),d=f.endPosition.row+1;else if("package_clause"===f.type)continue;else if(c>=0)break}}return c<0?null:{qualifiedName:"__imports__",name:"imports",kind:"unknown",startLine:c,endLine:d,contentHash:g(h(b.map(a=>a.text).join("\n"))),children:[]}}(a);d&&c.push(d);let{symbols:e,pendingMethods:f}=function(a){let b=[],c=[];for(let d=0;d<a.namedChildCount;d++){let e=a.namedChild(d);if(e)switch(e.type){case"function_declaration":{let a=e.childForFieldName("name");if(!a)break;b.push(D(e,a.text,"function",void 0,[],E(e)));break}case"method_declaration":{let a=e.childForFieldName("name");if(!a)break;let d=function(a){let b=a.childForFieldName("receiver");if(!b)return null;for(let a=0;a<b.namedChildCount;a++){let c=b.namedChild(a);if(c?.type!=="parameter_declaration")continue;let d=c.childForFieldName("type");if(!d)break;return function a(b){if("type_identifier"===b.type)return b.text;if("pointer_type"===b.type){for(let c=0;c<b.namedChildCount;c++){let d=b.namedChild(c);if(d){let b=a(d);if(b)return b}}return null}if("generic_type"===b.type){let c=b.childForFieldName("type");if(c)return a(c)}return null}(d)}return null}(e),f=D(e,a.text,"method",d??void 0,[],E(e));d?c.push({receiverType:d,symbol:f}):b.push(f);break}case"type_declaration":b.push(...function(a,b){let c=[];for(let d=0;d<a.namedChildCount;d++){let e=a.namedChild(d);if(e&&("type_spec"===e.type||"type_alias"===e.type)){let a=e.childForFieldName("name"),d=e.childForFieldName("type");if(!a)continue;let f=a.text,g=d?.type==="interface_type"?"interface":"class";c.push(D(e,f,g,b))}}return c}(e,void 0));break;case"var_declaration":case"const_declaration":b.push(...function(a,b){let c=[];for(let d=0;d<a.namedChildCount;d++){let e=a.namedChild(d);if(e&&("var_spec"===e.type||"const_spec"===e.type)){let a=e.childForFieldName("name");if(!a)continue;if("identifier_list"===a.type)for(let d=0;d<a.namedChildCount;d++){let f=a.namedChild(d);f?.type==="identifier"&&c.push(D(e,f.text,"const",b))}else"identifier"===a.type&&c.push(D(e,a.text,"const",b))}}return c}(e,void 0))}}return{symbols:b,pendingMethods:c}}(a);return c.push(...function(a,b){if(0===b.length)return a;let c=new Map;for(let b of a)("class"===b.kind||"interface"===b.kind)&&c.set(b.name,b);let d=[];for(let a of b){let b=c.get(a.receiverType);b?b.children=[...b.children,a.symbol]:d.push(a.symbol)}return[...a,...d]}(e,f)),c.push(...m(a,c)),c},extractImports:a=>(function(a){let b=[],c=[];function d(a){var d;let e,f=a.childForFieldName("path");if(!f)return;let g=(d=f.text).length>=2&&('"'===d[0]||"'"===d[0]||"`"===d[0])&&d[d.length-1]===d[0]?d.slice(1,-1):d;if(!g)return;b.push(g);let h=a.childForFieldName("name");if(h)e=h.text;else{let a=g.split("/");e=a[a.length-1]||g}c.push({specifier:g,importedName:"*",localName:e})}return!function a(b){if("import_declaration"===b.type){for(let a=0;a<b.namedChildCount;a++){let c=b.namedChild(a);if(c){if("import_spec"===c.type)d(c);else if("import_spec_list"===c.type)for(let a=0;a<c.namedChildCount;a++){let b=c.namedChild(a);b?.type==="import_spec"&&d(b)}}}return}for(let c=0;c<b.namedChildCount;c++){let d=b.namedChild(c);d&&a(d)}}(a),{specs:b,bindings:c}})(a),extractCallSites:(a,b)=>{let c;return c=[],!function a(b){if("call_expression"===b.type){let a=b.childForFieldName("function"),d=function a(b){if(!b)return null;if("identifier"===b.type)return b.text;if("selector_expression"===b.type){let a=b.childForFieldName("field");return a?.text??null}return"call_expression"===b.type?a(b.childForFieldName("function")):null}(a);if(d){let e=function(a){if(!a||"selector_expression"!==a.type)return;let b=a;for(;b;){if("identifier"===b.type)return b.text;if("selector_expression"===b.type){b=b.childForFieldName("operand");continue}break}}(a);c.push({calleeName:d,line:b.startPosition.row+1,...e?{receiverName:e}:{}})}}for(let c=0;c<b.childCount;c++){let d=b.child(c);d&&a(d)}}(a),c},async buildProjectContext(a,b){let c=await F(a);return{cwd:a,modulePath:c,dirToGoFiles:function(a){let b=new Map;for(let c of a){if(!c.endsWith(".go"))continue;let a=f().dirname(c),d=b.get(a);d?d.push(c):b.set(a,[c])}return b}(b)}},resolveSpecifier(a,b,c,d){if(!c.modulePath)return null;if(a===c.modulePath){let a=c.dirToGoFiles.get(".");return a?.[0]??null}if(a.startsWith(c.modulePath+"/")){let b=a.slice(c.modulePath.length+1),d=c.dirToGoFiles.get(b);return d?.[0]??null}return null},resolveCall(a,b,c,d,e){let g=f().dirname(c.path),h=e.dirToGoFiles.get(g)??[c.path];if(a.receiverName){let b=c.bindingsByLocalName.get(a.receiverName);if(b){let g=c.resolvedImports.get(b.specifier);if(!g)return[{kind:"external",name:a.calleeName,packageSpec:b.specifier}];let h=f().dirname(g);for(let b of e.dirToGoFiles.get(h)??[]){let c,e=d.get(b);if(!e)continue;let f=e.symbolsByName.get(a.calleeName);if(f){for(let a of f)if(!a.qualifiedName.includes(">")&&G(a.kind)){c=a;break}if(c)return[{kind:"symbol",addr:{filePath:c.filePath,qualifiedName:c.qualifiedName}}]}}return[{kind:"external",name:a.calleeName,packageSpec:b.specifier}]}let g=`${a.receiverName}>${a.calleeName}`;for(let a of h){let b=d.get(a);if(!b)continue;let c=b.symbolsByQname.get(g);if(c&&G(c.kind))return[{kind:"symbol",addr:{filePath:c.filePath,qualifiedName:c.qualifiedName}}]}return[{kind:"method-unresolved",receiverName:a.receiverName,methodName:a.calleeName}]}let i=[];for(let c of h){let e=d.get(c);if(!e)continue;let f=e.symbolsByName.get(a.calleeName);if(f)for(let a of f)!(a.qualifiedName===b.qualifiedName||a.qualifiedName.includes(">"))&&G(a.kind)&&i.push({kind:"symbol",addr:{filePath:a.filePath,qualifiedName:a.qualifiedName}})}return i},moduleForFile(a,b){let c=f().dirname(a);return b?.modulePath?"."===c?b.modulePath:`${b.modulePath}/${c}`:c}}),(0,d.ik)({grammarId:"rust",extensions:[".rs"],extractSymbols(a,b){let c=[],d=function(a){let b=[],c=-1,d=-1;for(let e=0;e<a.namedChildCount;e++){let f=a.namedChild(e);if(f){if("use_declaration"===f.type||"extern_crate_declaration"===f.type)b.push(f),c<0&&(c=f.startPosition.row+1),d=f.endPosition.row+1;else if(c>=0)break}}return c<0?null:{qualifiedName:"__imports__",name:"imports",kind:"unknown",startLine:c,endLine:d,contentHash:g(h(b.map(a=>a.text).join("\n"))),children:[]}}(a);d&&c.push(d);let{symbols:e,pendingImpls:f}=function(a){let b=[],c=[];for(let d=0;d<a.namedChildCount;d++){let e=a.namedChild(d);if(e)switch(e.type){case"function_item":{let a=e.childForFieldName("name");if(!a)break;b.push(H(e,a.text,"function",void 0,[],I(e)));break}case"struct_item":case"union_item":{let a=e.childForFieldName("name");if(!a)break;b.push(H(e,a.text,"class",void 0));break}case"enum_item":{let a=e.childForFieldName("name");if(!a)break;b.push(H(e,a.text,"enum",void 0));break}case"trait_item":{let a=e.childForFieldName("name");if(!a)break;let c=function(a,b){let c=a.childForFieldName("body");if(!c)return[];let d=[];for(let a=0;a<c.namedChildCount;a++){let e=c.namedChild(a);if(e&&("function_item"===e.type||"function_signature_item"===e.type)){let a=e.childForFieldName("name");if(!a)continue;d.push(H(e,a.text,"method",b,[],I(e)))}}return d}(e,a.text);b.push(H(e,a.text,"interface",void 0,c));break}case"impl_item":{let a=function(a){let b=a.childForFieldName("type");return b?function a(b){if("type_identifier"===b.type)return b.text;if("generic_type"===b.type){let c=b.childForFieldName("type");if(c)return a(c)}if("reference_type"===b.type)for(let c=0;c<b.namedChildCount;c++){let d=b.namedChild(c);if(d){let b=a(d);if(b)return b}}if("scoped_type_identifier"===b.type){let a=b.childForFieldName("name");if(a?.type==="type_identifier")return a.text}return null}(b):null}(e);if(!a)break;let b=function(a,b){let c=a.childForFieldName("body");if(!c)return[];let d=[];for(let a=0;a<c.namedChildCount;a++){let e=c.namedChild(a);if(e){if("function_item"===e.type){let a=e.childForFieldName("name");if(!a)continue;d.push(H(e,a.text,"method",b,[],I(e)))}else if("function_signature_item"===e.type){let a=e.childForFieldName("name");if(!a)continue;d.push(H(e,a.text,"method",b,[],I(e)))}}}return d}(e,a);b.length>0&&c.push({targetType:a,methods:b});break}case"const_item":case"static_item":{let a=e.childForFieldName("name");if(!a)break;b.push(H(e,a.text,"const",void 0));break}case"type_item":{let a=e.childForFieldName("name");if(!a)break;b.push(H(e,a.text,"type",void 0));break}case"mod_item":{let a=e.childForFieldName("name"),c=e.childForFieldName("body");if(!a||!c)break;b.push(H(e,a.text,"class",void 0))}}}return{symbols:b,pendingImpls:c}}(a);return c.push(...function(a,b){if(0===b.length)return a;let c=new Map;for(let b of a)("class"===b.kind||"enum"===b.kind||"interface"===b.kind)&&c.set(b.name,b);let d=[];for(let a of b){let b=c.get(a.targetType);b?b.children=[...b.children,...a.methods]:d.push(...a.methods)}return[...a,...d]}(e,f)),c.push(...m(a,c)),c},extractImports:a=>(function(a){let b=[],c=[];function d(a){if("identifier"===a.type||"crate"===a.type||"self"===a.type||"super"===a.type)return a.text;if("scoped_identifier"===a.type){let b=a.childForFieldName("path"),c=a.childForFieldName("name"),e=b?d(b):"",f=c?.text??"";return e?`${e}::${f}`:f}return a.text}function e(a,b){return a?b?`${a}::${b}`:a:b}function f(a){let b=a.split("::");return b[b.length-1]??a}return!function a(g){if("use_declaration"===g.type)return void function(a){for(let g=0;g<a.namedChildCount;g++){let h=a.namedChild(g);h&&function a(g,h){switch(g.type){case"use_as_clause":{let a=g.childForFieldName("path"),i=g.childForFieldName("alias");if(a&&i){let g=e(h,d(a));b.push(g),c.push({specifier:g,importedName:f(g),localName:i.text})}break}case"use_list":for(let b=0;b<g.namedChildCount;b++){let c=g.namedChild(b);c&&a(c,h)}break;case"scoped_use_list":{let b=g.childForFieldName("path"),c=g.childForFieldName("list"),f=b?e(h,d(b)):h;if(c)for(let b=0;b<c.namedChildCount;b++){let d=c.namedChild(b);d&&a(d,f)}break}case"use_wildcard":{let a=g.childForFieldName("path"),f=a?e(h,d(a)):h;f&&(b.push(f),c.push({specifier:f,importedName:"*",localName:"*"}));break}case"identifier":case"self":case"super":case"crate":case"scoped_identifier":{let a=e(h,d(g));a&&(b.push(a),c.push({specifier:a,importedName:f(a),localName:f(a)}))}}}(h,"")}}(g);if("extern_crate_declaration"===g.type){let a=g.childForFieldName("name");a&&(b.push(a.text),c.push({specifier:a.text,importedName:"*",localName:a.text}));return}if("mod_item"===g.type){let a=g.childForFieldName("body"),c=g.childForFieldName("name");!a&&c&&b.push(c.text);return}for(let b=0;b<g.namedChildCount;b++){let c=g.namedChild(b);c&&a(c)}}(a),{specs:b,bindings:c}})(a),extractCallSites:(a,b)=>{let c;return c=[],!function a(b){if("call_expression"===b.type){let a=b.childForFieldName("function"),d=function(a){if(!a)return null;if("identifier"===a.type)return a.text;if("scoped_identifier"===a.type){let b=a.childForFieldName("name");return b?.text??null}if("field_expression"===a.type){let b=a.childForFieldName("field");return b?.text??null}return null}(a);if(d){let e=function(a){if(a){if("scoped_identifier"===a.type){let b=a;for(;b;){if("identifier"===b.type)return b.text;if("scoped_identifier"===b.type){b=b.childForFieldName("path");continue}break}}if("field_expression"===a.type){let b=a.childForFieldName("value");if(b?.type==="identifier")return b.text}}}(a);c.push({calleeName:d,line:b.startPosition.row+1,...e?{receiverName:e}:{}})}}else if("method_call_expression"===b.type){let a=b.childForFieldName("method"),d=b.childForFieldName("value");if(a){let e=d?.type==="identifier"?d.text:void 0;c.push({calleeName:a.text,line:b.startPosition.row+1,...e?{receiverName:e}:{}})}}for(let c=0;c<b.childCount;c++){let d=b.child(c);d&&a(d)}}(a),c},async buildProjectContext(a,b){let{modTree:c,fileToMod:d}=await J(a,b);return{cwd:a,modTree:c,fileToMod:d}},resolveSpecifier(a,b,c,d){let e=c.fileToMod.get(b);if(!e)return null;let f=function(a,b){if(a.startsWith("crate::"))return a;if("crate"===a)return"crate";if(a.startsWith("self::"))return`${b}::${a.slice(6)}`;if("self"===a)return b;if(a.startsWith("super::")){let c=b,d=a;for(;d.startsWith("super::");){let a=c.lastIndexOf("::");if(a<0)return null;c=c.slice(0,a),d=d.slice(7)}if("super"===d){let a=c.lastIndexOf("::");return a<0?null:c.slice(0,a)}return d?`${c}::${d}`:c}return null}(a,e);if(!f)return null;if(c.modTree.has(f))return c.modTree.get(f);let g=f.split("::");for(;g.length>1;){g.pop();let a=g.join("::"),b=c.modTree.get(a);if(b)return b}return null},resolveCall(a,b,c,d,e){let f;if(a.receiverName){let b=c.bindingsByLocalName.get(a.receiverName);if(b){let e=c.resolvedImports.get(b.specifier);if(!e)return[{kind:"external",name:a.calleeName,packageSpec:b.specifier}];let f=d.get(e);if(!f)return[];let g=f.symbolsByName.get(a.calleeName);if(g){for(let a of g)if(!a.qualifiedName.includes(">")&&K(a.kind))return[{kind:"symbol",addr:{filePath:a.filePath,qualifiedName:a.qualifiedName}}]}let h=`${b.importedName}>${a.calleeName}`,i=f.symbolsByQname.get(h);return i&&K(i.kind)?[{kind:"symbol",addr:{filePath:i.filePath,qualifiedName:i.qualifiedName}}]:[{kind:"method-unresolved",receiverName:a.receiverName,methodName:a.calleeName}]}let e=`${a.receiverName}>${a.calleeName}`,f=c.symbolsByQname.get(e);if(f)return[{kind:"symbol",addr:{filePath:f.filePath,qualifiedName:f.qualifiedName}}];let g=[],h=c.symbolsByName.get(a.calleeName);if(h)for(let a of h)"method"===a.kind&&g.push({kind:"symbol",addr:{filePath:a.filePath,qualifiedName:a.qualifiedName}});return g.length>0?g:[{kind:"method-unresolved",receiverName:a.receiverName,methodName:a.calleeName}]}let g=[],h=c.symbolsByName.get(a.calleeName);if(h)for(let a of h)!(a.qualifiedName===b.qualifiedName||a.qualifiedName.includes(">"))&&K(a.kind)&&g.push({kind:"symbol",addr:{filePath:a.filePath,qualifiedName:a.qualifiedName}});if(g.length>0)return g;let i=c.bindingsByLocalName.get(a.calleeName);if(!i)return[];let j=c.resolvedImports.get(i.specifier);if(!j)return[{kind:"external",name:i.importedName,packageSpec:i.specifier}];let k=d.get(j);if(!k)return[];let l=k.symbolsByName.get(i.importedName);if(l){for(let a of l)if(!a.qualifiedName.includes(">")&&K(a.kind)){f=a;break}}return f?[{kind:"symbol",addr:{filePath:f.filePath,qualifiedName:f.qualifiedName}}]:[]},moduleForFile:(a,b)=>b?.fileToMod.get(a)??f().dirname(a)})},64949:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{g:()=>h});var e=c(33265),f=c(88395),g=a([e]);e=(g.then?(await g)():g)[0];let i=!1;function h(){i||(i=!0,(0,e.ih)((a,b)=>{f.t.subscribe(a,a=>{a.some(a=>"file"===a.type||"git"===a.type)&&b()})}))}d()}catch(a){d(a)}})},72891:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{OZ:()=>o,RL:()=>n,k9:()=>p,ok:()=>l});var e=c(37625),f=c(52693),g=c(18412),h=c(89705),i=c(94506),j=c(770),k=a([i]);i=(k.then?(await k)():k)[0];let l=(a,b=200)=>new Response(JSON.stringify(a),{status:b,headers:{"content-type":"application/json"}}),m=a=>{let b=e.od(a);if(f.Ru(b)){let a=b.value,c=(0,j.Sh)(a);return new Response(JSON.stringify({error:(a=>{let b=a.message;if("string"==typeof b&&b.length>0)return b;let c=a.cause;if(c instanceof Error&&c.message.length>0)return c.message;switch(a._tag){case"ValidationError":return`Invalid ${a.field}: ${a.reason}`;case"NotFoundError":return`${a.resource} not found: ${a.id}`;case"PermissionError":return`Permission denied: ${a.action} on ${a.resource}`;case"DBError":return`${a.db} ${a.op} failed`;case"FSError":return`${a.op} ${a.path} failed`;case"WSError":return`${a.proto} ${a.kind} failed`;case"AgentError":return`${a.provider} ${a.kind} failed`;default:return a._tag}})(a),tag:a._tag}),{status:c,headers:{"content-type":"application/json"}})}return console.error("[handler] uncaught defect:\n"+e.j9(a)),new Response(JSON.stringify({error:"Internal Server Error",tag:"InternalError"}),{status:500,headers:{"content-type":"application/json"}})},n=a=>async b=>{let c=await i.s9.runPromiseExit(a(b));return g.YW(c,{onFailure:a=>m(a),onSuccess:a=>a})},o=a=>async(b,c)=>{let d=await c.params,e=await i.s9.runPromiseExit(a(b,d));return g.YW(e,{onFailure:a=>m(a),onSuccess:a=>a})},p=a=>h.$mh({try:()=>a.json(),catch:()=>new j.yI({field:"body",reason:"invalid JSON"})});d()}catch(a){d(a)}})},86236:(a,b,c)=>{c.d(b,{I:()=>d});let d=new Set(["typescript","tsx","javascript","python","go","rust"])},87956:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{M:()=>j,b:()=>i});var e=c(12629),f=c(76760),g=c.n(f),h=a([e]);e=(h.then?(await h)():h)[0];let k=g().join(process.cwd(),"public","tree-sitter"),l=null,m=new Map,n=new Map;async function i(a){let b,c=n.get(a);if(c)return c;let d=await (!(b=m.get(a))&&(b=(async()=>(await (!l&&(l=e.Parser.init({locateFile:a=>g().join(k,a)})),l),e.Language.load(g().join(k,`tree-sitter-${a}.wasm`))))(),m.set(a,b)),b);return(c=new e.Parser).setLanguage(d),n.set(a,c),c}function j(a){switch(a.slice(a.lastIndexOf(".")).toLowerCase()){case".ts":return"typescript";case".tsx":case".jsx":return"tsx";case".js":case".mjs":case".cjs":return"javascript";case".py":case".pyi":return"python";case".go":return"go";case".rs":return"rust";default:return null}}d()}catch(a){d(a)}})},88395:(a,b,c)=>{c.d(b,{t:()=>l});var d=c(29021),e=c(33873),f=c(7939);let g=[".git/HEAD",".git/MERGE_HEAD",".git/REBASE_HEAD"],h=[".git/refs"];class i{subscribe(a,b){let c=this.watchers.get(a);return c||(c=this.createWatcher(a),this.watchers.set(a,c)),c.listeners.add(b),()=>{this.unsubscribe(a,b)}}unsubscribe(a,b){let c=this.watchers.get(a);if(c&&(c.listeners.delete(b),0===c.listeners.size)){for(let a of(c.debounceTimer&&clearTimeout(c.debounceTimer),c.throttleTimer&&clearTimeout(c.throttleTimer),c.cwdRestartTimer&&clearTimeout(c.cwdRestartTimer),c.watchers))try{a.close()}catch{}this.watchers.delete(a)}}createWatcher(a){let b={watchers:[],listeners:new Set,pendingEvents:[],debounceTimer:null,throttleTimer:null,cwdRestartTimer:null},c=a=>{b.pendingEvents.some(b=>b.type===a.type)||b.pendingEvents.push(a),b.debounceTimer&&clearTimeout(b.debounceTimer),b.debounceTimer=setTimeout(()=>{this.flush(b)},500),b.throttleTimer||(b.throttleTimer=setTimeout(()=>{this.flush(b)},3e3))},f=()=>{try{let e=(0,d.watch)(a,{recursive:!0},(a,b)=>{if(b&&!(b.startsWith(".next/")||b.startsWith("node_modules/"))){if(b.startsWith(".git/")){(".git/HEAD"===b||b.startsWith(".git/refs/"))&&c({type:"git"});return}c({type:"file"})}});e.on("error",c=>{console.error(`File watcher error for ${a}:`,c);let d=b.watchers.indexOf(e);-1!==d&&b.watchers.splice(d,1);try{e.close()}catch{}b.listeners.size>0&&!b.cwdRestartTimer&&(b.cwdRestartTimer=setTimeout(()=>{b.cwdRestartTimer=null,b.listeners.size>0&&f()},2e3))}),b.watchers.push(e)}catch(b){console.error(`Failed to watch ${a}:`,b)}};f();let i=function(a){let b=(0,e.join)(a,".git");try{if((0,d.statSync)(b).isDirectory())return b;let c=(0,d.readFileSync)(b,"utf-8").trim().match(/^gitdir:\s*(.+)$/);if(c)return(0,e.resolve)(a,c[1])}catch{}return b}(a),j=a=>{try{let e=(0,d.watch)(a,()=>{c({type:"git"});try{e.close()}catch{}let d=b.watchers.indexOf(e);-1!==d&&b.watchers.splice(d,1),b.listeners.size>0&&setTimeout(()=>j(a),50)});e.on("error",()=>{let c=b.watchers.indexOf(e);-1!==c&&b.watchers.splice(c,1),b.listeners.size>0&&(0,d.existsSync)(a)&&setTimeout(()=>j(a),500)}),b.watchers.push(e)}catch{}};for(let a of g){let b=a.replace(".git/","");j((0,e.join)(i,b))}for(let a of h){let f=a.replace(".git/","");try{let a=(0,d.watch)((0,e.join)(i,f),{recursive:!0},()=>{c({type:"git"})});a.on("error",()=>{}),b.watchers.push(a)}catch{}}return b}flush(a){if(a.debounceTimer&&(clearTimeout(a.debounceTimer),a.debounceTimer=null),a.throttleTimer&&(clearTimeout(a.throttleTimer),a.throttleTimer=null),0===a.pendingEvents.length)return;let b=[...a.pendingEvents];for(let c of(a.pendingEvents=[],a.listeners))try{c(b)}catch(a){console.error("File watcher callback error:",a)}}constructor(){this.watchers=new Map}}class j{subscribe(a){return this.listeners.add(a),this.watcher||this.start(),()=>{this.listeners.delete(a),0===this.listeners.size&&this.stop()}}start(){try{(0,d.existsSync)(f.Tb)||(0,d.mkdirSync)(f.Tb,{recursive:!0}),(0,d.existsSync)(f.jp)||(0,d.writeFileSync)(f.jp,"0"),this.watcher=(0,d.watch)(f.jp,()=>{this.debounceTimer&&clearTimeout(this.debounceTimer),this.debounceTimer=setTimeout(()=>this.notify(),300)}),this.watcher.on("error",()=>{this.stop(),setTimeout(()=>{this.listeners.size>0&&this.start()},2e3)})}catch{}}stop(){if(this.watcher){try{this.watcher.close()}catch{}this.watcher=null}this.debounceTimer&&(clearTimeout(this.debounceTimer),this.debounceTimer=null)}notify(){for(let a of this.listeners)try{a()}catch(a){console.error("ReviewWatcher callback error:",a)}}constructor(){this.listeners=new Set,this.watcher=null,this.debounceTimer=null}}let k=globalThis,l=k.__cockpitFileWatcher??(k.__cockpitFileWatcher=new i);k.__cockpitReviewWatcher??(k.__cockpitReviewWatcher=new j)}};
@@ -1 +1 @@
1
- exports.id=304,exports.ids=[304],exports.modules={770:(a,b,c)=>{"use strict";c.d(b,{Sh:()=>l,Yv:()=>h,i_:()=>k,m_:()=>j,n_:()=>f,uU:()=>g,uV:()=>e,yI:()=>i});var d=c(59412);class e extends d.rN("AppError"){}class f extends d.rN("DBError"){}d.rN("WSError");class g extends d.rN("FSError"){}class h extends d.rN("AgentError"){}class i extends d.rN("ValidationError"){}class j extends d.rN("NotFoundError"){}class k extends d.rN("PermissionError"){}let l=a=>{switch(a._tag){case"ValidationError":return 400;case"PermissionError":return 403;case"NotFoundError":return 404;case"DBError":case"FSError":case"AgentError":case"WSError":return 503;default:return 500}}},1085:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{T:()=>k,z:()=>j});var e=c(89705),f=c(7517),g=c(19879),h=c(770),i=a([g]);g=(i.then?(await i)():i)[0];let j=(a,b)=>e.JkU(function*(){let c,d=yield*f.sZ3(k(a,b)),e="";for(let a of d)"text"===a._tag?e+=a.delta:"done"===a._tag&&(c=a.usage);return{message:{role:"assistant",content:e},usage:c}}).pipe(e.fRP("agent.chat",{attributes:{provider:a.provider,model:a.model}})),k=(a,b)=>f.bIC(c=>{let d,f,i=a.provider,j=(d=((a,b)=>{switch(a){case"claude":return b?{apiKey:b}:{};case"codex":return{baseUrl:"https://api.openai.com/v1",apiKey:b};case"kimi":return{baseUrl:"https://api.moonshot.cn/anthropic",apiKey:b};case"deepseek":return{baseUrl:"https://api.deepseek.com/anthropic",apiKey:b};case"ollama":return{}}})(a.provider,b),{model:a.model,env:{...process.env,...d.baseUrl?{ANTHROPIC_BASE_URL:d.baseUrl}:{},...d.apiKey?{ANTHROPIC_API_KEY:d.apiKey}:{}}}),k=(f=[...a.messages].reverse().find(a=>"user"===a.role),f?.content??""),l=!1;return(async()=>{try{for await(let a of(0,g.query)({prompt:k,options:j})){if(l)break;if("assistant"===a.type&&a.message?.content)for(let b of a.message.content)"text"===b.type&&b.text&&c.single({_tag:"text",delta:b.text});"result"===a.type&&c.single({_tag:"done",usage:a.usage?{inputTokens:a.usage.input_tokens??0,outputTokens:a.usage.output_tokens??0}:void 0})}c.end()}catch(a){c.fail(new h.Yv({provider:i,kind:"protocol",cause:a}))}})(),e.OH5(()=>{l=!0})});d()}catch(a){d(a)}})},2827:(a,b,c)=>{"use strict";c.d(b,{j:()=>j,t:()=>i});var d=c(89705),e=c(7517),f=c(78497),g=c(770),h=c(95040);let i=a=>d.JkU(function*(){let b,c=yield*e.sZ3(j(a)),d="";for(let a of c)"text"===a._tag?d+=a.delta:"done"===a._tag&&(b=a.usage);return{message:{role:"assistant",content:d},usage:b}}).pipe(d.fRP("agent.chat",{attributes:{provider:"ollama",model:a.model}})),j=a=>e.bIC(b=>{let c=new AbortController;return(async()=>{try{let d=(0,h.q)(a.model);for await(let e of(0,f.gM)({model:d,messages:a.messages.map(a=>({role:a.role,content:a.content})),temperature:a.temperature??0,abortSignal:c.signal}).fullStream)if("text-delta"===e.type){let a=e.text;a&&b.single({_tag:"text",delta:a})}else if("finish"===e.type){let a=e.totalUsage;b.single({_tag:"done",usage:a?{inputTokens:a.inputTokens??0,outputTokens:a.outputTokens??0}:void 0})}b.end()}catch(a){b.fail(new g.Yv({provider:"ollama",kind:"protocol",cause:a}))}})(),d.OH5(()=>c.abort())})},8155:(a,b,c)=>{"use strict";c.d(b,{D:()=>o,c:()=>n});var d=c(44853),e=c(89705),f=c(1971);let g=d.eu("dev","prod")("COCKPIT_ENV").pipe(d.IQ("prod")),h=d.Yj("COCKPIT_HOST").pipe(d.IQ("127.0.0.1")),i=d.nd("COCKPIT_PORT").pipe(d.NW(()=>d.nd("PORT")),d.IQ(3457)),j=d.uK(d.Yj("COCKPIT_OPEN_PROJECT")).pipe(d.Tj(a=>"Some"===a._tag?a.value:void 0)),k=d.zM("COCKPIT_NO_OPEN").pipe(d.IQ(!1)),l=d.Yj("COCKPIT_LOG_LEVEL").pipe(d.IQ("info")),m=d.uK(d.Yj("COCKPIT_DIR")),n=e.JkU(function*(){let a=yield*g,b=yield*h,c=yield*i,d=yield*j,f=yield*k,n=yield*l,o=yield*m,p=yield*e.OH5(()=>{if("Some"===o._tag)return o.value;let a="u">typeof process?process.env:void 0;return(a?.HOME||a?.USERPROFILE||".")+"/.cockpit"});return{env:a,host:b,port:3457===c&&"dev"===a?3456:c,cockpitDir:p,openProject:d,openBrowser:!f,logLevel:n,logFile:p+"/logs/cockpit.log"}}).pipe(e.QgK),o=f.Ie},17329:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{x:()=>m});var e=c(89705),f=c(1971),g=c(90828),h=c(46303),i=c(1085),j=c(2827),k=a([i]);i=(k.then?(await k)():k)[0];let l=new Set(["rate-limit","timeout","unknown"]),m=f.Py(h.N,h.N.of({chat:a=>(a=>{switch(a.provider){case"ollama":return(0,j.t)(a);case"claude":case"codex":case"kimi":case"deepseek":return(0,i.z)(a)}})(a).pipe(e.L5P({schedule:g.ic,while:a=>l.has(a.kind)})),stream:a=>(a=>{switch(a.provider){case"ollama":return(0,j.j)(a);case"claude":case"codex":case"kimi":case"deepseek":return(0,i.T)(a)}})(a)}));d()}catch(a){d(a)}})},18702:(a,b,c)=>{"use strict";c.d(b,{u:()=>o});var d=c(89705),e=c(55235),f=c(1971),g=c(770),h=c(49818),i=c(15147),j=c.n(i);async function k(a){let b=new URL(a),c=b.protocol.replace(":",""),d=b.hostname,e=b.port||"7687",f=decodeURIComponent(b.username||"neo4j"),g=decodeURIComponent(b.password||""),h=`${c}://${d}:${e}`,i=j().driver(h,j().auth.basic(f,g));return await i.verifyConnectivity(),i}async function l(a,b,c){let d=a.session();try{let a=Date.now(),e=await d.run(b,c||{}),f=Date.now()-a;return{records:e.records.map(a=>{let b={};for(let c of a.keys)b[c]=function a(b){return null==b?null:j().isInt(b)?b.toNumber():b&&"object"==typeof b&&"labels"in b&&"properties"in b?{_type:"node",_id:a(b.identity),_labels:b.labels,...Object.fromEntries(Object.entries(b.properties).map(([b,c])=>[b,a(c)]))}:b&&"object"==typeof b&&"type"in b&&"start"in b&&"end"in b&&"properties"in b?{_type:"relationship",_id:a(b.identity),_relType:b.type,_start:a(b.start),_end:a(b.end),...Object.fromEntries(Object.entries(b.properties).map(([b,c])=>[b,a(c)]))}:b&&"object"==typeof b&&"segments"in b?{_type:"path",segments:b.segments.map(b=>({start:a(b.start),relationship:a(b.relationship),end:a(b.end)}))}:Array.isArray(b)?b.map(b=>a(b)):b&&"object"==typeof b&&b.constructor===Object?Object.fromEntries(Object.entries(b).map(([b,c])=>[b,a(c)])):b}(a.get(c));return b}),keys:e.records.length>0?e.records[0].keys:[],duration:f,counters:e.summary.counters.updates()}}finally{await d.close()}}let m=(a,b)=>d.$mh({try:b,catch:b=>new g.n_({db:"neo4j",op:a,cause:b})}),n=(a,b,c)=>d.JkU(function*(){let f=(yield*e.Jt(a)).get(b);if(f&&f.connectionString===c)return f.driver;f&&(yield*m("close",()=>f.driver.close()).pipe(d.NWQ(()=>d.rIH)));let g=yield*m("createDriver",()=>k(c));return yield*e.yo(a,a=>{let d=new Map(a);return d.set(b,{driver:g,connectionString:c,createdAt:Date.now()}),d}),g}),o=f.P1(h.ge,d.JkU(function*(){let a=yield*e.L8(new Map);return yield*d.U9h(()=>d.JkU(function*(){let b=yield*e.Jt(a);for(let{driver:a}of b.values())yield*d.$mh({try:()=>a.close(),catch:a=>new g.n_({db:"neo4j",op:"shutdown close",cause:a})}).pipe(d.NWQ(()=>d.rIH));yield*e.hZ(a,new Map),yield*d.fH4(`[Neo4jServiceLive] disposed ${b.size} driver(s)`)})),h.ge.of({run:(b,c,e,f)=>d.JkU(function*(){let d=yield*n(a,b,c);return(yield*m("run",()=>l(d,e,f))).records}).pipe(d.fRP("neo4j.run",{attributes:{id:b}})),runWithMeta:(b,c,e,f)=>d.JkU(function*(){let d=yield*n(a,b,c),g=yield*m("runWithMeta",()=>l(d,e,f));return{records:g.records,keys:g.keys,duration:g.duration,counters:g.counters}}).pipe(d.fRP("neo4j.runWithMeta",{attributes:{id:b}})),disconnect:b=>d.JkU(function*(){let c=(yield*e.Jt(a)).get(b);c&&(yield*m("disconnect",()=>c.driver.close()).pipe(d.NWQ(()=>d.rIH)),yield*e.yo(a,a=>{let c=new Map(a);return c.delete(b),c}))})})}))},25470:(a,b,c)=>{"use strict";c.d(b,{A:()=>l});var d=c(89705),e=c(55235),f=c(1971),g=c(38491),h=c(770),i=c(49818);let j=(a,b)=>d.$mh({try:b,catch:b=>new h.n_({db:"mysql",op:a,cause:b})}),k=(a,b,c)=>d.JkU(function*(){let f=(yield*e.Jt(a)).get(b);if(f&&f.connectionString===c)return f.pool;f&&(yield*j("end",()=>f.pool.end()).pipe(d.NWQ(()=>d.rIH)));let h=g.createPool({uri:c,connectionLimit:5,idleTimeout:6e4,connectTimeout:1e4});return yield*e.yo(a,a=>{let d=new Map(a);return d.set(b,{pool:h,connectionString:c,createdAt:Date.now()}),d}),h}),l=f.P1(i.M9,d.JkU(function*(){let a=yield*e.L8(new Map);return yield*d.U9h(()=>d.JkU(function*(){let b=yield*e.Jt(a);for(let{pool:a}of b.values())yield*d.$mh({try:()=>a.end(),catch:a=>new h.n_({db:"mysql",op:"shutdown end",cause:a})}).pipe(d.NWQ(()=>d.rIH));yield*e.hZ(a,new Map),yield*d.fH4(`[MySQLServiceLive] disposed ${b.size} pool(s)`)})),i.M9.of({query:(b,c,e,f)=>d.JkU(function*(){let d=yield*k(a,b,c),[g]=yield*j("query",()=>d.query(e,f));return g}).pipe(d.fRP("mysql.query",{attributes:{id:b}})),queryWithMeta:(b,c,e,f)=>d.JkU(function*(){let d=yield*k(a,b,c),g=performance.now(),[h,i]=yield*j("queryWithMeta",()=>d.query(e,f)),l=Math.round((performance.now()-g)*100)/100;return Array.isArray(h)&&Array.isArray(i)?{rows:h,fields:i.map(a=>({name:a.name,dataTypeID:a.columnType??0})),rowCount:h.length,command:null,duration:l}:{rows:[],fields:null,rowCount:h.affectedRows??0,command:e.trim().split(/\s+/)[0]?.toUpperCase()||"QUERY",duration:l}}).pipe(d.fRP("mysql.queryWithMeta",{attributes:{id:b}})),withTx:(b,c,e)=>d.JkU(function*(){let f=yield*k(a,b,c),g=yield*j("getConnection",()=>f.getConnection());return yield*j("BEGIN",()=>g.beginTransaction()),yield*e({query:(a,b)=>j("tx.query",()=>g.query(a,b).then(([a])=>a))}).pipe(d.Bio({onSuccess:()=>j("COMMIT",()=>g.commit()),onFailure:()=>j("ROLLBACK",()=>g.rollback()).pipe(d.NWQ(()=>d.rIH))}),d.yeE(d.OH5(()=>g.release())))}).pipe(d.fRP("mysql.withTx",{attributes:{id:b}})),disconnect:b=>d.JkU(function*(){let c=(yield*e.Jt(a)).get(b);c&&(yield*j("disconnect",()=>c.pool.end()).pipe(d.NWQ(()=>d.rIH)),yield*e.yo(a,a=>{let c=new Map(a);return c.delete(b),c}))})})}))},28303:a=>{function b(a){var b=Error("Cannot find module '"+a+"'");throw b.code="MODULE_NOT_FOUND",b}b.keys=()=>[],b.resolve=b,b.id=28303,a.exports=b},34104:(a,b,c)=>{"use strict";c.d(b,{I:()=>i});var d=c(89705),e=c(1971),f=c(770),g=c(49818);let h=a=>d.fJG(new f.n_({db:"mongo",op:a,cause:Error("MongoServiceLive not implemented (mongodb driver not installed)")})),i=e.Py(g.g8,g.g8.of({find:()=>h("find"),command:()=>h("command"),disconnect:()=>d.rIH}))},35765:(a,b,c)=>{"use strict";c.d(b,{fI:()=>h,yh:()=>j});var d=c(64396),e=c(1971),f=c(78820);let g=a=>{switch((a??"").toLowerCase()){case"all":return d.u8;case"trace":return d.Cn;case"debug":return d.y;case"info":default:return d.R2;case"warning":case"warn":return d.N5;case"error":return d.$D;case"fatal":return d.Lj;case"none":return d.NV}},h=e.Um(f.j9,f.dl(g(process.env.COCKPIT_LOG_LEVEL))),i=async(a,b)=>{let{appendFile:d,mkdir:e}=await Promise.resolve().then(c.t.bind(c,79748,23)),{dirname:f}=await Promise.resolve().then(c.t.bind(c,33873,23));try{await e(f(b),{recursive:!0}),await d(b,a+"\n","utf-8")}catch{}},j=a=>e.Um(f.j9,f.WQ(f.L8(({logLevel:b,message:c,date:d,fiberId:e,spans:f,annotations:g})=>{i(JSON.stringify({time:d.toISOString(),level:b.label,fiber:"object"==typeof e&&null!==e&&"id"in e?e.id:String(e),msg:Array.isArray(c)&&1===c.length?c[0]:c,spans:Array.from(f).map(a=>({label:a.label,startTime:a.startTime})),annotations:Object.fromEntries(g)}),a)})),f.dl(g(process.env.COCKPIT_LOG_LEVEL)))},37871:(a,b,c)=>{"use strict";c.d(b,{P:()=>n});var d=c(89705),e=c(55235),f=c(7517),g=c(20473),h=c(1971),i=c(79298),j=c.n(i),k=c(770),l=c(49818);let m=(a,b)=>d.$mh({try:b,catch:b=>new k.n_({db:"redis",op:a,cause:b})}),n=h.P1(l.HE,d.JkU(function*(){let a=yield*e.L8(new Map);return yield*d.U9h(()=>d.JkU(function*(){let b=yield*e.Jt(a);for(let{client:a}of b.values())yield*d.$mh({try:()=>a.quit(),catch:a=>new k.n_({db:"redis",op:"shutdown quit",cause:a})}).pipe(d.NWQ(()=>d.rIH));yield*e.hZ(a,new Map),yield*d.fH4(`[RedisServiceLive] disposed ${b.size} client(s)`)})),l.HE.of({command:(b,c,f,g)=>d.JkU(function*(){let h=yield*d.JkU(function*(){let f=(yield*e.Jt(a)).get(b);if(f&&f.connectionString===c){if("ready"===f.client.status)return f.client;yield*m("quit",()=>f.client.quit()).pipe(d.NWQ(()=>d.rIH))}else f&&(yield*m("quit",()=>f.client.quit()).pipe(d.NWQ(()=>d.rIH)));let g=yield*m("connect",async()=>{let a=new(j())(c,{lazyConnect:!0,connectTimeout:1e4,maxRetriesPerRequest:1});return await a.connect(),a});return yield*e.yo(a,a=>{let d=new Map(a);return d.set(b,{client:g,connectionString:c,createdAt:Date.now()}),d}),g});return yield*m("call",()=>h.call(f,...g??[]))}).pipe(d.fRP("redis.command",{attributes:{id:b,cmd:f}})),subscribe:(a,b,c)=>f.A2M(d.JkU(function*(){let a=yield*g.dT(),e=yield*d.Q56(m("subscribeConnect",async()=>{let a=new(j())(b,{lazyConnect:!0,connectTimeout:1e4,maxRetriesPerRequest:1});return await a.connect(),a}),a=>d.$mh({try:()=>a.quit(),catch:()=>new k.n_({db:"redis",op:"subscribeQuit",cause:null})}).pipe(d.NWQ(()=>d.rIH))),h=c.includes("*")||c.includes("?");return yield*m("psubscribe",()=>h?e.psubscribe(c):e.subscribe(c)),e.on(h?"pmessage":"message",(...b)=>{let c=h?b[1]:b[0],e=h?b[2]:b[1];d.MY7(g.x(a,{channel:c,message:e}))}),f.gJc(a)})),disconnect:b=>d.JkU(function*(){let c=(yield*e.Jt(a)).get(b);c&&(yield*m("disconnect",()=>c.client.quit()).pipe(d.NWQ(()=>d.rIH)),yield*e.yo(a,a=>{let c=new Map(a);return c.delete(b),c}))})})}))},38003:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{H:()=>p});var e=c(89705),f=c(55235),g=c(1971),h=c(7517),i=c(64939),j=c(770),k=c(49818),l=a([i]);let{Pool:m}=(i=(l.then?(await l)():l)[0]).default,n=(a,b)=>e.$mh({try:b,catch:b=>new j.n_({db:"pg",op:a,cause:b})}),o=(a,b,c)=>e.JkU(function*(){let d=(yield*f.Jt(a)).get(b);if(d&&d.connectionString===c)return d.pool;d&&(yield*n("end",()=>d.pool.end()).pipe(e.NWQ(()=>e.rIH)));let g=new m({connectionString:c,max:5,idleTimeoutMillis:6e4,connectionTimeoutMillis:1e4});return yield*f.yo(a,a=>{let d=new Map(a);return d.set(b,{pool:g,connectionString:c,createdAt:Date.now()}),d}),g}),p=g.P1(k.HG,e.JkU(function*(){let a=yield*f.L8(new Map);return yield*e.U9h(()=>e.JkU(function*(){let b=yield*f.Jt(a);for(let{pool:a}of b.values())yield*e.$mh({try:()=>a.end(),catch:a=>new j.n_({db:"pg",op:"shutdown end",cause:a})}).pipe(e.NWQ(()=>e.rIH));yield*f.hZ(a,new Map),yield*e.fH4(`[PgServiceLive] disposed ${b.size} pool(s)`)})),k.HG.of({query:(b,c,d,f)=>e.JkU(function*(){let e=yield*o(a,b,c);return(yield*n("query",()=>e.query(d,f))).rows}).pipe(e.fRP("pg.query",{attributes:{id:b}})),queryWithMeta:(b,c,d,f)=>e.JkU(function*(){let e=yield*o(a,b,c),g=performance.now(),h=yield*n("queryWithMeta",()=>e.query(d,f)),i=Math.round((performance.now()-g)*100)/100;return{rows:h.rows??[],fields:h.fields?h.fields.map(a=>({name:a.name,dataTypeID:a.dataTypeID})):null,rowCount:h.rowCount??null,command:h.command??null,duration:i}}).pipe(e.fRP("pg.queryWithMeta",{attributes:{id:b}})),stream:(b,c,d,f)=>h.oAg(e.JkU(function*(){let e=yield*o(a,b,c),g=yield*n("query",()=>e.query(d,f));return h.Tsr(g.rows)})),withTx:(b,c,d)=>e.JkU(function*(){let f=yield*o(a,b,c),g=yield*n("connect",()=>f.connect());return yield*n("BEGIN",()=>g.query("BEGIN")),yield*d({query:(a,b)=>n("tx.query",()=>g.query(a,b).then(a=>a.rows))}).pipe(e.Bio({onSuccess:()=>n("COMMIT",()=>g.query("COMMIT")),onFailure:()=>n("ROLLBACK",()=>g.query("ROLLBACK")).pipe(e.NWQ(()=>e.rIH))}),e.yeE(e.OH5(()=>g.release())))}).pipe(e.fRP("pg.withTx",{attributes:{id:b}})),disconnect:b=>e.JkU(function*(){let c=(yield*f.Jt(a)).get(b);c&&(yield*n("disconnect",()=>c.pool.end()).pipe(e.NWQ(()=>e.rIH)),yield*f.yo(a,a=>{let c=new Map(a);return c.delete(b),c}))})})}));d()}catch(a){d(a)}})},46303:(a,b,c)=>{"use strict";c.d(b,{N:()=>d});let d=c(60177).Io("@cockpit/AgentService")},49818:(a,b,c)=>{"use strict";c.d(b,{HE:()=>g,HG:()=>e,M9:()=>f,g8:()=>i,ge:()=>h});var d=c(60177);let e=d.Io("@cockpit/PgService"),f=d.Io("@cockpit/MySQLService"),g=d.Io("@cockpit/RedisService"),h=d.Io("@cockpit/Neo4jService"),i=d.Io("@cockpit/MongoService")},64419:(a,b,c)=>{"use strict";c.d(b,{BV:()=>m,Eb:()=>k,Ju:()=>o,S8:()=>n,YN:()=>j,dK:()=>i,kW:()=>p,m6:()=>l,wZ:()=>h});var d=c(89705),e=c(52693);let f=globalThis,g=f.__cockpitSpanRing??={buffer:[],index:new Map};function h(a){if(g.buffer.push(a),g.index.set(a.spanId,g.buffer.length-1),g.buffer.length>500){g.buffer.shift(),g.index.clear();for(let a=0;a<g.buffer.length;a++)g.index.set(g.buffer[a].spanId,a)}}function i(a,b,c){let d=g.index.get(a);if(void 0===d)return;let e=g.buffer[d];if(!e)return;let f=Number(b-BigInt(e.startTimeNs))/1e6;g.buffer[d]={...e,endTimeNs:b.toString(),durationMs:Math.round(100*f)/100,status:"Success"===c._tag?"ok":"error",errorMessage:"Failure"===c._tag?function(a){if(a instanceof Error)return a.message;if("string"==typeof a)return a;try{return JSON.stringify(a)}catch{return String(a)}}(c.cause):void 0}}function j(a,b,c){let d=g.index.get(a);if(void 0===d)return;let e=g.buffer[d];e&&(g.buffer[d]={...e,attributes:{...e.attributes,[b]:c}})}function k(a,b,c,d){let e=g.index.get(a);if(void 0===e)return;let f=g.buffer[e];f&&(g.buffer[e]={...f,events:[...f.events,{name:b,timeNs:c.toString(),attributes:d}]})}let l=(a={})=>d.OH5(()=>(function(a={}){let b=g.buffer;if(a.errorsOnly&&(b=b.filter(a=>"error"===a.status)),a.traceId&&(b=b.filter(b=>b.traceId===a.traceId)),a.namePrefix){let c=a.namePrefix;b=b.filter(a=>a.name.startsWith(c))}if("number"==typeof a.minDurationMs){let c=a.minDurationMs;b=b.filter(a=>(a.durationMs??0)>=c)}return"number"==typeof a.limit&&a.limit>0&&(b=b.slice(-a.limit)),b})(a)),m=()=>d.OH5(()=>{g.buffer.length=0,g.index.clear()}),n=()=>d.OH5(()=>({capacity:500,size:g.buffer.length,oldestStartNs:g.buffer[0]?.startTimeNs??null}));function o(a,b,c,d,e,f){return{traceId:b,spanId:a,parentSpanId:c,name:d,kind:e,startTimeNs:f.toString(),endTimeNs:null,durationMs:null,attributes:{},events:[],status:"started"}}function p(a){return e.Ru(a)?a.value.spanId:null}},69310:(a,b,c)=>{"use strict";function d(){return(process.env.OLLAMA_BASE_URL||"http://127.0.0.1:11434").replace(/\/v1\/?$/,"").replace(/\/+$/,"")}function e(){return`${d()}/v1/`}c.d(b,{J:()=>e,Z:()=>d})},78335:()=>{},82843:(a,b,c)=>{"use strict";c.d(b,{i:()=>i});var d=c(1971),e=c(89705),f=c(55235),g=c(27968);let h=c(60177).Io("@cockpit/Scheduler"),i=d.P1(h,e.JkU(function*(){let a=yield*f.L8(new Map);return yield*e.U9h(()=>e.JkU(function*(){for(let b of(yield*f.Jt(a)).values())yield*g.G(b);yield*f.hZ(a,new Map)})),h.of({schedule:(b,c,d)=>e.JkU(function*(){let h=yield*f.Jt(a).pipe(e.TjK(a=>a.get(b)));h&&(yield*g.G(h));let i=yield*e.x6Z(c.pipe(e.uxO(d),e.sFT(a=>e.vVN(`[scheduler] task '${b}' failed`).pipe(e.swY("error",String(a))))));return yield*f.yo(a,a=>new Map(a).set(b,i)),yield*e.fH4(`[scheduler] task '${b}' started`),{id:b,fiber:i}}),list:e.JkU(function*(){return Array.from((yield*f.Jt(a)).keys())}),cancel:b=>e.JkU(function*(){let c=(yield*f.Jt(a)).get(b);c&&(yield*g.G(c),yield*f.yo(a,a=>{let c=new Map(a);return c.delete(b),c}),yield*e.fH4(`[scheduler] task '${b}' cancelled`))})})}))},86232:(a,b,c)=>{"use strict";c.d(b,{an:()=>k,wy:()=>l});var d=c(52693),e=c(69061),f=c(1971),g=c(64419);let h=a=>{let b="abcdef0123456789",c="";for(let d=0;d<a;d++)c+=b.charAt(Math.floor(Math.random()*b.length));return c};class i{constructor(a,b,c,e,f,i){this.name=a,this.parent=b,this.context=c,this.startTime=f,this.kind=i,this._tag="Span",this.sampled=!0,this.attributes=new Map,this.events=[],this.traceId=d.Ru(b)?b.value.traceId:h(32),this.spanId=h(16),this.status={_tag:"Started",startTime:f},this.links=Array.from(e),(0,g.wZ)((0,g.Ju)(this.spanId,this.traceId,(0,g.kW)(b),a,i,f))}end(a,b){this.status={_tag:"Ended",endTime:a,exit:b,startTime:this.status.startTime},(0,g.dK)(this.spanId,a,"Success"===b._tag?{_tag:"Success"}:{_tag:"Failure",cause:b.cause})}attribute(a,b){this.attributes.set(a,b),(0,g.YN)(this.spanId,a,b)}event(a,b,c){this.events.push([a,b,c??{}]),(0,g.Eb)(this.spanId,a,b,c)}addLinks(a){this.links.push(...a)}}let j=e.L8({span:(a,b,c,d,e,f)=>new i(a,b,c,d,e,f),context:a=>a()}),k=f.Py(e.sh,j),l=f.Ie},90828:(a,b,c)=>{"use strict";c.d(b,{ic:()=>f});var d=c(15825),e=c(31840);d.EV(e.YA(1),1.5).pipe(d.gP(d.ji(e.YA(10))),d.y$(d.t5(10))),d.EV(e.ne(200),2).pipe(d.gP(d.ji(e.YA(5))),d.y$(d.t5(5)));let f=d.EV(e.YA(1),2).pipe(d.et,d.gP(d.ji(e.YA(30))),d.y$(d.t5(8)));d.ji(e.YA(30)),d.ji(e.YA(1)),d.ji(e.YA(30)),e.ne(50),d.BW},94506:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{s9:()=>v});var e=c(1971),f=c(89705),g=c(16171),h=c(8155),i=c(35765),j=c(86232),k=c(38003),l=c(25470),m=c(37871),n=c(18702),o=c(34104),p=c(82843),q=c(17329),r=a([k,q]);[k,q]=r.then?(await r)():r;let s="dev"===process.env.COCKPIT_ENV,t=e.vM(f.JkU(function*(){let a=yield*h.c,b=s?i.fI:(0,i.yh)(a.logFile),c=s?j.an:j.wy;return e.Um(b,c,h.D)})),u=e.Um(t,k.H,l.A,m.P,n.u,o.I,p.i,q.x),v=g.L8(u);d()}catch(a){d(a)}})},95040:(a,b,c)=>{"use strict";c.d(b,{q:()=>g});var d=c(91078),e=c(69310);let f=async(a,b)=>{if(b&&"string"==typeof b.body)try{let a=JSON.parse(b.body);if(Array.isArray(a.messages)){let c=!1;for(let b of a.messages)b&&"assistant"===b.role&&null==b.content&&(b.content="",c=!0);c&&(b={...b,body:JSON.stringify(a)})}}catch{}return fetch(a,b)};function g(a){return(0,d.ry)({apiKey:process.env.OLLAMA_API_KEY||"ollama",baseURL:(0,e.J)(),fetch:f}).chat(a)}},96487:()=>{}};
1
+ exports.id=304,exports.ids=[304],exports.modules={770:(a,b,c)=>{"use strict";c.d(b,{Sh:()=>l,Yv:()=>h,i_:()=>k,m_:()=>j,n_:()=>f,uU:()=>g,uV:()=>e,yI:()=>i});var d=c(59412);class e extends d.rN("AppError"){}class f extends d.rN("DBError"){}d.rN("WSError");class g extends d.rN("FSError"){}class h extends d.rN("AgentError"){}class i extends d.rN("ValidationError"){}class j extends d.rN("NotFoundError"){}class k extends d.rN("PermissionError"){}let l=a=>{switch(a._tag){case"ValidationError":return 400;case"PermissionError":return 403;case"NotFoundError":return 404;case"DBError":case"FSError":case"AgentError":case"WSError":return 503;default:return 500}}},1085:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{T:()=>k,z:()=>j});var e=c(89705),f=c(7517),g=c(19879),h=c(770),i=a([g]);g=(i.then?(await i)():i)[0];let j=(a,b)=>e.JkU(function*(){let c,d=yield*f.sZ3(k(a,b)),e="";for(let a of d)"text"===a._tag?e+=a.delta:"done"===a._tag&&(c=a.usage);return{message:{role:"assistant",content:e},usage:c}}).pipe(e.fRP("agent.chat",{attributes:{provider:a.provider,model:a.model}})),k=(a,b)=>f.bIC(c=>{let d,f,i=a.provider,j=(d=((a,b)=>{switch(a){case"claude":return b?{apiKey:b}:{};case"codex":return{baseUrl:"https://api.openai.com/v1",apiKey:b};case"kimi":return{baseUrl:"https://api.moonshot.cn/anthropic",apiKey:b};case"deepseek":return{baseUrl:"https://api.deepseek.com/anthropic",apiKey:b};case"ollama":return{}}})(a.provider,b),{model:a.model,env:{...process.env,...d.baseUrl?{ANTHROPIC_BASE_URL:d.baseUrl}:{},...d.apiKey?{ANTHROPIC_API_KEY:d.apiKey}:{}}}),k=(f=[...a.messages].reverse().find(a=>"user"===a.role),f?.content??""),l=!1;return(async()=>{try{for await(let a of(0,g.query)({prompt:k,options:j})){if(l)break;if("assistant"===a.type&&a.message?.content)for(let b of a.message.content)"text"===b.type&&b.text&&c.single({_tag:"text",delta:b.text});"result"===a.type&&c.single({_tag:"done",usage:a.usage?{inputTokens:a.usage.input_tokens??0,outputTokens:a.usage.output_tokens??0}:void 0})}c.end()}catch(a){c.fail(new h.Yv({provider:i,kind:"protocol",cause:a}))}})(),e.OH5(()=>{l=!0})});d()}catch(a){d(a)}})},2827:(a,b,c)=>{"use strict";c.d(b,{j:()=>j,t:()=>i});var d=c(89705),e=c(7517),f=c(78497),g=c(770),h=c(67814);let i=a=>d.JkU(function*(){let b,c=yield*e.sZ3(j(a)),d="";for(let a of c)"text"===a._tag?d+=a.delta:"done"===a._tag&&(b=a.usage);return{message:{role:"assistant",content:d},usage:b}}).pipe(d.fRP("agent.chat",{attributes:{provider:"ollama",model:a.model}})),j=a=>e.bIC(b=>{let c=new AbortController;return(async()=>{try{let d=(0,h.q)(a.model);for await(let e of(0,f.gM)({model:d,messages:a.messages.map(a=>({role:a.role,content:a.content})),temperature:a.temperature??0,abortSignal:c.signal}).fullStream)if("text-delta"===e.type){let a=e.text;a&&b.single({_tag:"text",delta:a})}else if("finish"===e.type){let a=e.totalUsage;b.single({_tag:"done",usage:a?{inputTokens:a.inputTokens??0,outputTokens:a.outputTokens??0}:void 0})}b.end()}catch(a){b.fail(new g.Yv({provider:"ollama",kind:"protocol",cause:a}))}})(),d.OH5(()=>c.abort())})},8155:(a,b,c)=>{"use strict";c.d(b,{D:()=>n,c:()=>m});var d=c(44853),e=c(89705),f=c(1971);let g=d.eu("dev","prod")("COCKPIT_ENV").pipe(d.IQ("prod")),h=d.Yj("COCKPIT_HOST").pipe(d.IQ("127.0.0.1")),i=d.nd("COCKPIT_PORT").pipe(d.NW(()=>d.nd("PORT")),d.IQ(3457)),j=d.uK(d.Yj("COCKPIT_OPEN_PROJECT")).pipe(d.Tj(a=>"Some"===a._tag?a.value:void 0)),k=d.zM("COCKPIT_NO_OPEN").pipe(d.IQ(!1)),l=d.Yj("COCKPIT_LOG_LEVEL").pipe(d.IQ("info")),m=e.JkU(function*(){let a=yield*g,b=yield*h,c=yield*i,d=yield*j,f=yield*k,m=yield*l,n=yield*e.OH5(()=>{let a="u">typeof process?process.env:void 0,b=a?.HOME||a?.USERPROFILE||".",c=a?.COCKPIT_HOME;return c?c.replace(/^~(?=$|\/)/,b):b+"/.cockpit"});return{env:a,host:b,port:3457===c&&"dev"===a?3456:c,cockpitDir:n,openProject:d,openBrowser:!f,logLevel:m,logFile:n+"/logs/cockpit.log"}}).pipe(e.QgK),n=f.Ie},17329:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{x:()=>m});var e=c(89705),f=c(1971),g=c(90828),h=c(46303),i=c(1085),j=c(2827),k=a([i]);i=(k.then?(await k)():k)[0];let l=new Set(["rate-limit","timeout","unknown"]),m=f.Py(h.N,h.N.of({chat:a=>(a=>{switch(a.provider){case"ollama":return(0,j.t)(a);case"claude":case"codex":case"kimi":case"deepseek":return(0,i.z)(a)}})(a).pipe(e.L5P({schedule:g.ic,while:a=>l.has(a.kind)})),stream:a=>(a=>{switch(a.provider){case"ollama":return(0,j.j)(a);case"claude":case"codex":case"kimi":case"deepseek":return(0,i.T)(a)}})(a)}));d()}catch(a){d(a)}})},18702:(a,b,c)=>{"use strict";c.d(b,{u:()=>o});var d=c(89705),e=c(55235),f=c(1971),g=c(770),h=c(49818),i=c(15147),j=c.n(i);async function k(a){let b=new URL(a),c=b.protocol.replace(":",""),d=b.hostname,e=b.port||"7687",f=decodeURIComponent(b.username||"neo4j"),g=decodeURIComponent(b.password||""),h=`${c}://${d}:${e}`,i=j().driver(h,j().auth.basic(f,g));return await i.verifyConnectivity(),i}async function l(a,b,c){let d=a.session();try{let a=Date.now(),e=await d.run(b,c||{}),f=Date.now()-a;return{records:e.records.map(a=>{let b={};for(let c of a.keys)b[c]=function a(b){return null==b?null:j().isInt(b)?b.toNumber():b&&"object"==typeof b&&"labels"in b&&"properties"in b?{_type:"node",_id:a(b.identity),_labels:b.labels,...Object.fromEntries(Object.entries(b.properties).map(([b,c])=>[b,a(c)]))}:b&&"object"==typeof b&&"type"in b&&"start"in b&&"end"in b&&"properties"in b?{_type:"relationship",_id:a(b.identity),_relType:b.type,_start:a(b.start),_end:a(b.end),...Object.fromEntries(Object.entries(b.properties).map(([b,c])=>[b,a(c)]))}:b&&"object"==typeof b&&"segments"in b?{_type:"path",segments:b.segments.map(b=>({start:a(b.start),relationship:a(b.relationship),end:a(b.end)}))}:Array.isArray(b)?b.map(b=>a(b)):b&&"object"==typeof b&&b.constructor===Object?Object.fromEntries(Object.entries(b).map(([b,c])=>[b,a(c)])):b}(a.get(c));return b}),keys:e.records.length>0?e.records[0].keys:[],duration:f,counters:e.summary.counters.updates()}}finally{await d.close()}}let m=(a,b)=>d.$mh({try:b,catch:b=>new g.n_({db:"neo4j",op:a,cause:b})}),n=(a,b,c)=>d.JkU(function*(){let f=(yield*e.Jt(a)).get(b);if(f&&f.connectionString===c)return f.driver;f&&(yield*m("close",()=>f.driver.close()).pipe(d.NWQ(()=>d.rIH)));let g=yield*m("createDriver",()=>k(c));return yield*e.yo(a,a=>{let d=new Map(a);return d.set(b,{driver:g,connectionString:c,createdAt:Date.now()}),d}),g}),o=f.P1(h.ge,d.JkU(function*(){let a=yield*e.L8(new Map);return yield*d.U9h(()=>d.JkU(function*(){let b=yield*e.Jt(a);for(let{driver:a}of b.values())yield*d.$mh({try:()=>a.close(),catch:a=>new g.n_({db:"neo4j",op:"shutdown close",cause:a})}).pipe(d.NWQ(()=>d.rIH));yield*e.hZ(a,new Map),yield*d.fH4(`[Neo4jServiceLive] disposed ${b.size} driver(s)`)})),h.ge.of({run:(b,c,e,f)=>d.JkU(function*(){let d=yield*n(a,b,c);return(yield*m("run",()=>l(d,e,f))).records}).pipe(d.fRP("neo4j.run",{attributes:{id:b}})),runWithMeta:(b,c,e,f)=>d.JkU(function*(){let d=yield*n(a,b,c),g=yield*m("runWithMeta",()=>l(d,e,f));return{records:g.records,keys:g.keys,duration:g.duration,counters:g.counters}}).pipe(d.fRP("neo4j.runWithMeta",{attributes:{id:b}})),disconnect:b=>d.JkU(function*(){let c=(yield*e.Jt(a)).get(b);c&&(yield*m("disconnect",()=>c.driver.close()).pipe(d.NWQ(()=>d.rIH)),yield*e.yo(a,a=>{let c=new Map(a);return c.delete(b),c}))})})}))},25470:(a,b,c)=>{"use strict";c.d(b,{A:()=>l});var d=c(89705),e=c(55235),f=c(1971),g=c(38491),h=c(770),i=c(49818);let j=(a,b)=>d.$mh({try:b,catch:b=>new h.n_({db:"mysql",op:a,cause:b})}),k=(a,b,c)=>d.JkU(function*(){let f=(yield*e.Jt(a)).get(b);if(f&&f.connectionString===c)return f.pool;f&&(yield*j("end",()=>f.pool.end()).pipe(d.NWQ(()=>d.rIH)));let h=g.createPool({uri:c,connectionLimit:5,idleTimeout:6e4,connectTimeout:1e4});return yield*e.yo(a,a=>{let d=new Map(a);return d.set(b,{pool:h,connectionString:c,createdAt:Date.now()}),d}),h}),l=f.P1(i.M9,d.JkU(function*(){let a=yield*e.L8(new Map);return yield*d.U9h(()=>d.JkU(function*(){let b=yield*e.Jt(a);for(let{pool:a}of b.values())yield*d.$mh({try:()=>a.end(),catch:a=>new h.n_({db:"mysql",op:"shutdown end",cause:a})}).pipe(d.NWQ(()=>d.rIH));yield*e.hZ(a,new Map),yield*d.fH4(`[MySQLServiceLive] disposed ${b.size} pool(s)`)})),i.M9.of({query:(b,c,e,f)=>d.JkU(function*(){let d=yield*k(a,b,c),[g]=yield*j("query",()=>d.query(e,f));return g}).pipe(d.fRP("mysql.query",{attributes:{id:b}})),queryWithMeta:(b,c,e,f)=>d.JkU(function*(){let d=yield*k(a,b,c),g=performance.now(),[h,i]=yield*j("queryWithMeta",()=>d.query(e,f)),l=Math.round((performance.now()-g)*100)/100;return Array.isArray(h)&&Array.isArray(i)?{rows:h,fields:i.map(a=>({name:a.name,dataTypeID:a.columnType??0})),rowCount:h.length,command:null,duration:l}:{rows:[],fields:null,rowCount:h.affectedRows??0,command:e.trim().split(/\s+/)[0]?.toUpperCase()||"QUERY",duration:l}}).pipe(d.fRP("mysql.queryWithMeta",{attributes:{id:b}})),withTx:(b,c,e)=>d.JkU(function*(){let f=yield*k(a,b,c),g=yield*j("getConnection",()=>f.getConnection());return yield*j("BEGIN",()=>g.beginTransaction()),yield*e({query:(a,b)=>j("tx.query",()=>g.query(a,b).then(([a])=>a))}).pipe(d.Bio({onSuccess:()=>j("COMMIT",()=>g.commit()),onFailure:()=>j("ROLLBACK",()=>g.rollback()).pipe(d.NWQ(()=>d.rIH))}),d.yeE(d.OH5(()=>g.release())))}).pipe(d.fRP("mysql.withTx",{attributes:{id:b}})),disconnect:b=>d.JkU(function*(){let c=(yield*e.Jt(a)).get(b);c&&(yield*j("disconnect",()=>c.pool.end()).pipe(d.NWQ(()=>d.rIH)),yield*e.yo(a,a=>{let c=new Map(a);return c.delete(b),c}))})})}))},28303:a=>{function b(a){var b=Error("Cannot find module '"+a+"'");throw b.code="MODULE_NOT_FOUND",b}b.keys=()=>[],b.resolve=b,b.id=28303,a.exports=b},34104:(a,b,c)=>{"use strict";c.d(b,{I:()=>i});var d=c(89705),e=c(1971),f=c(770),g=c(49818);let h=a=>d.fJG(new f.n_({db:"mongo",op:a,cause:Error("MongoServiceLive not implemented (mongodb driver not installed)")})),i=e.Py(g.g8,g.g8.of({find:()=>h("find"),command:()=>h("command"),disconnect:()=>d.rIH}))},35765:(a,b,c)=>{"use strict";c.d(b,{fI:()=>h,yh:()=>j});var d=c(64396),e=c(1971),f=c(78820);let g=a=>{switch((a??"").toLowerCase()){case"all":return d.u8;case"trace":return d.Cn;case"debug":return d.y;case"info":default:return d.R2;case"warning":case"warn":return d.N5;case"error":return d.$D;case"fatal":return d.Lj;case"none":return d.NV}},h=e.Um(f.j9,f.dl(g(process.env.COCKPIT_LOG_LEVEL))),i=async(a,b)=>{let{appendFile:d,mkdir:e}=await Promise.resolve().then(c.t.bind(c,79748,23)),{dirname:f}=await Promise.resolve().then(c.t.bind(c,33873,23));try{await e(f(b),{recursive:!0}),await d(b,a+"\n","utf-8")}catch{}},j=a=>e.Um(f.j9,f.WQ(f.L8(({logLevel:b,message:c,date:d,fiberId:e,spans:f,annotations:g})=>{i(JSON.stringify({time:d.toISOString(),level:b.label,fiber:"object"==typeof e&&null!==e&&"id"in e?e.id:String(e),msg:Array.isArray(c)&&1===c.length?c[0]:c,spans:Array.from(f).map(a=>({label:a.label,startTime:a.startTime})),annotations:Object.fromEntries(g)}),a)})),f.dl(g(process.env.COCKPIT_LOG_LEVEL)))},37871:(a,b,c)=>{"use strict";c.d(b,{P:()=>n});var d=c(89705),e=c(55235),f=c(7517),g=c(20473),h=c(1971),i=c(79298),j=c.n(i),k=c(770),l=c(49818);let m=(a,b)=>d.$mh({try:b,catch:b=>new k.n_({db:"redis",op:a,cause:b})}),n=h.P1(l.HE,d.JkU(function*(){let a=yield*e.L8(new Map);return yield*d.U9h(()=>d.JkU(function*(){let b=yield*e.Jt(a);for(let{client:a}of b.values())yield*d.$mh({try:()=>a.quit(),catch:a=>new k.n_({db:"redis",op:"shutdown quit",cause:a})}).pipe(d.NWQ(()=>d.rIH));yield*e.hZ(a,new Map),yield*d.fH4(`[RedisServiceLive] disposed ${b.size} client(s)`)})),l.HE.of({command:(b,c,f,g)=>d.JkU(function*(){let h=yield*d.JkU(function*(){let f=(yield*e.Jt(a)).get(b);if(f&&f.connectionString===c){if("ready"===f.client.status)return f.client;yield*m("quit",()=>f.client.quit()).pipe(d.NWQ(()=>d.rIH))}else f&&(yield*m("quit",()=>f.client.quit()).pipe(d.NWQ(()=>d.rIH)));let g=yield*m("connect",async()=>{let a=new(j())(c,{lazyConnect:!0,connectTimeout:1e4,maxRetriesPerRequest:1});return await a.connect(),a});return yield*e.yo(a,a=>{let d=new Map(a);return d.set(b,{client:g,connectionString:c,createdAt:Date.now()}),d}),g});return yield*m("call",()=>h.call(f,...g??[]))}).pipe(d.fRP("redis.command",{attributes:{id:b,cmd:f}})),subscribe:(a,b,c)=>f.A2M(d.JkU(function*(){let a=yield*g.dT(),e=yield*d.Q56(m("subscribeConnect",async()=>{let a=new(j())(b,{lazyConnect:!0,connectTimeout:1e4,maxRetriesPerRequest:1});return await a.connect(),a}),a=>d.$mh({try:()=>a.quit(),catch:()=>new k.n_({db:"redis",op:"subscribeQuit",cause:null})}).pipe(d.NWQ(()=>d.rIH))),h=c.includes("*")||c.includes("?");return yield*m("psubscribe",()=>h?e.psubscribe(c):e.subscribe(c)),e.on(h?"pmessage":"message",(...b)=>{let c=h?b[1]:b[0],e=h?b[2]:b[1];d.MY7(g.x(a,{channel:c,message:e}))}),f.gJc(a)})),disconnect:b=>d.JkU(function*(){let c=(yield*e.Jt(a)).get(b);c&&(yield*m("disconnect",()=>c.client.quit()).pipe(d.NWQ(()=>d.rIH)),yield*e.yo(a,a=>{let c=new Map(a);return c.delete(b),c}))})})}))},38003:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{H:()=>p});var e=c(89705),f=c(55235),g=c(1971),h=c(7517),i=c(64939),j=c(770),k=c(49818),l=a([i]);let{Pool:m}=(i=(l.then?(await l)():l)[0]).default,n=(a,b)=>e.$mh({try:b,catch:b=>new j.n_({db:"pg",op:a,cause:b})}),o=(a,b,c)=>e.JkU(function*(){let d=(yield*f.Jt(a)).get(b);if(d&&d.connectionString===c)return d.pool;d&&(yield*n("end",()=>d.pool.end()).pipe(e.NWQ(()=>e.rIH)));let g=new m({connectionString:c,max:5,idleTimeoutMillis:6e4,connectionTimeoutMillis:1e4});return yield*f.yo(a,a=>{let d=new Map(a);return d.set(b,{pool:g,connectionString:c,createdAt:Date.now()}),d}),g}),p=g.P1(k.HG,e.JkU(function*(){let a=yield*f.L8(new Map);return yield*e.U9h(()=>e.JkU(function*(){let b=yield*f.Jt(a);for(let{pool:a}of b.values())yield*e.$mh({try:()=>a.end(),catch:a=>new j.n_({db:"pg",op:"shutdown end",cause:a})}).pipe(e.NWQ(()=>e.rIH));yield*f.hZ(a,new Map),yield*e.fH4(`[PgServiceLive] disposed ${b.size} pool(s)`)})),k.HG.of({query:(b,c,d,f)=>e.JkU(function*(){let e=yield*o(a,b,c);return(yield*n("query",()=>e.query(d,f))).rows}).pipe(e.fRP("pg.query",{attributes:{id:b}})),queryWithMeta:(b,c,d,f)=>e.JkU(function*(){let e=yield*o(a,b,c),g=performance.now(),h=yield*n("queryWithMeta",()=>e.query(d,f)),i=Math.round((performance.now()-g)*100)/100;return{rows:h.rows??[],fields:h.fields?h.fields.map(a=>({name:a.name,dataTypeID:a.dataTypeID})):null,rowCount:h.rowCount??null,command:h.command??null,duration:i}}).pipe(e.fRP("pg.queryWithMeta",{attributes:{id:b}})),stream:(b,c,d,f)=>h.oAg(e.JkU(function*(){let e=yield*o(a,b,c),g=yield*n("query",()=>e.query(d,f));return h.Tsr(g.rows)})),withTx:(b,c,d)=>e.JkU(function*(){let f=yield*o(a,b,c),g=yield*n("connect",()=>f.connect());return yield*n("BEGIN",()=>g.query("BEGIN")),yield*d({query:(a,b)=>n("tx.query",()=>g.query(a,b).then(a=>a.rows))}).pipe(e.Bio({onSuccess:()=>n("COMMIT",()=>g.query("COMMIT")),onFailure:()=>n("ROLLBACK",()=>g.query("ROLLBACK")).pipe(e.NWQ(()=>e.rIH))}),e.yeE(e.OH5(()=>g.release())))}).pipe(e.fRP("pg.withTx",{attributes:{id:b}})),disconnect:b=>e.JkU(function*(){let c=(yield*f.Jt(a)).get(b);c&&(yield*n("disconnect",()=>c.pool.end()).pipe(e.NWQ(()=>e.rIH)),yield*f.yo(a,a=>{let c=new Map(a);return c.delete(b),c}))})})}));d()}catch(a){d(a)}})},46303:(a,b,c)=>{"use strict";c.d(b,{N:()=>d});let d=c(60177).Io("@cockpit/AgentService")},49818:(a,b,c)=>{"use strict";c.d(b,{HE:()=>g,HG:()=>e,M9:()=>f,g8:()=>i,ge:()=>h});var d=c(60177);let e=d.Io("@cockpit/PgService"),f=d.Io("@cockpit/MySQLService"),g=d.Io("@cockpit/RedisService"),h=d.Io("@cockpit/Neo4jService"),i=d.Io("@cockpit/MongoService")},64419:(a,b,c)=>{"use strict";c.d(b,{BV:()=>m,Eb:()=>k,Ju:()=>o,S8:()=>n,YN:()=>j,dK:()=>i,kW:()=>p,m6:()=>l,wZ:()=>h});var d=c(89705),e=c(52693);let f=globalThis,g=f.__cockpitSpanRing??={buffer:[],index:new Map};function h(a){if(g.buffer.push(a),g.index.set(a.spanId,g.buffer.length-1),g.buffer.length>500){g.buffer.shift(),g.index.clear();for(let a=0;a<g.buffer.length;a++)g.index.set(g.buffer[a].spanId,a)}}function i(a,b,c){let d=g.index.get(a);if(void 0===d)return;let e=g.buffer[d];if(!e)return;let f=Number(b-BigInt(e.startTimeNs))/1e6;g.buffer[d]={...e,endTimeNs:b.toString(),durationMs:Math.round(100*f)/100,status:"Success"===c._tag?"ok":"error",errorMessage:"Failure"===c._tag?function(a){if(a instanceof Error)return a.message;if("string"==typeof a)return a;try{return JSON.stringify(a)}catch{return String(a)}}(c.cause):void 0}}function j(a,b,c){let d=g.index.get(a);if(void 0===d)return;let e=g.buffer[d];e&&(g.buffer[d]={...e,attributes:{...e.attributes,[b]:c}})}function k(a,b,c,d){let e=g.index.get(a);if(void 0===e)return;let f=g.buffer[e];f&&(g.buffer[e]={...f,events:[...f.events,{name:b,timeNs:c.toString(),attributes:d}]})}let l=(a={})=>d.OH5(()=>(function(a={}){let b=g.buffer;if(a.errorsOnly&&(b=b.filter(a=>"error"===a.status)),a.traceId&&(b=b.filter(b=>b.traceId===a.traceId)),a.namePrefix){let c=a.namePrefix;b=b.filter(a=>a.name.startsWith(c))}if("number"==typeof a.minDurationMs){let c=a.minDurationMs;b=b.filter(a=>(a.durationMs??0)>=c)}return"number"==typeof a.limit&&a.limit>0&&(b=b.slice(-a.limit)),b})(a)),m=()=>d.OH5(()=>{g.buffer.length=0,g.index.clear()}),n=()=>d.OH5(()=>({capacity:500,size:g.buffer.length,oldestStartNs:g.buffer[0]?.startTimeNs??null}));function o(a,b,c,d,e,f){return{traceId:b,spanId:a,parentSpanId:c,name:d,kind:e,startTimeNs:f.toString(),endTimeNs:null,durationMs:null,attributes:{},events:[],status:"started"}}function p(a){return e.Ru(a)?a.value.spanId:null}},67814:(a,b,c)=>{"use strict";c.d(b,{q:()=>g});var d=c(91078),e=c(69310);let f=async(a,b)=>{if(b&&"string"==typeof b.body)try{let a=JSON.parse(b.body);if(Array.isArray(a.messages)){let c=!1;for(let b of a.messages)b&&"assistant"===b.role&&null==b.content&&(b.content="",c=!0);c&&(b={...b,body:JSON.stringify(a)})}}catch{}return fetch(a,b)};function g(a){return(0,d.ry)({apiKey:process.env.OLLAMA_API_KEY||"ollama",baseURL:(0,e.J)(),fetch:f}).chat(a)}},69310:(a,b,c)=>{"use strict";function d(){return(process.env.OLLAMA_BASE_URL||"http://127.0.0.1:11434").replace(/\/v1\/?$/,"").replace(/\/+$/,"")}function e(){return`${d()}/v1/`}c.d(b,{J:()=>e,Z:()=>d})},78335:()=>{},82843:(a,b,c)=>{"use strict";c.d(b,{i:()=>i});var d=c(1971),e=c(89705),f=c(55235),g=c(27968);let h=c(60177).Io("@cockpit/Scheduler"),i=d.P1(h,e.JkU(function*(){let a=yield*f.L8(new Map);return yield*e.U9h(()=>e.JkU(function*(){for(let b of(yield*f.Jt(a)).values())yield*g.G(b);yield*f.hZ(a,new Map)})),h.of({schedule:(b,c,d)=>e.JkU(function*(){let h=yield*f.Jt(a).pipe(e.TjK(a=>a.get(b)));h&&(yield*g.G(h));let i=yield*e.x6Z(c.pipe(e.uxO(d),e.sFT(a=>e.vVN(`[scheduler] task '${b}' failed`).pipe(e.swY("error",String(a))))));return yield*f.yo(a,a=>new Map(a).set(b,i)),yield*e.fH4(`[scheduler] task '${b}' started`),{id:b,fiber:i}}),list:e.JkU(function*(){return Array.from((yield*f.Jt(a)).keys())}),cancel:b=>e.JkU(function*(){let c=(yield*f.Jt(a)).get(b);c&&(yield*g.G(c),yield*f.yo(a,a=>{let c=new Map(a);return c.delete(b),c}),yield*e.fH4(`[scheduler] task '${b}' cancelled`))})})}))},86232:(a,b,c)=>{"use strict";c.d(b,{an:()=>k,wy:()=>l});var d=c(52693),e=c(69061),f=c(1971),g=c(64419);let h=a=>{let b="abcdef0123456789",c="";for(let d=0;d<a;d++)c+=b.charAt(Math.floor(Math.random()*b.length));return c};class i{constructor(a,b,c,e,f,i){this.name=a,this.parent=b,this.context=c,this.startTime=f,this.kind=i,this._tag="Span",this.sampled=!0,this.attributes=new Map,this.events=[],this.traceId=d.Ru(b)?b.value.traceId:h(32),this.spanId=h(16),this.status={_tag:"Started",startTime:f},this.links=Array.from(e),(0,g.wZ)((0,g.Ju)(this.spanId,this.traceId,(0,g.kW)(b),a,i,f))}end(a,b){this.status={_tag:"Ended",endTime:a,exit:b,startTime:this.status.startTime},(0,g.dK)(this.spanId,a,"Success"===b._tag?{_tag:"Success"}:{_tag:"Failure",cause:b.cause})}attribute(a,b){this.attributes.set(a,b),(0,g.YN)(this.spanId,a,b)}event(a,b,c){this.events.push([a,b,c??{}]),(0,g.Eb)(this.spanId,a,b,c)}addLinks(a){this.links.push(...a)}}let j=e.L8({span:(a,b,c,d,e,f)=>new i(a,b,c,d,e,f),context:a=>a()}),k=f.Py(e.sh,j),l=f.Ie},90828:(a,b,c)=>{"use strict";c.d(b,{ic:()=>f});var d=c(15825),e=c(31840);d.EV(e.YA(1),1.5).pipe(d.gP(d.ji(e.YA(10))),d.y$(d.t5(10))),d.EV(e.ne(200),2).pipe(d.gP(d.ji(e.YA(5))),d.y$(d.t5(5)));let f=d.EV(e.YA(1),2).pipe(d.et,d.gP(d.ji(e.YA(30))),d.y$(d.t5(8)));d.ji(e.YA(30)),d.ji(e.YA(1)),d.ji(e.YA(30)),e.ne(50),d.BW},94506:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{s9:()=>v});var e=c(1971),f=c(89705),g=c(16171),h=c(8155),i=c(35765),j=c(86232),k=c(38003),l=c(25470),m=c(37871),n=c(18702),o=c(34104),p=c(82843),q=c(17329),r=a([k,q]);[k,q]=r.then?(await r)():r;let s="dev"===process.env.COCKPIT_ENV,t=e.vM(f.JkU(function*(){let a=yield*h.c,b=s?i.fI:(0,i.yh)(a.logFile),c=s?j.an:j.wy;return e.Um(b,c,h.D)})),u=e.Um(t,k.H,l.A,m.P,n.u,o.I,p.i,q.x),v=g.L8(u);d()}catch(a){d(a)}})},96487:()=>{}};
@@ -1,4 +1,4 @@
1
- "use strict";exports.id=2637,exports.ids=[2637],exports.modules={50383:(a,b,c)=>{c.d(b,{M:()=>j});var d=c(29021),e=c(33873),f=c(7939);let g={qa:{zh:`---
1
+ "use strict";exports.id=3633,exports.ids=[3633],exports.modules={79830:(a,b,c)=>{c.d(b,{CS:()=>j,Pn:()=>k,j8:()=>n});var d=c(7939),e=c(29021),f=c(4984),g=c(33873),h=c(38433);function i(a){if(!a)return a;let b=[...a];return b.length<=50?a:b.slice(0,50).join("")+"…"}async function j(a,b,c,f,j){if((0,e.existsSync)(a))return(0,d.Ux)(d.v4,async()=>{let e=await (0,d.JE)(d.v4,{sessions:[]});for(let a of e.sessions)a.status||(a.status=a.isLoading?"loading":"normal",delete a.isLoading);let k=e.sessions.findIndex(c=>c.cwd===a&&c.sessionId===b),l=k>=0?e.sessions[k]:void 0,n={cwd:a,sessionId:b,lastActive:Date.now(),status:c,title:i(f||l?.title),lastUserMessage:i(j||l?.lastUserMessage)};k>=0?e.sessions[k]=n:e.sessions.push(n),e.sessions.sort((a,b)=>b.lastActive-a.lastActive),e.sessions=e.sessions.slice(0,15),await (0,d.An)(d.v4,e),"unread"===c&&l?.status!=="unread"&&(async()=>{let c=await m(a,b).catch(()=>void 0)||n.lastUserMessage;await (0,h.SG)({title:(0,g.basename)(a)||"Cockpit",body:i(c)||n.title||"",data:{cwd:a,sessionId:b}})})().catch(()=>{})})}async function k(a,b){let c=(0,d.Kk)(a,b);if((0,e.existsSync)(c))return q(c);let f=(0,d.oZ)(a,b);if((0,e.existsSync)(f))return q(f);let g=(0,d.yw)(a,b);if((0,e.existsSync)(g))return q(g);let h=(0,d.eg)(b);if(h&&(0,e.existsSync)(h))return await t(h)||"Untitled Session";let i=(0,d.vI)(b);return i&&(0,e.existsSync)(i)&&await v(i)||"Untitled Session"}async function l(a,b){let c=(0,d.Kk)(a,b);if((0,e.existsSync)(c))return await r(c);let f=(0,d.oZ)(a,b);if((0,e.existsSync)(f))return await r(f);let g=(0,d.yw)(a,b);if((0,e.existsSync)(g))return await r(g);let h=(0,d.eg)(b);if(h&&(0,e.existsSync)(h))return await s(h);let i=(0,d.vI)(b);return i&&(0,e.existsSync)(i)?await u(i):[]}async function m(a,b){let c=await l(a,b);return c[c.length-1]}async function n(a,b){let c=await l(a,b),d=c[c.length-1];return c.length<=10?{lastUserMessage:d,firstMessages:c.map(a=>i(a)),lastMessages:[]}:{lastUserMessage:d,firstMessages:c.slice(0,5).map(a=>i(a)),lastMessages:c.slice(-5).map(a=>i(a))}}function o(a){let b=a.replace(/<command-[^>]*>[\s\S]*?<\/command-[^>]*>/g,"");return(b=b.replace(/<local-command-[^>]*>[\s\S]*?<\/local-command-[^>]*>/g,"")).trim()}function p(a){return!(a.startsWith("This session is being continued")||a.startsWith("Caveat: The messages below"))&&!!a.trim()}async function q(a){try{let d=(0,e.createReadStream)(a),g=(0,f.createInterface)({input:d,crlfDelay:1/0}),h="",i=[];for await(let a of g)if(a.trim())try{let b=JSON.parse(a);if("summary"===b.type&&b.summary&&(h=b.summary),"user"===b.type){let a=b.message;if(!a?.content)continue;if("string"==typeof a.content)i.push(a.content);else if(Array.isArray(a.content))for(let b of a.content)"text"===b.type&&b.text&&i.push(b.text)}}catch{}var b=h,c=i;if(b)return b;let j="";for(let a of c){let b=o(a);if(b){if(b.startsWith("/")&&!j){j=b;continue}if(j)return`${j} ${b}`;return b}}return j||"Untitled Session"}catch{return"Untitled Session"}}async function r(a){let b=[];try{let c=(0,e.createReadStream)(a);for await(let a of(0,f.createInterface)({input:c,crlfDelay:1/0}))if(a.trim())try{let c=JSON.parse(a);if("user"!==c.type)continue;let d=c.message;if(!d?.content)continue;let e="";if("string"==typeof d.content)e=d.content;else if(Array.isArray(d.content)){for(let a of d.content)if("text"===a.type&&a.text){e=a.text;break}}if(!e)continue;let f=o(e);f&&p(f)&&b.push(f)}catch{}}catch{}return b}async function s(a){let b=[];try{let c=(0,e.createReadStream)(a);for await(let a of(0,f.createInterface)({input:c,crlfDelay:1/0})){let c;if(!a.trim())continue;try{c=JSON.parse(a)}catch{continue}if("response_item"!==c.type)continue;let d=c.payload;if(!d||"message"!==d.type||"user"!==d.role)continue;let e=d.content?.filter(a=>"input_text"===a.type&&a.text).map(a=>a.text).join("")||"";if(!e||e.startsWith("<")||e.startsWith("#"))continue;let f=o(e);f&&p(f)&&b.push(f)}}catch{}return b}async function t(a){try{let b=(0,e.createReadStream)(a);for await(let a of(0,f.createInterface)({input:b,crlfDelay:1/0})){let b;if(!a.trim())continue;try{b=JSON.parse(a)}catch{continue}if("response_item"!==b.type)continue;let c=b.payload;if(!c||"message"!==c.type||"user"!==c.role)continue;let d=c.content?.filter(a=>"input_text"===a.type&&a.text).map(a=>a.text).join("")||"";if(!(!d||d.startsWith("<")||d.startsWith("#")))return d.slice(0,80)}return}catch{return}}async function u(a){let b=[];try{let c=(0,e.createReadStream)(a);for await(let a of(0,f.createInterface)({input:c,crlfDelay:1/0})){let c;if(!a.trim())continue;try{c=JSON.parse(a)}catch{continue}if("user"!==c.role)continue;let d="string"==typeof c.content?c.content:Array.isArray(c.content)?c.content.filter(a=>("input_text"===a.type||"text"===a.type)&&a.text).map(a=>a.text).join(""):"";if(!d||d.startsWith("<system")||d.startsWith("<environment")||d.startsWith("# AGENTS.md")||d.startsWith("<permissions"))continue;let e=o(d);e&&p(e)&&b.push(e)}}catch{}return b}async function v(a){try{let b=(0,e.createReadStream)(a);for await(let a of(0,f.createInterface)({input:b,crlfDelay:1/0})){let b;if(!a.trim())continue;try{b=JSON.parse(a)}catch{continue}if("user"!==b.role)continue;let c="string"==typeof b.content?b.content:Array.isArray(b.content)?b.content.filter(a=>("input_text"===a.type||"text"===a.type)&&a.text).map(a=>a.text).join(""):"";if(!(!c||c.startsWith("<system")||c.startsWith("<environment")||c.startsWith("# AGENTS.md")||c.startsWith("<permissions")))return c.slice(0,80)}return}catch{return}}},82940:(a,b,c)=>{c.d(b,{AD:()=>j,GS:()=>l,HS:()=>m,Si:()=>n,Y6:()=>r,ah:()=>k,e5:()=>q,j$:()=>p,yQ:()=>o});let d=globalThis,e=d.__cockpitRunRegistry??(d.__cockpitRunRegistry=new Map),f=d.__cockpitRunListeners??(d.__cockpitRunListeners=new Map),g=d.__cockpitRunSeqByKey??(d.__cockpitRunSeqByKey=new Map);function h(a){for(let b of(a.seq+=1,a.keys))g.set(b,a.seq);return a.seq}function i(a,b){for(let c of a.keys){let a=f.get(c);if(a)for(let c of a)try{c(b)}catch{}}}function j(a,b,c){let d=e.get(a);if(d?.status==="running")return!1;let f=d?.seq??g.get(a)??0;if(d)for(let a of(d.evictTimer&&clearTimeout(d.evictTimer),d.keys))e.delete(a);return e.set(a,{keys:new Set([a]),cwd:b,status:"running",seq:f,events:[],updatedAt:Date.now()}),c&&k(a,{type:"user",_human:!0,message:{role:"user",content:c}}),!0}function k(a,b){let c=e.get(a);c&&"running"===c.status&&(h(c),c.events.push(b),c.updatedAt=Date.now(),i(c,{seq:c.seq,message:b}))}function l(a,b){let c=e.get(a);c&&(c.sessionId=b,a!==b&&(c.keys.add(b),e.set(b,c)))}function m(a,b="idle"){let c=e.get(a);if(c){if("running"!==c.status){"idle"===c.status&&"error"===b&&(c.status="error");return}c.status=b,c.updatedAt=Date.now(),h(c),i(c,{seq:c.seq,message:{type:"run-ended",status:b}}),c.evictTimer&&clearTimeout(c.evictTimer),c.evictTimer=setTimeout(()=>{for(let a of c.keys)e.delete(a)},6e4)}}function n(a){let b=e.get(a);return b?{status:b.status,seq:b.seq,events:b.events.slice()}:null}function o(a){return e.get(a)?.status==="running"}function p(a){return e.get(a)?.sessionId??null}function q(a,b){let c=e.get(a);c&&(c.abort=b)}function r(a){let b=e.get(a);if(!b)return!1;try{b.abort?.()}catch{}return k(a,{type:"result",subtype:"stopped"}),m(a,"idle"),!0}},83633:(a,b,c)=>{c.d(b,{T:()=>n});var d=c(79830),e=c(82940),f=c(29021),g=c(33873),h=c(7939);let i={qa:{zh:`---
2
2
  name: qa
3
3
  description: "进入需求澄清讨论模式:理解并复述需求,对不明确点回问确认,只输出理解不改代码,遵循 KISS。"
4
4
  ---
@@ -953,11 +953,11 @@ Output confirmation: branch name, current HEAD commit, and sync status against o
953
953
 
954
954
  - **Start from the latest**: always base on \`origin/main\`, never on a possibly stale local main.
955
955
  - **Never lose changes**: confirm before any operation that could lose the user's work.
956
- - **Verify right after cutting**: use rev-list to confirm actual sync; never assume.`,labelZh:"需求:",labelEn:"Intent: "}},h=(0,e.join)(f.Kv,"skills"),i=/^\s*([/@])([a-zA-Z][a-zA-Z0-9-]*)(?:\s+|$)/;function j(a,b="en",c){let l=b.startsWith("zh")?"zh":"en",m=function(){try{let a=JSON.parse((0,d.readFileSync)(f.GB,"utf-8")),b=[];for(let c of a.skills??[]){let a=function(a){try{let b=(0,d.readFileSync)(a,"utf-8"),c=b.match(/^---\r?\n([\s\S]*?)\r?\n---/),e=(c?c[1]:b).match(/^name:\s*["']?([^"'\n]+?)["']?\s*$/m);return e?e[1].trim():null}catch{return null}}(c.path);a&&b.push({name:a,path:c.path})}return b}catch{return[]}}(),n=a.split("\n"),o=[];if(n.forEach((a,b)=>{let c,d=a.match(i);d&&(g[c=d[2]]||m.some(a=>a.name===c))&&o.push({i:b,marker:d[1],cmd:d[2],rest:a.slice(d[0].length)})}),0===o.length)return a;let p=n.slice(0,o[0].i).join("\n").trim(),q=o.map((a,b)=>{let c=b+1<o.length?o[b+1].i:n.length,d=[a.rest,...n.slice(a.i+1,c)].join("\n").trim();return{marker:a.marker,cmd:a.cmd,body:d}}),r=function(a){if(a){let b=new URL(a.url),c=a.headers.get("x-forwarded-proto"),d=a.headers.get("x-forwarded-host");return c||d?`${c??b.protocol.replace(":","")}://${d??b.host}`:b.origin}let b=process.env.COCKPIT_PORT||process.env.PORT||"3457";return`http://localhost:${b}`}(c),s=q.map(a=>(function(a,b,c,f){var i,j;let l,m=f.find(b=>b.name===a.cmd);if(m)return{marker:a.marker,body:a.body,label:"",pointer:k(m.path,b)};let n=g[a.cmd],o=n[b].replaceAll("{{BASE_URL}}",c),p=function(a,b){try{let c=(0,e.join)(h,a);(0,d.mkdirSync)(c,{recursive:!0});let f=(0,e.join)(c,"SKILL.md");return(0,d.writeFileSync)(f,b.endsWith("\n")?b:`${b}
957
- `,"utf-8"),f}catch{return null}}(a.cmd,o),q=p?k(p,b):o;return{marker:a.marker,body:a.body,label:(i=n,(l="zh"===(j=b)?i.labelZh:i.labelEn)||("zh"===j?"问题:":"Question: ")),pointer:q}})(a,l,r,m));if(1===s.length&&"/"===s[0].marker&&!p){let a=s[0];return a.body?`${a.pointer}
958
-
959
- ${a.label}${a.body}`:a.pointer}let t=s.map((a,b)=>{var c,d;let e=(c=b+1,d=a.marker,"zh"===l?"@"===d?`步骤 ${c}(用 subagent 执行):`:`步骤 ${c}(主会话执行):`:"@"===d?`Step ${c} (run in a subagent): `:`Step ${c} (run in the main session): `),f=a.body?`
960
- ${a.label}${a.body}`:"";return`${e}
961
- ${a.pointer}${f}`}),u=[];return p&&u.push(p),u.push("zh"===l?"请按以下步骤依次完成:":"Complete the following steps in order:",t.join("\n\n")),u.join("\n\n")}function k(a,b){return"zh"===b?`请读取这个 skill 文件:
956
+ - **Verify right after cutting**: use rev-list to confirm actual sync; never assume.`,labelZh:"需求:",labelEn:"Intent: "}},j=(0,g.join)(h.Kv,"skills"),k=/^\s*([/@])([a-zA-Z][a-zA-Z0-9-]*)(?:\s+|$)/;function l(a,b){return"zh"===b?`请读取这个 skill 文件:
962
957
  ${a}`:`Please read this skill file:
963
- ${a}`}},79830:(a,b,c)=>{c.d(b,{CS:()=>j,Pn:()=>k,j8:()=>n});var d=c(7939),e=c(29021),f=c(4984),g=c(33873),h=c(38433);function i(a){if(!a)return a;let b=[...a];return b.length<=50?a:b.slice(0,50).join("")+"…"}async function j(a,b,c,f,j){if((0,e.existsSync)(a))return(0,d.Ux)(d.v4,async()=>{let e=await (0,d.JE)(d.v4,{sessions:[]});for(let a of e.sessions)a.status||(a.status=a.isLoading?"loading":"normal",delete a.isLoading);let k=e.sessions.findIndex(c=>c.cwd===a&&c.sessionId===b),l=k>=0?e.sessions[k]:void 0,n={cwd:a,sessionId:b,lastActive:Date.now(),status:c,title:i(f||l?.title),lastUserMessage:i(j||l?.lastUserMessage)};k>=0?e.sessions[k]=n:e.sessions.push(n),e.sessions.sort((a,b)=>b.lastActive-a.lastActive),e.sessions=e.sessions.slice(0,15),await (0,d.An)(d.v4,e),"unread"===c&&l?.status!=="unread"&&(async()=>{let c=await m(a,b).catch(()=>void 0)||n.lastUserMessage;await (0,h.SG)({title:(0,g.basename)(a)||"Cockpit",body:i(c)||n.title||"",data:{cwd:a,sessionId:b}})})().catch(()=>{})})}async function k(a,b){let c=(0,d.Kk)(a,b);if((0,e.existsSync)(c))return q(c);let f=(0,d.oZ)(a,b);if((0,e.existsSync)(f))return q(f);let g=(0,d.yw)(a,b);if((0,e.existsSync)(g))return q(g);let h=(0,d.eg)(b);if(h&&(0,e.existsSync)(h))return await t(h)||"Untitled Session";let i=(0,d.vI)(b);return i&&(0,e.existsSync)(i)&&await v(i)||"Untitled Session"}async function l(a,b){let c=(0,d.Kk)(a,b);if((0,e.existsSync)(c))return await r(c);let f=(0,d.oZ)(a,b);if((0,e.existsSync)(f))return await r(f);let g=(0,d.yw)(a,b);if((0,e.existsSync)(g))return await r(g);let h=(0,d.eg)(b);if(h&&(0,e.existsSync)(h))return await s(h);let i=(0,d.vI)(b);return i&&(0,e.existsSync)(i)?await u(i):[]}async function m(a,b){let c=await l(a,b);return c[c.length-1]}async function n(a,b){let c=await l(a,b),d=c[c.length-1];return c.length<=10?{lastUserMessage:d,firstMessages:c.map(a=>i(a)),lastMessages:[]}:{lastUserMessage:d,firstMessages:c.slice(0,5).map(a=>i(a)),lastMessages:c.slice(-5).map(a=>i(a))}}function o(a){let b=a.replace(/<command-[^>]*>[\s\S]*?<\/command-[^>]*>/g,"");return(b=b.replace(/<local-command-[^>]*>[\s\S]*?<\/local-command-[^>]*>/g,"")).trim()}function p(a){return!(a.startsWith("This session is being continued")||a.startsWith("Caveat: The messages below"))&&!!a.trim()}async function q(a){try{let d=(0,e.createReadStream)(a),g=(0,f.createInterface)({input:d,crlfDelay:1/0}),h="",i=[];for await(let a of g)if(a.trim())try{let b=JSON.parse(a);if("summary"===b.type&&b.summary&&(h=b.summary),"user"===b.type){let a=b.message;if(!a?.content)continue;if("string"==typeof a.content)i.push(a.content);else if(Array.isArray(a.content))for(let b of a.content)"text"===b.type&&b.text&&i.push(b.text)}}catch{}var b=h,c=i;if(b)return b;let j="";for(let a of c){let b=o(a);if(b){if(b.startsWith("/")&&!j){j=b;continue}if(j)return`${j} ${b}`;return b}}return j||"Untitled Session"}catch{return"Untitled Session"}}async function r(a){let b=[];try{let c=(0,e.createReadStream)(a);for await(let a of(0,f.createInterface)({input:c,crlfDelay:1/0}))if(a.trim())try{let c=JSON.parse(a);if("user"!==c.type)continue;let d=c.message;if(!d?.content)continue;let e="";if("string"==typeof d.content)e=d.content;else if(Array.isArray(d.content)){for(let a of d.content)if("text"===a.type&&a.text){e=a.text;break}}if(!e)continue;let f=o(e);f&&p(f)&&b.push(f)}catch{}}catch{}return b}async function s(a){let b=[];try{let c=(0,e.createReadStream)(a);for await(let a of(0,f.createInterface)({input:c,crlfDelay:1/0})){let c;if(!a.trim())continue;try{c=JSON.parse(a)}catch{continue}if("response_item"!==c.type)continue;let d=c.payload;if(!d||"message"!==d.type||"user"!==d.role)continue;let e=d.content?.filter(a=>"input_text"===a.type&&a.text).map(a=>a.text).join("")||"";if(!e||e.startsWith("<")||e.startsWith("#"))continue;let f=o(e);f&&p(f)&&b.push(f)}}catch{}return b}async function t(a){try{let b=(0,e.createReadStream)(a);for await(let a of(0,f.createInterface)({input:b,crlfDelay:1/0})){let b;if(!a.trim())continue;try{b=JSON.parse(a)}catch{continue}if("response_item"!==b.type)continue;let c=b.payload;if(!c||"message"!==c.type||"user"!==c.role)continue;let d=c.content?.filter(a=>"input_text"===a.type&&a.text).map(a=>a.text).join("")||"";if(!(!d||d.startsWith("<")||d.startsWith("#")))return d.slice(0,80)}return}catch{return}}async function u(a){let b=[];try{let c=(0,e.createReadStream)(a);for await(let a of(0,f.createInterface)({input:c,crlfDelay:1/0})){let c;if(!a.trim())continue;try{c=JSON.parse(a)}catch{continue}if("user"!==c.role)continue;let d="string"==typeof c.content?c.content:Array.isArray(c.content)?c.content.filter(a=>("input_text"===a.type||"text"===a.type)&&a.text).map(a=>a.text).join(""):"";if(!d||d.startsWith("<system")||d.startsWith("<environment")||d.startsWith("# AGENTS.md")||d.startsWith("<permissions"))continue;let e=o(d);e&&p(e)&&b.push(e)}}catch{}return b}async function v(a){try{let b=(0,e.createReadStream)(a);for await(let a of(0,f.createInterface)({input:b,crlfDelay:1/0})){let b;if(!a.trim())continue;try{b=JSON.parse(a)}catch{continue}if("user"!==b.role)continue;let c="string"==typeof b.content?b.content:Array.isArray(b.content)?b.content.filter(a=>("input_text"===a.type||"text"===a.type)&&a.text).map(a=>a.text).join(""):"";if(!(!c||c.startsWith("<system")||c.startsWith("<environment")||c.startsWith("# AGENTS.md")||c.startsWith("<permissions")))return c.slice(0,80)}return}catch{return}}},82940:(a,b,c)=>{c.d(b,{AD:()=>j,GS:()=>l,HS:()=>m,Si:()=>n,Y6:()=>q,ah:()=>k,e5:()=>p,yQ:()=>o});let d=globalThis,e=d.__cockpitRunRegistry??(d.__cockpitRunRegistry=new Map),f=d.__cockpitRunListeners??(d.__cockpitRunListeners=new Map),g=d.__cockpitRunSeqByKey??(d.__cockpitRunSeqByKey=new Map);function h(a){for(let b of(a.seq+=1,a.keys))g.set(b,a.seq);return a.seq}function i(a,b){for(let c of a.keys){let a=f.get(c);if(a)for(let c of a)try{c(b)}catch{}}}function j(a,b,c){let d=e.get(a),f=d?.seq??g.get(a)??0;if(d)for(let a of(d.evictTimer&&clearTimeout(d.evictTimer),d.keys))e.delete(a);e.set(a,{keys:new Set([a]),cwd:b,status:"running",seq:f,events:[],updatedAt:Date.now()}),c&&k(a,{type:"user",_human:!0,message:{role:"user",content:c}})}function k(a,b){let c=e.get(a);c&&"running"===c.status&&(h(c),c.events.push(b),c.updatedAt=Date.now(),i(c,{seq:c.seq,message:b}))}function l(a,b){if(a===b)return;let c=e.get(a);c&&(c.keys.add(b),e.set(b,c))}function m(a,b="idle"){let c=e.get(a);if(c){if("running"!==c.status){"idle"===c.status&&"error"===b&&(c.status="error");return}c.status=b,c.updatedAt=Date.now(),h(c),i(c,{seq:c.seq,message:{type:"run-ended",status:b}}),c.evictTimer&&clearTimeout(c.evictTimer),c.evictTimer=setTimeout(()=>{for(let a of c.keys)e.delete(a)},6e4)}}function n(a){let b=e.get(a);return b?{status:b.status,seq:b.seq,events:b.events.slice()}:null}function o(a){return e.get(a)?.status==="running"}function p(a,b){let c=e.get(a);c&&(c.abort=b)}function q(a){let b=e.get(a);if(!b)return!1;try{b.abort?.()}catch{}return k(a,{type:"result",subtype:"stopped"}),m(a,"idle"),!0}}};
958
+ ${a}`}var m=c(55511);async function n(a,b,c){let{sessionId:n,images:o,cwd:p,language:q}=b;if(n&&(0,e.yQ)(n))return{ok:!1,status:409,error:"session is already running"};let r=b.prompt,s="string"==typeof r?function(a,b="en",c){let d=b.startsWith("zh")?"zh":"en",e=function(){try{let a=JSON.parse((0,f.readFileSync)(h.GB,"utf-8")),b=[];for(let c of a.skills??[]){let a=function(a){try{let b=(0,f.readFileSync)(a,"utf-8"),c=b.match(/^---\r?\n([\s\S]*?)\r?\n---/),d=(c?c[1]:b).match(/^name:\s*["']?([^"'\n]+?)["']?\s*$/m);return d?d[1].trim():null}catch{return null}}(c.path);a&&b.push({name:a,path:c.path})}return b}catch{return[]}}(),m=a.split("\n"),n=[];if(m.forEach((a,b)=>{let c,d=a.match(k);d&&(i[c=d[2]]||e.some(a=>a.name===c))&&n.push({i:b,marker:d[1],cmd:d[2],rest:a.slice(d[0].length)})}),0===n.length)return a;let o=m.slice(0,n[0].i).join("\n").trim(),p=n.map((a,b)=>{let c=b+1<n.length?n[b+1].i:m.length,d=[a.rest,...m.slice(a.i+1,c)].join("\n").trim();return{marker:a.marker,cmd:a.cmd,body:d}}),q=function(a){if(a){let b=new URL(a.url),c=a.headers.get("x-forwarded-proto"),d=a.headers.get("x-forwarded-host");return c||d?`${c??b.protocol.replace(":","")}://${d??b.host}`:b.origin}let b=process.env.COCKPIT_PORT||process.env.PORT||"3457";return`http://localhost:${b}`}(c),r=p.map(a=>(function(a,b,c,d){var e,h;let k,m=d.find(b=>b.name===a.cmd);if(m)return{marker:a.marker,body:a.body,label:"",pointer:l(m.path,b)};let n=i[a.cmd],o=n[b].replaceAll("{{BASE_URL}}",c),p=function(a,b){try{let c=(0,g.join)(j,a);(0,f.mkdirSync)(c,{recursive:!0});let d=(0,g.join)(c,"SKILL.md");return(0,f.writeFileSync)(d,b.endsWith("\n")?b:`${b}
959
+ `,"utf-8"),d}catch{return null}}(a.cmd,o),q=p?l(p,b):o;return{marker:a.marker,body:a.body,label:(e=n,(k="zh"===(h=b)?e.labelZh:e.labelEn)||("zh"===h?"问题:":"Question: ")),pointer:q}})(a,d,q,e));if(1===r.length&&"/"===r[0].marker&&!o){let a=r[0];return a.body?`${a.pointer}
960
+
961
+ ${a.label}${a.body}`:a.pointer}let s=r.map((a,b)=>{var c,e;let f=(c=b+1,e=a.marker,"zh"===d?"@"===e?`步骤 ${c}(用 subagent 执行):`:`步骤 ${c}(主会话执行):`:"@"===e?`Step ${c} (run in a subagent): `:`Step ${c} (run in the main session): `),g=a.body?`
962
+ ${a.label}${a.body}`:"";return`${f}
963
+ ${a.pointer}${g}`}),t=[];return o&&t.push(o),t.push("zh"===d?"请按以下步骤依次完成:":"Complete the following steps in order:",s.join("\n\n")),t.join("\n\n")}(r,q,c):r;if(!(s&&"string"==typeof s||o&&o.length>0))return{ok:!1,status:400,error:"Missing prompt or images"};if(a.preflight){let c=await a.preflight(b);if(!c.ok)return c}let t="string"==typeof s?s:void 0,u=new AbortController,v="string"==typeof b.runId&&b.runId||(0,m.randomUUID)(),w=n||v,x=n,y=!1;if(!(0,e.AD)(w,p||"",t))return{ok:!1,status:409,error:"run already active"};(0,e.e5)(w,()=>{y=!0,u.abort()}),p&&n&&(0,d.CS)(p,n,"loading",void 0,t).catch(()=>{});let z={prompt:t,images:o,cwd:p||"",sessionId:n,params:b,signal:u.signal,emit(a){y||(0,e.ah)(w,a)},rekey(a){a&&((0,e.GS)(w,a),w=a,x=a,p&&(0,d.CS)(p,a,"loading",void 0,t).catch(()=>{}))},currentKey:()=>w};return(async()=>{try{await a.runner.run(z)}catch(b){if(u.signal.aborted){y=!0,(0,e.HS)(w,"idle");return}if(console.error(`[engine:${a.name}] run error:`,b),z.emit({type:"error",error:b instanceof Error?b.message:String(b)}),(0,e.HS)(w,"error"),y=!0,p&&x){let a=await (0,d.Pn)(p,x).catch(()=>void 0);await (0,d.CS)(p,x,"unread",a).catch(()=>{})}return}if(p&&x){let b=await (a.runner.resolveTitle?a.runner.resolveTitle(p,x).catch(()=>void 0):Promise.resolve(void 0));await (0,d.CS)(p,x,"unread",b).catch(()=>{})}y=!0,(0,e.HS)(w,"idle")})(),{ok:!0,runKey:w,sessionId:x??null}}}};