donobu 5.17.2 → 5.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (894) hide show
  1. package/README.md +1 -1
  2. package/dist/apis/TargetsApi.d.ts +3 -0
  3. package/dist/apis/TargetsApi.js +4 -2
  4. package/dist/apis/ToolsApi.d.ts +3 -0
  5. package/dist/apis/ToolsApi.js +5 -3
  6. package/dist/clients/GptClientFactory.d.ts +4 -1
  7. package/dist/clients/GptClientFactory.js +5 -2
  8. package/dist/clients/GptClientPlugin.d.ts +8 -9
  9. package/dist/clients/GptClientPlugin.js +12 -15
  10. package/dist/codegen/CodeGenerator.d.ts +5 -4
  11. package/dist/codegen/CodeGenerator.js +61 -32
  12. package/dist/esm/apis/TargetsApi.d.ts +3 -0
  13. package/dist/esm/apis/TargetsApi.js +4 -2
  14. package/dist/esm/apis/ToolsApi.d.ts +3 -0
  15. package/dist/esm/apis/ToolsApi.js +5 -3
  16. package/dist/esm/clients/GptClientFactory.d.ts +4 -1
  17. package/dist/esm/clients/GptClientFactory.js +5 -2
  18. package/dist/esm/clients/GptClientPlugin.d.ts +8 -9
  19. package/dist/esm/clients/GptClientPlugin.js +12 -15
  20. package/dist/esm/codegen/CodeGenerator.d.ts +5 -4
  21. package/dist/esm/codegen/CodeGenerator.js +61 -32
  22. package/dist/esm/lib/ai/PageAi.js +4 -3
  23. package/dist/esm/lib/page/extendPage.js +1 -1
  24. package/dist/esm/lib/test/utils/selfHealing.js +3 -4
  25. package/dist/esm/main.d.ts +5 -4
  26. package/dist/esm/main.js +11 -24
  27. package/dist/esm/managers/AdminApiController.js +2 -2
  28. package/dist/esm/managers/DonobuFlowsManager.d.ts +22 -2
  29. package/dist/esm/managers/DonobuFlowsManager.js +34 -20
  30. package/dist/esm/managers/DonobuStack.d.ts +4 -0
  31. package/dist/esm/managers/DonobuStack.js +27 -4
  32. package/dist/esm/managers/PluginLoader.d.ts +12 -5
  33. package/dist/esm/managers/PluginLoader.js +16 -12
  34. package/dist/esm/managers/ToolManager.d.ts +14 -33
  35. package/dist/esm/managers/ToolManager.js +34 -200
  36. package/dist/esm/managers/ToolRegistry.d.ts +34 -0
  37. package/dist/esm/managers/ToolRegistry.js +178 -0
  38. package/dist/esm/persistence/PersistencePlugin.d.ts +8 -9
  39. package/dist/esm/persistence/PersistencePlugin.js +12 -15
  40. package/dist/esm/persistence/env/EnvPersistenceRegistry.d.ts +2 -1
  41. package/dist/esm/persistence/env/EnvPersistenceRegistry.js +2 -2
  42. package/dist/esm/persistence/flows/FlowsPersistenceRegistry.d.ts +2 -1
  43. package/dist/esm/persistence/flows/FlowsPersistenceRegistry.js +2 -2
  44. package/dist/esm/targets/TargetRuntimePlugin.d.ts +10 -12
  45. package/dist/esm/targets/TargetRuntimePlugin.js +16 -24
  46. package/dist/esm/targets/resolveTargetRuntime.d.ts +5 -7
  47. package/dist/esm/targets/resolveTargetRuntime.js +5 -8
  48. package/dist/lib/ai/PageAi.js +4 -3
  49. package/dist/lib/page/extendPage.js +1 -1
  50. package/dist/lib/test/utils/selfHealing.js +3 -4
  51. package/dist/main.d.ts +5 -4
  52. package/dist/main.js +11 -24
  53. package/dist/managers/AdminApiController.js +2 -2
  54. package/dist/managers/DonobuFlowsManager.d.ts +22 -2
  55. package/dist/managers/DonobuFlowsManager.js +34 -20
  56. package/dist/managers/DonobuStack.d.ts +4 -0
  57. package/dist/managers/DonobuStack.js +27 -4
  58. package/dist/managers/PluginLoader.d.ts +12 -5
  59. package/dist/managers/PluginLoader.js +16 -12
  60. package/dist/managers/ToolManager.d.ts +14 -33
  61. package/dist/managers/ToolManager.js +34 -200
  62. package/dist/managers/ToolRegistry.d.ts +34 -0
  63. package/dist/managers/ToolRegistry.js +178 -0
  64. package/dist/persistence/PersistencePlugin.d.ts +8 -9
  65. package/dist/persistence/PersistencePlugin.js +12 -15
  66. package/dist/persistence/env/EnvPersistenceRegistry.d.ts +2 -1
  67. package/dist/persistence/env/EnvPersistenceRegistry.js +2 -2
  68. package/dist/persistence/flows/FlowsPersistenceRegistry.d.ts +2 -1
  69. package/dist/persistence/flows/FlowsPersistenceRegistry.js +2 -2
  70. package/dist/targets/TargetRuntimePlugin.d.ts +10 -12
  71. package/dist/targets/TargetRuntimePlugin.js +16 -24
  72. package/dist/targets/resolveTargetRuntime.d.ts +5 -7
  73. package/dist/targets/resolveTargetRuntime.js +5 -8
  74. package/package.json +21 -21
  75. package/dist/apis/AgentsApi.d.ts.map +0 -1
  76. package/dist/apis/AgentsApi.js.map +0 -1
  77. package/dist/apis/AskAiApi.d.ts.map +0 -1
  78. package/dist/apis/AskAiApi.js.map +0 -1
  79. package/dist/apis/EnvDataApi.d.ts.map +0 -1
  80. package/dist/apis/EnvDataApi.js.map +0 -1
  81. package/dist/apis/FlowsApi.d.ts.map +0 -1
  82. package/dist/apis/FlowsApi.js.map +0 -1
  83. package/dist/apis/FlowsFilesApi.d.ts.map +0 -1
  84. package/dist/apis/FlowsFilesApi.js.map +0 -1
  85. package/dist/apis/FlowsToolCallsApi.d.ts.map +0 -1
  86. package/dist/apis/FlowsToolCallsApi.js.map +0 -1
  87. package/dist/apis/GptConfigsApi.d.ts.map +0 -1
  88. package/dist/apis/GptConfigsApi.js.map +0 -1
  89. package/dist/apis/PingApi.d.ts.map +0 -1
  90. package/dist/apis/PingApi.js.map +0 -1
  91. package/dist/apis/SchemaApi.d.ts.map +0 -1
  92. package/dist/apis/SchemaApi.js.map +0 -1
  93. package/dist/apis/TargetsApi.d.ts.map +0 -1
  94. package/dist/apis/TargetsApi.js.map +0 -1
  95. package/dist/apis/ToolsApi.d.ts.map +0 -1
  96. package/dist/apis/ToolsApi.js.map +0 -1
  97. package/dist/bindings/NamedBindingCallback.d.ts.map +0 -1
  98. package/dist/bindings/NamedBindingCallback.js.map +0 -1
  99. package/dist/bindings/PageInteractionTracker.d.ts.map +0 -1
  100. package/dist/bindings/PageInteractionTracker.js.map +0 -1
  101. package/dist/bindings/SetDonobuAnnotations.d.ts.map +0 -1
  102. package/dist/bindings/SetDonobuAnnotations.js.map +0 -1
  103. package/dist/browser-side-scripts/dialog-prompt-tracker.d.ts.map +0 -1
  104. package/dist/browser-side-scripts/dialog-prompt-tracker.js.map +0 -1
  105. package/dist/browser-side-scripts/donobu-namespace.d.ts.map +0 -1
  106. package/dist/browser-side-scripts/donobu-namespace.js.map +0 -1
  107. package/dist/browser-side-scripts/interactive-elements-tracker.d.ts.map +0 -1
  108. package/dist/browser-side-scripts/interactive-elements-tracker.js.map +0 -1
  109. package/dist/browser-side-scripts/page-interactions-tracker.d.ts.map +0 -1
  110. package/dist/browser-side-scripts/page-interactions-tracker.js.map +0 -1
  111. package/dist/browser-side-scripts/smart-selector-generator.d.ts.map +0 -1
  112. package/dist/browser-side-scripts/smart-selector-generator.js.map +0 -1
  113. package/dist/cli/donobu-cli.d.ts.map +0 -1
  114. package/dist/cli/donobu-cli.js.map +0 -1
  115. package/dist/cli/generate-site-tests.d.ts.map +0 -1
  116. package/dist/cli/generate-site-tests.js.map +0 -1
  117. package/dist/cli/install-donobu-plugin.d.ts.map +0 -1
  118. package/dist/cli/install-donobu-plugin.js.map +0 -1
  119. package/dist/cli/playwright-json-to-html.d.ts.map +0 -1
  120. package/dist/cli/playwright-json-to-html.js.map +0 -1
  121. package/dist/cli/playwright-json-to-markdown.d.ts.map +0 -1
  122. package/dist/cli/playwright-json-to-markdown.js.map +0 -1
  123. package/dist/cli/playwright-json-to-slack-json.d.ts.map +0 -1
  124. package/dist/cli/playwright-json-to-slack-json.js.map +0 -1
  125. package/dist/clients/AnthropicGptClient.d.ts.map +0 -1
  126. package/dist/clients/AnthropicGptClient.js.map +0 -1
  127. package/dist/clients/DonobuGptClient.d.ts.map +0 -1
  128. package/dist/clients/DonobuGptClient.js.map +0 -1
  129. package/dist/clients/GoogleGenerativeAiGptClient.d.ts.map +0 -1
  130. package/dist/clients/GoogleGenerativeAiGptClient.js.map +0 -1
  131. package/dist/clients/GptClient.d.ts.map +0 -1
  132. package/dist/clients/GptClient.js.map +0 -1
  133. package/dist/clients/GptClientFactory.d.ts.map +0 -1
  134. package/dist/clients/GptClientFactory.js.map +0 -1
  135. package/dist/clients/GptClientPlugin.d.ts.map +0 -1
  136. package/dist/clients/GptClientPlugin.js.map +0 -1
  137. package/dist/clients/OpenAiGptClient.d.ts.map +0 -1
  138. package/dist/clients/OpenAiGptClient.js.map +0 -1
  139. package/dist/clients/VercelAiGptClient.d.ts.map +0 -1
  140. package/dist/clients/VercelAiGptClient.js.map +0 -1
  141. package/dist/codegen/CodeGenerator.d.ts.map +0 -1
  142. package/dist/codegen/CodeGenerator.js.map +0 -1
  143. package/dist/codegen/runGenerateSiteTests.d.ts.map +0 -1
  144. package/dist/codegen/runGenerateSiteTests.js.map +0 -1
  145. package/dist/envVars.d.ts.map +0 -1
  146. package/dist/envVars.js.map +0 -1
  147. package/dist/esm/apis/AgentsApi.d.ts.map +0 -1
  148. package/dist/esm/apis/AgentsApi.js.map +0 -1
  149. package/dist/esm/apis/AskAiApi.d.ts.map +0 -1
  150. package/dist/esm/apis/AskAiApi.js.map +0 -1
  151. package/dist/esm/apis/EnvDataApi.d.ts.map +0 -1
  152. package/dist/esm/apis/EnvDataApi.js.map +0 -1
  153. package/dist/esm/apis/FlowsApi.d.ts.map +0 -1
  154. package/dist/esm/apis/FlowsApi.js.map +0 -1
  155. package/dist/esm/apis/FlowsFilesApi.d.ts.map +0 -1
  156. package/dist/esm/apis/FlowsFilesApi.js.map +0 -1
  157. package/dist/esm/apis/FlowsToolCallsApi.d.ts.map +0 -1
  158. package/dist/esm/apis/FlowsToolCallsApi.js.map +0 -1
  159. package/dist/esm/apis/GptConfigsApi.d.ts.map +0 -1
  160. package/dist/esm/apis/GptConfigsApi.js.map +0 -1
  161. package/dist/esm/apis/PingApi.d.ts.map +0 -1
  162. package/dist/esm/apis/PingApi.js.map +0 -1
  163. package/dist/esm/apis/SchemaApi.d.ts.map +0 -1
  164. package/dist/esm/apis/SchemaApi.js.map +0 -1
  165. package/dist/esm/apis/TargetsApi.d.ts.map +0 -1
  166. package/dist/esm/apis/TargetsApi.js.map +0 -1
  167. package/dist/esm/apis/ToolsApi.d.ts.map +0 -1
  168. package/dist/esm/apis/ToolsApi.js.map +0 -1
  169. package/dist/esm/bindings/NamedBindingCallback.d.ts.map +0 -1
  170. package/dist/esm/bindings/NamedBindingCallback.js.map +0 -1
  171. package/dist/esm/bindings/PageInteractionTracker.d.ts.map +0 -1
  172. package/dist/esm/bindings/PageInteractionTracker.js.map +0 -1
  173. package/dist/esm/bindings/SetDonobuAnnotations.d.ts.map +0 -1
  174. package/dist/esm/bindings/SetDonobuAnnotations.js.map +0 -1
  175. package/dist/esm/browser-side-scripts/dialog-prompt-tracker.d.ts.map +0 -1
  176. package/dist/esm/browser-side-scripts/dialog-prompt-tracker.js.map +0 -1
  177. package/dist/esm/browser-side-scripts/donobu-namespace.d.ts.map +0 -1
  178. package/dist/esm/browser-side-scripts/donobu-namespace.js.map +0 -1
  179. package/dist/esm/browser-side-scripts/interactive-elements-tracker.d.ts.map +0 -1
  180. package/dist/esm/browser-side-scripts/interactive-elements-tracker.js.map +0 -1
  181. package/dist/esm/browser-side-scripts/page-interactions-tracker.d.ts.map +0 -1
  182. package/dist/esm/browser-side-scripts/page-interactions-tracker.js.map +0 -1
  183. package/dist/esm/browser-side-scripts/smart-selector-generator.d.ts.map +0 -1
  184. package/dist/esm/browser-side-scripts/smart-selector-generator.js.map +0 -1
  185. package/dist/esm/cli/donobu-cli.d.ts.map +0 -1
  186. package/dist/esm/cli/donobu-cli.js.map +0 -1
  187. package/dist/esm/cli/generate-site-tests.d.ts.map +0 -1
  188. package/dist/esm/cli/generate-site-tests.js.map +0 -1
  189. package/dist/esm/cli/install-donobu-plugin.d.ts.map +0 -1
  190. package/dist/esm/cli/install-donobu-plugin.js.map +0 -1
  191. package/dist/esm/cli/playwright-json-to-html.d.ts.map +0 -1
  192. package/dist/esm/cli/playwright-json-to-html.js.map +0 -1
  193. package/dist/esm/cli/playwright-json-to-markdown.d.ts.map +0 -1
  194. package/dist/esm/cli/playwright-json-to-markdown.js.map +0 -1
  195. package/dist/esm/cli/playwright-json-to-slack-json.d.ts.map +0 -1
  196. package/dist/esm/cli/playwright-json-to-slack-json.js.map +0 -1
  197. package/dist/esm/clients/AnthropicGptClient.d.ts.map +0 -1
  198. package/dist/esm/clients/AnthropicGptClient.js.map +0 -1
  199. package/dist/esm/clients/DonobuGptClient.d.ts.map +0 -1
  200. package/dist/esm/clients/DonobuGptClient.js.map +0 -1
  201. package/dist/esm/clients/GoogleGenerativeAiGptClient.d.ts.map +0 -1
  202. package/dist/esm/clients/GoogleGenerativeAiGptClient.js.map +0 -1
  203. package/dist/esm/clients/GptClient.d.ts.map +0 -1
  204. package/dist/esm/clients/GptClient.js.map +0 -1
  205. package/dist/esm/clients/GptClientFactory.d.ts.map +0 -1
  206. package/dist/esm/clients/GptClientFactory.js.map +0 -1
  207. package/dist/esm/clients/GptClientPlugin.d.ts.map +0 -1
  208. package/dist/esm/clients/GptClientPlugin.js.map +0 -1
  209. package/dist/esm/clients/OpenAiGptClient.d.ts.map +0 -1
  210. package/dist/esm/clients/OpenAiGptClient.js.map +0 -1
  211. package/dist/esm/clients/VercelAiGptClient.d.ts.map +0 -1
  212. package/dist/esm/clients/VercelAiGptClient.js.map +0 -1
  213. package/dist/esm/codegen/CodeGenerator.d.ts.map +0 -1
  214. package/dist/esm/codegen/CodeGenerator.js.map +0 -1
  215. package/dist/esm/codegen/runGenerateSiteTests.d.ts.map +0 -1
  216. package/dist/esm/codegen/runGenerateSiteTests.js.map +0 -1
  217. package/dist/esm/envVars.d.ts.map +0 -1
  218. package/dist/esm/envVars.js.map +0 -1
  219. package/dist/esm/exceptions/ActiveFlowNotFoundException.d.ts.map +0 -1
  220. package/dist/esm/exceptions/ActiveFlowNotFoundException.js.map +0 -1
  221. package/dist/esm/exceptions/BrowserStateNotFoundException.d.ts.map +0 -1
  222. package/dist/esm/exceptions/BrowserStateNotFoundException.js.map +0 -1
  223. package/dist/esm/exceptions/CannotDeleteRunningFlowException.d.ts.map +0 -1
  224. package/dist/esm/exceptions/CannotDeleteRunningFlowException.js.map +0 -1
  225. package/dist/esm/exceptions/ChromeNotInstalledException.d.ts.map +0 -1
  226. package/dist/esm/exceptions/ChromeNotInstalledException.js.map +0 -1
  227. package/dist/esm/exceptions/DonobuException.d.ts.map +0 -1
  228. package/dist/esm/exceptions/DonobuException.js.map +0 -1
  229. package/dist/esm/exceptions/FlowNotFoundException.d.ts.map +0 -1
  230. package/dist/esm/exceptions/FlowNotFoundException.js.map +0 -1
  231. package/dist/esm/exceptions/GptApiKeysNotSetupException.d.ts.map +0 -1
  232. package/dist/esm/exceptions/GptApiKeysNotSetupException.js.map +0 -1
  233. package/dist/esm/exceptions/GptConfigNotFoundException.d.ts.map +0 -1
  234. package/dist/esm/exceptions/GptConfigNotFoundException.js.map +0 -1
  235. package/dist/esm/exceptions/GptModelNotFoundException.d.ts.map +0 -1
  236. package/dist/esm/exceptions/GptModelNotFoundException.js.map +0 -1
  237. package/dist/esm/exceptions/GptPlatformAuthenticationFailedException.d.ts.map +0 -1
  238. package/dist/esm/exceptions/GptPlatformAuthenticationFailedException.js.map +0 -1
  239. package/dist/esm/exceptions/GptPlatformInsufficientQuotaException.d.ts.map +0 -1
  240. package/dist/esm/exceptions/GptPlatformInsufficientQuotaException.js.map +0 -1
  241. package/dist/esm/exceptions/GptPlatformInternalErrorException.d.ts.map +0 -1
  242. package/dist/esm/exceptions/GptPlatformInternalErrorException.js.map +0 -1
  243. package/dist/esm/exceptions/GptPlatformNotReachableException.d.ts.map +0 -1
  244. package/dist/esm/exceptions/GptPlatformNotReachableException.js.map +0 -1
  245. package/dist/esm/exceptions/GptPlatformRateLimitedException.d.ts.map +0 -1
  246. package/dist/esm/exceptions/GptPlatformRateLimitedException.js.map +0 -1
  247. package/dist/esm/exceptions/InvalidParamValueException.d.ts.map +0 -1
  248. package/dist/esm/exceptions/InvalidParamValueException.js.map +0 -1
  249. package/dist/esm/exceptions/NoApiAccessTokenPresentException.d.ts.map +0 -1
  250. package/dist/esm/exceptions/NoApiAccessTokenPresentException.js.map +0 -1
  251. package/dist/esm/exceptions/PageAiException.d.ts.map +0 -1
  252. package/dist/esm/exceptions/PageAiException.js.map +0 -1
  253. package/dist/esm/exceptions/PageClosedException.d.ts.map +0 -1
  254. package/dist/esm/exceptions/PageClosedException.js.map +0 -1
  255. package/dist/esm/exceptions/TooManyRequestsException.d.ts.map +0 -1
  256. package/dist/esm/exceptions/TooManyRequestsException.js.map +0 -1
  257. package/dist/esm/exceptions/ToolCallFailedException.d.ts.map +0 -1
  258. package/dist/esm/exceptions/ToolCallFailedException.js.map +0 -1
  259. package/dist/esm/exceptions/ToolCallNotFoundException.d.ts.map +0 -1
  260. package/dist/esm/exceptions/ToolCallNotFoundException.js.map +0 -1
  261. package/dist/esm/exceptions/ToolRequiresGptException.d.ts.map +0 -1
  262. package/dist/esm/exceptions/ToolRequiresGptException.js.map +0 -1
  263. package/dist/esm/exceptions/UnknownToolException.d.ts.map +0 -1
  264. package/dist/esm/exceptions/UnknownToolException.js.map +0 -1
  265. package/dist/esm/exceptions/UserInterruptException.d.ts.map +0 -1
  266. package/dist/esm/exceptions/UserInterruptException.js.map +0 -1
  267. package/dist/esm/init.d.ts.map +0 -1
  268. package/dist/esm/init.js.map +0 -1
  269. package/dist/esm/lib/ai/PageAi.d.ts.map +0 -1
  270. package/dist/esm/lib/ai/PageAi.js.map +0 -1
  271. package/dist/esm/lib/ai/cache/assertCache.d.ts.map +0 -1
  272. package/dist/esm/lib/ai/cache/assertCache.js.map +0 -1
  273. package/dist/esm/lib/ai/cache/cache.d.ts.map +0 -1
  274. package/dist/esm/lib/ai/cache/cache.js.map +0 -1
  275. package/dist/esm/lib/ai/cache/cacheEntryBuilder.d.ts.map +0 -1
  276. package/dist/esm/lib/ai/cache/cacheEntryBuilder.js.map +0 -1
  277. package/dist/esm/lib/ai/cache/cacheLocator.d.ts.map +0 -1
  278. package/dist/esm/lib/ai/cache/cacheLocator.js.map +0 -1
  279. package/dist/esm/lib/ai/index.d.ts.map +0 -1
  280. package/dist/esm/lib/ai/index.js.map +0 -1
  281. package/dist/esm/lib/index.d.ts.map +0 -1
  282. package/dist/esm/lib/index.js.map +0 -1
  283. package/dist/esm/lib/page/DonobuExtendedPage.d.ts.map +0 -1
  284. package/dist/esm/lib/page/DonobuExtendedPage.js.map +0 -1
  285. package/dist/esm/lib/page/SmartSelector.d.ts.map +0 -1
  286. package/dist/esm/lib/page/SmartSelector.js.map +0 -1
  287. package/dist/esm/lib/page/extendPage.d.ts.map +0 -1
  288. package/dist/esm/lib/page/extendPage.js.map +0 -1
  289. package/dist/esm/lib/page/index.d.ts.map +0 -1
  290. package/dist/esm/lib/page/index.js.map +0 -1
  291. package/dist/esm/lib/page/originalGotoRegistry.d.ts.map +0 -1
  292. package/dist/esm/lib/page/originalGotoRegistry.js.map +0 -1
  293. package/dist/esm/lib/page/tbd/actionRecorder.d.ts.map +0 -1
  294. package/dist/esm/lib/page/tbd/actionRecorder.js.map +0 -1
  295. package/dist/esm/lib/page/tbd/callSiteCapture.d.ts.map +0 -1
  296. package/dist/esm/lib/page/tbd/callSiteCapture.js.map +0 -1
  297. package/dist/esm/lib/page/tbd/fileRewriter.d.ts.map +0 -1
  298. package/dist/esm/lib/page/tbd/fileRewriter.js.map +0 -1
  299. package/dist/esm/lib/page/tbd/tbdTypes.d.ts.map +0 -1
  300. package/dist/esm/lib/page/tbd/tbdTypes.js.map +0 -1
  301. package/dist/esm/lib/page/tbd.d.ts.map +0 -1
  302. package/dist/esm/lib/page/tbd.js.map +0 -1
  303. package/dist/esm/lib/test/fixtures/browserState.d.ts.map +0 -1
  304. package/dist/esm/lib/test/fixtures/browserState.js.map +0 -1
  305. package/dist/esm/lib/test/fixtures/gptClients.d.ts.map +0 -1
  306. package/dist/esm/lib/test/fixtures/gptClients.js.map +0 -1
  307. package/dist/esm/lib/test/index.d.ts.map +0 -1
  308. package/dist/esm/lib/test/index.js.map +0 -1
  309. package/dist/esm/lib/test/testExtension.d.ts.map +0 -1
  310. package/dist/esm/lib/test/testExtension.js.map +0 -1
  311. package/dist/esm/lib/test/utils/TestFileUpdater.d.ts.map +0 -1
  312. package/dist/esm/lib/test/utils/TestFileUpdater.js.map +0 -1
  313. package/dist/esm/lib/test/utils/donobuTestStack.d.ts.map +0 -1
  314. package/dist/esm/lib/test/utils/donobuTestStack.js.map +0 -1
  315. package/dist/esm/lib/test/utils/selfHealing.d.ts.map +0 -1
  316. package/dist/esm/lib/test/utils/selfHealing.js.map +0 -1
  317. package/dist/esm/lib/test/utils/triageTestFailure.d.ts.map +0 -1
  318. package/dist/esm/lib/test/utils/triageTestFailure.js.map +0 -1
  319. package/dist/esm/main.d.ts.map +0 -1
  320. package/dist/esm/main.js.map +0 -1
  321. package/dist/esm/managers/AdminApiController.d.ts.map +0 -1
  322. package/dist/esm/managers/AdminApiController.js.map +0 -1
  323. package/dist/esm/managers/AgentsManager.d.ts.map +0 -1
  324. package/dist/esm/managers/AgentsManager.js.map +0 -1
  325. package/dist/esm/managers/DonobuFlow.d.ts.map +0 -1
  326. package/dist/esm/managers/DonobuFlow.js.map +0 -1
  327. package/dist/esm/managers/DonobuFlowsManager.d.ts.map +0 -1
  328. package/dist/esm/managers/DonobuFlowsManager.js.map +0 -1
  329. package/dist/esm/managers/DonobuStack.d.ts.map +0 -1
  330. package/dist/esm/managers/DonobuStack.js.map +0 -1
  331. package/dist/esm/managers/EnvDataManager.d.ts.map +0 -1
  332. package/dist/esm/managers/EnvDataManager.js.map +0 -1
  333. package/dist/esm/managers/FlowCatalog.d.ts.map +0 -1
  334. package/dist/esm/managers/FlowCatalog.js.map +0 -1
  335. package/dist/esm/managers/FlowDependencyAnalyzer.d.ts.map +0 -1
  336. package/dist/esm/managers/FlowDependencyAnalyzer.js.map +0 -1
  337. package/dist/esm/managers/FlowDependencyResolver.d.ts +0 -20
  338. package/dist/esm/managers/FlowDependencyResolver.d.ts.map +0 -1
  339. package/dist/esm/managers/FlowDependencyResolver.js +0 -101
  340. package/dist/esm/managers/FlowDependencyResolver.js.map +0 -1
  341. package/dist/esm/managers/FlowRuntime.d.ts.map +0 -1
  342. package/dist/esm/managers/FlowRuntime.js.map +0 -1
  343. package/dist/esm/managers/GptConfigsManager.d.ts.map +0 -1
  344. package/dist/esm/managers/GptConfigsManager.js.map +0 -1
  345. package/dist/esm/managers/InteractionVisualizer.d.ts.map +0 -1
  346. package/dist/esm/managers/InteractionVisualizer.js.map +0 -1
  347. package/dist/esm/managers/PageInspector.d.ts.map +0 -1
  348. package/dist/esm/managers/PageInspector.js.map +0 -1
  349. package/dist/esm/managers/PluginLoader.d.ts.map +0 -1
  350. package/dist/esm/managers/PluginLoader.js.map +0 -1
  351. package/dist/esm/managers/TargetInspector.d.ts.map +0 -1
  352. package/dist/esm/managers/TargetInspector.js.map +0 -1
  353. package/dist/esm/managers/ToolManager.d.ts.map +0 -1
  354. package/dist/esm/managers/ToolManager.js.map +0 -1
  355. package/dist/esm/managers/WebTargetInspector.d.ts.map +0 -1
  356. package/dist/esm/managers/WebTargetInspector.js.map +0 -1
  357. package/dist/esm/models/BrowserConfig.d.ts.map +0 -1
  358. package/dist/esm/models/BrowserConfig.js.map +0 -1
  359. package/dist/esm/models/BrowserDevice.d.ts.map +0 -1
  360. package/dist/esm/models/BrowserDevice.js.map +0 -1
  361. package/dist/esm/models/BrowserStateFlowReference.d.ts.map +0 -1
  362. package/dist/esm/models/BrowserStateFlowReference.js.map +0 -1
  363. package/dist/esm/models/BrowserStorageState.d.ts.map +0 -1
  364. package/dist/esm/models/BrowserStorageState.js.map +0 -1
  365. package/dist/esm/models/CodeGenerationOptions.d.ts.map +0 -1
  366. package/dist/esm/models/CodeGenerationOptions.js.map +0 -1
  367. package/dist/esm/models/ControlPanel.d.ts.map +0 -1
  368. package/dist/esm/models/ControlPanel.js.map +0 -1
  369. package/dist/esm/models/CreateDonobuFlow.d.ts.map +0 -1
  370. package/dist/esm/models/CreateDonobuFlow.js.map +0 -1
  371. package/dist/esm/models/CreateToolOptions.d.ts.map +0 -1
  372. package/dist/esm/models/CreateToolOptions.js.map +0 -1
  373. package/dist/esm/models/CustomTool.d.ts.map +0 -1
  374. package/dist/esm/models/CustomTool.js.map +0 -1
  375. package/dist/esm/models/DonobuAgentType.d.ts.map +0 -1
  376. package/dist/esm/models/DonobuAgentType.js.map +0 -1
  377. package/dist/esm/models/DonobuDeploymentEnvironment.d.ts.map +0 -1
  378. package/dist/esm/models/DonobuDeploymentEnvironment.js.map +0 -1
  379. package/dist/esm/models/DonobuErrorResponse.d.ts.map +0 -1
  380. package/dist/esm/models/DonobuErrorResponse.js.map +0 -1
  381. package/dist/esm/models/ElementSelector.d.ts.map +0 -1
  382. package/dist/esm/models/ElementSelector.js.map +0 -1
  383. package/dist/esm/models/FlowHandle.d.ts.map +0 -1
  384. package/dist/esm/models/FlowHandle.js.map +0 -1
  385. package/dist/esm/models/FlowMetadata.d.ts.map +0 -1
  386. package/dist/esm/models/FlowMetadata.js.map +0 -1
  387. package/dist/esm/models/FocusedTarget.d.ts.map +0 -1
  388. package/dist/esm/models/FocusedTarget.js.map +0 -1
  389. package/dist/esm/models/GptConfig.d.ts.map +0 -1
  390. package/dist/esm/models/GptConfig.js.map +0 -1
  391. package/dist/esm/models/GptMessage.d.ts.map +0 -1
  392. package/dist/esm/models/GptMessage.js.map +0 -1
  393. package/dist/esm/models/InteractableElement.d.ts.map +0 -1
  394. package/dist/esm/models/InteractableElement.js.map +0 -1
  395. package/dist/esm/models/PaginatedResult.d.ts.map +0 -1
  396. package/dist/esm/models/PaginatedResult.js.map +0 -1
  397. package/dist/esm/models/ProposedToolCall.d.ts.map +0 -1
  398. package/dist/esm/models/ProposedToolCall.js.map +0 -1
  399. package/dist/esm/models/TargetConfig.d.ts.map +0 -1
  400. package/dist/esm/models/TargetConfig.js.map +0 -1
  401. package/dist/esm/models/ToolCall.d.ts.map +0 -1
  402. package/dist/esm/models/ToolCall.js.map +0 -1
  403. package/dist/esm/models/ToolCallContext.d.ts.map +0 -1
  404. package/dist/esm/models/ToolCallContext.js.map +0 -1
  405. package/dist/esm/models/ToolCallResult.d.ts.map +0 -1
  406. package/dist/esm/models/ToolCallResult.js.map +0 -1
  407. package/dist/esm/models/ToolSchema.d.ts.map +0 -1
  408. package/dist/esm/models/ToolSchema.js.map +0 -1
  409. package/dist/esm/models/ToolTemplateDataSource.d.ts.map +0 -1
  410. package/dist/esm/models/ToolTemplateDataSource.js.map +0 -1
  411. package/dist/esm/models/VideoSegment.d.ts.map +0 -1
  412. package/dist/esm/models/VideoSegment.js.map +0 -1
  413. package/dist/esm/persistence/DonobuSqliteDb.d.ts.map +0 -1
  414. package/dist/esm/persistence/DonobuSqliteDb.js.map +0 -1
  415. package/dist/esm/persistence/PersistencePlugin.d.ts.map +0 -1
  416. package/dist/esm/persistence/PersistencePlugin.js.map +0 -1
  417. package/dist/esm/persistence/agents/AgentsPersistence.d.ts.map +0 -1
  418. package/dist/esm/persistence/agents/AgentsPersistence.js.map +0 -1
  419. package/dist/esm/persistence/agents/AgentsPersistenceSqlite.d.ts.map +0 -1
  420. package/dist/esm/persistence/agents/AgentsPersistenceSqlite.js.map +0 -1
  421. package/dist/esm/persistence/agents/AgentsPersistenceVolatile.d.ts.map +0 -1
  422. package/dist/esm/persistence/agents/AgentsPersistenceVolatile.js.map +0 -1
  423. package/dist/esm/persistence/env/EnvPersistence.d.ts.map +0 -1
  424. package/dist/esm/persistence/env/EnvPersistence.js.map +0 -1
  425. package/dist/esm/persistence/env/EnvPersistenceRegistry.d.ts.map +0 -1
  426. package/dist/esm/persistence/env/EnvPersistenceRegistry.js.map +0 -1
  427. package/dist/esm/persistence/env/EnvPersistenceSqlite.d.ts.map +0 -1
  428. package/dist/esm/persistence/env/EnvPersistenceSqlite.js.map +0 -1
  429. package/dist/esm/persistence/env/EnvPersistenceVolatile.d.ts.map +0 -1
  430. package/dist/esm/persistence/env/EnvPersistenceVolatile.js.map +0 -1
  431. package/dist/esm/persistence/flows/FlowsPersistence.d.ts.map +0 -1
  432. package/dist/esm/persistence/flows/FlowsPersistence.js.map +0 -1
  433. package/dist/esm/persistence/flows/FlowsPersistenceDonobuApi.d.ts.map +0 -1
  434. package/dist/esm/persistence/flows/FlowsPersistenceDonobuApi.js.map +0 -1
  435. package/dist/esm/persistence/flows/FlowsPersistenceRegistry.d.ts.map +0 -1
  436. package/dist/esm/persistence/flows/FlowsPersistenceRegistry.js.map +0 -1
  437. package/dist/esm/persistence/flows/FlowsPersistenceSqlite.d.ts.map +0 -1
  438. package/dist/esm/persistence/flows/FlowsPersistenceSqlite.js.map +0 -1
  439. package/dist/esm/persistence/flows/FlowsPersistenceVolatile.d.ts.map +0 -1
  440. package/dist/esm/persistence/flows/FlowsPersistenceVolatile.js.map +0 -1
  441. package/dist/esm/persistence/gptconfigs/GptConfigsPersistence.d.ts.map +0 -1
  442. package/dist/esm/persistence/gptconfigs/GptConfigsPersistence.js.map +0 -1
  443. package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceSqlite.d.ts.map +0 -1
  444. package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceSqlite.js.map +0 -1
  445. package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceVolatile.d.ts.map +0 -1
  446. package/dist/esm/persistence/gptconfigs/GptConfigsPersistenceVolatile.js.map +0 -1
  447. package/dist/esm/reporter/html.d.ts.map +0 -1
  448. package/dist/esm/reporter/html.js.map +0 -1
  449. package/dist/esm/targets/TargetRuntime.d.ts.map +0 -1
  450. package/dist/esm/targets/TargetRuntime.js.map +0 -1
  451. package/dist/esm/targets/TargetRuntimePlugin.d.ts.map +0 -1
  452. package/dist/esm/targets/TargetRuntimePlugin.js.map +0 -1
  453. package/dist/esm/targets/WebTargetRuntime.d.ts.map +0 -1
  454. package/dist/esm/targets/WebTargetRuntime.js.map +0 -1
  455. package/dist/esm/targets/resolveTargetRuntime.d.ts.map +0 -1
  456. package/dist/esm/targets/resolveTargetRuntime.js.map +0 -1
  457. package/dist/esm/tools/AcknowledgeUserInstruction.d.ts.map +0 -1
  458. package/dist/esm/tools/AcknowledgeUserInstruction.js.map +0 -1
  459. package/dist/esm/tools/AnalyzePageTextTool.d.ts.map +0 -1
  460. package/dist/esm/tools/AnalyzePageTextTool.js.map +0 -1
  461. package/dist/esm/tools/AssertPageTextTool.d.ts.map +0 -1
  462. package/dist/esm/tools/AssertPageTextTool.js.map +0 -1
  463. package/dist/esm/tools/AssertPageTool.d.ts.map +0 -1
  464. package/dist/esm/tools/AssertPageTool.js.map +0 -1
  465. package/dist/esm/tools/AssertTool.d.ts.map +0 -1
  466. package/dist/esm/tools/AssertTool.js.map +0 -1
  467. package/dist/esm/tools/ChangeWebBrowserTabTool.d.ts.map +0 -1
  468. package/dist/esm/tools/ChangeWebBrowserTabTool.js.map +0 -1
  469. package/dist/esm/tools/ChooseSelectOptionTool.d.ts.map +0 -1
  470. package/dist/esm/tools/ChooseSelectOptionTool.js.map +0 -1
  471. package/dist/esm/tools/ClickTool.d.ts.map +0 -1
  472. package/dist/esm/tools/ClickTool.js.map +0 -1
  473. package/dist/esm/tools/CreateBrowserCookieReportTool.d.ts.map +0 -1
  474. package/dist/esm/tools/CreateBrowserCookieReportTool.js.map +0 -1
  475. package/dist/esm/tools/CustomToolRunnerTool.d.ts.map +0 -1
  476. package/dist/esm/tools/CustomToolRunnerTool.js.map +0 -1
  477. package/dist/esm/tools/DetectBrokenLinksTool.d.ts.map +0 -1
  478. package/dist/esm/tools/DetectBrokenLinksTool.js.map +0 -1
  479. package/dist/esm/tools/DoubleClickTool.d.ts.map +0 -1
  480. package/dist/esm/tools/DoubleClickTool.js.map +0 -1
  481. package/dist/esm/tools/DownloadPdfTool.d.ts.map +0 -1
  482. package/dist/esm/tools/DownloadPdfTool.js.map +0 -1
  483. package/dist/esm/tools/GoForwardOrBackTool.d.ts.map +0 -1
  484. package/dist/esm/tools/GoForwardOrBackTool.js.map +0 -1
  485. package/dist/esm/tools/GoToWebpageTool.d.ts.map +0 -1
  486. package/dist/esm/tools/GoToWebpageTool.js.map +0 -1
  487. package/dist/esm/tools/HandleBrowserDialogTool.d.ts.map +0 -1
  488. package/dist/esm/tools/HandleBrowserDialogTool.js.map +0 -1
  489. package/dist/esm/tools/HoverOverElementTool.d.ts.map +0 -1
  490. package/dist/esm/tools/HoverOverElementTool.js.map +0 -1
  491. package/dist/esm/tools/InputFakerTool.d.ts.map +0 -1
  492. package/dist/esm/tools/InputFakerTool.js.map +0 -1
  493. package/dist/esm/tools/InputRandomizedEmailAddressTool.d.ts.map +0 -1
  494. package/dist/esm/tools/InputRandomizedEmailAddressTool.js.map +0 -1
  495. package/dist/esm/tools/InputTextTool.d.ts.map +0 -1
  496. package/dist/esm/tools/InputTextTool.js.map +0 -1
  497. package/dist/esm/tools/MakeCommentTool.d.ts.map +0 -1
  498. package/dist/esm/tools/MakeCommentTool.js.map +0 -1
  499. package/dist/esm/tools/MarkObjectiveCompleteTool.d.ts.map +0 -1
  500. package/dist/esm/tools/MarkObjectiveCompleteTool.js.map +0 -1
  501. package/dist/esm/tools/MarkObjectiveNotCompletableTool.d.ts.map +0 -1
  502. package/dist/esm/tools/MarkObjectiveNotCompletableTool.js.map +0 -1
  503. package/dist/esm/tools/PauseForUserInteractionTool.d.ts.map +0 -1
  504. package/dist/esm/tools/PauseForUserInteractionTool.js.map +0 -1
  505. package/dist/esm/tools/PressKeyTool.d.ts.map +0 -1
  506. package/dist/esm/tools/PressKeyTool.js.map +0 -1
  507. package/dist/esm/tools/ReloadPageTool.d.ts.map +0 -1
  508. package/dist/esm/tools/ReloadPageTool.js.map +0 -1
  509. package/dist/esm/tools/RememberPageTextTool.d.ts.map +0 -1
  510. package/dist/esm/tools/RememberPageTextTool.js.map +0 -1
  511. package/dist/esm/tools/ReplayableInteraction.d.ts.map +0 -1
  512. package/dist/esm/tools/ReplayableInteraction.js.map +0 -1
  513. package/dist/esm/tools/RunAccessibilityTestTool.d.ts.map +0 -1
  514. package/dist/esm/tools/RunAccessibilityTestTool.js.map +0 -1
  515. package/dist/esm/tools/RunInlineJavaScriptCodeTool.d.ts.map +0 -1
  516. package/dist/esm/tools/RunInlineJavaScriptCodeTool.js.map +0 -1
  517. package/dist/esm/tools/RunSandboxedJavaScriptCodeTool.d.ts.map +0 -1
  518. package/dist/esm/tools/RunSandboxedJavaScriptCodeTool.js.map +0 -1
  519. package/dist/esm/tools/SaveWebpageAsPdfTool.d.ts.map +0 -1
  520. package/dist/esm/tools/SaveWebpageAsPdfTool.js.map +0 -1
  521. package/dist/esm/tools/ScrollPageTool.d.ts.map +0 -1
  522. package/dist/esm/tools/ScrollPageTool.js.map +0 -1
  523. package/dist/esm/tools/SetRunModeTool.d.ts.map +0 -1
  524. package/dist/esm/tools/SetRunModeTool.js.map +0 -1
  525. package/dist/esm/tools/SummarizeLearningsTool.d.ts.map +0 -1
  526. package/dist/esm/tools/SummarizeLearningsTool.js.map +0 -1
  527. package/dist/esm/tools/Tool.d.ts.map +0 -1
  528. package/dist/esm/tools/Tool.js.map +0 -1
  529. package/dist/esm/tools/TriggerDonobuFlowTool.d.ts.map +0 -1
  530. package/dist/esm/tools/TriggerDonobuFlowTool.js.map +0 -1
  531. package/dist/esm/tools/WaitTool.d.ts.map +0 -1
  532. package/dist/esm/tools/WaitTool.js.map +0 -1
  533. package/dist/esm/utils/BrowserUtils.d.ts.map +0 -1
  534. package/dist/esm/utils/BrowserUtils.js.map +0 -1
  535. package/dist/esm/utils/FlowLogBuffer.d.ts.map +0 -1
  536. package/dist/esm/utils/FlowLogBuffer.js.map +0 -1
  537. package/dist/esm/utils/JsonPath.d.ts.map +0 -1
  538. package/dist/esm/utils/JsonPath.js.map +0 -1
  539. package/dist/esm/utils/JsonSchemaUtils.d.ts.map +0 -1
  540. package/dist/esm/utils/JsonSchemaUtils.js.map +0 -1
  541. package/dist/esm/utils/JsonUtils.d.ts.map +0 -1
  542. package/dist/esm/utils/JsonUtils.js.map +0 -1
  543. package/dist/esm/utils/Logger.d.ts.map +0 -1
  544. package/dist/esm/utils/Logger.js.map +0 -1
  545. package/dist/esm/utils/MiscUtils.d.ts.map +0 -1
  546. package/dist/esm/utils/MiscUtils.js.map +0 -1
  547. package/dist/esm/utils/PlaywrightUtils.d.ts.map +0 -1
  548. package/dist/esm/utils/PlaywrightUtils.js.map +0 -1
  549. package/dist/esm/utils/TargetUtils.d.ts.map +0 -1
  550. package/dist/esm/utils/TargetUtils.js.map +0 -1
  551. package/dist/esm/utils/TemplateInterpolator.d.ts.map +0 -1
  552. package/dist/esm/utils/TemplateInterpolator.js.map +0 -1
  553. package/dist/esm/utils/VerbConverter.d.ts.map +0 -1
  554. package/dist/esm/utils/VerbConverter.js.map +0 -1
  555. package/dist/esm/utils/createTool.d.ts.map +0 -1
  556. package/dist/esm/utils/createTool.js.map +0 -1
  557. package/dist/exceptions/ActiveFlowNotFoundException.d.ts.map +0 -1
  558. package/dist/exceptions/ActiveFlowNotFoundException.js.map +0 -1
  559. package/dist/exceptions/BrowserStateNotFoundException.d.ts.map +0 -1
  560. package/dist/exceptions/BrowserStateNotFoundException.js.map +0 -1
  561. package/dist/exceptions/CannotDeleteRunningFlowException.d.ts.map +0 -1
  562. package/dist/exceptions/CannotDeleteRunningFlowException.js.map +0 -1
  563. package/dist/exceptions/ChromeNotInstalledException.d.ts.map +0 -1
  564. package/dist/exceptions/ChromeNotInstalledException.js.map +0 -1
  565. package/dist/exceptions/DonobuException.d.ts.map +0 -1
  566. package/dist/exceptions/DonobuException.js.map +0 -1
  567. package/dist/exceptions/FlowNotFoundException.d.ts.map +0 -1
  568. package/dist/exceptions/FlowNotFoundException.js.map +0 -1
  569. package/dist/exceptions/GptApiKeysNotSetupException.d.ts.map +0 -1
  570. package/dist/exceptions/GptApiKeysNotSetupException.js.map +0 -1
  571. package/dist/exceptions/GptConfigNotFoundException.d.ts.map +0 -1
  572. package/dist/exceptions/GptConfigNotFoundException.js.map +0 -1
  573. package/dist/exceptions/GptModelNotFoundException.d.ts.map +0 -1
  574. package/dist/exceptions/GptModelNotFoundException.js.map +0 -1
  575. package/dist/exceptions/GptPlatformAuthenticationFailedException.d.ts.map +0 -1
  576. package/dist/exceptions/GptPlatformAuthenticationFailedException.js.map +0 -1
  577. package/dist/exceptions/GptPlatformInsufficientQuotaException.d.ts.map +0 -1
  578. package/dist/exceptions/GptPlatformInsufficientQuotaException.js.map +0 -1
  579. package/dist/exceptions/GptPlatformInternalErrorException.d.ts.map +0 -1
  580. package/dist/exceptions/GptPlatformInternalErrorException.js.map +0 -1
  581. package/dist/exceptions/GptPlatformNotReachableException.d.ts.map +0 -1
  582. package/dist/exceptions/GptPlatformNotReachableException.js.map +0 -1
  583. package/dist/exceptions/GptPlatformRateLimitedException.d.ts.map +0 -1
  584. package/dist/exceptions/GptPlatformRateLimitedException.js.map +0 -1
  585. package/dist/exceptions/InvalidParamValueException.d.ts.map +0 -1
  586. package/dist/exceptions/InvalidParamValueException.js.map +0 -1
  587. package/dist/exceptions/NoApiAccessTokenPresentException.d.ts.map +0 -1
  588. package/dist/exceptions/NoApiAccessTokenPresentException.js.map +0 -1
  589. package/dist/exceptions/PageAiException.d.ts.map +0 -1
  590. package/dist/exceptions/PageAiException.js.map +0 -1
  591. package/dist/exceptions/PageClosedException.d.ts.map +0 -1
  592. package/dist/exceptions/PageClosedException.js.map +0 -1
  593. package/dist/exceptions/TooManyRequestsException.d.ts.map +0 -1
  594. package/dist/exceptions/TooManyRequestsException.js.map +0 -1
  595. package/dist/exceptions/ToolCallFailedException.d.ts.map +0 -1
  596. package/dist/exceptions/ToolCallFailedException.js.map +0 -1
  597. package/dist/exceptions/ToolCallNotFoundException.d.ts.map +0 -1
  598. package/dist/exceptions/ToolCallNotFoundException.js.map +0 -1
  599. package/dist/exceptions/ToolRequiresGptException.d.ts.map +0 -1
  600. package/dist/exceptions/ToolRequiresGptException.js.map +0 -1
  601. package/dist/exceptions/UnknownToolException.d.ts.map +0 -1
  602. package/dist/exceptions/UnknownToolException.js.map +0 -1
  603. package/dist/exceptions/UserInterruptException.d.ts.map +0 -1
  604. package/dist/exceptions/UserInterruptException.js.map +0 -1
  605. package/dist/init.d.ts.map +0 -1
  606. package/dist/init.js.map +0 -1
  607. package/dist/lib/ai/PageAi.d.ts.map +0 -1
  608. package/dist/lib/ai/PageAi.js.map +0 -1
  609. package/dist/lib/ai/cache/assertCache.d.ts.map +0 -1
  610. package/dist/lib/ai/cache/assertCache.js.map +0 -1
  611. package/dist/lib/ai/cache/cache.d.ts.map +0 -1
  612. package/dist/lib/ai/cache/cache.js.map +0 -1
  613. package/dist/lib/ai/cache/cacheEntryBuilder.d.ts.map +0 -1
  614. package/dist/lib/ai/cache/cacheEntryBuilder.js.map +0 -1
  615. package/dist/lib/ai/cache/cacheLocator.d.ts.map +0 -1
  616. package/dist/lib/ai/cache/cacheLocator.js.map +0 -1
  617. package/dist/lib/ai/index.d.ts.map +0 -1
  618. package/dist/lib/ai/index.js.map +0 -1
  619. package/dist/lib/index.d.ts.map +0 -1
  620. package/dist/lib/index.js.map +0 -1
  621. package/dist/lib/page/DonobuExtendedPage.d.ts.map +0 -1
  622. package/dist/lib/page/DonobuExtendedPage.js.map +0 -1
  623. package/dist/lib/page/SmartSelector.d.ts.map +0 -1
  624. package/dist/lib/page/SmartSelector.js.map +0 -1
  625. package/dist/lib/page/extendPage.d.ts.map +0 -1
  626. package/dist/lib/page/extendPage.js.map +0 -1
  627. package/dist/lib/page/index.d.ts.map +0 -1
  628. package/dist/lib/page/index.js.map +0 -1
  629. package/dist/lib/page/originalGotoRegistry.d.ts.map +0 -1
  630. package/dist/lib/page/originalGotoRegistry.js.map +0 -1
  631. package/dist/lib/page/tbd/actionRecorder.d.ts.map +0 -1
  632. package/dist/lib/page/tbd/actionRecorder.js.map +0 -1
  633. package/dist/lib/page/tbd/callSiteCapture.d.ts.map +0 -1
  634. package/dist/lib/page/tbd/callSiteCapture.js.map +0 -1
  635. package/dist/lib/page/tbd/fileRewriter.d.ts.map +0 -1
  636. package/dist/lib/page/tbd/fileRewriter.js.map +0 -1
  637. package/dist/lib/page/tbd/tbdTypes.d.ts.map +0 -1
  638. package/dist/lib/page/tbd/tbdTypes.js.map +0 -1
  639. package/dist/lib/page/tbd.d.ts.map +0 -1
  640. package/dist/lib/page/tbd.js.map +0 -1
  641. package/dist/lib/test/fixtures/browserState.d.ts.map +0 -1
  642. package/dist/lib/test/fixtures/browserState.js.map +0 -1
  643. package/dist/lib/test/fixtures/gptClients.d.ts.map +0 -1
  644. package/dist/lib/test/fixtures/gptClients.js.map +0 -1
  645. package/dist/lib/test/index.d.ts.map +0 -1
  646. package/dist/lib/test/index.js.map +0 -1
  647. package/dist/lib/test/testExtension.d.ts.map +0 -1
  648. package/dist/lib/test/testExtension.js.map +0 -1
  649. package/dist/lib/test/utils/TestFileUpdater.d.ts.map +0 -1
  650. package/dist/lib/test/utils/TestFileUpdater.js.map +0 -1
  651. package/dist/lib/test/utils/donobuTestStack.d.ts.map +0 -1
  652. package/dist/lib/test/utils/donobuTestStack.js.map +0 -1
  653. package/dist/lib/test/utils/selfHealing.d.ts.map +0 -1
  654. package/dist/lib/test/utils/selfHealing.js.map +0 -1
  655. package/dist/lib/test/utils/triageTestFailure.d.ts.map +0 -1
  656. package/dist/lib/test/utils/triageTestFailure.js.map +0 -1
  657. package/dist/main.d.ts.map +0 -1
  658. package/dist/main.js.map +0 -1
  659. package/dist/managers/AdminApiController.d.ts.map +0 -1
  660. package/dist/managers/AdminApiController.js.map +0 -1
  661. package/dist/managers/AgentsManager.d.ts.map +0 -1
  662. package/dist/managers/AgentsManager.js.map +0 -1
  663. package/dist/managers/DonobuFlow.d.ts.map +0 -1
  664. package/dist/managers/DonobuFlow.js.map +0 -1
  665. package/dist/managers/DonobuFlowsManager.d.ts.map +0 -1
  666. package/dist/managers/DonobuFlowsManager.js.map +0 -1
  667. package/dist/managers/DonobuStack.d.ts.map +0 -1
  668. package/dist/managers/DonobuStack.js.map +0 -1
  669. package/dist/managers/EnvDataManager.d.ts.map +0 -1
  670. package/dist/managers/EnvDataManager.js.map +0 -1
  671. package/dist/managers/FlowCatalog.d.ts.map +0 -1
  672. package/dist/managers/FlowCatalog.js.map +0 -1
  673. package/dist/managers/FlowDependencyAnalyzer.d.ts.map +0 -1
  674. package/dist/managers/FlowDependencyAnalyzer.js.map +0 -1
  675. package/dist/managers/FlowDependencyResolver.d.ts +0 -20
  676. package/dist/managers/FlowDependencyResolver.d.ts.map +0 -1
  677. package/dist/managers/FlowDependencyResolver.js +0 -101
  678. package/dist/managers/FlowDependencyResolver.js.map +0 -1
  679. package/dist/managers/FlowRuntime.d.ts.map +0 -1
  680. package/dist/managers/FlowRuntime.js.map +0 -1
  681. package/dist/managers/GptConfigsManager.d.ts.map +0 -1
  682. package/dist/managers/GptConfigsManager.js.map +0 -1
  683. package/dist/managers/InteractionVisualizer.d.ts.map +0 -1
  684. package/dist/managers/InteractionVisualizer.js.map +0 -1
  685. package/dist/managers/PageInspector.d.ts.map +0 -1
  686. package/dist/managers/PageInspector.js.map +0 -1
  687. package/dist/managers/PluginLoader.d.ts.map +0 -1
  688. package/dist/managers/PluginLoader.js.map +0 -1
  689. package/dist/managers/TargetInspector.d.ts.map +0 -1
  690. package/dist/managers/TargetInspector.js.map +0 -1
  691. package/dist/managers/ToolManager.d.ts.map +0 -1
  692. package/dist/managers/ToolManager.js.map +0 -1
  693. package/dist/managers/WebTargetInspector.d.ts.map +0 -1
  694. package/dist/managers/WebTargetInspector.js.map +0 -1
  695. package/dist/models/BrowserConfig.d.ts.map +0 -1
  696. package/dist/models/BrowserConfig.js.map +0 -1
  697. package/dist/models/BrowserDevice.d.ts.map +0 -1
  698. package/dist/models/BrowserDevice.js.map +0 -1
  699. package/dist/models/BrowserStateFlowReference.d.ts.map +0 -1
  700. package/dist/models/BrowserStateFlowReference.js.map +0 -1
  701. package/dist/models/BrowserStorageState.d.ts.map +0 -1
  702. package/dist/models/BrowserStorageState.js.map +0 -1
  703. package/dist/models/CodeGenerationOptions.d.ts.map +0 -1
  704. package/dist/models/CodeGenerationOptions.js.map +0 -1
  705. package/dist/models/ControlPanel.d.ts.map +0 -1
  706. package/dist/models/ControlPanel.js.map +0 -1
  707. package/dist/models/CreateDonobuFlow.d.ts.map +0 -1
  708. package/dist/models/CreateDonobuFlow.js.map +0 -1
  709. package/dist/models/CreateToolOptions.d.ts.map +0 -1
  710. package/dist/models/CreateToolOptions.js.map +0 -1
  711. package/dist/models/CustomTool.d.ts.map +0 -1
  712. package/dist/models/CustomTool.js.map +0 -1
  713. package/dist/models/DonobuAgentType.d.ts.map +0 -1
  714. package/dist/models/DonobuAgentType.js.map +0 -1
  715. package/dist/models/DonobuDeploymentEnvironment.d.ts.map +0 -1
  716. package/dist/models/DonobuDeploymentEnvironment.js.map +0 -1
  717. package/dist/models/DonobuErrorResponse.d.ts.map +0 -1
  718. package/dist/models/DonobuErrorResponse.js.map +0 -1
  719. package/dist/models/ElementSelector.d.ts.map +0 -1
  720. package/dist/models/ElementSelector.js.map +0 -1
  721. package/dist/models/FlowHandle.d.ts.map +0 -1
  722. package/dist/models/FlowHandle.js.map +0 -1
  723. package/dist/models/FlowMetadata.d.ts.map +0 -1
  724. package/dist/models/FlowMetadata.js.map +0 -1
  725. package/dist/models/FocusedTarget.d.ts.map +0 -1
  726. package/dist/models/FocusedTarget.js.map +0 -1
  727. package/dist/models/GptConfig.d.ts.map +0 -1
  728. package/dist/models/GptConfig.js.map +0 -1
  729. package/dist/models/GptMessage.d.ts.map +0 -1
  730. package/dist/models/GptMessage.js.map +0 -1
  731. package/dist/models/InteractableElement.d.ts.map +0 -1
  732. package/dist/models/InteractableElement.js.map +0 -1
  733. package/dist/models/PaginatedResult.d.ts.map +0 -1
  734. package/dist/models/PaginatedResult.js.map +0 -1
  735. package/dist/models/ProposedToolCall.d.ts.map +0 -1
  736. package/dist/models/ProposedToolCall.js.map +0 -1
  737. package/dist/models/TargetConfig.d.ts.map +0 -1
  738. package/dist/models/TargetConfig.js.map +0 -1
  739. package/dist/models/ToolCall.d.ts.map +0 -1
  740. package/dist/models/ToolCall.js.map +0 -1
  741. package/dist/models/ToolCallContext.d.ts.map +0 -1
  742. package/dist/models/ToolCallContext.js.map +0 -1
  743. package/dist/models/ToolCallResult.d.ts.map +0 -1
  744. package/dist/models/ToolCallResult.js.map +0 -1
  745. package/dist/models/ToolSchema.d.ts.map +0 -1
  746. package/dist/models/ToolSchema.js.map +0 -1
  747. package/dist/models/ToolTemplateDataSource.d.ts.map +0 -1
  748. package/dist/models/ToolTemplateDataSource.js.map +0 -1
  749. package/dist/models/VideoSegment.d.ts.map +0 -1
  750. package/dist/models/VideoSegment.js.map +0 -1
  751. package/dist/persistence/DonobuSqliteDb.d.ts.map +0 -1
  752. package/dist/persistence/DonobuSqliteDb.js.map +0 -1
  753. package/dist/persistence/PersistencePlugin.d.ts.map +0 -1
  754. package/dist/persistence/PersistencePlugin.js.map +0 -1
  755. package/dist/persistence/agents/AgentsPersistence.d.ts.map +0 -1
  756. package/dist/persistence/agents/AgentsPersistence.js.map +0 -1
  757. package/dist/persistence/agents/AgentsPersistenceSqlite.d.ts.map +0 -1
  758. package/dist/persistence/agents/AgentsPersistenceSqlite.js.map +0 -1
  759. package/dist/persistence/agents/AgentsPersistenceVolatile.d.ts.map +0 -1
  760. package/dist/persistence/agents/AgentsPersistenceVolatile.js.map +0 -1
  761. package/dist/persistence/env/EnvPersistence.d.ts.map +0 -1
  762. package/dist/persistence/env/EnvPersistence.js.map +0 -1
  763. package/dist/persistence/env/EnvPersistenceRegistry.d.ts.map +0 -1
  764. package/dist/persistence/env/EnvPersistenceRegistry.js.map +0 -1
  765. package/dist/persistence/env/EnvPersistenceSqlite.d.ts.map +0 -1
  766. package/dist/persistence/env/EnvPersistenceSqlite.js.map +0 -1
  767. package/dist/persistence/env/EnvPersistenceVolatile.d.ts.map +0 -1
  768. package/dist/persistence/env/EnvPersistenceVolatile.js.map +0 -1
  769. package/dist/persistence/flows/FlowsPersistence.d.ts.map +0 -1
  770. package/dist/persistence/flows/FlowsPersistence.js.map +0 -1
  771. package/dist/persistence/flows/FlowsPersistenceDonobuApi.d.ts.map +0 -1
  772. package/dist/persistence/flows/FlowsPersistenceDonobuApi.js.map +0 -1
  773. package/dist/persistence/flows/FlowsPersistenceRegistry.d.ts.map +0 -1
  774. package/dist/persistence/flows/FlowsPersistenceRegistry.js.map +0 -1
  775. package/dist/persistence/flows/FlowsPersistenceSqlite.d.ts.map +0 -1
  776. package/dist/persistence/flows/FlowsPersistenceSqlite.js.map +0 -1
  777. package/dist/persistence/flows/FlowsPersistenceVolatile.d.ts.map +0 -1
  778. package/dist/persistence/flows/FlowsPersistenceVolatile.js.map +0 -1
  779. package/dist/persistence/gptconfigs/GptConfigsPersistence.d.ts.map +0 -1
  780. package/dist/persistence/gptconfigs/GptConfigsPersistence.js.map +0 -1
  781. package/dist/persistence/gptconfigs/GptConfigsPersistenceSqlite.d.ts.map +0 -1
  782. package/dist/persistence/gptconfigs/GptConfigsPersistenceSqlite.js.map +0 -1
  783. package/dist/persistence/gptconfigs/GptConfigsPersistenceVolatile.d.ts.map +0 -1
  784. package/dist/persistence/gptconfigs/GptConfigsPersistenceVolatile.js.map +0 -1
  785. package/dist/reporter/html.d.ts.map +0 -1
  786. package/dist/reporter/html.js.map +0 -1
  787. package/dist/targets/TargetRuntime.d.ts.map +0 -1
  788. package/dist/targets/TargetRuntime.js.map +0 -1
  789. package/dist/targets/TargetRuntimePlugin.d.ts.map +0 -1
  790. package/dist/targets/TargetRuntimePlugin.js.map +0 -1
  791. package/dist/targets/WebTargetRuntime.d.ts.map +0 -1
  792. package/dist/targets/WebTargetRuntime.js.map +0 -1
  793. package/dist/targets/resolveTargetRuntime.d.ts.map +0 -1
  794. package/dist/targets/resolveTargetRuntime.js.map +0 -1
  795. package/dist/tools/AcknowledgeUserInstruction.d.ts.map +0 -1
  796. package/dist/tools/AcknowledgeUserInstruction.js.map +0 -1
  797. package/dist/tools/AnalyzePageTextTool.d.ts.map +0 -1
  798. package/dist/tools/AnalyzePageTextTool.js.map +0 -1
  799. package/dist/tools/AssertPageTextTool.d.ts.map +0 -1
  800. package/dist/tools/AssertPageTextTool.js.map +0 -1
  801. package/dist/tools/AssertPageTool.d.ts.map +0 -1
  802. package/dist/tools/AssertPageTool.js.map +0 -1
  803. package/dist/tools/AssertTool.d.ts.map +0 -1
  804. package/dist/tools/AssertTool.js.map +0 -1
  805. package/dist/tools/ChangeWebBrowserTabTool.d.ts.map +0 -1
  806. package/dist/tools/ChangeWebBrowserTabTool.js.map +0 -1
  807. package/dist/tools/ChooseSelectOptionTool.d.ts.map +0 -1
  808. package/dist/tools/ChooseSelectOptionTool.js.map +0 -1
  809. package/dist/tools/ClickTool.d.ts.map +0 -1
  810. package/dist/tools/ClickTool.js.map +0 -1
  811. package/dist/tools/CreateBrowserCookieReportTool.d.ts.map +0 -1
  812. package/dist/tools/CreateBrowserCookieReportTool.js.map +0 -1
  813. package/dist/tools/CustomToolRunnerTool.d.ts.map +0 -1
  814. package/dist/tools/CustomToolRunnerTool.js.map +0 -1
  815. package/dist/tools/DetectBrokenLinksTool.d.ts.map +0 -1
  816. package/dist/tools/DetectBrokenLinksTool.js.map +0 -1
  817. package/dist/tools/DoubleClickTool.d.ts.map +0 -1
  818. package/dist/tools/DoubleClickTool.js.map +0 -1
  819. package/dist/tools/DownloadPdfTool.d.ts.map +0 -1
  820. package/dist/tools/DownloadPdfTool.js.map +0 -1
  821. package/dist/tools/GoForwardOrBackTool.d.ts.map +0 -1
  822. package/dist/tools/GoForwardOrBackTool.js.map +0 -1
  823. package/dist/tools/GoToWebpageTool.d.ts.map +0 -1
  824. package/dist/tools/GoToWebpageTool.js.map +0 -1
  825. package/dist/tools/HandleBrowserDialogTool.d.ts.map +0 -1
  826. package/dist/tools/HandleBrowserDialogTool.js.map +0 -1
  827. package/dist/tools/HoverOverElementTool.d.ts.map +0 -1
  828. package/dist/tools/HoverOverElementTool.js.map +0 -1
  829. package/dist/tools/InputFakerTool.d.ts.map +0 -1
  830. package/dist/tools/InputFakerTool.js.map +0 -1
  831. package/dist/tools/InputRandomizedEmailAddressTool.d.ts.map +0 -1
  832. package/dist/tools/InputRandomizedEmailAddressTool.js.map +0 -1
  833. package/dist/tools/InputTextTool.d.ts.map +0 -1
  834. package/dist/tools/InputTextTool.js.map +0 -1
  835. package/dist/tools/MakeCommentTool.d.ts.map +0 -1
  836. package/dist/tools/MakeCommentTool.js.map +0 -1
  837. package/dist/tools/MarkObjectiveCompleteTool.d.ts.map +0 -1
  838. package/dist/tools/MarkObjectiveCompleteTool.js.map +0 -1
  839. package/dist/tools/MarkObjectiveNotCompletableTool.d.ts.map +0 -1
  840. package/dist/tools/MarkObjectiveNotCompletableTool.js.map +0 -1
  841. package/dist/tools/PauseForUserInteractionTool.d.ts.map +0 -1
  842. package/dist/tools/PauseForUserInteractionTool.js.map +0 -1
  843. package/dist/tools/PressKeyTool.d.ts.map +0 -1
  844. package/dist/tools/PressKeyTool.js.map +0 -1
  845. package/dist/tools/ReloadPageTool.d.ts.map +0 -1
  846. package/dist/tools/ReloadPageTool.js.map +0 -1
  847. package/dist/tools/RememberPageTextTool.d.ts.map +0 -1
  848. package/dist/tools/RememberPageTextTool.js.map +0 -1
  849. package/dist/tools/ReplayableInteraction.d.ts.map +0 -1
  850. package/dist/tools/ReplayableInteraction.js.map +0 -1
  851. package/dist/tools/RunAccessibilityTestTool.d.ts.map +0 -1
  852. package/dist/tools/RunAccessibilityTestTool.js.map +0 -1
  853. package/dist/tools/RunInlineJavaScriptCodeTool.d.ts.map +0 -1
  854. package/dist/tools/RunInlineJavaScriptCodeTool.js.map +0 -1
  855. package/dist/tools/RunSandboxedJavaScriptCodeTool.d.ts.map +0 -1
  856. package/dist/tools/RunSandboxedJavaScriptCodeTool.js.map +0 -1
  857. package/dist/tools/SaveWebpageAsPdfTool.d.ts.map +0 -1
  858. package/dist/tools/SaveWebpageAsPdfTool.js.map +0 -1
  859. package/dist/tools/ScrollPageTool.d.ts.map +0 -1
  860. package/dist/tools/ScrollPageTool.js.map +0 -1
  861. package/dist/tools/SetRunModeTool.d.ts.map +0 -1
  862. package/dist/tools/SetRunModeTool.js.map +0 -1
  863. package/dist/tools/SummarizeLearningsTool.d.ts.map +0 -1
  864. package/dist/tools/SummarizeLearningsTool.js.map +0 -1
  865. package/dist/tools/Tool.d.ts.map +0 -1
  866. package/dist/tools/Tool.js.map +0 -1
  867. package/dist/tools/TriggerDonobuFlowTool.d.ts.map +0 -1
  868. package/dist/tools/TriggerDonobuFlowTool.js.map +0 -1
  869. package/dist/tools/WaitTool.d.ts.map +0 -1
  870. package/dist/tools/WaitTool.js.map +0 -1
  871. package/dist/utils/BrowserUtils.d.ts.map +0 -1
  872. package/dist/utils/BrowserUtils.js.map +0 -1
  873. package/dist/utils/FlowLogBuffer.d.ts.map +0 -1
  874. package/dist/utils/FlowLogBuffer.js.map +0 -1
  875. package/dist/utils/JsonPath.d.ts.map +0 -1
  876. package/dist/utils/JsonPath.js.map +0 -1
  877. package/dist/utils/JsonSchemaUtils.d.ts.map +0 -1
  878. package/dist/utils/JsonSchemaUtils.js.map +0 -1
  879. package/dist/utils/JsonUtils.d.ts.map +0 -1
  880. package/dist/utils/JsonUtils.js.map +0 -1
  881. package/dist/utils/Logger.d.ts.map +0 -1
  882. package/dist/utils/Logger.js.map +0 -1
  883. package/dist/utils/MiscUtils.d.ts.map +0 -1
  884. package/dist/utils/MiscUtils.js.map +0 -1
  885. package/dist/utils/PlaywrightUtils.d.ts.map +0 -1
  886. package/dist/utils/PlaywrightUtils.js.map +0 -1
  887. package/dist/utils/TargetUtils.d.ts.map +0 -1
  888. package/dist/utils/TargetUtils.js.map +0 -1
  889. package/dist/utils/TemplateInterpolator.d.ts.map +0 -1
  890. package/dist/utils/TemplateInterpolator.js.map +0 -1
  891. package/dist/utils/VerbConverter.d.ts.map +0 -1
  892. package/dist/utils/VerbConverter.js.map +0 -1
  893. package/dist/utils/createTool.d.ts.map +0 -1
  894. package/dist/utils/createTool.js.map +0 -1
