@vybestack/llxprt-code-core 0.1.18-nightly.250811.b0db22c6 → 0.1.18-nightly.250812.12fa8ad2

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 (485) hide show
  1. package/README.md +49 -2
  2. package/dist/index.d.ts +3 -0
  3. package/dist/index.js +2 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/src/auth/anthropic-device-flow.d.ts +53 -0
  6. package/dist/src/auth/anthropic-device-flow.js +208 -0
  7. package/dist/src/auth/anthropic-device-flow.js.map +1 -0
  8. package/dist/src/auth/token-store.js +11 -7
  9. package/dist/src/auth/token-store.js.map +1 -1
  10. package/dist/src/config/config.d.ts +7 -1
  11. package/dist/src/config/config.js +42 -4
  12. package/dist/src/config/config.js.map +1 -1
  13. package/dist/src/config/profileManager.d.ts +14 -4
  14. package/dist/src/config/profileManager.js +90 -11
  15. package/dist/src/config/profileManager.js.map +1 -1
  16. package/dist/src/core/contentGenerator.d.ts +2 -1
  17. package/dist/src/core/contentGenerator.js +1 -0
  18. package/dist/src/core/contentGenerator.js.map +1 -1
  19. package/dist/src/index.d.ts +6 -0
  20. package/dist/src/index.js +5 -0
  21. package/dist/src/index.js.map +1 -1
  22. package/dist/src/providers/BaseProvider.d.ts +51 -0
  23. package/dist/src/providers/BaseProvider.js +136 -1
  24. package/dist/src/providers/BaseProvider.js.map +1 -1
  25. package/dist/src/providers/IProvider.d.ts +1 -0
  26. package/dist/src/providers/LoggingProviderWrapper.d.ts +1 -0
  27. package/dist/src/providers/LoggingProviderWrapper.js +3 -0
  28. package/dist/src/providers/LoggingProviderWrapper.js.map +1 -1
  29. package/dist/src/providers/ProviderManager.d.ts +0 -1
  30. package/dist/src/providers/ProviderManager.js +23 -14
  31. package/dist/src/providers/ProviderManager.js.map +1 -1
  32. package/dist/src/providers/anthropic/AnthropicProvider.d.ts +20 -6
  33. package/dist/src/providers/anthropic/AnthropicProvider.js +172 -26
  34. package/dist/src/providers/anthropic/AnthropicProvider.js.map +1 -1
  35. package/dist/src/providers/gemini/GeminiProvider.d.ts +4 -0
  36. package/dist/src/providers/gemini/GeminiProvider.js +33 -1
  37. package/dist/src/providers/gemini/GeminiProvider.js.map +1 -1
  38. package/dist/src/providers/openai/OpenAIProvider.d.ts +32 -0
  39. package/dist/src/providers/openai/OpenAIProvider.js +200 -13
  40. package/dist/src/providers/openai/OpenAIProvider.js.map +1 -1
  41. package/dist/src/providers/openai/RESPONSES_API_MODELS.d.ts +1 -1
  42. package/dist/src/providers/openai/RESPONSES_API_MODELS.js +1 -0
  43. package/dist/src/providers/openai/RESPONSES_API_MODELS.js.map +1 -1
  44. package/dist/src/providers/openai/syntheticToolResponses.d.ts +52 -0
  45. package/dist/src/providers/openai/syntheticToolResponses.js +129 -0
  46. package/dist/src/providers/openai/syntheticToolResponses.js.map +1 -0
  47. package/dist/src/settings/SettingsService.d.ts +32 -0
  48. package/dist/src/settings/SettingsService.js +204 -0
  49. package/dist/src/settings/SettingsService.js.map +1 -0
  50. package/dist/src/settings/settingsServiceInstance.d.ts +12 -0
  51. package/dist/src/settings/settingsServiceInstance.js +24 -0
  52. package/dist/src/settings/settingsServiceInstance.js.map +1 -0
  53. package/dist/src/settings/types.d.ts +141 -0
  54. package/dist/src/settings/types.js +5 -0
  55. package/dist/src/settings/types.js.map +1 -0
  56. package/package.json +4 -2
  57. package/dist/src/auth/auth-integration.spec.d.ts +0 -6
  58. package/dist/src/auth/auth-integration.spec.js +0 -384
  59. package/dist/src/auth/auth-integration.spec.js.map +0 -1
  60. package/dist/src/auth/precedence.test.d.ts +0 -6
  61. package/dist/src/auth/precedence.test.js +0 -374
  62. package/dist/src/auth/precedence.test.js.map +0 -1
  63. package/dist/src/auth/qwen-device-flow.spec.d.ts +0 -6
  64. package/dist/src/auth/qwen-device-flow.spec.js +0 -793
  65. package/dist/src/auth/qwen-device-flow.spec.js.map +0 -1
  66. package/dist/src/auth/token-store.spec.d.ts +0 -6
  67. package/dist/src/auth/token-store.spec.js +0 -405
  68. package/dist/src/auth/token-store.spec.js.map +0 -1
  69. package/dist/src/code_assist/converter.test.d.ts +0 -6
  70. package/dist/src/code_assist/converter.test.js +0 -279
  71. package/dist/src/code_assist/converter.test.js.map +0 -1
  72. package/dist/src/code_assist/oauth2.test.d.ts +0 -6
  73. package/dist/src/code_assist/oauth2.test.js +0 -370
  74. package/dist/src/code_assist/oauth2.test.js.map +0 -1
  75. package/dist/src/code_assist/server.test.d.ts +0 -6
  76. package/dist/src/code_assist/server.test.js +0 -134
  77. package/dist/src/code_assist/server.test.js.map +0 -1
  78. package/dist/src/code_assist/setup.test.d.ts +0 -6
  79. package/dist/src/code_assist/setup.test.js +0 -65
  80. package/dist/src/code_assist/setup.test.js.map +0 -1
  81. package/dist/src/config/config.alwaysAllow.test.d.ts +0 -6
  82. package/dist/src/config/config.alwaysAllow.test.js +0 -84
  83. package/dist/src/config/config.alwaysAllow.test.js.map +0 -1
  84. package/dist/src/config/config.ephemeral.test.d.ts +0 -6
  85. package/dist/src/config/config.ephemeral.test.js +0 -152
  86. package/dist/src/config/config.ephemeral.test.js.map +0 -1
  87. package/dist/src/config/config.test.d.ts +0 -6
  88. package/dist/src/config/config.test.js +0 -369
  89. package/dist/src/config/config.test.js.map +0 -1
  90. package/dist/src/config/endpoints.test.d.ts +0 -6
  91. package/dist/src/config/endpoints.test.js +0 -196
  92. package/dist/src/config/endpoints.test.js.map +0 -1
  93. package/dist/src/config/flashFallback.test.d.ts +0 -6
  94. package/dist/src/config/flashFallback.test.js +0 -91
  95. package/dist/src/config/flashFallback.test.js.map +0 -1
  96. package/dist/src/core/client.test.d.ts +0 -6
  97. package/dist/src/core/client.test.js +0 -1323
  98. package/dist/src/core/client.test.js.map +0 -1
  99. package/dist/src/core/contentGenerator.test.d.ts +0 -6
  100. package/dist/src/core/contentGenerator.test.js +0 -103
  101. package/dist/src/core/contentGenerator.test.js.map +0 -1
  102. package/dist/src/core/coreToolScheduler.test.d.ts +0 -6
  103. package/dist/src/core/coreToolScheduler.test.js +0 -637
  104. package/dist/src/core/coreToolScheduler.test.js.map +0 -1
  105. package/dist/src/core/geminiChat.test.d.ts +0 -6
  106. package/dist/src/core/geminiChat.test.js +0 -425
  107. package/dist/src/core/geminiChat.test.js.map +0 -1
  108. package/dist/src/core/googleGenAIWrapper.test.d.ts +0 -6
  109. package/dist/src/core/googleGenAIWrapper.test.js +0 -104
  110. package/dist/src/core/googleGenAIWrapper.test.js.map +0 -1
  111. package/dist/src/core/logger.test.d.ts +0 -6
  112. package/dist/src/core/logger.test.js +0 -467
  113. package/dist/src/core/logger.test.js.map +0 -1
  114. package/dist/src/core/nonInteractiveToolExecutor.test.d.ts +0 -6
  115. package/dist/src/core/nonInteractiveToolExecutor.test.js +0 -165
  116. package/dist/src/core/nonInteractiveToolExecutor.test.js.map +0 -1
  117. package/dist/src/core/prompts-async.test.d.ts +0 -6
  118. package/dist/src/core/prompts-async.test.js +0 -115
  119. package/dist/src/core/prompts-async.test.js.map +0 -1
  120. package/dist/src/core/prompts.test.d.ts +0 -6
  121. package/dist/src/core/prompts.test.js +0 -68
  122. package/dist/src/core/prompts.test.js.map +0 -1
  123. package/dist/src/core/subagent.test.d.ts +0 -6
  124. package/dist/src/core/subagent.test.js +0 -510
  125. package/dist/src/core/subagent.test.js.map +0 -1
  126. package/dist/src/core/tokenLimits.test.d.ts +0 -6
  127. package/dist/src/core/tokenLimits.test.js +0 -66
  128. package/dist/src/core/tokenLimits.test.js.map +0 -1
  129. package/dist/src/core/turn.test.d.ts +0 -6
  130. package/dist/src/core/turn.test.js +0 -366
  131. package/dist/src/core/turn.test.js.map +0 -1
  132. package/dist/src/hooks/tool-render-suppression-hook.test.d.ts +0 -6
  133. package/dist/src/hooks/tool-render-suppression-hook.test.js +0 -59
  134. package/dist/src/hooks/tool-render-suppression-hook.test.js.map +0 -1
  135. package/dist/src/ide/ide-installer.test.d.ts +0 -6
  136. package/dist/src/ide/ide-installer.test.js +0 -55
  137. package/dist/src/ide/ide-installer.test.js.map +0 -1
  138. package/dist/src/ide/ideContext.test.d.ts +0 -6
  139. package/dist/src/ide/ideContext.test.js +0 -265
  140. package/dist/src/ide/ideContext.test.js.map +0 -1
  141. package/dist/src/index.test.d.ts +0 -6
  142. package/dist/src/index.test.js +0 -12
  143. package/dist/src/index.test.js.map +0 -1
  144. package/dist/src/integration-tests/oauth-integration.spec.d.ts +0 -6
  145. package/dist/src/integration-tests/oauth-integration.spec.js +0 -518
  146. package/dist/src/integration-tests/oauth-integration.spec.js.map +0 -1
  147. package/dist/src/integration-tests/oauth-simple-test.spec.d.ts +0 -1
  148. package/dist/src/integration-tests/oauth-simple-test.spec.js +0 -88
  149. package/dist/src/integration-tests/oauth-simple-test.spec.js.map +0 -1
  150. package/dist/src/integration-tests/todo-system.test.d.ts +0 -6
  151. package/dist/src/integration-tests/todo-system.test.js +0 -46
  152. package/dist/src/integration-tests/todo-system.test.js.map +0 -1
  153. package/dist/src/mcp/google-auth-provider.test.d.ts +0 -6
  154. package/dist/src/mcp/google-auth-provider.test.js +0 -54
  155. package/dist/src/mcp/google-auth-provider.test.js.map +0 -1
  156. package/dist/src/mcp/oauth-provider.test.d.ts +0 -6
  157. package/dist/src/mcp/oauth-provider.test.js +0 -602
  158. package/dist/src/mcp/oauth-provider.test.js.map +0 -1
  159. package/dist/src/mcp/oauth-token-storage.test.d.ts +0 -6
  160. package/dist/src/mcp/oauth-token-storage.test.js +0 -205
  161. package/dist/src/mcp/oauth-token-storage.test.js.map +0 -1
  162. package/dist/src/mcp/oauth-utils.test.d.ts +0 -6
  163. package/dist/src/mcp/oauth-utils.test.js +0 -144
  164. package/dist/src/mcp/oauth-utils.test.js.map +0 -1
  165. package/dist/src/parsers/TextToolCallParser.multibyte.test.d.ts +0 -1
  166. package/dist/src/parsers/TextToolCallParser.multibyte.test.js +0 -42
  167. package/dist/src/parsers/TextToolCallParser.multibyte.test.js.map +0 -1
  168. package/dist/src/parsers/TextToolCallParser.test.d.ts +0 -1
  169. package/dist/src/parsers/TextToolCallParser.test.js +0 -225
  170. package/dist/src/parsers/TextToolCallParser.test.js.map +0 -1
  171. package/dist/src/prompt-config/TemplateEngine.test.d.ts +0 -1
  172. package/dist/src/prompt-config/TemplateEngine.test.js +0 -494
  173. package/dist/src/prompt-config/TemplateEngine.test.js.map +0 -1
  174. package/dist/src/prompt-config/prompt-cache.test.d.ts +0 -6
  175. package/dist/src/prompt-config/prompt-cache.test.js +0 -437
  176. package/dist/src/prompt-config/prompt-cache.test.js.map +0 -1
  177. package/dist/src/prompt-config/prompt-installer.test.d.ts +0 -7
  178. package/dist/src/prompt-config/prompt-installer.test.js +0 -503
  179. package/dist/src/prompt-config/prompt-installer.test.js.map +0 -1
  180. package/dist/src/prompt-config/prompt-loader.test.d.ts +0 -5
  181. package/dist/src/prompt-config/prompt-loader.test.js +0 -413
  182. package/dist/src/prompt-config/prompt-loader.test.js.map +0 -1
  183. package/dist/src/prompt-config/prompt-resolver.test.d.ts +0 -1
  184. package/dist/src/prompt-config/prompt-resolver.test.js +0 -529
  185. package/dist/src/prompt-config/prompt-resolver.test.js.map +0 -1
  186. package/dist/src/prompt-config/prompt-service.test.d.ts +0 -1
  187. package/dist/src/prompt-config/prompt-service.test.js +0 -811
  188. package/dist/src/prompt-config/prompt-service.test.js.map +0 -1
  189. package/dist/src/providers/BaseProvider.test.d.ts +0 -6
  190. package/dist/src/providers/BaseProvider.test.js +0 -472
  191. package/dist/src/providers/BaseProvider.test.js.map +0 -1
  192. package/dist/src/providers/ProviderManager.gemini-switch.test.d.ts +0 -6
  193. package/dist/src/providers/ProviderManager.gemini-switch.test.js +0 -57
  194. package/dist/src/providers/ProviderManager.gemini-switch.test.js.map +0 -1
  195. package/dist/src/providers/ProviderManager.test.d.ts +0 -6
  196. package/dist/src/providers/ProviderManager.test.js +0 -284
  197. package/dist/src/providers/ProviderManager.test.js.map +0 -1
  198. package/dist/src/providers/adapters/GeminiCompatibleWrapper.test.d.ts +0 -6
  199. package/dist/src/providers/adapters/GeminiCompatibleWrapper.test.js +0 -273
  200. package/dist/src/providers/adapters/GeminiCompatibleWrapper.test.js.map +0 -1
  201. package/dist/src/providers/anthropic/AnthropicProvider.modelParams.test.d.ts +0 -1
  202. package/dist/src/providers/anthropic/AnthropicProvider.modelParams.test.js +0 -48
  203. package/dist/src/providers/anthropic/AnthropicProvider.modelParams.test.js.map +0 -1
  204. package/dist/src/providers/anthropic/AnthropicProvider.test.d.ts +0 -1
  205. package/dist/src/providers/anthropic/AnthropicProvider.test.js +0 -487
  206. package/dist/src/providers/anthropic/AnthropicProvider.test.js.map +0 -1
  207. package/dist/src/providers/gemini/GeminiProvider.integration.test.d.ts +0 -6
  208. package/dist/src/providers/gemini/GeminiProvider.integration.test.js +0 -126
  209. package/dist/src/providers/gemini/GeminiProvider.integration.test.js.map +0 -1
  210. package/dist/src/providers/gemini/GeminiProvider.test.d.ts +0 -6
  211. package/dist/src/providers/gemini/GeminiProvider.test.js +0 -136
  212. package/dist/src/providers/gemini/GeminiProvider.test.js.map +0 -1
  213. package/dist/src/providers/integration/multi-provider.integration.test.d.ts +0 -6
  214. package/dist/src/providers/integration/multi-provider.integration.test.js +0 -308
  215. package/dist/src/providers/integration/multi-provider.integration.test.js.map +0 -1
  216. package/dist/src/providers/openai/ConversationCache.accumTokens.test.d.ts +0 -1
  217. package/dist/src/providers/openai/ConversationCache.accumTokens.test.js +0 -97
  218. package/dist/src/providers/openai/ConversationCache.accumTokens.test.js.map +0 -1
  219. package/dist/src/providers/openai/ConversationCache.test.d.ts +0 -1
  220. package/dist/src/providers/openai/ConversationCache.test.js +0 -113
  221. package/dist/src/providers/openai/ConversationCache.test.js.map +0 -1
  222. package/dist/src/providers/openai/OpenAIProvider.callResponses.stateless.test.d.ts +0 -1
  223. package/dist/src/providers/openai/OpenAIProvider.callResponses.stateless.test.js +0 -189
  224. package/dist/src/providers/openai/OpenAIProvider.callResponses.stateless.test.js.map +0 -1
  225. package/dist/src/providers/openai/OpenAIProvider.integration.test.d.ts +0 -6
  226. package/dist/src/providers/openai/OpenAIProvider.integration.test.js +0 -125
  227. package/dist/src/providers/openai/OpenAIProvider.integration.test.js.map +0 -1
  228. package/dist/src/providers/openai/OpenAIProvider.responses.test.d.ts +0 -1
  229. package/dist/src/providers/openai/OpenAIProvider.responses.test.js +0 -350
  230. package/dist/src/providers/openai/OpenAIProvider.responses.test.js.map +0 -1
  231. package/dist/src/providers/openai/OpenAIProvider.responsesIntegration.test.d.ts +0 -1
  232. package/dist/src/providers/openai/OpenAIProvider.responsesIntegration.test.js +0 -213
  233. package/dist/src/providers/openai/OpenAIProvider.responsesIntegration.test.js.map +0 -1
  234. package/dist/src/providers/openai/OpenAIProvider.shouldUseResponses.test.d.ts +0 -1
  235. package/dist/src/providers/openai/OpenAIProvider.shouldUseResponses.test.js +0 -59
  236. package/dist/src/providers/openai/OpenAIProvider.shouldUseResponses.test.js.map +0 -1
  237. package/dist/src/providers/openai/OpenAIProvider.stateful.integration.test.d.ts +0 -6
  238. package/dist/src/providers/openai/OpenAIProvider.stateful.integration.test.js +0 -105
  239. package/dist/src/providers/openai/OpenAIProvider.stateful.integration.test.js.map +0 -1
  240. package/dist/src/providers/openai/OpenAIProvider.switch.test.d.ts +0 -1
  241. package/dist/src/providers/openai/OpenAIProvider.switch.test.js +0 -256
  242. package/dist/src/providers/openai/OpenAIProvider.switch.test.js.map +0 -1
  243. package/dist/src/providers/openai/OpenAIProvider.test.d.ts +0 -16
  244. package/dist/src/providers/openai/OpenAIProvider.test.js +0 -621
  245. package/dist/src/providers/openai/OpenAIProvider.test.js.map +0 -1
  246. package/dist/src/providers/openai/ResponsesContextTrim.integration.test.d.ts +0 -1
  247. package/dist/src/providers/openai/ResponsesContextTrim.integration.test.js +0 -210
  248. package/dist/src/providers/openai/ResponsesContextTrim.integration.test.js.map +0 -1
  249. package/dist/src/providers/openai/__tests__/formatArrayResponse.test.d.ts +0 -1
  250. package/dist/src/providers/openai/__tests__/formatArrayResponse.test.js +0 -65
  251. package/dist/src/providers/openai/__tests__/formatArrayResponse.test.js.map +0 -1
  252. package/dist/src/providers/openai/buildResponsesRequest.stripToolCalls.test.d.ts +0 -1
  253. package/dist/src/providers/openai/buildResponsesRequest.stripToolCalls.test.js +0 -129
  254. package/dist/src/providers/openai/buildResponsesRequest.stripToolCalls.test.js.map +0 -1
  255. package/dist/src/providers/openai/buildResponsesRequest.test.d.ts +0 -1
  256. package/dist/src/providers/openai/buildResponsesRequest.test.js +0 -406
  257. package/dist/src/providers/openai/buildResponsesRequest.test.js.map +0 -1
  258. package/dist/src/providers/openai/buildResponsesRequest.undefined.test.d.ts +0 -1
  259. package/dist/src/providers/openai/buildResponsesRequest.undefined.test.js +0 -50
  260. package/dist/src/providers/openai/buildResponsesRequest.undefined.test.js.map +0 -1
  261. package/dist/src/providers/openai/estimateRemoteTokens.test.d.ts +0 -1
  262. package/dist/src/providers/openai/estimateRemoteTokens.test.js +0 -125
  263. package/dist/src/providers/openai/estimateRemoteTokens.test.js.map +0 -1
  264. package/dist/src/providers/openai/openai-oauth.spec.d.ts +0 -16
  265. package/dist/src/providers/openai/openai-oauth.spec.js +0 -544
  266. package/dist/src/providers/openai/openai-oauth.spec.js.map +0 -1
  267. package/dist/src/providers/openai/parseResponsesStream.responsesToolCalls.test.d.ts +0 -1
  268. package/dist/src/providers/openai/parseResponsesStream.responsesToolCalls.test.js +0 -192
  269. package/dist/src/providers/openai/parseResponsesStream.responsesToolCalls.test.js.map +0 -1
  270. package/dist/src/providers/openai/parseResponsesStream.test.d.ts +0 -1
  271. package/dist/src/providers/openai/parseResponsesStream.test.js +0 -151
  272. package/dist/src/providers/openai/parseResponsesStream.test.js.map +0 -1
  273. package/dist/src/services/fileDiscoveryService.test.d.ts +0 -6
  274. package/dist/src/services/fileDiscoveryService.test.js +0 -143
  275. package/dist/src/services/fileDiscoveryService.test.js.map +0 -1
  276. package/dist/src/services/gitService.test.d.ts +0 -6
  277. package/dist/src/services/gitService.test.js +0 -209
  278. package/dist/src/services/gitService.test.js.map +0 -1
  279. package/dist/src/services/loopDetectionService.test.d.ts +0 -6
  280. package/dist/src/services/loopDetectionService.test.js +0 -484
  281. package/dist/src/services/loopDetectionService.test.js.map +0 -1
  282. package/dist/src/services/shellExecutionService.multibyte.test.d.ts +0 -6
  283. package/dist/src/services/shellExecutionService.multibyte.test.js +0 -72
  284. package/dist/src/services/shellExecutionService.multibyte.test.js.map +0 -1
  285. package/dist/src/services/shellExecutionService.test.d.ts +0 -6
  286. package/dist/src/services/shellExecutionService.test.js +0 -272
  287. package/dist/src/services/shellExecutionService.test.js.map +0 -1
  288. package/dist/src/services/shellExecutionService.windows.multibyte.test.d.ts +0 -6
  289. package/dist/src/services/shellExecutionService.windows.multibyte.test.js +0 -98
  290. package/dist/src/services/shellExecutionService.windows.multibyte.test.js.map +0 -1
  291. package/dist/src/services/shellExecutionService.windows.test.d.ts +0 -6
  292. package/dist/src/services/shellExecutionService.windows.test.js +0 -79
  293. package/dist/src/services/shellExecutionService.windows.test.js.map +0 -1
  294. package/dist/src/services/tool-call-tracker-service.test.d.ts +0 -6
  295. package/dist/src/services/tool-call-tracker-service.test.js +0 -99
  296. package/dist/src/services/tool-call-tracker-service.test.js.map +0 -1
  297. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.d.ts +0 -6
  298. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +0 -187
  299. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +0 -1
  300. package/dist/src/telemetry/loggers.test.d.ts +0 -6
  301. package/dist/src/telemetry/loggers.test.js +0 -573
  302. package/dist/src/telemetry/loggers.test.js.map +0 -1
  303. package/dist/src/telemetry/metrics.test.d.ts +0 -6
  304. package/dist/src/telemetry/metrics.test.js +0 -212
  305. package/dist/src/telemetry/metrics.test.js.map +0 -1
  306. package/dist/src/telemetry/telemetry.test.d.ts +0 -6
  307. package/dist/src/telemetry/telemetry.test.js +0 -54
  308. package/dist/src/telemetry/telemetry.test.js.map +0 -1
  309. package/dist/src/telemetry/uiTelemetry.test.d.ts +0 -6
  310. package/dist/src/telemetry/uiTelemetry.test.js +0 -518
  311. package/dist/src/telemetry/uiTelemetry.test.js.map +0 -1
  312. package/dist/src/tools/ToolFormatter.test.d.ts +0 -16
  313. package/dist/src/tools/ToolFormatter.test.js +0 -349
  314. package/dist/src/tools/ToolFormatter.test.js.map +0 -1
  315. package/dist/src/tools/ToolFormatter.toResponsesTool.test.d.ts +0 -1
  316. package/dist/src/tools/ToolFormatter.toResponsesTool.test.js +0 -241
  317. package/dist/src/tools/ToolFormatter.toResponsesTool.test.js.map +0 -1
  318. package/dist/src/tools/diffOptions.test.d.ts +0 -6
  319. package/dist/src/tools/diffOptions.test.js +0 -119
  320. package/dist/src/tools/diffOptions.test.js.map +0 -1
  321. package/dist/src/tools/edit.test.d.ts +0 -6
  322. package/dist/src/tools/edit.test.js +0 -689
  323. package/dist/src/tools/edit.test.js.map +0 -1
  324. package/dist/src/tools/glob.test.d.ts +0 -6
  325. package/dist/src/tools/glob.test.js +0 -332
  326. package/dist/src/tools/glob.test.js.map +0 -1
  327. package/dist/src/tools/grep.test.d.ts +0 -6
  328. package/dist/src/tools/grep.test.js +0 -272
  329. package/dist/src/tools/grep.test.js.map +0 -1
  330. package/dist/src/tools/ls.test.d.ts +0 -6
  331. package/dist/src/tools/ls.test.js +0 -357
  332. package/dist/src/tools/ls.test.js.map +0 -1
  333. package/dist/src/tools/mcp-client.test.d.ts +0 -6
  334. package/dist/src/tools/mcp-client.test.js +0 -617
  335. package/dist/src/tools/mcp-client.test.js.map +0 -1
  336. package/dist/src/tools/mcp-tool.test.d.ts +0 -6
  337. package/dist/src/tools/mcp-tool.test.js +0 -501
  338. package/dist/src/tools/mcp-tool.test.js.map +0 -1
  339. package/dist/src/tools/memoryTool.test.d.ts +0 -6
  340. package/dist/src/tools/memoryTool.test.js +0 -266
  341. package/dist/src/tools/memoryTool.test.js.map +0 -1
  342. package/dist/src/tools/modifiable-tool.test.d.ts +0 -6
  343. package/dist/src/tools/modifiable-tool.test.js +0 -193
  344. package/dist/src/tools/modifiable-tool.test.js.map +0 -1
  345. package/dist/src/tools/read-file.test.d.ts +0 -6
  346. package/dist/src/tools/read-file.test.js +0 -319
  347. package/dist/src/tools/read-file.test.js.map +0 -1
  348. package/dist/src/tools/read-many-files.test.d.ts +0 -6
  349. package/dist/src/tools/read-many-files.test.js +0 -644
  350. package/dist/src/tools/read-many-files.test.js.map +0 -1
  351. package/dist/src/tools/shell.multibyte.test.d.ts +0 -6
  352. package/dist/src/tools/shell.multibyte.test.js +0 -75
  353. package/dist/src/tools/shell.multibyte.test.js.map +0 -1
  354. package/dist/src/tools/shell.test.d.ts +0 -6
  355. package/dist/src/tools/shell.test.js +0 -367
  356. package/dist/src/tools/shell.test.js.map +0 -1
  357. package/dist/src/tools/todo-pause.spec.d.ts +0 -6
  358. package/dist/src/tools/todo-pause.spec.js +0 -287
  359. package/dist/src/tools/todo-pause.spec.js.map +0 -1
  360. package/dist/src/tools/todo-read.test.d.ts +0 -6
  361. package/dist/src/tools/todo-read.test.js +0 -162
  362. package/dist/src/tools/todo-read.test.js.map +0 -1
  363. package/dist/src/tools/todo-schemas.test.d.ts +0 -6
  364. package/dist/src/tools/todo-schemas.test.js +0 -341
  365. package/dist/src/tools/todo-schemas.test.js.map +0 -1
  366. package/dist/src/tools/todo-store.test.d.ts +0 -6
  367. package/dist/src/tools/todo-store.test.js +0 -169
  368. package/dist/src/tools/todo-store.test.js.map +0 -1
  369. package/dist/src/tools/todo-write.test.d.ts +0 -6
  370. package/dist/src/tools/todo-write.test.js +0 -226
  371. package/dist/src/tools/todo-write.test.js.map +0 -1
  372. package/dist/src/tools/tool-registry.test.d.ts +0 -6
  373. package/dist/src/tools/tool-registry.test.js +0 -468
  374. package/dist/src/tools/tool-registry.test.js.map +0 -1
  375. package/dist/src/tools/tools.test.d.ts +0 -6
  376. package/dist/src/tools/tools.test.js +0 -117
  377. package/dist/src/tools/tools.test.js.map +0 -1
  378. package/dist/src/tools/web-fetch.integration.test.d.ts +0 -6
  379. package/dist/src/tools/web-fetch.integration.test.js +0 -532
  380. package/dist/src/tools/web-fetch.integration.test.js.map +0 -1
  381. package/dist/src/tools/web-search.test.d.ts +0 -6
  382. package/dist/src/tools/web-search.test.js +0 -230
  383. package/dist/src/tools/web-search.test.js.map +0 -1
  384. package/dist/src/tools/write-file.test.d.ts +0 -6
  385. package/dist/src/tools/write-file.test.js +0 -465
  386. package/dist/src/tools/write-file.test.js.map +0 -1
  387. package/dist/src/utils/bfsFileSearch.test.d.ts +0 -6
  388. package/dist/src/utils/bfsFileSearch.test.js +0 -191
  389. package/dist/src/utils/bfsFileSearch.test.js.map +0 -1
  390. package/dist/src/utils/editCorrector.test.d.ts +0 -6
  391. package/dist/src/utils/editCorrector.test.js +0 -564
  392. package/dist/src/utils/editCorrector.test.js.map +0 -1
  393. package/dist/src/utils/editor.test.d.ts +0 -6
  394. package/dist/src/utils/editor.test.js +0 -445
  395. package/dist/src/utils/editor.test.js.map +0 -1
  396. package/dist/src/utils/environmentContext.test.d.ts +0 -6
  397. package/dist/src/utils/environmentContext.test.js +0 -139
  398. package/dist/src/utils/environmentContext.test.js.map +0 -1
  399. package/dist/src/utils/errorReporting.test.d.ts +0 -6
  400. package/dist/src/utils/errorReporting.test.js +0 -130
  401. package/dist/src/utils/errorReporting.test.js.map +0 -1
  402. package/dist/src/utils/fileUtils.test.d.ts +0 -6
  403. package/dist/src/utils/fileUtils.test.js +0 -363
  404. package/dist/src/utils/fileUtils.test.js.map +0 -1
  405. package/dist/src/utils/filesearch/crawlCache.test.d.ts +0 -6
  406. package/dist/src/utils/filesearch/crawlCache.test.js +0 -103
  407. package/dist/src/utils/filesearch/crawlCache.test.js.map +0 -1
  408. package/dist/src/utils/filesearch/fileSearch.test.d.ts +0 -6
  409. package/dist/src/utils/filesearch/fileSearch.test.js +0 -654
  410. package/dist/src/utils/filesearch/fileSearch.test.js.map +0 -1
  411. package/dist/src/utils/filesearch/ignore.test.d.ts +0 -6
  412. package/dist/src/utils/filesearch/ignore.test.js +0 -57
  413. package/dist/src/utils/filesearch/ignore.test.js.map +0 -1
  414. package/dist/src/utils/filesearch/result-cache.test.d.ts +0 -6
  415. package/dist/src/utils/filesearch/result-cache.test.js +0 -47
  416. package/dist/src/utils/filesearch/result-cache.test.js.map +0 -1
  417. package/dist/src/utils/flashFallback.integration.test.d.ts +0 -6
  418. package/dist/src/utils/flashFallback.integration.test.js +0 -120
  419. package/dist/src/utils/flashFallback.integration.test.js.map +0 -1
  420. package/dist/src/utils/generateContentResponseUtilities.test.d.ts +0 -6
  421. package/dist/src/utils/generateContentResponseUtilities.test.js +0 -273
  422. package/dist/src/utils/generateContentResponseUtilities.test.js.map +0 -1
  423. package/dist/src/utils/getFolderStructure.test.d.ts +0 -6
  424. package/dist/src/utils/getFolderStructure.test.js +0 -282
  425. package/dist/src/utils/getFolderStructure.test.js.map +0 -1
  426. package/dist/src/utils/gitIgnoreParser.test.d.ts +0 -6
  427. package/dist/src/utils/gitIgnoreParser.test.js +0 -154
  428. package/dist/src/utils/gitIgnoreParser.test.js.map +0 -1
  429. package/dist/src/utils/memoryDiscovery.test.d.ts +0 -6
  430. package/dist/src/utils/memoryDiscovery.test.js +0 -181
  431. package/dist/src/utils/memoryDiscovery.test.js.map +0 -1
  432. package/dist/src/utils/memoryImportProcessor.test.d.ts +0 -6
  433. package/dist/src/utils/memoryImportProcessor.test.js +0 -715
  434. package/dist/src/utils/memoryImportProcessor.test.js.map +0 -1
  435. package/dist/src/utils/nextSpeakerChecker.test.d.ts +0 -6
  436. package/dist/src/utils/nextSpeakerChecker.test.js +0 -172
  437. package/dist/src/utils/nextSpeakerChecker.test.js.map +0 -1
  438. package/dist/src/utils/partUtils.test.d.ts +0 -6
  439. package/dist/src/utils/partUtils.test.js +0 -130
  440. package/dist/src/utils/partUtils.test.js.map +0 -1
  441. package/dist/src/utils/paths.test.d.ts +0 -6
  442. package/dist/src/utils/paths.test.js +0 -153
  443. package/dist/src/utils/paths.test.js.map +0 -1
  444. package/dist/src/utils/retry.test.d.ts +0 -6
  445. package/dist/src/utils/retry.test.js +0 -322
  446. package/dist/src/utils/retry.test.js.map +0 -1
  447. package/dist/src/utils/safeJsonStringify.test.d.ts +0 -6
  448. package/dist/src/utils/safeJsonStringify.test.js +0 -61
  449. package/dist/src/utils/safeJsonStringify.test.js.map +0 -1
  450. package/dist/src/utils/sanitization.test.d.ts +0 -6
  451. package/dist/src/utils/sanitization.test.js +0 -81
  452. package/dist/src/utils/sanitization.test.js.map +0 -1
  453. package/dist/src/utils/schemaValidator.test.d.ts +0 -6
  454. package/dist/src/utils/schemaValidator.test.js +0 -146
  455. package/dist/src/utils/schemaValidator.test.js.map +0 -1
  456. package/dist/src/utils/secure-browser-launcher.test.d.ts +0 -6
  457. package/dist/src/utils/secure-browser-launcher.test.js +0 -149
  458. package/dist/src/utils/secure-browser-launcher.test.js.map +0 -1
  459. package/dist/src/utils/shell-utils.shellReplacement.test.d.ts +0 -6
  460. package/dist/src/utils/shell-utils.shellReplacement.test.js +0 -149
  461. package/dist/src/utils/shell-utils.shellReplacement.test.js.map +0 -1
  462. package/dist/src/utils/shell-utils.test.d.ts +0 -6
  463. package/dist/src/utils/shell-utils.test.js +0 -200
  464. package/dist/src/utils/shell-utils.test.js.map +0 -1
  465. package/dist/src/utils/summarizer.test.d.ts +0 -6
  466. package/dist/src/utils/summarizer.test.js +0 -131
  467. package/dist/src/utils/summarizer.test.js.map +0 -1
  468. package/dist/src/utils/systemEncoding.test.d.ts +0 -6
  469. package/dist/src/utils/systemEncoding.test.js +0 -368
  470. package/dist/src/utils/systemEncoding.test.js.map +0 -1
  471. package/dist/src/utils/toolOutputLimiter.test.d.ts +0 -6
  472. package/dist/src/utils/toolOutputLimiter.test.js +0 -164
  473. package/dist/src/utils/toolOutputLimiter.test.js.map +0 -1
  474. package/dist/src/utils/unicodeUtils.test.d.ts +0 -6
  475. package/dist/src/utils/unicodeUtils.test.js +0 -120
  476. package/dist/src/utils/unicodeUtils.test.js.map +0 -1
  477. package/dist/src/utils/user_account.test.d.ts +0 -6
  478. package/dist/src/utils/user_account.test.js +0 -153
  479. package/dist/src/utils/user_account.test.js.map +0 -1
  480. package/dist/src/utils/user_id.test.d.ts +0 -6
  481. package/dist/src/utils/user_id.test.js +0 -21
  482. package/dist/src/utils/user_id.test.js.map +0 -1
  483. package/dist/src/utils/workspaceContext.test.d.ts +0 -6
  484. package/dist/src/utils/workspaceContext.test.js +0 -209
  485. package/dist/src/utils/workspaceContext.test.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vybestack/llxprt-code-core",
