@gitkraken/core-gitlens 0.5.113 → 0.5.115

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 (349) hide show
  1. package/CHANGELOG.md +42 -1
  2. package/dist/git/cache.d.ts +4 -0
  3. package/dist/git/cache.d.ts.map +1 -1
  4. package/dist/git/cache.js +33 -0
  5. package/dist/git/cache.js.map +1 -1
  6. package/dist/git/context.d.ts +10 -0
  7. package/dist/git/context.d.ts.map +1 -1
  8. package/dist/git/context.js.map +1 -1
  9. package/dist/git/errors.d.ts +6 -3
  10. package/dist/git/errors.d.ts.map +1 -1
  11. package/dist/git/errors.js +9 -1
  12. package/dist/git/errors.js.map +1 -1
  13. package/dist/git/features.d.ts +1 -1
  14. package/dist/git/features.d.ts.map +1 -1
  15. package/dist/git/features.js +38 -0
  16. package/dist/git/features.js.map +1 -1
  17. package/dist/git/gitHealth.d.ts +153 -0
  18. package/dist/git/gitHealth.d.ts.map +1 -0
  19. package/dist/git/gitHealth.js +353 -0
  20. package/dist/git/gitHealth.js.map +1 -0
  21. package/dist/git/models/search.d.ts +6 -3
  22. package/dist/git/models/search.d.ts.map +1 -1
  23. package/dist/git/models/search.js +5 -1
  24. package/dist/git/models/search.js.map +1 -1
  25. package/dist/git/parsers/diffParser.d.ts +8 -2
  26. package/dist/git/parsers/diffParser.d.ts.map +1 -1
  27. package/dist/git/parsers/diffParser.js +27 -4
  28. package/dist/git/parsers/diffParser.js.map +1 -1
  29. package/dist/git/providers/config.d.ts +36 -3
  30. package/dist/git/providers/config.d.ts.map +1 -1
  31. package/dist/git/providers/graph.d.ts +9 -0
  32. package/dist/git/providers/graph.d.ts.map +1 -1
  33. package/dist/git/providers/maintenance.d.ts +222 -0
  34. package/dist/git/providers/maintenance.d.ts.map +1 -0
  35. package/dist/git/providers/maintenance.js +20 -0
  36. package/dist/git/providers/maintenance.js.map +1 -0
  37. package/dist/git/providers/operations.d.ts +10 -0
  38. package/dist/git/providers/operations.d.ts.map +1 -1
  39. package/dist/git/providers/pausedOperations.d.ts +3 -0
  40. package/dist/git/providers/pausedOperations.d.ts.map +1 -1
  41. package/dist/git/providers/provider.d.ts +2 -0
  42. package/dist/git/providers/provider.d.ts.map +1 -1
  43. package/dist/git/providers/tags.d.ts +3 -0
  44. package/dist/git/providers/tags.d.ts.map +1 -1
  45. package/dist/git/repositoryService.d.ts +1 -0
  46. package/dist/git/repositoryService.d.ts.map +1 -1
  47. package/dist/git/repositoryService.js.map +1 -1
  48. package/dist/git/run.types.d.ts +8 -0
  49. package/dist/git/run.types.d.ts.map +1 -1
  50. package/dist/git/service.js +3 -0
  51. package/dist/git/service.js.map +1 -1
  52. package/dist/git/utils/search.utils.d.ts.map +1 -1
  53. package/dist/git/utils/search.utils.js +112 -5
  54. package/dist/git/utils/search.utils.js.map +1 -1
  55. package/dist/git/watching/watchService.d.ts +3 -0
  56. package/dist/git/watching/watchService.d.ts.map +1 -1
  57. package/dist/git/watching/watchService.js +8 -0
  58. package/dist/git/watching/watchService.js.map +1 -1
  59. package/dist/git-cli/cliGitProvider.d.ts +11 -0
  60. package/dist/git-cli/cliGitProvider.d.ts.map +1 -1
  61. package/dist/git-cli/cliGitProvider.js +12 -0
  62. package/dist/git-cli/cliGitProvider.js.map +1 -1
  63. package/dist/git-cli/exec/git.d.ts +23 -1
  64. package/dist/git-cli/exec/git.d.ts.map +1 -1
  65. package/dist/git-cli/exec/git.js +83 -8
  66. package/dist/git-cli/exec/git.js.map +1 -1
  67. package/dist/git-cli/exec/gitQueue.d.ts +2 -0
  68. package/dist/git-cli/exec/gitQueue.d.ts.map +1 -1
  69. package/dist/git-cli/exec/gitQueue.js +19 -17
  70. package/dist/git-cli/exec/gitQueue.js.map +1 -1
  71. package/dist/git-cli/parsers/logParser.d.ts.map +1 -1
  72. package/dist/git-cli/parsers/logParser.js +4 -1
  73. package/dist/git-cli/parsers/logParser.js.map +1 -1
  74. package/dist/git-cli/providers/blame.d.ts.map +1 -1
  75. package/dist/git-cli/providers/blame.js +4 -7
  76. package/dist/git-cli/providers/blame.js.map +1 -1
  77. package/dist/git-cli/providers/branches.d.ts.map +1 -1
  78. package/dist/git-cli/providers/branches.js +13 -3
  79. package/dist/git-cli/providers/branches.js.map +1 -1
  80. package/dist/git-cli/providers/commits.d.ts.map +1 -1
  81. package/dist/git-cli/providers/commits.js +34 -3
  82. package/dist/git-cli/providers/commits.js.map +1 -1
  83. package/dist/git-cli/providers/config.d.ts +27 -0
  84. package/dist/git-cli/providers/config.d.ts.map +1 -1
  85. package/dist/git-cli/providers/config.js +31 -6
  86. package/dist/git-cli/providers/config.js.map +1 -1
  87. package/dist/git-cli/providers/graph.d.ts +8 -0
  88. package/dist/git-cli/providers/graph.d.ts.map +1 -1
  89. package/dist/git-cli/providers/graph.js +85 -6
  90. package/dist/git-cli/providers/graph.js.map +1 -1
  91. package/dist/git-cli/providers/maintenance.d.ts +306 -0
  92. package/dist/git-cli/providers/maintenance.d.ts.map +1 -0
  93. package/dist/git-cli/providers/maintenance.js +2129 -0
  94. package/dist/git-cli/providers/maintenance.js.map +1 -0
  95. package/dist/git-cli/providers/operations.d.ts +1 -0
  96. package/dist/git-cli/providers/operations.d.ts.map +1 -1
  97. package/dist/git-cli/providers/operations.js +8 -0
  98. package/dist/git-cli/providers/operations.js.map +1 -1
  99. package/dist/git-cli/providers/pausedOperations.d.ts +1 -0
  100. package/dist/git-cli/providers/pausedOperations.d.ts.map +1 -1
  101. package/dist/git-cli/providers/pausedOperations.js +1 -1
  102. package/dist/git-cli/providers/pausedOperations.js.map +1 -1
  103. package/dist/git-cli/providers/tags.d.ts +3 -0
  104. package/dist/git-cli/providers/tags.d.ts.map +1 -1
  105. package/dist/git-cli/providers/tags.js +23 -1
  106. package/dist/git-cli/providers/tags.js.map +1 -1
  107. package/dist/plus/agents/agentCapabilities.d.ts +77 -0
  108. package/dist/plus/agents/agentCapabilities.d.ts.map +1 -0
  109. package/dist/plus/agents/agentCapabilities.js +197 -0
  110. package/dist/plus/agents/agentCapabilities.js.map +1 -0
  111. package/dist/plus/agents/providers/claudeCodeTranscript.d.ts +77 -13
  112. package/dist/plus/agents/providers/claudeCodeTranscript.d.ts.map +1 -1
  113. package/dist/plus/agents/providers/claudeCodeTranscript.js +263 -55
  114. package/dist/plus/agents/providers/claudeCodeTranscript.js.map +1 -1
  115. package/dist/plus/agents/providers/{claudeCodeProvider.d.ts → gkAgentProvider.d.ts} +52 -19
  116. package/dist/plus/agents/providers/gkAgentProvider.d.ts.map +1 -0
  117. package/dist/plus/agents/providers/{claudeCodeProvider.js → gkAgentProvider.js} +935 -262
  118. package/dist/plus/agents/providers/gkAgentProvider.js.map +1 -0
  119. package/dist/plus/agents/types.d.ts +113 -35
  120. package/dist/plus/agents/types.d.ts.map +1 -1
  121. package/dist/plus/agents/types.js +7 -4
  122. package/dist/plus/agents/types.js.map +1 -1
  123. package/dist/plus/ai/models/promptTemplates.d.ts +1 -1
  124. package/dist/plus/ai/models/promptTemplates.d.ts.map +1 -1
  125. package/dist/plus/ai/prompts.d.ts +4 -0
  126. package/dist/plus/ai/prompts.d.ts.map +1 -1
  127. package/dist/plus/ai/prompts.js +59 -4
  128. package/dist/plus/ai/prompts.js.map +1 -1
  129. package/dist/plus/git-github/api/github.d.ts +44 -1
  130. package/dist/plus/git-github/api/github.d.ts.map +1 -1
  131. package/dist/plus/git-github/api/github.js +355 -62
  132. package/dist/plus/git-github/api/github.js.map +1 -1
  133. package/dist/plus/git-github/api/issueSearchQuery.d.ts +13 -0
  134. package/dist/plus/git-github/api/issueSearchQuery.d.ts.map +1 -1
  135. package/dist/plus/git-github/api/issueSearchQuery.js +41 -0
  136. package/dist/plus/git-github/api/issueSearchQuery.js.map +1 -1
  137. package/dist/plus/git-github/providers/github/blame.d.ts.map +1 -1
  138. package/dist/plus/git-github/providers/github/blame.js +2 -1
  139. package/dist/plus/git-github/providers/github/blame.js.map +1 -1
  140. package/dist/plus/integrations/collectionMetadata.d.ts +2 -0
  141. package/dist/plus/integrations/collectionMetadata.d.ts.map +1 -1
  142. package/dist/plus/integrations/collectionMetadata.js +17 -1
  143. package/dist/plus/integrations/collectionMetadata.js.map +1 -1
  144. package/dist/plus/integrations/context.d.ts +4 -1
  145. package/dist/plus/integrations/context.d.ts.map +1 -1
  146. package/dist/plus/integrations/index.d.ts +1 -0
  147. package/dist/plus/integrations/index.d.ts.map +1 -1
  148. package/dist/plus/integrations/integrationService.d.ts +20 -1
  149. package/dist/plus/integrations/integrationService.d.ts.map +1 -1
  150. package/dist/plus/integrations/integrationService.js +12 -4
  151. package/dist/plus/integrations/integrationService.js.map +1 -1
  152. package/dist/plus/integrations/manager.d.ts +48 -0
  153. package/dist/plus/integrations/manager.d.ts.map +1 -1
  154. package/dist/plus/integrations/models/gitHostIntegration.d.ts +53 -26
  155. package/dist/plus/integrations/models/gitHostIntegration.d.ts.map +1 -1
  156. package/dist/plus/integrations/models/gitHostIntegration.js +123 -47
  157. package/dist/plus/integrations/models/gitHostIntegration.js.map +1 -1
  158. package/dist/plus/integrations/models/integration.d.ts +10 -1
  159. package/dist/plus/integrations/models/integration.d.ts.map +1 -1
  160. package/dist/plus/integrations/models/integration.js +52 -19
  161. package/dist/plus/integrations/models/integration.js.map +1 -1
  162. package/dist/plus/integrations/models/issueCache.d.ts +16 -0
  163. package/dist/plus/integrations/models/issueCache.d.ts.map +1 -0
  164. package/dist/plus/integrations/models/issueCache.js +9 -0
  165. package/dist/plus/integrations/models/issueCache.js.map +1 -0
  166. package/dist/plus/integrations/models/issueReads.d.ts +13 -0
  167. package/dist/plus/integrations/models/issueReads.d.ts.map +1 -1
  168. package/dist/plus/integrations/models/issuesIntegration.d.ts +11 -13
  169. package/dist/plus/integrations/models/issuesIntegration.d.ts.map +1 -1
  170. package/dist/plus/integrations/models/issuesIntegration.js +15 -1
  171. package/dist/plus/integrations/models/issuesIntegration.js.map +1 -1
  172. package/dist/plus/integrations/providers/azureDevOps.d.ts +3 -5
  173. package/dist/plus/integrations/providers/azureDevOps.d.ts.map +1 -1
  174. package/dist/plus/integrations/providers/azureDevOps.js +9 -8
  175. package/dist/plus/integrations/providers/azureDevOps.js.map +1 -1
  176. package/dist/plus/integrations/providers/bitbucket-server.d.ts +3 -5
  177. package/dist/plus/integrations/providers/bitbucket-server.d.ts.map +1 -1
  178. package/dist/plus/integrations/providers/bitbucket-server.js +2 -2
  179. package/dist/plus/integrations/providers/bitbucket-server.js.map +1 -1
  180. package/dist/plus/integrations/providers/bitbucket.d.ts +3 -5
  181. package/dist/plus/integrations/providers/bitbucket.d.ts.map +1 -1
  182. package/dist/plus/integrations/providers/bitbucket.js +2 -1
  183. package/dist/plus/integrations/providers/bitbucket.js.map +1 -1
  184. package/dist/plus/integrations/providers/github.d.ts +12 -5
  185. package/dist/plus/integrations/providers/github.d.ts.map +1 -1
  186. package/dist/plus/integrations/providers/github.js +10 -3
  187. package/dist/plus/integrations/providers/github.js.map +1 -1
  188. package/dist/plus/integrations/providers/gitlab.d.ts +3 -5
  189. package/dist/plus/integrations/providers/gitlab.d.ts.map +1 -1
  190. package/dist/plus/integrations/providers/gitlab.js +2 -2
  191. package/dist/plus/integrations/providers/gitlab.js.map +1 -1
  192. package/dist/plus/integrations/providers/jira.d.ts +3 -7
  193. package/dist/plus/integrations/providers/jira.d.ts.map +1 -1
  194. package/dist/plus/integrations/providers/jira.js +35 -22
  195. package/dist/plus/integrations/providers/jira.js.map +1 -1
  196. package/dist/plus/integrations/providers/jiraIssueByKey.d.ts +7 -0
  197. package/dist/plus/integrations/providers/jiraIssueByKey.d.ts.map +1 -0
  198. package/dist/plus/integrations/providers/jiraIssueByKey.js +102 -0
  199. package/dist/plus/integrations/providers/jiraIssueByKey.js.map +1 -0
  200. package/dist/plus/integrations/providers/linear.d.ts +3 -7
  201. package/dist/plus/integrations/providers/linear.d.ts.map +1 -1
  202. package/dist/plus/integrations/providers/linear.js +23 -22
  203. package/dist/plus/integrations/providers/linear.js.map +1 -1
  204. package/dist/plus/integrations/providers/models.d.ts +3 -1
  205. package/dist/plus/integrations/providers/models.d.ts.map +1 -1
  206. package/dist/plus/integrations/providers/models.js +10 -4
  207. package/dist/plus/integrations/providers/models.js.map +1 -1
  208. package/dist/plus/integrations/providers/providerErrors.d.ts +7 -0
  209. package/dist/plus/integrations/providers/providerErrors.d.ts.map +1 -0
  210. package/dist/plus/integrations/providers/providerErrors.js +91 -0
  211. package/dist/plus/integrations/providers/providerErrors.js.map +1 -0
  212. package/dist/plus/integrations/providers/providersApi.d.ts +3 -2
  213. package/dist/plus/integrations/providers/providersApi.d.ts.map +1 -1
  214. package/dist/plus/integrations/providers/providersApi.js +18 -52
  215. package/dist/plus/integrations/providers/providersApi.js.map +1 -1
  216. package/dist/plus/integrations/providers/trello.d.ts +2 -7
  217. package/dist/plus/integrations/providers/trello.d.ts.map +1 -1
  218. package/dist/plus/integrations/providers/trello.js +3 -1
  219. package/dist/plus/integrations/providers/trello.js.map +1 -1
  220. package/dist/plus/integrations/providers/utils/providerPaging.d.ts +2 -0
  221. package/dist/plus/integrations/providers/utils/providerPaging.d.ts.map +1 -1
  222. package/dist/plus/integrations/providers/utils/providerPaging.js +12 -7
  223. package/dist/plus/integrations/providers/utils/providerPaging.js.map +1 -1
  224. package/dist/plus/integrations/reads/broaden.d.ts +47 -10
  225. package/dist/plus/integrations/reads/broaden.d.ts.map +1 -1
  226. package/dist/plus/integrations/reads/broaden.js +144 -33
  227. package/dist/plus/integrations/reads/broaden.js.map +1 -1
  228. package/dist/plus/integrations/reads/filters.d.ts +18 -0
  229. package/dist/plus/integrations/reads/filters.d.ts.map +1 -1
  230. package/dist/plus/integrations/reads/filters.js +37 -1
  231. package/dist/plus/integrations/reads/filters.js.map +1 -1
  232. package/dist/plus/integrations/reads/issueBatch.d.ts +51 -0
  233. package/dist/plus/integrations/reads/issueBatch.d.ts.map +1 -0
  234. package/dist/plus/integrations/reads/issueBatch.js +91 -0
  235. package/dist/plus/integrations/reads/issueBatch.js.map +1 -0
  236. package/dist/plus/integrations/reads/issueTracker.d.ts.map +1 -1
  237. package/dist/plus/integrations/reads/issueTracker.js +23 -17
  238. package/dist/plus/integrations/reads/issueTracker.js.map +1 -1
  239. package/dist/plus/integrations/reads/sweeps.d.ts.map +1 -1
  240. package/dist/plus/integrations/reads/sweeps.js +5 -3
  241. package/dist/plus/integrations/reads/sweeps.js.map +1 -1
  242. package/dist/plus/integrations/reads/trackerIssue.d.ts +21 -0
  243. package/dist/plus/integrations/reads/trackerIssue.d.ts.map +1 -0
  244. package/dist/plus/integrations/reads/trackerIssue.js +51 -0
  245. package/dist/plus/integrations/reads/trackerIssue.js.map +1 -0
  246. package/dist/plus/integrations/reads/warnings.d.ts +2 -15
  247. package/dist/plus/integrations/reads/warnings.d.ts.map +1 -1
  248. package/dist/plus/integrations/reads/warnings.js +19 -1
  249. package/dist/plus/integrations/reads/warnings.js.map +1 -1
  250. package/dist/plus/integrations/results.d.ts +4 -20
  251. package/dist/plus/integrations/results.d.ts.map +1 -1
  252. package/dist/plus/integrations/results.js.map +1 -1
  253. package/dist/utils/promise.d.ts +2 -0
  254. package/dist/utils/promise.d.ts.map +1 -1
  255. package/dist/utils/promise.js +11 -0
  256. package/dist/utils/promise.js.map +1 -1
  257. package/dist/utils/promiseCache.d.ts +19 -0
  258. package/dist/utils/promiseCache.d.ts.map +1 -1
  259. package/dist/utils/promiseCache.js +30 -0
  260. package/dist/utils/promiseCache.js.map +1 -1
  261. package/dist/utils/resourceUsage.d.ts +5 -0
  262. package/dist/utils/resourceUsage.d.ts.map +1 -0
  263. package/dist/utils/resourceUsage.js +2 -0
  264. package/dist/utils/resourceUsage.js.map +1 -0
  265. package/dist/utils/string.d.ts +12 -0
  266. package/dist/utils/string.d.ts.map +1 -1
  267. package/dist/utils/string.js +36 -1
  268. package/dist/utils/string.js.map +1 -1
  269. package/docs/integrations.md +48 -33
  270. package/docs/kepler-read-api-parity.md +25 -4
  271. package/package.json +12 -4
  272. package/src/git/cache.ts +36 -0
  273. package/src/git/context.ts +11 -0
  274. package/src/git/errors.ts +13 -1
  275. package/src/git/features.ts +51 -0
  276. package/src/git/gitHealth.ts +522 -0
  277. package/src/git/models/search.ts +19 -4
  278. package/src/git/parsers/diffParser.ts +27 -4
  279. package/src/git/providers/config.ts +42 -1
  280. package/src/git/providers/graph.ts +12 -0
  281. package/src/git/providers/maintenance.ts +224 -0
  282. package/src/git/providers/operations.ts +10 -0
  283. package/src/git/providers/pausedOperations.ts +3 -0
  284. package/src/git/providers/provider.ts +2 -0
  285. package/src/git/providers/tags.ts +1 -0
  286. package/src/git/repositoryService.ts +1 -0
  287. package/src/git/run.types.ts +8 -0
  288. package/src/git/service.ts +3 -0
  289. package/src/git/utils/search.utils.ts +129 -5
  290. package/src/git/watching/watchService.ts +10 -0
  291. package/src/git-cli/cliGitProvider.ts +25 -0
  292. package/src/git-cli/exec/git.ts +120 -6
  293. package/src/git-cli/exec/gitQueue.ts +19 -17
  294. package/src/git-cli/parsers/logParser.ts +4 -1
  295. package/src/git-cli/providers/blame.ts +3 -8
  296. package/src/git-cli/providers/branches.ts +28 -8
  297. package/src/git-cli/providers/commits.ts +34 -2
  298. package/src/git-cli/providers/config.ts +38 -6
  299. package/src/git-cli/providers/graph.ts +107 -7
  300. package/src/git-cli/providers/maintenance.ts +2599 -0
  301. package/src/git-cli/providers/operations.ts +11 -0
  302. package/src/git-cli/providers/pausedOperations.ts +7 -2
  303. package/src/git-cli/providers/tags.ts +36 -1
  304. package/src/plus/agents/agentCapabilities.ts +286 -0
  305. package/src/plus/agents/providers/claudeCodeTranscript.ts +313 -58
  306. package/src/plus/agents/providers/{claudeCodeProvider.ts → gkAgentProvider.ts} +1123 -277
  307. package/src/plus/agents/types.ts +137 -40
  308. package/src/plus/ai/models/promptTemplates.ts +1 -1
  309. package/src/plus/ai/prompts.ts +62 -4
  310. package/src/plus/git-github/api/github.ts +404 -82
  311. package/src/plus/git-github/api/issueSearchQuery.ts +49 -1
  312. package/src/plus/git-github/providers/github/blame.ts +2 -1
  313. package/src/plus/integrations/collectionMetadata.ts +23 -1
  314. package/src/plus/integrations/context.ts +1 -1
  315. package/src/plus/integrations/index.ts +1 -0
  316. package/src/plus/integrations/integrationService.ts +29 -4
  317. package/src/plus/integrations/manager.ts +48 -0
  318. package/src/plus/integrations/models/gitHostIntegration.ts +165 -129
  319. package/src/plus/integrations/models/integration.ts +57 -22
  320. package/src/plus/integrations/models/issueCache.ts +29 -0
  321. package/src/plus/integrations/models/issueReads.ts +15 -0
  322. package/src/plus/integrations/models/issuesIntegration.ts +38 -8
  323. package/src/plus/integrations/providers/azureDevOps.ts +16 -13
  324. package/src/plus/integrations/providers/bitbucket-server.ts +4 -6
  325. package/src/plus/integrations/providers/bitbucket.ts +3 -4
  326. package/src/plus/integrations/providers/github.ts +23 -7
  327. package/src/plus/integrations/providers/gitlab.ts +4 -6
  328. package/src/plus/integrations/providers/jira.ts +52 -26
  329. package/src/plus/integrations/providers/jiraIssueByKey.ts +155 -0
  330. package/src/plus/integrations/providers/linear.ts +38 -25
  331. package/src/plus/integrations/providers/models.ts +17 -5
  332. package/src/plus/integrations/providers/providerErrors.ts +115 -0
  333. package/src/plus/integrations/providers/providersApi.ts +26 -68
  334. package/src/plus/integrations/providers/trello.ts +5 -4
  335. package/src/plus/integrations/providers/utils/providerPaging.ts +14 -7
  336. package/src/plus/integrations/reads/broaden.ts +282 -70
  337. package/src/plus/integrations/reads/filters.ts +39 -1
  338. package/src/plus/integrations/reads/issueBatch.ts +197 -0
  339. package/src/plus/integrations/reads/issueTracker.ts +26 -24
  340. package/src/plus/integrations/reads/sweeps.ts +19 -12
  341. package/src/plus/integrations/reads/trackerIssue.ts +105 -0
  342. package/src/plus/integrations/reads/warnings.ts +23 -17
  343. package/src/plus/integrations/results.ts +4 -20
  344. package/src/utils/promise.ts +15 -0
  345. package/src/utils/promiseCache.ts +43 -0
  346. package/src/utils/resourceUsage.ts +5 -0
  347. package/src/utils/string.ts +38 -1
  348. package/dist/plus/agents/providers/claudeCodeProvider.d.ts.map +0 -1
  349. package/dist/plus/agents/providers/claudeCodeProvider.js.map +0 -1
