@tyvm/knowhow 0.0.159 → 0.0.161

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 (906) hide show
  1. package/README.md +6 -6
  2. package/package.json +2 -2
  3. package/ts_build/package.json +2 -2
  4. package/ts_build/src/chat/CliChatService.d.ts +2 -1
  5. package/ts_build/src/chat/CliChatService.js +29 -3
  6. package/ts_build/src/chat/CliChatService.js.map +1 -1
  7. package/ts_build/src/chat/modules/AgentModule.js +21 -17
  8. package/ts_build/src/chat/modules/AgentModule.js.map +1 -1
  9. package/ts_build/src/chat/renderer/ConsoleRenderer.js +32 -25
  10. package/ts_build/src/chat/renderer/ConsoleRenderer.js.map +1 -1
  11. package/ts_build/src/clients/anthropic.js +4 -1
  12. package/ts_build/src/clients/anthropic.js.map +1 -1
  13. package/ts_build/src/clients/contextLimits.js +13 -7
  14. package/ts_build/src/clients/contextLimits.js.map +1 -1
  15. package/ts_build/src/clients/index.js +3 -1
  16. package/ts_build/src/clients/index.js.map +1 -1
  17. package/ts_build/src/clients/openai.js +18 -5
  18. package/ts_build/src/clients/openai.js.map +1 -1
  19. package/ts_build/src/clients/pricing/anthropic.d.ts +2 -0
  20. package/ts_build/src/clients/pricing/anthropic.js +21 -1
  21. package/ts_build/src/clients/pricing/anthropic.js.map +1 -1
  22. package/ts_build/src/clients/pricing/openai.d.ts +2 -0
  23. package/ts_build/src/clients/pricing/openai.js +32 -7
  24. package/ts_build/src/clients/pricing/openai.js.map +1 -1
  25. package/ts_build/src/clients/pricing/types.d.ts +4 -0
  26. package/ts_build/src/clients/pricing/types.js.map +1 -1
  27. package/ts_build/src/clients/pricing/xai.d.ts +2 -0
  28. package/ts_build/src/clients/pricing/xai.js +13 -8
  29. package/ts_build/src/clients/pricing/xai.js.map +1 -1
  30. package/ts_build/src/clients/xai.js +20 -8
  31. package/ts_build/src/clients/xai.js.map +1 -1
  32. package/ts_build/src/commands/misc.js +15 -2
  33. package/ts_build/src/commands/misc.js.map +1 -1
  34. package/ts_build/src/logger.d.ts +1 -0
  35. package/ts_build/src/logger.js +13 -1
  36. package/ts_build/src/logger.js.map +1 -1
  37. package/ts_build/src/remotes.d.ts +2 -0
  38. package/ts_build/src/remotes.js +20 -2
  39. package/ts_build/src/remotes.js.map +1 -1
  40. package/ts_build/src/tunnel.js +7 -2
  41. package/ts_build/src/tunnel.js.map +1 -1
  42. package/ts_build/src/types.d.ts +12 -1
  43. package/ts_build/src/types.js.map +1 -1
  44. package/ts_build/src/utils/InputQueueManager.d.ts +8 -1
  45. package/ts_build/src/utils/InputQueueManager.js +74 -3
  46. package/ts_build/src/utils/InputQueueManager.js.map +1 -1
  47. package/ts_build/src/utils/index.d.ts +3 -1
  48. package/ts_build/src/utils/index.js +11 -3
  49. package/ts_build/src/utils/index.js.map +1 -1
  50. package/ts_build/src/worker.js +4 -1
  51. package/ts_build/src/worker.js.map +1 -1
  52. package/ts_build/src/workers/tools/listAllowedPorts.d.ts +2 -1
  53. package/ts_build/src/workers/tools/listAllowedPorts.js +1 -1
  54. package/ts_build/src/workers/tools/listAllowedPorts.js.map +1 -1
  55. package/CONFIG.md +0 -429
  56. package/PROCESSING.md +0 -450
  57. package/WORKER.md +0 -260
  58. package/autodoc/README.md +0 -324
  59. package/autodoc/chat-guide.md +0 -444
  60. package/autodoc/cli-reference.md +0 -720
  61. package/autodoc/config-reference.md +0 -642
  62. package/autodoc/embeddings-guide.md +0 -467
  63. package/autodoc/generate-guide.md +0 -437
  64. package/autodoc/language-plugin-guide.md +0 -417
  65. package/autodoc/modules-guide.md +0 -379
  66. package/autodoc/plugins-guide.md +0 -721
  67. package/autodoc/quickstart-guide.md +0 -126
  68. package/autodoc/skills-guide.md +0 -584
  69. package/autodoc/worker-guide.md +0 -519
  70. package/docs/input-queue-manager.md +0 -142
  71. package/docs/multi-worker-management.md +0 -142
  72. package/docs/shell-commands.md +0 -174
  73. package/jest.config.js +0 -19
  74. package/jest.manual.config.js +0 -19
  75. package/scripts/README.md +0 -119
  76. package/scripts/build-for-node.sh +0 -148
  77. package/scripts/cache-miss-debug.ts +0 -365
  78. package/scripts/check-isolated-deps.sh +0 -69
  79. package/scripts/check-model-pricing.ts +0 -509
  80. package/scripts/compare-openrouter-coverage.ts +0 -576
  81. package/scripts/migrate-usage-json.js +0 -147
  82. package/scripts/publish.sh +0 -86
  83. package/scripts/restore_keys.sh +0 -59
  84. package/scripts/test-repetition-hint.ts +0 -302
  85. package/scripts/unset_keys.sh +0 -60
  86. package/src/agents/base/base.ts +0 -1963
  87. package/src/agents/base/prompt.ts +0 -55
  88. package/src/agents/configurable/ConfigAgent.ts +0 -24
  89. package/src/agents/developer/developer.ts +0 -76
  90. package/src/agents/historyRollback.ts +0 -36
  91. package/src/agents/index.ts +0 -52
  92. package/src/agents/interface.ts +0 -11
  93. package/src/agents/patcher/codebase.md +0 -27
  94. package/src/agents/patcher/patcher.ts +0 -131
  95. package/src/agents/researcher/researcher.ts +0 -115
  96. package/src/agents/setup/setup.ts +0 -63
  97. package/src/agents/tools/addInternalTools.ts +0 -21
  98. package/src/agents/tools/agentCall.ts +0 -34
  99. package/src/agents/tools/aiClient.ts +0 -178
  100. package/src/agents/tools/askHuman.ts +0 -10
  101. package/src/agents/tools/callPlugin.ts +0 -10
  102. package/src/agents/tools/connectAgent.ts +0 -355
  103. package/src/agents/tools/embeddingSearch.ts +0 -6
  104. package/src/agents/tools/execCommand.ts +0 -162
  105. package/src/agents/tools/fileSearch.ts +0 -35
  106. package/src/agents/tools/finalAnswer.ts +0 -4
  107. package/src/agents/tools/googleSearch.ts +0 -243
  108. package/src/agents/tools/index.ts +0 -33
  109. package/src/agents/tools/language/definitions.ts +0 -105
  110. package/src/agents/tools/language/index.ts +0 -20
  111. package/src/agents/tools/lazy/definitions.ts +0 -72
  112. package/src/agents/tools/lazy/disableTools.ts +0 -16
  113. package/src/agents/tools/lazy/enableTools.ts +0 -16
  114. package/src/agents/tools/lazy/index.ts +0 -3
  115. package/src/agents/tools/lazy/listAvailableTools.ts +0 -17
  116. package/src/agents/tools/lintFile.ts +0 -19
  117. package/src/agents/tools/list.ts +0 -739
  118. package/src/agents/tools/loadImageAsBase64.ts +0 -83
  119. package/src/agents/tools/loadWebpage.ts +0 -19
  120. package/src/agents/tools/mcp/connectMcpServer.ts +0 -40
  121. package/src/agents/tools/mcp/definitions.ts +0 -67
  122. package/src/agents/tools/mcp/disconnectMcpServer.ts +0 -40
  123. package/src/agents/tools/mcp/index.ts +0 -3
  124. package/src/agents/tools/mcp/listAvailableMcpServers.ts +0 -28
  125. package/src/agents/tools/minimal/callTool.ts +0 -45
  126. package/src/agents/tools/minimal/definitions.ts +0 -50
  127. package/src/agents/tools/minimal/index.ts +0 -3
  128. package/src/agents/tools/minimal/inspectTools.ts +0 -27
  129. package/src/agents/tools/modifyFile.ts +0 -53
  130. package/src/agents/tools/observe.ts +0 -247
  131. package/src/agents/tools/patch.ts +0 -1287
  132. package/src/agents/tools/readBlocks.ts +0 -83
  133. package/src/agents/tools/readFile.ts +0 -105
  134. package/src/agents/tools/replyToParent.ts +0 -123
  135. package/src/agents/tools/runGenerate.ts +0 -210
  136. package/src/agents/tools/scanFile.ts +0 -16
  137. package/src/agents/tools/sendAgentMessage.ts +0 -139
  138. package/src/agents/tools/skills.ts +0 -79
  139. package/src/agents/tools/startAgentTask.ts +0 -393
  140. package/src/agents/tools/stringReplace.ts +0 -105
  141. package/src/agents/tools/textSearch.ts +0 -128
  142. package/src/agents/tools/types/fileblock.ts +0 -5
  143. package/src/agents/tools/visionTool.ts +0 -35
  144. package/src/agents/tools/waitForAgentCompleted.ts +0 -270
  145. package/src/agents/tools/writeFile.ts +0 -106
  146. package/src/agents/tools/ycmd/client.ts +0 -608
  147. package/src/agents/tools/ycmd/definitions.ts +0 -294
  148. package/src/agents/tools/ycmd/detection.ts +0 -211
  149. package/src/agents/tools/ycmd/index.ts +0 -11
  150. package/src/agents/tools/ycmd/installer.ts +0 -251
  151. package/src/agents/tools/ycmd/server.ts +0 -545
  152. package/src/agents/tools/ycmd/serverManager.ts +0 -316
  153. package/src/agents/tools/ycmd/tools/completion.ts +0 -113
  154. package/src/agents/tools/ycmd/tools/diagnostics.ts +0 -166
  155. package/src/agents/tools/ycmd/tools/getLocations.ts +0 -173
  156. package/src/agents/tools/ycmd/tools/goto.ts +0 -169
  157. package/src/agents/tools/ycmd/tools/refactor.ts +0 -204
  158. package/src/agents/tools/ycmd/tools/signature.ts +0 -174
  159. package/src/agents/tools/ycmd/tools/start.ts +0 -95
  160. package/src/agents/tools/ycmd/utils/pathUtils.ts +0 -59
  161. package/src/ai.ts +0 -306
  162. package/src/auth/browserLogin.ts +0 -406
  163. package/src/auth/environmentAuth.ts +0 -51
  164. package/src/auth/errors.ts +0 -6
  165. package/src/auth/jwtStore.ts +0 -70
  166. package/src/auth/keyAuth.ts +0 -142
  167. package/src/auth/keyManager.ts +0 -331
  168. package/src/auth/registerIdentity.ts +0 -67
  169. package/src/auth/spinner.ts +0 -23
  170. package/src/chat/CliChatService.ts +0 -438
  171. package/src/chat/modules/AgentModule.ts +0 -1664
  172. package/src/chat/modules/AskModule.ts +0 -98
  173. package/src/chat/modules/BaseChatModule.ts +0 -65
  174. package/src/chat/modules/ClipboardImageModule.ts +0 -136
  175. package/src/chat/modules/CustomCommandsModule.ts +0 -80
  176. package/src/chat/modules/InternalChatModule.ts +0 -216
  177. package/src/chat/modules/RemoteSyncModule.ts +0 -482
  178. package/src/chat/modules/RendererModule.ts +0 -139
  179. package/src/chat/modules/SearchModule.ts +0 -168
  180. package/src/chat/modules/SessionsModule.ts +0 -969
  181. package/src/chat/modules/SetupModule.ts +0 -185
  182. package/src/chat/modules/ShellCommandModule.ts +0 -98
  183. package/src/chat/modules/SystemModule.ts +0 -161
  184. package/src/chat/modules/ToolCommandModule.ts +0 -102
  185. package/src/chat/modules/VoiceModule.ts +0 -70
  186. package/src/chat/modules/index.ts +0 -8
  187. package/src/chat/renderer/CompactRenderer.ts +0 -229
  188. package/src/chat/renderer/ConsoleRenderer.ts +0 -160
  189. package/src/chat/renderer/FancyRenderer.ts +0 -440
  190. package/src/chat/renderer/PlainRenderer.ts +0 -218
  191. package/src/chat/renderer/index.ts +0 -6
  192. package/src/chat/renderer/loadRenderer.ts +0 -316
  193. package/src/chat/renderer/messagesToRenderEvents.ts +0 -96
  194. package/src/chat/renderer/types.ts +0 -99
  195. package/src/chat/types.ts +0 -146
  196. package/src/chat.ts +0 -140
  197. package/src/cli.ts +0 -180
  198. package/src/clients/anthropic.ts +0 -772
  199. package/src/clients/attribution.ts +0 -53
  200. package/src/clients/cerebras.ts +0 -10
  201. package/src/clients/contextLimits.ts +0 -263
  202. package/src/clients/copilot.ts +0 -23
  203. package/src/clients/deepseek.ts +0 -16
  204. package/src/clients/fireworks.ts +0 -71
  205. package/src/clients/gemini.ts +0 -1169
  206. package/src/clients/github.ts +0 -16
  207. package/src/clients/groq.ts +0 -15
  208. package/src/clients/http.ts +0 -719
  209. package/src/clients/index.ts +0 -1153
  210. package/src/clients/knowhow.ts +0 -130
  211. package/src/clients/knowhowMcp.ts +0 -118
  212. package/src/clients/llama.ts +0 -16
  213. package/src/clients/meta.ts +0 -27
  214. package/src/clients/mistral.ts +0 -16
  215. package/src/clients/nvidia.ts +0 -16
  216. package/src/clients/openai.ts +0 -1186
  217. package/src/clients/openrouter.ts +0 -24
  218. package/src/clients/pricing/anthropic.ts +0 -149
  219. package/src/clients/pricing/cerebras.ts +0 -11
  220. package/src/clients/pricing/copilot.ts +0 -60
  221. package/src/clients/pricing/deepseek.ts +0 -15
  222. package/src/clients/pricing/fireworks.ts +0 -182
  223. package/src/clients/pricing/github.ts +0 -69
  224. package/src/clients/pricing/google.ts +0 -385
  225. package/src/clients/pricing/groq.ts +0 -56
  226. package/src/clients/pricing/index.ts +0 -44
  227. package/src/clients/pricing/llama.ts +0 -18
  228. package/src/clients/pricing/meta.ts +0 -12
  229. package/src/clients/pricing/mistral.ts +0 -34
  230. package/src/clients/pricing/models.ts +0 -25
  231. package/src/clients/pricing/nvidia.ts +0 -102
  232. package/src/clients/pricing/openai.ts +0 -409
  233. package/src/clients/pricing/openrouter.ts +0 -36
  234. package/src/clients/pricing/qwen.ts +0 -80
  235. package/src/clients/pricing/types.ts +0 -125
  236. package/src/clients/pricing/xai.ts +0 -137
  237. package/src/clients/qwen.ts +0 -16
  238. package/src/clients/responseMetadata.ts +0 -221
  239. package/src/clients/types.ts +0 -531
  240. package/src/clients/withRetry.ts +0 -89
  241. package/src/clients/xai.ts +0 -693
  242. package/src/cloudWorker.ts +0 -394
  243. package/src/commands/agent.ts +0 -342
  244. package/src/commands/agents.ts +0 -1037
  245. package/src/commands/behaviors.ts +0 -47
  246. package/src/commands/convert.ts +0 -291
  247. package/src/commands/hash.ts +0 -179
  248. package/src/commands/mcp.ts +0 -743
  249. package/src/commands/misc.ts +0 -373
  250. package/src/commands/modules.ts +0 -704
  251. package/src/commands/processes.ts +0 -248
  252. package/src/commands/remote.ts +0 -77
  253. package/src/commands/replay.ts +0 -503
  254. package/src/commands/sandbox.ts +0 -566
  255. package/src/commands/services.ts +0 -168
  256. package/src/commands/skills.ts +0 -107
  257. package/src/commands/workers.ts +0 -168
  258. package/src/config.ts +0 -468
  259. package/src/conversion.ts +0 -69
  260. package/src/dataset/diffs/README.md +0 -12
  261. package/src/dataset/diffs/debug-errors.ts +0 -29
  262. package/src/dataset/diffs/debug.ts +0 -64
  263. package/src/dataset/diffs/generate.ts +0 -71
  264. package/src/dataset/diffs/jsonl.ts +0 -53
  265. package/src/dataset/diffs/test.ts +0 -194
  266. package/src/embeddings.ts +0 -494
  267. package/src/fileSync.ts +0 -369
  268. package/src/generate.ts +0 -529
  269. package/src/hashes.ts +0 -180
  270. package/src/index.ts +0 -261
  271. package/src/logger.ts +0 -197
  272. package/src/login.ts +0 -209
  273. package/src/microphone.ts +0 -141
  274. package/src/migrations.ts +0 -151
  275. package/src/plugins/AgentsMdPlugin.ts +0 -118
  276. package/src/plugins/GitPlugin.ts +0 -598
  277. package/src/plugins/LinterPlugin.ts +0 -214
  278. package/src/plugins/PluginBase.ts +0 -70
  279. package/src/plugins/SkillsPlugin.ts +0 -37
  280. package/src/plugins/embedding.ts +0 -82
  281. package/src/plugins/exec.ts +0 -70
  282. package/src/plugins/language.ts +0 -290
  283. package/src/plugins/plugins.ts +0 -175
  284. package/src/plugins/tmux.ts +0 -132
  285. package/src/plugins/types.ts +0 -36
  286. package/src/plugins/url.ts +0 -101
  287. package/src/plugins/vim.ts +0 -89
  288. package/src/processes/ProcessManager.ts +0 -96
  289. package/src/processes/managedProcessShim.ts +0 -138
  290. package/src/processors/Base64ImageDetector.ts +0 -502
  291. package/src/processors/CustomVariables.ts +0 -693
  292. package/src/processors/GemmaToolProcessor.ts +0 -163
  293. package/src/processors/HarmonyToolProcessor.ts +0 -264
  294. package/src/processors/JsonCompressor.ts +0 -510
  295. package/src/processors/MinimalToolsMessageProcessor.ts +0 -113
  296. package/src/processors/TokenCompressor.ts +0 -620
  297. package/src/processors/ToolResponseCache.ts +0 -322
  298. package/src/processors/XmlToolCallProcessor.ts +0 -533
  299. package/src/processors/index.ts +0 -14
  300. package/src/processors/tools/boundedToolResponse.ts +0 -49
  301. package/src/processors/tools/grepToolResponse.ts +0 -230
  302. package/src/processors/tools/index.ts +0 -23
  303. package/src/processors/tools/jqToolResponse.ts +0 -159
  304. package/src/processors/tools/listStoredToolResponses.ts +0 -124
  305. package/src/processors/tools/tailToolResponse.ts +0 -148
  306. package/src/prompts/BasicCodeDocumenter.ts +0 -1
  307. package/src/prompts/BasicProjectDocumenter.ts +0 -1
  308. package/src/prompts/EmbeddingSeachHelper.ts +0 -1
  309. package/src/prompts/KnowhowConfigExamples.ts +0 -376
  310. package/src/prompts/index.ts +0 -9
  311. package/src/remotes.ts +0 -110
  312. package/src/server/index.ts +0 -16
  313. package/src/services/AgentService.ts +0 -134
  314. package/src/services/AgentSyncFs.ts +0 -775
  315. package/src/services/AgentSyncKnowhowWeb.ts +0 -389
  316. package/src/services/BehaviorsService.ts +0 -466
  317. package/src/services/DockerService.ts +0 -511
  318. package/src/services/EmbeddingService.ts +0 -427
  319. package/src/services/EmbeddingsService.ts +0 -73
  320. package/src/services/EventService.ts +0 -279
  321. package/src/services/ExtensionsService.ts +0 -25
  322. package/src/services/KnowhowClient.ts +0 -928
  323. package/src/services/LazyToolsService.ts +0 -210
  324. package/src/services/Mcp.ts +0 -727
  325. package/src/services/McpServer.ts +0 -155
  326. package/src/services/McpWebsocketTransport.ts +0 -87
  327. package/src/services/MediaProcessorService.ts +0 -669
  328. package/src/services/MessageProcessor.ts +0 -114
  329. package/src/services/MinimalToolsService.ts +0 -177
  330. package/src/services/RuntimeReloadService.ts +0 -31
  331. package/src/services/S3.ts +0 -61
  332. package/src/services/SessionManager.ts +0 -358
  333. package/src/services/SkillsService.ts +0 -822
  334. package/src/services/SyncedAgentWatcher.ts +0 -124
  335. package/src/services/SyncerService.ts +0 -191
  336. package/src/services/TaskRegistry.ts +0 -110
  337. package/src/services/Tools.ts +0 -580
  338. package/src/services/TracingService.ts +0 -116
  339. package/src/services/conversion/ConversionService.ts +0 -757
  340. package/src/services/conversion/index.ts +0 -2
  341. package/src/services/conversion/types.ts +0 -87
  342. package/src/services/flags.ts +0 -51
  343. package/src/services/index.ts +0 -117
  344. package/src/services/modules/computerUse.ts +0 -218
  345. package/src/services/modules/index.ts +0 -314
  346. package/src/services/modules/types.ts +0 -109
  347. package/src/services/types.ts +0 -60
  348. package/src/services/watchers/FsSyncer.ts +0 -199
  349. package/src/services/watchers/RemoteSyncer.ts +0 -196
  350. package/src/services/watchers/index.ts +0 -2
  351. package/src/tunnel.ts +0 -243
  352. package/src/types.ts +0 -282
  353. package/src/util/Trace.ts +0 -236
  354. package/src/utils/InputQueueManager.ts +0 -493
  355. package/src/utils/errors.ts +0 -0
  356. package/src/utils/http.ts +0 -150
  357. package/src/utils/index.ts +0 -111
  358. package/src/worker.ts +0 -696
  359. package/src/workerRegistry.ts +0 -152
  360. package/src/workers/auth/PasskeySetup.ts +0 -181
  361. package/src/workers/auth/WorkerPasskeyAuth.ts +0 -190
  362. package/src/workers/auth/WsMiddleware.ts +0 -99
  363. package/src/workers/auth/authMiddleware.ts +0 -104
  364. package/src/workers/auth/types.ts +0 -70
  365. package/src/workers/tools/getChallenge.ts +0 -33
  366. package/src/workers/tools/index.ts +0 -20
  367. package/src/workers/tools/listAllowedPorts.ts +0 -30
  368. package/src/workers/tools/lock.ts +0 -31
  369. package/src/workers/tools/reloadConfig.ts +0 -84
  370. package/src/workers/tools/unlock.ts +0 -116
  371. package/tests/XmlToolCallProcessor.test.ts +0 -468
  372. package/tests/agents/interrupt.test.ts +0 -200
  373. package/tests/agents/observe-base.test.ts +0 -183
  374. package/tests/agents/tools/connectAgent.test.ts +0 -138
  375. package/tests/agents/tools/observe.test.ts +0 -179
  376. package/tests/agents/tools/readFile.test.ts +0 -88
  377. package/tests/agents/tools/replyToParent.test.ts +0 -125
  378. package/tests/agents/tools/sendAgentMessage.test.ts +0 -99
  379. package/tests/agents/tools/waitForAgentCompleted.test.ts +0 -147
  380. package/tests/chat/detach-attach-rendering.test.ts +0 -315
  381. package/tests/clients/AIClient.test.ts +0 -668
  382. package/tests/clients/anthropic.test.ts +0 -202
  383. package/tests/clients/contextLimits.test.ts +0 -97
  384. package/tests/clients/fireworks.test.ts +0 -65
  385. package/tests/clients/openai.images.test.ts +0 -105
  386. package/tests/clients/pricing.test.ts +0 -206
  387. package/tests/clients/reasoningEffort.test.ts +0 -140
  388. package/tests/compressor/bigstring.test.ts +0 -450
  389. package/tests/compressor/bigstring.txt +0 -1
  390. package/tests/compressor/githubjson.txt +0 -1
  391. package/tests/compressor/toolResponseCache.test.ts +0 -304
  392. package/tests/compressor/usageBase64.json +0 -159
  393. package/tests/compressor/usageBase64.test.ts +0 -175
  394. package/tests/fixtures/fake-secret.txt +0 -1
  395. package/tests/manual/agent-events/run-test.ts +0 -203
  396. package/tests/manual/browser-login/README.md +0 -189
  397. package/tests/manual/browser-login/test_browser_login_basic.ts +0 -115
  398. package/tests/manual/browser-login/test_cli_integration.ts +0 -169
  399. package/tests/manual/browser-login/test_cross_platform_browser.ts +0 -186
  400. package/tests/manual/browser-login/test_error_scenarios.ts +0 -223
  401. package/tests/manual/cli/no-env.sh +0 -274
  402. package/tests/manual/clients/completions.json +0 -1151
  403. package/tests/manual/clients/completions.test.ts +0 -198
  404. package/tests/manual/file-edits/figma.test.ts +0 -3
  405. package/tests/manual/file-edits/fileblocks/readwrite.test.ts +0 -100
  406. package/tests/manual/file-edits/patching/input.txt +0 -145
  407. package/tests/manual/file-edits/patching/output.txt +0 -145
  408. package/tests/manual/file-edits/patching/patch.txt +0 -15
  409. package/tests/manual/file-edits/patching/unseen.txt +0 -80
  410. package/tests/manual/file-edits/patching.test.ts +0 -139
  411. package/tests/manual/modalities/README.md +0 -157
  412. package/tests/manual/modalities/google.modalities.test.ts +0 -335
  413. package/tests/manual/modalities/openai.modalities.test.ts +0 -329
  414. package/tests/manual/modalities/streaming.test.ts +0 -260
  415. package/tests/manual/modalities/xai.modalities.test.ts +0 -294
  416. package/tests/manual/test-concurrent-ask.ts +0 -43
  417. package/tests/manual/ycmd/debug_diagnostics_test.ts +0 -127
  418. package/tests/manual/ycmd/fixtures/debug_diagnostics.ts +0 -26
  419. package/tests/manual/ycmd/fixtures/file_change_test.ts +0 -17
  420. package/tests/manual/ycmd/minimal_advanced_test.ts +0 -108
  421. package/tests/manual/ycmd/simple_diagnostics_test.ts +0 -61
  422. package/tests/manual/ycmd/simple_test.ts +0 -74
  423. package/tests/manual/ycmd/test-typescript-sample.ts +0 -34
  424. package/tests/manual/ycmd/test_advanced_features.ts +0 -407
  425. package/tests/manual/ycmd/test_advanced_with_tools.ts +0 -320
  426. package/tests/manual/ycmd/test_comprehensive_typescript.ts +0 -179
  427. package/tests/manual/ycmd/test_diagnostics_file_changes.ts +0 -249
  428. package/tests/manual/ycmd/test_diagnostics_fix.ts +0 -99
  429. package/tests/manual/ycmd/test_diagnostics_simple.ts +0 -100
  430. package/tests/manual/ycmd/test_diagnostics_timing.ts +0 -120
  431. package/tests/manual/ycmd/test_discover_commands.ts +0 -310
  432. package/tests/manual/ycmd/test_endpoints.ts +0 -115
  433. package/tests/manual/ycmd/test_final_comprehensive.ts +0 -218
  434. package/tests/manual/ycmd/test_final_validation.ts +0 -150
  435. package/tests/manual/ycmd/test_implementation.js +0 -42
  436. package/tests/manual/ycmd/test_individual_ycmd_tool.ts +0 -39
  437. package/tests/manual/ycmd/test_server_manager.ts +0 -52
  438. package/tests/manual/ycmd/test_simple_debug.ts +0 -86
  439. package/tests/manual/ycmd/test_tsserver_workflow.js +0 -83
  440. package/tests/manual/ycmd/test_tsserver_workflow.ts +0 -122
  441. package/tests/manual/ycmd/test_typescript_simple.ts +0 -48
  442. package/tests/manual/ycmd/test_typescript_ycmd.ts +0 -105
  443. package/tests/manual/ycmd/test_workspace_config.ts +0 -90
  444. package/tests/manual/ycmd/test_ycmd_auto_start.ts +0 -137
  445. package/tests/manual/ycmd/test_ycmd_comprehensive.ts +0 -73
  446. package/tests/manual/ycmd/test_ycmd_connection.py +0 -10
  447. package/tests/manual/ycmd/test_ycmd_direct.ts +0 -142
  448. package/tests/manual/ycmd/test_ycmd_experiment.ts +0 -48
  449. package/tests/manual/ycmd/test_ycmd_final.ts +0 -200
  450. package/tests/manual/ycmd/test_ycmd_fixed.py +0 -18
  451. package/tests/manual/ycmd/test_ycmd_integration.ts +0 -112
  452. package/tests/manual/ycmd/test_ycmd_simple.ts +0 -45
  453. package/tests/manual/ycmd/test_ycmd_usage.py +0 -27
  454. package/tests/manual/ycmd/working_simple_test.ts +0 -134
  455. package/tests/patching/corrupted.test.ts +0 -78
  456. package/tests/patching/fixtures/transcript-mangles/agent-sync-fs-nested-catch.json +0 -9
  457. package/tests/patching/fixtures/transcript-mangles/automation-functions-crossed.json +0 -9
  458. package/tests/patching/fixtures/transcript-mangles/fruit-ninja-confirmed-retirement.json +0 -8
  459. package/tests/patching/imports.patch.txt +0 -11
  460. package/tests/patching/imports.test.ts +0 -43
  461. package/tests/patching/imports.txt +0 -11
  462. package/tests/patching/interface.patch.txt +0 -15
  463. package/tests/patching/interface.txt +0 -7
  464. package/tests/patching/patchFileOutput.test.ts +0 -328
  465. package/tests/patching/regression-2026.test.ts +0 -752
  466. package/tests/patching/transcriptMangleRegression.test.ts +0 -125
  467. package/tests/plugins/language/languagePlugin-content-triggers.test.ts +0 -346
  468. package/tests/plugins/language/languagePlugin-integration.test.ts +0 -471
  469. package/tests/plugins/language/languagePlugin.test.ts +0 -385
  470. package/tests/processes/managedProcessShim.test.ts +0 -59
  471. package/tests/processors/Base64ImageDetector.test.ts +0 -979
  472. package/tests/processors/CustomVariables.test.ts +0 -981
  473. package/tests/processors/CustomVariablesBenchmark.test.ts +0 -237
  474. package/tests/processors/HarmonyToolProcessor.test.ts +0 -490
  475. package/tests/processors/TokenCompressor.test.ts +0 -674
  476. package/tests/processors/ToolResponseCache.test.ts +0 -864
  477. package/tests/processors/tools/boundedRetrievalTools.test.ts +0 -68
  478. package/tests/processors/tools/grepToolResponse.test.ts +0 -159
  479. package/tests/services/ConversionService.test.ts +0 -154
  480. package/tests/services/DockerService.test.ts +0 -24
  481. package/tests/services/Tools.test.ts +0 -1738
  482. package/tests/services/ToolsService.setFunction.test.ts +0 -68
  483. package/tests/services/WorkerReloadConfig.test.ts +0 -141
  484. package/tests/test.spec.ts +0 -163
  485. package/tests/unit/InputQueueManager.test.ts +0 -174
  486. package/tests/unit/McpWebsocketTransport.test.ts +0 -56
  487. package/tests/unit/agents/historyRollback.test.ts +0 -53
  488. package/tests/unit/agents/tools/loadImageAsBase64.test.ts +0 -44
  489. package/tests/unit/auth/jwtStore.test.ts +0 -55
  490. package/tests/unit/auth/keyAuth.test.ts +0 -152
  491. package/tests/unit/auth/keyManager.test.ts +0 -130
  492. package/tests/unit/auth/registerIdentity.test.ts +0 -99
  493. package/tests/unit/chat/ToolCommandModule.test.ts +0 -71
  494. package/tests/unit/chat/historyCommandArgs.test.ts +0 -37
  495. package/tests/unit/clients/AIClient.test.ts +0 -454
  496. package/tests/unit/clients/anthropic.responseMetadata.test.ts +0 -81
  497. package/tests/unit/clients/attribution.test.ts +0 -185
  498. package/tests/unit/clients/http.responseMetadata.test.ts +0 -86
  499. package/tests/unit/clients/openai.responseMetadata.test.ts +0 -90
  500. package/tests/unit/clients/responseMetadata.test.ts +0 -123
  501. package/tests/unit/clients/withRetry.test.ts +0 -319
  502. package/tests/unit/commands/agents.test.ts +0 -111
  503. package/tests/unit/commands/github-credentials.test.ts +0 -210
  504. package/tests/unit/commands/misc.test.ts +0 -85
  505. package/tests/unit/commands/remote.test.ts +0 -79
  506. package/tests/unit/commands/sandbox.test.ts +0 -350
  507. package/tests/unit/hashes.test.ts +0 -23
  508. package/tests/unit/input-queue.test.ts +0 -80
  509. package/tests/unit/login.test.ts +0 -218
  510. package/tests/unit/modules/moduleLoading.test.ts +0 -305
  511. package/tests/unit/plugins/pluginLoading.test.ts +0 -97
  512. package/tests/unit/services/AgentSyncKnowhowWeb.test.ts +0 -38
  513. package/tests/unit/services/KnowhowClient.test.ts +0 -84
  514. package/tests/unit/services/LazyToolsService.test.ts +0 -53
  515. package/tests/unit/services/Mcp.test.ts +0 -56
  516. package/tests/unit/services/MinimalToolsService.test.ts +0 -424
  517. package/tests/unit/services/RuntimeReloadService.test.ts +0 -29
  518. package/tests/unit/services/SessionManager.test.ts +0 -43
  519. package/tests/unit/services/SyncedAgentWatcher.test.ts +0 -89
  520. package/tests/unit/services/SyncerService.test.ts +0 -45
  521. package/tests/unit/tunnel.test.ts +0 -51
  522. package/tests/unit/util/Trace.test.ts +0 -119
  523. package/tests/unit/utils/http.test.ts +0 -43
  524. package/ts_build/tests/XmlToolCallProcessor.test.d.ts +0 -1
  525. package/ts_build/tests/XmlToolCallProcessor.test.js +0 -376
  526. package/ts_build/tests/XmlToolCallProcessor.test.js.map +0 -1
  527. package/ts_build/tests/agents/interrupt.test.d.ts +0 -14
  528. package/ts_build/tests/agents/interrupt.test.js +0 -136
  529. package/ts_build/tests/agents/interrupt.test.js.map +0 -1
  530. package/ts_build/tests/agents/observe-base.test.d.ts +0 -1
  531. package/ts_build/tests/agents/observe-base.test.js +0 -149
  532. package/ts_build/tests/agents/observe-base.test.js.map +0 -1
  533. package/ts_build/tests/agents/tools/connectAgent.test.d.ts +0 -1
  534. package/ts_build/tests/agents/tools/connectAgent.test.js +0 -142
  535. package/ts_build/tests/agents/tools/connectAgent.test.js.map +0 -1
  536. package/ts_build/tests/agents/tools/observe.test.d.ts +0 -1
  537. package/ts_build/tests/agents/tools/observe.test.js +0 -148
  538. package/ts_build/tests/agents/tools/observe.test.js.map +0 -1
  539. package/ts_build/tests/agents/tools/readFile.test.d.ts +0 -1
  540. package/ts_build/tests/agents/tools/readFile.test.js +0 -90
  541. package/ts_build/tests/agents/tools/readFile.test.js.map +0 -1
  542. package/ts_build/tests/agents/tools/replyToParent.test.d.ts +0 -1
  543. package/ts_build/tests/agents/tools/replyToParent.test.js +0 -116
  544. package/ts_build/tests/agents/tools/replyToParent.test.js.map +0 -1
  545. package/ts_build/tests/agents/tools/sendAgentMessage.test.d.ts +0 -1
  546. package/ts_build/tests/agents/tools/sendAgentMessage.test.js +0 -112
  547. package/ts_build/tests/agents/tools/sendAgentMessage.test.js.map +0 -1
  548. package/ts_build/tests/agents/tools/waitForAgentCompleted.test.d.ts +0 -1
  549. package/ts_build/tests/agents/tools/waitForAgentCompleted.test.js +0 -147
  550. package/ts_build/tests/agents/tools/waitForAgentCompleted.test.js.map +0 -1
  551. package/ts_build/tests/chat/detach-attach-rendering.test.d.ts +0 -1
  552. package/ts_build/tests/chat/detach-attach-rendering.test.js +0 -168
  553. package/ts_build/tests/chat/detach-attach-rendering.test.js.map +0 -1
  554. package/ts_build/tests/clients/AIClient.test.d.ts +0 -1
  555. package/ts_build/tests/clients/AIClient.test.js +0 -483
  556. package/ts_build/tests/clients/AIClient.test.js.map +0 -1
  557. package/ts_build/tests/clients/anthropic.test.d.ts +0 -1
  558. package/ts_build/tests/clients/anthropic.test.js +0 -159
  559. package/ts_build/tests/clients/anthropic.test.js.map +0 -1
  560. package/ts_build/tests/clients/contextLimits.test.d.ts +0 -1
  561. package/ts_build/tests/clients/contextLimits.test.js +0 -69
  562. package/ts_build/tests/clients/contextLimits.test.js.map +0 -1
  563. package/ts_build/tests/clients/fireworks.test.d.ts +0 -1
  564. package/ts_build/tests/clients/fireworks.test.js +0 -65
  565. package/ts_build/tests/clients/fireworks.test.js.map +0 -1
  566. package/ts_build/tests/clients/openai.images.test.d.ts +0 -1
  567. package/ts_build/tests/clients/openai.images.test.js +0 -94
  568. package/ts_build/tests/clients/openai.images.test.js.map +0 -1
  569. package/ts_build/tests/clients/pricing.test.d.ts +0 -1
  570. package/ts_build/tests/clients/pricing.test.js +0 -124
  571. package/ts_build/tests/clients/pricing.test.js.map +0 -1
  572. package/ts_build/tests/clients/reasoningEffort.test.d.ts +0 -1
  573. package/ts_build/tests/clients/reasoningEffort.test.js +0 -116
  574. package/ts_build/tests/clients/reasoningEffort.test.js.map +0 -1
  575. package/ts_build/tests/compressor/bigstring.test.d.ts +0 -1
  576. package/ts_build/tests/compressor/bigstring.test.js +0 -275
  577. package/ts_build/tests/compressor/bigstring.test.js.map +0 -1
  578. package/ts_build/tests/compressor/toolResponseCache.test.d.ts +0 -1
  579. package/ts_build/tests/compressor/toolResponseCache.test.js +0 -250
  580. package/ts_build/tests/compressor/toolResponseCache.test.js.map +0 -1
  581. package/ts_build/tests/compressor/usageBase64.test.d.ts +0 -1
  582. package/ts_build/tests/compressor/usageBase64.test.js +0 -109
  583. package/ts_build/tests/compressor/usageBase64.test.js.map +0 -1
  584. package/ts_build/tests/manual/agent-events/run-test.d.ts +0 -2
  585. package/ts_build/tests/manual/agent-events/run-test.js +0 -148
  586. package/ts_build/tests/manual/agent-events/run-test.js.map +0 -1
  587. package/ts_build/tests/manual/browser-login/test_browser_login_basic.d.ts +0 -2
  588. package/ts_build/tests/manual/browser-login/test_browser_login_basic.js +0 -118
  589. package/ts_build/tests/manual/browser-login/test_browser_login_basic.js.map +0 -1
  590. package/ts_build/tests/manual/browser-login/test_cli_integration.d.ts +0 -2
  591. package/ts_build/tests/manual/browser-login/test_cli_integration.js +0 -163
  592. package/ts_build/tests/manual/browser-login/test_cli_integration.js.map +0 -1
  593. package/ts_build/tests/manual/browser-login/test_cross_platform_browser.d.ts +0 -2
  594. package/ts_build/tests/manual/browser-login/test_cross_platform_browser.js +0 -169
  595. package/ts_build/tests/manual/browser-login/test_cross_platform_browser.js.map +0 -1
  596. package/ts_build/tests/manual/browser-login/test_error_scenarios.d.ts +0 -2
  597. package/ts_build/tests/manual/browser-login/test_error_scenarios.js +0 -207
  598. package/ts_build/tests/manual/browser-login/test_error_scenarios.js.map +0 -1
  599. package/ts_build/tests/manual/clients/completions.test.d.ts +0 -1
  600. package/ts_build/tests/manual/clients/completions.test.js +0 -151
  601. package/ts_build/tests/manual/clients/completions.test.js.map +0 -1
  602. package/ts_build/tests/manual/file-edits/figma.test.d.ts +0 -0
  603. package/ts_build/tests/manual/file-edits/figma.test.js +0 -2
  604. package/ts_build/tests/manual/file-edits/figma.test.js.map +0 -1
  605. package/ts_build/tests/manual/file-edits/fileblocks/readwrite.test.d.ts +0 -1
  606. package/ts_build/tests/manual/file-edits/fileblocks/readwrite.test.js +0 -110
  607. package/ts_build/tests/manual/file-edits/fileblocks/readwrite.test.js.map +0 -1
  608. package/ts_build/tests/manual/file-edits/patching.test.d.ts +0 -1
  609. package/ts_build/tests/manual/file-edits/patching.test.js +0 -129
  610. package/ts_build/tests/manual/file-edits/patching.test.js.map +0 -1
  611. package/ts_build/tests/manual/modalities/google.modalities.test.d.ts +0 -1
  612. package/ts_build/tests/manual/modalities/google.modalities.test.js +0 -262
  613. package/ts_build/tests/manual/modalities/google.modalities.test.js.map +0 -1
  614. package/ts_build/tests/manual/modalities/openai.modalities.test.d.ts +0 -1
  615. package/ts_build/tests/manual/modalities/openai.modalities.test.js +0 -262
  616. package/ts_build/tests/manual/modalities/openai.modalities.test.js.map +0 -1
  617. package/ts_build/tests/manual/modalities/streaming.test.d.ts +0 -1
  618. package/ts_build/tests/manual/modalities/streaming.test.js +0 -216
  619. package/ts_build/tests/manual/modalities/streaming.test.js.map +0 -1
  620. package/ts_build/tests/manual/modalities/xai.modalities.test.d.ts +0 -1
  621. package/ts_build/tests/manual/modalities/xai.modalities.test.js +0 -219
  622. package/ts_build/tests/manual/modalities/xai.modalities.test.js.map +0 -1
  623. package/ts_build/tests/manual/test-concurrent-ask.d.ts +0 -1
  624. package/ts_build/tests/manual/test-concurrent-ask.js +0 -22
  625. package/ts_build/tests/manual/test-concurrent-ask.js.map +0 -1
  626. package/ts_build/tests/manual/ycmd/debug_diagnostics_test.d.ts +0 -1
  627. package/ts_build/tests/manual/ycmd/debug_diagnostics_test.js +0 -124
  628. package/ts_build/tests/manual/ycmd/debug_diagnostics_test.js.map +0 -1
  629. package/ts_build/tests/manual/ycmd/minimal_advanced_test.d.ts +0 -2
  630. package/ts_build/tests/manual/ycmd/minimal_advanced_test.js +0 -114
  631. package/ts_build/tests/manual/ycmd/minimal_advanced_test.js.map +0 -1
  632. package/ts_build/tests/manual/ycmd/simple_diagnostics_test.d.ts +0 -1
  633. package/ts_build/tests/manual/ycmd/simple_diagnostics_test.js +0 -84
  634. package/ts_build/tests/manual/ycmd/simple_diagnostics_test.js.map +0 -1
  635. package/ts_build/tests/manual/ycmd/simple_test.d.ts +0 -2
  636. package/ts_build/tests/manual/ycmd/simple_test.js +0 -92
  637. package/ts_build/tests/manual/ycmd/simple_test.js.map +0 -1
  638. package/ts_build/tests/manual/ycmd/test-typescript-sample.d.ts +0 -14
  639. package/ts_build/tests/manual/ycmd/test-typescript-sample.js +0 -20
  640. package/ts_build/tests/manual/ycmd/test-typescript-sample.js.map +0 -1
  641. package/ts_build/tests/manual/ycmd/test_advanced_features.d.ts +0 -2
  642. package/ts_build/tests/manual/ycmd/test_advanced_features.js +0 -306
  643. package/ts_build/tests/manual/ycmd/test_advanced_features.js.map +0 -1
  644. package/ts_build/tests/manual/ycmd/test_advanced_with_tools.d.ts +0 -3
  645. package/ts_build/tests/manual/ycmd/test_advanced_with_tools.js +0 -271
  646. package/ts_build/tests/manual/ycmd/test_advanced_with_tools.js.map +0 -1
  647. package/ts_build/tests/manual/ycmd/test_comprehensive_typescript.d.ts +0 -2
  648. package/ts_build/tests/manual/ycmd/test_comprehensive_typescript.js +0 -196
  649. package/ts_build/tests/manual/ycmd/test_comprehensive_typescript.js.map +0 -1
  650. package/ts_build/tests/manual/ycmd/test_diagnostics_file_changes.d.ts +0 -1
  651. package/ts_build/tests/manual/ycmd/test_diagnostics_file_changes.js +0 -184
  652. package/ts_build/tests/manual/ycmd/test_diagnostics_file_changes.js.map +0 -1
  653. package/ts_build/tests/manual/ycmd/test_diagnostics_fix.d.ts +0 -2
  654. package/ts_build/tests/manual/ycmd/test_diagnostics_fix.js +0 -116
  655. package/ts_build/tests/manual/ycmd/test_diagnostics_fix.js.map +0 -1
  656. package/ts_build/tests/manual/ycmd/test_diagnostics_simple.d.ts +0 -1
  657. package/ts_build/tests/manual/ycmd/test_diagnostics_simple.js +0 -114
  658. package/ts_build/tests/manual/ycmd/test_diagnostics_simple.js.map +0 -1
  659. package/ts_build/tests/manual/ycmd/test_diagnostics_timing.d.ts +0 -1
  660. package/ts_build/tests/manual/ycmd/test_diagnostics_timing.js +0 -129
  661. package/ts_build/tests/manual/ycmd/test_diagnostics_timing.js.map +0 -1
  662. package/ts_build/tests/manual/ycmd/test_discover_commands.d.ts +0 -2
  663. package/ts_build/tests/manual/ycmd/test_discover_commands.js +0 -252
  664. package/ts_build/tests/manual/ycmd/test_discover_commands.js.map +0 -1
  665. package/ts_build/tests/manual/ycmd/test_endpoints.d.ts +0 -2
  666. package/ts_build/tests/manual/ycmd/test_endpoints.js +0 -130
  667. package/ts_build/tests/manual/ycmd/test_endpoints.js.map +0 -1
  668. package/ts_build/tests/manual/ycmd/test_final_comprehensive.d.ts +0 -2
  669. package/ts_build/tests/manual/ycmd/test_final_comprehensive.js +0 -231
  670. package/ts_build/tests/manual/ycmd/test_final_comprehensive.js.map +0 -1
  671. package/ts_build/tests/manual/ycmd/test_final_validation.d.ts +0 -2
  672. package/ts_build/tests/manual/ycmd/test_final_validation.js +0 -170
  673. package/ts_build/tests/manual/ycmd/test_final_validation.js.map +0 -1
  674. package/ts_build/tests/manual/ycmd/test_individual_ycmd_tool.d.ts +0 -2
  675. package/ts_build/tests/manual/ycmd/test_individual_ycmd_tool.js +0 -37
  676. package/ts_build/tests/manual/ycmd/test_individual_ycmd_tool.js.map +0 -1
  677. package/ts_build/tests/manual/ycmd/test_server_manager.d.ts +0 -1
  678. package/ts_build/tests/manual/ycmd/test_server_manager.js +0 -38
  679. package/ts_build/tests/manual/ycmd/test_server_manager.js.map +0 -1
  680. package/ts_build/tests/manual/ycmd/test_simple_debug.d.ts +0 -2
  681. package/ts_build/tests/manual/ycmd/test_simple_debug.js +0 -109
  682. package/ts_build/tests/manual/ycmd/test_simple_debug.js.map +0 -1
  683. package/ts_build/tests/manual/ycmd/test_tsserver_workflow.d.ts +0 -1
  684. package/ts_build/tests/manual/ycmd/test_tsserver_workflow.js +0 -138
  685. package/ts_build/tests/manual/ycmd/test_tsserver_workflow.js.map +0 -1
  686. package/ts_build/tests/manual/ycmd/test_typescript_simple.d.ts +0 -1
  687. package/ts_build/tests/manual/ycmd/test_typescript_simple.js +0 -76
  688. package/ts_build/tests/manual/ycmd/test_typescript_simple.js.map +0 -1
  689. package/ts_build/tests/manual/ycmd/test_typescript_ycmd.d.ts +0 -1
  690. package/ts_build/tests/manual/ycmd/test_typescript_ycmd.js +0 -115
  691. package/ts_build/tests/manual/ycmd/test_typescript_ycmd.js.map +0 -1
  692. package/ts_build/tests/manual/ycmd/test_workspace_config.d.ts +0 -1
  693. package/ts_build/tests/manual/ycmd/test_workspace_config.js +0 -99
  694. package/ts_build/tests/manual/ycmd/test_workspace_config.js.map +0 -1
  695. package/ts_build/tests/manual/ycmd/test_ycmd_auto_start.d.ts +0 -2
  696. package/ts_build/tests/manual/ycmd/test_ycmd_auto_start.js +0 -140
  697. package/ts_build/tests/manual/ycmd/test_ycmd_auto_start.js.map +0 -1
  698. package/ts_build/tests/manual/ycmd/test_ycmd_comprehensive.d.ts +0 -1
  699. package/ts_build/tests/manual/ycmd/test_ycmd_comprehensive.js +0 -93
  700. package/ts_build/tests/manual/ycmd/test_ycmd_comprehensive.js.map +0 -1
  701. package/ts_build/tests/manual/ycmd/test_ycmd_direct.d.ts +0 -2
  702. package/ts_build/tests/manual/ycmd/test_ycmd_direct.js +0 -159
  703. package/ts_build/tests/manual/ycmd/test_ycmd_direct.js.map +0 -1
  704. package/ts_build/tests/manual/ycmd/test_ycmd_experiment.d.ts +0 -15
  705. package/ts_build/tests/manual/ycmd/test_ycmd_experiment.js +0 -68
  706. package/ts_build/tests/manual/ycmd/test_ycmd_experiment.js.map +0 -1
  707. package/ts_build/tests/manual/ycmd/test_ycmd_final.d.ts +0 -2
  708. package/ts_build/tests/manual/ycmd/test_ycmd_final.js +0 -205
  709. package/ts_build/tests/manual/ycmd/test_ycmd_final.js.map +0 -1
  710. package/ts_build/tests/manual/ycmd/test_ycmd_integration.d.ts +0 -3
  711. package/ts_build/tests/manual/ycmd/test_ycmd_integration.js +0 -119
  712. package/ts_build/tests/manual/ycmd/test_ycmd_integration.js.map +0 -1
  713. package/ts_build/tests/manual/ycmd/test_ycmd_simple.d.ts +0 -2
  714. package/ts_build/tests/manual/ycmd/test_ycmd_simple.js +0 -36
  715. package/ts_build/tests/manual/ycmd/test_ycmd_simple.js.map +0 -1
  716. package/ts_build/tests/manual/ycmd/working_simple_test.d.ts +0 -2
  717. package/ts_build/tests/manual/ycmd/working_simple_test.js +0 -144
  718. package/ts_build/tests/manual/ycmd/working_simple_test.js.map +0 -1
  719. package/ts_build/tests/patching/corrupted.test.d.ts +0 -1
  720. package/ts_build/tests/patching/corrupted.test.js +0 -53
  721. package/ts_build/tests/patching/corrupted.test.js.map +0 -1
  722. package/ts_build/tests/patching/imports.test.d.ts +0 -1
  723. package/ts_build/tests/patching/imports.test.js +0 -71
  724. package/ts_build/tests/patching/imports.test.js.map +0 -1
  725. package/ts_build/tests/patching/patchFileOutput.test.d.ts +0 -1
  726. package/ts_build/tests/patching/patchFileOutput.test.js +0 -269
  727. package/ts_build/tests/patching/patchFileOutput.test.js.map +0 -1
  728. package/ts_build/tests/patching/regression-2026.test.d.ts +0 -1
  729. package/ts_build/tests/patching/regression-2026.test.js +0 -528
  730. package/ts_build/tests/patching/regression-2026.test.js.map +0 -1
  731. package/ts_build/tests/patching/transcriptMangleRegression.test.d.ts +0 -1
  732. package/ts_build/tests/patching/transcriptMangleRegression.test.js +0 -104
  733. package/ts_build/tests/patching/transcriptMangleRegression.test.js.map +0 -1
  734. package/ts_build/tests/plugins/language/languagePlugin-content-triggers.test.d.ts +0 -1
  735. package/ts_build/tests/plugins/language/languagePlugin-content-triggers.test.js +0 -294
  736. package/ts_build/tests/plugins/language/languagePlugin-content-triggers.test.js.map +0 -1
  737. package/ts_build/tests/plugins/language/languagePlugin-integration.test.d.ts +0 -1
  738. package/ts_build/tests/plugins/language/languagePlugin-integration.test.js +0 -343
  739. package/ts_build/tests/plugins/language/languagePlugin-integration.test.js.map +0 -1
  740. package/ts_build/tests/plugins/language/languagePlugin.test.d.ts +0 -1
  741. package/ts_build/tests/plugins/language/languagePlugin.test.js +0 -315
  742. package/ts_build/tests/plugins/language/languagePlugin.test.js.map +0 -1
  743. package/ts_build/tests/processes/managedProcessShim.test.d.ts +0 -1
  744. package/ts_build/tests/processes/managedProcessShim.test.js +0 -92
  745. package/ts_build/tests/processes/managedProcessShim.test.js.map +0 -1
  746. package/ts_build/tests/processors/Base64ImageDetector.test.d.ts +0 -1
  747. package/ts_build/tests/processors/Base64ImageDetector.test.js +0 -792
  748. package/ts_build/tests/processors/Base64ImageDetector.test.js.map +0 -1
  749. package/ts_build/tests/processors/CustomVariables.test.d.ts +0 -1
  750. package/ts_build/tests/processors/CustomVariables.test.js +0 -764
  751. package/ts_build/tests/processors/CustomVariables.test.js.map +0 -1
  752. package/ts_build/tests/processors/CustomVariablesBenchmark.test.d.ts +0 -1
  753. package/ts_build/tests/processors/CustomVariablesBenchmark.test.js +0 -179
  754. package/ts_build/tests/processors/CustomVariablesBenchmark.test.js.map +0 -1
  755. package/ts_build/tests/processors/HarmonyToolProcessor.test.d.ts +0 -1
  756. package/ts_build/tests/processors/HarmonyToolProcessor.test.js +0 -382
  757. package/ts_build/tests/processors/HarmonyToolProcessor.test.js.map +0 -1
  758. package/ts_build/tests/processors/TokenCompressor.test.d.ts +0 -1
  759. package/ts_build/tests/processors/TokenCompressor.test.js +0 -473
  760. package/ts_build/tests/processors/TokenCompressor.test.js.map +0 -1
  761. package/ts_build/tests/processors/ToolResponseCache.test.d.ts +0 -1
  762. package/ts_build/tests/processors/ToolResponseCache.test.js +0 -657
  763. package/ts_build/tests/processors/ToolResponseCache.test.js.map +0 -1
  764. package/ts_build/tests/processors/tools/boundedRetrievalTools.test.d.ts +0 -1
  765. package/ts_build/tests/processors/tools/boundedRetrievalTools.test.js +0 -57
  766. package/ts_build/tests/processors/tools/boundedRetrievalTools.test.js.map +0 -1
  767. package/ts_build/tests/processors/tools/grepToolResponse.test.d.ts +0 -1
  768. package/ts_build/tests/processors/tools/grepToolResponse.test.js +0 -77
  769. package/ts_build/tests/processors/tools/grepToolResponse.test.js.map +0 -1
  770. package/ts_build/tests/services/ConversionService.test.d.ts +0 -1
  771. package/ts_build/tests/services/ConversionService.test.js +0 -154
  772. package/ts_build/tests/services/ConversionService.test.js.map +0 -1
  773. package/ts_build/tests/services/DockerService.test.d.ts +0 -1
  774. package/ts_build/tests/services/DockerService.test.js +0 -22
  775. package/ts_build/tests/services/DockerService.test.js.map +0 -1
  776. package/ts_build/tests/services/Tools.test.d.ts +0 -1
  777. package/ts_build/tests/services/Tools.test.js +0 -1365
  778. package/ts_build/tests/services/Tools.test.js.map +0 -1
  779. package/ts_build/tests/services/ToolsService.setFunction.test.d.ts +0 -1
  780. package/ts_build/tests/services/ToolsService.setFunction.test.js +0 -51
  781. package/ts_build/tests/services/ToolsService.setFunction.test.js.map +0 -1
  782. package/ts_build/tests/services/WorkerReloadConfig.test.d.ts +0 -1
  783. package/ts_build/tests/services/WorkerReloadConfig.test.js +0 -86
  784. package/ts_build/tests/services/WorkerReloadConfig.test.js.map +0 -1
  785. package/ts_build/tests/test.spec.d.ts +0 -1
  786. package/ts_build/tests/test.spec.js +0 -139
  787. package/ts_build/tests/test.spec.js.map +0 -1
  788. package/ts_build/tests/unit/InputQueueManager.test.d.ts +0 -1
  789. package/ts_build/tests/unit/InputQueueManager.test.js +0 -104
  790. package/ts_build/tests/unit/InputQueueManager.test.js.map +0 -1
  791. package/ts_build/tests/unit/McpWebsocketTransport.test.d.ts +0 -1
  792. package/ts_build/tests/unit/McpWebsocketTransport.test.js +0 -47
  793. package/ts_build/tests/unit/McpWebsocketTransport.test.js.map +0 -1
  794. package/ts_build/tests/unit/agents/historyRollback.test.d.ts +0 -1
  795. package/ts_build/tests/unit/agents/historyRollback.test.js +0 -42
  796. package/ts_build/tests/unit/agents/historyRollback.test.js.map +0 -1
  797. package/ts_build/tests/unit/agents/tools/loadImageAsBase64.test.d.ts +0 -1
  798. package/ts_build/tests/unit/agents/tools/loadImageAsBase64.test.js +0 -67
  799. package/ts_build/tests/unit/agents/tools/loadImageAsBase64.test.js.map +0 -1
  800. package/ts_build/tests/unit/auth/jwtStore.test.d.ts +0 -1
  801. package/ts_build/tests/unit/auth/jwtStore.test.js +0 -46
  802. package/ts_build/tests/unit/auth/jwtStore.test.js.map +0 -1
  803. package/ts_build/tests/unit/auth/keyAuth.test.d.ts +0 -1
  804. package/ts_build/tests/unit/auth/keyAuth.test.js +0 -118
  805. package/ts_build/tests/unit/auth/keyAuth.test.js.map +0 -1
  806. package/ts_build/tests/unit/auth/keyManager.test.d.ts +0 -1
  807. package/ts_build/tests/unit/auth/keyManager.test.js +0 -96
  808. package/ts_build/tests/unit/auth/keyManager.test.js.map +0 -1
  809. package/ts_build/tests/unit/auth/registerIdentity.test.d.ts +0 -1
  810. package/ts_build/tests/unit/auth/registerIdentity.test.js +0 -92
  811. package/ts_build/tests/unit/auth/registerIdentity.test.js.map +0 -1
  812. package/ts_build/tests/unit/chat/ToolCommandModule.test.d.ts +0 -1
  813. package/ts_build/tests/unit/chat/ToolCommandModule.test.js +0 -61
  814. package/ts_build/tests/unit/chat/ToolCommandModule.test.js.map +0 -1
  815. package/ts_build/tests/unit/chat/historyCommandArgs.test.d.ts +0 -1
  816. package/ts_build/tests/unit/chat/historyCommandArgs.test.js +0 -29
  817. package/ts_build/tests/unit/chat/historyCommandArgs.test.js.map +0 -1
  818. package/ts_build/tests/unit/clients/AIClient.test.d.ts +0 -1
  819. package/ts_build/tests/unit/clients/AIClient.test.js +0 -342
  820. package/ts_build/tests/unit/clients/AIClient.test.js.map +0 -1
  821. package/ts_build/tests/unit/clients/anthropic.responseMetadata.test.d.ts +0 -1
  822. package/ts_build/tests/unit/clients/anthropic.responseMetadata.test.js +0 -77
  823. package/ts_build/tests/unit/clients/anthropic.responseMetadata.test.js.map +0 -1
  824. package/ts_build/tests/unit/clients/attribution.test.d.ts +0 -1
  825. package/ts_build/tests/unit/clients/attribution.test.js +0 -153
  826. package/ts_build/tests/unit/clients/attribution.test.js.map +0 -1
  827. package/ts_build/tests/unit/clients/http.responseMetadata.test.d.ts +0 -1
  828. package/ts_build/tests/unit/clients/http.responseMetadata.test.js +0 -77
  829. package/ts_build/tests/unit/clients/http.responseMetadata.test.js.map +0 -1
  830. package/ts_build/tests/unit/clients/openai.responseMetadata.test.d.ts +0 -1
  831. package/ts_build/tests/unit/clients/openai.responseMetadata.test.js +0 -86
  832. package/ts_build/tests/unit/clients/openai.responseMetadata.test.js.map +0 -1
  833. package/ts_build/tests/unit/clients/responseMetadata.test.d.ts +0 -1
  834. package/ts_build/tests/unit/clients/responseMetadata.test.js +0 -96
  835. package/ts_build/tests/unit/clients/responseMetadata.test.js.map +0 -1
  836. package/ts_build/tests/unit/clients/withRetry.test.d.ts +0 -1
  837. package/ts_build/tests/unit/clients/withRetry.test.js +0 -225
  838. package/ts_build/tests/unit/clients/withRetry.test.js.map +0 -1
  839. package/ts_build/tests/unit/commands/agents.test.d.ts +0 -1
  840. package/ts_build/tests/unit/commands/agents.test.js +0 -119
  841. package/ts_build/tests/unit/commands/agents.test.js.map +0 -1
  842. package/ts_build/tests/unit/commands/github-credentials.test.d.ts +0 -1
  843. package/ts_build/tests/unit/commands/github-credentials.test.js +0 -145
  844. package/ts_build/tests/unit/commands/github-credentials.test.js.map +0 -1
  845. package/ts_build/tests/unit/commands/misc.test.d.ts +0 -1
  846. package/ts_build/tests/unit/commands/misc.test.js +0 -70
  847. package/ts_build/tests/unit/commands/misc.test.js.map +0 -1
  848. package/ts_build/tests/unit/commands/remote.test.d.ts +0 -1
  849. package/ts_build/tests/unit/commands/remote.test.js +0 -70
  850. package/ts_build/tests/unit/commands/remote.test.js.map +0 -1
  851. package/ts_build/tests/unit/commands/sandbox.test.d.ts +0 -1
  852. package/ts_build/tests/unit/commands/sandbox.test.js +0 -258
  853. package/ts_build/tests/unit/commands/sandbox.test.js.map +0 -1
  854. package/ts_build/tests/unit/hashes.test.d.ts +0 -1
  855. package/ts_build/tests/unit/hashes.test.js +0 -25
  856. package/ts_build/tests/unit/hashes.test.js.map +0 -1
  857. package/ts_build/tests/unit/input-queue.test.d.ts +0 -1
  858. package/ts_build/tests/unit/input-queue.test.js +0 -32
  859. package/ts_build/tests/unit/input-queue.test.js.map +0 -1
  860. package/ts_build/tests/unit/login.test.d.ts +0 -1
  861. package/ts_build/tests/unit/login.test.js +0 -166
  862. package/ts_build/tests/unit/login.test.js.map +0 -1
  863. package/ts_build/tests/unit/modules/moduleLoading.test.d.ts +0 -1
  864. package/ts_build/tests/unit/modules/moduleLoading.test.js +0 -272
  865. package/ts_build/tests/unit/modules/moduleLoading.test.js.map +0 -1
  866. package/ts_build/tests/unit/plugins/pluginLoading.test.d.ts +0 -1
  867. package/ts_build/tests/unit/plugins/pluginLoading.test.js +0 -117
  868. package/ts_build/tests/unit/plugins/pluginLoading.test.js.map +0 -1
  869. package/ts_build/tests/unit/services/AgentSyncKnowhowWeb.test.d.ts +0 -1
  870. package/ts_build/tests/unit/services/AgentSyncKnowhowWeb.test.js +0 -32
  871. package/ts_build/tests/unit/services/AgentSyncKnowhowWeb.test.js.map +0 -1
  872. package/ts_build/tests/unit/services/KnowhowClient.test.d.ts +0 -1
  873. package/ts_build/tests/unit/services/KnowhowClient.test.js +0 -69
  874. package/ts_build/tests/unit/services/KnowhowClient.test.js.map +0 -1
  875. package/ts_build/tests/unit/services/LazyToolsService.test.d.ts +0 -1
  876. package/ts_build/tests/unit/services/LazyToolsService.test.js +0 -47
  877. package/ts_build/tests/unit/services/LazyToolsService.test.js.map +0 -1
  878. package/ts_build/tests/unit/services/Mcp.test.d.ts +0 -1
  879. package/ts_build/tests/unit/services/Mcp.test.js +0 -45
  880. package/ts_build/tests/unit/services/Mcp.test.js.map +0 -1
  881. package/ts_build/tests/unit/services/MinimalToolsService.test.d.ts +0 -1
  882. package/ts_build/tests/unit/services/MinimalToolsService.test.js +0 -320
  883. package/ts_build/tests/unit/services/MinimalToolsService.test.js.map +0 -1
  884. package/ts_build/tests/unit/services/RuntimeReloadService.test.d.ts +0 -1
  885. package/ts_build/tests/unit/services/RuntimeReloadService.test.js +0 -26
  886. package/ts_build/tests/unit/services/RuntimeReloadService.test.js.map +0 -1
  887. package/ts_build/tests/unit/services/SessionManager.test.d.ts +0 -1
  888. package/ts_build/tests/unit/services/SessionManager.test.js +0 -72
  889. package/ts_build/tests/unit/services/SessionManager.test.js.map +0 -1
  890. package/ts_build/tests/unit/services/SyncedAgentWatcher.test.d.ts +0 -1
  891. package/ts_build/tests/unit/services/SyncedAgentWatcher.test.js +0 -78
  892. package/ts_build/tests/unit/services/SyncedAgentWatcher.test.js.map +0 -1
  893. package/ts_build/tests/unit/services/SyncerService.test.d.ts +0 -1
  894. package/ts_build/tests/unit/services/SyncerService.test.js +0 -40
  895. package/ts_build/tests/unit/services/SyncerService.test.js.map +0 -1
  896. package/ts_build/tests/unit/tunnel.test.d.ts +0 -1
  897. package/ts_build/tests/unit/tunnel.test.js +0 -47
  898. package/ts_build/tests/unit/tunnel.test.js.map +0 -1
  899. package/ts_build/tests/unit/util/Trace.test.d.ts +0 -1
  900. package/ts_build/tests/unit/util/Trace.test.js +0 -107
  901. package/ts_build/tests/unit/util/Trace.test.js.map +0 -1
  902. package/ts_build/tests/unit/utils/http.test.d.ts +0 -1
  903. package/ts_build/tests/unit/utils/http.test.js +0 -69
  904. package/ts_build/tests/unit/utils/http.test.js.map +0 -1
  905. package/tsconfig.json +0 -34
  906. package/tslint.json +0 -11