@@ -49,7 +49,6 @@ const cache_1 = require("../lib/ai/cache/cache");
49
49
  const cacheEntryBuilder_1 = require("../lib/ai/cache/cacheEntryBuilder");
50
50
  const cacheLocator_1 = require("../lib/ai/cache/cacheLocator");
51
51
  const DonobuFlowsManager_1 = require("../managers/DonobuFlowsManager");
52
- const ToolManager_1 = require("../managers/ToolManager");
53
52
  const GptConfig_1 = require("../models/GptConfig");
54
53
  const AnalyzePageTextTool_1 = require("../tools/AnalyzePageTextTool");
55
54
  const AssertPageTool_1 = require("../tools/AssertPageTool");
@@ -83,8 +82,38 @@ function getLocalPlaywrightVersion() {
83
82
  return pkgJson.version;
84
83
  }
85
84
  const PLAYWRIGHT_VERSION = getLocalPlaywrightVersion();
85
+ /**
86
+ * Computes the `allowedTools` and `maxToolCalls` values as they will appear at
87
+ * runtime when the generated test code is executed by `PageAi.buildDescriptor`.
88
+ *
89
+ * The generated test code only emits an explicit `allowedTools` option when the
90
+ * flow uses non-default tools, and omits `maxToolCalls` when it equals the
91
+ * default. At runtime the omitted values fall back to `[]` and
92
+ * `DEFAULT_MAX_TOOL_CALLS` respectively. The cache lock file must store these
93
+ * same resolved values so that the cache key matches on the first run.
94
+ */
95
+ function computeRuntimeCacheKeyFields(toolCalls, defaultToolNames, minimalToolNames, maxToolCalls) {
96
+ const toolNamesFromCalls = Array.from(new Set(toolCalls.map((tc) => tc.name)))
97
+ .filter((name) => !minimalToolNames.has(name))
98
+ .sort();
99
+ const usesNonDefaultTool = toolNamesFromCalls.some((name) => !defaultToolNames.has(name));
100
+ // Mirror the runtime defaulting in PageAi.buildDescriptor:
101
+ // options?.allowedTools ?? []
102
+ const resolvedAllowedTools = usesNonDefaultTool && toolNamesFromCalls.length > 0
103
+ ? toolNamesFromCalls
104
+ : [];
105
+ // Mirror: options?.maxToolCalls ?? DEFAULT_MAX_TOOL_CALLS
106
+ const resolvedMaxToolCalls = maxToolCalls !== null &&
107
+ maxToolCalls !== DonobuFlowsManager_1.DonobuFlowsManager.DEFAULT_MAX_TOOL_CALLS
108
+ ? maxToolCalls
109
+ : DonobuFlowsManager_1.DonobuFlowsManager.DEFAULT_MAX_TOOL_CALLS;
110
+ return {
111
+ allowedTools: resolvedAllowedTools,
112
+ maxToolCalls: resolvedMaxToolCalls,
113
+ };
114
+ }
86
115
  /** Creates a Node.js Microsoft Playwright script to replay the given flow. */