@@ -0,0 +1,353 @@
1
+ /**
2
+ * Pure recommendation engine for the Git Health feature — no vscode imports, trivially unit-testable.
3
+ * Thresholds are initial, tunable, telemetry-informed values (see `.work/dev/git-health/spec.md`).
4
+ */
5
+ /** Working-tree size (via the index-bytes proxy) at/above which untracked-cache/fsmonitor/manyFiles help. */
6
+ export const trackedFilesThreshold = 10_000;
7
+ /** Loose-object estimate at/above which the `loose-objects` maintenance task is worth running. */
8
+ export const looseObjectsThreshold = 5_000;
9
+ /** Git's default uncovered-pack threshold for the `incremental-repack` auto condition. */
10
+ export const packsOutsideMultiPackIndexThreshold = 10;
11
+ /** Loose refs at/above which packing the files ref backend avoids repeated filesystem traversal. */
12
+ export const looseRefsThreshold = 256;
13
+ /** Total pack bytes at/above which a repo counts as "clearly large" for the banner gate (~1 GiB). */
14
+ export const largePackBytesThreshold = 1024 ** 3;
15
+ /** Rough bytes-per-entry of a git v2 index — turns `.git/index` size into a tracked-file-count proxy. */
16
+ export const approxBytesPerIndexEntry = 80;
17
+ /** Duration (ms) above which a git command is "slow" — mirrors the exec-layer slow-call threshold. */
18
+ export const slowCommandThresholdMs = 2000;
19
+ /**
20
+ * Extrapolates total loose-object count from a uniform sample of the 256 object fanout dirs. Loose
21
+ * objects distribute uniformly by sha prefix, so `(objectsInSampled / dirsSampled) * 256` is sound.
22
+ */
23
+ export function estimateLooseObjects(objectsInSampled, dirsSampled) {
24
+ if (dirsSampled <= 0)
25
+ return 0;
26
+ return Math.round((objectsInSampled / dirsSampled) * 256);
27
+ }
28
+ /** Turns `.git/index` byte size into an approximate tracked-file count. */
29
+ export function estimateTrackedFiles(indexBytes) {
30
+ if (indexBytes <= 0)
31
+ return 0;
32
+ return Math.round(indexBytes / approxBytesPerIndexEntry);
33
+ }
34
+ /**
35
+ * Computes the {@link GitHealthReport} from a cheap probe, passive slowness, and capabilities. Findings
36
+ * are only emitted for levers that are supported, not already applied, and past their threshold.
37
+ */
38
+ export function computeHealthReport(snapshot, slowness, capabilities) {
39
+ const estimatedLooseObjects = estimateLooseObjects(snapshot.looseObjects.objectsInSampledDirs, snapshot.looseObjects.dirsSampled);
40
+ // A normal index header is the exact tracked-file count. A sparse index header is still a useful exact
41
+ // count of its populated working set, but not of the whole repository. A split index header covers only
42
+ // the mutable layer and conflict stages duplicate paths, so neither raw count is used.
43
+ const useIndexEntryCount = snapshot.indexEntryCount != null &&
44
+ (snapshot.indexEntryCountType === 'full' || snapshot.indexEntryCountType === 'sparse');
45
+ const estimatedTrackedFiles = useIndexEntryCount
46
+ ? snapshot.indexEntryCount
47
+ : estimateTrackedFiles(snapshot.indexBytes);
48
+ const trackedFilesExact = useIndexEntryCount && snapshot.indexEntryCountType === 'full';
49
+ const trackedFilesScope = trackedFilesExact
50
+ ? 'repository'
51
+ : useIndexEntryCount && snapshot.indexEntryCountType === 'sparse'
52
+ ? 'sparseWorkingTree'
53
+ : 'estimate';
54
+ const largeWorkingTree = estimatedTrackedFiles >= trackedFilesThreshold;
55
+ const clearlyLarge = largeWorkingTree || snapshot.packBytes >= largePackBytesThreshold;
56
+ const supported = (id) => capabilities.find(c => c.id === id)?.supported === true;
57
+ const findings = [];
58
+ // Auto tier — safe `git maintenance run` one-shots (gated on `git maintenance` support).
59
+ if (snapshot.supportsMaintenanceRun) {
60
+ if (estimatedLooseObjects >= looseObjectsThreshold) {
61
+ findings.push({
62
+ tier: 'auto',
63
+ reason: 'looseObjects',
64
+ value: estimatedLooseObjects,
65
+ threshold: looseObjectsThreshold,
66
+ action: { kind: 'maintenance', task: 'loose-objects' },
67
+ });
68
+ }
69
+ const incrementalRepackThreshold = snapshot.incrementalRepackAutoThreshold;
70
+ const incrementalRepackDue = snapshot.multiPackIndexEnabled === true &&
71
+ snapshot.packsOutsideMultiPackIndex != null &&
72
+ incrementalRepackThreshold != null &&
73
+ incrementalRepackThreshold !== 0 &&
74
+ (incrementalRepackThreshold < 0
75
+ ? snapshot.packCount > 0
76
+ : snapshot.packsOutsideMultiPackIndex >= incrementalRepackThreshold);
77
+ if (incrementalRepackDue) {
78
+ findings.push({
79
+ tier: 'auto',
80
+ reason: 'packsOutsideMultiPackIndex',
81
+ value: snapshot.packsOutsideMultiPackIndex,
82
+ threshold: incrementalRepackThreshold,
83
+ action: { kind: 'maintenance', task: 'incremental-repack' },
84
+ });
85
+ }
86
+ }
87
+ if (snapshot.supportsPackRefsMaintenance &&
88
+ snapshot.repository.refFormat === 'files' &&
89
+ snapshot.looseRefs.count >= looseRefsThreshold) {
90
+ findings.push({
91
+ tier: 'auto',
92
+ reason: 'looseRefs',
93
+ value: snapshot.looseRefs.count,
94
+ threshold: looseRefsThreshold,
95
+ action: { kind: 'maintenance', task: 'pack-refs' },
96
+ });
97
+ }
98
+ // Large-working-tree levers share the same evidence; they differ only in tier and eligibility.
99
+ const trackedFilesEvidence = {
100
+ reason: 'trackedFiles',
101
+ value: estimatedTrackedFiles,
102
+ threshold: trackedFilesThreshold,
103
+ };
104
+ const workingTreeLevers = [
105
+ {
106
+ id: 'untrackedCache',
107
+ tier: 'ask',
108
+ // Skip if already on, if it previously failed git's filesystem probe for this repo, or if the
109
+ // user set the key themselves — an explicit `false`/`keep` is a decision (often made after bad
110
+ // `git status` results), and this lever respects it rather than overriding it.
111
+ eligible: !snapshot.config.untrackedCache &&
112
+ !snapshot.config.untrackedCacheConfigured &&
113
+ !snapshot.untrackedCacheNotApplicable,
114
+ },
115
+ {
116
+ id: 'fsmonitor',
117
+ tier: 'ask',
118
+ // Skip if already on or it previously failed to start for this repo.
119
+ eligible: !snapshot.config.fsmonitor && !snapshot.fsmonitorNotApplicable,
120
+ },
121
+ {
122
+ id: 'manyFiles',
123
+ tier: 'ask',
124
+ // `manyFiles` defaults the untracked cache on, so a repo whose filesystem already failed that
125
+ // probe must not be offered it either — unless the user's own explicit `core.untrackedCache`
126
+ // setting overrides the default, in which case the probe result is moot.
127
+ eligible: !snapshot.config.manyFiles &&
128
+ !(snapshot.untrackedCacheNotApplicable && !snapshot.config.untrackedCacheConfigured),
129
+ },
130
+ {
131
+ id: 'sparseIndex',
132
+ tier: 'ask',
133
+ // Sparse-directory entries are safe only in cone mode. Require a normal full index so this
134
+ // recommendation is based on the repository-wide path count, not a split/conflicted approximation.
135
+ eligible: snapshot.repository.sparseCheckout === true &&
136
+ snapshot.repository.sparseCheckoutCone === true &&
137
+ snapshot.repository.sparseIndex === false &&
138
+ snapshot.repository.splitIndex === false &&
139
+ snapshot.indexEntryCountType === 'full',
140
+ },
141
+ ];
142
+ const worktreeSlowness = slowness?.worktree;
143
+ const worktreeSlownessObserved = (worktreeSlowness?.count ?? 0) > 0;
144
+ if (largeWorkingTree || worktreeSlownessObserved) {
145
+ const evidence = largeWorkingTree
146
+ ? trackedFilesEvidence
147
+ : {
148
+ reason: 'worktreeSlowness',
149
+ value: worktreeSlowness?.maxDurationMs ?? 0,
150
+ threshold: slowCommandThresholdMs,
151
+ };
152
+ for (const lever of workingTreeLevers) {
153
+ if (!lever.eligible || !supported(lever.id))
154
+ continue;
155
+ findings.push({
156
+ tier: lever.tier,
157
+ ...evidence,
158
+ action: { kind: 'optimization', id: lever.id },
159
+ });
160
+ }
161
+ }
162
+ // Ask tier — system-scheduled background maintenance. Suggested for a not-yet-registered repo that's
163
+ // clearly large. Passive slowness is deliberately NOT enough: worktree slowness maps to the worktree
164
+ // levers above, history is already covered by demand commit-graph writes, and ref/object maintenance has
165
+ // its own measured auto-tier conditions. A generic scheduler recommendation would promise the wrong fix.
166
+ // `=== false`, not falsy: `undefined` means the registration list couldn't be read, and an unknown state
167
+ // must never be suggested away — that's how a user's own registration gets silently reclaimed by Undo.
168
+ if (clearlyLarge && snapshot.maintenanceRegistered === false && supported('backgroundMaintenance')) {
169
+ // Resolve the evidence once so reason/value/threshold can never drift apart. Ordered so each
170
+ // suggestion argues from its most DISTINCTIVE signal rather than whichever crossed first: a repo
171
+ // large by both file count and pack bytes would otherwise attach the same tracked-files evidence to
172
+ // this finding as to the fsmonitor/manyFiles findings, and the view would show two identical meters.
173
+ let evidence;
174
+ if (snapshot.packBytes >= largePackBytesThreshold) {
175
+ evidence = { reason: 'largePacks', value: snapshot.packBytes, threshold: largePackBytesThreshold };
176
+ }
177
+ else {
178
+ evidence = trackedFilesEvidence;
179
+ }
180
+ findings.push({
181
+ tier: 'ask',
182
+ ...evidence,
183
+ action: { kind: 'optimization', id: 'backgroundMaintenance' },
184
+ });
185
+ }
186
+ return {
187
+ findings: findings,
188
+ repository: snapshot.repository,
189
+ clearlyLarge: clearlyLarge,
190
+ estimatedLooseObjects: estimatedLooseObjects,
191
+ looseRefs: snapshot.looseRefs,
192
+ estimatedTrackedFiles: estimatedTrackedFiles,
193
+ trackedFilesExact: trackedFilesExact,
194
+ trackedFilesScope: trackedFilesScope,
195
+ packCount: snapshot.packCount,
196
+ packsOutsideMultiPackIndex: snapshot.packsOutsideMultiPackIndex,
197
+ packBytes: snapshot.packBytes,
198
+ commitGraph: snapshot.commitGraph,
199
+ };
200
+ }
201
+ /** Consequences that reach beyond GitLens, surfaced on the apply action itself. */
202
+ const leverNotes = {
203
+ backgroundMaintenance: 'Adds a task to your operating system’s scheduler. Undo unregisters this repository, but leaves the scheduler itself in place.',
204
+ };
205
+ /**
206
+ * Collapses a snapshot + capabilities + report into the per-lever rows the Git Health view renders.
207
+ * Pure, so the webview never re-derives ownership or eligibility rules that already live here.
208
+ */
209
+ export function computeLevers(snapshot, capabilities, report) {
210
+ const suggested = new Set(report.findings.flatMap(f => (f.action.kind === 'optimization' ? [f.action.id] : [])));
211
+ const enabled = {
212
+ untrackedCache: snapshot.config.untrackedCache,
213
+ fsmonitor: snapshot.config.fsmonitor,
214
+ manyFiles: snapshot.config.manyFiles,
215
+ // `=== true`, not the raw (possibly `undefined`) value — an unreadable registration is handled as its
216
+ // own status below, and must never fall through to "enabled".
217
+ backgroundMaintenance: snapshot.maintenanceRegistered === true,
218
+ sparseIndex: snapshot.repository.sparseIndex === true,
219
+ };
220
+ const blocked = {
221
+ untrackedCache: snapshot.untrackedCacheNotApplicable,
222
+ fsmonitor: snapshot.fsmonitorNotApplicable,
223
+ manyFiles: snapshot.untrackedCacheNotApplicable && !snapshot.config.untrackedCacheConfigured,
224
+ };
225
+ return capabilities.map(capability => {
226
+ const id = capability.id;
227
+ const note = capability.note ?? leverNotes[id];
228
+ // Every optimization lever is ask-tier now — the auto tier only ever runs maintenance tasks.
229
+ const tier = 'ask';
230
+ // Unavailable outranks everything: a lever the installed git or platform cannot do is never
231
+ // "suggested", whatever the thresholds say.
232
+ if (!capability.supported) {
233
+ return { id: id, status: 'unavailable', tier: tier, reason: capability.reason, note: note };
234
+ }
235
+ // An unreadable maintenance registration can't answer the ownership/suggestion questions below, so
236
+ // it gets its own status rather than falling through and being guessed as "not registered".
237
+ if (id === 'backgroundMaintenance' && snapshot.maintenanceRegistered === undefined) {
238
+ return {
239
+ id: id,
240
+ status: 'unavailable',
241
+ tier: tier,
242
+ reason: "Couldn't read Git's maintenance registration — try reopening the repository",
243
+ note: note,
244
+ checkFailed: true,
245
+ };
246
+ }
247
+ // Then ownership, which is what decides whether Undo is offered at all.
248
+ if (enabled[id]) {
249
+ return { id: id, status: snapshot.applied[id] ? 'applied' : 'userEnabled', tier: tier, note: note };
250
+ }
251
+ if (id === 'sparseIndex') {
252
+ if (snapshot.repository.sparseCheckout == null ||
253
+ snapshot.repository.sparseCheckoutCone == null ||
254
+ snapshot.repository.sparseIndex == null ||
255
+ snapshot.repository.splitIndex == null) {
256
+ return {
257
+ id: id,
258
+ status: 'unavailable',
259
+ tier: tier,
260
+ reason: "Couldn't determine this worktree’s sparse-checkout and index configuration",
261
+ note: note,
262
+ checkFailed: true,
263
+ };
264
+ }
265
+ if (!snapshot.repository.sparseCheckout) {
266
+ return {
267
+ id: id,
268
+ status: 'notApplicable',
269
+ tier: tier,
270
+ reason: 'This worktree is not using sparse checkout.',
271
+ note: note,
272
+ };
273
+ }
274
+ if (!snapshot.repository.sparseCheckoutCone) {
275
+ return {
276
+ id: id,
277
+ status: 'notApplicable',
278
+ tier: tier,
279
+ reason: 'Sparse indexes require cone-mode sparse checkout.',
280
+ note: note,
281
+ };
282
+ }
283
+ if (snapshot.repository.splitIndex || snapshot.indexEntryCountType === 'split') {
284
+ return {
285
+ id: id,
286
+ status: 'notApplicable',
287
+ tier: tier,
288
+ reason: 'This worktree uses a split index; disable it before enabling a sparse index.',
289
+ note: note,
290
+ };
291
+ }
292
+ if (snapshot.indexEntryCountType === 'conflicted') {
293
+ return {
294
+ id: id,
295
+ status: 'notApplicable',
296
+ tier: tier,
297
+ reason: 'Finish the current merge or rebase before enabling a sparse index.',
298
+ note: note,
299
+ };
300
+ }
301
+ }
302
+ // `notApplicable` means GitLens TRIED here and this repo can't use it — the gk marker records that.
303
+ // `capability.note` is the supported-with-caveat field, not an unavailability reason, so the
304
+ // explanation has to come from the marker's meaning instead.
305
+ if (blocked[id]) {
306
+ return {
307
+ id: id,
308
+ status: 'notApplicable',
309
+ tier: tier,
310
+ reason: id === 'fsmonitor'
311
+ ? 'The file system monitor could not start for this repository.'
312
+ : id === 'manyFiles'
313
+ ? 'This would enable the untracked cache, but this file system does not report directory changes reliably, so Git would return incorrect status results.'
314
+ : 'This file system does not report directory changes reliably, so Git would return incorrect status results.',
315
+ note: note,
316
+ };
317
+ }
318
+ // Supported and usable, just below the thresholds — `available`, never `notApplicable`. Reporting
319
+ // a healthy repo's levers as unavailable tells the user something false.
320
+ return { id: id, status: suggested.has(id) ? 'suggested' : 'available', tier: tier, note: note };
321
+ });
322
+ }
323
+ /** Auto-tier maintenance tasks the daily pass should run right now (deduped, order-stable). */
324
+ export function getAutoMaintenanceTasks(report) {
325
+ const tasks = [];
326
+ for (const finding of report.findings) {
327
+ if (finding.tier === 'auto' && finding.action.kind === 'maintenance' && !tasks.includes(finding.action.task)) {
328
+ tasks.push(finding.action.task);
329
+ }
330
+ }
331
+ return tasks;
332
+ }
333
+ /** Auto-tier optimization levers the daily pass should silently apply — none today; the auto tier currently
334
+ * applies only maintenance tasks, but this stays in place for future levers. */
335
+ export function getAutoOptimizations(report) {
336
+ const ids = [];
337
+ for (const finding of report.findings) {
338
+ if (finding.tier === 'auto' && finding.action.kind === 'optimization' && !ids.includes(finding.action.id)) {
339
+ ids.push(finding.action.id);
340
+ }
341
+ }
342
+ return ids;
343
+ }
344
+ /**
345
+ * Banner rule: fire only when the report contains an ask-tier fix and the repo is clearly large or slow in
346
+ * the working-tree family. History/ref/object slowness must not advertise unrelated worktree levers.
347
+ */
348
+ export function isBannerEligible(report, slowness) {
349
+ const hasAskTierFix = report.findings.some(f => f.tier === 'ask');
350
+ const worktreeSlownessObserved = (slowness?.worktree?.count ?? 0) > 0;
351
+ return hasAskTierFix && (report.clearlyLarge || worktreeSlownessObserved);
352
+ }
353
+ //# sourceMappingURL=gitHealth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gitHealth.js","sourceRoot":"","sources":["../../src/git/gitHealth.ts"],"names":[],"mappings":"AAOA;;;GAGG;AAEH,6GAA6G;AAC7G,MAAM,CAAC,MAAM,qBAAqB,GAAG,MAAM,CAAC;AAC5C,kGAAkG;AAClG,MAAM,CAAC,MAAM,qBAAqB,GAAG,KAAK,CAAC;AAC3C,0FAA0F;AAC1F,MAAM,CAAC,MAAM,mCAAmC,GAAG,EAAE,CAAC;AACtD,oGAAoG;AACpG,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAC;AACtC,qGAAqG;AACrG,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,IAAI,CAAC,CAAC;AACjD,yGAAyG;AACzG,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAC3C,sGAAsG;AACtG,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AA4E3C;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,gBAAwB,EAAE,WAAmB;IACjF,IAAI,WAAW,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IAE/B,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,gBAAgB,GAAG,WAAW,CAAC,GAAG,GAAG,CAAC,CAAC;AAC3D,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,oBAAoB,CAAC,UAAkB;IACtD,IAAI,UAAU,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC;IAE9B,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,wBAAwB,CAAC,CAAC;AAC1D,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAClC,QAA2B,EAC3B,QAAuC,EACvC,YAAkD;IAElD,MAAM,qBAAqB,GAAG,oBAAoB,CACjD,QAAQ,CAAC,YAAY,CAAC,oBAAoB,EAC1C,QAAQ,CAAC,YAAY,CAAC,WAAW,CACjC,CAAC;IACF,uGAAuG;IACvG,wGAAwG;IACxG,uFAAuF;IACvF,MAAM,kBAAkB,GACvB,QAAQ,CAAC,eAAe,IAAI,IAAI;QAChC,CAAC,QAAQ,CAAC,mBAAmB,KAAK,MAAM,IAAI,QAAQ,CAAC,mBAAmB,KAAK,QAAQ,CAAC,CAAC;IACxF,MAAM,qBAAqB,GAAG,kBAAkB;QAC/C,CAAC,CAAC,QAAQ,CAAC,eAAe;QAC1B,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC7C,MAAM,iBAAiB,GAAG,kBAAkB,IAAI,QAAQ,CAAC,mBAAmB,KAAK,MAAM,CAAC;IACxF,MAAM,iBAAiB,GAAG,iBAAiB;QAC1C,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,kBAAkB,IAAI,QAAQ,CAAC,mBAAmB,KAAK,QAAQ;YAChE,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,UAAU,CAAC;IACf,MAAM,gBAAgB,GAAG,qBAAqB,IAAI,qBAAqB,CAAC;IACxE,MAAM,YAAY,GAAG,gBAAgB,IAAI,QAAQ,CAAC,SAAS,IAAI,uBAAuB,CAAC;IAEvF,MAAM,SAAS,GAAG,CAAC,EAAqB,EAAW,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,SAAS,KAAK,IAAI,CAAC;IAE9G,MAAM,QAAQ,GAAuB,EAAE,CAAC;IAExC,yFAAyF;IACzF,IAAI,QAAQ,CAAC,sBAAsB,EAAE,CAAC;QACrC,IAAI,qBAAqB,IAAI,qBAAqB,EAAE,CAAC;YACpD,QAAQ,CAAC,IAAI,CAAC;gBACb,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,cAAc;gBACtB,KAAK,EAAE,qBAAqB;gBAC5B,SAAS,EAAE,qBAAqB;gBAChC,MAAM,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe,EAAE;aACtD,CAAC,CAAC;QACJ,CAAC;QACD,MAAM,0BAA0B,GAAG,QAAQ,CAAC,8BAA8B,CAAC;QAC3E,MAAM,oBAAoB,GACzB,QAAQ,CAAC,qBAAqB,KAAK,IAAI;YACvC,QAAQ,CAAC,0BAA0B,IAAI,IAAI;YAC3C,0BAA0B,IAAI,IAAI;YAClC,0BAA0B,KAAK,CAAC;YAChC,CAAC,0BAA0B,GAAG,CAAC;gBAC9B,CAAC,CAAC,QAAQ,CAAC,SAAS,GAAG,CAAC;gBACxB,CAAC,CAAC,QAAQ,CAAC,0BAA0B,IAAI,0BAA0B,CAAC,CAAC;QACvE,IAAI,oBAAoB,EAAE,CAAC;YAC1B,QAAQ,CAAC,IAAI,CAAC;gBACb,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,4BAA4B;gBACpC,KAAK,EAAE,QAAQ,CAAC,0BAA0B;gBAC1C,SAAS,EAAE,0BAA0B;gBACrC,MAAM,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,oBAAoB,EAAE;aAC3D,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IACD,IACC,QAAQ,CAAC,2BAA2B;QACpC,QAAQ,CAAC,UAAU,CAAC,SAAS,KAAK,OAAO;QACzC,QAAQ,CAAC,SAAS,CAAC,KAAK,IAAI,kBAAkB,EAC7C,CAAC;QACF,QAAQ,CAAC,IAAI,CAAC;YACb,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,WAAW;YACnB,KAAK,EAAE,QAAQ,CAAC,SAAS,CAAC,KAAK;YAC/B,SAAS,EAAE,kBAAkB;YAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,WAAW,EAAE;SAClD,CAAC,CAAC;IACJ,CAAC;IAED,+FAA+F;IAC/F,MAAM,oBAAoB,GAAG;QAC5B,MAAM,EAAE,cAAc;QACtB,KAAK,EAAE,qBAAqB;QAC5B,SAAS,EAAE,qBAAqB;KACvB,CAAC;IACX,MAAM,iBAAiB,GAA8E;QACpG;YACC,EAAE,EAAE,gBAAgB;YACpB,IAAI,EAAE,KAAK;YACX,8FAA8F;YAC9F,+FAA+F;YAC/F,+EAA+E;YAC/E,QAAQ,EACP,CAAC,QAAQ,CAAC,MAAM,CAAC,cAAc;gBAC/B,CAAC,QAAQ,CAAC,MAAM,CAAC,wBAAwB;gBACzC,CAAC,QAAQ,CAAC,2BAA2B;SACtC;QACD;YACC,EAAE,EAAE,WAAW;YACf,IAAI,EAAE,KAAK;YACX,qEAAqE;YACrE,QAAQ,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,QAAQ,CAAC,sBAAsB;SACxE;QACD;YACC,EAAE,EAAE,WAAW;YACf,IAAI,EAAE,KAAK;YACX,8FAA8F;YAC9F,6FAA6F;YAC7F,yEAAyE;YACzE,QAAQ,EACP,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS;gBAC1B,CAAC,CAAC,QAAQ,CAAC,2BAA2B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,wBAAwB,CAAC;SACrF;QACD;YACC,EAAE,EAAE,aAAa;YACjB,IAAI,EAAE,KAAK;YACX,2FAA2F;YAC3F,mGAAmG;YACnG,QAAQ,EACP,QAAQ,CAAC,UAAU,CAAC,cAAc,KAAK,IAAI;gBAC3C,QAAQ,CAAC,UAAU,CAAC,kBAAkB,KAAK,IAAI;gBAC/C,QAAQ,CAAC,UAAU,CAAC,WAAW,KAAK,KAAK;gBACzC,QAAQ,CAAC,UAAU,CAAC,UAAU,KAAK,KAAK;gBACxC,QAAQ,CAAC,mBAAmB,KAAK,MAAM;SACxC;KACD,CAAC;IACF,MAAM,gBAAgB,GAAG,QAAQ,EAAE,QAAQ,CAAC;IAC5C,MAAM,wBAAwB,GAAG,CAAC,gBAAgB,EAAE,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IACpE,IAAI,gBAAgB,IAAI,wBAAwB,EAAE,CAAC;QAClD,MAAM,QAAQ,GAA6D,gBAAgB;YAC1F,CAAC,CAAC,oBAAoB;YACtB,CAAC,CAAC;gBACA,MAAM,EAAE,kBAAkB;gBAC1B,KAAK,EAAE,gBAAgB,EAAE,aAAa,IAAI,CAAC;gBAC3C,SAAS,EAAE,sBAAsB;aACjC,CAAC;QACJ,KAAK,MAAM,KAAK,IAAI,iBAAiB,EAAE,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,QAAQ,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAE,SAAS;YAEtD,QAAQ,CAAC,IAAI,CAAC;gBACb,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,GAAG,QAAQ;gBACX,MAAM,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE;aAC9C,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IAED,qGAAqG;IACrG,qGAAqG;IACrG,yGAAyG;IACzG,yGAAyG;IACzG,yGAAyG;IACzG,uGAAuG;IACvG,IAAI,YAAY,IAAI,QAAQ,CAAC,qBAAqB,KAAK,KAAK,IAAI,SAAS,CAAC,uBAAuB,CAAC,EAAE,CAAC;QACpG,6FAA6F;QAC7F,iGAAiG;QACjG,oGAAoG;QACpG,qGAAqG;QACrG,IAAI,QAAkE,CAAC;QACvE,IAAI,QAAQ,CAAC,SAAS,IAAI,uBAAuB,EAAE,CAAC;YACnD,QAAQ,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE,uBAAuB,EAAE,CAAC;QACpG,CAAC;aAAM,CAAC;YACP,QAAQ,GAAG,oBAAoB,CAAC;QACjC,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC;YACb,IAAI,EAAE,KAAK;YACX,GAAG,QAAQ;YACX,MAAM,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,uBAAuB,EAAE;SAC7D,CAAC,CAAC;IACJ,CAAC;IAED,OAAO;QACN,QAAQ,EAAE,QAAQ;QAClB,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,YAAY,EAAE,YAAY;QAC1B,qBAAqB,EAAE,qBAAqB;QAC5C,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,qBAAqB,EAAE,qBAAqB;QAC5C,iBAAiB,EAAE,iBAAiB;QACpC,iBAAiB,EAAE,iBAAiB;QACpC,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,0BAA0B,EAAE,QAAQ,CAAC,0BAA0B;QAC/D,SAAS,EAAE,QAAQ,CAAC,SAAS;QAC7B,WAAW,EAAE,QAAQ,CAAC,WAAW;KACjC,CAAC;AACH,CAAC;AA+BD,mFAAmF;AACnF,MAAM,UAAU,GAA+C;IAC9D,qBAAqB,EACpB,+HAA+H;CAChI,CAAC;AAEF;;;GAGG;AACH,MAAM,UAAU,aAAa,CAC5B,QAA2B,EAC3B,YAAkD,EAClD,MAAuB;IAEvB,MAAM,SAAS,GAAG,IAAI,GAAG,CACxB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CACrF,CAAC;IAEF,MAAM,OAAO,GAAuC;QACnD,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,cAAc;QAC9C,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;QACpC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;QACpC,sGAAsG;QACtG,8DAA8D;QAC9D,qBAAqB,EAAE,QAAQ,CAAC,qBAAqB,KAAK,IAAI;QAC9D,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,WAAW,KAAK,IAAI;KACrD,CAAC;IACF,MAAM,OAAO,GAAgD;QAC5D,cAAc,EAAE,QAAQ,CAAC,2BAA2B;QACpD,SAAS,EAAE,QAAQ,CAAC,sBAAsB;QAC1C,SAAS,EAAE,QAAQ,CAAC,2BAA2B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,wBAAwB;KAC5F,CAAC;IAEF,OAAO,YAAY,CAAC,GAAG,CAAiB,UAAU,CAAC,EAAE;QACpD,MAAM,EAAE,GAAG,UAAU,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;QAC/C,6FAA6F;QAC7F,MAAM,IAAI,GAAwB,KAAK,CAAC;QAExC,4FAA4F;QAC5F,4CAA4C;QAC5C,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;YAC3B,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAC7F,CAAC;QACD,mGAAmG;QACnG,4FAA4F;QAC5F,IAAI,EAAE,KAAK,uBAAuB,IAAI,QAAQ,CAAC,qBAAqB,KAAK,SAAS,EAAE,CAAC;YACpF,OAAO;gBACN,EAAE,EAAE,EAAE;gBACN,MAAM,EAAE,aAAa;gBACrB,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,6EAA6E;gBACrF,IAAI,EAAE,IAAI;gBACV,WAAW,EAAE,IAAI;aACjB,CAAC;QACH,CAAC;QACD,wEAAwE;QACxE,IAAI,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YACjB,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACrG,CAAC;QACD,IAAI,EAAE,KAAK,aAAa,EAAE,CAAC;YAC1B,IACC,QAAQ,CAAC,UAAU,CAAC,cAAc,IAAI,IAAI;gBAC1C,QAAQ,CAAC,UAAU,CAAC,kBAAkB,IAAI,IAAI;gBAC9C,QAAQ,CAAC,UAAU,CAAC,WAAW,IAAI,IAAI;gBACvC,QAAQ,CAAC,UAAU,CAAC,UAAU,IAAI,IAAI,EACrC,CAAC;gBACF,OAAO;oBACN,EAAE,EAAE,EAAE;oBACN,MAAM,EAAE,aAAa;oBACrB,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,4EAA4E;oBACpF,IAAI,EAAE,IAAI;oBACV,WAAW,EAAE,IAAI;iBACjB,CAAC;YACH,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;gBACzC,OAAO;oBACN,EAAE,EAAE,EAAE;oBACN,MAAM,EAAE,eAAe;oBACvB,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,6CAA6C;oBACrD,IAAI,EAAE,IAAI;iBACV,CAAC;YACH,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC;gBAC7C,OAAO;oBACN,EAAE,EAAE,EAAE;oBACN,MAAM,EAAE,eAAe;oBACvB,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,mDAAmD;oBAC3D,IAAI,EAAE,IAAI;iBACV,CAAC;YACH,CAAC;YACD,IAAI,QAAQ,CAAC,UAAU,CAAC,UAAU,IAAI,QAAQ,CAAC,mBAAmB,KAAK,OAAO,EAAE,CAAC;gBAChF,OAAO;oBACN,EAAE,EAAE,EAAE;oBACN,MAAM,EAAE,eAAe;oBACvB,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,8EAA8E;oBACtF,IAAI,EAAE,IAAI;iBACV,CAAC;YACH,CAAC;YACD,IAAI,QAAQ,CAAC,mBAAmB,KAAK,YAAY,EAAE,CAAC;gBACnD,OAAO;oBACN,EAAE,EAAE,EAAE;oBACN,MAAM,EAAE,eAAe;oBACvB,IAAI,EAAE,IAAI;oBACV,MAAM,EAAE,oEAAoE;oBAC5E,IAAI,EAAE,IAAI;iBACV,CAAC;YACH,CAAC;QACF,CAAC;QACD,oGAAoG;QACpG,6FAA6F;QAC7F,6DAA6D;QAC7D,IAAI,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;YACjB,OAAO;gBACN,EAAE,EAAE,EAAE;gBACN,MAAM,EAAE,eAAe;gBACvB,IAAI,EAAE,IAAI;gBACV,MAAM,EACL,EAAE,KAAK,WAAW;oBACjB,CAAC,CAAC,8DAA8D;oBAChE,CAAC,CAAC,EAAE,KAAK,WAAW;wBACnB,CAAC,CAAC,uJAAuJ;wBACzJ,CAAC,CAAC,4GAA4G;gBACjH,IAAI,EAAE,IAAI;aACV,CAAC;QACH,CAAC;QAED,kGAAkG;QAClG,yEAAyE;QACzE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAClG,CAAC,CAAC,CAAC;AACJ,CAAC;AAED,+FAA+F;AAC/F,MAAM,UAAU,uBAAuB,CAAC,MAAuB;IAC9D,MAAM,KAAK,GAAyB,EAAE,CAAC;IACvC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9G,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC;IACF,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED;gFACgF;AAChF,MAAM,UAAU,oBAAoB,CAAC,MAAuB;IAC3D,MAAM,GAAG,GAAwB,EAAE,CAAC;IACpC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvC,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,cAAc,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;YAC3G,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC7B,CAAC;IACF,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAuB,EAAE,QAAuC;IAChG,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;IAClE,MAAM,wBAAwB,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;IACtE,OAAO,aAAa,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,wBAAwB,CAAC,CAAC;AAC3E,CAAC"}
@@ -1,5 +1,5 @@
1
1
  type SearchOperatorsShortForm = '' | '=:' | '@:' | '#:' | '?:' | '~:' | 'is:' | '>:' | '<:' | '^:';
