@vybestack/llxprt-code-core 0.1.19-beta → 0.1.19

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 (540) hide show
  1. package/README.md +49 -2
  2. package/dist/index.d.ts +6 -0
  3. package/dist/index.js +6 -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/precedence.d.ts +55 -0
  9. package/dist/src/auth/precedence.js +211 -0
  10. package/dist/src/auth/precedence.js.map +1 -0
  11. package/dist/src/auth/qwen-device-flow.d.ts +45 -0
  12. package/dist/src/auth/qwen-device-flow.js +179 -0
  13. package/dist/src/auth/qwen-device-flow.js.map +1 -0
  14. package/dist/src/auth/token-store.d.ts +66 -0
  15. package/dist/src/auth/token-store.js +151 -0
  16. package/dist/src/auth/token-store.js.map +1 -0
  17. package/dist/src/auth/types.d.ts +130 -0
  18. package/dist/src/auth/types.js +60 -0
  19. package/dist/src/auth/types.js.map +1 -0
  20. package/dist/src/code_assist/converter.d.ts +2 -2
  21. package/dist/src/code_assist/converter.js +1 -1
  22. package/dist/src/code_assist/converter.js.map +1 -1
  23. package/dist/src/config/config.d.ts +7 -1
  24. package/dist/src/config/config.js +46 -5
  25. package/dist/src/config/config.js.map +1 -1
  26. package/dist/src/config/endpoints.d.ts +60 -0
  27. package/dist/src/config/endpoints.js +126 -0
  28. package/dist/src/config/endpoints.js.map +1 -0
  29. package/dist/src/config/profileManager.d.ts +14 -4
  30. package/dist/src/config/profileManager.js +90 -11
  31. package/dist/src/config/profileManager.js.map +1 -1
  32. package/dist/src/core/client.d.ts +5 -2
  33. package/dist/src/core/client.js +164 -44
  34. package/dist/src/core/client.js.map +1 -1
  35. package/dist/src/core/contentGenerator.d.ts +4 -1
  36. package/dist/src/core/contentGenerator.js +3 -0
  37. package/dist/src/core/contentGenerator.js.map +1 -1
  38. package/dist/src/core/loggingContentGenerator.d.ts +5 -0
  39. package/dist/src/core/loggingContentGenerator.js +9 -1
  40. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  41. package/dist/src/core/subagent.js +12 -10
  42. package/dist/src/core/subagent.js.map +1 -1
  43. package/dist/src/ide/detect-ide.d.ts +10 -2
  44. package/dist/src/ide/detect-ide.js +48 -5
  45. package/dist/src/ide/detect-ide.js.map +1 -1
  46. package/dist/src/ide/ide-client.js +22 -15
  47. package/dist/src/ide/ide-client.js.map +1 -1
  48. package/dist/src/index.d.ts +10 -1
  49. package/dist/src/index.js +10 -1
  50. package/dist/src/index.js.map +1 -1
  51. package/dist/src/prompt-config/defaults/core-defaults.d.ts +1 -1
  52. package/dist/src/prompt-config/defaults/core-defaults.js +21 -326
  53. package/dist/src/prompt-config/defaults/core-defaults.js.map +1 -1
  54. package/dist/src/prompt-config/defaults/core.md +1 -1
  55. package/dist/src/prompt-config/defaults/provider-defaults.d.ts +1 -1
  56. package/dist/src/prompt-config/defaults/provider-defaults.js +16 -19
  57. package/dist/src/prompt-config/defaults/provider-defaults.js.map +1 -1
  58. package/dist/src/prompt-config/defaults/providers/gemini/models/gemini-2.5-flash/core.md +273 -10
  59. package/dist/src/prompt-config/defaults/providers/gemini/models/gemini-2.5-flash/gemini-2-5-flash/core.md +278 -0
  60. package/dist/src/prompt-config/defaults/tool-defaults.d.ts +1 -1
  61. package/dist/src/prompt-config/defaults/tool-defaults.js +27 -75
  62. package/dist/src/prompt-config/defaults/tool-defaults.js.map +1 -1
  63. package/dist/src/prompt-config/defaults/tools/read-file.md +1 -1
  64. package/dist/src/providers/BaseProvider.d.ts +149 -0
  65. package/dist/src/providers/BaseProvider.js +315 -0
  66. package/dist/src/providers/BaseProvider.js.map +1 -0
  67. package/dist/src/providers/IProvider.d.ts +1 -0
  68. package/dist/src/providers/LoggingProviderWrapper.d.ts +1 -0
  69. package/dist/src/providers/LoggingProviderWrapper.js +3 -0
  70. package/dist/src/providers/LoggingProviderWrapper.js.map +1 -1
  71. package/dist/src/providers/ProviderManager.d.ts +0 -1
  72. package/dist/src/providers/ProviderManager.js +23 -14
  73. package/dist/src/providers/ProviderManager.js.map +1 -1
  74. package/dist/src/providers/anthropic/AnthropicProvider.d.ts +20 -6
  75. package/dist/src/providers/anthropic/AnthropicProvider.js +173 -27
  76. package/dist/src/providers/anthropic/AnthropicProvider.js.map +1 -1
  77. package/dist/src/providers/gemini/GeminiProvider.d.ts +20 -7
  78. package/dist/src/providers/gemini/GeminiProvider.js +182 -147
  79. package/dist/src/providers/gemini/GeminiProvider.js.map +1 -1
  80. package/dist/src/providers/openai/OpenAIProvider.d.ts +53 -6
  81. package/dist/src/providers/openai/OpenAIProvider.js +373 -40
  82. package/dist/src/providers/openai/OpenAIProvider.js.map +1 -1
  83. package/dist/src/providers/openai/RESPONSES_API_MODELS.d.ts +1 -1
  84. package/dist/src/providers/openai/RESPONSES_API_MODELS.js +1 -0
  85. package/dist/src/providers/openai/RESPONSES_API_MODELS.js.map +1 -1
  86. package/dist/src/providers/openai/syntheticToolResponses.d.ts +52 -0
  87. package/dist/src/providers/openai/syntheticToolResponses.js +129 -0
  88. package/dist/src/providers/openai/syntheticToolResponses.js.map +1 -0
  89. package/dist/src/services/loopDetectionService.js +4 -5
  90. package/dist/src/services/loopDetectionService.js.map +1 -1
  91. package/dist/src/settings/SettingsService.d.ts +32 -0
  92. package/dist/src/settings/SettingsService.js +204 -0
  93. package/dist/src/settings/SettingsService.js.map +1 -0
  94. package/dist/src/settings/settingsServiceInstance.d.ts +12 -0
  95. package/dist/src/settings/settingsServiceInstance.js +24 -0
  96. package/dist/src/settings/settingsServiceInstance.js.map +1 -0
  97. package/dist/src/settings/types.d.ts +141 -0
  98. package/dist/src/settings/types.js +5 -0
  99. package/dist/src/settings/types.js.map +1 -0
  100. package/dist/src/tools/edit.js +6 -7
  101. package/dist/src/tools/edit.js.map +1 -1
  102. package/dist/src/tools/glob.js +7 -8
  103. package/dist/src/tools/glob.js.map +1 -1
  104. package/dist/src/tools/grep.js +6 -7
  105. package/dist/src/tools/grep.js.map +1 -1
  106. package/dist/src/tools/ls.js +9 -10
  107. package/dist/src/tools/ls.js.map +1 -1
  108. package/dist/src/tools/mcp-tool.d.ts +3 -8
  109. package/dist/src/tools/mcp-tool.js +5 -18
  110. package/dist/src/tools/mcp-tool.js.map +1 -1
  111. package/dist/src/tools/memoryTool.js +4 -5
  112. package/dist/src/tools/memoryTool.js.map +1 -1
  113. package/dist/src/tools/read-file.js +5 -6
  114. package/dist/src/tools/read-file.js.map +1 -1
  115. package/dist/src/tools/read-many-files.js +17 -18
  116. package/dist/src/tools/read-many-files.js.map +1 -1
  117. package/dist/src/tools/shell.js +8 -9
  118. package/dist/src/tools/shell.js.map +1 -1
  119. package/dist/src/tools/tool-registry.d.ts +1 -15
  120. package/dist/src/tools/tool-registry.js +4 -72
  121. package/dist/src/tools/tool-registry.js.map +1 -1
  122. package/dist/src/tools/tools.d.ts +6 -6
  123. package/dist/src/tools/tools.js +2 -2
  124. package/dist/src/tools/tools.js.map +1 -1
  125. package/dist/src/tools/web-fetch.js +3 -4
  126. package/dist/src/tools/web-fetch.js.map +1 -1
  127. package/dist/src/tools/web-search.js +3 -4
  128. package/dist/src/tools/web-search.js.map +1 -1
  129. package/dist/src/tools/write-file.js +4 -5
  130. package/dist/src/tools/write-file.js.map +1 -1
  131. package/dist/src/utils/editCorrector.js +8 -9
  132. package/dist/src/utils/editCorrector.js.map +1 -1
  133. package/dist/src/utils/nextSpeakerChecker.js +3 -4
  134. package/dist/src/utils/nextSpeakerChecker.js.map +1 -1
  135. package/dist/src/utils/schemaValidator.d.ts +1 -9
  136. package/dist/src/utils/schemaValidator.js +1 -109
  137. package/dist/src/utils/schemaValidator.js.map +1 -1
  138. package/package.json +4 -2
  139. package/dist/src/code_assist/converter.test.d.ts +0 -6
  140. package/dist/src/code_assist/converter.test.js +0 -279
  141. package/dist/src/code_assist/converter.test.js.map +0 -1
  142. package/dist/src/code_assist/oauth2.test.d.ts +0 -6
  143. package/dist/src/code_assist/oauth2.test.js +0 -370
  144. package/dist/src/code_assist/oauth2.test.js.map +0 -1
  145. package/dist/src/code_assist/server.test.d.ts +0 -6
  146. package/dist/src/code_assist/server.test.js +0 -134
  147. package/dist/src/code_assist/server.test.js.map +0 -1
  148. package/dist/src/code_assist/setup.test.d.ts +0 -6
  149. package/dist/src/code_assist/setup.test.js +0 -65
  150. package/dist/src/code_assist/setup.test.js.map +0 -1
  151. package/dist/src/config/config.alwaysAllow.test.d.ts +0 -6
  152. package/dist/src/config/config.alwaysAllow.test.js +0 -84
  153. package/dist/src/config/config.alwaysAllow.test.js.map +0 -1
  154. package/dist/src/config/config.ephemeral.test.d.ts +0 -6
  155. package/dist/src/config/config.ephemeral.test.js +0 -152
  156. package/dist/src/config/config.ephemeral.test.js.map +0 -1
  157. package/dist/src/config/config.test.d.ts +0 -6
  158. package/dist/src/config/config.test.js +0 -369
  159. package/dist/src/config/config.test.js.map +0 -1
  160. package/dist/src/config/flashFallback.test.d.ts +0 -6
  161. package/dist/src/config/flashFallback.test.js +0 -91
  162. package/dist/src/config/flashFallback.test.js.map +0 -1
  163. package/dist/src/core/client.test.d.ts +0 -6
  164. package/dist/src/core/client.test.js +0 -1322
  165. package/dist/src/core/client.test.js.map +0 -1
  166. package/dist/src/core/contentGenerator.test.d.ts +0 -6
  167. package/dist/src/core/contentGenerator.test.js +0 -103
  168. package/dist/src/core/contentGenerator.test.js.map +0 -1
  169. package/dist/src/core/coreToolScheduler.test.d.ts +0 -6
  170. package/dist/src/core/coreToolScheduler.test.js +0 -637
  171. package/dist/src/core/coreToolScheduler.test.js.map +0 -1
  172. package/dist/src/core/geminiChat.test.d.ts +0 -6
  173. package/dist/src/core/geminiChat.test.js +0 -425
  174. package/dist/src/core/geminiChat.test.js.map +0 -1
  175. package/dist/src/core/googleGenAIWrapper.test.d.ts +0 -6
  176. package/dist/src/core/googleGenAIWrapper.test.js +0 -104
  177. package/dist/src/core/googleGenAIWrapper.test.js.map +0 -1
  178. package/dist/src/core/logger.test.d.ts +0 -6
  179. package/dist/src/core/logger.test.js +0 -467
  180. package/dist/src/core/logger.test.js.map +0 -1
  181. package/dist/src/core/nonInteractiveToolExecutor.test.d.ts +0 -6
  182. package/dist/src/core/nonInteractiveToolExecutor.test.js +0 -165
  183. package/dist/src/core/nonInteractiveToolExecutor.test.js.map +0 -1
  184. package/dist/src/core/prompts-async.test.d.ts +0 -6
  185. package/dist/src/core/prompts-async.test.js +0 -115
  186. package/dist/src/core/prompts-async.test.js.map +0 -1
  187. package/dist/src/core/prompts.test.d.ts +0 -6
  188. package/dist/src/core/prompts.test.js +0 -68
  189. package/dist/src/core/prompts.test.js.map +0 -1
  190. package/dist/src/core/subagent.test.d.ts +0 -6
  191. package/dist/src/core/subagent.test.js +0 -519
  192. package/dist/src/core/subagent.test.js.map +0 -1
  193. package/dist/src/core/tokenLimits.test.d.ts +0 -6
  194. package/dist/src/core/tokenLimits.test.js +0 -66
  195. package/dist/src/core/tokenLimits.test.js.map +0 -1
  196. package/dist/src/core/turn.test.d.ts +0 -6
  197. package/dist/src/core/turn.test.js +0 -366
  198. package/dist/src/core/turn.test.js.map +0 -1
  199. package/dist/src/hooks/tool-render-suppression-hook.test.d.ts +0 -6
  200. package/dist/src/hooks/tool-render-suppression-hook.test.js +0 -59
  201. package/dist/src/hooks/tool-render-suppression-hook.test.js.map +0 -1
  202. package/dist/src/ide/ide-installer.test.d.ts +0 -6
  203. package/dist/src/ide/ide-installer.test.js +0 -55
  204. package/dist/src/ide/ide-installer.test.js.map +0 -1
  205. package/dist/src/ide/ideContext.test.d.ts +0 -6
  206. package/dist/src/ide/ideContext.test.js +0 -265
  207. package/dist/src/ide/ideContext.test.js.map +0 -1
  208. package/dist/src/index.test.d.ts +0 -6
  209. package/dist/src/index.test.js +0 -12
  210. package/dist/src/index.test.js.map +0 -1
  211. package/dist/src/integration-tests/todo-system.test.d.ts +0 -6
  212. package/dist/src/integration-tests/todo-system.test.js +0 -46
  213. package/dist/src/integration-tests/todo-system.test.js.map +0 -1
  214. package/dist/src/mcp/google-auth-provider.test.d.ts +0 -6
  215. package/dist/src/mcp/google-auth-provider.test.js +0 -54
  216. package/dist/src/mcp/google-auth-provider.test.js.map +0 -1
  217. package/dist/src/mcp/oauth-provider.test.d.ts +0 -6
  218. package/dist/src/mcp/oauth-provider.test.js +0 -602
  219. package/dist/src/mcp/oauth-provider.test.js.map +0 -1
  220. package/dist/src/mcp/oauth-token-storage.test.d.ts +0 -6
  221. package/dist/src/mcp/oauth-token-storage.test.js +0 -205
  222. package/dist/src/mcp/oauth-token-storage.test.js.map +0 -1
  223. package/dist/src/mcp/oauth-utils.test.d.ts +0 -6
  224. package/dist/src/mcp/oauth-utils.test.js +0 -144
  225. package/dist/src/mcp/oauth-utils.test.js.map +0 -1
  226. package/dist/src/parsers/TextToolCallParser.multibyte.test.d.ts +0 -1
  227. package/dist/src/parsers/TextToolCallParser.multibyte.test.js +0 -42
  228. package/dist/src/parsers/TextToolCallParser.multibyte.test.js.map +0 -1
  229. package/dist/src/parsers/TextToolCallParser.test.d.ts +0 -1
  230. package/dist/src/parsers/TextToolCallParser.test.js +0 -225
  231. package/dist/src/parsers/TextToolCallParser.test.js.map +0 -1
  232. package/dist/src/prompt-config/TemplateEngine.test.d.ts +0 -1
  233. package/dist/src/prompt-config/TemplateEngine.test.js +0 -494
  234. package/dist/src/prompt-config/TemplateEngine.test.js.map +0 -1
  235. package/dist/src/prompt-config/prompt-cache.test.d.ts +0 -6
  236. package/dist/src/prompt-config/prompt-cache.test.js +0 -437
  237. package/dist/src/prompt-config/prompt-cache.test.js.map +0 -1
  238. package/dist/src/prompt-config/prompt-installer.test.d.ts +0 -7
  239. package/dist/src/prompt-config/prompt-installer.test.js +0 -503
  240. package/dist/src/prompt-config/prompt-installer.test.js.map +0 -1
  241. package/dist/src/prompt-config/prompt-loader.test.d.ts +0 -5
  242. package/dist/src/prompt-config/prompt-loader.test.js +0 -413
  243. package/dist/src/prompt-config/prompt-loader.test.js.map +0 -1
  244. package/dist/src/prompt-config/prompt-resolver.test.d.ts +0 -1
  245. package/dist/src/prompt-config/prompt-resolver.test.js +0 -529
  246. package/dist/src/prompt-config/prompt-resolver.test.js.map +0 -1
  247. package/dist/src/prompt-config/prompt-service.test.d.ts +0 -1
  248. package/dist/src/prompt-config/prompt-service.test.js +0 -811
  249. package/dist/src/prompt-config/prompt-service.test.js.map +0 -1
  250. package/dist/src/providers/ProviderManager.gemini-switch.test.d.ts +0 -6
  251. package/dist/src/providers/ProviderManager.gemini-switch.test.js +0 -57
  252. package/dist/src/providers/ProviderManager.gemini-switch.test.js.map +0 -1
  253. package/dist/src/providers/ProviderManager.test.d.ts +0 -6
  254. package/dist/src/providers/ProviderManager.test.js +0 -284
  255. package/dist/src/providers/ProviderManager.test.js.map +0 -1
  256. package/dist/src/providers/adapters/GeminiCompatibleWrapper.test.d.ts +0 -6
  257. package/dist/src/providers/adapters/GeminiCompatibleWrapper.test.js +0 -273
  258. package/dist/src/providers/adapters/GeminiCompatibleWrapper.test.js.map +0 -1
  259. package/dist/src/providers/anthropic/AnthropicProvider.modelParams.test.d.ts +0 -1
  260. package/dist/src/providers/anthropic/AnthropicProvider.modelParams.test.js +0 -48
  261. package/dist/src/providers/anthropic/AnthropicProvider.modelParams.test.js.map +0 -1
  262. package/dist/src/providers/anthropic/AnthropicProvider.test.d.ts +0 -1
  263. package/dist/src/providers/anthropic/AnthropicProvider.test.js +0 -487
  264. package/dist/src/providers/anthropic/AnthropicProvider.test.js.map +0 -1
  265. package/dist/src/providers/gemini/GeminiProvider.integration.test.d.ts +0 -6
  266. package/dist/src/providers/gemini/GeminiProvider.integration.test.js +0 -126
  267. package/dist/src/providers/gemini/GeminiProvider.integration.test.js.map +0 -1
  268. package/dist/src/providers/gemini/GeminiProvider.test.d.ts +0 -6
  269. package/dist/src/providers/gemini/GeminiProvider.test.js +0 -136
  270. package/dist/src/providers/gemini/GeminiProvider.test.js.map +0 -1
  271. package/dist/src/providers/integration/multi-provider.integration.test.d.ts +0 -6
  272. package/dist/src/providers/integration/multi-provider.integration.test.js +0 -292
  273. package/dist/src/providers/integration/multi-provider.integration.test.js.map +0 -1
  274. package/dist/src/providers/openai/ConversationCache.accumTokens.test.d.ts +0 -1
  275. package/dist/src/providers/openai/ConversationCache.accumTokens.test.js +0 -97
  276. package/dist/src/providers/openai/ConversationCache.accumTokens.test.js.map +0 -1
  277. package/dist/src/providers/openai/ConversationCache.test.d.ts +0 -1
  278. package/dist/src/providers/openai/ConversationCache.test.js +0 -113
  279. package/dist/src/providers/openai/ConversationCache.test.js.map +0 -1
  280. package/dist/src/providers/openai/OpenAIProvider.callResponses.stateless.test.d.ts +0 -1
  281. package/dist/src/providers/openai/OpenAIProvider.callResponses.stateless.test.js +0 -189
  282. package/dist/src/providers/openai/OpenAIProvider.callResponses.stateless.test.js.map +0 -1
  283. package/dist/src/providers/openai/OpenAIProvider.integration.test.d.ts +0 -6
  284. package/dist/src/providers/openai/OpenAIProvider.integration.test.js +0 -125
  285. package/dist/src/providers/openai/OpenAIProvider.integration.test.js.map +0 -1
  286. package/dist/src/providers/openai/OpenAIProvider.responses.test.d.ts +0 -1
  287. package/dist/src/providers/openai/OpenAIProvider.responses.test.js +0 -350
  288. package/dist/src/providers/openai/OpenAIProvider.responses.test.js.map +0 -1
  289. package/dist/src/providers/openai/OpenAIProvider.responsesIntegration.test.d.ts +0 -1
  290. package/dist/src/providers/openai/OpenAIProvider.responsesIntegration.test.js +0 -213
  291. package/dist/src/providers/openai/OpenAIProvider.responsesIntegration.test.js.map +0 -1
  292. package/dist/src/providers/openai/OpenAIProvider.shouldUseResponses.test.d.ts +0 -1
  293. package/dist/src/providers/openai/OpenAIProvider.shouldUseResponses.test.js +0 -59
  294. package/dist/src/providers/openai/OpenAIProvider.shouldUseResponses.test.js.map +0 -1
  295. package/dist/src/providers/openai/OpenAIProvider.stateful.integration.test.d.ts +0 -6
  296. package/dist/src/providers/openai/OpenAIProvider.stateful.integration.test.js +0 -105
  297. package/dist/src/providers/openai/OpenAIProvider.stateful.integration.test.js.map +0 -1
  298. package/dist/src/providers/openai/OpenAIProvider.switch.test.d.ts +0 -1
  299. package/dist/src/providers/openai/OpenAIProvider.switch.test.js +0 -256
  300. package/dist/src/providers/openai/OpenAIProvider.switch.test.js.map +0 -1
  301. package/dist/src/providers/openai/OpenAIProvider.test.d.ts +0 -16
  302. package/dist/src/providers/openai/OpenAIProvider.test.js +0 -620
  303. package/dist/src/providers/openai/OpenAIProvider.test.js.map +0 -1
  304. package/dist/src/providers/openai/ResponsesContextTrim.integration.test.d.ts +0 -1
  305. package/dist/src/providers/openai/ResponsesContextTrim.integration.test.js +0 -210
  306. package/dist/src/providers/openai/ResponsesContextTrim.integration.test.js.map +0 -1
  307. package/dist/src/providers/openai/__tests__/formatArrayResponse.test.d.ts +0 -1
  308. package/dist/src/providers/openai/__tests__/formatArrayResponse.test.js +0 -65
  309. package/dist/src/providers/openai/__tests__/formatArrayResponse.test.js.map +0 -1
  310. package/dist/src/providers/openai/buildResponsesRequest.stripToolCalls.test.d.ts +0 -1
  311. package/dist/src/providers/openai/buildResponsesRequest.stripToolCalls.test.js +0 -129
  312. package/dist/src/providers/openai/buildResponsesRequest.stripToolCalls.test.js.map +0 -1
  313. package/dist/src/providers/openai/buildResponsesRequest.test.d.ts +0 -1
  314. package/dist/src/providers/openai/buildResponsesRequest.test.js +0 -406
  315. package/dist/src/providers/openai/buildResponsesRequest.test.js.map +0 -1
  316. package/dist/src/providers/openai/buildResponsesRequest.undefined.test.d.ts +0 -1
  317. package/dist/src/providers/openai/buildResponsesRequest.undefined.test.js +0 -50
  318. package/dist/src/providers/openai/buildResponsesRequest.undefined.test.js.map +0 -1
  319. package/dist/src/providers/openai/estimateRemoteTokens.test.d.ts +0 -1
  320. package/dist/src/providers/openai/estimateRemoteTokens.test.js +0 -125
  321. package/dist/src/providers/openai/estimateRemoteTokens.test.js.map +0 -1
  322. package/dist/src/providers/openai/parseResponsesStream.responsesToolCalls.test.d.ts +0 -1
  323. package/dist/src/providers/openai/parseResponsesStream.responsesToolCalls.test.js +0 -192
  324. package/dist/src/providers/openai/parseResponsesStream.responsesToolCalls.test.js.map +0 -1
  325. package/dist/src/providers/openai/parseResponsesStream.test.d.ts +0 -1
  326. package/dist/src/providers/openai/parseResponsesStream.test.js +0 -151
  327. package/dist/src/providers/openai/parseResponsesStream.test.js.map +0 -1
  328. package/dist/src/services/fileDiscoveryService.test.d.ts +0 -6
  329. package/dist/src/services/fileDiscoveryService.test.js +0 -143
  330. package/dist/src/services/fileDiscoveryService.test.js.map +0 -1
  331. package/dist/src/services/gitService.test.d.ts +0 -6
  332. package/dist/src/services/gitService.test.js +0 -209
  333. package/dist/src/services/gitService.test.js.map +0 -1
  334. package/dist/src/services/loopDetectionService.test.d.ts +0 -6
  335. package/dist/src/services/loopDetectionService.test.js +0 -484
  336. package/dist/src/services/loopDetectionService.test.js.map +0 -1
  337. package/dist/src/services/shellExecutionService.multibyte.test.d.ts +0 -6
  338. package/dist/src/services/shellExecutionService.multibyte.test.js +0 -72
  339. package/dist/src/services/shellExecutionService.multibyte.test.js.map +0 -1
  340. package/dist/src/services/shellExecutionService.test.d.ts +0 -6
  341. package/dist/src/services/shellExecutionService.test.js +0 -272
  342. package/dist/src/services/shellExecutionService.test.js.map +0 -1
  343. package/dist/src/services/shellExecutionService.windows.multibyte.test.d.ts +0 -6
  344. package/dist/src/services/shellExecutionService.windows.multibyte.test.js +0 -98
  345. package/dist/src/services/shellExecutionService.windows.multibyte.test.js.map +0 -1
  346. package/dist/src/services/shellExecutionService.windows.test.d.ts +0 -6
  347. package/dist/src/services/shellExecutionService.windows.test.js +0 -79
  348. package/dist/src/services/shellExecutionService.windows.test.js.map +0 -1
  349. package/dist/src/services/tool-call-tracker-service.test.d.ts +0 -6
  350. package/dist/src/services/tool-call-tracker-service.test.js +0 -99
  351. package/dist/src/services/tool-call-tracker-service.test.js.map +0 -1
  352. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.d.ts +0 -6
  353. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js +0 -187
  354. package/dist/src/telemetry/clearcut-logger/clearcut-logger.test.js.map +0 -1
  355. package/dist/src/telemetry/loggers.test.d.ts +0 -6
  356. package/dist/src/telemetry/loggers.test.js +0 -573
  357. package/dist/src/telemetry/loggers.test.js.map +0 -1
  358. package/dist/src/telemetry/metrics.test.d.ts +0 -6
  359. package/dist/src/telemetry/metrics.test.js +0 -212
  360. package/dist/src/telemetry/metrics.test.js.map +0 -1
  361. package/dist/src/telemetry/telemetry.test.d.ts +0 -6
  362. package/dist/src/telemetry/telemetry.test.js +0 -54
  363. package/dist/src/telemetry/telemetry.test.js.map +0 -1
  364. package/dist/src/telemetry/uiTelemetry.test.d.ts +0 -6
  365. package/dist/src/telemetry/uiTelemetry.test.js +0 -518
  366. package/dist/src/telemetry/uiTelemetry.test.js.map +0 -1
  367. package/dist/src/tools/ToolFormatter.test.d.ts +0 -16
  368. package/dist/src/tools/ToolFormatter.test.js +0 -349
  369. package/dist/src/tools/ToolFormatter.test.js.map +0 -1
  370. package/dist/src/tools/ToolFormatter.toResponsesTool.test.d.ts +0 -1
  371. package/dist/src/tools/ToolFormatter.toResponsesTool.test.js +0 -241
  372. package/dist/src/tools/ToolFormatter.toResponsesTool.test.js.map +0 -1
  373. package/dist/src/tools/diffOptions.test.d.ts +0 -6
  374. package/dist/src/tools/diffOptions.test.js +0 -119
  375. package/dist/src/tools/diffOptions.test.js.map +0 -1
  376. package/dist/src/tools/edit.test.d.ts +0 -6
  377. package/dist/src/tools/edit.test.js +0 -689
  378. package/dist/src/tools/edit.test.js.map +0 -1
  379. package/dist/src/tools/glob.test.d.ts +0 -6
  380. package/dist/src/tools/glob.test.js +0 -332
  381. package/dist/src/tools/glob.test.js.map +0 -1
  382. package/dist/src/tools/grep.test.d.ts +0 -6
  383. package/dist/src/tools/grep.test.js +0 -272
  384. package/dist/src/tools/grep.test.js.map +0 -1
  385. package/dist/src/tools/ls.test.d.ts +0 -6
  386. package/dist/src/tools/ls.test.js +0 -357
  387. package/dist/src/tools/ls.test.js.map +0 -1
  388. package/dist/src/tools/mcp-client.test.d.ts +0 -6
  389. package/dist/src/tools/mcp-client.test.js +0 -617
  390. package/dist/src/tools/mcp-client.test.js.map +0 -1
  391. package/dist/src/tools/mcp-tool.test.d.ts +0 -6
  392. package/dist/src/tools/mcp-tool.test.js +0 -501
  393. package/dist/src/tools/mcp-tool.test.js.map +0 -1
  394. package/dist/src/tools/memoryTool.test.d.ts +0 -6
  395. package/dist/src/tools/memoryTool.test.js +0 -266
  396. package/dist/src/tools/memoryTool.test.js.map +0 -1
  397. package/dist/src/tools/modifiable-tool.test.d.ts +0 -6
  398. package/dist/src/tools/modifiable-tool.test.js +0 -193
  399. package/dist/src/tools/modifiable-tool.test.js.map +0 -1
  400. package/dist/src/tools/read-file.test.d.ts +0 -6
  401. package/dist/src/tools/read-file.test.js +0 -319
  402. package/dist/src/tools/read-file.test.js.map +0 -1
  403. package/dist/src/tools/read-many-files.test.d.ts +0 -6
  404. package/dist/src/tools/read-many-files.test.js +0 -644
  405. package/dist/src/tools/read-many-files.test.js.map +0 -1
  406. package/dist/src/tools/shell.multibyte.test.d.ts +0 -6
  407. package/dist/src/tools/shell.multibyte.test.js +0 -75
  408. package/dist/src/tools/shell.multibyte.test.js.map +0 -1
  409. package/dist/src/tools/shell.test.d.ts +0 -6
  410. package/dist/src/tools/shell.test.js +0 -367
  411. package/dist/src/tools/shell.test.js.map +0 -1
  412. package/dist/src/tools/todo-pause.spec.d.ts +0 -6
  413. package/dist/src/tools/todo-pause.spec.js +0 -287
  414. package/dist/src/tools/todo-pause.spec.js.map +0 -1
  415. package/dist/src/tools/todo-read.test.d.ts +0 -6
  416. package/dist/src/tools/todo-read.test.js +0 -162
  417. package/dist/src/tools/todo-read.test.js.map +0 -1
  418. package/dist/src/tools/todo-schemas.test.d.ts +0 -6
  419. package/dist/src/tools/todo-schemas.test.js +0 -341
  420. package/dist/src/tools/todo-schemas.test.js.map +0 -1
  421. package/dist/src/tools/todo-store.test.d.ts +0 -6
  422. package/dist/src/tools/todo-store.test.js +0 -169
  423. package/dist/src/tools/todo-store.test.js.map +0 -1
  424. package/dist/src/tools/todo-write.test.d.ts +0 -6
  425. package/dist/src/tools/todo-write.test.js +0 -226
  426. package/dist/src/tools/todo-write.test.js.map +0 -1
  427. package/dist/src/tools/tool-registry.test.d.ts +0 -6
  428. package/dist/src/tools/tool-registry.test.js +0 -468
  429. package/dist/src/tools/tool-registry.test.js.map +0 -1
  430. package/dist/src/tools/tools.test.d.ts +0 -6
  431. package/dist/src/tools/tools.test.js +0 -117
  432. package/dist/src/tools/tools.test.js.map +0 -1
  433. package/dist/src/tools/web-fetch.integration.test.d.ts +0 -6
  434. package/dist/src/tools/web-fetch.integration.test.js +0 -532
  435. package/dist/src/tools/web-fetch.integration.test.js.map +0 -1
  436. package/dist/src/tools/web-search.test.d.ts +0 -6
  437. package/dist/src/tools/web-search.test.js +0 -230
  438. package/dist/src/tools/web-search.test.js.map +0 -1
  439. package/dist/src/tools/write-file.test.d.ts +0 -6
  440. package/dist/src/tools/write-file.test.js +0 -465
  441. package/dist/src/tools/write-file.test.js.map +0 -1
  442. package/dist/src/utils/bfsFileSearch.test.d.ts +0 -6
  443. package/dist/src/utils/bfsFileSearch.test.js +0 -191
  444. package/dist/src/utils/bfsFileSearch.test.js.map +0 -1
  445. package/dist/src/utils/editCorrector.test.d.ts +0 -6
  446. package/dist/src/utils/editCorrector.test.js +0 -564
  447. package/dist/src/utils/editCorrector.test.js.map +0 -1
  448. package/dist/src/utils/editor.test.d.ts +0 -6
  449. package/dist/src/utils/editor.test.js +0 -445
  450. package/dist/src/utils/editor.test.js.map +0 -1
  451. package/dist/src/utils/environmentContext.test.d.ts +0 -6
  452. package/dist/src/utils/environmentContext.test.js +0 -139
  453. package/dist/src/utils/environmentContext.test.js.map +0 -1
  454. package/dist/src/utils/errorReporting.test.d.ts +0 -6
  455. package/dist/src/utils/errorReporting.test.js +0 -130
  456. package/dist/src/utils/errorReporting.test.js.map +0 -1
  457. package/dist/src/utils/fileUtils.test.d.ts +0 -6
  458. package/dist/src/utils/fileUtils.test.js +0 -363
  459. package/dist/src/utils/fileUtils.test.js.map +0 -1
  460. package/dist/src/utils/filesearch/crawlCache.test.d.ts +0 -6
  461. package/dist/src/utils/filesearch/crawlCache.test.js +0 -103
  462. package/dist/src/utils/filesearch/crawlCache.test.js.map +0 -1
  463. package/dist/src/utils/filesearch/fileSearch.test.d.ts +0 -6
  464. package/dist/src/utils/filesearch/fileSearch.test.js +0 -654
  465. package/dist/src/utils/filesearch/fileSearch.test.js.map +0 -1
  466. package/dist/src/utils/filesearch/ignore.test.d.ts +0 -6
  467. package/dist/src/utils/filesearch/ignore.test.js +0 -57
  468. package/dist/src/utils/filesearch/ignore.test.js.map +0 -1
  469. package/dist/src/utils/filesearch/result-cache.test.d.ts +0 -6
  470. package/dist/src/utils/filesearch/result-cache.test.js +0 -47
  471. package/dist/src/utils/filesearch/result-cache.test.js.map +0 -1
  472. package/dist/src/utils/flashFallback.integration.test.d.ts +0 -6
  473. package/dist/src/utils/flashFallback.integration.test.js +0 -120
  474. package/dist/src/utils/flashFallback.integration.test.js.map +0 -1
  475. package/dist/src/utils/generateContentResponseUtilities.test.d.ts +0 -6
  476. package/dist/src/utils/generateContentResponseUtilities.test.js +0 -273
  477. package/dist/src/utils/generateContentResponseUtilities.test.js.map +0 -1
  478. package/dist/src/utils/getFolderStructure.test.d.ts +0 -6
  479. package/dist/src/utils/getFolderStructure.test.js +0 -282
  480. package/dist/src/utils/getFolderStructure.test.js.map +0 -1
  481. package/dist/src/utils/gitIgnoreParser.test.d.ts +0 -6
  482. package/dist/src/utils/gitIgnoreParser.test.js +0 -154
  483. package/dist/src/utils/gitIgnoreParser.test.js.map +0 -1
  484. package/dist/src/utils/memoryDiscovery.test.d.ts +0 -6
  485. package/dist/src/utils/memoryDiscovery.test.js +0 -181
  486. package/dist/src/utils/memoryDiscovery.test.js.map +0 -1
  487. package/dist/src/utils/memoryImportProcessor.test.d.ts +0 -6
  488. package/dist/src/utils/memoryImportProcessor.test.js +0 -715
  489. package/dist/src/utils/memoryImportProcessor.test.js.map +0 -1
  490. package/dist/src/utils/nextSpeakerChecker.test.d.ts +0 -6
  491. package/dist/src/utils/nextSpeakerChecker.test.js +0 -172
  492. package/dist/src/utils/nextSpeakerChecker.test.js.map +0 -1
  493. package/dist/src/utils/partUtils.test.d.ts +0 -6
  494. package/dist/src/utils/partUtils.test.js +0 -130
  495. package/dist/src/utils/partUtils.test.js.map +0 -1
  496. package/dist/src/utils/paths.test.d.ts +0 -6
  497. package/dist/src/utils/paths.test.js +0 -153
  498. package/dist/src/utils/paths.test.js.map +0 -1
  499. package/dist/src/utils/retry.test.d.ts +0 -6
  500. package/dist/src/utils/retry.test.js +0 -322
  501. package/dist/src/utils/retry.test.js.map +0 -1
  502. package/dist/src/utils/safeJsonStringify.test.d.ts +0 -6
  503. package/dist/src/utils/safeJsonStringify.test.js +0 -61
  504. package/dist/src/utils/safeJsonStringify.test.js.map +0 -1
  505. package/dist/src/utils/sanitization.test.d.ts +0 -6
  506. package/dist/src/utils/sanitization.test.js +0 -81
  507. package/dist/src/utils/sanitization.test.js.map +0 -1
  508. package/dist/src/utils/schemaValidator.test.d.ts +0 -6
  509. package/dist/src/utils/schemaValidator.test.js +0 -146
  510. package/dist/src/utils/schemaValidator.test.js.map +0 -1
  511. package/dist/src/utils/secure-browser-launcher.test.d.ts +0 -6
  512. package/dist/src/utils/secure-browser-launcher.test.js +0 -149
  513. package/dist/src/utils/secure-browser-launcher.test.js.map +0 -1
  514. package/dist/src/utils/shell-utils.shellReplacement.test.d.ts +0 -6
  515. package/dist/src/utils/shell-utils.shellReplacement.test.js +0 -149
  516. package/dist/src/utils/shell-utils.shellReplacement.test.js.map +0 -1
  517. package/dist/src/utils/shell-utils.test.d.ts +0 -6
  518. package/dist/src/utils/shell-utils.test.js +0 -200
  519. package/dist/src/utils/shell-utils.test.js.map +0 -1
  520. package/dist/src/utils/summarizer.test.d.ts +0 -6
  521. package/dist/src/utils/summarizer.test.js +0 -131
  522. package/dist/src/utils/summarizer.test.js.map +0 -1
  523. package/dist/src/utils/systemEncoding.test.d.ts +0 -6
  524. package/dist/src/utils/systemEncoding.test.js +0 -368
  525. package/dist/src/utils/systemEncoding.test.js.map +0 -1
  526. package/dist/src/utils/toolOutputLimiter.test.d.ts +0 -6
  527. package/dist/src/utils/toolOutputLimiter.test.js +0 -164
  528. package/dist/src/utils/toolOutputLimiter.test.js.map +0 -1
  529. package/dist/src/utils/unicodeUtils.test.d.ts +0 -6
  530. package/dist/src/utils/unicodeUtils.test.js +0 -120
  531. package/dist/src/utils/unicodeUtils.test.js.map +0 -1
  532. package/dist/src/utils/user_account.test.d.ts +0 -6
  533. package/dist/src/utils/user_account.test.js +0 -153
  534. package/dist/src/utils/user_account.test.js.map +0 -1
  535. package/dist/src/utils/user_id.test.d.ts +0 -6
  536. package/dist/src/utils/user_id.test.js +0 -21
  537. package/dist/src/utils/user_id.test.js.map +0 -1
  538. package/dist/src/utils/workspaceContext.test.d.ts +0 -6
  539. package/dist/src/utils/workspaceContext.test.js +0 -209
  540. package/dist/src/utils/workspaceContext.test.js.map +0 -1
