@qotaq/lalphgram 0.1.0

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 (517) hide show
  1. package/Events/package.json +6 -0
  2. package/LICENSE +21 -0
  3. package/Main/package.json +6 -0
  4. package/README.md +1 -0
  5. package/dist/cjs/Events.js +55 -0
  6. package/dist/cjs/Events.js.map +1 -0
  7. package/dist/cjs/LalphMain.js +59 -0
  8. package/dist/cjs/LalphMain.js.map +1 -0
  9. package/dist/cjs/Main.js +115 -0
  10. package/dist/cjs/Main.js.map +1 -0
  11. package/dist/cjs/index.js +281 -0
  12. package/dist/cjs/index.js.map +1 -0
  13. package/dist/cjs/lib/AnalysisPrompts.js +61 -0
  14. package/dist/cjs/lib/AnalysisPrompts.js.map +1 -0
  15. package/dist/cjs/lib/BranchParser.js +45 -0
  16. package/dist/cjs/lib/BranchParser.js.map +1 -0
  17. package/dist/cjs/lib/MermaidToPlantUml.js +96 -0
  18. package/dist/cjs/lib/MermaidToPlantUml.js.map +1 -0
  19. package/dist/cjs/lib/SpecHtmlGenerator.js +160 -0
  20. package/dist/cjs/lib/SpecHtmlGenerator.js.map +1 -0
  21. package/dist/cjs/lib/StreamJsonParser.js +88 -0
  22. package/dist/cjs/lib/StreamJsonParser.js.map +1 -0
  23. package/dist/cjs/lib/TelegramFormatter.js +122 -0
  24. package/dist/cjs/lib/TelegramFormatter.js.map +1 -0
  25. package/dist/cjs/lib/TelegraphHtml.js +65 -0
  26. package/dist/cjs/lib/TelegraphHtml.js.map +1 -0
  27. package/dist/cjs/lib/TelegraphMarkdown.js +346 -0
  28. package/dist/cjs/lib/TelegraphMarkdown.js.map +1 -0
  29. package/dist/cjs/schemas/CredentialSchemas.js +31 -0
  30. package/dist/cjs/schemas/CredentialSchemas.js.map +1 -0
  31. package/dist/cjs/schemas/GitHubSchemas.js +60 -0
  32. package/dist/cjs/schemas/GitHubSchemas.js.map +1 -0
  33. package/dist/cjs/schemas/LinearSchemas.js +63 -0
  34. package/dist/cjs/schemas/LinearSchemas.js.map +1 -0
  35. package/dist/cjs/schemas/ProjectSchemas.js +26 -0
  36. package/dist/cjs/schemas/ProjectSchemas.js.map +1 -0
  37. package/dist/cjs/schemas/TrackerSchemas.js +35 -0
  38. package/dist/cjs/schemas/TrackerSchemas.js.map +1 -0
  39. package/dist/cjs/services/AppContext.js +57 -0
  40. package/dist/cjs/services/AppContext.js.map +1 -0
  41. package/dist/cjs/services/AppRuntimeConfig.js +35 -0
  42. package/dist/cjs/services/AppRuntimeConfig.js.map +1 -0
  43. package/dist/cjs/services/AutoMerge.js +140 -0
  44. package/dist/cjs/services/AutoMerge.js.map +1 -0
  45. package/dist/cjs/services/ChatMachine.js +873 -0
  46. package/dist/cjs/services/ChatMachine.js.map +1 -0
  47. package/dist/cjs/services/CommentTimer.js +81 -0
  48. package/dist/cjs/services/CommentTimer.js.map +1 -0
  49. package/dist/cjs/services/CredentialStore.js +68 -0
  50. package/dist/cjs/services/CredentialStore.js.map +1 -0
  51. package/dist/cjs/services/CredentialWatcher.js +76 -0
  52. package/dist/cjs/services/CredentialWatcher.js.map +1 -0
  53. package/dist/cjs/services/Credentials.js +130 -0
  54. package/dist/cjs/services/Credentials.js.map +1 -0
  55. package/dist/cjs/services/EventLoop.js +203 -0
  56. package/dist/cjs/services/EventLoop.js.map +1 -0
  57. package/dist/cjs/services/GitHubClient/GitHubClient.js +236 -0
  58. package/dist/cjs/services/GitHubClient/GitHubClient.js.map +1 -0
  59. package/dist/cjs/services/GitHubClient/OctokitClient.js +329 -0
  60. package/dist/cjs/services/GitHubClient/OctokitClient.js.map +1 -0
  61. package/dist/cjs/services/GitHubClient.js +236 -0
  62. package/dist/cjs/services/GitHubClient.js.map +1 -0
  63. package/dist/cjs/services/GitHubEventSource.js +145 -0
  64. package/dist/cjs/services/GitHubEventSource.js.map +1 -0
  65. package/dist/cjs/services/GitHubIssueTracker.js +118 -0
  66. package/dist/cjs/services/GitHubIssueTracker.js.map +1 -0
  67. package/dist/cjs/services/LalphConfig.js +139 -0
  68. package/dist/cjs/services/LalphConfig.js.map +1 -0
  69. package/dist/cjs/services/LalphConfigReader.js +82 -0
  70. package/dist/cjs/services/LalphConfigReader.js.map +1 -0
  71. package/dist/cjs/services/LalphDirectory.js +45 -0
  72. package/dist/cjs/services/LalphDirectory.js.map +1 -0
  73. package/dist/cjs/services/LinearSdkClient.js +149 -0
  74. package/dist/cjs/services/LinearSdkClient.js.map +1 -0
  75. package/dist/cjs/services/LinearTracker.js +89 -0
  76. package/dist/cjs/services/LinearTracker.js.map +1 -0
  77. package/dist/cjs/services/MessengerAdapter/MessengerAdapter.js +30 -0
  78. package/dist/cjs/services/MessengerAdapter/MessengerAdapter.js.map +1 -0
  79. package/dist/cjs/services/MessengerAdapter/TelegramAdapter.js +131 -0
  80. package/dist/cjs/services/MessengerAdapter/TelegramAdapter.js.map +1 -0
  81. package/dist/cjs/services/MessengerAdapter/TelegramConfig.js +81 -0
  82. package/dist/cjs/services/MessengerAdapter/TelegramConfig.js.map +1 -0
  83. package/dist/cjs/services/MessengerAdapter.js +30 -0
  84. package/dist/cjs/services/MessengerAdapter.js.map +1 -0
  85. package/dist/cjs/services/OctokitClient.js +350 -0
  86. package/dist/cjs/services/OctokitClient.js.map +1 -0
  87. package/dist/cjs/services/PlanOverviewUploader.js +119 -0
  88. package/dist/cjs/services/PlanOverviewUploader.js.map +1 -0
  89. package/dist/cjs/services/PlanOverviewUploaderMap.js +25 -0
  90. package/dist/cjs/services/PlanOverviewUploaderMap.js.map +1 -0
  91. package/dist/cjs/services/PlanSession.js +489 -0
  92. package/dist/cjs/services/PlanSession.js.map +1 -0
  93. package/dist/cjs/services/ProjectStore.js +107 -0
  94. package/dist/cjs/services/ProjectStore.js.map +1 -0
  95. package/dist/cjs/services/PullRequestTracker.js +186 -0
  96. package/dist/cjs/services/PullRequestTracker.js.map +1 -0
  97. package/dist/cjs/services/SpecUploader.js +111 -0
  98. package/dist/cjs/services/SpecUploader.js.map +1 -0
  99. package/dist/cjs/services/SpecUploaderMap.js +25 -0
  100. package/dist/cjs/services/SpecUploaderMap.js.map +1 -0
  101. package/dist/cjs/services/TaskEventSource.js +58 -0
  102. package/dist/cjs/services/TaskEventSource.js.map +1 -0
  103. package/dist/cjs/services/TaskTracker/GitHubIssueTracker.js +155 -0
  104. package/dist/cjs/services/TaskTracker/GitHubIssueTracker.js.map +1 -0
  105. package/dist/cjs/services/TaskTracker/LinearSdkClient.js +149 -0
  106. package/dist/cjs/services/TaskTracker/LinearSdkClient.js.map +1 -0
  107. package/dist/cjs/services/TaskTracker/LinearTracker.js +126 -0
  108. package/dist/cjs/services/TaskTracker/LinearTracker.js.map +1 -0
  109. package/dist/cjs/services/TaskTracker/TaskTracker.js +20 -0
  110. package/dist/cjs/services/TaskTracker/TaskTracker.js.map +1 -0
  111. package/dist/cjs/services/TaskTracker/TrackerLayerMap.js +27 -0
  112. package/dist/cjs/services/TaskTracker/TrackerLayerMap.js.map +1 -0
  113. package/dist/cjs/services/TaskTracker/buildEventStream.js +55 -0
  114. package/dist/cjs/services/TaskTracker/buildEventStream.js.map +1 -0
  115. package/dist/cjs/services/TaskTracker.js +20 -0
  116. package/dist/cjs/services/TaskTracker.js.map +1 -0
  117. package/dist/cjs/services/TelegramAdapter.js +125 -0
  118. package/dist/cjs/services/TelegramAdapter.js.map +1 -0
  119. package/dist/cjs/services/TelegramConfig.js +81 -0
  120. package/dist/cjs/services/TelegramConfig.js.map +1 -0
  121. package/dist/cjs/services/TelegramConfigStore.js +81 -0
  122. package/dist/cjs/services/TelegramConfigStore.js.map +1 -0
  123. package/dist/cjs/services/TelegramNotifier.js +50 -0
  124. package/dist/cjs/services/TelegramNotifier.js.map +1 -0
  125. package/dist/cjs/services/TrackerLayerMap.js +27 -0
  126. package/dist/cjs/services/TrackerLayerMap.js.map +1 -0
  127. package/dist/cjs/services/TrackerResolver.js +45 -0
  128. package/dist/cjs/services/TrackerResolver.js.map +1 -0
  129. package/dist/cjs/services/messenger/MessengerAdapter.js +30 -0
  130. package/dist/cjs/services/messenger/MessengerAdapter.js.map +1 -0
  131. package/dist/cjs/services/messenger/TelegramAdapter.js +125 -0
  132. package/dist/cjs/services/messenger/TelegramAdapter.js.map +1 -0
  133. package/dist/cjs/services/task-tracker/GitHubIssueTracker.js +157 -0
  134. package/dist/cjs/services/task-tracker/GitHubIssueTracker.js.map +1 -0
  135. package/dist/cjs/services/task-tracker/LinearTracker.js +127 -0
  136. package/dist/cjs/services/task-tracker/LinearTracker.js.map +1 -0
  137. package/dist/cjs/services/task-tracker/TaskTracker.js +20 -0
  138. package/dist/cjs/services/task-tracker/TaskTracker.js.map +1 -0
  139. package/dist/cjs/services/task-tracker/TrackerLayerMap.js +27 -0
  140. package/dist/cjs/services/task-tracker/TrackerLayerMap.js.map +1 -0
  141. package/dist/cjs/shim/bin.js +31 -0
  142. package/dist/cjs/shim/bin.js.map +1 -0
  143. package/dist/cjs/shim/main.js +217 -0
  144. package/dist/cjs/shim/main.js.map +1 -0
  145. package/dist/cjs/shim/parseArgs.js +45 -0
  146. package/dist/cjs/shim/parseArgs.js.map +1 -0
  147. package/dist/cjs/shim/schemas.js +35 -0
  148. package/dist/cjs/shim/schemas.js.map +1 -0
  149. package/dist/dts/Events.d.ts +108 -0
  150. package/dist/dts/Events.d.ts.map +1 -0
  151. package/dist/dts/LalphMain.d.ts +2 -0
  152. package/dist/dts/LalphMain.d.ts.map +1 -0
  153. package/dist/dts/Main.d.ts +2 -0
  154. package/dist/dts/Main.d.ts.map +1 -0
  155. package/dist/dts/index.d.ts +101 -0
  156. package/dist/dts/index.d.ts.map +1 -0
  157. package/dist/dts/lib/AnalysisPrompts.d.ts +12 -0
  158. package/dist/dts/lib/AnalysisPrompts.d.ts.map +1 -0
  159. package/dist/dts/lib/BranchParser.d.ts +40 -0
  160. package/dist/dts/lib/BranchParser.d.ts.map +1 -0
  161. package/dist/dts/lib/MermaidToPlantUml.d.ts +19 -0
  162. package/dist/dts/lib/MermaidToPlantUml.d.ts.map +1 -0
  163. package/dist/dts/lib/SpecHtmlGenerator.d.ts +18 -0
  164. package/dist/dts/lib/SpecHtmlGenerator.d.ts.map +1 -0
  165. package/dist/dts/lib/StreamJsonParser.d.ts +147 -0
  166. package/dist/dts/lib/StreamJsonParser.d.ts.map +1 -0
  167. package/dist/dts/lib/TelegramFormatter.d.ts +35 -0
  168. package/dist/dts/lib/TelegramFormatter.d.ts.map +1 -0
  169. package/dist/dts/lib/TelegraphHtml.d.ts +11 -0
  170. package/dist/dts/lib/TelegraphHtml.d.ts.map +1 -0
  171. package/dist/dts/lib/TelegraphMarkdown.d.ts +21 -0
  172. package/dist/dts/lib/TelegraphMarkdown.d.ts.map +1 -0
  173. package/dist/dts/schemas/CredentialSchemas.d.ts +41 -0
  174. package/dist/dts/schemas/CredentialSchemas.d.ts.map +1 -0
  175. package/dist/dts/schemas/GitHubSchemas.d.ts +130 -0
  176. package/dist/dts/schemas/GitHubSchemas.d.ts.map +1 -0
  177. package/dist/dts/schemas/LinearSchemas.d.ts +121 -0
  178. package/dist/dts/schemas/LinearSchemas.d.ts.map +1 -0
  179. package/dist/dts/schemas/ProjectSchemas.d.ts +40 -0
  180. package/dist/dts/schemas/ProjectSchemas.d.ts.map +1 -0
  181. package/dist/dts/schemas/TrackerSchemas.d.ts +57 -0
  182. package/dist/dts/schemas/TrackerSchemas.d.ts.map +1 -0
  183. package/dist/dts/services/AppContext.d.ts +40 -0
  184. package/dist/dts/services/AppContext.d.ts.map +1 -0
  185. package/dist/dts/services/AppRuntimeConfig.d.ts +51 -0
  186. package/dist/dts/services/AppRuntimeConfig.d.ts.map +1 -0
  187. package/dist/dts/services/AutoMerge.d.ts +42 -0
  188. package/dist/dts/services/AutoMerge.d.ts.map +1 -0
  189. package/dist/dts/services/ChatMachine.d.ts +478 -0
  190. package/dist/dts/services/ChatMachine.d.ts.map +1 -0
  191. package/dist/dts/services/CommentTimer.d.ts +44 -0
  192. package/dist/dts/services/CommentTimer.d.ts.map +1 -0
  193. package/dist/dts/services/CredentialStore.d.ts +43 -0
  194. package/dist/dts/services/CredentialStore.d.ts.map +1 -0
  195. package/dist/dts/services/CredentialWatcher.d.ts +41 -0
  196. package/dist/dts/services/CredentialWatcher.d.ts.map +1 -0
  197. package/dist/dts/services/Credentials.d.ts +44 -0
  198. package/dist/dts/services/Credentials.d.ts.map +1 -0
  199. package/dist/dts/services/EventLoop.d.ts +26 -0
  200. package/dist/dts/services/EventLoop.d.ts.map +1 -0
  201. package/dist/dts/services/GitHubClient/GitHubClient.d.ts +69 -0
  202. package/dist/dts/services/GitHubClient/GitHubClient.d.ts.map +1 -0
  203. package/dist/dts/services/GitHubClient/OctokitClient.d.ts +214 -0
  204. package/dist/dts/services/GitHubClient/OctokitClient.d.ts.map +1 -0
  205. package/dist/dts/services/GitHubClient.d.ts +69 -0
  206. package/dist/dts/services/GitHubClient.d.ts.map +1 -0
  207. package/dist/dts/services/GitHubEventSource.d.ts +43 -0
  208. package/dist/dts/services/GitHubEventSource.d.ts.map +1 -0
  209. package/dist/dts/services/GitHubIssueTracker.d.ts +9 -0
  210. package/dist/dts/services/GitHubIssueTracker.d.ts.map +1 -0
  211. package/dist/dts/services/LalphConfig.d.ts +44 -0
  212. package/dist/dts/services/LalphConfig.d.ts.map +1 -0
  213. package/dist/dts/services/LalphConfigReader.d.ts +66 -0
  214. package/dist/dts/services/LalphConfigReader.d.ts.map +1 -0
  215. package/dist/dts/services/LalphDirectory.d.ts +39 -0
  216. package/dist/dts/services/LalphDirectory.d.ts.map +1 -0
  217. package/dist/dts/services/LinearSdkClient.d.ts +71 -0
  218. package/dist/dts/services/LinearSdkClient.d.ts.map +1 -0
  219. package/dist/dts/services/LinearTracker.d.ts +9 -0
  220. package/dist/dts/services/LinearTracker.d.ts.map +1 -0
  221. package/dist/dts/services/MessengerAdapter/MessengerAdapter.d.ts +69 -0
  222. package/dist/dts/services/MessengerAdapter/MessengerAdapter.d.ts.map +1 -0
  223. package/dist/dts/services/MessengerAdapter/TelegramAdapter.d.ts +13 -0
  224. package/dist/dts/services/MessengerAdapter/TelegramAdapter.d.ts.map +1 -0
  225. package/dist/dts/services/MessengerAdapter/TelegramConfig.d.ts +58 -0
  226. package/dist/dts/services/MessengerAdapter/TelegramConfig.d.ts.map +1 -0
  227. package/dist/dts/services/MessengerAdapter.d.ts +69 -0
  228. package/dist/dts/services/MessengerAdapter.d.ts.map +1 -0
  229. package/dist/dts/services/OctokitClient.d.ts +232 -0
  230. package/dist/dts/services/OctokitClient.d.ts.map +1 -0
  231. package/dist/dts/services/PlanOverviewUploader.d.ts +55 -0
  232. package/dist/dts/services/PlanOverviewUploader.d.ts.map +1 -0
  233. package/dist/dts/services/PlanOverviewUploaderMap.d.ts +14 -0
  234. package/dist/dts/services/PlanOverviewUploaderMap.d.ts.map +1 -0
  235. package/dist/dts/services/PlanSession.d.ts +169 -0
  236. package/dist/dts/services/PlanSession.d.ts.map +1 -0
  237. package/dist/dts/services/ProjectStore.d.ts +50 -0
  238. package/dist/dts/services/ProjectStore.d.ts.map +1 -0
  239. package/dist/dts/services/PullRequestTracker.d.ts +42 -0
  240. package/dist/dts/services/PullRequestTracker.d.ts.map +1 -0
  241. package/dist/dts/services/SpecUploader.d.ts +51 -0
  242. package/dist/dts/services/SpecUploader.d.ts.map +1 -0
  243. package/dist/dts/services/SpecUploaderMap.d.ts +14 -0
  244. package/dist/dts/services/SpecUploaderMap.d.ts.map +1 -0
  245. package/dist/dts/services/TaskEventSource.d.ts +21 -0
  246. package/dist/dts/services/TaskEventSource.d.ts.map +1 -0
  247. package/dist/dts/services/TaskTracker/GitHubIssueTracker.d.ts +10 -0
  248. package/dist/dts/services/TaskTracker/GitHubIssueTracker.d.ts.map +1 -0
  249. package/dist/dts/services/TaskTracker/LinearSdkClient.d.ts +71 -0
  250. package/dist/dts/services/TaskTracker/LinearSdkClient.d.ts.map +1 -0
  251. package/dist/dts/services/TaskTracker/LinearTracker.d.ts +10 -0
  252. package/dist/dts/services/TaskTracker/LinearTracker.d.ts.map +1 -0
  253. package/dist/dts/services/TaskTracker/TaskTracker.d.ts +39 -0
  254. package/dist/dts/services/TaskTracker/TaskTracker.d.ts.map +1 -0
  255. package/dist/dts/services/TaskTracker/TrackerLayerMap.d.ts +14 -0
  256. package/dist/dts/services/TaskTracker/TrackerLayerMap.d.ts.map +1 -0
  257. package/dist/dts/services/TaskTracker/buildEventStream.d.ts +16 -0
  258. package/dist/dts/services/TaskTracker/buildEventStream.d.ts.map +1 -0
  259. package/dist/dts/services/TaskTracker.d.ts +38 -0
  260. package/dist/dts/services/TaskTracker.d.ts.map +1 -0
  261. package/dist/dts/services/TelegramAdapter.d.ts +13 -0
  262. package/dist/dts/services/TelegramAdapter.d.ts.map +1 -0
  263. package/dist/dts/services/TelegramConfig.d.ts +58 -0
  264. package/dist/dts/services/TelegramConfig.d.ts.map +1 -0
  265. package/dist/dts/services/TelegramConfigStore.d.ts +57 -0
  266. package/dist/dts/services/TelegramConfigStore.d.ts.map +1 -0
  267. package/dist/dts/services/TelegramNotifier.d.ts +40 -0
  268. package/dist/dts/services/TelegramNotifier.d.ts.map +1 -0
  269. package/dist/dts/services/TrackerLayerMap.d.ts +14 -0
  270. package/dist/dts/services/TrackerLayerMap.d.ts.map +1 -0
  271. package/dist/dts/services/TrackerResolver.d.ts +43 -0
  272. package/dist/dts/services/TrackerResolver.d.ts.map +1 -0
  273. package/dist/dts/services/messenger/MessengerAdapter.d.ts +69 -0
  274. package/dist/dts/services/messenger/MessengerAdapter.d.ts.map +1 -0
  275. package/dist/dts/services/messenger/TelegramAdapter.d.ts +13 -0
  276. package/dist/dts/services/messenger/TelegramAdapter.d.ts.map +1 -0
  277. package/dist/dts/services/task-tracker/GitHubIssueTracker.d.ts +10 -0
  278. package/dist/dts/services/task-tracker/GitHubIssueTracker.d.ts.map +1 -0
  279. package/dist/dts/services/task-tracker/LinearTracker.d.ts +10 -0
  280. package/dist/dts/services/task-tracker/LinearTracker.d.ts.map +1 -0
  281. package/dist/dts/services/task-tracker/TaskTracker.d.ts +38 -0
  282. package/dist/dts/services/task-tracker/TaskTracker.d.ts.map +1 -0
  283. package/dist/dts/services/task-tracker/TrackerLayerMap.d.ts +14 -0
  284. package/dist/dts/services/task-tracker/TrackerLayerMap.d.ts.map +1 -0
  285. package/dist/dts/shim/bin.d.ts +3 -0
  286. package/dist/dts/shim/bin.d.ts.map +1 -0
  287. package/dist/dts/shim/main.d.ts +36 -0
  288. package/dist/dts/shim/main.d.ts.map +1 -0
  289. package/dist/dts/shim/parseArgs.d.ts +11 -0
  290. package/dist/dts/shim/parseArgs.d.ts.map +1 -0
  291. package/dist/dts/shim/schemas.d.ts +55 -0
  292. package/dist/dts/shim/schemas.d.ts.map +1 -0
  293. package/dist/esm/Events.js +41 -0
  294. package/dist/esm/Events.js.map +1 -0
  295. package/dist/esm/LalphMain.js +56 -0
  296. package/dist/esm/LalphMain.js.map +1 -0
  297. package/dist/esm/Main.js +112 -0
  298. package/dist/esm/Main.js.map +1 -0
  299. package/dist/esm/index.js +101 -0
  300. package/dist/esm/index.js.map +1 -0
  301. package/dist/esm/lib/AnalysisPrompts.js +54 -0
  302. package/dist/esm/lib/AnalysisPrompts.js.map +1 -0
  303. package/dist/esm/lib/BranchParser.js +36 -0
  304. package/dist/esm/lib/BranchParser.js.map +1 -0
  305. package/dist/esm/lib/MermaidToPlantUml.js +89 -0
  306. package/dist/esm/lib/MermaidToPlantUml.js.map +1 -0
  307. package/dist/esm/lib/SpecHtmlGenerator.js +153 -0
  308. package/dist/esm/lib/SpecHtmlGenerator.js.map +1 -0
  309. package/dist/esm/lib/StreamJsonParser.js +79 -0
  310. package/dist/esm/lib/StreamJsonParser.js.map +1 -0
  311. package/dist/esm/lib/TelegramFormatter.js +114 -0
  312. package/dist/esm/lib/TelegramFormatter.js.map +1 -0
  313. package/dist/esm/lib/TelegraphHtml.js +57 -0
  314. package/dist/esm/lib/TelegraphHtml.js.map +1 -0
  315. package/dist/esm/lib/TelegraphMarkdown.js +338 -0
  316. package/dist/esm/lib/TelegraphMarkdown.js.map +1 -0
  317. package/dist/esm/package.json +4 -0
  318. package/dist/esm/schemas/CredentialSchemas.js +22 -0
  319. package/dist/esm/schemas/CredentialSchemas.js.map +1 -0
  320. package/dist/esm/schemas/GitHubSchemas.js +50 -0
  321. package/dist/esm/schemas/GitHubSchemas.js.map +1 -0
  322. package/dist/esm/schemas/LinearSchemas.js +52 -0
  323. package/dist/esm/schemas/LinearSchemas.js.map +1 -0
  324. package/dist/esm/schemas/ProjectSchemas.js +18 -0
  325. package/dist/esm/schemas/ProjectSchemas.js.map +1 -0
  326. package/dist/esm/schemas/TrackerSchemas.js +26 -0
  327. package/dist/esm/schemas/TrackerSchemas.js.map +1 -0
  328. package/dist/esm/services/AppContext.js +48 -0
  329. package/dist/esm/services/AppContext.js.map +1 -0
  330. package/dist/esm/services/AppRuntimeConfig.js +26 -0
  331. package/dist/esm/services/AppRuntimeConfig.js.map +1 -0
  332. package/dist/esm/services/AutoMerge.js +131 -0
  333. package/dist/esm/services/AutoMerge.js.map +1 -0
  334. package/dist/esm/services/ChatMachine.js +855 -0
  335. package/dist/esm/services/ChatMachine.js.map +1 -0
  336. package/dist/esm/services/CommentTimer.js +72 -0
  337. package/dist/esm/services/CommentTimer.js.map +1 -0
  338. package/dist/esm/services/CredentialStore.js +59 -0
  339. package/dist/esm/services/CredentialStore.js.map +1 -0
  340. package/dist/esm/services/CredentialWatcher.js +67 -0
  341. package/dist/esm/services/CredentialWatcher.js.map +1 -0
  342. package/dist/esm/services/Credentials.js +121 -0
  343. package/dist/esm/services/Credentials.js.map +1 -0
  344. package/dist/esm/services/EventLoop.js +128 -0
  345. package/dist/esm/services/EventLoop.js.map +1 -0
  346. package/dist/esm/services/GitHubClient/GitHubClient.js +227 -0
  347. package/dist/esm/services/GitHubClient/GitHubClient.js.map +1 -0
  348. package/dist/esm/services/GitHubClient/OctokitClient.js +320 -0
  349. package/dist/esm/services/GitHubClient/OctokitClient.js.map +1 -0
  350. package/dist/esm/services/GitHubClient.js +227 -0
  351. package/dist/esm/services/GitHubClient.js.map +1 -0
  352. package/dist/esm/services/GitHubEventSource.js +136 -0
  353. package/dist/esm/services/GitHubEventSource.js.map +1 -0
  354. package/dist/esm/services/GitHubIssueTracker.js +111 -0
  355. package/dist/esm/services/GitHubIssueTracker.js.map +1 -0
  356. package/dist/esm/services/LalphConfig.js +130 -0
  357. package/dist/esm/services/LalphConfig.js.map +1 -0
  358. package/dist/esm/services/LalphConfigReader.js +71 -0
  359. package/dist/esm/services/LalphConfigReader.js.map +1 -0
  360. package/dist/esm/services/LalphDirectory.js +36 -0
  361. package/dist/esm/services/LalphDirectory.js.map +1 -0
  362. package/dist/esm/services/LinearSdkClient.js +140 -0
  363. package/dist/esm/services/LinearSdkClient.js.map +1 -0
  364. package/dist/esm/services/LinearTracker.js +82 -0
  365. package/dist/esm/services/LinearTracker.js.map +1 -0
  366. package/dist/esm/services/MessengerAdapter/MessengerAdapter.js +21 -0
  367. package/dist/esm/services/MessengerAdapter/MessengerAdapter.js.map +1 -0
  368. package/dist/esm/services/MessengerAdapter/TelegramAdapter.js +124 -0
  369. package/dist/esm/services/MessengerAdapter/TelegramAdapter.js.map +1 -0
  370. package/dist/esm/services/MessengerAdapter/TelegramConfig.js +71 -0
  371. package/dist/esm/services/MessengerAdapter/TelegramConfig.js.map +1 -0
  372. package/dist/esm/services/MessengerAdapter.js +21 -0
  373. package/dist/esm/services/MessengerAdapter.js.map +1 -0
  374. package/dist/esm/services/OctokitClient.js +341 -0
  375. package/dist/esm/services/OctokitClient.js.map +1 -0
  376. package/dist/esm/services/PlanOverviewUploader.js +109 -0
  377. package/dist/esm/services/PlanOverviewUploader.js.map +1 -0
  378. package/dist/esm/services/PlanOverviewUploaderMap.js +17 -0
  379. package/dist/esm/services/PlanOverviewUploaderMap.js.map +1 -0
  380. package/dist/esm/services/PlanSession.js +471 -0
  381. package/dist/esm/services/PlanSession.js.map +1 -0
  382. package/dist/esm/services/ProjectStore.js +98 -0
  383. package/dist/esm/services/ProjectStore.js.map +1 -0
  384. package/dist/esm/services/PullRequestTracker.js +177 -0
  385. package/dist/esm/services/PullRequestTracker.js.map +1 -0
  386. package/dist/esm/services/SpecUploader.js +101 -0
  387. package/dist/esm/services/SpecUploader.js.map +1 -0
  388. package/dist/esm/services/SpecUploaderMap.js +17 -0
  389. package/dist/esm/services/SpecUploaderMap.js.map +1 -0
  390. package/dist/esm/services/TaskEventSource.js +50 -0
  391. package/dist/esm/services/TaskEventSource.js.map +1 -0
  392. package/dist/esm/services/TaskTracker/GitHubIssueTracker.js +148 -0
  393. package/dist/esm/services/TaskTracker/GitHubIssueTracker.js.map +1 -0
  394. package/dist/esm/services/TaskTracker/LinearSdkClient.js +140 -0
  395. package/dist/esm/services/TaskTracker/LinearSdkClient.js.map +1 -0
  396. package/dist/esm/services/TaskTracker/LinearTracker.js +119 -0
  397. package/dist/esm/services/TaskTracker/LinearTracker.js.map +1 -0
  398. package/dist/esm/services/TaskTracker/TaskTracker.js +12 -0
  399. package/dist/esm/services/TaskTracker/TaskTracker.js.map +1 -0
  400. package/dist/esm/services/TaskTracker/TrackerLayerMap.js +19 -0
  401. package/dist/esm/services/TaskTracker/TrackerLayerMap.js.map +1 -0
  402. package/dist/esm/services/TaskTracker/buildEventStream.js +47 -0
  403. package/dist/esm/services/TaskTracker/buildEventStream.js.map +1 -0
  404. package/dist/esm/services/TaskTracker.js +12 -0
  405. package/dist/esm/services/TaskTracker.js.map +1 -0
  406. package/dist/esm/services/TelegramAdapter.js +118 -0
  407. package/dist/esm/services/TelegramAdapter.js.map +1 -0
  408. package/dist/esm/services/TelegramConfig.js +71 -0
  409. package/dist/esm/services/TelegramConfig.js.map +1 -0
  410. package/dist/esm/services/TelegramConfigStore.js +71 -0
  411. package/dist/esm/services/TelegramConfigStore.js.map +1 -0
  412. package/dist/esm/services/TelegramNotifier.js +41 -0
  413. package/dist/esm/services/TelegramNotifier.js.map +1 -0
  414. package/dist/esm/services/TrackerLayerMap.js +19 -0
  415. package/dist/esm/services/TrackerLayerMap.js.map +1 -0
  416. package/dist/esm/services/TrackerResolver.js +36 -0
  417. package/dist/esm/services/TrackerResolver.js.map +1 -0
  418. package/dist/esm/services/messenger/MessengerAdapter.js +21 -0
  419. package/dist/esm/services/messenger/MessengerAdapter.js.map +1 -0
  420. package/dist/esm/services/messenger/TelegramAdapter.js +118 -0
  421. package/dist/esm/services/messenger/TelegramAdapter.js.map +1 -0
  422. package/dist/esm/services/task-tracker/GitHubIssueTracker.js +150 -0
  423. package/dist/esm/services/task-tracker/GitHubIssueTracker.js.map +1 -0
  424. package/dist/esm/services/task-tracker/LinearTracker.js +120 -0
  425. package/dist/esm/services/task-tracker/LinearTracker.js.map +1 -0
  426. package/dist/esm/services/task-tracker/TaskTracker.js +12 -0
  427. package/dist/esm/services/task-tracker/TaskTracker.js.map +1 -0
  428. package/dist/esm/services/task-tracker/TrackerLayerMap.js +19 -0
  429. package/dist/esm/services/task-tracker/TrackerLayerMap.js.map +1 -0
  430. package/dist/esm/shim/bin.js +28 -0
  431. package/dist/esm/shim/bin.js.map +1 -0
  432. package/dist/esm/shim/main.js +196 -0
  433. package/dist/esm/shim/main.js.map +1 -0
  434. package/dist/esm/shim/parseArgs.js +39 -0
  435. package/dist/esm/shim/parseArgs.js.map +1 -0
  436. package/dist/esm/shim/schemas.js +28 -0
  437. package/dist/esm/shim/schemas.js.map +1 -0
  438. package/lib/AnalysisPrompts/package.json +6 -0
  439. package/lib/BranchParser/package.json +6 -0
  440. package/lib/MermaidToPlantUml/package.json +6 -0
  441. package/lib/SpecHtmlGenerator/package.json +6 -0
  442. package/lib/StreamJsonParser/package.json +6 -0
  443. package/lib/TelegramFormatter/package.json +6 -0
  444. package/lib/TelegraphMarkdown/package.json +6 -0
  445. package/package.json +360 -0
  446. package/schemas/CredentialSchemas/package.json +6 -0
  447. package/schemas/GitHubSchemas/package.json +6 -0
  448. package/schemas/LinearSchemas/package.json +6 -0
  449. package/schemas/ProjectSchemas/package.json +6 -0
  450. package/schemas/TrackerSchemas/package.json +6 -0
  451. package/services/AppContext/package.json +6 -0
  452. package/services/AppRuntimeConfig/package.json +6 -0
  453. package/services/AutoMerge/package.json +6 -0
  454. package/services/ChatMachine/package.json +6 -0
  455. package/services/CommentTimer/package.json +6 -0
  456. package/services/EventLoop/package.json +6 -0
  457. package/services/GitHubClient/package.json +6 -0
  458. package/services/LalphConfig/package.json +6 -0
  459. package/services/LinearSdkClient/package.json +6 -0
  460. package/services/MessengerAdapter/MessengerAdapter/package.json +6 -0
  461. package/services/MessengerAdapter/TelegramAdapter/package.json +6 -0
  462. package/services/OctokitClient/package.json +6 -0
  463. package/services/PlanOverviewUploader/package.json +6 -0
  464. package/services/PlanOverviewUploaderMap/package.json +6 -0
  465. package/services/PlanSession/package.json +6 -0
  466. package/services/ProjectStore/package.json +6 -0
  467. package/services/PullRequestTracker/package.json +6 -0
  468. package/services/TaskTracker/GitHubIssueTracker/package.json +6 -0
  469. package/services/TaskTracker/LinearTracker/package.json +6 -0
  470. package/services/TaskTracker/TaskTracker/package.json +6 -0
  471. package/services/TelegramConfig/package.json +6 -0
  472. package/services/TrackerLayerMap/package.json +6 -0
  473. package/shim/bin/package.json +6 -0
  474. package/shim/main/package.json +6 -0
  475. package/shim/parseArgs/package.json +6 -0
  476. package/shim/schemas/package.json +6 -0
  477. package/src/Events.ts +98 -0
  478. package/src/Main.ts +177 -0
  479. package/src/index.ts +124 -0
  480. package/src/lib/AnalysisPrompts.ts +54 -0
  481. package/src/lib/BranchParser.ts +58 -0
  482. package/src/lib/MermaidToPlantUml.ts +103 -0
  483. package/src/lib/SpecHtmlGenerator.ts +199 -0
  484. package/src/lib/StreamJsonParser.ts +99 -0
  485. package/src/lib/TelegramFormatter.ts +151 -0
  486. package/src/lib/TelegraphMarkdown.ts +305 -0
  487. package/src/schemas/CredentialSchemas.ts +23 -0
  488. package/src/schemas/GitHubSchemas.ts +50 -0
  489. package/src/schemas/LinearSchemas.ts +57 -0
  490. package/src/schemas/ProjectSchemas.ts +18 -0
  491. package/src/schemas/TrackerSchemas.ts +27 -0
  492. package/src/services/AppContext.ts +72 -0
  493. package/src/services/AppRuntimeConfig.ts +23 -0
  494. package/src/services/AutoMerge.ts +198 -0
  495. package/src/services/ChatMachine.ts +911 -0
  496. package/src/services/CommentTimer.ts +133 -0
  497. package/src/services/EventLoop.ts +321 -0
  498. package/src/services/GitHubClient.ts +282 -0
  499. package/src/services/LalphConfig.ts +218 -0
  500. package/src/services/LinearSdkClient.ts +181 -0
  501. package/src/services/MessengerAdapter/MessengerAdapter.ts +53 -0
  502. package/src/services/MessengerAdapter/TelegramAdapter.ts +145 -0
  503. package/src/services/OctokitClient.ts +628 -0
  504. package/src/services/PlanOverviewUploader.ts +160 -0
  505. package/src/services/PlanOverviewUploaderMap.ts +17 -0
  506. package/src/services/PlanSession.ts +589 -0
  507. package/src/services/ProjectStore.ts +140 -0
  508. package/src/services/PullRequestTracker.ts +253 -0
  509. package/src/services/TaskTracker/GitHubIssueTracker.ts +162 -0
  510. package/src/services/TaskTracker/LinearTracker.ts +141 -0
  511. package/src/services/TaskTracker/TaskTracker.ts +34 -0
  512. package/src/services/TelegramConfig.ts +120 -0
  513. package/src/services/TrackerLayerMap.ts +19 -0
  514. package/src/shim/bin.ts +36 -0
  515. package/src/shim/main.ts +255 -0
  516. package/src/shim/parseArgs.ts +43 -0
  517. package/src/shim/schemas.ts +38 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TrackerSchemas.js","names":["_effect","require","TrackerIssue","Schema","Class","id","String","title","state","url","createdAt","updatedAt","exports","TrackerIssueEvent","action","Literal","issue"],"sources":["../../../src/schemas/TrackerSchemas.ts"],"sourcesContent":[null],"mappings":";;;;;;AAIA,IAAAA,OAAA,GAAAC,OAAA;AAJA;;;;;AAMA;;;;AAIM,MAAOC,YAAa,sBAAQC,cAAM,CAACC,KAAK,CAAe,cAAc,CAAC,CAAC;EAC3EC,EAAE,EAAEF,cAAM,CAACG,MAAM;EACjBC,KAAK,EAAEJ,cAAM,CAACG,MAAM;EACpBE,KAAK,EAAEL,cAAM,CAACG,MAAM;EACpBG,GAAG,EAAEN,cAAM,CAACG,MAAM;EAClBI,SAAS,EAAEP,cAAM,CAACG,MAAM;EACxBK,SAAS,EAAER,cAAM,CAACG;CACnB,CAAC;AAEF;;;;AAAAM,OAAA,CAAAV,YAAA,GAAAA,YAAA;AAIM,MAAOW,iBAAkB,sBAAQV,cAAM,CAACC,KAAK,CAAoB,mBAAmB,CAAC,CAAC;EAC1FU,MAAM,eAAEX,cAAM,CAACY,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC;EAC5CC,KAAK,EAAEd;CACR,CAAC;AAAAU,OAAA,CAAAC,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AppContextLive = exports.AppContextError = exports.AppContext = void 0;