@@ -1 +0,0 @@
1
- {"version":3,"file":"CustomVariables.test.js","sourceRoot":"","sources":["../../../tests/processors/CustomVariables.test.ts"],"names":[],"mappings":"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"}
@@ -1,179 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const CustomVariables_1 = require("../../src/processors/CustomVariables");
4
- function makeMockToolsService() {
5
- return {
6
- addTools: jest.fn(),
7
- addFunctions: jest.fn(),
8
- getTool: jest.fn().mockReturnValue(undefined),
9
- callTool: jest.fn(),
10
- };
11
- }
12
- const LARGE_STRING_21K = "# Firecracker Sandbox Disk Architecture v2 — EBS-Backed Storage\n" + "x".repeat(21800);
13
- const MEDIUM_STRING_200 = "grep -n \"diskGb\\|ebsVolume\\|lastActivityAt\\|idleTimeout\" /Users/micah/dev/knowhow-web/packages/backend/src/services/SandboxService.ts".repeat(2);
14
- const SHORT_STRING_80 = "grep -r \"snapshot\" /Users/micah/dev/knowhow-web/packages/backend/src";
15
- function makeToolCallMessage(toolName, arg) {
16
- return {
17
- role: "assistant",
18
- content: null,
19
- tool_calls: [
20
- {
21
- id: `call_${Math.random().toString(36).slice(2)}`,
22
- type: "function",
23
- function: {
24
- name: toolName,
25
- arguments: JSON.stringify({ content: arg }),
26
- },
27
- },
28
- ],
29
- };
30
- }
31
- function makeThread(extraMessages) {
32
- const systemMsg = {
33
- role: "system",
34
- content: "You are a helpful assistant.",
35
- };
36
- return [systemMsg, ...extraMessages];
37
- }
38
- async function runWithTimeout(fn, timeoutMs) {
39
- return new Promise((resolve) => {
40
- let done = false;
41
- const timer = setTimeout(() => {
42
- if (!done) {
43
- done = true;
44
- resolve({ completed: false, elapsedMs: timeoutMs });
45
- }
46
- }, timeoutMs);
47
- const start = Date.now();
48
- setImmediate(() => {
49
- try {
50
- fn();
51
- if (!done) {
52
- done = true;
53
- clearTimeout(timer);
54
- resolve({ completed: true, elapsedMs: Date.now() - start });
55
- }
56
- }
57
- catch (e) {
58
- if (!done) {
59
- done = true;
60
- clearTimeout(timer);
61
- resolve({ completed: true, elapsedMs: Date.now() - start });
62
- }
63
- }
64
- });
65
- });
66
- }
67
- describe("CustomVariables Benchmark", () => {
68
- jest.setTimeout(60000);
69
- it("BENCHMARK: longestCommonSubstring with two small strings (baseline)", async () => {
70
- const cv = new CustomVariables_1.CustomVariables(makeMockToolsService());
71
- const a = SHORT_STRING_80;
72
- const b = "cat /Users/micah/dev/knowhow-web/packages/backend/src/services/SandboxService.ts";
73
- const start = Date.now();
74
- const result = cv.longestCommonSubstring(a, b, 50);
75
- const elapsed = Date.now() - start;
76
- console.log(`[BENCHMARK] Small vs small (${a.length} x ${b.length} chars): ${elapsed}ms, result length: ${result?.length ?? 0}`);
77
- expect(elapsed).toBeLessThan(100);
78
- });
79
- it("BENCHMARK: longestCommonSubstring with one large string (21k) - DANGER ZONE", async () => {
80
- const cv = new CustomVariables_1.CustomVariables(makeMockToolsService());
81
- const a = LARGE_STRING_21K;
82
- const b = MEDIUM_STRING_200;
83
- console.log(`[BENCHMARK] Testing LCS with strings of length ${a.length} x ${b.length}`);
84
- console.log(`[BENCHMARK] Estimated worst-case iterations: ${a.length * b.length / 1_000_000}M`);
85
- const { completed, elapsedMs } = await runWithTimeout(() => {
86
- cv.longestCommonSubstring(a, b, 50);
87
- }, 5000);
88
- console.log(`[BENCHMARK] Large (${a.length}) x Medium (${b.length}): completed=${completed}, elapsed=${elapsedMs}ms`);
89
- if (!completed) {
90
- console.log(`[BENCHMARK] ⚠️ LCS DID NOT COMPLETE IN 5 SECONDS - THIS IS THE BUG`);
91
- }
92
- expect(true).toBe(true);
93
- });
94
- it("BENCHMARK: createVariableHintProcessor with realistic agent thread (last 10 msgs)", async () => {
95
- const cv = new CustomVariables_1.CustomVariables(makeMockToolsService());
96
- const messages = makeThread([
97
- ...Array.from({ length: 60 }, (_, i) => ({
98
- role: i % 2 === 0 ? "user" : "assistant",
99
- content: `Message ${i}: some content about sandboxes and disk resizing plans.`,
100
- })),
101
- makeToolCallMessage("execCommand", "mkdir -p /Users/micah/dev/knowhow-web/.knowhow/tasks/host-compaction/"),
102
- { role: "tool", content: "Created directory", tool_call_id: "x1" },
103
- makeToolCallMessage("readFile", "/Users/micah/dev/knowhow-web/.knowhow/tasks/firecracker/disks.md"),
104
- { role: "tool", content: "File contents...", tool_call_id: "x2" },
105
- makeToolCallMessage("execCommand", MEDIUM_STRING_200.slice(0, 124)),
106
- { role: "tool", content: "grep output", tool_call_id: "x3" },
107
- makeToolCallMessage("readFile", "/Users/micah/dev/knowhow-web/.knowhow/tasks/firecracker/disks.md".slice(0, 67)),
108
- { role: "tool", content: "file read", tool_call_id: "x4" },
109
- makeToolCallMessage("writeFileChunk", LARGE_STRING_21K),
110
- { role: "tool", content: "written", tool_call_id: "x5" },
111
- ]);
112
- console.log(`[BENCHMARK] Thread has ${messages.length} messages`);
113
- console.log(`[BENCHMARK] Total thread chars: ${JSON.stringify(messages).length}`);
114
- const processor = cv.createRepetitionHintProcessor({
115
- minLength: 50,
116
- minRepetitions: 2,
117
- minSubstringLength: 50,
118
- recentMessagesWindow: 10,
119
- throttleMessages: 5,
120
- });
121
- const { completed, elapsedMs } = await runWithTimeout(() => {
122
- const modifiedMessages = [...messages];
123
- processor(messages, modifiedMessages);
124
- }, 10000);
125
- console.log(`[BENCHMARK] createVariableHintProcessor: completed=${completed}, elapsed=${elapsedMs}ms`);
126
- if (!completed) {
127
- console.log(`[BENCHMARK] ⚠️ PROCESSOR DID NOT COMPLETE IN 10 SECONDS - THIS CONFIRMS THE BUG`);
128
- }
129
- expect(true).toBe(true);
130
- });
131
- it("BENCHMARK: LCS with two large strings (21k x 21k) - catastrophic case", async () => {
132
- const cv = new CustomVariables_1.CustomVariables(makeMockToolsService());
133
- const a = LARGE_STRING_21K;
134
- const b = LARGE_STRING_21K.split("").reverse().join("");
135
- console.log(`[BENCHMARK] Testing LCS with strings of length ${a.length} x ${b.length}`);
136
- console.log(`[BENCHMARK] Theoretical O(n*m) iterations: ${(a.length * b.length / 1_000_000).toFixed(0)}M`);
137
- const { completed, elapsedMs } = await runWithTimeout(() => {
138
- cv.longestCommonSubstring(a, b, 50);
139
- }, 3000);
140
- console.log(`[BENCHMARK] Large (${a.length}) x Large (${b.length}): completed=${completed}, elapsed=${elapsedMs}ms`);
141
- expect(completed).toBe(true);
142
- expect(elapsedMs).toBeLessThan(100);
143
- });
144
- it("BENCHMARK: LCS with strings capped at 500 chars - proposed fix", async () => {
145
- const cv = new CustomVariables_1.CustomVariables(makeMockToolsService());
146
- const MAX_LCS_STRING_LENGTH = 500;
147
- const a = LARGE_STRING_21K.slice(0, MAX_LCS_STRING_LENGTH);
148
- const b = LARGE_STRING_21K.split("").reverse().join("").slice(0, MAX_LCS_STRING_LENGTH);
149
- console.log(`[BENCHMARK] Testing LCS with capped strings of length ${a.length} x ${b.length}`);
150
- const start = Date.now();
151
- const result = cv.longestCommonSubstring(a, b, 50);
152
- const elapsed = Date.now() - start;
153
- console.log(`[BENCHMARK] Capped (${a.length}) x Capped (${b.length}): ${elapsed}ms, result length: ${result?.length ?? 0}`);
154
- expect(elapsed).toBeLessThan(50);
155
- });
156
- it("BENCHMARK: processMessage (variable substitution) with large content - should be fast", async () => {
157
- const cv = new CustomVariables_1.CustomVariables(makeMockToolsService());
158
- const largeMessage = {
159
- role: "assistant",
160
- content: null,
161
- tool_calls: [
162
- {
163
- id: "call_abc",
164
- type: "function",
165
- function: {
166
- name: "writeFileChunk",
167
- arguments: JSON.stringify({ content: LARGE_STRING_21K, filePath: "/tmp/test.md" }),
168
- },
169
- },
170
- ],
171
- };
172
- const start = Date.now();
173
- cv.processMessage(largeMessage);
174
- const elapsed = Date.now() - start;
175
- console.log(`[BENCHMARK] processMessage with 21k char tool call: ${elapsed}ms`);
176
- expect(elapsed).toBeLessThan(100);
177
- });
178
- });
179
- //# sourceMappingURL=CustomVariablesBenchmark.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CustomVariablesBenchmark.test.js","sourceRoot":"","sources":["../../../tests/processors/CustomVariablesBenchmark.test.ts"],"names":[],"mappings":"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"}
@@ -1,382 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const HarmonyToolProcessor_1 = require("../../src/processors/HarmonyToolProcessor");
4
- describe('HarmonyToolProcessor', () => {
5
- let processor;
6
- beforeEach(() => {
7
- HarmonyToolProcessor_1.HarmonyToolProcessor.instance = null;
8
- processor = HarmonyToolProcessor_1.HarmonyToolProcessor.getInstance();
9
- });
10
- afterEach(() => {
11
- HarmonyToolProcessor_1.HarmonyToolProcessor.instance = null;
12
- });
13
- describe('singleton pattern', () => {
14
- it('should return the same instance when getInstance is called multiple times', () => {
15
- const instance1 = HarmonyToolProcessor_1.HarmonyToolProcessor.getInstance();
16
- const instance2 = HarmonyToolProcessor_1.HarmonyToolProcessor.getInstance();
17
- expect(instance1).toBe(instance2);
18
- expect(instance1).toBeInstanceOf(HarmonyToolProcessor_1.HarmonyToolProcessor);
19
- });
20
- it('should create new instance after reset', () => {
21
- const instance1 = HarmonyToolProcessor_1.HarmonyToolProcessor.getInstance();
22
- HarmonyToolProcessor_1.HarmonyToolProcessor.instance = null;
23
- const instance2 = HarmonyToolProcessor_1.HarmonyToolProcessor.getInstance();
24
- expect(instance1).not.toBe(instance2);
25
- expect(instance2).toBeInstanceOf(HarmonyToolProcessor_1.HarmonyToolProcessor);
26
- });
27
- });
28
- describe('createProcessor', () => {
29
- it('should return a function', () => {
30
- const processorFunction = processor.createProcessor();
31
- expect(typeof processorFunction).toBe('function');
32
- });
33
- it('should not modify messages without Harmony patterns', () => {
34
- const message = {
35
- role: 'assistant',
36
- content: 'This is a regular message without tool calls'
37
- };
38
- const processorFunction = processor.createProcessor();
39
- const originalMessages = [message];
40
- const modifiedMessages = [{ ...message }];
41
- processorFunction(originalMessages, modifiedMessages);
42
- expect(modifiedMessages[0]).toEqual(message);
43
- expect(modifiedMessages[0].tool_calls).toBeUndefined();
44
- });
45
- });
46
- describe('Harmony pattern detection and conversion', () => {
47
- it('should detect and convert basic Harmony function call', () => {
48
- const message = {
49
- role: 'assistant',
50
- content: 'I will help you. <|channel|>commentary to=functions.testTool <|constrain|>json<|message|>{"param1": "value1"}'
51
- };
52
- const processorFunction = processor.createProcessor();
53
- const originalMessages = [message];
54
- const modifiedMessages = [{ ...message }];
55
- processorFunction(originalMessages, modifiedMessages);
56
- expect(modifiedMessages[0].tool_calls).toBeDefined();
57
- expect(modifiedMessages[0].tool_calls?.length).toBe(1);
58
- expect(modifiedMessages[0].tool_calls?.[0].function.name).toBe('testTool');
59
- expect(modifiedMessages[0].tool_calls?.[0].function.arguments).toBe('{"param1":"value1"}');
60
- expect(modifiedMessages[0].tool_calls?.[0].type).toBe('function');
61
- expect(modifiedMessages[0].tool_calls?.[0].id).toMatch(/^harmony_call_/);
62
- });
63
- it('should detect and convert multiple Harmony function calls', () => {
64
- const message = {
65
- role: 'assistant',
66
- content: `First tool: <|channel|>commentary to=functions.tool1 <|constrain|>json<|message|>{"param1": "value1"}
67
- Second tool: <|channel|>commentary to=functions.tool2 <|constrain|>json<|message|>{"param2": "value2"}`
68
- };
69
- const processorFunction = processor.createProcessor();
70
- const originalMessages = [message];
71
- const modifiedMessages = [{ ...message }];
72
- processorFunction(originalMessages, modifiedMessages);
73
- expect(modifiedMessages[0].tool_calls).toBeDefined();
74
- expect(modifiedMessages[0].tool_calls?.length).toBe(2);
75
- expect(modifiedMessages[0].tool_calls?.[0].function.name).toBe('tool1');
76
- expect(modifiedMessages[0].tool_calls?.[1].function.name).toBe('tool2');
77
- });
78
- it('should handle complex JSON arguments', () => {
79
- const message = {
80
- role: 'assistant',
81
- content: `<|channel|>commentary to=functions.complexTool <|constrain|>json<|message|>{
82
- "param1": "value1",
83
- "param2": {
84
- "nested": "object",
85
- "array": [1, 2, 3]
86
- },
87
- "param3": true
88
- }`
89
- };
90
- const processorFunction = processor.createProcessor();
91
- const originalMessages = [message];
92
- const modifiedMessages = [{ ...message }];
93
- processorFunction(originalMessages, modifiedMessages);
94
- expect(modifiedMessages[0].tool_calls).toBeDefined();
95
- expect(modifiedMessages[0].tool_calls?.length).toBe(1);
96
- expect(modifiedMessages[0].tool_calls?.[0].function.name).toBe('complexTool');
97
- const args = JSON.parse(modifiedMessages[0].tool_calls?.[0].function.arguments || '{}');
98
- expect(args.param1).toBe('value1');
99
- expect(args.param2.nested).toBe('object');
100
- expect(args.param2.array).toEqual([1, 2, 3]);
101
- expect(args.param3).toBe(true);
102
- });
103
- it('should detect and convert Harmony final answer pattern', () => {
104
- const message = {
105
- role: 'assistant',
106
- content: 'Here is my response: <|channel|>final<|message|>This is the final answer'
107
- };
108
- const processorFunction = processor.createProcessor();
109
- const originalMessages = [message];
110
- const modifiedMessages = [{ ...message }];
111
- processorFunction(originalMessages, modifiedMessages);
112
- expect(modifiedMessages[0].tool_calls).toBeDefined();
113
- expect(modifiedMessages[0].tool_calls?.length).toBe(1);
114
- expect(modifiedMessages[0].tool_calls?.[0].function.name).toBe('finalAnswer');
115
- const args = JSON.parse(modifiedMessages[0].tool_calls?.[0].function.arguments || '{}');
116
- expect(args.answer).toBe('This is the final answer');
117
- });
118
- it('should detect and convert <|final|> pattern', () => {
119
- const message = {
120
- role: 'assistant',
121
- content: 'Processing complete <|final|>Task completed successfully'
122
- };
123
- const processorFunction = processor.createProcessor();
124
- const originalMessages = [message];
125
- const modifiedMessages = [{ ...message }];
126
- processorFunction(originalMessages, modifiedMessages);
127
- expect(modifiedMessages[0].tool_calls).toBeDefined();
128
- expect(modifiedMessages[0].tool_calls?.length).toBe(1);
129
- expect(modifiedMessages[0].tool_calls?.[0].function.name).toBe('finalAnswer');
130
- const args = JSON.parse(modifiedMessages[0].tool_calls?.[0].function.arguments || '{}');
131
- expect(args.answer).toBe('Task completed successfully');
132
- });
133
- });
134
- describe('message processing rules', () => {
135
- it('should only process assistant messages', () => {
136
- const userMessage = {
137
- role: 'user',
138
- content: '<|channel|>commentary to=functions.testTool <|constrain|>json<|message|>{"param1": "value1"}'
139
- };
140
- const systemMessage = {
141
- role: 'system',
142
- content: '<|channel|>commentary to=functions.testTool <|constrain|>json<|message|>{"param1": "value1"}'
143
- };
144
- const processorFunction = processor.createProcessor();
145
- const originalMessages = [userMessage, systemMessage];
146
- const modifiedMessages = [{ ...userMessage }, { ...systemMessage }];
147
- processorFunction(originalMessages, modifiedMessages);
148
- expect(modifiedMessages[0].tool_calls).toBeUndefined();
149
- expect(modifiedMessages[1].tool_calls).toBeUndefined();
150
- });
151
- it('should only process string content', () => {
152
- const message = {
153
- role: 'assistant',
154
- content: [
155
- { type: 'text', text: '<|channel|>commentary to=functions.testTool <|constrain|>json<|message|>{"param1": "value1"}' }
156
- ]
157
- };
158
- const processorFunction = processor.createProcessor();
159
- const originalMessages = [message];
160
- const modifiedMessages = [{ ...message }];
161
- processorFunction(originalMessages, modifiedMessages);
162
- expect(modifiedMessages[0].tool_calls).toBeUndefined();
163
- });
164
- it('should skip messages that already have tool calls', () => {
165
- const message = {
166
- role: 'assistant',
167
- content: '<|channel|>commentary to=functions.testTool <|constrain|>json<|message|>{"param1": "value1"}',
168
- tool_calls: [{
169
- id: 'existing-call',
170
- type: 'function',
171
- function: {
172
- name: 'existingTool',
173
- arguments: '{"existing": "param"}'
174
- }
175
- }]
176
- };
177
- const processorFunction = processor.createProcessor();
178
- const originalMessages = [message];
179
- const modifiedMessages = [{ ...message }];
180
- processorFunction(originalMessages, modifiedMessages);
181
- expect(modifiedMessages[0].tool_calls?.length).toBe(1);
182
- expect(modifiedMessages[0].tool_calls?.[0].function.name).toBe('existingTool');
183
- });
184
- it('should skip messages without Harmony patterns', () => {
185
- const message = {
186
- role: 'assistant',
187
- content: 'This is just a regular message with some <brackets> but no Harmony patterns'
188
- };
189
- const processorFunction = processor.createProcessor();
190
- const originalMessages = [message];
191
- const modifiedMessages = [{ ...message }];
192
- processorFunction(originalMessages, modifiedMessages);
193
- expect(modifiedMessages[0].tool_calls).toBeUndefined();
194
- });
195
- });
196
- describe('JSON validation and cleaning', () => {
197
- it('should handle valid JSON arguments', () => {
198
- const message = {
199
- role: 'assistant',
200
- content: '<|channel|>commentary to=functions.testTool <|constrain|>json<|message|>{"param1": "value1", "param2": 42}'
201
- };
202
- const processorFunction = processor.createProcessor();
203
- const originalMessages = [message];
204
- const modifiedMessages = [{ ...message }];
205
- processorFunction(originalMessages, modifiedMessages);
206
- expect(modifiedMessages[0].tool_calls).toBeDefined();
207
- expect(modifiedMessages[0].tool_calls?.[0].function.arguments).toBe('{"param1":"value1","param2":42}');
208
- });
209
- it('should handle malformed JSON by extracting what it can', () => {
210
- const message = {
211
- role: 'assistant',
212
- content: '<|channel|>commentary to=functions.testTool <|constrain|>json<|message|>some text {"param1": "value1"} more text'
213
- };
214
- const processorFunction = processor.createProcessor();
215
- const originalMessages = [message];
216
- const modifiedMessages = [{ ...message }];
217
- processorFunction(originalMessages, modifiedMessages);
218
- expect(modifiedMessages[0].tool_calls).toBeDefined();
219
- expect(modifiedMessages[0].tool_calls?.[0].function.arguments).toBe('{"param1":"value1"}');
220
- });
221
- it('should skip tool calls with invalid JSON that cannot be parsed', () => {
222
- const message = {
223
- role: 'assistant',
224
- content: '<|channel|>commentary to=functions.testTool <|constrain|>json<|message|>invalid json without braces'
225
- };
226
- const processorFunction = processor.createProcessor();
227
- const originalMessages = [message];
228
- const modifiedMessages = [{ ...message }];
229
- processorFunction(originalMessages, modifiedMessages);
230
- expect(modifiedMessages[0].tool_calls).toBeUndefined();
231
- });
232
- it('should handle empty JSON object', () => {
233
- const message = {
234
- role: 'assistant',
235
- content: '<|channel|>commentary to=functions.testTool <|constrain|>json<|message|>{}'
236
- };
237
- const processorFunction = processor.createProcessor();
238
- const originalMessages = [message];
239
- const modifiedMessages = [{ ...message }];
240
- processorFunction(originalMessages, modifiedMessages);
241
- expect(modifiedMessages[0].tool_calls).toBeDefined();
242
- expect(modifiedMessages[0].tool_calls?.[0].function.arguments).toBe('{}');
243
- });
244
- });
245
- describe('tool call ID generation', () => {
246
- it('should generate unique IDs for each tool call', () => {
247
- const message = {
248
- role: 'assistant',
249
- content: `<|channel|>commentary to=functions.tool1 <|constrain|>json<|message|>{"param1": "value1"}
250
- <|channel|>commentary to=functions.tool2 <|constrain|>json<|message|>{"param2": "value2"}`
251
- };
252
- const processorFunction = processor.createProcessor();
253
- const originalMessages = [message];
254
- const modifiedMessages = [{ ...message }];
255
- processorFunction(originalMessages, modifiedMessages);
256
- expect(modifiedMessages[0].tool_calls?.length).toBe(2);
257
- const id1 = modifiedMessages[0].tool_calls?.[0].id;
258
- const id2 = modifiedMessages[0].tool_calls?.[1].id;
259
- expect(id1).toBeDefined();
260
- expect(id2).toBeDefined();
261
- expect(id1).not.toBe(id2);
262
- expect(id1).toMatch(/^harmony_call_/);
263
- expect(id2).toMatch(/^harmony_call_/);
264
- });
265
- });
266
- describe('edge cases and error handling', () => {
267
- it('should handle empty message content', () => {
268
- const message = {
269
- role: 'assistant',
270
- content: ''
271
- };
272
- const processorFunction = processor.createProcessor();
273
- const originalMessages = [message];
274
- const modifiedMessages = [{ ...message }];
275
- processorFunction(originalMessages, modifiedMessages);
276
- expect(modifiedMessages[0]).toEqual(message);
277
- expect(modifiedMessages[0].tool_calls).toBeUndefined();
278
- });
279
- it('should handle null content gracefully', () => {
280
- const message = {
281
- role: 'assistant',
282
- content: null
283
- };
284
- const processorFunction = processor.createProcessor();
285
- const originalMessages = [message];
286
- const modifiedMessages = [{ ...message }];
287
- processorFunction(originalMessages, modifiedMessages);
288
- expect(modifiedMessages[0]).toEqual(message);
289
- expect(modifiedMessages[0].tool_calls).toBeUndefined();
290
- });
291
- it('should handle undefined content gracefully', () => {
292
- const message = {
293
- role: 'assistant',
294
- content: undefined
295
- };
296
- const processorFunction = processor.createProcessor();
297
- const originalMessages = [message];
298
- const modifiedMessages = [{ ...message }];
299
- processorFunction(originalMessages, modifiedMessages);
300
- expect(modifiedMessages[0]).toEqual(message);
301
- expect(modifiedMessages[0].tool_calls).toBeUndefined();
302
- });
303
- it('should handle partial Harmony patterns', () => {
304
- const message = {
305
- role: 'assistant',
306
- content: '<|channel|>commentary to=functions.testTool but missing the rest'
307
- };
308
- const processorFunction = processor.createProcessor();
309
- const originalMessages = [message];
310
- const modifiedMessages = [{ ...message }];
311
- processorFunction(originalMessages, modifiedMessages);
312
- expect(modifiedMessages[0].tool_calls).toBeUndefined();
313
- });
314
- it('should handle malformed tool names', () => {
315
- const message = {
316
- role: 'assistant',
317
- content: '<|channel|>commentary to=functions. <|constrain|>json<|message|>{"param1": "value1"}'
318
- };
319
- const processorFunction = processor.createProcessor();
320
- const originalMessages = [message];
321
- const modifiedMessages = [{ ...message }];
322
- processorFunction(originalMessages, modifiedMessages);
323
- expect(modifiedMessages[0].tool_calls).toBeUndefined();
324
- });
325
- it('should process multiple messages in array', () => {
326
- const message1 = {
327
- role: 'assistant',
328
- content: '<|channel|>commentary to=functions.tool1 <|constrain|>json<|message|>{"param1": "value1"}'
329
- };
330
- const message2 = {
331
- role: 'assistant',
332
- content: 'Regular message without tools'
333
- };
334
- const message3 = {
335
- role: 'assistant',
336
- content: '<|channel|>commentary to=functions.tool2 <|constrain|>json<|message|>{"param2": "value2"}'
337
- };
338
- const processorFunction = processor.createProcessor();
339
- const originalMessages = [message1, message2, message3];
340
- const modifiedMessages = [{ ...message1 }, { ...message2 }, { ...message3 }];
341
- processorFunction(originalMessages, modifiedMessages);
342
- expect(modifiedMessages[0].tool_calls).toBeDefined();
343
- expect(modifiedMessages[0].tool_calls?.[0].function.name).toBe('tool1');
344
- expect(modifiedMessages[1].tool_calls).toBeUndefined();
345
- expect(modifiedMessages[2].tool_calls).toBeDefined();
346
- expect(modifiedMessages[2].tool_calls?.[0].function.name).toBe('tool2');
347
- });
348
- });
349
- describe('mixed pattern detection', () => {
350
- it('should detect both function calls and final answer patterns', () => {
351
- const message = {
352
- role: 'assistant',
353
- content: `First I'll call a tool: <|channel|>commentary to=functions.searchTool <|constrain|>json<|message|>{"query": "test"}
354
- Then I'll provide the final answer: <|channel|>final<|message|>Here is the result`
355
- };
356
- const processorFunction = processor.createProcessor();
357
- const originalMessages = [message];
358
- const modifiedMessages = [{ ...message }];
359
- processorFunction(originalMessages, modifiedMessages);
360
- expect(modifiedMessages[0].tool_calls).toBeDefined();
361
- expect(modifiedMessages[0].tool_calls?.length).toBe(2);
362
- expect(modifiedMessages[0].tool_calls?.[0].function.name).toBe('searchTool');
363
- expect(modifiedMessages[0].tool_calls?.[1].function.name).toBe('finalAnswer');
364
- });
365
- it('should handle final pattern with empty content', () => {
366
- const message = {
367
- role: 'assistant',
368
- content: 'Task completed <|final|>'
369
- };
370
- const processorFunction = processor.createProcessor();
371
- const originalMessages = [message];
372
- const modifiedMessages = [{ ...message }];
373
- processorFunction(originalMessages, modifiedMessages);
374
- expect(modifiedMessages[0].tool_calls).toBeDefined();
375
- expect(modifiedMessages[0].tool_calls?.length).toBe(1);
376
- expect(modifiedMessages[0].tool_calls?.[0].function.name).toBe('finalAnswer');
377
- const args = JSON.parse(modifiedMessages[0].tool_calls?.[0].function.arguments || '{}');
378
- expect(args.answer).toBe('Done');
379
- });
380
- });
381
- });
382
- //# sourceMappingURL=HarmonyToolProcessor.test.js.map