@vicoa/cli 1.3.11-linux-x64 → 1.3.11-win32-x64

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 (304) hide show
  1. package/bin/_internal/81d243bd2c585b0f4821__mypyc.cp312-win_amd64.pyd +0 -0
  2. package/bin/_internal/VCRUNTIME140.dll +0 -0
  3. package/bin/_internal/VCRUNTIME140_1.dll +0 -0
  4. package/bin/_internal/_asyncio.pyd +0 -0
  5. package/bin/_internal/_bz2.pyd +0 -0
  6. package/bin/_internal/_cffi_backend.cp312-win_amd64.pyd +0 -0
  7. package/bin/_internal/_ctypes.pyd +0 -0
  8. package/bin/_internal/_decimal.pyd +0 -0
  9. package/bin/_internal/_hashlib.pyd +0 -0
  10. package/bin/_internal/_lzma.pyd +0 -0
  11. package/bin/_internal/_multiprocessing.pyd +0 -0
  12. package/bin/_internal/_overlapped.pyd +0 -0
  13. package/bin/_internal/_queue.pyd +0 -0
  14. package/bin/_internal/_socket.pyd +0 -0
  15. package/bin/_internal/_ssl.pyd +0 -0
  16. package/bin/_internal/_uuid.pyd +0 -0
  17. package/bin/_internal/_wmi.pyd +0 -0
  18. package/bin/_internal/_zoneinfo.pyd +0 -0
  19. package/bin/_internal/aiohttp/_http_parser.cp312-win_amd64.pyd +0 -0
  20. package/bin/_internal/aiohttp/_http_writer.cp312-win_amd64.pyd +0 -0
  21. package/bin/_internal/aiohttp/_websocket/mask.cp312-win_amd64.pyd +0 -0
  22. package/bin/_internal/aiohttp/_websocket/reader_c.cp312-win_amd64.pyd +0 -0
  23. package/bin/_internal/api-ms-win-core-console-l1-1-0.dll +0 -0
  24. package/bin/_internal/api-ms-win-core-datetime-l1-1-0.dll +0 -0
  25. package/bin/_internal/api-ms-win-core-debug-l1-1-0.dll +0 -0
  26. package/bin/_internal/api-ms-win-core-errorhandling-l1-1-0.dll +0 -0
  27. package/bin/_internal/api-ms-win-core-fibers-l1-1-0.dll +0 -0
  28. package/bin/_internal/api-ms-win-core-fibers-l1-1-1.dll +0 -0
  29. package/bin/_internal/api-ms-win-core-file-l1-1-0.dll +0 -0
  30. package/bin/_internal/api-ms-win-core-file-l1-2-0.dll +0 -0
  31. package/bin/_internal/api-ms-win-core-file-l2-1-0.dll +0 -0
  32. package/bin/_internal/api-ms-win-core-handle-l1-1-0.dll +0 -0
  33. package/bin/_internal/api-ms-win-core-heap-l1-1-0.dll +0 -0
  34. package/bin/_internal/api-ms-win-core-interlocked-l1-1-0.dll +0 -0
  35. package/bin/_internal/api-ms-win-core-kernel32-legacy-l1-1-1.dll +0 -0
  36. package/bin/_internal/api-ms-win-core-libraryloader-l1-1-0.dll +0 -0
  37. package/bin/_internal/api-ms-win-core-localization-l1-2-0.dll +0 -0
  38. package/bin/_internal/api-ms-win-core-memory-l1-1-0.dll +0 -0
  39. package/bin/_internal/api-ms-win-core-namedpipe-l1-1-0.dll +0 -0
  40. package/bin/_internal/api-ms-win-core-processenvironment-l1-1-0.dll +0 -0
  41. package/bin/_internal/api-ms-win-core-processthreads-l1-1-0.dll +0 -0
  42. package/bin/_internal/api-ms-win-core-processthreads-l1-1-1.dll +0 -0
  43. package/bin/_internal/api-ms-win-core-profile-l1-1-0.dll +0 -0
  44. package/bin/_internal/api-ms-win-core-rtlsupport-l1-1-0.dll +0 -0
  45. package/bin/_internal/api-ms-win-core-string-l1-1-0.dll +0 -0
  46. package/bin/_internal/api-ms-win-core-synch-l1-1-0.dll +0 -0
  47. package/bin/_internal/api-ms-win-core-synch-l1-2-0.dll +0 -0
  48. package/bin/_internal/api-ms-win-core-sysinfo-l1-1-0.dll +0 -0
  49. package/bin/_internal/api-ms-win-core-sysinfo-l1-2-0.dll +0 -0
  50. package/bin/_internal/api-ms-win-core-timezone-l1-1-0.dll +0 -0
  51. package/bin/_internal/api-ms-win-core-util-l1-1-0.dll +0 -0
  52. package/bin/_internal/api-ms-win-crt-conio-l1-1-0.dll +0 -0
  53. package/bin/_internal/api-ms-win-crt-convert-l1-1-0.dll +0 -0
  54. package/bin/_internal/api-ms-win-crt-environment-l1-1-0.dll +0 -0
  55. package/bin/_internal/api-ms-win-crt-filesystem-l1-1-0.dll +0 -0
  56. package/bin/_internal/api-ms-win-crt-heap-l1-1-0.dll +0 -0
  57. package/bin/_internal/api-ms-win-crt-locale-l1-1-0.dll +0 -0
  58. package/bin/_internal/api-ms-win-crt-math-l1-1-0.dll +0 -0
  59. package/bin/_internal/api-ms-win-crt-process-l1-1-0.dll +0 -0
  60. package/bin/_internal/api-ms-win-crt-runtime-l1-1-0.dll +0 -0
  61. package/bin/_internal/api-ms-win-crt-stdio-l1-1-0.dll +0 -0
  62. package/bin/_internal/api-ms-win-crt-string-l1-1-0.dll +0 -0
  63. package/bin/_internal/api-ms-win-crt-time-l1-1-0.dll +0 -0
  64. package/bin/_internal/api-ms-win-crt-utility-l1-1-0.dll +0 -0
  65. package/bin/_internal/base_library.zip +0 -0
  66. package/bin/_internal/charset_normalizer/cd.cp312-win_amd64.pyd +0 -0
  67. package/bin/_internal/charset_normalizer/md.cp312-win_amd64.pyd +0 -0
  68. package/bin/_internal/cryptography/hazmat/bindings/_rust.pyd +0 -0
  69. package/bin/_internal/cryptography-46.0.7.dist-info/RECORD +2 -2
  70. package/bin/_internal/cryptography-46.0.7.dist-info/WHEEL +1 -2
  71. package/bin/_internal/email_validator-2.3.0.dist-info/RECORD +1 -1
  72. package/bin/_internal/frozenlist/_frozenlist.cp312-win_amd64.pyd +0 -0
  73. package/bin/_internal/integrations/cli_wrappers/IMPORTANT_USE_CASES.md +32 -32
  74. package/bin/_internal/integrations/github/claude-code-action/CLAUDE.md +136 -136
  75. package/bin/_internal/integrations/github/claude-code-action/CODE_OF_CONDUCT.md +128 -128
  76. package/bin/_internal/integrations/github/claude-code-action/CONTRIBUTING.md +116 -116
  77. package/bin/_internal/integrations/github/claude-code-action/LICENSE +20 -20
  78. package/bin/_internal/integrations/github/claude-code-action/README.md +52 -52
  79. package/bin/_internal/integrations/github/claude-code-action/ROADMAP.md +20 -20
  80. package/bin/_internal/integrations/github/claude-code-action/SECURITY.md +15 -15
  81. package/bin/_internal/integrations/github/claude-code-action/action.yml +294 -294
  82. package/bin/_internal/integrations/github/claude-code-action/base-action/CLAUDE.md +60 -60
  83. package/bin/_internal/integrations/github/claude-code-action/base-action/CODE_OF_CONDUCT.md +128 -128
  84. package/bin/_internal/integrations/github/claude-code-action/base-action/CONTRIBUTING.md +136 -136
  85. package/bin/_internal/integrations/github/claude-code-action/base-action/LICENSE +21 -21
  86. package/bin/_internal/integrations/github/claude-code-action/base-action/MIRROR_DISCLAIMER.md +11 -11
  87. package/bin/_internal/integrations/github/claude-code-action/base-action/README.md +521 -521
  88. package/bin/_internal/integrations/github/claude-code-action/base-action/action.yml +149 -149
  89. package/bin/_internal/integrations/github/claude-code-action/base-action/bun.lock +54 -54
  90. package/bin/_internal/integrations/github/claude-code-action/base-action/examples/issue-triage.yml +108 -108
  91. package/bin/_internal/integrations/github/claude-code-action/base-action/package.json +23 -23
  92. package/bin/_internal/integrations/github/claude-code-action/base-action/scripts/install-hooks.sh +12 -12
  93. package/bin/_internal/integrations/github/claude-code-action/base-action/scripts/pre-push +45 -45
  94. package/bin/_internal/integrations/github/claude-code-action/base-action/src/index.ts +82 -82
  95. package/bin/_internal/integrations/github/claude-code-action/base-action/src/prepare-prompt.ts +82 -82
  96. package/bin/_internal/integrations/github/claude-code-action/base-action/src/run-claude.ts +257 -257
  97. package/bin/_internal/integrations/github/claude-code-action/base-action/src/run-vicoa.ts +300 -300
  98. package/bin/_internal/integrations/github/claude-code-action/base-action/src/setup-claude-code-settings.ts +68 -68
  99. package/bin/_internal/integrations/github/claude-code-action/base-action/src/validate-env.ts +54 -54
  100. package/bin/_internal/integrations/github/claude-code-action/base-action/test-local.sh +11 -11
  101. package/bin/_internal/integrations/github/claude-code-action/base-action/test-mcp-local.sh +17 -17
  102. package/bin/_internal/integrations/github/claude-code-action/base-action/tsconfig.json +30 -30
  103. package/bin/_internal/integrations/github/claude-code-action/bun.lock +384 -384
  104. package/bin/_internal/integrations/github/claude-code-action/docs/capabilities-and-limitations.md +33 -33
  105. package/bin/_internal/integrations/github/claude-code-action/docs/cloud-providers.md +99 -99
  106. package/bin/_internal/integrations/github/claude-code-action/docs/configuration.md +345 -345
  107. package/bin/_internal/integrations/github/claude-code-action/docs/custom-automations.md +113 -113
  108. package/bin/_internal/integrations/github/claude-code-action/docs/experimental.md +128 -128
  109. package/bin/_internal/integrations/github/claude-code-action/docs/faq.md +205 -205
  110. package/bin/_internal/integrations/github/claude-code-action/docs/migration-guide.md +261 -261
  111. package/bin/_internal/integrations/github/claude-code-action/docs/security.md +38 -38
  112. package/bin/_internal/integrations/github/claude-code-action/docs/setup.md +146 -146
  113. package/bin/_internal/integrations/github/claude-code-action/docs/usage.md +213 -213
  114. package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci/auto-fix-ci.yml +97 -97
  115. package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci/commands/fix-ci.md +127 -127
  116. package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci-signed/auto-fix-ci-signed.yml +97 -97
  117. package/bin/_internal/integrations/github/claude-code-action/examples/auto-fix-ci-signed/commands/fix-ci-signed.md +148 -148
  118. package/bin/_internal/integrations/github/claude-code-action/examples/issue-deduplication.yml +63 -63
  119. package/bin/_internal/integrations/github/claude-code-action/examples/issue-triage.yml +75 -75
  120. package/bin/_internal/integrations/github/claude-code-action/examples/vicoa.yml +74 -74
  121. package/bin/_internal/integrations/github/claude-code-action/package.json +31 -31
  122. package/bin/_internal/integrations/github/claude-code-action/scripts/install-hooks.sh +12 -12
  123. package/bin/_internal/integrations/github/claude-code-action/scripts/pre-commit +45 -45
  124. package/bin/_internal/integrations/github/claude-code-action/scripts/setup-network-restrictions.sh +122 -122
  125. package/bin/_internal/integrations/github/claude-code-action/src/create-prompt/index.ts +799 -799
  126. package/bin/_internal/integrations/github/claude-code-action/src/create-prompt/types.ts +102 -102
  127. package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/collect-inputs.ts +58 -58
  128. package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/format-turns.ts +465 -465
  129. package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/prepare.ts +98 -98
  130. package/bin/_internal/integrations/github/claude-code-action/src/entrypoints/update-comment-link.ts +245 -245
  131. package/bin/_internal/integrations/github/claude-code-action/src/github/api/client.ts +23 -23
  132. package/bin/_internal/integrations/github/claude-code-action/src/github/api/config.ts +4 -4
  133. package/bin/_internal/integrations/github/claude-code-action/src/github/api/queries/github.ts +117 -117
  134. package/bin/_internal/integrations/github/claude-code-action/src/github/context.ts +277 -277
  135. package/bin/_internal/integrations/github/claude-code-action/src/github/data/fetcher.ts +233 -233
  136. package/bin/_internal/integrations/github/claude-code-action/src/github/data/formatter.ts +144 -144
  137. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/branch-cleanup.ts +132 -132
  138. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/branch.ts +163 -163
  139. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comment-logic.ts +203 -203
  140. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/common.ts +33 -33
  141. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/create-initial.ts +111 -111
  142. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/update-claude-comment.ts +70 -70
  143. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/comments/update-with-branch.ts +57 -57
  144. package/bin/_internal/integrations/github/claude-code-action/src/github/operations/git-config.ts +62 -62
  145. package/bin/_internal/integrations/github/claude-code-action/src/github/token.ts +108 -108
  146. package/bin/_internal/integrations/github/claude-code-action/src/github/types.ts +98 -98
  147. package/bin/_internal/integrations/github/claude-code-action/src/github/utils/image-downloader.ts +246 -246
  148. package/bin/_internal/integrations/github/claude-code-action/src/github/utils/sanitizer.ts +100 -100
  149. package/bin/_internal/integrations/github/claude-code-action/src/github/validation/actor.ts +64 -64
  150. package/bin/_internal/integrations/github/claude-code-action/src/github/validation/permissions.ts +47 -47
  151. package/bin/_internal/integrations/github/claude-code-action/src/github/validation/trigger.ts +148 -148
  152. package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-actions-server.ts +279 -279
  153. package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-comment-server.ts +101 -101
  154. package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-file-ops-server.ts +677 -677
  155. package/bin/_internal/integrations/github/claude-code-action/src/mcp/github-inline-comment-server.ts +184 -184
  156. package/bin/_internal/integrations/github/claude-code-action/src/mcp/install-mcp-server.ts +201 -201
  157. package/bin/_internal/integrations/github/claude-code-action/src/modes/agent/index.ts +152 -152
  158. package/bin/_internal/integrations/github/claude-code-action/src/modes/agent/parse-tools.ts +22 -22
  159. package/bin/_internal/integrations/github/claude-code-action/src/modes/detector.ts +66 -66
  160. package/bin/_internal/integrations/github/claude-code-action/src/modes/registry.ts +54 -54
  161. package/bin/_internal/integrations/github/claude-code-action/src/modes/tag/index.ts +187 -187
  162. package/bin/_internal/integrations/github/claude-code-action/src/modes/types.ts +100 -100
  163. package/bin/_internal/integrations/github/claude-code-action/src/prepare/index.ts +20 -20
  164. package/bin/_internal/integrations/github/claude-code-action/src/prepare/types.ts +20 -20
  165. package/bin/_internal/integrations/github/claude-code-action/src/utils/retry.ts +40 -40
  166. package/bin/_internal/integrations/github/claude-code-action/tsconfig.json +30 -30
  167. package/bin/_internal/integrations/n8n/LICENSE +20 -20
  168. package/bin/_internal/integrations/n8n/README.md +297 -297
  169. package/bin/_internal/integrations/n8n/package-lock.json +2989 -2989
  170. package/bin/_internal/integrations/n8n/package.json +68 -68
  171. package/bin/_internal/integrations/n8n/src/credentials/OmnaraApi.credentials.ts +52 -52
  172. package/bin/_internal/integrations/n8n/src/nodes/Omnara/Omnara.node.json +34 -34
  173. package/bin/_internal/integrations/n8n/src/nodes/Omnara/Omnara.node.ts +304 -304
  174. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/message/index.ts +37 -37
  175. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/message/send.operation.ts +151 -151
  176. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/message/sendAndWait.operation.ts +252 -252
  177. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/session/end.operation.ts +56 -56
  178. package/bin/_internal/integrations/n8n/src/nodes/Omnara/actions/session/index.ts +29 -29
  179. package/bin/_internal/integrations/n8n/src/utils/GenericFunctions.ts +92 -92
  180. package/bin/_internal/integrations/n8n/src/utils/sendAndWait/configureWaitTillDate.ts +42 -42
  181. package/bin/_internal/integrations/n8n/src/utils/sendAndWait/descriptions.ts +20 -20
  182. package/bin/_internal/integrations/n8n/src/utils/sendAndWaitWebhook.ts +72 -72
  183. package/bin/_internal/integrations/n8n/tsconfig.json +19 -19
  184. package/bin/_internal/jiter/jiter.cp312-win_amd64.pyd +0 -0
  185. package/bin/_internal/jsonschema-4.26.0.dist-info/RECORD +1 -1
  186. package/bin/_internal/libcrypto-3.dll +0 -0
  187. package/bin/_internal/libffi-8.dll +0 -0
  188. package/bin/_internal/libssl-3.dll +0 -0
  189. package/bin/_internal/mcp-1.27.0.dist-info/RECORD +1 -1
  190. package/bin/_internal/multidict/_multidict.cp312-win_amd64.pyd +0 -0
  191. package/bin/_internal/propcache/_helpers_c.cp312-win_amd64.pyd +0 -0
  192. package/bin/_internal/pydantic_core/_pydantic_core.cp312-win_amd64.pyd +0 -0
  193. package/bin/_internal/pyexpat.pyd +0 -0
  194. package/bin/_internal/python3.dll +0 -0
  195. package/bin/_internal/python312.dll +0 -0
  196. package/bin/_internal/pywin32_system32/pythoncom312.dll +0 -0
  197. package/bin/_internal/pywin32_system32/pywintypes312.dll +0 -0
  198. package/bin/_internal/rpds/rpds.cp312-win_amd64.pyd +0 -0
  199. package/bin/_internal/select.pyd +0 -0
  200. package/bin/_internal/ucrtbase.dll +0 -0
  201. package/bin/_internal/{python3.12/lib-dynload/unicodedata.cpython-312-x86_64-linux-gnu.so → unicodedata.pyd} +0 -0
  202. package/bin/_internal/vicoa/_bin/README.md +28 -28
  203. package/bin/_internal/vicoa-1.3.10.dist-info/METADATA +311 -311
  204. package/bin/_internal/vicoa-1.3.10.dist-info/RECORD +6 -6
  205. package/bin/_internal/vicoa-1.3.10.dist-info/WHEEL +1 -1
  206. package/bin/_internal/vicoa-1.3.10.dist-info/direct_url.json +1 -1
  207. package/bin/_internal/vicoa-1.3.10.dist-info/licenses/LICENSE +201 -201
  208. package/bin/_internal/watchfiles/_rust_notify.cp312-win_amd64.pyd +0 -0
  209. package/bin/_internal/websockets/speedups.cp312-win_amd64.pyd +0 -0
  210. package/bin/_internal/websockets-16.0.dist-info/METADATA +179 -179
  211. package/bin/_internal/websockets-16.0.dist-info/RECORD +53 -53
  212. package/bin/_internal/websockets-16.0.dist-info/WHEEL +1 -3
  213. package/bin/_internal/websockets-16.0.dist-info/licenses/LICENSE +24 -24
  214. package/bin/_internal/win32/_win32sysloader.pyd +0 -0
  215. package/bin/_internal/win32/win32api.pyd +0 -0
  216. package/bin/_internal/win32/win32evtlog.pyd +0 -0
  217. package/bin/_internal/win32/win32job.pyd +0 -0
  218. package/bin/_internal/yaml/_yaml.cp312-win_amd64.pyd +0 -0
  219. package/bin/_internal/yarl/_quoting_c.cp312-win_amd64.pyd +0 -0
  220. package/bin/{vicoa → vicoa.exe} +0 -0
  221. package/package.json +3 -3
  222. package/bin/_internal/81d243bd2c585b0f4821__mypyc.cpython-312-x86_64-linux-gnu.so +0 -0
  223. package/bin/_internal/_cffi_backend.cpython-312-x86_64-linux-gnu.so +0 -0
  224. package/bin/_internal/aiohttp/_http_parser.cpython-312-x86_64-linux-gnu.so +0 -0
  225. package/bin/_internal/aiohttp/_http_writer.cpython-312-x86_64-linux-gnu.so +0 -0
  226. package/bin/_internal/aiohttp/_websocket/mask.cpython-312-x86_64-linux-gnu.so +0 -0
  227. package/bin/_internal/aiohttp/_websocket/reader_c.cpython-312-x86_64-linux-gnu.so +0 -0
  228. package/bin/_internal/caio/linux_aio.cpython-312-x86_64-linux-gnu.so +0 -0
  229. package/bin/_internal/caio/thread_aio.cpython-312-x86_64-linux-gnu.so +0 -0
  230. package/bin/_internal/charset_normalizer/cd.cpython-312-x86_64-linux-gnu.so +0 -0
  231. package/bin/_internal/charset_normalizer/md.cpython-312-x86_64-linux-gnu.so +0 -0
  232. package/bin/_internal/cryptography/hazmat/bindings/_rust.abi3.so +0 -0
  233. package/bin/_internal/frozenlist/_frozenlist.cpython-312-x86_64-linux-gnu.so +0 -0
  234. package/bin/_internal/jiter/jiter.cpython-312-x86_64-linux-gnu.so +0 -0
  235. package/bin/_internal/libbz2.so.1.0 +0 -0
  236. package/bin/_internal/libcrypto.so.3 +0 -0
  237. package/bin/_internal/libffi.so.8 +0 -0
  238. package/bin/_internal/libgcc_s.so.1 +0 -0
  239. package/bin/_internal/liblzma.so.5 +0 -0
  240. package/bin/_internal/libpython3.12.so.1.0 +0 -0
  241. package/bin/_internal/libreadline.so.8 +0 -0
  242. package/bin/_internal/libssl.so.3 +0 -0
  243. package/bin/_internal/libstdc++.so.6 +0 -0
  244. package/bin/_internal/libtinfo.so.6 +0 -0
  245. package/bin/_internal/libuuid.so.1 +0 -0
  246. package/bin/_internal/libz.so.1 +0 -0
  247. package/bin/_internal/multidict/_multidict.cpython-312-x86_64-linux-gnu.so +0 -0
  248. package/bin/_internal/propcache/_helpers_c.cpython-312-x86_64-linux-gnu.so +0 -0
  249. package/bin/_internal/pydantic_core/_pydantic_core.cpython-312-x86_64-linux-gnu.so +0 -0
  250. package/bin/_internal/python3.12/lib-dynload/_asyncio.cpython-312-x86_64-linux-gnu.so +0 -0
  251. package/bin/_internal/python3.12/lib-dynload/_bisect.cpython-312-x86_64-linux-gnu.so +0 -0
  252. package/bin/_internal/python3.12/lib-dynload/_blake2.cpython-312-x86_64-linux-gnu.so +0 -0
  253. package/bin/_internal/python3.12/lib-dynload/_bz2.cpython-312-x86_64-linux-gnu.so +0 -0
  254. package/bin/_internal/python3.12/lib-dynload/_codecs_cn.cpython-312-x86_64-linux-gnu.so +0 -0
  255. package/bin/_internal/python3.12/lib-dynload/_codecs_hk.cpython-312-x86_64-linux-gnu.so +0 -0
  256. package/bin/_internal/python3.12/lib-dynload/_codecs_iso2022.cpython-312-x86_64-linux-gnu.so +0 -0
  257. package/bin/_internal/python3.12/lib-dynload/_codecs_jp.cpython-312-x86_64-linux-gnu.so +0 -0
  258. package/bin/_internal/python3.12/lib-dynload/_codecs_kr.cpython-312-x86_64-linux-gnu.so +0 -0
  259. package/bin/_internal/python3.12/lib-dynload/_codecs_tw.cpython-312-x86_64-linux-gnu.so +0 -0
  260. package/bin/_internal/python3.12/lib-dynload/_contextvars.cpython-312-x86_64-linux-gnu.so +0 -0
  261. package/bin/_internal/python3.12/lib-dynload/_csv.cpython-312-x86_64-linux-gnu.so +0 -0
  262. package/bin/_internal/python3.12/lib-dynload/_ctypes.cpython-312-x86_64-linux-gnu.so +0 -0
  263. package/bin/_internal/python3.12/lib-dynload/_datetime.cpython-312-x86_64-linux-gnu.so +0 -0
  264. package/bin/_internal/python3.12/lib-dynload/_decimal.cpython-312-x86_64-linux-gnu.so +0 -0
  265. package/bin/_internal/python3.12/lib-dynload/_hashlib.cpython-312-x86_64-linux-gnu.so +0 -0
  266. package/bin/_internal/python3.12/lib-dynload/_heapq.cpython-312-x86_64-linux-gnu.so +0 -0
  267. package/bin/_internal/python3.12/lib-dynload/_json.cpython-312-x86_64-linux-gnu.so +0 -0
  268. package/bin/_internal/python3.12/lib-dynload/_lzma.cpython-312-x86_64-linux-gnu.so +0 -0
  269. package/bin/_internal/python3.12/lib-dynload/_md5.cpython-312-x86_64-linux-gnu.so +0 -0
  270. package/bin/_internal/python3.12/lib-dynload/_multibytecodec.cpython-312-x86_64-linux-gnu.so +0 -0
  271. package/bin/_internal/python3.12/lib-dynload/_multiprocessing.cpython-312-x86_64-linux-gnu.so +0 -0
  272. package/bin/_internal/python3.12/lib-dynload/_opcode.cpython-312-x86_64-linux-gnu.so +0 -0
  273. package/bin/_internal/python3.12/lib-dynload/_pickle.cpython-312-x86_64-linux-gnu.so +0 -0
  274. package/bin/_internal/python3.12/lib-dynload/_posixshmem.cpython-312-x86_64-linux-gnu.so +0 -0
  275. package/bin/_internal/python3.12/lib-dynload/_posixsubprocess.cpython-312-x86_64-linux-gnu.so +0 -0
  276. package/bin/_internal/python3.12/lib-dynload/_queue.cpython-312-x86_64-linux-gnu.so +0 -0
  277. package/bin/_internal/python3.12/lib-dynload/_random.cpython-312-x86_64-linux-gnu.so +0 -0
  278. package/bin/_internal/python3.12/lib-dynload/_sha1.cpython-312-x86_64-linux-gnu.so +0 -0
  279. package/bin/_internal/python3.12/lib-dynload/_sha2.cpython-312-x86_64-linux-gnu.so +0 -0
  280. package/bin/_internal/python3.12/lib-dynload/_sha3.cpython-312-x86_64-linux-gnu.so +0 -0
  281. package/bin/_internal/python3.12/lib-dynload/_socket.cpython-312-x86_64-linux-gnu.so +0 -0
  282. package/bin/_internal/python3.12/lib-dynload/_ssl.cpython-312-x86_64-linux-gnu.so +0 -0
  283. package/bin/_internal/python3.12/lib-dynload/_statistics.cpython-312-x86_64-linux-gnu.so +0 -0
  284. package/bin/_internal/python3.12/lib-dynload/_struct.cpython-312-x86_64-linux-gnu.so +0 -0
  285. package/bin/_internal/python3.12/lib-dynload/_uuid.cpython-312-x86_64-linux-gnu.so +0 -0
  286. package/bin/_internal/python3.12/lib-dynload/_zoneinfo.cpython-312-x86_64-linux-gnu.so +0 -0
  287. package/bin/_internal/python3.12/lib-dynload/array.cpython-312-x86_64-linux-gnu.so +0 -0
  288. package/bin/_internal/python3.12/lib-dynload/binascii.cpython-312-x86_64-linux-gnu.so +0 -0
  289. package/bin/_internal/python3.12/lib-dynload/fcntl.cpython-312-x86_64-linux-gnu.so +0 -0
  290. package/bin/_internal/python3.12/lib-dynload/grp.cpython-312-x86_64-linux-gnu.so +0 -0
  291. package/bin/_internal/python3.12/lib-dynload/math.cpython-312-x86_64-linux-gnu.so +0 -0
  292. package/bin/_internal/python3.12/lib-dynload/mmap.cpython-312-x86_64-linux-gnu.so +0 -0
  293. package/bin/_internal/python3.12/lib-dynload/pyexpat.cpython-312-x86_64-linux-gnu.so +0 -0
  294. package/bin/_internal/python3.12/lib-dynload/readline.cpython-312-x86_64-linux-gnu.so +0 -0
  295. package/bin/_internal/python3.12/lib-dynload/resource.cpython-312-x86_64-linux-gnu.so +0 -0
  296. package/bin/_internal/python3.12/lib-dynload/select.cpython-312-x86_64-linux-gnu.so +0 -0
  297. package/bin/_internal/python3.12/lib-dynload/syslog.cpython-312-x86_64-linux-gnu.so +0 -0
  298. package/bin/_internal/python3.12/lib-dynload/termios.cpython-312-x86_64-linux-gnu.so +0 -0
  299. package/bin/_internal/python3.12/lib-dynload/zlib.cpython-312-x86_64-linux-gnu.so +0 -0
  300. package/bin/_internal/rpds/rpds.cpython-312-x86_64-linux-gnu.so +0 -0
  301. package/bin/_internal/watchfiles/_rust_notify.cpython-312-x86_64-linux-gnu.so +0 -0
  302. package/bin/_internal/websockets/speedups.cpython-312-x86_64-linux-gnu.so +0 -0
  303. package/bin/_internal/yaml/_yaml.cpython-312-x86_64-linux-gnu.so +0 -0
  304. package/bin/_internal/yarl/_quoting_c.cpython-312-x86_64-linux-gnu.so +0 -0