2
- export type SearchOperatorsLongForm = 'message:' | 'author:' | 'commit:' | 'file:' | 'change:' | 'type:' | 'after:' | 'since:' | 'before:' | 'until:' | 'ref:';
2
+ export type SearchOperatorsLongForm = 'message:' | '-message:' | 'author:' | 'committer:' | 'commit:' | 'file:' | 'change:' | 'type:' | 'after:' | 'since:' | 'before:' | 'until:' | 'ref:';
3
3
  export type SearchOperators = SearchOperatorsShortForm | SearchOperatorsLongForm;
4
4
  export declare const searchOperators: Set<string>;
5
5
  export declare const searchOperatorsToLongFormMap: Map<SearchOperators, SearchOperatorsLongForm>;
@@ -10,6 +10,9 @@ export interface SearchQuery {
10
10
  query: string;
11
11
  processedQuery?: string;
12
12
  error?: string;
13
+ explanation?: string;
14
+ mode?: 'highlight' | 'filter' | 'select';
15
+ alternates?: string[];
13
16
  };
14
17
  filter?: boolean;
15
18
  matchAll?: boolean;
@@ -41,8 +44,8 @@ export interface ParsedSearchQuery {
41
44
  export interface SearchQueryFilters {
42
45
  /** Specifies whether the search results will be filtered to specific files */
43
46
  files: boolean;
44
- /** Specifies whether the search results will be filtered to a specific type, only `stash`, `tip`, and `wip` are supported */
45
- type?: 'stash' | 'tip' | 'wip';
47
+ /** Specifies whether the search results will be filtered to a specific type, only `stash`, `tip`, `wip`, and `merge` are supported */
48
+ type?: 'stash' | 'tip' | 'wip' | 'merge';
46
49
  /** Specifies whether the search results will be filtered to a specific ref or ref range */
47
50
  refs: boolean;
48
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/git/models/search.ts"],"names":[],"mappings":"AAAA,KAAK,wBAAwB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AACnG,MAAM,MAAM,uBAAuB,GAChC,UAAU,GACV,SAAS,GACT,SAAS,GACT,OAAO,GACP,SAAS,GACT,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,QAAQ,GACR,MAAM,CAAC;AACV,MAAM,MAAM,eAAe,GAAG,wBAAwB,GAAG,uBAAuB,CAAC;AAEjF,eAAO,MAAM,eAAe,aAsB1B,CAAC;AAEH,eAAO,MAAM,4BAA4B,+CAsBvC,CAAC;AAEH,eAAO,MAAM,wBAAwB,QAC6H,CAAC;AAEnK,MAAM,WAAW,WAAW;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,OAAO,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAEvF,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB;IACtC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,QAAQ,CAAC;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IAC1E,0FAA0F;IAC1F,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,4DAA4D;AAC5D,MAAM,MAAM,qBAAqB,GAAG,eAAe,GAAG,KAAK,CAAC;AAE5D,MAAM,WAAW,iBAAiB;IACjC,UAAU,EAAE,GAAG,CAAC,uBAAuB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IACtD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,0DAA0D;IAC1D,cAAc,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,qBAAqB,CAAA;KAAE,EAAE,CAAC;CACnF;AAED,MAAM,WAAW,kBAAkB;IAClC,8EAA8E;IAC9E,KAAK,EAAE,OAAO,CAAC;IACf,6HAA6H;IAC7H,IAAI,CAAC,EAAE,OAAO,GAAG,KAAK,GAAG,KAAK,CAAC;IAC/B,2FAA2F;IAC3F,IAAI,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,qBAAqB;IACrC,mBAAmB;IACnB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,kCAAkC;IAClC,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,6BAA6B;IAC7B,IAAI,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;IAE/B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,UAAU,EAAE,GAAG,CAAC,uBAAuB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;CACtD;AAED,MAAM,WAAW,wBAAwB;IACxC,iBAAiB;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;IAEf,OAAO,EAAE,kBAAkB,CAAC;IAC5B,UAAU,EAAE,GAAG,CAAC,uBAAuB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;CACtD"}
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/git/models/search.ts"],"names":[],"mappings":"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"}
@@ -2,8 +2,10 @@ export const searchOperators = new Set([
2
2
  '',
3
3
  '=:',
4
4
  'message:',
5
+ '-message:',
5
6
  '@:',
6
7
  'author:',
8
+ 'committer:',
7
9
  '#:',
8
10
  'commit:',
9
11
  '?:',
@@ -25,8 +27,10 @@ export const searchOperatorsToLongFormMap = new Map([
25
27
  ['', 'message:'],
26
28
  ['=:', 'message:'],
27
29
  ['message:', 'message:'],
30
+ ['-message:', '-message:'],
28
31
  ['@:', 'author:'],
29
32
  ['author:', 'author:'],
33
+ ['committer:', 'committer:'],
30
34
  ['#:', 'commit:'],
31
35
  ['commit:', 'commit:'],
32
36
  ['?:', 'file:'],
@@ -44,5 +48,5 @@ export const searchOperatorsToLongFormMap = new Map([
44
48
  ['^:', 'ref:'],
45
49
  ['ref:', 'ref:'],
46
50
  ]);
47
- export const searchOperationHelpRegex = /(?:^|(\b|\s)*)((=:|message:|@:|author:|#:|commit:|\?:|file:|~:|change:|is:|type:|>:|after:|since:|<:|before:|until:|\^:|ref:)(?:"[^"]*"?|[^\s]*))(?:$|(\b|\s))/g;
51
+ export const searchOperationHelpRegex = /(?:^|(\b|\s)*)((=:|message:|-message:|@:|author:|committer:|#:|commit:|\?:|file:|~:|change:|is:|type:|>:|after:|since:|<:|before:|until:|\^:|ref:)(?:"[^"]*"?|[^\s]*))(?:$|(\b|\s))/g;
48
52
  //# sourceMappingURL=search.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/git/models/search.ts"],"names":[],"mappings":"AAeA,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,GAAG,CAAS;IAC9C,EAAE;IACF,IAAI;IACJ,UAAU;IACV,IAAI;IACJ,SAAS;IACT,IAAI;IACJ,SAAS;IACT,IAAI;IACJ,OAAO;IACP,IAAI;IACJ,SAAS;IACT,KAAK;IACL,OAAO;IACP,IAAI;IACJ,QAAQ;IACR,QAAQ;IACR,IAAI;IACJ,SAAS;IACT,QAAQ;IACR,IAAI;IACJ,MAAM;CACN,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,GAAG,CAA2C;IAC7F,CAAC,EAAE,EAAE,UAAU,CAAC;IAChB,CAAC,IAAI,EAAE,UAAU,CAAC;IAClB,CAAC,UAAU,EAAE,UAAU,CAAC;IACxB,CAAC,IAAI,EAAE,SAAS,CAAC;IACjB,CAAC,SAAS,EAAE,SAAS,CAAC;IACtB,CAAC,IAAI,EAAE,SAAS,CAAC;IACjB,CAAC,SAAS,EAAE,SAAS,CAAC;IACtB,CAAC,IAAI,EAAE,OAAO,CAAC;IACf,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,IAAI,EAAE,SAAS,CAAC;IACjB,CAAC,SAAS,EAAE,SAAS,CAAC;IACtB,CAAC,KAAK,EAAE,OAAO,CAAC;IAChB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,IAAI,EAAE,QAAQ,CAAC;IAChB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,IAAI,EAAE,SAAS,CAAC;IACjB,CAAC,SAAS,EAAE,SAAS,CAAC;IACtB,CAAC,QAAQ,EAAE,SAAS,CAAC;IACrB,CAAC,IAAI,EAAE,MAAM,CAAC;IACd,CAAC,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GACpC,iKAAiK,CAAC"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../../src/git/models/search.ts"],"names":[],"mappings":"AAiBA,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,GAAG,CAAS;IAC9C,EAAE;IACF,IAAI;IACJ,UAAU;IACV,WAAW;IACX,IAAI;IACJ,SAAS;IACT,YAAY;IACZ,IAAI;IACJ,SAAS;IACT,IAAI;IACJ,OAAO;IACP,IAAI;IACJ,SAAS;IACT,KAAK;IACL,OAAO;IACP,IAAI;IACJ,QAAQ;IACR,QAAQ;IACR,IAAI;IACJ,SAAS;IACT,QAAQ;IACR,IAAI;IACJ,MAAM;CACN,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,4BAA4B,GAAG,IAAI,GAAG,CAA2C;IAC7F,CAAC,EAAE,EAAE,UAAU,CAAC;IAChB,CAAC,IAAI,EAAE,UAAU,CAAC;IAClB,CAAC,UAAU,EAAE,UAAU,CAAC;IACxB,CAAC,WAAW,EAAE,WAAW,CAAC;IAC1B,CAAC,IAAI,EAAE,SAAS,CAAC;IACjB,CAAC,SAAS,EAAE,SAAS,CAAC;IACtB,CAAC,YAAY,EAAE,YAAY,CAAC;IAC5B,CAAC,IAAI,EAAE,SAAS,CAAC;IACjB,CAAC,SAAS,EAAE,SAAS,CAAC;IACtB,CAAC,IAAI,EAAE,OAAO,CAAC;IACf,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,IAAI,EAAE,SAAS,CAAC;IACjB,CAAC,SAAS,EAAE,SAAS,CAAC;IACtB,CAAC,KAAK,EAAE,OAAO,CAAC;IAChB,CAAC,OAAO,EAAE,OAAO,CAAC;IAClB,CAAC,IAAI,EAAE,QAAQ,CAAC;IAChB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,QAAQ,EAAE,QAAQ,CAAC;IACpB,CAAC,IAAI,EAAE,SAAS,CAAC;IACjB,CAAC,SAAS,EAAE,SAAS,CAAC;IACtB,CAAC,QAAQ,EAAE,SAAS,CAAC;IACrB,CAAC,IAAI,EAAE,MAAM,CAAC;IACd,CAAC,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GACpC,sLAAsL,CAAC"}
@@ -11,12 +11,18 @@ export declare function parseGitDiff(data: string, includeRawContent?: boolean):
11
11
  * @returns Filtered diff with only included files, or the original diff if no files were excluded
12
12
  */
13
13
  export declare function filterDiffFiles(diff: string, getIncludedPaths: (paths: string[]) => string[] | Promise<string[]>): Promise<string>;
14
- /** Counts insertions and deletions from a parsed diff file */
14
+ /**
15
+ * Counts the added and removed lines of a parsed diff file, matching what `git diff --numstat`
16
+ * reports for it. Binary files and files without content changes (pure renames, mode changes)
17
+ * count as 0/0.
18
+ */
15
19
  export declare function countDiffInsertionsAndDeletions(file: ParsedGitDiffFile): {
16
20
  insertions: number;
17
21
  deletions: number;
18
22
  };
19
- /** Counts approximate number of changed lines in a diff file */
23
+ /** Counts the approximate number of changed lines in a diff file — the size of both sides of its
24
+ * hunks, unchanged context included. Suitable for relative sizing, not for reporting a line count
25
+ * to the user; use {@link countDiffInsertionsAndDeletions} for that. */
20
26
  export declare function countDiffLines(file: ParsedGitDiffFile): number;
21
27
  export declare function parseGitFileDiff(data: string, includeRawContent?: boolean): ParsedGitDiffHunks | undefined;
22
28
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"diffParser.d.ts","sourceRoot":"","sources":["../../../src/git/parsers/diffParser.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACX,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EAIjB,kBAAkB,EAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAIxD,eAAO,MAAM,SAAS,QAAiC,CAAC;AACxD,eAAO,MAAM,aAAa,QAAgD,CAAC;AAgH3E,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,UAAQ,GAAG,aAAa,CAwDnF;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CACpC,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,GACjE,OAAO,CAAC,MAAM,CAAC,CAsBjB;AAED,8DAA8D;AAC9D,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,iBAAiB,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAQlH;AAED,gEAAgE;AAChE,wBAAgB,cAAc,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,CAM9D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,UAAQ,GAAG,kBAAkB,GAAG,SAAS,CA2HxG;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,EAAE,GAAG,SAAS,CA0H9F;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,EAAE,CA0FlF;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAuBhF"}
1
+ {"version":3,"file":"diffParser.d.ts","sourceRoot":"","sources":["../../../src/git/parsers/diffParser.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACX,gBAAgB,EAChB,aAAa,EACb,iBAAiB,EAIjB,kBAAkB,EAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAIxD,eAAO,MAAM,SAAS,QAAiC,CAAC;AACxD,eAAO,MAAM,aAAa,QAAgD,CAAC;AAgH3E,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,UAAQ,GAAG,aAAa,CAwDnF;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CACpC,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,GACjE,OAAO,CAAC,MAAM,CAAC,CAsBjB;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,iBAAiB,GAAG;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAyBlH;AAED;;yEAEyE;AACzE,wBAAgB,cAAc,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,CAM9D;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,UAAQ,GAAG,kBAAkB,GAAG,SAAS,CA2HxG;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,EAAE,GAAG,SAAS,CA0H9F;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,aAAa,EAAE,CA0FlF;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAuBhF"}
@@ -235,17 +235,40 @@ export async function filterDiffFiles(diff, getIncludedPaths) {
235
235
  .map(f => f.chunk)
236
236
  .join('');
237
237
  }
238
- /** Counts insertions and deletions from a parsed diff file */
238
+ /**
239
+ * Counts the added and removed lines of a parsed diff file, matching what `git diff --numstat`
240
+ * reports for it. Binary files and files without content changes (pure renames, mode changes)
241
+ * count as 0/0.
242
+ */
239
243
  export function countDiffInsertionsAndDeletions(file) {
240
244
  let insertions = 0;
241
245
  let deletions = 0;
242
246
  for (const hunk of file.hunks) {
243
- insertions += hunk.current.count;
244
- deletions += hunk.previous.count;
247
+ // Counted off the hunk's raw content rather than its header counts (which include unchanged
248
+ // context) or `hunk.lines` (which merges a removed/added pair into one `changed` entry and
249
+ // lets a following context line overwrite the tail of an asymmetric block). Scanned in place
250
+ // rather than split into lines: splitting a multi-megabyte diff allocates a string per line
251
+ // for a single pass that only ever looks at each line's first character.
252
+ const { content } = hunk;
253
+ for (let start = 0; start < content.length;) {
254
+ const marker = content[start];
255
+ if (marker === '+') {
256
+ insertions++;
257
+ }
258
+ else if (marker === '-') {
259
+ deletions++;
260
+ }
261
+ const end = content.indexOf('\n', start);
262
+ if (end === -1)
263
+ break;
264
+ start = end + 1;
265
+ }
245
266
  }
246
267
  return { insertions: insertions, deletions: deletions };
247
268
  }
248
- /** Counts approximate number of changed lines in a diff file */
269
+ /** Counts the approximate number of changed lines in a diff file — the size of both sides of its
270
+ * hunks, unchanged context included. Suitable for relative sizing, not for reporting a line count
271
+ * to the user; use {@link countDiffInsertionsAndDeletions} for that. */
249
272
  export function countDiffLines(file) {
250
273
  let count = 0;
251
274
  for (const hunk of file.hunks) {
@@ -1 +1 @@
1
- {"version":3,"file":"diffParser.js","sourceRoot":"","sources":["../../../src/git/parsers/diffParser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diffParser.js","sourceRoot":"","sources":["../../../src/git/parsers/diffParser.ts"],"names":[],"mappings":"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"}