@@ -1,494 +0,0 @@
1
- import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest';
2
- import { TemplateEngine } from './TemplateEngine.js';
3
- describe('TemplateEngine', () => {
4
- let engine;
5
- beforeEach(() => {
6
- engine = new TemplateEngine();
7
- });
8
- describe('basic variable substitution', () => {
9
- it('should substitute known variables with actual values', () => {
10
- /**
11
- * @requirement REQ-004.1, REQ-004.2
12
- * @scenario Template contains MODEL and PROVIDER variables
13
- * @given Template: "You are running on {{PROVIDER}} using model {{MODEL}}"
14
- * @when processTemplate() called with variables
15
- * @then Returns: "You are running on anthropic using model claude-3-opus"
16
- */
17
- const template = 'You are running on {{PROVIDER}} using model {{MODEL}}';
18
- const variables = {
19
- PROVIDER: 'anthropic',
20
- MODEL: 'claude-3-opus',
21
- };
22
- const result = engine.processTemplate(template, variables);
23
- expect(result).toBe('You are running on anthropic using model claude-3-opus');
24
- });
25
- it('should handle single variable substitution', () => {
26
- /**
27
- * @requirement REQ-004.1, REQ-004.2
28
- * @scenario Template with only MODEL variable
29
- * @given Template: "Current model: {{MODEL}}"
30
- * @when processTemplate() called with MODEL value
31
- * @then Returns: "Current model: gpt-4"
32
- */
33
- const template = 'Current model: {{MODEL}}';
34
- const variables = {
35
- MODEL: 'gpt-4',
36
- PROVIDER: 'openai',
37
- };
38
- const result = engine.processTemplate(template, variables);
39
- expect(result).toBe('Current model: gpt-4');
40
- });
41
- });
42
- describe('optional variable handling', () => {
43
- it('should handle optional TOOL_NAME variable when provided', () => {
44
- /**
45
- * @requirement REQ-004.2
46
- * @scenario Template with optional TOOL_NAME
47
- * @given Template with TOOL_NAME variable
48
- * @when Variable provided in context
49
- * @then Substitutes the tool name
50
- */
51
- const template = 'Use the {{TOOL_NAME}} tool carefully';
52
- const variables = {
53
- PROVIDER: 'gemini',
54
- MODEL: 'gemini-pro',
55
- TOOL_NAME: 'ReadFile',
56
- };
57
- const result = engine.processTemplate(template, variables);
58
- expect(result).toBe('Use the ReadFile tool carefully');
59
- });
60
- it('should handle missing optional variables by replacing with empty string', () => {
61
- /**
62
- * @requirement REQ-004.2
63
- * @scenario Template with optional variable not provided
64
- * @given Template with TOOL_NAME but no value provided
65
- * @when processTemplate called
66
- * @then Replaces with empty string
67
- */
68
- const template = 'Tool: {{TOOL_NAME}} for {{PROVIDER}}';
69
- const variables = {
70
- PROVIDER: 'ollama',
71
- MODEL: 'llama2',
72
- };
73
- const result = engine.processTemplate(template, variables);
74
- expect(result).toBe('Tool: for ollama');
75
- });
76
- it('should handle undefined variable values as empty strings', () => {
77
- /**
78
- * @requirement REQ-004.2
79
- * @scenario Variable exists but value is undefined
80
- * @given Template with variable whose value is undefined
81
- * @when processTemplate called
82
- * @then Treats undefined as empty string
83
- */
84
- const template = 'Provider: {{PROVIDER}}, Tool: {{TOOL_NAME}}';
85
- const variables = {
86
- PROVIDER: 'azure',
87
- MODEL: 'gpt-35-turbo',
88
- TOOL_NAME: undefined,
89
- };
90
- const result = engine.processTemplate(template, variables);
91
- expect(result).toBe('Provider: azure, Tool: ');
92
- });
93
- });
94
- describe('malformed variable handling', () => {
95
- it('should leave malformed variables unchanged', () => {
96
- /**
97
- * @requirement REQ-004.3
98
- * @scenario Template contains malformed variable syntax
99
- * @given Various malformed patterns
100
- * @when processTemplate called
101
- * @then Malformed parts remain unchanged
102
- */
103
- const template = 'Valid {{MODEL}} but {{BROKEN and {{UNCLOSED';
104
- const variables = {
105
- MODEL: 'gpt-4',
106
- PROVIDER: 'openai',
107
- };
108
- const result = engine.processTemplate(template, variables);
109
- expect(result).toBe('Valid gpt-4 but {{BROKEN and {{UNCLOSED');
110
- });
111
- it('should handle nested brackets without processing inner content', () => {
112
- /**
113
- * @requirement REQ-004.3
114
- * @scenario Nested variable brackets
115
- * @given Template with {{{{VAR}}}}
116
- * @when processTemplate called
117
- * @then Only outer brackets processed
118
- */
119
- const template = 'Nested {{{{MODEL}}}} here';
120
- const variables = {
121
- MODEL: 'claude',
122
- PROVIDER: 'anthropic',
123
- };
124
- const result = engine.processTemplate(template, variables);
125
- // Should process outer brackets, leaving {{claude}}
126
- expect(result).toBe('Nested {{claude}} here');
127
- });
128
- it('should handle mismatched brackets', () => {
129
- /**
130
- * @requirement REQ-004.3
131
- * @scenario Template with mismatched brackets
132
- * @given }}{{MODEL}}{{ pattern
133
- * @when processTemplate called
134
- * @then Only properly formed variables substituted
135
- */
136
- const template = '}}Start {{MODEL}} End{{';
137
- const variables = {
138
- MODEL: 'llama-2',
139
- PROVIDER: 'meta',
140
- };
141
- const result = engine.processTemplate(template, variables);
142
- expect(result).toBe('}}Start llama-2 End{{');
143
- });
144
- });
145
- describe('edge cases', () => {
146
- it('should handle empty template', () => {
147
- /**
148
- * @requirement REQ-004.1
149
- * @scenario Empty template string
150
- * @given Empty string template
151
- * @when processTemplate called
152
- * @then Returns empty string
153
- */
154
- const result = engine.processTemplate('', {
155
- MODEL: 'test',
156
- PROVIDER: 'test',
157
- });
158
- expect(result).toBe('');
159
- });
160
- it('should handle template with no variables', () => {
161
- /**
162
- * @requirement REQ-004.1
163
- * @scenario Template without any variables
164
- * @given Plain text template
165
- * @when processTemplate called
166
- * @then Returns unchanged template
167
- */
168
- const template = 'This is plain text with no variables';
169
- const result = engine.processTemplate(template, {
170
- MODEL: 'test',
171
- PROVIDER: 'test',
172
- });
173
- expect(result).toBe(template);
174
- });
175
- it('should handle variables at start and end of template', () => {
176
- /**
177
- * @requirement REQ-004.1
178
- * @scenario Variables at boundaries
179
- * @given Template starting and ending with variables
180
- * @when processTemplate called
181
- * @then All variables substituted correctly
182
- */
183
- const template = '{{PROVIDER}} is the provider and model is {{MODEL}}';
184
- const variables = {
185
- PROVIDER: 'azure',
186
- MODEL: 'gpt-35-turbo',
187
- };
188
- const result = engine.processTemplate(template, variables);
189
- expect(result).toBe('azure is the provider and model is gpt-35-turbo');
190
- });
191
- it('should handle null content', () => {
192
- /**
193
- * @requirement REQ-004.1
194
- * @scenario Null template content
195
- * @given null passed as template
196
- * @when processTemplate called
197
- * @then Returns empty string
198
- */
199
- const result = engine.processTemplate(null, {
200
- MODEL: 'test',
201
- PROVIDER: 'test',
202
- });
203
- expect(result).toBe('');
204
- });
205
- it('should handle undefined content', () => {
206
- /**
207
- * @requirement REQ-004.1
208
- * @scenario Undefined template content
209
- * @given undefined passed as template
210
- * @when processTemplate called
211
- * @then Returns empty string
212
- */
213
- const result = engine.processTemplate(undefined, {
214
- MODEL: 'test',
215
- PROVIDER: 'test',
216
- });
217
- expect(result).toBe('');
218
- });
219
- it('should handle null variables map', () => {
220
- /**
221
- * @requirement REQ-004.1
222
- * @scenario Null variables map
223
- * @given Valid template but null variables
224
- * @when processTemplate called
225
- * @then Variables treated as missing (empty string)
226
- */
227
- const template = 'Model: {{MODEL}}';
228
- const result = engine.processTemplate(template, null);
229
- expect(result).toBe('Model: ');
230
- });
231
- it('should handle undefined variables map', () => {
232
- /**
233
- * @requirement REQ-004.1
234
- * @scenario Undefined variables map
235
- * @given Valid template but undefined variables
236
- * @when processTemplate called
237
- * @then Variables treated as missing (empty string)
238
- */
239
- const template = 'Provider: {{PROVIDER}}';
240
- const result = engine.processTemplate(template, undefined);
241
- expect(result).toBe('Provider: ');
242
- });
243
- });
244
- describe('complex templates', () => {
245
- it('should handle multiple occurrences of same variable', () => {
246
- /**
247
- * @requirement REQ-004.1
248
- * @scenario Same variable appears multiple times
249
- * @given Template with repeated variables
250
- * @when processTemplate called
251
- * @then All occurrences substituted
252
- */
253
- const template = '{{MODEL}} is great. I repeat, {{MODEL}} is great!';
254
- const variables = {
255
- MODEL: 'claude-3',
256
- PROVIDER: 'anthropic',
257
- };
258
- const result = engine.processTemplate(template, variables);
259
- expect(result).toBe('claude-3 is great. I repeat, claude-3 is great!');
260
- });
261
- it('should handle adjacent variables', () => {
262
- /**
263
- * @requirement REQ-004.1
264
- * @scenario Variables with no space between
265
- * @given {{VAR1}}{{VAR2}}
266
- * @when processTemplate called
267
- * @then Both substituted correctly
268
- */
269
- const template = '{{PROVIDER}}{{MODEL}}';
270
- const variables = {
271
- PROVIDER: 'google/',
272
- MODEL: 'palm2',
273
- };
274
- const result = engine.processTemplate(template, variables);
275
- expect(result).toBe('google/palm2');
276
- });
277
- it('should handle all three variables in one template', () => {
278
- /**
279
- * @requirement REQ-004.2
280
- * @scenario Template using all supported variables
281
- * @given Template with PROVIDER, MODEL, and TOOL_NAME
282
- * @when processTemplate called
283
- * @then All variables substituted
284
- */
285
- const template = 'Using {{PROVIDER}} provider with {{MODEL}} model for {{TOOL_NAME}} tool';
286
- const variables = {
287
- PROVIDER: 'anthropic',
288
- MODEL: 'claude-3-sonnet',
289
- TOOL_NAME: 'WebSearch',
290
- };
291
- const result = engine.processTemplate(template, variables);
292
- expect(result).toBe('Using anthropic provider with claude-3-sonnet model for WebSearch tool');
293
- });
294
- it('should handle variables with whitespace inside brackets', () => {
295
- /**
296
- * @requirement REQ-004.1
297
- * @scenario Variables with internal whitespace
298
- * @given {{ MODEL }} with spaces
299
- * @when processTemplate called
300
- * @then Whitespace trimmed, variable substituted
301
- */
302
- const template = 'Model: {{ MODEL }} and {{ PROVIDER }}';
303
- const variables = {
304
- MODEL: 'gpt-4',
305
- PROVIDER: 'openai',
306
- };
307
- const result = engine.processTemplate(template, variables);
308
- expect(result).toBe('Model: gpt-4 and openai');
309
- });
310
- });
311
- describe('special characters in values', () => {
312
- it('should handle special characters in variable values', () => {
313
- /**
314
- * @requirement REQ-004.1
315
- * @scenario Variable values contain special characters
316
- * @given Values with quotes, brackets, etc
317
- * @when processTemplate called
318
- * @then Values inserted as-is
319
- */
320
- const template = 'Model: {{MODEL}}';
321
- const variables = {
322
- MODEL: 'model-with-"quotes"-and-{brackets}',
323
- PROVIDER: 'test',
324
- };
325
- const result = engine.processTemplate(template, variables);
326
- expect(result).toBe('Model: model-with-"quotes"-and-{brackets}');
327
- });
328
- it('should handle newlines in variable values', () => {
329
- /**
330
- * @requirement REQ-004.1
331
- * @scenario Variable values contain newlines
332
- * @given Values with line breaks
333
- * @when processTemplate called
334
- * @then Values inserted preserving newlines
335
- */
336
- const template = 'Description: {{MODEL}}';
337
- const variables = {
338
- MODEL: 'line1\nline2\nline3',
339
- PROVIDER: 'test',
340
- };
341
- const result = engine.processTemplate(template, variables);
342
- expect(result).toBe('Description: line1\nline2\nline3');
343
- });
344
- it('should handle unicode in variable values', () => {
345
- /**
346
- * @requirement REQ-004.1
347
- * @scenario Variable values contain unicode
348
- * @given Values with emoji and unicode characters
349
- * @when processTemplate called
350
- * @then Values inserted preserving unicode
351
- */
352
- const template = 'Model: {{MODEL}}';
353
- const variables = {
354
- MODEL: 'claude-3-🚀-日本語',
355
- PROVIDER: 'anthropic',
356
- };
357
- const result = engine.processTemplate(template, variables);
358
- expect(result).toBe('Model: claude-3-🚀-日本語');
359
- });
360
- });
361
- describe('debug logging', () => {
362
- let originalDebug;
363
- let consoleSpy;
364
- beforeEach(() => {
365
- originalDebug = process.env.DEBUG;
366
- consoleSpy = vi.spyOn(console, 'log').mockImplementation(() => { });
367
- });
368
- afterEach(() => {
369
- process.env.DEBUG = originalDebug;
370
- consoleSpy.mockRestore();
371
- });
372
- it('should log substitutions when DEBUG=1', () => {
373
- /**
374
- * @requirement REQ-010.4
375
- * @scenario DEBUG environment variable is set
376
- * @given DEBUG=1 and template with variables
377
- * @when processTemplate called
378
- * @then Logs variable substitutions
379
- */
380
- process.env.DEBUG = '1';
381
- const template = 'Provider: {{PROVIDER}}';
382
- const variables = {
383
- PROVIDER: 'anthropic',
384
- MODEL: 'claude',
385
- };
386
- engine.processTemplate(template, variables);
387
- expect(consoleSpy).toHaveBeenCalledWith(expect.stringContaining('PROVIDER'));
388
- });
389
- it('should not log when DEBUG is not set', () => {
390
- /**
391
- * @requirement REQ-010.4
392
- * @scenario DEBUG environment variable is not set
393
- * @given No DEBUG and template with variables
394
- * @when processTemplate called
395
- * @then No logging occurs
396
- */
397
- delete process.env.DEBUG;
398
- const template = 'Provider: {{PROVIDER}}';
399
- const variables = {
400
- PROVIDER: 'anthropic',
401
- MODEL: 'claude',
402
- };
403
- engine.processTemplate(template, variables);
404
- expect(consoleSpy).not.toHaveBeenCalled();
405
- });
406
- it('should log through options when debug option is true', () => {
407
- /**
408
- * @requirement REQ-010.4
409
- * @scenario Debug option passed explicitly
410
- * @given options.debug = true
411
- * @when processTemplate called
412
- * @then Logs variable substitutions
413
- */
414
- const template = 'Model: {{MODEL}}';
415
- const variables = {
416
- MODEL: 'gpt-4',
417
- PROVIDER: 'openai',
418
- };
419
- const options = { debug: true };
420
- engine.processTemplate(template, variables, options);
421
- expect(consoleSpy).toHaveBeenCalledWith(expect.stringContaining('MODEL'));
422
- });
423
- it('should log multiple substitutions', () => {
424
- /**
425
- * @requirement REQ-010.4
426
- * @scenario Multiple variables substituted
427
- * @given Template with multiple variables and DEBUG=1
428
- * @when processTemplate called
429
- * @then Logs each substitution
430
- */
431
- process.env.DEBUG = '1';
432
- const template = '{{PROVIDER}} uses {{MODEL}} with {{TOOL_NAME}}';
433
- const variables = {
434
- PROVIDER: 'google',
435
- MODEL: 'gemini-pro',
436
- TOOL_NAME: 'Search',
437
- };
438
- engine.processTemplate(template, variables);
439
- expect(consoleSpy).toHaveBeenCalledWith(expect.stringContaining('PROVIDER'));
440
- expect(consoleSpy).toHaveBeenCalledWith(expect.stringContaining('MODEL'));
441
- expect(consoleSpy).toHaveBeenCalledWith(expect.stringContaining('TOOL_NAME'));
442
- });
443
- });
444
- describe('variable extraction edge cases', () => {
445
- it('should handle empty variable names', () => {
446
- /**
447
- * @requirement REQ-004.3
448
- * @scenario Empty variable name between brackets
449
- * @given Template with {{}}
450
- * @when processTemplate called
451
- * @then Empty brackets left unchanged
452
- */
453
- const template = 'Empty {{}} variable';
454
- const variables = { MODEL: 'test', PROVIDER: 'test' };
455
- const result = engine.processTemplate(template, variables);
456
- expect(result).toBe('Empty {{}} variable');
457
- });
458
- it('should handle very long variable names', () => {
459
- /**
460
- * @requirement REQ-004.1
461
- * @scenario Variable with very long name
462
- * @given Template with 100+ character variable name
463
- * @when processTemplate called
464
- * @then Variable processed normally
465
- */
466
- const longVarName = 'A'.repeat(100);
467
- const template = `Long {{${longVarName}}} variable`;
468
- const variables = {
469
- [longVarName]: 'replaced',
470
- MODEL: 'test',
471
- PROVIDER: 'test',
472
- };
473
- const result = engine.processTemplate(template, variables);
474
- expect(result).toBe('Long replaced variable');
475
- });
476
- it('should handle consecutive bracket patterns', () => {
477
- /**
478
- * @requirement REQ-004.1
479
- * @scenario Multiple {{ }} patterns in sequence
480
- * @given {{{{}}}}{{MODEL}}{{{{}}}}
481
- * @when processTemplate called
482
- * @then Only valid variables substituted
483
- */
484
- const template = '{{{{}}}}{{MODEL}}{{{{}}}}';
485
- const variables = {
486
- MODEL: 'claude',
487
- PROVIDER: 'anthropic',
488
- };
489
- const result = engine.processTemplate(template, variables);
490
- expect(result).toBe('{{{{}}}}claude{{{{}}}}');
491
- });
492
- });
493
- });
494
- //# sourceMappingURL=TemplateEngine.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TemplateEngine.test.js","sourceRoot":"","sources":["../../../src/prompt-config/TemplateEngine.test.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright 2025 Google LLC
4
- * SPDX-License-Identifier: Apache-2.0
5
- */
6
- export {};