@@ -1,111 +1,111 @@
1
- #!/usr/bin/env bun
2
-
3
- /**
4
- * Create the initial tracking comment when Claude Code starts working
5
- * This comment shows the working status and includes a link to the job run
6
- */
7
-
8
- import { appendFileSync } from "fs";
9
- import { createJobRunLink, createCommentBody } from "./common";
10
- import {
11
- isPullRequestReviewCommentEvent,
12
- isPullRequestEvent,
13
- type ParsedGitHubContext,
14
- } from "../../context";
15
- import type { Octokit } from "@octokit/rest";
16
-
17
- const CLAUDE_APP_BOT_ID = 209825114;
18
-
19
- export async function createInitialComment(
20
- octokit: Octokit,
21
- context: ParsedGitHubContext,
22
- ) {
23
- const { owner, repo } = context.repository;
24
-
25
- const jobRunLink = createJobRunLink(owner, repo, context.runId);
26
- const initialBody = createCommentBody(jobRunLink);
27
-
28
- try {
29
- let response;
30
-
31
- if (
32
- context.inputs.useStickyComment &&
33
- context.isPR &&
34
- isPullRequestEvent(context)
35
- ) {
36
- const comments = await octokit.rest.issues.listComments({
37
- owner,
38
- repo,
39
- issue_number: context.entityNumber,
40
- });
41
- const existingComment = comments.data.find((comment) => {
42
- const idMatch = comment.user?.id === CLAUDE_APP_BOT_ID;
43
- const botNameMatch =
44
- comment.user?.type === "Bot" &&
45
- comment.user?.login.toLowerCase().includes("claude");
46
- const bodyMatch = comment.body === initialBody;
47
-
48
- return idMatch || botNameMatch || bodyMatch;
49
- });
50
- if (existingComment) {
51
- response = await octokit.rest.issues.updateComment({
52
- owner,
53
- repo,
54
- comment_id: existingComment.id,
55
- body: initialBody,
56
- });
57
- } else {
58
- // Create new comment if no existing one found
59
- response = await octokit.rest.issues.createComment({
60
- owner,
61
- repo,
62
- issue_number: context.entityNumber,
63
- body: initialBody,
64
- });
65
- }
66
- } else if (isPullRequestReviewCommentEvent(context)) {
67
- // Only use createReplyForReviewComment if it's a PR review comment AND we have a comment_id
68
- response = await octokit.rest.pulls.createReplyForReviewComment({
69
- owner,
70
- repo,
71
- pull_number: context.entityNumber,
72
- comment_id: context.payload.comment.id,
73
- body: initialBody,
74
- });
75
- } else {
76
- // For all other cases (issues, issue comments, or missing comment_id)
77
- response = await octokit.rest.issues.createComment({
78
- owner,
79
- repo,
80
- issue_number: context.entityNumber,
81
- body: initialBody,
82
- });
83
- }
84
-
85
- // Output the comment ID for downstream steps using GITHUB_OUTPUT
86
- const githubOutput = process.env.GITHUB_OUTPUT!;
87
- appendFileSync(githubOutput, `claude_comment_id=${response.data.id}\n`);
88
- console.log(`✅ Created initial comment with ID: ${response.data.id}`);
89
- return response.data;
90
- } catch (error) {
91
- console.error("Error in initial comment:", error);
92
-
93
- // Always fall back to regular issue comment if anything fails
94
- try {
95
- const response = await octokit.rest.issues.createComment({
96
- owner,
97
- repo,
98
- issue_number: context.entityNumber,
99
- body: initialBody,
100
- });
101
-
102
- const githubOutput = process.env.GITHUB_OUTPUT!;
103
- appendFileSync(githubOutput, `claude_comment_id=${response.data.id}\n`);
104
- console.log(`✅ Created fallback comment with ID: ${response.data.id}`);
105
- return response.data;
106
- } catch (fallbackError) {
107
- console.error("Error creating fallback comment:", fallbackError);
108
- throw fallbackError;
109
- }
110
- }
111
- }
1
+ #!/usr/bin/env bun
2
+
3
+ /**
4
+ * Create the initial tracking comment when Claude Code starts working
5
+ * This comment shows the working status and includes a link to the job run
6
+ */
7
+
8
+ import { appendFileSync } from "fs";
9
+ import { createJobRunLink, createCommentBody } from "./common";
10
+ import {
11
+ isPullRequestReviewCommentEvent,
12
+ isPullRequestEvent,
13
+ type ParsedGitHubContext,
14
+ } from "../../context";
15
+ import type { Octokit } from "@octokit/rest";
16
+
17
+ const CLAUDE_APP_BOT_ID = 209825114;
18
+
19
+ export async function createInitialComment(
20
+ octokit: Octokit,
21
+ context: ParsedGitHubContext,
22
+ ) {
23
+ const { owner, repo } = context.repository;
24
+
25
+ const jobRunLink = createJobRunLink(owner, repo, context.runId);
26
+ const initialBody = createCommentBody(jobRunLink);
27
+
28
+ try {
29
+ let response;
30
+
31
+ if (
32
+ context.inputs.useStickyComment &&
33
+ context.isPR &&
34
+ isPullRequestEvent(context)
35
+ ) {
36
+ const comments = await octokit.rest.issues.listComments({
37
+ owner,
38
+ repo,
39
+ issue_number: context.entityNumber,
40
+ });
41
+ const existingComment = comments.data.find((comment) => {
42
+ const idMatch = comment.user?.id === CLAUDE_APP_BOT_ID;
43
+ const botNameMatch =
44
+ comment.user?.type === "Bot" &&
45
+ comment.user?.login.toLowerCase().includes("claude");
46
+ const bodyMatch = comment.body === initialBody;
47
+
48
+ return idMatch || botNameMatch || bodyMatch;
49
+ });
50
+ if (existingComment) {
51
+ response = await octokit.rest.issues.updateComment({
52
+ owner,
53
+ repo,
54
+ comment_id: existingComment.id,
55
+ body: initialBody,
56
+ });
57
+ } else {
58
+ // Create new comment if no existing one found
59
+ response = await octokit.rest.issues.createComment({
60
+ owner,
61
+ repo,
62
+ issue_number: context.entityNumber,
63
+ body: initialBody,
64
+ });
65
+ }
66
+ } else if (isPullRequestReviewCommentEvent(context)) {
67
+ // Only use createReplyForReviewComment if it's a PR review comment AND we have a comment_id
68
+ response = await octokit.rest.pulls.createReplyForReviewComment({
69
+ owner,
70
+ repo,
71
+ pull_number: context.entityNumber,
72
+ comment_id: context.payload.comment.id,
73
+ body: initialBody,
74
+ });
75
+ } else {
76
+ // For all other cases (issues, issue comments, or missing comment_id)
77
+ response = await octokit.rest.issues.createComment({
78
+ owner,
79
+ repo,
80
+ issue_number: context.entityNumber,
81
+ body: initialBody,
82
+ });
83
+ }
84
+
85
+ // Output the comment ID for downstream steps using GITHUB_OUTPUT
86
+ const githubOutput = process.env.GITHUB_OUTPUT!;
87
+ appendFileSync(githubOutput, `claude_comment_id=${response.data.id}\n`);
88
+ console.log(`✅ Created initial comment with ID: ${response.data.id}`);
89
+ return response.data;
90
+ } catch (error) {
91
+ console.error("Error in initial comment:", error);
92
+
93
+ // Always fall back to regular issue comment if anything fails
94
+ try {
95
+ const response = await octokit.rest.issues.createComment({
96
+ owner,
97
+ repo,
98
+ issue_number: context.entityNumber,
99
+ body: initialBody,
100
+ });
101
+
102
+ const githubOutput = process.env.GITHUB_OUTPUT!;
103
+ appendFileSync(githubOutput, `claude_comment_id=${response.data.id}\n`);
104
+ console.log(`✅ Created fallback comment with ID: ${response.data.id}`);
105
+ return response.data;
106
+ } catch (fallbackError) {
107
+ console.error("Error creating fallback comment:", fallbackError);
108
+ throw fallbackError;
109
+ }
110
+ }
111
+ }
@@ -1,70 +1,70 @@
1
- import { Octokit } from "@octokit/rest";
2
-
3
- export type UpdateClaudeCommentParams = {
4
- owner: string;
5
- repo: string;
6
- commentId: number;
7
- body: string;
8
- isPullRequestReviewComment: boolean;
9
- };
10
-
11
- export type UpdateClaudeCommentResult = {
12
- id: number;
13
- html_url: string;
14
- updated_at: string;
15
- };
16
-
17
- /**
18
- * Updates a Claude comment on GitHub (either an issue/PR comment or a PR review comment)
19
- *
20
- * @param octokit - Authenticated Octokit instance
21
- * @param params - Parameters for updating the comment
22
- * @returns The updated comment details
23
- * @throws Error if the update fails
24
- */
25
- export async function updateClaudeComment(
26
- octokit: Octokit,
27
- params: UpdateClaudeCommentParams,
28
- ): Promise<UpdateClaudeCommentResult> {
29
- const { owner, repo, commentId, body, isPullRequestReviewComment } = params;
30
-
31
- let response;
32
-
33
- try {
34
- if (isPullRequestReviewComment) {
35
- // Try PR review comment API first
36
- response = await octokit.rest.pulls.updateReviewComment({
37
- owner,
38
- repo,
39
- comment_id: commentId,
40
- body,
41
- });
42
- } else {
43
- // Use issue comment API (works for both issues and PR general comments)
44
- response = await octokit.rest.issues.updateComment({
45
- owner,
46
- repo,
47
- comment_id: commentId,
48
- body,
49
- });
50
- }
51
- } catch (error: any) {
52
- // If PR review comment update fails with 404, fall back to issue comment API
53
- if (isPullRequestReviewComment && error.status === 404) {
54
- response = await octokit.rest.issues.updateComment({
55
- owner,
56
- repo,
57
- comment_id: commentId,
58
- body,
59
- });
60
- } else {
61
- throw error;
62
- }
63
- }
64
-
65
- return {
66
- id: response.data.id,
67
- html_url: response.data.html_url,
68
- updated_at: response.data.updated_at,
69
- };
70
- }
1
+ import { Octokit } from "@octokit/rest";
2
+
3
+ export type UpdateClaudeCommentParams = {
4
+ owner: string;
5
+ repo: string;
6
+ commentId: number;
7
+ body: string;
8
+ isPullRequestReviewComment: boolean;
9
+ };
10
+
11
+ export type UpdateClaudeCommentResult = {
12
+ id: number;
13
+ html_url: string;
14
+ updated_at: string;
15
+ };
16
+
17
+ /**
18
+ * Updates a Claude comment on GitHub (either an issue/PR comment or a PR review comment)
19
+ *
20
+ * @param octokit - Authenticated Octokit instance
21
+ * @param params - Parameters for updating the comment
22
+ * @returns The updated comment details
23
+ * @throws Error if the update fails
24
+ */
25
+ export async function updateClaudeComment(
26
+ octokit: Octokit,
27
+ params: UpdateClaudeCommentParams,
28
+ ): Promise<UpdateClaudeCommentResult> {
29
+ const { owner, repo, commentId, body, isPullRequestReviewComment } = params;
30
+
31
+ let response;
32
+
33
+ try {
34
+ if (isPullRequestReviewComment) {
35
+ // Try PR review comment API first
36
+ response = await octokit.rest.pulls.updateReviewComment({
37
+ owner,
38
+ repo,
39
+ comment_id: commentId,
40
+ body,
41
+ });
42
+ } else {
43
+ // Use issue comment API (works for both issues and PR general comments)
44
+ response = await octokit.rest.issues.updateComment({
45
+ owner,
46
+ repo,
47
+ comment_id: commentId,
48
+ body,
49
+ });
50
+ }
51
+ } catch (error: any) {
52
+ // If PR review comment update fails with 404, fall back to issue comment API
53
+ if (isPullRequestReviewComment && error.status === 404) {
54
+ response = await octokit.rest.issues.updateComment({
55
+ owner,
56
+ repo,
57
+ comment_id: commentId,
58
+ body,
59
+ });
60
+ } else {
61
+ throw error;
62
+ }
63
+ }
64
+
65
+ return {
66
+ id: response.data.id,
67
+ html_url: response.data.html_url,
68
+ updated_at: response.data.updated_at,
69
+ };
70
+ }
@@ -1,57 +1,57 @@
1
- #!/usr/bin/env bun
2
-
3
- /**
4
- * Update the initial tracking comment with branch link
5
- * This happens after the branch is created for issues
6
- */
7
-
8
- import {
9
- createJobRunLink,
10
- createBranchLink,
11
- createCommentBody,
12
- } from "./common";
13
- import { type Octokits } from "../../api/client";
14
- import {
15
- isPullRequestReviewCommentEvent,
16
- type ParsedGitHubContext,
17
- } from "../../context";
18
- import { updateClaudeComment } from "./update-claude-comment";
19
-
20
- export async function updateTrackingComment(
21
- octokit: Octokits,
22
- context: ParsedGitHubContext,
23
- commentId: number,
24
- branch?: string,
25
- ) {
26
- const { owner, repo } = context.repository;
27
-
28
- const jobRunLink = createJobRunLink(owner, repo, context.runId);
29
-
30
- // Add branch link for issues (not PRs)
31
- let branchLink = "";
32
- if (branch && !context.isPR) {
33
- branchLink = createBranchLink(owner, repo, branch);
34
- }
35
-
36
- const updatedBody = createCommentBody(jobRunLink, branchLink);
37
-
38
- // Update the existing comment with the branch link
39
- try {
40
- const isPRReviewComment = isPullRequestReviewCommentEvent(context);
41
-
42
- await updateClaudeComment(octokit.rest, {
43
- owner,
44
- repo,
45
- commentId,
46
- body: updatedBody,
47
- isPullRequestReviewComment: isPRReviewComment,
48
- });
49
-
50
- console.log(
51
- `✅ Updated ${isPRReviewComment ? "PR review" : "issue"} comment ${commentId} with branch link`,
52
- );
53
- } catch (error) {
54
- console.error("Error updating comment with branch link:", error);
55
- throw error;
56
- }
57
- }
1
+ #!/usr/bin/env bun
2
+
3
+ /**
4
+ * Update the initial tracking comment with branch link
5
+ * This happens after the branch is created for issues
6
+ */
7
+
8
+ import {
9
+ createJobRunLink,
10
+ createBranchLink,
11
+ createCommentBody,
12
+ } from "./common";
13
+ import { type Octokits } from "../../api/client";
14
+ import {
15
+ isPullRequestReviewCommentEvent,
16
+ type ParsedGitHubContext,
17
+ } from "../../context";
18
+ import { updateClaudeComment } from "./update-claude-comment";
19
+
20
+ export async function updateTrackingComment(
21
+ octokit: Octokits,
22
+ context: ParsedGitHubContext,
23
+ commentId: number,
24
+ branch?: string,
25
+ ) {
26
+ const { owner, repo } = context.repository;
27
+
28
+ const jobRunLink = createJobRunLink(owner, repo, context.runId);
29
+
30
+ // Add branch link for issues (not PRs)
31
+ let branchLink = "";
32
+ if (branch && !context.isPR) {
33
+ branchLink = createBranchLink(owner, repo, branch);
34
+ }
35
+
36
+ const updatedBody = createCommentBody(jobRunLink, branchLink);
37
+
38
+ // Update the existing comment with the branch link
39
+ try {
40
+ const isPRReviewComment = isPullRequestReviewCommentEvent(context);
41
+
42
+ await updateClaudeComment(octokit.rest, {
43
+ owner,
44
+ repo,
45
+ commentId,
46
+ body: updatedBody,
47
+ isPullRequestReviewComment: isPRReviewComment,
48
+ });
49
+
50
+ console.log(
51
+ `✅ Updated ${isPRReviewComment ? "PR review" : "issue"} comment ${commentId} with branch link`,
52
+ );
53
+ } catch (error) {
54
+ console.error("Error updating comment with branch link:", error);
55
+ throw error;
56
+ }
57
+ }
@@ -1,62 +1,62 @@
1
- #!/usr/bin/env bun
2
-
3
- /**
4
- * Configure git authentication for non-signing mode
5
- * Sets up git user and authentication to work with GitHub App tokens
6
- */
7
-
8
- import { $ } from "bun";
9
- import type { GitHubContext } from "../context";
10
- import { GITHUB_SERVER_URL } from "../api/config";
11
-
12
- type GitUser = {
13
- login: string;
14
- id: number;
15
- };
16
-
17
- export async function configureGitAuth(
18
- githubToken: string,
19
- context: GitHubContext,
20
- user: GitUser | null,
21
- ) {
22
- console.log("Configuring git authentication for non-signing mode");
23
-
24
- // Determine the noreply email domain based on GITHUB_SERVER_URL
25
- const serverUrl = new URL(GITHUB_SERVER_URL);
26
- const noreplyDomain =
27
- serverUrl.hostname === "github.com"
28
- ? "users.noreply.github.com"
29
- : `users.noreply.${serverUrl.hostname}`;
30
-
31
- // Configure git user based on the comment creator
32
- console.log("Configuring git user...");
33
- if (user) {
34
- const botName = user.login;
35
- const botId = user.id;
36
- console.log(`Setting git user as ${botName}...`);
37
- await $`git config user.name "${botName}"`;
38
- await $`git config user.email "${botId}+${botName}@${noreplyDomain}"`;
39
- console.log(`✓ Set git user as ${botName}`);
40
- } else {
41
- console.log("No user data in comment, using default bot user");
42
- await $`git config user.name "github-actions[bot]"`;
43
- await $`git config user.email "41898282+github-actions[bot]@${noreplyDomain}"`;
44
- }
45
-
46
- // Remove the authorization header that actions/checkout sets
47
- console.log("Removing existing git authentication headers...");
48
- try {
49
- await $`git config --unset-all http.${GITHUB_SERVER_URL}/.extraheader`;
50
- console.log("✓ Removed existing authentication headers");
51
- } catch (e) {
52
- console.log("No existing authentication headers to remove");
53
- }
54
-
55
- // Update the remote URL to include the token for authentication
56
- console.log("Updating remote URL with authentication...");
57
- const remoteUrl = `https://x-access-token:${githubToken}@${serverUrl.host}/${context.repository.owner}/${context.repository.repo}.git`;
58
- await $`git remote set-url origin ${remoteUrl}`;
59
- console.log("✓ Updated remote URL with authentication token");
60
-
61
- console.log("Git authentication configured successfully");
62
- }
1
+ #!/usr/bin/env bun
2
+
3
+ /**
4
+ * Configure git authentication for non-signing mode
5
+ * Sets up git user and authentication to work with GitHub App tokens
6
+ */
7
+
8
+ import { $ } from "bun";
9
+ import type { GitHubContext } from "../context";
10
+ import { GITHUB_SERVER_URL } from "../api/config";
11
+
12
+ type GitUser = {
13
+ login: string;
14
+ id: number;
15
+ };
16
+
17
+ export async function configureGitAuth(
18
+ githubToken: string,
19
+ context: GitHubContext,
20
+ user: GitUser | null,
21
+ ) {
22
+ console.log("Configuring git authentication for non-signing mode");
23
+
24
+ // Determine the noreply email domain based on GITHUB_SERVER_URL
25
+ const serverUrl = new URL(GITHUB_SERVER_URL);
26
+ const noreplyDomain =
27
+ serverUrl.hostname === "github.com"
28
+ ? "users.noreply.github.com"
29
+ : `users.noreply.${serverUrl.hostname}`;
30
+
31
+ // Configure git user based on the comment creator
32
+ console.log("Configuring git user...");
33
+ if (user) {
34
+ const botName = user.login;
35
+ const botId = user.id;
36
+ console.log(`Setting git user as ${botName}...`);
37
+ await $`git config user.name "${botName}"`;
38
+ await $`git config user.email "${botId}+${botName}@${noreplyDomain}"`;
39
+ console.log(`✓ Set git user as ${botName}`);
40
+ } else {
41
+ console.log("No user data in comment, using default bot user");
42
+ await $`git config user.name "github-actions[bot]"`;
43
+ await $`git config user.email "41898282+github-actions[bot]@${noreplyDomain}"`;
44
+ }
45
+
46
+ // Remove the authorization header that actions/checkout sets
47
+ console.log("Removing existing git authentication headers...");
48
+ try {
49
+ await $`git config --unset-all http.${GITHUB_SERVER_URL}/.extraheader`;
50
+ console.log("✓ Removed existing authentication headers");
51
+ } catch (e) {
52
+ console.log("No existing authentication headers to remove");
53
+ }
54
+
55
+ // Update the remote URL to include the token for authentication
56
+ console.log("Updating remote URL with authentication...");
57
+ const remoteUrl = `https://x-access-token:${githubToken}@${serverUrl.host}/${context.repository.owner}/${context.repository.repo}.git`;
58
+ await $`git remote set-url origin ${remoteUrl}`;
59
+ console.log("✓ Updated remote URL with authentication token");
60
+
61
+ console.log("Git authentication configured successfully");
62
+ }