87
- async function getFlowAsPlaywrightScript(flowMetadata, toolCalls, options) {
116
+ async function getFlowAsPlaywrightScript(flowMetadata, toolCalls, options = {}, toolRegistry) {
88
117
  // These tools are not supported in the generated script because they have
89
118
  // static outputs that have no side effects, so they are not actually
90
119
  // doing anything.
@@ -100,7 +129,7 @@ async function getFlowAsPlaywrightScript(flowMetadata, toolCalls, options) {
100
129
  description: env,
101
130
  };
102
131
  });
103
- const allTools = await ToolManager_1.ToolManager.allTools();
132
+ const allTools = toolRegistry.allTools();
104
133
  const gptClientRequired = isGptClientRequired(flowMetadata, toolCalls, allTools);
105
134
  const gptSetupNote = gptClientRequired
106
135
  ? `* Note that this test uses tools that require the usage of an LLM, so be
@@ -174,7 +203,7 @@ ${resultJson}
174
203
  return prettifyCode(script);
175
204
  }
176
205
  /** Creates a Node.js Microsoft Playwright script to replay the given flow. */
177
- async function getFlowAsAiPlaywrightScript(flowMetadata, toolCalls, options) {
206
+ async function getFlowAsAiPlaywrightScript(flowMetadata, toolCalls, options, toolRegistry) {
178
207
  const [firstToolCall, ...remaingToolCalls] = toolCalls;
179
208
  // If the first tool call is "GoToWebpage", then we peel it off and treat it
180
209
  // specially.
@@ -207,16 +236,10 @@ async function getFlowAsAiPlaywrightScript(flowMetadata, toolCalls, options) {
207
236
  const annotationsLiteral = annotations.length > 0
208
237
  ? JSON.stringify({ annotation: annotations }, null, 2)
209
238
  : null;
210
- const defaultToolNames = new Set((await ToolManager_1.ToolManager.defaultTools()).map((tool) => tool.name));
211
- const minimalTools = new Set((await ToolManager_1.ToolManager.minimalTools()).map((t) => t.name));
212
- const toolNamesFromCalls = Array.from(new Set((specialCaseGoto ? remaingToolCalls : toolCalls).map((tc) => tc.name)))
213
- .filter((tc) => {
214
- // We can exclude minimal tools since they will automatically be included
215
- // when running any flow anyway, so no need to muck up the code by specifying them.
216
- return !minimalTools.has(tc);
217
- })
218
- .sort();
219
- const usesNonDefaultTool = toolNamesFromCalls.some((toolName) => !defaultToolNames.has(toolName));
239
+ const defaultToolNames = new Set(toolRegistry.defaultTools().map((tool) => tool.name));
240
+ const minimalToolNames = new Set(toolRegistry.minimalTools().map((t) => t.name));
241
+ const effectiveToolCalls = specialCaseGoto ? remaingToolCalls : toolCalls;
242
+ const runtimeFields = computeRuntimeCacheKeyFields(effectiveToolCalls, defaultToolNames, minimalToolNames, flowMetadata.maxToolCalls);
220
243
  const donobuImports = ['test'];
221
244
  if (flowMetadata.resultJsonSchema !== null) {
222
245
  donobuImports.push('jsonSchemaToZod');
@@ -225,12 +248,11 @@ async function getFlowAsAiPlaywrightScript(flowMetadata, toolCalls, options) {
225
248
  if (flowMetadata.resultJsonSchema) {
226
249
  optionsLines.push(`schema: jsonSchemaToZod(${JSON.stringify(flowMetadata.resultJsonSchema)})`);
227
250
  }
228
- if (usesNonDefaultTool && toolNamesFromCalls.length > 0) {
229
- optionsLines.push(`allowedTools: ${JSON.stringify(toolNamesFromCalls)}`);
251
+ if (runtimeFields.allowedTools.length > 0) {
252
+ optionsLines.push(`allowedTools: ${JSON.stringify(runtimeFields.allowedTools)}`);
230
253
  }
231
- if (flowMetadata.maxToolCalls !== null &&
232
- flowMetadata.maxToolCalls !== DonobuFlowsManager_1.DonobuFlowsManager.DEFAULT_MAX_TOOL_CALLS) {
233
- optionsLines.push(`maxToolCalls: ${flowMetadata.maxToolCalls}`);
254
+ if (runtimeFields.maxToolCalls !== DonobuFlowsManager_1.DonobuFlowsManager.DEFAULT_MAX_TOOL_CALLS) {
255
+ optionsLines.push(`maxToolCalls: ${runtimeFields.maxToolCalls}`);
234
256
  }
235
257
  if (flowMetadata.envVars && flowMetadata.envVars.length > 0) {
236
258
  optionsLines.push(`envVars: ${JSON.stringify(flowMetadata.envVars)}`);
@@ -271,7 +293,7 @@ ${aiInvocation}
271
293
  * Browser state dependencies are materialized as static JSON files
272
294
  * and referenced via storageState paths in the Playwright config.
273
295
  */
274
- async function generateProject(flowsWithToolCalls, resolvedBrowserStates, gptConfig, options) {
296
+ async function generateProject(flowsWithToolCalls, resolvedBrowserStates, gptConfig, options, toolRegistry) {
275
297
  const flowsMetadata = flowsWithToolCalls.map((f) => f.metadata);
276
298
  const files = [];
277
299
  // Generate browser state JSON files and build a path map for the config.
@@ -292,7 +314,7 @@ async function generateProject(flowsWithToolCalls, resolvedBrowserStates, gptCon
292
314
  }
293
315
  const hasBrowserStates = browserStateEntries.length > 0;
294
316
  // Generate individual test files
295
- const testFiles = await generateTestFiles(flowsWithToolCalls, options);
317
+ const testFiles = await generateTestFiles(flowsWithToolCalls, options, toolRegistry);
296
318
  files.push(...testFiles);
297
319
  // Generate playwright.config.ts
298
320
  files.push({
@@ -301,7 +323,7 @@ async function generateProject(flowsWithToolCalls, resolvedBrowserStates, gptCon
301
323
  });
302
324
  files.push({
303
325
  path: '.github/workflows/run-tests.yml',
304
- content: await generateGitHubActionsWorkflow(flowsWithToolCalls, gptConfig, options, hasBrowserStates),
326
+ content: await generateGitHubActionsWorkflow(flowsWithToolCalls, gptConfig, options, hasBrowserStates, toolRegistry),
305
327
  });
306
328
  // Generate package.json if needed
307
329
  files.push({
@@ -318,17 +340,17 @@ async function generateProject(flowsWithToolCalls, resolvedBrowserStates, gptCon
318
340
  content: generateGitIgnore(),
319
341
  });
320
342
  const cacheFiles = options.playwrightScriptVariant === 'ai'
321
- ? await buildCacheFiles(flowsWithToolCalls)
343
+ ? await buildCacheFiles(flowsWithToolCalls, toolRegistry)
322
344
  : [];
323
345
  files.push(...cacheFiles);
324
346
  return { files };
325
347
  }
326
- async function generateGitHubActionsWorkflow(flowsWithToolCalls, gptConfig, options, hasBrowserStates = false) {
348
+ async function generateGitHubActionsWorkflow(flowsWithToolCalls, gptConfig, options, hasBrowserStates = false, toolRegistry) {
327
349
  const flowsMetadata = flowsWithToolCalls.map((f) => f.metadata);
328
350
  const allUniqueEnvVars = [
329
351
  ...new Set(flowsMetadata.flatMap((flow) => flow.envVars || [])),
330
352
  ];
331
- const allTools = await ToolManager_1.ToolManager.allTools();
353
+ const allTools = toolRegistry.allTools();
332
354
  const gptClientRequired = flowsWithToolCalls.some((f) => {
333
355
  return isGptClientRequired(f.metadata, f.toolCalls, allTools);
334
356
  }) || !options.disableSelfHealingTests;
@@ -464,7 +486,9 @@ ${xvfbStep}
464
486
  fi
465
487
  ${pullRequestCreationSection}`;
