@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":"MessengerAdapter.js","names":["Context","Data","Schema","MessengerAdapterError","TaggedError","IncomingMessage","Class","chatId","String","text","from","MessengerAdapter","Tag"],"sources":["../../../src/services/MessengerAdapter.ts"],"sourcesContent":[null],"mappings":"AAKA,SAASA,OAAO,EAAEC,IAAI,EAAEC,MAAM,QAAQ,QAAQ;AAE9C;;;;AAIA,OAAM,MAAOC,qBAAsB,sBAAQF,IAAI,CAACG,WAAW,CAAC,uBAAuB,CAGjF;AAEF;;;;AAIA,OAAM,MAAOC,eAAgB,sBAAQH,MAAM,CAACI,KAAK,CAAkB,iBAAiB,CAAC,CAAC;EACpFC,MAAM,EAAEL,MAAM,CAACM,MAAM;EACrBC,IAAI,EAAEP,MAAM,CAACM,MAAM;EACnBE,IAAI,EAAER,MAAM,CAACM;CACd,CAAC;AAqBF;;;;AAIA,OAAM,MAAOG,gBAAiB,sBAAQX,OAAO,CAACY,GAAG,CAAC,kBAAkB,CAAC,EAGlE","ignoreList":[]}
@@ -0,0 +1,341 @@
1
+ /**
2
+ * Octokit SDK client service
3
+ * @since 1.0.0
4
+ */
5
+ import { Context, Data, Effect, Layer } from "effect";
6
+ import { Octokit } from "octokit";
7
+ import { LalphConfig } from "./LalphConfig.js";
8
+ /**
9
+ * @since 1.0.0
10
+ * @category errors
11
+ */
12
+ export class OctokitClientError extends /*#__PURE__*/Data.TaggedError("OctokitClientError") {}
13
+ /**
14
+ * @since 1.0.0
15
+ * @category context
16
+ */
17
+ export class OctokitClient extends /*#__PURE__*/Context.Tag("OctokitClient")() {}
18
+ /**
19
+ * @since 1.0.0
20
+ * @category layers
21
+ */
22
+ export const OctokitClientLive = /*#__PURE__*/Layer.effect(OctokitClient, /*#__PURE__*/Effect.gen(function* () {
23
+ const watcher = yield* LalphConfig;
24
+ const initialToken = yield* watcher.githubToken.pipe(Effect.mapError(err => new OctokitClientError({
25
+ message: err.message,
26
+ cause: err
27
+ })));
28
+ let currentToken = initialToken;
29
+ let octokit = new Octokit({
30
+ auth: currentToken
31
+ });
32
+ const getClient = Effect.gen(function* () {
33
+ const latestToken = yield* watcher.githubToken.pipe(Effect.mapError(err => new OctokitClientError({
34
+ message: err.message,
35
+ cause: err
36
+ })));
37
+ if (latestToken !== currentToken) {
38
+ currentToken = latestToken;
39
+ octokit = new Octokit({
40
+ auth: latestToken
41
+ });
42
+ }
43
+ return octokit;
44
+ });
45
+ const getAuthenticatedUser = () => Effect.gen(function* () {
46
+ const client = yield* getClient;
47
+ return yield* Effect.tryPromise({
48
+ try: () => client.rest.users.getAuthenticated(),
49
+ catch: err => new OctokitClientError({
50
+ message: `Failed to get authenticated user: ${String(err)}`,
51
+ cause: err
52
+ })
53
+ }).pipe(Effect.map(response => response.data));
54
+ });
55
+ const listUserRepos = params => Effect.gen(function* () {
56
+ const client = yield* getClient;
57
+ return yield* Effect.tryPromise({
58
+ try: () => client.rest.repos.listForAuthenticatedUser({
59
+ per_page: params.perPage,
60
+ type: params.type
61
+ }),
62
+ catch: err => new OctokitClientError({
63
+ message: `Failed to list user repos: ${String(err)}`,
64
+ cause: err
65
+ })
66
+ }).pipe(Effect.map(response => response.data.map(r => ({
67
+ id: r.id,
68
+ name: r.name,
69
+ fullName: r.full_name,
70
+ owner: {
71
+ login: r.owner.login
72
+ },
73
+ htmlUrl: r.html_url
74
+ }))));
75
+ });
76
+ const listPulls = params => Effect.gen(function* () {
77
+ const client = yield* getClient;
78
+ return yield* Effect.tryPromise({
79
+ try: () => client.rest.pulls.list({
80
+ owner: params.owner,
81
+ repo: params.repo,
82
+ state: params.state,
83
+ per_page: params.perPage
84
+ }),
85
+ catch: err => new OctokitClientError({
86
+ message: `Failed to list pulls: ${String(err)}`,
87
+ cause: err
88
+ })
89
+ }).pipe(Effect.map(response => response.data.map(p => ({
90
+ id: p.id,
91
+ number: p.number,
92
+ title: p.title,
93
+ state: p.state,
94
+ htmlUrl: p.html_url,
95
+ head: {
96
+ ref: p.head.ref,
97
+ sha: p.head.sha
98
+ }
99
+ }))));
100
+ });
101
+ const getPull = params => Effect.gen(function* () {
102
+ const client = yield* getClient;
103
+ return yield* Effect.tryPromise({
104
+ try: () => client.rest.pulls.get({
105
+ owner: params.owner,
106
+ repo: params.repo,
107
+ pull_number: params.pullNumber
108
+ }),
109
+ catch: err => new OctokitClientError({
110
+ message: `Failed to get pull: ${String(err)}`,
111
+ cause: err
112
+ })
113
+ }).pipe(Effect.map(response => ({
114
+ id: response.data.id,
115
+ number: response.data.number,
116
+ title: response.data.title,
117
+ state: response.data.state,
118
+ htmlUrl: response.data.html_url,
119
+ head: {
120
+ ref: response.data.head.ref,
121
+ sha: response.data.head.sha
122
+ },
123
+ mergeable: response.data.mergeable
124
+ })));
125
+ });
126
+ const createIssueComment = params => Effect.gen(function* () {
127
+ const client = yield* getClient;
128
+ return yield* Effect.tryPromise({
129
+ try: () => client.rest.issues.createComment({
130
+ owner: params.owner,
131
+ repo: params.repo,
132
+ issue_number: params.issueNumber,
133
+ body: params.body
134
+ }),
135
+ catch: err => new OctokitClientError({
136
+ message: `Failed to create comment: ${String(err)}`,
137
+ cause: err
138
+ })
139
+ }).pipe(Effect.asVoid);
140
+ });
141
+ const listIssueComments = params => Effect.gen(function* () {
142
+ const client = yield* getClient;
143
+ return yield* Effect.tryPromise({
144
+ try: () => client.rest.issues.listComments({
145
+ owner: params.owner,
146
+ repo: params.repo,
147
+ issue_number: params.issueNumber,
148
+ per_page: params.perPage
149
+ }),
150
+ catch: err => new OctokitClientError({
151
+ message: `Failed to list comments: ${String(err)}`,
152
+ cause: err
153
+ })
154
+ }).pipe(Effect.map(response => response.data.map(c => ({
155
+ id: c.id,
156
+ body: c.body ?? null,
157
+ user: c.user ? {
158
+ login: c.user.login
159
+ } : null,
160
+ createdAt: c.created_at,
161
+ htmlUrl: c.html_url
162
+ }))));
163
+ });
164
+ const listUserIssues = params => Effect.gen(function* () {
165
+ const client = yield* getClient;
166
+ return yield* Effect.tryPromise({
167
+ try: () => client.rest.issues.listForAuthenticatedUser({
168
+ filter: "all",
169
+ state: params.state,
170
+ sort: params.sort,
171
+ since: params.since
172
+ }),
173
+ catch: err => new OctokitClientError({
174
+ message: `Failed to list user issues: ${String(err)}`,
175
+ cause: err
176
+ })
177
+ }).pipe(Effect.map(response => response.data.filter(i => !i.pull_request).map(i => ({
178
+ number: i.number,
179
+ title: i.title,
180
+ state: i.state,
181
+ htmlUrl: i.html_url,
182
+ createdAt: i.created_at,
183
+ updatedAt: i.updated_at,
184
+ repositoryUrl: i.repository_url
185
+ }))));
186
+ });
187
+ const getIssue = params => Effect.gen(function* () {
188
+ const client = yield* getClient;
189
+ return yield* Effect.tryPromise({
190
+ try: () => client.rest.issues.get({
191
+ owner: params.owner,
192
+ repo: params.repo,
193
+ issue_number: params.issueNumber
194
+ }),
195
+ catch: err => new OctokitClientError({
196
+ message: `Failed to get issue: ${String(err)}`,
197
+ cause: err
198
+ })
199
+ }).pipe(Effect.map(response => ({
200
+ number: response.data.number,
201
+ title: response.data.title,
202
+ state: response.data.state,
203
+ htmlUrl: response.data.html_url,
204
+ createdAt: response.data.created_at,
205
+ updatedAt: response.data.updated_at
206
+ })));
207
+ });
208
+ const addIssueLabels = params => Effect.gen(function* () {
209
+ const client = yield* getClient;
210
+ return yield* Effect.tryPromise({
211
+ try: () => client.rest.issues.addLabels({
212
+ owner: params.owner,
213
+ repo: params.repo,
214
+ issue_number: params.issueNumber,
215
+ labels: [...params.labels]
216
+ }),
217
+ catch: err => new OctokitClientError({
218
+ message: `Failed to add issue labels: ${String(err)}`,
219
+ cause: err
220
+ })
221
+ }).pipe(Effect.asVoid);
222
+ });
223
+ const listPullReviewComments = params => Effect.gen(function* () {
224
+ const client = yield* getClient;
225
+ return yield* Effect.tryPromise({
226
+ try: () => client.rest.pulls.listReviewComments({
227
+ owner: params.owner,
228
+ repo: params.repo,
229
+ pull_number: params.pullNumber,
230
+ per_page: params.perPage
231
+ }),
232
+ catch: err => new OctokitClientError({
233
+ message: `Failed to list pull review comments: ${String(err)}`,
234
+ cause: err
235
+ })
236
+ }).pipe(Effect.map(response => response.data.map(c => ({
237
+ id: c.id,
238
+ body: c.body ?? null,
239
+ user: c.user ? {
240
+ login: c.user.login
241
+ } : null,
242
+ createdAt: c.created_at,
243
+ htmlUrl: c.html_url
244
+ }))));
245
+ });
246
+ const getCombinedStatusForRef = params => Effect.gen(function* () {
247
+ const client = yield* getClient;
248
+ return yield* Effect.tryPromise({
249
+ try: () => client.rest.repos.getCombinedStatusForRef({
250
+ owner: params.owner,
251
+ repo: params.repo,
252
+ ref: params.ref
253
+ }),
254
+ catch: err => new OctokitClientError({
255
+ message: `Failed to get combined status for ref: ${String(err)}`,
256
+ cause: err
257
+ })
258
+ }).pipe(Effect.map(response => ({
259
+ state: response.data.state,
260
+ statuses: response.data.statuses.map(s => ({
261
+ state: s.state,
262
+ context: s.context
263
+ }))
264
+ })));
265
+ });
266
+ const listCheckRunsForRef = params => Effect.gen(function* () {
267
+ const client = yield* getClient;
268
+ return yield* Effect.tryPromise({
269
+ try: () => client.rest.checks.listForRef({
270
+ owner: params.owner,
271
+ repo: params.repo,
272
+ ref: params.ref
273
+ }),
274
+ catch: err => new OctokitClientError({
275
+ message: `Failed to list check runs for ref: ${String(err)}`,
276
+ cause: err
277
+ })
278
+ }).pipe(Effect.map(response => response.data.check_runs.map(cr => ({
279
+ id: cr.id,
280
+ name: cr.name,
281
+ status: cr.status,
282
+ conclusion: cr.conclusion ?? null,
283
+ htmlUrl: cr.html_url ?? ""
284
+ }))));
285
+ });
286
+ const mergePull = params => Effect.gen(function* () {
287
+ const client = yield* getClient;
288
+ return yield* Effect.tryPromise({
289
+ try: () => client.rest.pulls.merge({
290
+ owner: params.owner,
291
+ repo: params.repo,
292
+ pull_number: params.pullNumber
293
+ }),
294
+ catch: err => new OctokitClientError({
295
+ message: `Failed to merge pull request: ${String(err)}`,
296
+ cause: err
297
+ })
298
+ }).pipe(Effect.map(response => ({
299
+ sha: response.data.sha,
300
+ merged: response.data.merged,
301
+ message: response.data.message
302
+ })));
303
+ });
304
+ const createGist = params => Effect.gen(function* () {
305
+ const client = yield* getClient;
306
+ return yield* Effect.tryPromise({
307
+ try: () => client.rest.gists.create({
308
+ description: params.description,
309
+ public: params.isPublic,
310
+ files: params.files
311
+ }),
312
+ catch: err => new OctokitClientError({
313
+ message: `Failed to create gist: ${String(err)}`,
314
+ cause: err
315
+ })
316
+ }).pipe(Effect.map(response => ({
317
+ id: response.data.id ?? "",
318
+ htmlUrl: response.data.html_url ?? "",
319
+ files: Object.fromEntries(Object.entries(response.data.files ?? {}).map(([name, file]) => [name, {
320
+ rawUrl: file?.raw_url ?? ""
321
+ }]))
322
+ })));
323
+ });
324
+ return OctokitClient.of({
325
+ getAuthenticatedUser,
326
+ listUserRepos,
327
+ listPulls,
328
+ getPull,
329
+ createIssueComment,
330
+ listIssueComments,
331
+ listUserIssues,
332
+ getIssue,
333
+ addIssueLabels,
334
+ listPullReviewComments,
335
+ getCombinedStatusForRef,
336
+ listCheckRunsForRef,
337
+ mergePull,
338
+ createGist
339
+ });
340
+ }));
341
+ //# sourceMappingURL=OctokitClient.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OctokitClient.js","names":["Context","Data","Effect","Layer","Octokit","LalphConfig","OctokitClientError","TaggedError","OctokitClient","Tag","OctokitClientLive","effect","gen","watcher","initialToken","githubToken","pipe","mapError","err","message","cause","currentToken","octokit","auth","getClient","latestToken","getAuthenticatedUser","client","tryPromise","try","rest","users","getAuthenticated","catch","String","map","response","data","listUserRepos","params","repos","listForAuthenticatedUser","per_page","perPage","type","r","id","name","fullName","full_name","owner","login","htmlUrl","html_url","listPulls","pulls","list","repo","state","p","number","title","head","ref","sha","getPull","get","pull_number","pullNumber","mergeable","createIssueComment","issues","createComment","issue_number","issueNumber","body","asVoid","listIssueComments","listComments","c","user","createdAt","created_at","listUserIssues","filter","sort","since","i","pull_request","updatedAt","updated_at","repositoryUrl","repository_url","getIssue","addIssueLabels","addLabels","labels","listPullReviewComments","listReviewComments","getCombinedStatusForRef","statuses","s","context","listCheckRunsForRef","checks","listForRef","check_runs","cr","status","conclusion","mergePull","merge","merged","createGist","gists","create","description","public","isPublic","files","Object","fromEntries","entries","file","rawUrl","raw_url","of"],"sources":["../../../src/services/OctokitClient.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,109 @@
1
+ /**
2
+ * Service for uploading plan overview files to a hosting backend.
3
+ * Two implementations: GitHub Gist and Telegraph (default).
4
+ * @since 1.0.0
5
+ */
6
+ import { HttpClient, HttpClientRequest } from "@effect/platform";
7
+ import { Context, Data, Effect, Layer, Schema } from "effect";
8
+ import * as Crypto from "node:crypto";
9
+ import { generateSpecHtml } from "../lib/SpecHtmlGenerator.js";
10
+ import { specFilesToTelegraphNodes } from "../lib/TelegraphMarkdown.js";
11
+ import { OctokitClient } from "./OctokitClient.js";
12
+ /**
13
+ * @since 1.0.0
14
+ * @category errors
15
+ */
16
+ export class PlanOverviewUploaderError extends /*#__PURE__*/Data.TaggedError("PlanOverviewUploaderError") {}
17
+ /**
18
+ * @since 1.0.0
19
+ * @category context
20
+ */
21
+ export class PlanOverviewUploader extends /*#__PURE__*/Context.Tag("PlanOverviewUploader")() {}
22
+ /**
23
+ * GitHub Gist implementation — wraps existing OctokitClient.createGist.
24
+ * @since 1.0.0
25
+ * @category layers
26
+ */
27
+ export const GistPlanOverviewUploaderLive = /*#__PURE__*/Layer.effect(PlanOverviewUploader, /*#__PURE__*/Effect.gen(function* () {
28
+ const octokitClient = yield* OctokitClient;
29
+ return PlanOverviewUploader.of({
30
+ upload: ({
31
+ description,
32
+ files
33
+ }) => Effect.gen(function* () {
34
+ const html = generateSpecHtml(files);
35
+ const gist = yield* octokitClient.createGist({
36
+ description,
37
+ files: {
38
+ "spec.html": {
39
+ content: html
40
+ }
41
+ },
42
+ isPublic: false
43
+ }).pipe(Effect.mapError(err => new PlanOverviewUploaderError({
44
+ message: `Gist upload failed: ${err.message}`,
45
+ cause: err
46
+ })));
47
+ const rawUrl = gist.files["spec.html"]?.rawUrl ?? gist.htmlUrl;
48
+ const viewUrl = `https://htmlpreview.github.io/?${rawUrl}`;
49
+ return {
50
+ url: viewUrl
51
+ };
52
+ })
53
+ });
54
+ }));
55
+ const TelegraphSuccess = /*#__PURE__*/Schema.Struct({
56
+ ok: /*#__PURE__*/Schema.Literal(true),
57
+ result: /*#__PURE__*/Schema.Record({
58
+ key: Schema.String,
59
+ value: Schema.Unknown
60
+ })
61
+ });
62
+ const TelegraphError = /*#__PURE__*/Schema.Struct({
63
+ ok: /*#__PURE__*/Schema.Literal(false),
64
+ error: Schema.String
65
+ });
66
+ const TelegraphResponse = /*#__PURE__*/Schema.Union(TelegraphSuccess, TelegraphError);
67
+ /**
68
+ * Telegraph implementation — creates anonymous account, uploads pages via Telegraph API.
69
+ * No account or tokens required. Requires HttpClient.
70
+ * @since 1.0.0
71
+ * @category layers
72
+ */
73
+ export const TelegraphPlanOverviewUploaderLive = /*#__PURE__*/Layer.effect(PlanOverviewUploader, /*#__PURE__*/Effect.gen(function* () {
74
+ const client = yield* HttpClient.HttpClient;
75
+ const telegraphPost = (url, body, label) => {
76
+ const req = HttpClientRequest.post(url).pipe(HttpClientRequest.bodyUnsafeJson(body));
77
+ return client.execute(req).pipe(Effect.flatMap(res => res.json), Effect.scoped, Effect.flatMap(Schema.decodeUnknown(TelegraphResponse)), Effect.flatMap(parsed => parsed.ok ? Effect.succeed(parsed.result) : Effect.fail(new PlanOverviewUploaderError({
78
+ message: `Telegraph ${label} failed: ${parsed.error}`,
79
+ cause: null
80
+ }))), Effect.mapError(err => err instanceof PlanOverviewUploaderError ? err : new PlanOverviewUploaderError({
81
+ message: `Telegraph ${label} request failed: ${String(err)}`,
82
+ cause: err
83
+ })));
84
+ };
85
+ const accountResult = yield* telegraphPost("https://api.telegra.ph/createAccount", {
86
+ short_name: "lalph"
87
+ }, "createAccount");
88
+ const accessToken = String(accountResult.access_token);
89
+ return PlanOverviewUploader.of({
90
+ upload: ({
91
+ description,
92
+ files
93
+ }) => Effect.gen(function* () {
94
+ const content = specFilesToTelegraphNodes(files);
95
+ const title = Crypto.randomUUID();
96
+ const pageResult = yield* telegraphPost("https://api.telegra.ph/createPage", {
97
+ access_token: accessToken,
98
+ title,
99
+ author_name: "lalph",
100
+ content,
101
+ return_content: false
102
+ }, "createPage");
103
+ return {
104
+ url: String(pageResult.url)
105
+ };
106
+ }).pipe(Effect.annotateLogs("description", description))
107
+ });
108
+ }));
109
+ //# sourceMappingURL=PlanOverviewUploader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlanOverviewUploader.js","names":["HttpClient","HttpClientRequest","Context","Data","Effect","Layer","Schema","Crypto","generateSpecHtml","specFilesToTelegraphNodes","OctokitClient","PlanOverviewUploaderError","TaggedError","PlanOverviewUploader","Tag","GistPlanOverviewUploaderLive","effect","gen","octokitClient","of","upload","description","files","html","gist","createGist","content","isPublic","pipe","mapError","err","message","cause","rawUrl","htmlUrl","viewUrl","url","TelegraphSuccess","Struct","ok","Literal","result","Record","key","String","value","Unknown","TelegraphError","error","TelegraphResponse","Union","TelegraphPlanOverviewUploaderLive","client","telegraphPost","body","label","req","post","bodyUnsafeJson","execute","flatMap","res","json","scoped","decodeUnknown","parsed","succeed","fail","accountResult","short_name","accessToken","access_token","title","randomUUID","pageResult","author_name","return_content","annotateLogs"],"sources":["../../../src/services/PlanOverviewUploader.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Dynamic layer map for selecting PlanOverviewUploader implementation at runtime
3
+ * @since 1.0.0
4
+ */
5
+ import { LayerMap } from "effect";
6
+ import { GistPlanOverviewUploaderLive, TelegraphPlanOverviewUploaderLive } from "./PlanOverviewUploader.js";
7
+ /**
8
+ * @since 1.0.0
9
+ * @category layer-map
10
+ */
11
+ export class PlanOverviewUploaderMap extends /*#__PURE__*/LayerMap.Service()("PlanOverviewUploaderMap", {
12
+ layers: {
13
+ gist: GistPlanOverviewUploaderLive,
14
+ telegraph: TelegraphPlanOverviewUploaderLive
15
+ }
16
+ }) {}
17
+ //# sourceMappingURL=PlanOverviewUploaderMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlanOverviewUploaderMap.js","names":["LayerMap","GistPlanOverviewUploaderLive","TelegraphPlanOverviewUploaderLive","PlanOverviewUploaderMap","Service","layers","gist","telegraph"],"sources":["../../../src/services/PlanOverviewUploaderMap.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;AAIA,SAASA,QAAQ,QAAQ,QAAQ;AACjC,SAASC,4BAA4B,EAAEC,iCAAiC,QAAQ,2BAA2B;AAE3G;;;;AAIA,OAAM,MAAOC,uBAAwB,sBAAQH,QAAQ,CAACI,OAAO,EAA2B,CAAC,yBAAyB,EAAE;EAClHC,MAAM,EAAE;IACNC,IAAI,EAAEL,4BAA4B;IAClCM,SAAS,EAAEL;;CAEd,CAAC","ignoreList":[]}