@gitkraken/core-gitlens 0.2.0 → 0.3.1

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 (448) hide show
  1. package/CHANGELOG.md +11 -1
  2. package/dist/git/cache.d.ts +38 -8
  3. package/dist/git/cache.d.ts.map +1 -1
  4. package/dist/git/cache.js +120 -55
  5. package/dist/git/cache.js.map +1 -1
  6. package/dist/git/context.d.ts +19 -0
  7. package/dist/git/context.d.ts.map +1 -1
  8. package/dist/git/context.js.map +1 -1
  9. package/dist/git/features.d.ts +1 -1
  10. package/dist/git/features.d.ts.map +1 -1
  11. package/dist/git/features.js +1 -0
  12. package/dist/git/features.js.map +1 -1
  13. package/dist/git/models/commit.d.ts.map +1 -1
  14. package/dist/git/models/commit.js.map +1 -1
  15. package/dist/git/models/graph.d.ts +96 -0
  16. package/dist/git/models/graph.d.ts.map +1 -1
  17. package/dist/git/models/graph.js +24 -1
  18. package/dist/git/models/graph.js.map +1 -1
  19. package/dist/git/models/reference.d.ts +31 -0
  20. package/dist/git/models/reference.d.ts.map +1 -1
  21. package/dist/git/models/remote.d.ts.map +1 -1
  22. package/dist/git/models/remote.js.map +1 -1
  23. package/dist/git/models/remoteProvider.d.ts +1 -0
  24. package/dist/git/models/remoteProvider.d.ts.map +1 -1
  25. package/dist/git/models/remoteProvider.js.map +1 -1
  26. package/dist/git/models/repository.d.ts +30 -13
  27. package/dist/git/models/repository.d.ts.map +1 -1
  28. package/dist/git/models/repository.js +89 -87
  29. package/dist/git/models/repository.js.map +1 -1
  30. package/dist/git/models/search.d.ts +2 -2
  31. package/dist/git/models/search.d.ts.map +1 -1
  32. package/dist/git/models/statusFile.d.ts +9 -0
  33. package/dist/git/models/statusFile.d.ts.map +1 -1
  34. package/dist/git/models/statusFile.js +11 -0
  35. package/dist/git/models/statusFile.js.map +1 -1
  36. package/dist/git/models/worktree.d.ts +4 -1
  37. package/dist/git/models/worktree.d.ts.map +1 -1
  38. package/dist/git/models/worktree.js +2 -2
  39. package/dist/git/models/worktree.js.map +1 -1
  40. package/dist/git/parsers/diffParser.d.ts.map +1 -1
  41. package/dist/git/parsers/diffParser.js.map +1 -1
  42. package/dist/git/providers/branches.d.ts +15 -4
  43. package/dist/git/providers/branches.d.ts.map +1 -1
  44. package/dist/git/providers/commits.d.ts +4 -0
  45. package/dist/git/providers/commits.d.ts.map +1 -1
  46. package/dist/git/providers/config.d.ts +5 -4
  47. package/dist/git/providers/config.d.ts.map +1 -1
  48. package/dist/git/providers/operations.d.ts +61 -12
  49. package/dist/git/providers/operations.d.ts.map +1 -1
  50. package/dist/git/providers/pausedOperations.d.ts +3 -1
  51. package/dist/git/providers/pausedOperations.d.ts.map +1 -1
  52. package/dist/git/providers/refs.d.ts +23 -2
  53. package/dist/git/providers/refs.d.ts.map +1 -1
  54. package/dist/git/providers/staging.d.ts +16 -0
  55. package/dist/git/providers/staging.d.ts.map +1 -1
  56. package/dist/git/providers/status.d.ts +4 -1
  57. package/dist/git/providers/status.d.ts.map +1 -1
  58. package/dist/git/remotes/azure-devops.d.ts.map +1 -1
  59. package/dist/git/remotes/azure-devops.js.map +1 -1
  60. package/dist/git/remotes/custom.d.ts +2 -0
  61. package/dist/git/remotes/custom.d.ts.map +1 -1
  62. package/dist/git/remotes/custom.js +20 -0
  63. package/dist/git/remotes/custom.js.map +1 -1
  64. package/dist/git/{exec.types.d.ts → run.types.d.ts} +22 -3
  65. package/dist/git/run.types.d.ts.map +1 -0
  66. package/dist/git/run.types.js +2 -0
  67. package/dist/git/run.types.js.map +1 -0
  68. package/dist/git/service.d.ts.map +1 -1
  69. package/dist/git/service.js.map +1 -1
  70. package/dist/git/utils/autolink.utils.d.ts.map +1 -1
  71. package/dist/git/utils/autolink.utils.js.map +1 -1
  72. package/dist/git/utils/blame.utils.d.ts.map +1 -1
  73. package/dist/git/utils/blame.utils.js.map +1 -1
  74. package/dist/git/utils/conflictResolution.utils.d.ts +6 -0
  75. package/dist/git/utils/conflictResolution.utils.d.ts.map +1 -0
  76. package/dist/git/utils/conflictResolution.utils.js +25 -0
  77. package/dist/git/utils/conflictResolution.utils.js.map +1 -0
  78. package/dist/git/utils/contributor.utils.d.ts +3 -0
  79. package/dist/git/utils/contributor.utils.d.ts.map +1 -1
  80. package/dist/git/utils/contributor.utils.js +22 -0
  81. package/dist/git/utils/contributor.utils.js.map +1 -1
  82. package/dist/git/utils/fileStatus.utils.d.ts +2 -1
  83. package/dist/git/utils/fileStatus.utils.d.ts.map +1 -1
  84. package/dist/git/utils/fileStatus.utils.js +4 -0
  85. package/dist/git/utils/fileStatus.utils.js.map +1 -1
  86. package/dist/git/utils/reachability.utils.d.ts +37 -0
  87. package/dist/git/utils/reachability.utils.d.ts.map +1 -0
  88. package/dist/git/utils/reachability.utils.js +96 -0
  89. package/dist/git/utils/reachability.utils.js.map +1 -0
  90. package/dist/git/utils/search.utils.d.ts.map +1 -1
  91. package/dist/git/utils/search.utils.js +3 -0
  92. package/dist/git/utils/search.utils.js.map +1 -1
  93. package/dist/git/utils/sorting.d.ts +8 -0
  94. package/dist/git/utils/sorting.d.ts.map +1 -1
  95. package/dist/git/utils/sorting.js +15 -0
  96. package/dist/git/utils/sorting.js.map +1 -1
  97. package/dist/git/utils/status.utils.d.ts.map +1 -1
  98. package/dist/git/utils/status.utils.js.map +1 -1
  99. package/dist/git/watching/classifyChange.d.ts.map +1 -1
  100. package/dist/git/watching/classifyChange.js +8 -0
  101. package/dist/git/watching/classifyChange.js.map +1 -1
  102. package/dist/git/watching/gitIgnoreFilter.js +1 -1
  103. package/dist/git/watching/gitIgnoreFilter.js.map +1 -1
  104. package/dist/git/watching/initWatcher.d.ts.map +1 -1
  105. package/dist/git/watching/initWatcher.js.map +1 -1
  106. package/dist/git/watching/watchGroup.d.ts.map +1 -1
  107. package/dist/git/watching/watchGroup.js.map +1 -1
  108. package/dist/git/watching/watchService.d.ts +4 -2
  109. package/dist/git/watching/watchService.d.ts.map +1 -1
  110. package/dist/git/watching/watchService.js +31 -6
  111. package/dist/git/watching/watchService.js.map +1 -1
  112. package/dist/git/watching/watchSession.d.ts +14 -12
  113. package/dist/git/watching/watchSession.d.ts.map +1 -1
  114. package/dist/git/watching/watchSession.js +56 -55
  115. package/dist/git/watching/watchSession.js.map +1 -1
  116. package/dist/git-cli/exec/exec.types.d.ts +1 -1
  117. package/dist/git-cli/exec/exec.types.d.ts.map +1 -1
  118. package/dist/git-cli/exec/git.d.ts +3 -3
  119. package/dist/git-cli/exec/git.d.ts.map +1 -1
  120. package/dist/git-cli/exec/git.js.map +1 -1
  121. package/dist/git-cli/exec/gitQueue.d.ts +10 -2
  122. package/dist/git-cli/exec/gitQueue.d.ts.map +1 -1
  123. package/dist/git-cli/exec/gitQueue.js +39 -12
  124. package/dist/git-cli/exec/gitQueue.js.map +1 -1
  125. package/dist/git-cli/parsers/blameParser.d.ts.map +1 -1
  126. package/dist/git-cli/parsers/blameParser.js.map +1 -1
  127. package/dist/git-cli/parsers/logParser.js.map +1 -1
  128. package/dist/git-cli/parsers/refParser.d.ts +3 -30
  129. package/dist/git-cli/parsers/refParser.d.ts.map +1 -1
  130. package/dist/git-cli/parsers/refParser.js +30 -30
  131. package/dist/git-cli/parsers/refParser.js.map +1 -1
  132. package/dist/git-cli/providers/blame.d.ts.map +1 -1
  133. package/dist/git-cli/providers/blame.js.map +1 -1
  134. package/dist/git-cli/providers/branches.d.ts +15 -5
  135. package/dist/git-cli/providers/branches.d.ts.map +1 -1
  136. package/dist/git-cli/providers/branches.js +99 -68
  137. package/dist/git-cli/providers/branches.js.map +1 -1
  138. package/dist/git-cli/providers/commits.d.ts +1 -0
  139. package/dist/git-cli/providers/commits.d.ts.map +1 -1
  140. package/dist/git-cli/providers/commits.js +86 -30
  141. package/dist/git-cli/providers/commits.js.map +1 -1
  142. package/dist/git-cli/providers/config.d.ts +19 -6
  143. package/dist/git-cli/providers/config.d.ts.map +1 -1
  144. package/dist/git-cli/providers/config.js +86 -38
  145. package/dist/git-cli/providers/config.js.map +1 -1
  146. package/dist/git-cli/providers/diff.d.ts.map +1 -1
  147. package/dist/git-cli/providers/diff.js +5 -3
  148. package/dist/git-cli/providers/diff.js.map +1 -1
  149. package/dist/git-cli/providers/graph.d.ts.map +1 -1
  150. package/dist/git-cli/providers/graph.js +139 -16
  151. package/dist/git-cli/providers/graph.js.map +1 -1
  152. package/dist/git-cli/providers/operations.d.ts +17 -14
  153. package/dist/git-cli/providers/operations.d.ts.map +1 -1
  154. package/dist/git-cli/providers/operations.js +135 -63
  155. package/dist/git-cli/providers/operations.js.map +1 -1
  156. package/dist/git-cli/providers/patch.d.ts.map +1 -1
  157. package/dist/git-cli/providers/patch.js.map +1 -1
  158. package/dist/git-cli/providers/pausedOperations.d.ts +3 -1
  159. package/dist/git-cli/providers/pausedOperations.d.ts.map +1 -1
  160. package/dist/git-cli/providers/pausedOperations.js +7 -1
  161. package/dist/git-cli/providers/pausedOperations.js.map +1 -1
  162. package/dist/git-cli/providers/refs.d.ts +19 -2
  163. package/dist/git-cli/providers/refs.d.ts.map +1 -1
  164. package/dist/git-cli/providers/refs.js +286 -2
  165. package/dist/git-cli/providers/refs.js.map +1 -1
  166. package/dist/git-cli/providers/revision.js.map +1 -1
  167. package/dist/git-cli/providers/staging.d.ts +6 -0
  168. package/dist/git-cli/providers/staging.d.ts.map +1 -1
  169. package/dist/git-cli/providers/staging.js +32 -0
  170. package/dist/git-cli/providers/staging.js.map +1 -1
  171. package/dist/git-cli/providers/stash.d.ts.map +1 -1
  172. package/dist/git-cli/providers/stash.js +20 -2
  173. package/dist/git-cli/providers/stash.js.map +1 -1
  174. package/dist/git-cli/providers/status.d.ts +4 -1
  175. package/dist/git-cli/providers/status.d.ts.map +1 -1
  176. package/dist/git-cli/providers/status.js +8 -4
  177. package/dist/git-cli/providers/status.js.map +1 -1
  178. package/dist/git-cli/providers/tags.d.ts.map +1 -1
  179. package/dist/git-cli/providers/tags.js +10 -6
  180. package/dist/git-cli/providers/tags.js.map +1 -1
  181. package/dist/ipc/discovery.d.ts +49 -0
  182. package/dist/ipc/discovery.d.ts.map +1 -0
  183. package/dist/ipc/discovery.js +147 -0
  184. package/dist/ipc/discovery.js.map +1 -0
  185. package/dist/ipc/ipcServer.d.ts +20 -0
  186. package/dist/ipc/ipcServer.d.ts.map +1 -0
  187. package/dist/ipc/ipcServer.js +162 -0
  188. package/dist/ipc/ipcServer.js.map +1 -0
  189. package/dist/plus/agents/providers/claudeCodeProvider.d.ts +167 -0
  190. package/dist/plus/agents/providers/claudeCodeProvider.d.ts.map +1 -0
  191. package/dist/plus/agents/providers/claudeCodeProvider.js +1786 -0
  192. package/dist/plus/agents/providers/claudeCodeProvider.js.map +1 -0
  193. package/dist/plus/agents/providers/claudeCodeTranscript.d.ts +36 -0
  194. package/dist/plus/agents/providers/claudeCodeTranscript.d.ts.map +1 -0
  195. package/dist/plus/agents/providers/claudeCodeTranscript.js +171 -0
  196. package/dist/plus/agents/providers/claudeCodeTranscript.js.map +1 -0
  197. package/dist/plus/agents/sanitizePrompt.d.ts +15 -0
  198. package/dist/plus/agents/sanitizePrompt.d.ts.map +1 -0
  199. package/dist/plus/agents/sanitizePrompt.js +103 -0
  200. package/dist/plus/agents/sanitizePrompt.js.map +1 -0
  201. package/dist/plus/agents/stateMachine.d.ts +32 -0
  202. package/dist/plus/agents/stateMachine.d.ts.map +1 -0
  203. package/dist/plus/agents/stateMachine.js +180 -0
  204. package/dist/plus/agents/stateMachine.js.map +1 -0
  205. package/dist/plus/agents/types.d.ts +254 -0
  206. package/dist/plus/agents/types.d.ts.map +1 -0
  207. package/dist/plus/agents/types.js +49 -0
  208. package/dist/plus/agents/types.js.map +1 -0
  209. package/dist/plus/ai/errors.d.ts +4 -1
  210. package/dist/plus/ai/errors.d.ts.map +1 -1
  211. package/dist/plus/ai/errors.js +38 -0
  212. package/dist/plus/ai/errors.js.map +1 -1
  213. package/dist/plus/ai/models/model.d.ts +1 -1
  214. package/dist/plus/ai/models/model.d.ts.map +1 -1
  215. package/dist/plus/ai/models/model.js.map +1 -1
  216. package/dist/plus/ai/models/promptTemplates.d.ts +11 -2
  217. package/dist/plus/ai/models/promptTemplates.d.ts.map +1 -1
  218. package/dist/plus/ai/models/provider.d.ts +3 -0
  219. package/dist/plus/ai/models/provider.d.ts.map +1 -1
  220. package/dist/plus/ai/prompts.d.ts +1 -0
  221. package/dist/plus/ai/prompts.d.ts.map +1 -1
  222. package/dist/plus/ai/prompts.js +48 -8
  223. package/dist/plus/ai/prompts.js.map +1 -1
  224. package/dist/plus/ai/providers/gitkrakenProvider.d.ts +1 -1
  225. package/dist/plus/ai/providers/gitkrakenProvider.d.ts.map +1 -1
  226. package/dist/plus/ai/providers/gitkrakenProvider.js +4 -1
  227. package/dist/plus/ai/providers/gitkrakenProvider.js.map +1 -1
  228. package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts +4 -3
  229. package/dist/plus/ai/providers/openAICompatibleProviderBase.d.ts.map +1 -1
  230. package/dist/plus/ai/providers/openAICompatibleProviderBase.js +9 -6
  231. package/dist/plus/ai/providers/openAICompatibleProviderBase.js.map +1 -1
  232. package/dist/plus/ai/utils/ai.utils.d.ts.map +1 -1
  233. package/dist/plus/ai/utils/ai.utils.js +2 -0
  234. package/dist/plus/ai/utils/ai.utils.js.map +1 -1
  235. package/dist/plus/ai/utils/results.utils.d.ts.map +1 -1
  236. package/dist/plus/ai/utils/results.utils.js.map +1 -1
  237. package/dist/plus/git-github/api/github.d.ts +12 -1
  238. package/dist/plus/git-github/api/github.d.ts.map +1 -1
  239. package/dist/plus/git-github/api/github.js +245 -51
  240. package/dist/plus/git-github/api/github.js.map +1 -1
  241. package/dist/plus/git-github/api/types.d.ts +8 -0
  242. package/dist/plus/git-github/api/types.d.ts.map +1 -1
  243. package/dist/plus/git-github/models.d.ts +1 -1
  244. package/dist/plus/git-github/models.d.ts.map +1 -1
  245. package/dist/plus/git-github/models.js.map +1 -1
  246. package/dist/plus/git-github/providers/github/blame.d.ts.map +1 -1
  247. package/dist/plus/git-github/providers/github/blame.js.map +1 -1
  248. package/dist/plus/git-github/providers/github/branches.d.ts +5 -1
  249. package/dist/plus/git-github/providers/github/branches.d.ts.map +1 -1
  250. package/dist/plus/git-github/providers/github/branches.js +47 -24
  251. package/dist/plus/git-github/providers/github/branches.js.map +1 -1
  252. package/dist/plus/git-github/providers/github/commits.d.ts.map +1 -1
  253. package/dist/plus/git-github/providers/github/commits.js +144 -92
  254. package/dist/plus/git-github/providers/github/commits.js.map +1 -1
  255. package/dist/plus/git-github/providers/github/diff.d.ts +1 -1
  256. package/dist/plus/git-github/providers/github/diff.d.ts.map +1 -1
  257. package/dist/plus/git-github/providers/github/diff.js +23 -9
  258. package/dist/plus/git-github/providers/github/diff.js.map +1 -1
  259. package/dist/plus/git-github/providers/github/refs.d.ts +9 -1
  260. package/dist/plus/git-github/providers/github/refs.d.ts.map +1 -1
  261. package/dist/plus/git-github/providers/github/refs.js +39 -14
  262. package/dist/plus/git-github/providers/github/refs.js.map +1 -1
  263. package/dist/plus/git-github/providers/github/revision.d.ts.map +1 -1
  264. package/dist/plus/git-github/providers/github/revision.js +1 -2
  265. package/dist/plus/git-github/providers/github/revision.js.map +1 -1
  266. package/dist/plus/git-github/providers/github/status.d.ts +4 -1
  267. package/dist/plus/git-github/providers/github/status.d.ts.map +1 -1
  268. package/dist/plus/git-github/providers/github/status.js +1 -1
  269. package/dist/plus/git-github/providers/github/status.js.map +1 -1
  270. package/dist/plus/git-github/providers/github/tags.d.ts.map +1 -1
  271. package/dist/plus/git-github/providers/github/tags.js +35 -36
  272. package/dist/plus/git-github/providers/github/tags.js.map +1 -1
  273. package/dist/plus/git-github/providers/githubGitProvider.d.ts.map +1 -1
  274. package/dist/plus/git-github/providers/githubGitProvider.js.map +1 -1
  275. package/dist/utils/color.d.ts.map +1 -1
  276. package/dist/utils/color.js.map +1 -1
  277. package/dist/utils/date.d.ts.map +1 -1
  278. package/dist/utils/date.js +6 -0
  279. package/dist/utils/date.js.map +1 -1
  280. package/dist/utils/debounce.js +1 -1
  281. package/dist/utils/decorators/serializable.d.ts.map +1 -1
  282. package/dist/utils/decorators/serializable.js.map +1 -1
  283. package/dist/utils/dedupedAsyncCache.d.ts +37 -0
  284. package/dist/utils/dedupedAsyncCache.d.ts.map +1 -0
  285. package/dist/utils/dedupedAsyncCache.js +68 -0
  286. package/dist/utils/dedupedAsyncCache.js.map +1 -0
  287. package/dist/utils/diff.d.ts +2 -0
  288. package/dist/utils/diff.d.ts.map +1 -0
  289. package/dist/utils/diff.js +53 -0
  290. package/dist/utils/diff.js.map +1 -0
  291. package/dist/utils/disposable.d.ts.map +1 -1
  292. package/dist/utils/disposable.js.map +1 -1
  293. package/dist/utils/env/node/exec.d.ts.map +1 -1
  294. package/dist/utils/env/node/exec.js.map +1 -1
  295. package/dist/utils/error.d.ts.map +1 -1
  296. package/dist/utils/error.js.map +1 -1
  297. package/dist/utils/iterable.d.ts +7 -1
  298. package/dist/utils/iterable.d.ts.map +1 -1
  299. package/dist/utils/iterable.js +12 -4
  300. package/dist/utils/iterable.js.map +1 -1
  301. package/dist/utils/logger.d.ts.map +1 -1
  302. package/dist/utils/logger.js.map +1 -1
  303. package/dist/utils/lruMap.d.ts +9 -0
  304. package/dist/utils/lruMap.d.ts.map +1 -1
  305. package/dist/utils/lruMap.js +26 -4
  306. package/dist/utils/lruMap.js.map +1 -1
  307. package/dist/utils/markdown.d.ts.map +1 -1
  308. package/dist/utils/markdown.js.map +1 -1
  309. package/dist/utils/mru.d.ts.map +1 -1
  310. package/dist/utils/mru.js.map +1 -1
  311. package/dist/utils/object.d.ts +22 -1
  312. package/dist/utils/object.d.ts.map +1 -1
  313. package/dist/utils/object.js +56 -3
  314. package/dist/utils/object.js.map +1 -1
  315. package/dist/utils/paging.js +14 -15
  316. package/dist/utils/paging.js.map +1 -1
  317. package/dist/utils/path.d.ts.map +1 -1
  318. package/dist/utils/path.js.map +1 -1
  319. package/dist/utils/promise.d.ts +1 -0
  320. package/dist/utils/promise.d.ts.map +1 -1
  321. package/dist/utils/promise.js +17 -0
  322. package/dist/utils/promise.js.map +1 -1
  323. package/dist/utils/promiseCache.d.ts +10 -0
  324. package/dist/utils/promiseCache.d.ts.map +1 -1
  325. package/dist/utils/promiseCache.js +34 -4
  326. package/dist/utils/promiseCache.js.map +1 -1
  327. package/dist/utils/string.d.ts.map +1 -1
  328. package/dist/utils/string.js +1 -1
  329. package/dist/utils/string.js.map +1 -1
  330. package/dist/utils/uri.d.ts.map +1 -1
  331. package/dist/utils/uri.js.map +1 -1
  332. package/dist/utils/version.d.ts.map +1 -1
  333. package/dist/utils/version.js.map +1 -1
  334. package/package.json +13 -1
  335. package/src/git/cache.ts +192 -90
  336. package/src/git/context.ts +21 -0
  337. package/src/git/features.ts +2 -0
  338. package/src/git/models/commit.ts +1 -0
  339. package/src/git/models/graph.ts +97 -0
  340. package/src/git/models/reference.ts +33 -0
  341. package/src/git/models/remote.ts +1 -0
  342. package/src/git/models/remoteProvider.ts +1 -0
  343. package/src/git/models/repository.ts +105 -96
  344. package/src/git/models/search.ts +2 -2
  345. package/src/git/models/statusFile.ts +12 -0
  346. package/src/git/models/worktree.ts +10 -2
  347. package/src/git/parsers/diffParser.ts +2 -0
  348. package/src/git/providers/branches.ts +22 -4
  349. package/src/git/providers/commits.ts +4 -0
  350. package/src/git/providers/config.ts +3 -5
  351. package/src/git/providers/operations.ts +65 -1
  352. package/src/git/providers/pausedOperations.ts +1 -0
  353. package/src/git/providers/refs.ts +32 -3
  354. package/src/git/providers/staging.ts +12 -0
  355. package/src/git/providers/status.ts +6 -1
  356. package/src/git/remotes/azure-devops.ts +2 -0
  357. package/src/git/remotes/custom.ts +23 -0
  358. package/src/git/{exec.types.ts → run.types.ts} +22 -2
  359. package/src/git/service.ts +1 -0
  360. package/src/git/utils/autolink.utils.ts +1 -0
  361. package/src/git/utils/blame.utils.ts +2 -0
  362. package/src/git/utils/conflictResolution.utils.ts +31 -0
  363. package/src/git/utils/contributor.utils.ts +24 -0
  364. package/src/git/utils/fileStatus.utils.ts +7 -1
  365. package/src/git/utils/reachability.utils.ts +109 -0
  366. package/src/git/utils/search.utils.ts +2 -0
  367. package/src/git/utils/sorting.ts +17 -0
  368. package/src/git/utils/status.utils.ts +1 -0
  369. package/src/git/watching/classifyChange.ts +9 -0
  370. package/src/git/watching/gitIgnoreFilter.ts +2 -2
  371. package/src/git/watching/initWatcher.ts +2 -0
  372. package/src/git/watching/watchGroup.ts +3 -0
  373. package/src/git/watching/watchService.ts +45 -7
  374. package/src/git/watching/watchSession.ts +71 -55
  375. package/src/git-cli/exec/exec.types.ts +2 -2
  376. package/src/git-cli/exec/git.ts +6 -5
  377. package/src/git-cli/exec/gitQueue.ts +41 -12
  378. package/src/git-cli/parsers/blameParser.ts +1 -0
  379. package/src/git-cli/parsers/logParser.ts +1 -0
  380. package/src/git-cli/parsers/refParser.ts +33 -34
  381. package/src/git-cli/providers/blame.ts +1 -0
  382. package/src/git-cli/providers/branches.ts +165 -93
  383. package/src/git-cli/providers/commits.ts +107 -37
  384. package/src/git-cli/providers/config.ts +101 -48
  385. package/src/git-cli/providers/diff.ts +10 -3
  386. package/src/git-cli/providers/graph.ts +156 -16
  387. package/src/git-cli/providers/operations.ts +208 -83
  388. package/src/git-cli/providers/patch.ts +1 -0
  389. package/src/git-cli/providers/pausedOperations.ts +8 -0
  390. package/src/git-cli/providers/refs.ts +247 -3
  391. package/src/git-cli/providers/revision.ts +2 -2
  392. package/src/git-cli/providers/staging.ts +33 -0
  393. package/src/git-cli/providers/stash.ts +20 -2
  394. package/src/git-cli/providers/status.ts +24 -5
  395. package/src/git-cli/providers/tags.ts +15 -16
  396. package/src/ipc/discovery.ts +186 -0
  397. package/src/ipc/ipcServer.ts +171 -0
  398. package/src/plus/agents/providers/claudeCodeProvider.ts +2122 -0
  399. package/src/plus/agents/providers/claudeCodeTranscript.ts +214 -0
  400. package/src/plus/agents/sanitizePrompt.ts +109 -0
  401. package/src/plus/agents/stateMachine.ts +197 -0
  402. package/src/plus/agents/types.ts +325 -0
  403. package/src/plus/ai/errors.ts +40 -0
  404. package/src/plus/ai/models/model.ts +1 -0
  405. package/src/plus/ai/models/promptTemplates.ts +13 -0
  406. package/src/plus/ai/models/provider.ts +7 -1
  407. package/src/plus/ai/prompts.ts +49 -8
  408. package/src/plus/ai/providers/gitkrakenProvider.ts +4 -0
  409. package/src/plus/ai/providers/openAICompatibleProviderBase.ts +21 -4
  410. package/src/plus/ai/utils/ai.utils.ts +2 -0
  411. package/src/plus/ai/utils/results.utils.ts +2 -0
  412. package/src/plus/git-github/api/github.ts +315 -57
  413. package/src/plus/git-github/api/types.ts +15 -0
  414. package/src/plus/git-github/models.ts +1 -1
  415. package/src/plus/git-github/providers/github/blame.ts +2 -0
  416. package/src/plus/git-github/providers/github/branches.ts +61 -31
  417. package/src/plus/git-github/providers/github/commits.ts +231 -160
  418. package/src/plus/git-github/providers/github/diff.ts +27 -19
  419. package/src/plus/git-github/providers/github/refs.ts +58 -23
  420. package/src/plus/git-github/providers/github/revision.ts +1 -2
  421. package/src/plus/git-github/providers/github/status.ts +6 -1
  422. package/src/plus/git-github/providers/github/tags.ts +61 -62
  423. package/src/plus/git-github/providers/githubGitProvider.ts +1 -0
  424. package/src/utils/color.ts +2 -0
  425. package/src/utils/date.ts +5 -0
  426. package/src/utils/debounce.ts +1 -1
  427. package/src/utils/decorators/serializable.ts +1 -0
  428. package/src/utils/dedupedAsyncCache.ts +74 -0
  429. package/src/utils/diff.ts +61 -0
  430. package/src/utils/disposable.ts +2 -0
  431. package/src/utils/env/node/exec.ts +2 -0
  432. package/src/utils/error.ts +1 -0
  433. package/src/utils/iterable.ts +17 -3
  434. package/src/utils/logger.ts +1 -0
  435. package/src/utils/lruMap.ts +29 -4
  436. package/src/utils/markdown.ts +1 -0
  437. package/src/utils/mru.ts +2 -0
  438. package/src/utils/object.ts +55 -4
  439. package/src/utils/paging.ts +14 -14
  440. package/src/utils/path.ts +1 -0
  441. package/src/utils/promise.ts +22 -0
  442. package/src/utils/promiseCache.ts +48 -16
  443. package/src/utils/string.ts +3 -1
  444. package/src/utils/uri.ts +1 -0
  445. package/src/utils/version.ts +1 -0
  446. package/dist/git/exec.types.d.ts.map +0 -1
  447. package/dist/git/exec.types.js +0 -2
  448. package/dist/git/exec.types.js.map +0 -1