3
- "version": "0.1.18-nightly.250811.b0db22c6",
3
+ "version": "0.1.18-nightly.250812.12fa8ad2",
4
4
  "description": "LLxprt Code Core",
5
5
  "repository": {
6
6
  "type": "git",
@@ -58,13 +58,15 @@
58
58
  "ws": "^8.18.0"
59
59
  },
60
60
  "devDependencies": {
61
- "@vybestack/llxprt-code-test-utils": "file:../test-utils",
62
61
  "@types/diff": "^7.0.2",
63
62
  "@types/dotenv": "^6.1.1",
64
63
  "@types/micromatch": "^4.0.8",
65
64
  "@types/minimatch": "^5.1.2",
65
+ "@types/node": "^24.2.1",
66
66
  "@types/picomatch": "^4.0.1",
67
67
  "@types/ws": "^8.5.10",
68
+ "@vybestack/llxprt-code-test-utils": "file:../test-utils",
69
+ "fast-check": "^4.2.0",
68
70
  "typescript": "^5.3.3",
69
71
  "vitest": "^3.1.1"
70
72
  },
@@ -1,6 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2025 Vybestack LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- export {};
@@ -1,384 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2025 Vybestack LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
7
- describe('Auth Integration: Complete Precedence Flow and Provider Coordination', () => {
8
- let mockConfig;
9
- let mockOAuthManager;
10
- let mockQwenProvider;
11
- let mockGeminiProvider;
12
- let originalEnv;
13
- beforeEach(() => {
14
- vi.clearAllMocks();
15
- originalEnv = { ...process.env };
16
- // Mock configuration system
17
- mockConfig = {
18
- getOAuthEnabled: vi.fn(),
19
- setOAuthEnabled: vi.fn(),
20
- getHigherPriorityAuth: vi.fn(),
21
- };
22
- // Mock OAuth manager
23
- mockOAuthManager = {
24
- toggleOAuthEnabled: vi.fn(),
25
- isOAuthEnabled: vi.fn(),
26
- getToken: vi.fn(),
27
- getHigherPriorityAuth: vi.fn(),
28
- getAuthStatus: vi.fn(),
29
- };
30
- // Mock provider instances
31
- mockQwenProvider = {
32
- name: 'qwen',
33
- isAuthenticated: vi.fn(),
34
- resolveAuthentication: vi.fn(),
35
- makeApiCall: vi.fn(),
36
- };
37
- mockGeminiProvider = {
38
- name: 'gemini',
39
- isAuthenticated: vi.fn(),
40
- resolveAuthentication: vi.fn(),
41
- makeApiCall: vi.fn(),
42
- };
43
- });
44
- afterEach(() => {
45
- process.env = originalEnv;
46
- });
47
- describe('Complete Auth Precedence Flow', () => {
48
- /**
49
- * @scenario Complete precedence chain with OAuth
50
- * @given CLI arg, env var, and OAuth all available
51
- * @when Provider resolves authentication
52
- * @then Uses CLI arg (highest precedence)
53
- * @and OAuth is not triggered
54
- */
55
- it('should follow complete precedence chain: CLI > Env > OAuth', async () => {
56
- // Given: All auth methods available
57
- const cliArg = 'cli-api-key-123';
58
- process.env.OPENAI_API_KEY = 'env-key-456';
59
- vi.mocked(mockOAuthManager.getToken).mockResolvedValue('oauth-token-789');
60
- vi.mocked(mockOAuthManager.isOAuthEnabled).mockResolvedValue(true);
61
- vi.mocked(mockOAuthManager.getHigherPriorityAuth).mockResolvedValue('CLI API Key');
62
- // When: Provider resolves authentication with CLI key
63
- vi.mocked(mockQwenProvider.resolveAuthentication).mockImplementation(async () => {
64
- // Simulate provider precedence logic
65
- if (cliArg)
66
- return cliArg;
67
- if (process.env.OPENAI_API_KEY)
68
- return process.env.OPENAI_API_KEY;
69
- return await mockOAuthManager.getToken('qwen');
70
- });
71
- const resolvedAuth = await mockQwenProvider.resolveAuthentication();
72
- // Then: Should use CLI key (highest precedence)
73
- expect(resolvedAuth).toBe(cliArg);
74
- expect(mockOAuthManager.getToken).not.toHaveBeenCalled();
75
- });
76
- /**
77
- * @scenario Environment variable fallback
78
- * @given No CLI arg, env var and OAuth available
79
- * @when Provider resolves authentication
80
- * @then Uses env var (second precedence)
81
- * @and OAuth is not triggered
82
- */
83
- it('should fall back to environment variable when no CLI arg', async () => {
84
- // Given: Env var and OAuth available, no CLI arg
85
- process.env.OPENAI_API_KEY = 'env-key-456';
86
- vi.mocked(mockOAuthManager.getToken).mockResolvedValue('oauth-token-789');
87
- vi.mocked(mockOAuthManager.isOAuthEnabled).mockResolvedValue(true);
88
- vi.mocked(mockOAuthManager.getHigherPriorityAuth).mockResolvedValue('Environment Variable');
89
- // When: Provider resolves authentication without CLI key
90
- vi.mocked(mockQwenProvider.resolveAuthentication).mockImplementation(async () => {
91
- if (process.env.OPENAI_API_KEY)
92
- return process.env.OPENAI_API_KEY;
93
- return await mockOAuthManager.getToken('qwen');
94
- });
95
- const resolvedAuth = await mockQwenProvider.resolveAuthentication();
96
- // Then: Should use environment variable (second precedence)
97
- expect(resolvedAuth).toBe('env-key-456');
98
- expect(mockOAuthManager.getToken).not.toHaveBeenCalled();
99
- });
100
- /**
101
- * @scenario OAuth as final fallback
102
- * @given No CLI arg, no env var, OAuth enabled
103
- * @when Provider resolves authentication
104
- * @then Triggers lazy OAuth (lowest precedence)
105
- * @and Returns OAuth token
106
- */
107
- it('should use OAuth as final fallback when no higher precedence auth', async () => {
108
- // Given: Only OAuth available
109
- delete process.env.OPENAI_API_KEY;
110
- vi.mocked(mockOAuthManager.getToken).mockResolvedValue('oauth-token-789');
111
- vi.mocked(mockOAuthManager.isOAuthEnabled).mockResolvedValue(true);
112
- vi.mocked(mockOAuthManager.getHigherPriorityAuth).mockResolvedValue(null);
113
- // When: Provider resolves authentication with OAuth only
114
- vi.mocked(mockQwenProvider.resolveAuthentication).mockImplementation(async () => await mockOAuthManager.getToken('qwen'));
115
- const resolvedAuth = await mockQwenProvider.resolveAuthentication();
116
- // Then: Should use OAuth token (lowest precedence)
117
- expect(resolvedAuth).toBe('oauth-token-789');
118
- expect(mockOAuthManager.getToken).toHaveBeenCalledWith('qwen');
119
- });
120
- });
121
- describe('OAuth Enablement Persistence', () => {
122
- /**
123
- * @scenario OAuth enablement persists across sessions
124
- * @given OAuth enabled for qwen
125
- * @when System restarts (new instances)
126
- * @then OAuth remains enabled
127
- * @and Can be toggled again
128
- */
129
- it('should persist OAuth enablement across system restarts', async () => {
130
- // Given: OAuth enabled for qwen in first session
131
- vi.mocked(mockOAuthManager.toggleOAuthEnabled).mockResolvedValue(true);
132
- vi.mocked(mockOAuthManager.isOAuthEnabled).mockResolvedValue(true);
133
- vi.mocked(mockConfig.getOAuthEnabled).mockReturnValue(true);
134
- // When: Enable OAuth in first session
135
- const firstToggleResult = await mockOAuthManager.toggleOAuthEnabled('qwen');
136
- expect(firstToggleResult).toBe(true);
137
- // Simulate system restart with new instances
138
- const newOAuthManager = { ...mockOAuthManager };
139
- vi.mocked(newOAuthManager.isOAuthEnabled).mockResolvedValue(true); // Persisted state
140
- // Then: OAuth should remain enabled after restart
141
- const persistedState = await newOAuthManager.isOAuthEnabled('qwen');
142
- expect(persistedState).toBe(true);
143
- // And: Can be toggled again (disable)
144
- vi.mocked(newOAuthManager.toggleOAuthEnabled).mockResolvedValue(false);
145
- const secondToggleResult = await newOAuthManager.toggleOAuthEnabled('qwen');
146
- expect(secondToggleResult).toBe(false);
147
- });
148
- /**
149
- * @scenario Independent enablement per provider
150
- * @given Multiple providers registered
151
- * @when OAuth enabled for qwen only
152
- * @then Qwen OAuth enabled, Gemini OAuth disabled
153
- * @and States persist independently
154
- */
155
- it('should maintain independent OAuth enablement per provider', async () => {
156
- // Given: Multiple providers with different OAuth states
157
- vi.mocked(mockOAuthManager.isOAuthEnabled).mockImplementation(async (provider) => provider === 'qwen');
158
- // When: Check enablement for both providers
159
- const qwenEnabled = await mockOAuthManager.isOAuthEnabled('qwen');
160
- const geminiEnabled = await mockOAuthManager.isOAuthEnabled('gemini');
161
- // Then: Should reflect independent states
162
- expect(qwenEnabled).toBe(true);
163
- expect(geminiEnabled).toBe(false);
164
- // And: Status should reflect independent OAuth enablement
165
- vi.mocked(mockOAuthManager.getAuthStatus).mockResolvedValue([
166
- {
167
- provider: 'qwen',
168
- authenticated: false,
169
- authType: 'none',
170
- oauthEnabled: true,
171
- },
172
- {
173
- provider: 'gemini',
174
- authenticated: false,
175
- authType: 'none',
176
- oauthEnabled: false,
177
- },
178
- ]);
179
- const status = await mockOAuthManager.getAuthStatus();
180
- expect(status.find((s) => s.provider === 'qwen')?.oauthEnabled).toBe(true);
181
- expect(status.find((s) => s.provider === 'gemini')?.oauthEnabled).toBe(false);
182
- });
183
- });
184
- describe('Lazy OAuth Triggering During API Calls', () => {
185
- /**
186
- * @scenario Lazy OAuth triggers on first API call
187
- * @given OAuth enabled but not authenticated
188
- * @when Provider makes API call
189
- * @then OAuth flow triggered automatically
190
- * @and Subsequent calls use cached token
191
- */
192
- it('should trigger OAuth lazily on first API call and cache for subsequent calls', async () => {
193
- // Given: OAuth enabled but not yet authenticated
194
- vi.mocked(mockOAuthManager.isOAuthEnabled).mockResolvedValue(true);
195
- vi.mocked(mockOAuthManager.getToken)
196
- .mockResolvedValueOnce(null) // First call - not authenticated
197
- .mockResolvedValue('oauth-token-123'); // Subsequent calls - authenticated
198
- // Mock provider API call that triggers lazy authentication
199
- if (mockQwenProvider.makeApiCall) {
200
- vi.mocked(mockQwenProvider.makeApiCall).mockImplementation(async () => {
201
- const token = await mockOAuthManager.getToken('qwen');
202
- if (!token) {
203
- // Simulate lazy OAuth triggering
204
- await mockOAuthManager.getToken('qwen'); // This would trigger OAuth in real implementation
205
- return 'api-call-success-with-oauth';
206
- }
207
- return 'api-call-success-cached';
208
- });
209
- // When: Make first API call (should trigger OAuth)
210
- const firstCallResult = await mockQwenProvider.makeApiCall();
211
- // Then: Should succeed with OAuth
212
- expect(firstCallResult).toBe('api-call-success-with-oauth');
213
- expect(mockOAuthManager.getToken).toHaveBeenCalledWith('qwen');
214
- // When: Make second API call (should use cached token)
215
- const secondCallResult = await mockQwenProvider.makeApiCall();
216
- // Then: Should succeed with cached token
217
- expect(secondCallResult).toBe('api-call-success-cached');
218
- }
219
- });
220
- /**
221
- * @scenario No OAuth triggering when disabled
222
- * @given OAuth disabled for provider
223
- * @when Provider attempts API call without other auth
224
- * @then API call fails with no authentication
225
- * @and No OAuth flow is triggered
226
- */
227
- it('should not trigger OAuth when disabled, causing API call to fail', async () => {
228
- // Given: OAuth disabled, no other auth methods
229
- vi.mocked(mockOAuthManager.isOAuthEnabled).mockResolvedValue(false);
230
- vi.mocked(mockOAuthManager.getToken).mockResolvedValue(null);
231
- // Mock provider API call that checks authentication
232
- if (mockQwenProvider.makeApiCall) {
233
- vi.mocked(mockQwenProvider.makeApiCall).mockImplementation(async () => {
234
- const token = await mockOAuthManager.getToken('qwen');
235
- if (!token) {
236
- throw new Error('No authentication available');
237
- }
238
- return 'api-call-success';
239
- });
240
- // When: Attempt API call without authentication
241
- await expect(mockQwenProvider.makeApiCall()).rejects.toThrow('No authentication available');
242
- }
243
- // Then: OAuth should not have been triggered
244
- expect(mockOAuthManager.getToken).toHaveBeenCalledWith('qwen');
245
- // No OAuth flow should have been initiated since it's disabled
246
- });
247
- });
248
- describe('Provider Coordination with Auth System', () => {
249
- /**
250
- * @scenario Multiple providers coordinate with shared auth system
251
- * @given Qwen and Gemini providers both using OAuth manager
252
- * @when Each provider resolves authentication independently
253
- * @then Each triggers OAuth only for its own provider
254
- * @and Auth states remain independent
255
- */
256
- it('should coordinate multiple providers with shared auth system', async () => {
257
- // Given: Both providers use same OAuth manager with different states
258
- vi.mocked(mockOAuthManager.isOAuthEnabled).mockImplementation(async (provider) => provider === 'qwen');
259
- vi.mocked(mockOAuthManager.getToken).mockImplementation(async (provider) => (provider === 'qwen' ? 'qwen-oauth-token' : null));
260
- // Mock provider authentication resolution
261
- vi.mocked(mockQwenProvider.resolveAuthentication).mockImplementation(async () => await mockOAuthManager.getToken('qwen'));
262
- vi.mocked(mockGeminiProvider.resolveAuthentication).mockImplementation(async () => await mockOAuthManager.getToken('gemini'));
263
- // When: Both providers resolve authentication
264
- const qwenAuth = await mockQwenProvider.resolveAuthentication();
265
- const geminiAuth = await mockGeminiProvider.resolveAuthentication();
266
- // Then: Each provider gets appropriate result
267
- expect(qwenAuth).toBe('qwen-oauth-token');
268
- expect(geminiAuth).toBe(null);
269
- // And: OAuth manager called for each provider independently
270
- expect(mockOAuthManager.getToken).toHaveBeenCalledWith('qwen');
271
- expect(mockOAuthManager.getToken).toHaveBeenCalledWith('gemini');
272
- });
273
- /**
274
- * @scenario Shared OAuth manager provides consistent status
275
- * @given Multiple providers registered with OAuth manager
276
- * @when Getting auth status
277
- * @then Returns consistent status across all providers
278
- * @and Includes OAuth enablement information
279
- */
280
- it('should provide consistent auth status across multiple providers', async () => {
281
- // Given: OAuth manager with multiple providers in different states
282
- vi.mocked(mockOAuthManager.getAuthStatus).mockResolvedValue([
283
- {
284
- provider: 'qwen',
285
- authenticated: true,
286
- authType: 'oauth',
287
- oauthEnabled: true,
288
- expiresIn: 3600,
289
- },
290
- {
291
- provider: 'gemini',
292
- authenticated: false,
293
- authType: 'none',
294
- oauthEnabled: false,
295
- },
296
- ]);
297
- // When: Get comprehensive auth status
298
- const status = await mockOAuthManager.getAuthStatus();
299
- // Then: Should show consistent state for all providers
300
- expect(status).toHaveLength(2);
301
- const qwenStatus = status.find((s) => s.provider === 'qwen');
302
- const geminiStatus = status.find((s) => s.provider === 'gemini');
303
- expect(qwenStatus).toEqual({
304
- provider: 'qwen',
305
- authenticated: true,
306
- authType: 'oauth',
307
- oauthEnabled: true,
308
- expiresIn: 3600,
309
- });
310
- expect(geminiStatus).toEqual({
311
- provider: 'gemini',
312
- authenticated: false,
313
- authType: 'none',
314
- oauthEnabled: false,
315
- });
316
- });
317
- });
318
- describe('End-to-End Integration Scenarios', () => {
319
- /**
320
- * @scenario Complete user workflow: enable OAuth, make API call, check status
321
- * @given Fresh system with no authentication
322
- * @when User enables OAuth, makes API call, checks status
323
- * @then All steps succeed with proper coordination
324
- */
325
- it('should handle complete user workflow end-to-end', async () => {
326
- // Step 1: Enable OAuth for qwen
327
- vi.mocked(mockOAuthManager.toggleOAuthEnabled).mockResolvedValue(true);
328
- vi.mocked(mockOAuthManager.getHigherPriorityAuth).mockResolvedValue(null);
329
- const enableResult = await mockOAuthManager.toggleOAuthEnabled('qwen');
330
- expect(enableResult).toBe(true);
331
- // Step 2: Simulate API call that triggers lazy OAuth
332
- vi.mocked(mockOAuthManager.isOAuthEnabled).mockResolvedValue(true);
333
- vi.mocked(mockOAuthManager.getToken).mockResolvedValue('oauth-token-from-lazy-trigger');
334
- if (mockQwenProvider.makeApiCall) {
335
- vi.mocked(mockQwenProvider.makeApiCall).mockResolvedValue('api-success');
336
- const apiResult = await mockQwenProvider.makeApiCall();
337
- expect(apiResult).toBe('api-success');
338
- }
339
- // Step 3: Check status shows OAuth enabled and authenticated
340
- vi.mocked(mockOAuthManager.getAuthStatus).mockResolvedValue([
341
- {
342
- provider: 'qwen',
343
- authenticated: true,
344
- authType: 'oauth',
345
- oauthEnabled: true,
346
- expiresIn: 3600,
347
- },
348
- ]);
349
- const finalStatus = await mockOAuthManager.getAuthStatus();
350
- expect(finalStatus[0]).toMatchObject({
351
- provider: 'qwen',
352
- authenticated: true,
353
- authType: 'oauth',
354
- oauthEnabled: true,
355
- });
356
- });
357
- /**
358
- * @scenario Mixed auth methods coordination
359
- * @given Some providers use API keys, others use OAuth
360
- * @when Making API calls with mixed authentication
361
- * @then Each provider uses appropriate auth method
362
- * @and No interference between auth methods
363
- */
364
- it('should coordinate mixed authentication methods without interference', async () => {
365
- // Given: Mixed authentication setup
366
- process.env.OPENAI_API_KEY = 'env-api-key-for-gemini';
367
- vi.mocked(mockOAuthManager.isOAuthEnabled).mockImplementation(async (provider) => provider === 'qwen');
368
- vi.mocked(mockOAuthManager.getToken).mockImplementation(async (provider) => (provider === 'qwen' ? 'qwen-oauth-token' : null));
369
- // Mock providers with different auth strategies
370
- vi.mocked(mockQwenProvider.resolveAuthentication).mockImplementation(async () => await mockOAuthManager.getToken('qwen'));
371
- vi.mocked(mockGeminiProvider.resolveAuthentication).mockImplementation(async () => process.env.OPENAI_API_KEY || null);
372
- // When: Both providers resolve authentication
373
- const qwenAuth = await mockQwenProvider.resolveAuthentication();
374
- const geminiAuth = await mockGeminiProvider.resolveAuthentication();
375
- // Then: Each uses appropriate method without interference
376
- expect(qwenAuth).toBe('qwen-oauth-token'); // OAuth for Qwen
377
- expect(geminiAuth).toBe('env-api-key-for-gemini'); // Env var for Gemini
378
- // And: OAuth manager only called for OAuth-enabled provider
379
- expect(mockOAuthManager.getToken).toHaveBeenCalledWith('qwen');
380
- expect(mockOAuthManager.getToken).not.toHaveBeenCalledWith('gemini');
381
- });
382
- });
383
- });
384
- //# sourceMappingURL=auth-integration.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"auth-integration.spec.js","sourceRoot":"","sources":["../../../src/auth/auth-integration.spec.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2025 Vybestack LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- export {};