7
+ var _platform = require("@effect/platform");
8
+ var _effect = require("effect");
9
+ /**
10
+ * Application context — resolves project root and config directory paths
11
+ * @since 1.0.0
12
+ */
13
+
14
+ /**
15
+ * @since 1.0.0
16
+ * @category errors
17
+ */
18
+ class AppContextError extends /*#__PURE__*/_effect.Data.TaggedError("AppContextError") {}
19
+ /**
20
+ * @since 1.0.0
21
+ * @category context
22
+ */
23
+ exports.AppContextError = AppContextError;
24
+ class AppContext extends /*#__PURE__*/_effect.Context.Tag("AppContext")() {}
25
+ /**
26
+ * @since 1.0.0
27
+ * @category layers
28
+ */
29
+ exports.AppContext = AppContext;
30
+ const AppContextLive = exports.AppContextLive = /*#__PURE__*/_effect.Layer.effect(AppContext, /*#__PURE__*/_effect.Effect.gen(function* () {
31
+ const fs = yield* _platform.FileSystem.FileSystem;
32
+ const pathService = yield* _platform.Path.Path;
33
+ let current = pathService.resolve(".");
34
+ let lalphPath;
35
+ while (true) {
36
+ const candidate = pathService.join(current, ".lalph");
37
+ const exists = yield* fs.exists(candidate);
38
+ if (exists) {
39
+ lalphPath = candidate;
40
+ break;
41
+ }
42
+ const parent = pathService.dirname(current);
43
+ if (parent === current) break;
44
+ current = parent;
45
+ }
46
+ if (lalphPath === undefined) {
47
+ return yield* new AppContextError({
48
+ message: "Could not find .lalph/ directory. Are you inside a lalph project?",
49
+ cause: null
50
+ });
51
+ }
52
+ return AppContext.of({
53
+ projectRoot: pathService.dirname(lalphPath),
54
+ configDir: pathService.join(lalphPath, "config")
55
+ });
56
+ }));
57
+ //# sourceMappingURL=AppContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppContext.js","names":["_platform","require","_effect","AppContextError","Data","TaggedError","exports","AppContext","Context","Tag","AppContextLive","Layer","effect","Effect","gen","fs","FileSystem","pathService","Path","current","resolve","lalphPath","candidate","join","exists","parent","dirname","undefined","message","cause","of","projectRoot","configDir"],"sources":["../../../src/services/AppContext.ts"],"sourcesContent":[null],"mappings":";;;;;;AAIA,IAAAA,SAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AALA;;;;;AAOA;;;;AAIM,MAAOE,eAAgB,sBAAQC,YAAI,CAACC,WAAW,CAAC,iBAAiB,CAGrE;AAWF;;;;AAAAC,OAAA,CAAAH,eAAA,GAAAA,eAAA;AAIM,MAAOI,UAAW,sBAAQC,eAAO,CAACC,GAAG,CAAC,YAAY,CAAC,EAGtD;AAEH;;;;AAAAH,OAAA,CAAAC,UAAA,GAAAA,UAAA;AAIO,MAAMG,cAAc,GAAAJ,OAAA,CAAAI,cAAA,gBAAGC,aAAK,CAACC,MAAM,CACxCL,UAAU,eACVM,cAAM,CAACC,GAAG,CAAC,aAAS;EAClB,MAAMC,EAAE,GAAG,OAAOC,oBAAU,CAACA,UAAU;EACvC,MAAMC,WAAW,GAAG,OAAOC,cAAI,CAACA,IAAI;EAEpC,IAAIC,OAAO,GAAGF,WAAW,CAACG,OAAO,CAAC,GAAG,CAAC;EACtC,IAAIC,SAA6B;EAEjC,OAAO,IAAI,EAAE;IACX,MAAMC,SAAS,GAAGL,WAAW,CAACM,IAAI,CAACJ,OAAO,EAAE,QAAQ,CAAC;IACrD,MAAMK,MAAM,GAAG,OAAOT,EAAE,CAACS,MAAM,CAACF,SAAS,CAAC;IAC1C,IAAIE,MAAM,EAAE;MACVH,SAAS,GAAGC,SAAS;MACrB;IACF;IACA,MAAMG,MAAM,GAAGR,WAAW,CAACS,OAAO,CAACP,OAAO,CAAC;IAC3C,IAAIM,MAAM,KAAKN,OAAO,EAAE;IACxBA,OAAO,GAAGM,MAAM;EAClB;EAEA,IAAIJ,SAAS,KAAKM,SAAS,EAAE;IAC3B,OAAO,OAAO,IAAIxB,eAAe,CAAC;MAChCyB,OAAO,EAAE,mEAAmE;MAC5EC,KAAK,EAAE;KACR,CAAC;EACJ;EAEA,OAAOtB,UAAU,CAACuB,EAAE,CAAC;IACnBC,WAAW,EAAEd,WAAW,CAACS,OAAO,CAACL,SAAS,CAAC;IAC3CW,SAAS,EAAEf,WAAW,CAACM,IAAI,CAACF,SAAS,EAAE,QAAQ;GAChD,CAAC;AACJ,CAAC,CAAC,CACH","ignoreList":[]}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.RuntimeConfig = exports.AppRuntimeConfig = void 0;
7
+ var _effect = require("effect");
8
+ /**
9
+ * Runtime configuration schema and service tag
10
+ * @since 1.0.0
11
+ */
12
+
13
+ /**
14
+ * @since 1.0.0
15
+ * @category schemas
16
+ */
17
+ class RuntimeConfig extends /*#__PURE__*/_effect.Schema.Class("RuntimeConfig")({
18
+ pollIntervalSeconds: _effect.Schema.Number,
19
+ triggerKeyword: _effect.Schema.String,
20
+ timerDelaySeconds: _effect.Schema.Number,
21
+ autoMergeEnabled: /*#__PURE__*/_effect.Schema.optionalWith(_effect.Schema.Boolean, {
22
+ default: () => false
23
+ }),
24
+ autoMergeWaitMinutes: /*#__PURE__*/_effect.Schema.optionalWith(_effect.Schema.Number, {
25
+ default: () => 10
26
+ })
27
+ }) {}
28
+ /**
29
+ * @since 1.0.0
30
+ * @category context
31
+ */
32
+ exports.RuntimeConfig = RuntimeConfig;
33
+ class AppRuntimeConfig extends /*#__PURE__*/_effect.Context.Tag("AppRuntimeConfig")() {}
34
+ exports.AppRuntimeConfig = AppRuntimeConfig;
35
+ //# sourceMappingURL=AppRuntimeConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppRuntimeConfig.js","names":["_effect","require","RuntimeConfig","Schema","Class","pollIntervalSeconds","Number","triggerKeyword","String","timerDelaySeconds","autoMergeEnabled","optionalWith","Boolean","default","autoMergeWaitMinutes","exports","AppRuntimeConfig","Context","Tag"],"sources":["../../../src/services/AppRuntimeConfig.ts"],"sourcesContent":[null],"mappings":";;;;;;AAIA,IAAAA,OAAA,GAAAC,OAAA;AAJA;;;;;AAMA;;;;AAIM,MAAOC,aAAc,sBAAQC,cAAM,CAACC,KAAK,CAAgB,eAAe,CAAC,CAAC;EAC9EC,mBAAmB,EAAEF,cAAM,CAACG,MAAM;EAClCC,cAAc,EAAEJ,cAAM,CAACK,MAAM;EAC7BC,iBAAiB,EAAEN,cAAM,CAACG,MAAM;EAChCI,gBAAgB,eAAEP,cAAM,CAACQ,YAAY,CAACR,cAAM,CAACS,OAAO,EAAE;IAAEC,OAAO,EAAEA,CAAA,KAAM;EAAK,CAAE,CAAC;EAC/EC,oBAAoB,eAAEX,cAAM,CAACQ,YAAY,CAACR,cAAM,CAACG,MAAM,EAAE;IAAEO,OAAO,EAAEA,CAAA,KAAM;EAAE,CAAE;CAC/E,CAAC;AAEF;;;;AAAAE,OAAA,CAAAb,aAAA,GAAAA,aAAA;AAIM,MAAOc,gBAAiB,sBAAQC,eAAO,CAACC,GAAG,CAAC,kBAAkB,CAAC,EAAmC;AAAAH,OAAA,CAAAC,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -0,0 +1,140 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.AutoMergeLive = exports.AutoMergeError = exports.AutoMerge = void 0;
7
+ var _effect = require("effect");
8
+ var _Events = require("../Events.js");
9
+ var _GitHubSchemas = require("../schemas/GitHubSchemas.js");
10
+ var _AppRuntimeConfig = require("./AppRuntimeConfig.js");
11
+ var _GitHubClient = require("./GitHubClient.js");
12
+ var _LalphConfig = require("./LalphConfig.js");
13
+ /**
14
+ * Auto-merge service that evaluates open PRs for automatic merging
15
+ * @since 1.0.0
16
+ */
17
+
18
+ /**
19
+ * @since 1.0.0
20
+ * @category errors
21
+ */
22
+ class AutoMergeError extends /*#__PURE__*/_effect.Data.TaggedError("AutoMergeError") {}
23
+ /**
24
+ * @since 1.0.0
25
+ * @category context
26
+ */
27
+ exports.AutoMergeError = AutoMergeError;
28
+ class AutoMerge extends /*#__PURE__*/_effect.Context.Tag("AutoMerge")() {}
29
+ exports.AutoMerge = AutoMerge;
30
+ const makeRepoFromFullName = fullName => new _GitHubSchemas.GitHubRepo({
31
+ id: 0,
32
+ name: "",
33
+ full_name: fullName,
34
+ owner: {
35
+ login: ""
36
+ },
37
+ html_url: ""
38
+ });
39
+ const isCISuccess = (state, checkRuns) => {
40
+ if (checkRuns.length === 0) return state === "success";
41
+ const allChecksCompleted = _effect.Array.every(checkRuns, cr => cr.conclusion !== null);
42
+ const allChecksPassed = _effect.Array.every(checkRuns, cr => cr.conclusion === "success" || cr.conclusion === "skipped");
43
+ return allChecksCompleted && allChecksPassed && state !== "failure";
44
+ };
45
+ /**
46
+ * @since 1.0.0
47
+ * @category layers
48
+ */
49
+ const AutoMergeLive = exports.AutoMergeLive = /*#__PURE__*/_effect.Layer.effect(AutoMerge, /*#__PURE__*/_effect.Effect.gen(function* () {
50
+ const config = yield* _AppRuntimeConfig.AppRuntimeConfig;
51
+ const lalphConfig = yield* _LalphConfig.LalphConfig;
52
+ const github = yield* _GitHubClient.GitHubClient;
53
+ const interval = _effect.Duration.seconds(config.pollIntervalSeconds);
54
+ // headShaTimestamps: tracks when we first saw each PR's current head SHA (PR number -> { sha, timestamp })
55
+ const headShaTimestampsRef = yield* _effect.Ref.make(_effect.HashMap.empty());
56
+ // mergedPRs: set of PR numbers we've already merged
57
+ const mergedPRsRef = yield* _effect.Ref.make(_effect.HashSet.empty());
58
+ const evaluatePRs = prs => _effect.Effect.gen(function* () {
59
+ if (!config.autoMergeEnabled) {
60
+ return [];
61
+ }
62
+ const events = [];
63
+ const currentPRNumbers = _effect.HashSet.fromIterable(_effect.Array.map(prs, pr => pr.number));
64
+ const mergedPRs = yield* _effect.Ref.get(mergedPRsRef);
65
+ for (const pr of prs) {
66
+ if (_effect.HashSet.has(mergedPRs, pr.number)) {
67
+ continue;
68
+ }
69
+ if (pr.hasConflicts) {
70
+ continue;
71
+ }
72
+ const prEvents = yield* evaluateSinglePR(pr).pipe(_effect.Effect.catchTag("GitHubClientError", err => _effect.Effect.logError(`AutoMerge evaluation failed for PR #${pr.number}`).pipe(_effect.Effect.annotateLogs("error", err.message), _effect.Effect.map(() => []))));
73
+ for (const event of prEvents) {
74
+ events.push(event);
75
+ }
76
+ }
77
+ // Clean up state for PRs no longer open
78
+ yield* _effect.Ref.update(headShaTimestampsRef, m => _effect.HashMap.filter(m, (_, prNumber) => _effect.HashSet.has(currentPRNumbers, prNumber)));
79
+ yield* _effect.Ref.update(mergedPRsRef, s => _effect.HashSet.filter(s, prNumber => _effect.HashSet.has(currentPRNumbers, prNumber)));
80
+ return events;
81
+ }).pipe(_effect.Effect.mapError(err => new AutoMergeError({
82
+ message: `AutoMerge evaluation failed: ${String(err)}`,
83
+ cause: err
84
+ })), _effect.Effect.annotateLogs("service", "AutoMerge"));
85
+ const evaluateSinglePR = pr => _effect.Effect.gen(function* () {
86
+ const events = [];
87
+ const repo = makeRepoFromFullName(pr.repo);
88
+ const now = Date.now();
89
+ // Update SHA timestamps
90
+ const headShaTimestamps = yield* _effect.Ref.get(headShaTimestampsRef);
91
+ const existingEntry = _effect.HashMap.get(headShaTimestamps, pr.number);
92
+ const currentSha = pr.headSha;
93
+ const shaChanged = _effect.Option.isNone(existingEntry) || existingEntry.value.sha !== currentSha;
94
+ if (shaChanged) {
95
+ yield* _effect.Ref.update(headShaTimestampsRef, m => _effect.HashMap.set(m, pr.number, {
96
+ sha: currentSha,
97
+ timestamp: now
98
+ }));
99
+ }
100
+ const shaEntry = yield* _effect.Ref.get(headShaTimestampsRef).pipe(_effect.Effect.map(m => _effect.HashMap.get(m, pr.number)));
101
+ if (_effect.Option.isNone(shaEntry)) {
102
+ return events;
103
+ }
104
+ const waitMs = config.autoMergeWaitMinutes * 60 * 1000;
105
+ const elapsed = now - shaEntry.value.timestamp;
106
+ // Get CI status
107
+ const ciStatus = yield* github.getCIStatus(repo, currentSha);
108
+ if (isCISuccess(ciStatus.state, ciStatus.checkRuns)) {
109
+ if (elapsed < waitMs) {
110
+ return events;
111
+ }
112
+ // Merge the PR
113
+ yield* github.mergePR(repo, pr.number);
114
+ yield* _effect.Ref.update(mergedPRsRef, s => _effect.HashSet.add(s, pr.number));
115
+ events.push(new _Events.PRAutoMerged({
116
+ pr
117
+ }));
118
+ }
119
+ return events;
120
+ });
121
+ const pollCycle = _effect.Effect.gen(function* () {
122
+ const allRepos = yield* github.listUserRepos().pipe(_effect.Effect.mapError(err => new AutoMergeError({
123
+ message: `Failed to list repos: ${String(err)}`,
124
+ cause: err
125
+ })));
126
+ const repos = allRepos.filter(repo => repo.full_name === lalphConfig.repoFullName);
127
+ const allPRs = yield* _effect.Effect.forEach(repos, repo => github.listOpenPRs(repo).pipe(_effect.Effect.mapError(err => new AutoMergeError({
128
+ message: `Failed to list PRs for ${repo.full_name}: ${String(err)}`,
129
+ cause: err
130
+ })))).pipe(_effect.Effect.map(_effect.Array.flatten));
131
+ return yield* evaluatePRs(allPRs);
132
+ });
133
+ const emptyBatch = [];
134
+ const safePollCycle = pollCycle.pipe(_effect.Effect.tapError(err => _effect.Effect.logError(`AutoMerge poll cycle failed: ${err.message}`)), _effect.Effect.orElseSucceed(() => emptyBatch));
135
+ const eventStream = _effect.Stream.repeatEffectWithSchedule(safePollCycle, _effect.Schedule.spaced(interval)).pipe(_effect.Stream.flatMap(batch => _effect.Stream.fromIterable(batch)));
136
+ return AutoMerge.of({
137
+ eventStream
138
+ });
139
+ }));
140
+ //# sourceMappingURL=AutoMerge.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AutoMerge.js","names":["_effect","require","_Events","_GitHubSchemas","_AppRuntimeConfig","_GitHubClient","_LalphConfig","AutoMergeError","Data","TaggedError","exports","AutoMerge","Context","Tag","makeRepoFromFullName","fullName","GitHubRepo","id","name","full_name","owner","login","html_url","isCISuccess","state","checkRuns","length","allChecksCompleted","Array","every","cr","conclusion","allChecksPassed","AutoMergeLive","Layer","effect","Effect","gen","config","AppRuntimeConfig","lalphConfig","LalphConfig","github","GitHubClient","interval","Duration","seconds","pollIntervalSeconds","headShaTimestampsRef","Ref","make","HashMap","empty","mergedPRsRef","HashSet","evaluatePRs","prs","autoMergeEnabled","events","currentPRNumbers","fromIterable","map","pr","number","mergedPRs","get","has","hasConflicts","prEvents","evaluateSinglePR","pipe","catchTag","err","logError","annotateLogs","message","event","push","update","m","filter","_","prNumber","s","mapError","String","cause","repo","now","Date","headShaTimestamps","existingEntry","currentSha","headSha","shaChanged","Option","isNone","value","sha","set","timestamp","shaEntry","waitMs","autoMergeWaitMinutes","elapsed","ciStatus","getCIStatus","mergePR","add","PRAutoMerged","pollCycle","allRepos","listUserRepos","repos","repoFullName","allPRs","forEach","listOpenPRs","flatten","emptyBatch","safePollCycle","tapError","orElseSucceed","eventStream","Stream","repeatEffectWithSchedule","Schedule","spaced","flatMap","batch","of"],"sources":["../../../src/services/AutoMerge.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}