@@ -59,7 +59,7 @@ export class DiffGitSubProvider {
59
59
  }
60
60
  catch (ex) {
61
61
  const msg = ex?.toString() ?? '';
62
- if (GitErrors.noMergeBase.test(msg)) {
62
+ if (GitErrors.noMergeBase.test(msg) || GitErrors.badRevision.test(msg)) {
63
63
  return undefined;
64
64
  }
65
65
  scope?.error(ex);
@@ -111,7 +111,7 @@ export class DiffGitSubProvider {
111
111
  }
112
112
  async getDiffStatus(repoPath, ref1OrRange, ref2, options) {
113
113
  try {
114
- const similarityThreshold = options?.similarityThreshold;
114
+ const similarityThreshold = options?.similarityThreshold ?? this.context.config?.commits.similarityThreshold;
115
115
  const configs = options?.renameLimit != null
116
116
  ? [...gitConfigsDiff, '-c', `diff.renameLimit=${options.renameLimit}`]
117
117
  : gitConfigsDiff;
@@ -183,7 +183,9 @@ export class DiffGitSubProvider {
183
183
  }
184
184
  // Follow file history and specify the file path
185
185
  args.push('--follow', '--', relativePath);
186
- const result = await this.git.run({ cwd: repoPath, configs: gitConfigsLog }, ...args);
186
+ // Unbounded --follow walk over file history can be slow on long histories — queue as background
187
+ // so it doesn't compete with interactive work.
188
+ const result = await this.git.run({ cwd: repoPath, configs: gitConfigsLog, priority: 'background' }, ...args);
187
189
  let currentSha;
188
190
  let currentPath;
189
191
  if (skip === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/providers/diff.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diff.js","sourceRoot":"","sources":["../../src/providers/diff.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/providers/graph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAIjE,OAAO,KAAK,EACX,QAAQ,EAQR,iBAAiB,EACjB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EACX,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EAEtB,qBAAqB,EACrB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAGjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAmB3E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAe1C,qBAAa,mBAAoB,YAAW,mBAAmB;IAE7D,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAHR,OAAO,EAAE,iBAAiB,EAC1B,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,sBAAsB;IAI5C,QAAQ,CACb,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE;YAAE,KAAK,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,iBAAiB,CAAA;KAAE,EAC7F,YAAY,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,QAAQ,CAAC;IAodb,WAAW,CACjB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,WAAW,EACnB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,aAAa,GAAG,MAAM,CAAA;KAAE,EACxE,YAAY,CAAC,EAAE,WAAW,GACxB,cAAc,CAAC,sBAAsB,EAAE,cAAc,EAAE,IAAI,CAAC;IAcxD,mBAAmB,CACzB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,oBAAoB,EAC5B,eAAe,EAAE,qBAAqB,EACtC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EAC5B,YAAY,CAAC,EAAE,WAAW,GACxB,cAAc,CAAC,sBAAsB,EAAE,cAAc,EAAE,IAAI,CAAC;YAIhD,eAAe;CAqP9B"}
1
+ {"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/providers/graph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAIjE,OAAO,KAAK,EACX,QAAQ,EAQR,iBAAiB,EACjB,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EACX,cAAc,EACd,oBAAoB,EACpB,sBAAsB,EAEtB,qBAAqB,EACrB,MAAM,oCAAoC,CAAC;AAE5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAGjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAmB3E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAe1C,qBAAa,mBAAoB,YAAW,mBAAmB;IAE7D,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,GAAG;IACpB,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAHR,OAAO,EAAE,iBAAiB,EAC1B,GAAG,EAAE,GAAG,EACR,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,sBAAsB;IAI5C,QAAQ,CACb,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,OAAO,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE;YAAE,KAAK,CAAC,EAAE,OAAO,CAAA;SAAE,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,CAAC,EAAE,iBAAiB,CAAA;KAAE,EAC7F,YAAY,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,QAAQ,CAAC;IA+lBb,WAAW,CACjB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,WAAW,EACnB,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,aAAa,GAAG,MAAM,CAAA;KAAE,EACxE,YAAY,CAAC,EAAE,WAAW,GACxB,cAAc,CAAC,sBAAsB,EAAE,cAAc,EAAE,IAAI,CAAC;IAcxD,mBAAmB,CACzB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,oBAAoB,EAC5B,eAAe,EAAE,qBAAqB,EACtC,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EAC5B,YAAY,CAAC,EAAE,WAAW,GACxB,cAAc,CAAC,sBAAsB,EAAE,cAAc,EAAE,IAAI,CAAC;YAIhD,eAAe;CAsP9B"}
@@ -59,9 +59,9 @@ var __disposeResources = (this && this.__disposeResources) || (function (Suppres
59
59
  import { GitSearchError } from '../../git/errors.js';
60
60
  import { getBranchId, getBranchNameWithoutRemote, getRemoteNameFromBranchName, } from '../../git/utils/branch.utils.js';
61
61
  import { getChangedFilesCount } from '../../git/utils/commit.utils.js';
62
+ import { createReachabilityTableBuilder } from '../../git/utils/reachability.utils.js';
62
63
  import { isUncommitted } from '../../git/utils/revision.utils.js';
63
64
  import { getSearchQueryComparisonKey, parseSearchQueryGitCommand } from '../../git/utils/search.utils.js';
64
- import { compareReachableRefs } from '../../git/utils/sorting.js';
65
65
  import { getTagId } from '../../git/utils/tag.utils.js';
66
66
  import { isUserMatch } from '../../git/utils/user.utils.js';
67
67
  import { getWorktreeId, groupWorktreesByBranch } from '../../git/utils/worktree.utils.js';
@@ -117,9 +117,14 @@ export class GraphGitSubProvider {
117
117
  const headRefUpstreamName = headBranch?.upstream?.name;
118
118
  const [worktrees, worktreesByBranch] = getSettledValue(worktreesResult) ?? [[], new Map()];
119
119
  let branchIdOfMainWorktree;
120
+ let mainWorktree;
120
121
  if (worktreesByBranch != null) {
121
- branchIdOfMainWorktree = find(worktreesByBranch, ([, wt]) => wt.isDefault)?.[0];
122
- if (branchIdOfMainWorktree != null) {
122
+ const defaultEntry = find(worktreesByBranch, ([, wt]) => wt.isDefault);
123
+ if (defaultEntry != null) {
124
+ [branchIdOfMainWorktree, mainWorktree] = defaultEntry;
125
+ // Remove the main/default worktree so the branch-row decoration shows `+checkedout`
126
+ // (not `+worktree`) for the main checkout. `mainWorktree` is retained below purely so
127
+ // Undo Commit can still reach the main worktree's HEAD from a secondary worktree's graph.
123
128
  worktreesByBranch.delete(branchIdOfMainWorktree);
124
129
  }
125
130
  }
@@ -135,8 +140,54 @@ export class GraphGitSubProvider {
135
140
  const avatars = new Map();
136
141
  const ids = new Set();
137
142
  const reachableFromHEAD = new Set();
143
+ // SHAs on the first-parent chain from HEAD up to (excluding) the first merge commit — the only
144
+ // commits a plain (non-`--rebase-merges`) interactive rebase can safely rewrite. `headSha` seeds
145
+ // the chain; `rewriteableNextSha` tracks the next sha expected on it. Outer scope so they persist
146
+ // across `more()` pagination, like `reachableFromHEAD`.
147
+ const rewriteableFromHEAD = new Set();
148
+ let headSha;
149
+ let rewriteableNextSha;
150
+ // Undo Commit is offered only on a worktree HEAD that is a LEAF (nothing is built on it) —
151
+ // undoing a commit other work is stacked on is unsafe. The leaf check is only needed for the
152
+ // undo-eligible tips (the active HEAD + each worktree's HEAD), so track just those shas rather
153
+ // than every commit, keeping this O(#worktrees) instead of O(#commits).
154
+ const undoableTipShas = new Set();
155
+ if (headBranch?.sha != null) {
156
+ undoableTipShas.add(headBranch.sha);
157
+ }
158
+ for (const wt of worktrees) {
159
+ if (wt.sha != null) {
160
+ undoableTipShas.add(wt.sha);
161
+ }
162
+ }
163
+ // The subset of `undoableTipShas` that turn out to have a child (are an ancestor of another
164
+ // commit) — i.e. NOT leaves. Built newest-first during the walk, so by the time a tip's row is
165
+ // processed every newer commit (its only possible children) has been seen. Undo is withheld for
166
+ // shas recorded here. Stash rows are excluded (a stash sitting on a tip must not block undoing it).
167
+ const tipShasWithChildren = new Set();
168
+ // SHAs reachable from HEAD's tracking upstream tip. Combined with `reachableFromHEAD`,
169
+ // this lets us mark commits as unpushed (reachable from HEAD but not from HEAD's upstream).
170
+ const reachableFromHeadUpstream = new Set();
138
171
  // Map<sha, Map<refKey, ref>> — inner map deduplicates refs during propagation
139
172
  const reachableRefs = new Map();
173
+ // Stable, append-only reachability table built as we walk — the PRIMARY representation shipped to
174
+ // consumers. Lives in the outer scope so it accumulates across `more()` pagination; indices
175
+ // already assigned never change, since git reachability only propagates to older (later-walked)
176
+ // commits. Per-row ref arrays are NOT retained — each row keeps only its set index
177
+ // (`contexts.reachabilityIndex`), and the working `reachableRefs` entry is dropped once emitted.
178
+ // The encoder lives next to its decoder in `reachability.utils` so the wire format can't drift.
179
+ const reachabilityBuilder = createReachabilityTableBuilder();
180
+ function finalizeRowReachability(row, sha, refs) {
181
+ const setIndex = reachabilityBuilder.intern(refs?.values());
182
+ if (setIndex != null) {
183
+ (row.contexts ??= {}).reachabilityIndex = setIndex;
184
+ }
185
+ // Drop the transient per-row arrays so emitted rows don't retain reachability, and release the
186
+ // working entry — once a commit is emitted its children are all walked and its parents already
187
+ // seeded, so nothing reads `reachableRefs.get(sha)` again (orderings keep parents after children).
188
+ row.reachability = undefined;
189
+ reachableRefs.delete(sha);
190
+ }
140
191
  const rowStats = new Map();
141
192
  let pendingRowsStatsCount = 0;
142
193
  let iterations = 0;
@@ -198,6 +249,11 @@ export class GraphGitSubProvider {
198
249
  branchIdOfMainWorktree: branchIdOfMainWorktree,
199
250
  stashes: gitStash?.stashes,
200
251
  reachableFromHEAD: reachableFromHEAD,
252
+ rewriteableFromHEAD: rewriteableFromHEAD,
253
+ tipShasWithChildren: tipShasWithChildren,
254
+ // `undefined` when HEAD has no upstream, so the processor flags nothing as
255
+ // unpublished; otherwise the live set (mutated during the walk, read by ref).
256
+ reachableFromHeadUpstream: headRefUpstreamName != null ? reachableFromHeadUpstream : undefined,
201
257
  avatars: avatars,
202
258
  }
203
259
  : undefined;
@@ -207,7 +263,12 @@ export class GraphGitSubProvider {
207
263
  // - SHA + limit = 0: Find SHA, stop immediately
208
264
  // - No SHA + limit > 0: Load exactly `limit` commits
209
265
  // - No SHA + limit = 0: Load everything remaining
210
- if ((limit && count >= limit && (!sha || found)) || (!limit && sha && found)) {
266
+ // - SHA + limit > 0 + still unfound past 10× limit: defensive cap so an unreachable
267
+ // SHA (e.g. a stale merge-base the webview hasn't yet seen invalidated) can't
268
+ // walk the entire history. `hasMore=true` lets callers retry; the graph-wrapper
269
+ // side deduplicates re-requests so the cap doesn't loop.
270
+ if ((limit && count >= limit && (!sha || found || count >= limit * 10)) ||
271
+ (!limit && sha && found)) {
211
272
  hasMore = true;
212
273
  aborter.abort();
213
274
  break;
@@ -247,6 +308,7 @@ export class GraphGitSubProvider {
247
308
  if (tip.startsWith('HEAD')) {
248
309
  head = true;
249
310
  reachableFromHEAD.add(shaOrRemapped);
311
+ headSha ??= shaOrRemapped;
250
312
  if (tip !== 'HEAD') {
251
313
  tip = tip.substring(8);
252
314
  }
@@ -259,12 +321,16 @@ export class GraphGitSubProvider {
259
321
  if (branchName === 'HEAD')
260
322
  continue;
261
323
  remoteBranchId = getBranchId(repoPath, true, tip);
324
+ const isHeadUpstream = tip === headRefUpstreamName;
325
+ if (isHeadUpstream) {
326
+ reachableFromHeadUpstream.add(shaOrRemapped);
327
+ }
262
328
  refRemoteHead = {
263
329
  id: remoteBranchId,
264
330
  name: branchName,
265
331
  owner: remote.name,
266
332
  url: remote.url,
267
- current: tip === headRefUpstreamName,
333
+ current: isHeadUpstream,
268
334
  hostingServiceType: remote.provider?.gkProviderId,
269
335
  };
270
336
  refRemoteHeads.push(refRemoteHead);
@@ -273,7 +339,14 @@ export class GraphGitSubProvider {
273
339
  }
274
340
  branch = branchMap.get(tip);
275
341
  branchId = branch?.id ?? getBranchId(repoPath, false, tip);
276
- const worktree = worktreesByBranch?.get(branchId);
342
+ // `worktreesByBranch` has the main/default worktree removed (above), so recover it
343
+ // here — Undo Commit needs to reach the main worktree's HEAD even when the active
344
+ // workspace is a secondary worktree.
345
+ const worktree = worktreesByBranch?.get(branchId) ??
346
+ (branchId === branchIdOfMainWorktree ? mainWorktree : undefined);
347
+ const worktreeRef = worktree != null
348
+ ? { id: getWorktreeId(repoPath, worktree.name), path: worktree.path }
349
+ : undefined;
277
350
  refHead = {
278
351
  id: branchId,
279
352
  name: tip,
@@ -284,7 +357,12 @@ export class GraphGitSubProvider {
284
357
  id: getBranchId(repoPath, true, branch.upstream.name),
285
358
  }
286
359
  : undefined,
287
- worktreeId: worktree != null ? getWorktreeId(repoPath, worktree.name) : undefined,
360
+ worktree: worktreeRef,
361
+ // Mirror `worktree.id` for `@gitkraken/gitkraken-components` — its bundled renderer
362
+ // reads `head.worktreeId` to pick the WORKTREE vs HEAD ref-badge. Scope to NON-default
363
+ // worktrees so the main checkout keeps its HEAD badge even though `worktree` (above)
364
+ // is populated for it for Undo routing.
365
+ worktreeId: worktree?.isDefault === false ? worktreeRef?.id : undefined,
288
366
  };
289
367
  refHeads.push(refHead);
290
368
  if (branch?.upstream?.name != null) {
@@ -304,6 +382,27 @@ export class GraphGitSubProvider {
304
382
  reachableFromHEAD.add(parent);
305
383
  }
306
384
  }
385
+ // First-parent rewriteable chain from HEAD: include each commit only while HEAD and
386
+ // every commit down to it has exactly one parent. Stops at (excludes) the first merge
387
+ // and the root — mirrors GitKraken's getDistinctCommitsFromHeadToFirstMergeCommit.
388
+ // Off-chain commits (a merge's other-parent ancestry, or anything below the first merge)
389
+ // are reachable-from-HEAD but NOT safely history-rewriteable by a plain interactive
390
+ // rebase. Relies on the same "commit emitted before its parents" ordering as above.
391
+ if (shaOrRemapped === headSha || shaOrRemapped === rewriteableNextSha) {
392
+ if (parents.length === 1) {
393
+ rewriteableFromHEAD.add(shaOrRemapped);
394
+ rewriteableNextSha = parents[0];
395
+ }
396
+ else {
397
+ // A merge (>1 parents) or the root (0 parents) terminates the chain.
398
+ rewriteableNextSha = undefined;
399
+ }
400
+ }
401
+ if (reachableFromHeadUpstream.has(shaOrRemapped)) {
402
+ for (parent of parents) {
403
+ reachableFromHeadUpstream.add(parent);
404
+ }
405
+ }
307
406
  // Seed reachability from all ref types on this commit
308
407
  if (refHeads.length > 0 || refRemoteHeads.length > 0 || refTags.length > 0) {
309
408
  let refs = reachableRefs.get(shaOrRemapped);
@@ -355,12 +454,13 @@ export class GraphGitSubProvider {
355
454
  heads: refHeads,
356
455
  remotes: refRemoteHeads,
357
456
  tags: refTags,
358
- reachability: refs?.size
359
- ? { partial: true, refs: [...refs.values()].sort(compareReachableRefs) }
360
- : undefined,
457
+ // Transient: the row processor's `+unique` decision reads this; stripped just below.
458
+ // Unsorted (the consumer re-sorts after decoding) — order doesn't affect interning.
459
+ reachability: refs?.size ? { partial: true, refs: [...refs.values()] } : undefined,
361
460
  isCurrentUser: true,
362
461
  };
363
462
  rowProcessor?.processRow(row, graphCtx);
463
+ finalizeRowReachability(row, shaOrRemapped, refs);
364
464
  rows.push(row);
365
465
  if (stash.stats != null) {
366
466
  rowStats.set(shaOrRemapped, {
@@ -372,6 +472,16 @@ export class GraphGitSubProvider {
372
472
  }
373
473
  else {
374
474
  isCurrentUser = isUserMatch(currentUser, commit.author, commit.authorEmail);
475
+ // Mark any undo-eligible tip that THIS (non-stash) commit builds on as non-leaf, so
476
+ // its Undo Commit is withheld. Uses the full parent set (incl. merge second-parents)
477
+ // but only records shas that are actually undo tips — newer commits are walked first,
478
+ // so a tip is recorded before its own row is processed. Stash rows are intentionally
479
+ // not handled here, so a stash based on a tip doesn't block undoing that tip.
480
+ for (parent of parents) {
481
+ if (undoableTipShas.has(parent)) {
482
+ tipShasWithChildren.add(parent);
483
+ }
484
+ }
375
485
  const refs = reachableRefs.get(shaOrRemapped);
376
486
  const row = {
377
487
  sha: shaOrRemapped,
@@ -385,12 +495,13 @@ export class GraphGitSubProvider {
385
495
  heads: refHeads,
386
496
  remotes: refRemoteHeads,
387
497
  tags: refTags,
388
- reachability: refs?.size
389
- ? { partial: true, refs: [...refs.values()].sort(compareReachableRefs) }
390
- : undefined,
498
+ // Transient: the row processor's `+unique` decision reads this; stripped just below.
499
+ // Unsorted (the consumer re-sorts after decoding) — order doesn't affect interning.
500
+ reachability: refs?.size ? { partial: true, refs: [...refs.values()] } : undefined,
391
501
  isCurrentUser: isCurrentUser || undefined,
392
502
  };
393
503
  rowProcessor?.processRow(row, graphCtx);
504
+ finalizeRowReachability(row, shaOrRemapped, refs);
394
505
  rows.push(row);
395
506
  if (commit.stats != null) {
396
507
  rowStats.set(shaOrRemapped, commit.stats);
@@ -403,7 +514,7 @@ export class GraphGitSubProvider {
403
514
  let rowsStatsDeferred;
404
515
  if (deferStats) {
405
516
  pendingRowsStatsCount++;
406
- // eslint-disable-next-line no-async-promise-executor
517
+ // oxlint-disable-next-line no-async-promise-executor
407
518
  const promise = new Promise(async (resolve) => {
408
519
  try {
409
520
  const args = [...statsParser.arguments];
@@ -414,7 +525,7 @@ export class GraphGitSubProvider {
414
525
  args.push(`-n${total - startTotal}`, `--skip=${startTotal}`);
415
526
  }
416
527
  args.push(`--${ordering}-order`, '--all');
417
- const statsResult = await this.git.run({ cwd: repoPath, configs: gitConfigsLog, stdin: stdin }, 'log', stdin ? '--stdin' : undefined, ...args, '--');
528
+ const statsResult = await this.git.run({ cwd: repoPath, configs: gitConfigsLog, stdin: stdin, priority: 'background' }, 'log', stdin ? '--stdin' : undefined, ...args, '--');
418
529
  if (statsResult.stdout) {
419
530
  let statShaOrRemapped;
420
531
  for (const stat of statsParser.parse(statsResult.stdout)) {
@@ -448,6 +559,8 @@ export class GraphGitSubProvider {
448
559
  worktrees: worktrees,
449
560
  worktreesByBranch: worktreesByBranch,
450
561
  reachableFromHEAD: reachableFromHEAD,
562
+ rewriteableFromHEAD: rewriteableFromHEAD,
563
+ reachability: reachabilityBuilder.build(),
451
564
  rows: rows,
452
565
  id: sha ?? rev,
453
566
  rowsStats: rowStats,
@@ -474,7 +587,17 @@ export class GraphGitSubProvider {
474
587
  throw ex;
475
588
  }
476
589
  }
477
- return getCommitsForGraphCore.call(this, defaultLimit, selectSha, undefined, cancellation);
590
+ let graph = await getCommitsForGraphCore.call(this, defaultLimit, selectSha, undefined, cancellation);
591
+ // Spurious-empty guard: the repo has branches (so `git log --all` should yield commits) yet the
592
+ // log returned no rows. That's an inconsistent result — almost always a transient ref-read race
593
+ // while a concurrent git operation rewrites refs/packed-refs — not a genuinely empty repo.
594
+ // Returning it would flash "No commits" in the graph. Retry once (transient glitches clear within
595
+ // ms). A truly empty repo has no branches and is left untouched.
596
+ if (graph.rows.length === 0 && branches?.length && !cancellation?.aborted) {
597
+ scope?.warn(`graph returned 0 rows but repo has ${branches.length} branches; retrying`);
598
+ graph = await getCommitsForGraphCore.call(this, defaultLimit, selectSha, undefined, cancellation);
599
+ }
600
+ return graph;
478
601
  }
479
602
  async *searchGraph(repoPath, search, options, cancellation) {
480
603
  return yield* this.searchGraphCore(repoPath, search, undefined, undefined, options, cancellation);
@@ -1 +1 @@
1
- {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/providers/graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/providers/graph.ts"],"names":[],"mappings":"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"}