466
488
  }
467
- function buildCacheContents(flowsWithToolCalls) {
489
+ async function buildCacheContents(flowsWithToolCalls, toolRegistry) {
490
+ const defaultToolNames = new Set(toolRegistry.defaultTools().map((tool) => tool.name));
491
+ const minimalToolNames = new Set(toolRegistry.minimalTools().map((t) => t.name));
468
492
  const entries = flowsWithToolCalls
469
493
  // We can only create page.ai caches for flows that have an objective.
470
494
  .filter(({ metadata }) => metadata.overallObjective?.trim() && metadata.runMode === 'AUTONOMOUS')
@@ -487,9 +511,14 @@ function buildCacheContents(flowsWithToolCalls) {
487
511
  pageUrlForCache = metadata.web?.targetWebsite ?? '';
488
512
  }
489
513
  const cacheEntry = cacheEntryBuilder_1.PageAiCacheEntryBuilder.fromMetadata(pageUrlForCache, metadata, toolCallsForCache);
514
+ // Compute allowedTools and maxToolCalls as the runtime will see them,
515
+ // so the cache lock file keys match the keys built by PageAi.buildDescriptor
516
+ // when the generated test code is executed.
517
+ const runtimeFields = computeRuntimeCacheKeyFields(toolCallsForCache, defaultToolNames, minimalToolNames, metadata.maxToolCalls);
490
518
  return {
491
519
  ...cacheEntry,
492
- allowedTools: [...cacheEntry.allowedTools],
520
+ allowedTools: runtimeFields.allowedTools,
521
+ maxToolCalls: runtimeFields.maxToolCalls,
493
522
  schema: cacheEntry.schema === null
494
523
  ? null
495
524
  : JSON.parse(JSON.stringify(cacheEntry.schema)),
@@ -499,10 +528,10 @@ function buildCacheContents(flowsWithToolCalls) {
499
528
  caches: entries,
500
529
  };
501
530
  }
502
- async function buildCacheFiles(flowsWithToolCalls) {
531
+ async function buildCacheFiles(flowsWithToolCalls, toolRegistry) {
503
532
  const files = [];
504
533
  for (const flow of flowsWithToolCalls) {
505
- const contents = buildCacheContents([flow]);
534
+ const contents = await buildCacheContents([flow], toolRegistry);
506
535
  if (contents.caches.length === 0) {
507
536
  continue;
508
537
  }
@@ -776,7 +805,7 @@ function generateProjectConfig(projectName, flow, storageStatePath) {
776
805
  /**
777
806
  * Generates test files for all flows
778
807
  */
779
- async function generateTestFiles(flowsWithToolCalls, options) {
808
+ async function generateTestFiles(flowsWithToolCalls, options, toolRegistry) {
780
809
  const files = [];
781
810
  const scriptVariant = options.playwrightScriptVariant === 'classic' ? 'classic' : 'ai';
782
811
  for (const { metadata, toolCalls } of flowsWithToolCalls) {
@@ -784,8 +813,8 @@ async function generateTestFiles(flowsWithToolCalls, options) {
784
813
  const content = scriptVariant === 'classic' ||
785
814
  !metadata.overallObjective?.trim() ||
786
815
  metadata.runMode !== 'AUTONOMOUS'
787
- ? await getFlowAsPlaywrightScript(metadata, toolCalls, options)
788
- : await getFlowAsAiPlaywrightScript(metadata, toolCalls, options);
816
+ ? await getFlowAsPlaywrightScript(metadata, toolCalls, options, toolRegistry)
817
+ : await getFlowAsAiPlaywrightScript(metadata, toolCalls, options, toolRegistry);
789
818
  files.push({
790
819
  path: `tests/${fileName}`,
791
820
  content,
@@ -105,11 +105,12 @@ class PageAiRunner {
105
105
  * a narrower list.
106
106
  */
107
107
  async buildToolManager(allowedToolsByName) {
108
+ const registry = this.donobu.toolRegistry;
108
109
  if (allowedToolsByName.length === 0) {
109
- return new ToolManager_1.ToolManager(await ToolManager_1.ToolManager.defaultTools());
110
+ return new ToolManager_1.ToolManager(registry.defaultTools());
110
111
  }
111
- const allTools = await ToolManager_1.ToolManager.allTools();
112
- const minimalToolsByName = (await ToolManager_1.ToolManager.minimalTools()).map((t) => t.name);
112
+ const allTools = registry.allTools();
113
+ const minimalToolsByName = registry.minimalTools().map((t) => t.name);
113
114
  const semifinalToolNames = new Set([
114
115
  ...allowedToolsByName,
115
116
  ...minimalToolsByName,
@@ -489,7 +489,7 @@ async function runTool(page, toolName, toolParams, gptClient) {
489
489
  metadata: page._dnb.donobuFlowMetadata,
490
490
  toolCallId: clonedParams.toolCallId ?? MiscUtils_1.MiscUtils.createAdHocToolCallId(),
491
491
  };
492
- const tools = await ToolManager_1.ToolManager.allTools();
492
+ const tools = page._dnb.donobuStack.toolRegistry.allTools();
493
493
  const result = await new ToolManager_1.ToolManager(tools).invokeTool(toolCallContext, toolName, clonedParams, false);
494
494
  return result;
495
495
  }
@@ -37,7 +37,6 @@ exports.selfHeal = selfHeal;
37
37
  const fs = __importStar(require("fs"));
38
38
  const v4_1 = require("zod/v4");
39
39
  const DonobuFlowsManager_1 = require("../../../managers/DonobuFlowsManager");
40
- const ToolManager_1 = require("../../../managers/ToolManager");
41
40
  const CodeGenerationOptions_1 = require("../../../models/CodeGenerationOptions");
42
41
  const AnalyzePageTextTool_1 = require("../../../tools/AnalyzePageTextTool");
43
42
  const AssertPageTextTool_1 = require("../../../tools/AssertPageTextTool");
@@ -106,7 +105,7 @@ async function selfHeal(gptClient, testInfo, page) {
106
105
  testInfo.setTimeout(testInfo.timeout + selfHealTimeoutMs);
107
106
  Logger_1.appLogger.info(`Extending the test timeout ${selfHealTimeoutMs}ms for self-healing...`);
108
107
  Logger_1.appLogger.info('Attempting to self-heal by creating a new autonomous flow...');
109
- const allowedTools = await buildToolList(donobuFlowMetadata);
108
+ const allowedTools = await buildToolList(donobuFlowMetadata, donobu.toolRegistry);
110
109
  const objectiveWhileSelfHealing = `
111
110
  Use tool calling to follow along with the intent of this Playwright test.
112
111
  The test had failed, so some parts may need to be adjusted along the way, but
@@ -267,7 +266,7 @@ to someone who is tasked with completing it as a goal.
267
266
  };
268
267
  }
269
268
  }
270
- async function buildToolList(donobuFlowMetadata) {
269
+ async function buildToolList(donobuFlowMetadata, toolRegistry) {
271
270
  const baseTools = [
272
271
  AnalyzePageTextTool_1.AnalyzePageTextTool.NAME,
273
272
  AssertTool_1.AssertTool.NAME,
@@ -293,7 +292,7 @@ async function buildToolList(donobuFlowMetadata) {
293
292
  WaitTool_1.WaitTool.NAME,
294
293
  ];
295
294
  // Always allow tools from plugins.
296
- const toolsFromPlugins = (await ToolManager_1.ToolManager.pluginTools()).map((t) => t.name);
295
+ const toolsFromPlugins = toolRegistry.pluginTools().map((t) => t.name);
297
296
  const defaultTools = new Set([
298
297
  ...(donobuFlowMetadata.allowedTools ? donobuFlowMetadata.allowedTools : []),
299
298
  ...baseTools,
@@ -2,7 +2,7 @@ export { AnthropicGptClient } from './clients/AnthropicGptClient';
2
2
  export { DonobuGptClient } from './clients/DonobuGptClient';
3
3
  export { fixAssertFields, GoogleGenerativeAiGptClient, } from './clients/GoogleGenerativeAiGptClient';
4
4
  export { GptClient } from './clients/GptClient';
5
- export { type GptClientPlugin, registerGptClientPlugin, } from './clients/GptClientPlugin';
5
+ export { type GptClientPlugin, GptClientPluginRegistry, } from './clients/GptClientPlugin';
6
6
  export { OpenAiGptClient } from './clients/OpenAiGptClient';
7
7
  export { VercelAiGptClient } from './clients/VercelAiGptClient';
8
8
  export { runGenerateSiteTests } from './codegen/runGenerateSiteTests';
@@ -25,9 +25,10 @@ export { DonobuFlow } from './managers/DonobuFlow';
25
25
  export { distillAllowedEnvVariableNames, DonobuFlowsManager, } from './managers/DonobuFlowsManager';
26
26
  export { type DonobuStack, setupDonobuStack } from './managers/DonobuStack';
27
27
  export { InteractionVisualizer } from './managers/InteractionVisualizer';
28
- export { type PluginDependencies, PluginLoader } from './managers/PluginLoader';
28
+ export { type LoadedPlugins, type PluginDependencies, PluginLoader, } from './managers/PluginLoader';
29
29
  export type * from './managers/TargetInspector';
30
30
  export { ToolManager } from './managers/ToolManager';
31
+ export { createDefaultToolRegistry, type ToolRegistry, } from './managers/ToolRegistry';
31
32
  export * from './managers/WebTargetInspector';
32
33
  export * from './models/BrowserStorageState';
33
34
  export * from './models/CodeGenerationOptions';
@@ -48,9 +49,9 @@ export * from './models/ToolSchema';
48
49
  export type { VideoSegment } from './models/VideoSegment';
49
50
  export type { EnvPersistence } from './persistence/env/EnvPersistence';
50
51
  export type { FlowsPersistence } from './persistence/flows/FlowsPersistence';
51
- export { type PersistencePlugin, registerPersistencePlugin, } from './persistence/PersistencePlugin';
52
+ export { type PersistencePlugin, PersistencePluginRegistry, } from './persistence/PersistencePlugin';
52
53
  export type { TargetRuntime } from './targets/TargetRuntime';
53
- export { registerTargetRuntimePlugin, type TargetRuntimeParams, type TargetRuntimePlugin, } from './targets/TargetRuntimePlugin';
54
+ export { type TargetRuntimeParams, type TargetRuntimePlugin, TargetRuntimePluginRegistry, } from './targets/TargetRuntimePlugin';
54
55
  export * from './tools/ReplayableInteraction';
55
56
  export * from './tools/Tool';
56
57
  export * from './utils/createTool';
package/dist/esm/main.js CHANGED
@@ -14,18 +14,14 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.registerTargetRuntimePlugin = exports.registerPersistencePlugin = exports.ToolManager = exports.PluginLoader = exports.InteractionVisualizer = exports.setupDonobuStack = exports.DonobuFlowsManager = exports.distillAllowedEnvVariableNames = exports.DonobuFlow = exports.env = exports.runGenerateSiteTests = exports.VercelAiGptClient = exports.OpenAiGptClient = exports.registerGptClientPlugin = exports.GptClient = exports.GoogleGenerativeAiGptClient = exports.fixAssertFields = exports.DonobuGptClient = exports.AnthropicGptClient = void 0;
17
+ exports.TargetRuntimePluginRegistry = exports.PersistencePluginRegistry = exports.createDefaultToolRegistry = exports.ToolManager = exports.PluginLoader = exports.InteractionVisualizer = exports.setupDonobuStack = exports.DonobuFlowsManager = exports.distillAllowedEnvVariableNames = exports.DonobuFlow = exports.env = exports.runGenerateSiteTests = exports.VercelAiGptClient = exports.OpenAiGptClient = exports.GptClientPluginRegistry = exports.GptClient = exports.GoogleGenerativeAiGptClient = exports.fixAssertFields = exports.DonobuGptClient = exports.AnthropicGptClient = void 0;
18
18
  exports.startDonobuServer = startDonobuServer;
19
19
  const commander_1 = require("commander");
20
20
  const v4_1 = require("zod/v4");
21
21
  const envVars_1 = require("./envVars");
22
22
  const init_1 = require("./init");
23
23
  const AdminApiController_1 = require("./managers/AdminApiController");
24
- const PluginLoader_1 = require("./managers/PluginLoader");
25
- const ToolManager_1 = require("./managers/ToolManager");
26
24
  const ControlPanel_1 = require("./models/ControlPanel");
27
- const TargetRuntimePlugin_1 = require("./targets/TargetRuntimePlugin");
28
- const WebTargetRuntime_1 = require("./targets/WebTargetRuntime");
29
25
  const Logger_1 = require("./utils/Logger");
30
26
  const PlaywrightUtils_1 = require("./utils/PlaywrightUtils");
31
27
  var AnthropicGptClient_1 = require("./clients/AnthropicGptClient");
@@ -38,7 +34,7 @@ Object.defineProperty(exports, "GoogleGenerativeAiGptClient", { enumerable: true
38
34
  var GptClient_1 = require("./clients/GptClient");
39
35
  Object.defineProperty(exports, "GptClient", { enumerable: true, get: function () { return GptClient_1.GptClient; } });
40
36
  var GptClientPlugin_1 = require("./clients/GptClientPlugin");
41
- Object.defineProperty(exports, "registerGptClientPlugin", { enumerable: true, get: function () { return GptClientPlugin_1.registerGptClientPlugin; } });
37
+ Object.defineProperty(exports, "GptClientPluginRegistry", { enumerable: true, get: function () { return GptClientPlugin_1.GptClientPluginRegistry; } });
42
38
  var OpenAiGptClient_1 = require("./clients/OpenAiGptClient");
43
39
  Object.defineProperty(exports, "OpenAiGptClient", { enumerable: true, get: function () { return OpenAiGptClient_1.OpenAiGptClient; } });
44
40
  var VercelAiGptClient_1 = require("./clients/VercelAiGptClient");
@@ -69,10 +65,12 @@ var DonobuStack_1 = require("./managers/DonobuStack");
69
65
  Object.defineProperty(exports, "setupDonobuStack", { enumerable: true, get: function () { return DonobuStack_1.setupDonobuStack; } });
70
66
  var InteractionVisualizer_1 = require("./managers/InteractionVisualizer");
71
67
  Object.defineProperty(exports, "InteractionVisualizer", { enumerable: true, get: function () { return InteractionVisualizer_1.InteractionVisualizer; } });
72
- var PluginLoader_2 = require("./managers/PluginLoader");
73
- Object.defineProperty(exports, "PluginLoader", { enumerable: true, get: function () { return PluginLoader_2.PluginLoader; } });
74
- var ToolManager_2 = require("./managers/ToolManager");
75
- Object.defineProperty(exports, "ToolManager", { enumerable: true, get: function () { return ToolManager_2.ToolManager; } });
68
+ var PluginLoader_1 = require("./managers/PluginLoader");
69
+ Object.defineProperty(exports, "PluginLoader", { enumerable: true, get: function () { return PluginLoader_1.PluginLoader; } });
70
+ var ToolManager_1 = require("./managers/ToolManager");
71
+ Object.defineProperty(exports, "ToolManager", { enumerable: true, get: function () { return ToolManager_1.ToolManager; } });
72
+ var ToolRegistry_1 = require("./managers/ToolRegistry");
73
+ Object.defineProperty(exports, "createDefaultToolRegistry", { enumerable: true, get: function () { return ToolRegistry_1.createDefaultToolRegistry; } });
76
74
  __exportStar(require("./managers/WebTargetInspector"), exports);
77
75
  __exportStar(require("./models/BrowserStorageState"), exports);
78
76
  __exportStar(require("./models/CodeGenerationOptions"), exports);
@@ -85,9 +83,9 @@ __exportStar(require("./models/TargetConfig"), exports);
85
83
  __exportStar(require("./models/ToolCallResult"), exports);
86
84
  __exportStar(require("./models/ToolSchema"), exports);
87
85
  var PersistencePlugin_1 = require("./persistence/PersistencePlugin");
88
- Object.defineProperty(exports, "registerPersistencePlugin", { enumerable: true, get: function () { return PersistencePlugin_1.registerPersistencePlugin; } });
89
- var TargetRuntimePlugin_2 = require("./targets/TargetRuntimePlugin");
90
- Object.defineProperty(exports, "registerTargetRuntimePlugin", { enumerable: true, get: function () { return TargetRuntimePlugin_2.registerTargetRuntimePlugin; } });
86
+ Object.defineProperty(exports, "PersistencePluginRegistry", { enumerable: true, get: function () { return PersistencePlugin_1.PersistencePluginRegistry; } });
87
+ var TargetRuntimePlugin_1 = require("./targets/TargetRuntimePlugin");
88
+ Object.defineProperty(exports, "TargetRuntimePluginRegistry", { enumerable: true, get: function () { return TargetRuntimePlugin_1.TargetRuntimePluginRegistry; } });
91
89
  __exportStar(require("./tools/ReplayableInteraction"), exports);
92
90
  __exportStar(require("./tools/Tool"), exports);
93
91
  __exportStar(require("./utils/createTool"), exports);
@@ -104,17 +102,6 @@ const DEFAULT_PORT = 31000;
104
102
  */
105
103
  async function startDonobuServer({ port = DEFAULT_PORT, controlPanelHost = ControlPanel_1.NoOpControlPanelFactory, } = {}) {
106
104
  try {
107
- // Register built-in target runtime plugins before external plugins,
108
- // so that external plugins can override them if needed.
109
- (0, TargetRuntimePlugin_1.registerTargetRuntimePlugin)(WebTargetRuntime_1.webTargetRuntimePlugin);
110
- // Load all plugins (tools + persistence + target runtimes) in a single
111
- // directory scan. Persistence plugins must be registered before
112
- // setupDonobuStack() runs (which happens inside AdminApiController.create
113
- // below).
114
- const pluginLoader = await PluginLoader_1.PluginLoader.create();
115
- const { tools } = await pluginLoader.loadAllPlugins();
116
- ToolManager_1.ToolManager.setPluginTools(tools);
117
- void (await ToolManager_1.ToolManager.allTools());
118
105
  const adminController = await AdminApiController_1.AdminApiController.create(envVars_1.env.data.DONOBU_DEPLOYMENT_ENVIRONMENT ?? 'LOCAL', controlPanelHost, envVars_1.env);
119
106
  adminController.start(port);
120
107
  Logger_1.appLogger.info(`Donobu API server available on http://localhost:${port}`);
@@ -233,13 +233,13 @@ class AdminApiController {
233
233
  gptConfigsApi: new GptConfigsApi_1.GptConfigsApi(donobuStack.gptConfigsManager, donobuStack.agentsManager),
234
234
  agentsApi: new AgentsApi_1.AgentsApi(donobuStack.agentsManager),
235
235
  askAiApi: new AskAiApi_1.AskAiApi(donobuStack.gptClientFactory, donobuStack.gptConfigsManager, donobuStack.agentsManager),
236
- toolsApi: new ToolsApi_1.ToolsApi(),
236
+ toolsApi: new ToolsApi_1.ToolsApi(donobuStack.toolRegistry),
237
237
  flowsApi: new FlowsApi_1.FlowsApi(donobuStack.flowsManager),
238
238
  flowsFilesApi: new FlowsFilesApi_1.FlowsFilesApi(donobuStack.flowsPersistenceRegistry),
239
239
  flowsToolCallsApi: new FlowsToolCallsApi_1.FlowsToolCallsApi(donobuStack.flowsManager),
240
240
  pingApi: new PingApi_1.PingApi(),
241
241
  schemaApi: new SchemaApi_1.SchemaApi(),
242
- targetsApi: new TargetsApi_1.TargetsApi(),
242
+ targetsApi: new TargetsApi_1.TargetsApi(donobuStack.targetRuntimePlugins),
243
243
  };
244
244
  }
245
245
  /**
@@ -1,5 +1,6 @@
1
1
  import type { EnvPick } from 'env-struct';
2
2
  import type { BrowserContext } from 'playwright';
3
+ import type { z } from 'zod/v4';
3
4
  import type { GptClient } from '../clients/GptClient';
4
5
  import type { GptClientFactory } from '../clients/GptClientFactory';
5
6
  import type { GeneratedProject } from '../codegen/CodeGenerator';
@@ -18,11 +19,14 @@ import type { PaginatedResult } from '../models/PaginatedResult';
18
19
  import type { ProposedToolCall } from '../models/ProposedToolCall';
19
20
  import type { ToolCall } from '../models/ToolCall';
20
21
  import type { FlowsPersistenceRegistry } from '../persistence/flows/FlowsPersistenceRegistry';
22
+ import type { TargetRuntimePluginRegistry } from '../targets/TargetRuntimePlugin';
23
+ import type { Tool } from '../tools/Tool';
21
24
  import type { FlowLogSnapshot } from '../utils/FlowLogBuffer';
22
25
  import type { AgentsManager } from './AgentsManager';
23
26
  import { DonobuFlow } from './DonobuFlow';
24
27
  import type { EnvDataManager } from './EnvDataManager';
25
28
  import type { GptConfigsManager } from './GptConfigsManager';
29
+ import type { ToolRegistry } from './ToolRegistry';
26
30
  /**
27
31
  * Response wrapper for `createFlow` calls.
28
32
  */
@@ -36,14 +40,15 @@ export declare class DonobuFlowsManager {
36
40
  private readonly envDataManager;
37
41
  private readonly controlPanelFactory;
38
42
  private readonly environ;
43
+ private readonly toolRegistry;
44
+ private readonly targetRuntimePlugins;
39
45
  static readonly DEFAULT_MESSAGE_DURATION = 2247;
40
46
  static readonly DEFAULT_MAX_TOOL_CALLS = 50;
41
47
  static readonly DEFAULT_BROWSER_STATE_FILENAME = "browserstate.json";
42
48
  static readonly FLOW_NAME_MAX_LENGTH = 255;
43
49
  private readonly flowRuntime;
44
50
  private readonly flowCatalog;
45
- private readonly flowDependencyResolver;
46
- constructor(deploymentEnvironment: DonobuDeploymentEnvironment, gptClientFactory: GptClientFactory, gptConfigsManager: GptConfigsManager, agentsManager: AgentsManager, flowsPersistenceRegistry: FlowsPersistenceRegistry, envDataManager: EnvDataManager, controlPanelFactory: ControlPanelFactory, environ: EnvPick<typeof env, 'ANTHROPIC_API_KEY' | 'ANTHROPIC_MODEL_NAME' | 'AWS_ACCESS_KEY_ID' | 'AWS_BEDROCK_MODEL_NAME' | 'AWS_SECRET_ACCESS_KEY' | 'BASE64_GPT_CONFIG' | 'BROWSERBASE_API_KEY' | 'BROWSERBASE_PROJECT_ID' | 'DONOBU_API_KEY' | 'GOOGLE_GENERATIVE_AI_API_KEY' | 'GOOGLE_GENERATIVE_AI_MODEL_NAME' | 'OPENAI_API_KEY' | 'OPENAI_API_MODEL_NAME'>);
51
+ constructor(deploymentEnvironment: DonobuDeploymentEnvironment, gptClientFactory: GptClientFactory, gptConfigsManager: GptConfigsManager, agentsManager: AgentsManager, flowsPersistenceRegistry: FlowsPersistenceRegistry, envDataManager: EnvDataManager, controlPanelFactory: ControlPanelFactory, environ: EnvPick<typeof env, 'ANTHROPIC_API_KEY' | 'ANTHROPIC_MODEL_NAME' | 'AWS_ACCESS_KEY_ID' | 'AWS_BEDROCK_MODEL_NAME' | 'AWS_SECRET_ACCESS_KEY' | 'BASE64_GPT_CONFIG' | 'BROWSERBASE_API_KEY' | 'BROWSERBASE_PROJECT_ID' | 'DONOBU_API_KEY' | 'GOOGLE_GENERATIVE_AI_API_KEY' | 'GOOGLE_GENERATIVE_AI_MODEL_NAME' | 'OPENAI_API_KEY' | 'OPENAI_API_MODEL_NAME'>, toolRegistry: ToolRegistry, targetRuntimePlugins: TargetRuntimePluginRegistry);
47
52
  /**
48
53
  * Create a flow with the given parameters and invoke its `DonobuFlow#run`
49
54
  * method, adding it to list of active flows.
@@ -166,6 +171,21 @@ export declare class DonobuFlowsManager {
166
171
  * );
167
172
  */
168
173
  export declare function distillAllowedEnvVariableNames(overallObjective: string | null | undefined, explicitlyAllowedEnvVariableNames: string[] | null | undefined): string[];
174
+ /**
175
+ * Resolves the final set of tools a flow is permitted to use.
176
+ *
177
+ * The resolution follows this priority:
178
+ * 1. If the caller explicitly listed tools, use those (filtered to the target).
179
+ * 2. Otherwise, fall back to target-appropriate defaults (curated subset for
180
+ * web, all target-compatible tools for plugin-provided targets).
181
+ * 3. Tools required by `toolCallsOnStart` are always included.
182
+ * 4. Custom (user-defined) tools are prepended.
183
+ * 5. GPT-requiring tools are stripped when no GPT client is available.
184
+ * 6. Minimal tools (objective bookkeeping) are guaranteed present.
185
+ * 7. The result is deduplicated and sorted by name.
186
+ */
187
+ /** @internal Exported for testing. */
188
+ export declare function setupAllowedTools(flowParams: Pick<CreateDonobuFlow, 'customTools' | 'toolCallsOnStart' | 'allowedTools'>, hasGptClient: boolean, targetType: string, toolRegistry: ToolRegistry): Promise<Tool<z.ZodObject, z.ZodObject>[]>;
169
189
  /**
170
190
  * Convert an *executed* list of {@link ToolCall}s into a list of
171
191
  * {@link ProposedToolCall}s that can be replayed in a fresh browser
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.DonobuFlowsManager = void 0;
37
37
  exports.distillAllowedEnvVariableNames = distillAllowedEnvVariableNames;
38
+ exports.setupAllowedTools = setupAllowedTools;
38
39
  exports.prepareToolCallsForRerun = prepareToolCallsForRerun;
39
40
  const crypto_1 = require("crypto");
40
41
  const fs = __importStar(require("fs/promises"));
@@ -50,7 +51,6 @@ const ToolRequiresGptException_1 = require("../exceptions/ToolRequiresGptExcepti
50
51
  const UnknownToolException_1 = require("../exceptions/UnknownToolException");
51
52
  const GptConfig_1 = require("../models/GptConfig");
52
53
  const resolveTargetRuntime_1 = require("../targets/resolveTargetRuntime");
53
- const TargetRuntimePlugin_1 = require("../targets/TargetRuntimePlugin");
54
54
  const ChooseSelectOptionTool_1 = require("../tools/ChooseSelectOptionTool");
55
55
  const ClickTool_1 = require("../tools/ClickTool");
56
56
  const CustomToolRunnerTool_1 = require("../tools/CustomToolRunnerTool");
@@ -69,12 +69,11 @@ const MiscUtils_1 = require("../utils/MiscUtils");
69
69
  const TemplateInterpolator_1 = require("../utils/TemplateInterpolator");
70
70
  const DonobuFlow_1 = require("./DonobuFlow");
71
71
  const FlowCatalog_1 = require("./FlowCatalog");
72
- const FlowDependencyResolver_1 = require("./FlowDependencyResolver");
73
72
  const FlowRuntime_1 = require("./FlowRuntime");
74
73
  const InteractionVisualizer_1 = require("./InteractionVisualizer");
75
74
  const ToolManager_1 = require("./ToolManager");
76
75
  class DonobuFlowsManager {
77
- constructor(deploymentEnvironment, gptClientFactory, gptConfigsManager, agentsManager, flowsPersistenceRegistry, envDataManager, controlPanelFactory, environ) {
76
+ constructor(deploymentEnvironment, gptClientFactory, gptConfigsManager, agentsManager, flowsPersistenceRegistry, envDataManager, controlPanelFactory, environ, toolRegistry, targetRuntimePlugins) {
78
77
  this.deploymentEnvironment = deploymentEnvironment;
79
78
  this.gptClientFactory = gptClientFactory;
80
79
  this.gptConfigsManager = gptConfigsManager;
@@ -83,9 +82,10 @@ class DonobuFlowsManager {
83
82
  this.envDataManager = envDataManager;
84
83
  this.controlPanelFactory = controlPanelFactory;
85
84
  this.environ = environ;
85
+ this.toolRegistry = toolRegistry;
86
+ this.targetRuntimePlugins = targetRuntimePlugins;
86
87
  this.flowRuntime = new FlowRuntime_1.FlowRuntime();
87
88
  this.flowCatalog = new FlowCatalog_1.FlowCatalog(this.flowsPersistenceRegistry, this.flowRuntime, this.deploymentEnvironment);
88
- this.flowDependencyResolver = new FlowDependencyResolver_1.FlowDependencyResolver(this.flowCatalog);
89
89
  }
90
90
  /**
91
91
  * Create a flow with the given parameters and invoke its `DonobuFlow#run`
@@ -124,7 +124,7 @@ class DonobuFlowsManager {
124
124
  const initialRunMode = flowParams.initialRunMode ??
125
125
  (gptClientData.gptClient ? 'AUTONOMOUS' : 'INSTRUCT');
126
126
  // --- Generic validation (target-agnostic) ---
127
- await validateFlowParams(flowParams, gptClientData.gptClient, initialRunMode);
127
+ await validateFlowParams(flowParams, gptClientData.gptClient, initialRunMode, this.toolRegistry);
128
128
  const messageDuration = flowParams.defaultMessageDuration ??
129
129
  DonobuFlowsManager.DEFAULT_MESSAGE_DURATION;
130
130
  const interactionVisualizer = new InteractionVisualizer_1.InteractionVisualizer(messageDuration);
@@ -137,9 +137,9 @@ class DonobuFlowsManager {
137
137
  environ: this.environ,
138
138
  browserContextOverride,
139
139
  getBrowserStorageState: (ref) => this.getBrowserStorageState(ref),
140
- });
140
+ }, this.targetRuntimePlugins);
141
141
  try {
142
- const allowedTools = await setupAllowedTools(flowParams, gptClientData !== null, targetRuntime.targetType);
142
+ const allowedTools = await setupAllowedTools(flowParams, gptClientData !== null, targetRuntime.targetType, this.toolRegistry);
143
143
  const toolManager = new ToolManager_1.ToolManager(allowedTools);
144
144
  const toolCallsOnStart = flowParams.toolCallsOnStart?.length
145
145
  ? flowParams.toolCallsOnStart
@@ -285,7 +285,7 @@ class DonobuFlowsManager {
285
285
  const originalToolCalls = await this.getToolCalls(flowId);
286
286
  // Delegate tool call preparation to the target runtime plugin so that
287
287
  // rerun logic is fully target-agnostic.
288
- const plugin = (0, TargetRuntimePlugin_1.getTargetRuntimePlugin)(priorFlowMetadata.target);
288
+ const plugin = this.targetRuntimePlugins.get(priorFlowMetadata.target);
289
289
  const toolCallsOnStart = plugin
290
290
  ? await plugin.prepareToolCallsForRerun(originalToolCalls, options)
291
291
  : await prepareToolCallsForRerun(originalToolCalls, options);
@@ -323,7 +323,7 @@ class DonobuFlowsManager {
323
323
  if (!activeFlowHandle) {
324
324
  throw new ActiveFlowNotFoundException_1.ActiveFlowNotFoundException(flowId);
325
325
  }
326
- const tool = (await ToolManager_1.ToolManager.allTools()).find((t) => t.name === toolName);
326
+ const tool = this.toolRegistry.allTools().find((t) => t.name === toolName);
327
327
  if (!tool) {
328
328
  throw new UnknownToolException_1.UnknownToolException(toolName);
329
329
  }
@@ -425,9 +425,9 @@ class DonobuFlowsManager {
425
425
  const proposedToolCalls = await prepareToolCallsForRerun(originalToolCalls, effectiveOptions);
426
426
  const scriptVariant = effectiveOptions.playwrightScriptVariant === 'classic' ? 'classic' : 'ai';
427
427
  if (scriptVariant === 'classic') {
428
- return (0, CodeGenerator_1.getFlowAsPlaywrightScript)(flowMetadata, proposedToolCalls, effectiveOptions);
428
+ return (0, CodeGenerator_1.getFlowAsPlaywrightScript)(flowMetadata, proposedToolCalls, effectiveOptions, this.toolRegistry);
429
429
  }
430
- return (0, CodeGenerator_1.getFlowAsAiPlaywrightScript)(flowMetadata, proposedToolCalls, effectiveOptions);
430
+ return (0, CodeGenerator_1.getFlowAsAiPlaywrightScript)(flowMetadata, proposedToolCalls, effectiveOptions, this.toolRegistry);
431
431
  }
432
432
  /**
433
433
  * Generates a complete Playwright project structure for multiple flows with dependency management.
@@ -473,7 +473,7 @@ class DonobuFlowsManager {
473
473
  catch (error) {
474
474
  Logger_1.appLogger.warn('Error while resolving default GPT client configuration when generating project code', error);
475
475
  }
476
- return await (0, CodeGenerator_1.generateProject)(flowsWithToolCalls, resolvedBrowserStates, defaultGptConfig, options);
476
+ return await (0, CodeGenerator_1.generateProject)(flowsWithToolCalls, resolvedBrowserStates, defaultGptConfig, options, this.toolRegistry);
477
477
  }
478
478
  /**
479
479
  * Resolves a GPT client using the provided GPT configuration name, falling back
@@ -664,7 +664,7 @@ function validateFlowName(flowName) {
664
664
  throw new InvalidParamValueException_1.InvalidParamValueException('name', flowName, `the value cannot be longer than ${DonobuFlowsManager.FLOW_NAME_MAX_LENGTH} characters`);
665
665
  }
666
666
  }
667
- async function validateFlowParams(flowParams, gptClient, initialRunMode) {
667
+ async function validateFlowParams(flowParams, gptClient, initialRunMode, toolRegistry) {
668
668
  // Target-specific validation (e.g. targetWebsite URL format) is handled
669
669
  // by the TargetRuntimePlugin.validate() call in resolveTargetRuntime().
670
670
  // This function only validates target-agnostic parameters.
@@ -695,13 +695,27 @@ async function validateFlowParams(flowParams, gptClient, initialRunMode) {
695
695
  throw new InvalidParamValueException_1.InvalidParamValueException('initialRunMode', initialRunMode);
696
696
  }
697
697
  if (!gptClient) {
698
- await throwIfAnyToolsRequireGpt(flowParams.allowedTools ?? null, flowParams.toolCallsOnStart ?? null);
698
+ await throwIfAnyToolsRequireGpt(flowParams.allowedTools ?? null, flowParams.toolCallsOnStart ?? null, toolRegistry);
699
699
  }
700
700
  }
701
- async function setupAllowedTools(flowParams, hasGptClient, targetType) {
701
+ /**
702
+ * Resolves the final set of tools a flow is permitted to use.
703
+ *
704
+ * The resolution follows this priority:
705
+ * 1. If the caller explicitly listed tools, use those (filtered to the target).
706
+ * 2. Otherwise, fall back to target-appropriate defaults (curated subset for
707
+ * web, all target-compatible tools for plugin-provided targets).
708
+ * 3. Tools required by `toolCallsOnStart` are always included.
709
+ * 4. Custom (user-defined) tools are prepended.
710
+ * 5. GPT-requiring tools are stripped when no GPT client is available.
711
+ * 6. Minimal tools (objective bookkeeping) are guaranteed present.
712
+ * 7. The result is deduplicated and sorted by name.
713
+ */
714
+ /** @internal Exported for testing. */
715
+ async function setupAllowedTools(flowParams, hasGptClient, targetType, toolRegistry) {
702
716
  const customTools = flowParams.customTools?.map((tool) => new CustomToolRunnerTool_1.CustomToolRunnerTool(tool)) ?? [];
703
717
  const toolsNeededOnStart = flowParams.toolCallsOnStart?.map((t) => t.name) ?? [];
704
- const targetCompatibleTools = await ToolManager_1.ToolManager.toolsForTarget(targetType);
718
+ const targetCompatibleTools = toolRegistry.toolsForTarget(targetType);
705
719
  let prepackagedTools;
706
720
  if (flowParams.allowedTools?.length) {
707
721
  const allowedTools = [...toolsNeededOnStart, ...flowParams.allowedTools];
@@ -714,7 +728,7 @@ async function setupAllowedTools(flowParams, hasGptClient, targetType) {
714
728
  // Web uses a curated default subset; other targets (provided by plugins)
715
729
  // default to all target-compatible tools.
716
730
  const defaultTools = targetType === 'web'
717
- ? await ToolManager_1.ToolManager.defaultTools()
731
+ ? toolRegistry.defaultTools()
718
732
  : targetCompatibleTools;
719
733
  const allowedTools = [
720
734
  ...toolsNeededOnStart,
@@ -726,7 +740,7 @@ async function setupAllowedTools(flowParams, hasGptClient, targetType) {
726
740
  const prepackagedToolsWithGptFiltered = prepackagedTools.filter((tool) => {
727
741
  return hasGptClient || !tool.requiresGpt;
728
742
  });
729
- const minimalTools = await ToolManager_1.ToolManager.minimalTools();
743
+ const minimalTools = toolRegistry.minimalTools();
730
744
  const existingToolNames = new Set([...customTools, ...prepackagedToolsWithGptFiltered].map((tool) => tool.name));
731
745
  const missingMinimalTools = minimalTools.filter((tool) => !existingToolNames.has(tool.name));
732
746
  const combinedTools = [
@@ -775,8 +789,8 @@ async function setFlowVideo(flowId, flowTempDir, flowsPersistence) {
775
789
  await flowsPersistence.setVideo(flowId, videoBytes);
776
790
  }
777
791
  }
778
- async function throwIfAnyToolsRequireGpt(requestedTools, toolCallsOnStart) {
779
- const toolMap = new Map((await ToolManager_1.ToolManager.allTools()).map((tool) => [tool.name, tool]));
792
+ async function throwIfAnyToolsRequireGpt(requestedTools, toolCallsOnStart, toolRegistry) {
793
+ const toolMap = new Map(toolRegistry.allTools().map((tool) => [tool.name, tool]));
780
794
  const requestedToolsRequiringGpt = [...(requestedTools ?? [])].filter((name) => toolMap.get(name)?.requiresGpt);
781
795
  if (requestedToolsRequiringGpt.length) {
782
796
  throw new ToolRequiresGptException_1.ToolRequiresGptException(requestedToolsRequiringGpt[0]);