unreal-engine-mcp-server 0.5.21 → 0.5.30

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 (382) hide show
  1. package/CHANGELOG.md +247 -4
  2. package/README.md +140 -85
  3. package/dist/automation/bridge.d.ts +8 -0
  4. package/dist/automation/bridge.d.ts.map +1 -1
  5. package/dist/automation/bridge.js +94 -14
  6. package/dist/automation/bridge.js.map +1 -1
  7. package/dist/automation/connection-manager.d.ts.map +1 -1
  8. package/dist/automation/connection-manager.js +13 -5
  9. package/dist/automation/connection-manager.js.map +1 -1
  10. package/dist/automation/handshake.d.ts.map +1 -1
  11. package/dist/automation/handshake.js +40 -27
  12. package/dist/automation/handshake.js.map +1 -1
  13. package/dist/automation/index.d.ts +1 -1
  14. package/dist/automation/index.d.ts.map +1 -1
  15. package/dist/automation/index.js +0 -1
  16. package/dist/automation/index.js.map +1 -1
  17. package/dist/automation/message-handler.d.ts.map +1 -1
  18. package/dist/automation/message-handler.js +13 -9
  19. package/dist/automation/message-handler.js.map +1 -1
  20. package/dist/automation/message-schema.d.ts.map +1 -1
  21. package/dist/automation/message-schema.js +19 -18
  22. package/dist/automation/message-schema.js.map +1 -1
  23. package/dist/automation/request-tracker.d.ts +1 -0
  24. package/dist/automation/request-tracker.d.ts.map +1 -1
  25. package/dist/automation/request-tracker.js +30 -31
  26. package/dist/automation/request-tracker.js.map +1 -1
  27. package/dist/automation/types.d.ts +38 -32
  28. package/dist/automation/types.d.ts.map +1 -1
  29. package/dist/cli.js +14 -16
  30. package/dist/cli.js.map +1 -1
  31. package/dist/config/class-aliases.d.ts.map +1 -1
  32. package/dist/config/class-aliases.js +10 -2
  33. package/dist/config/class-aliases.js.map +1 -1
  34. package/dist/config.d.ts +9 -8
  35. package/dist/config.d.ts.map +1 -1
  36. package/dist/config.js +58 -32
  37. package/dist/config.js.map +1 -1
  38. package/dist/handlers/resource-handlers.d.ts +15 -2
  39. package/dist/handlers/resource-handlers.d.ts.map +1 -1
  40. package/dist/handlers/resource-handlers.js +46 -63
  41. package/dist/handlers/resource-handlers.js.map +1 -1
  42. package/dist/index.d.ts +0 -2
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +42 -48
  45. package/dist/index.js.map +1 -1
  46. package/dist/resources/assets.d.ts.map +1 -1
  47. package/dist/resources/assets.js +34 -9
  48. package/dist/resources/assets.js.map +1 -1
  49. package/dist/resources/levels.d.ts +3 -0
  50. package/dist/resources/levels.d.ts.map +1 -1
  51. package/dist/resources/levels.js +33 -17
  52. package/dist/resources/levels.js.map +1 -1
  53. package/dist/server/resource-registry.d.ts +15 -2
  54. package/dist/server/resource-registry.d.ts.map +1 -1
  55. package/dist/server/resource-registry.js +9 -8
  56. package/dist/server/resource-registry.js.map +1 -1
  57. package/dist/server/tool-registry.d.ts +0 -1
  58. package/dist/server/tool-registry.d.ts.map +1 -1
  59. package/dist/server/tool-registry.js +91 -101
  60. package/dist/server/tool-registry.js.map +1 -1
  61. package/dist/server-setup.d.ts +5 -2
  62. package/dist/server-setup.d.ts.map +1 -1
  63. package/dist/server-setup.js +15 -19
  64. package/dist/server-setup.js.map +1 -1
  65. package/dist/services/health-monitor.d.ts +3 -0
  66. package/dist/services/health-monitor.d.ts.map +1 -1
  67. package/dist/services/health-monitor.js +30 -11
  68. package/dist/services/health-monitor.js.map +1 -1
  69. package/dist/services/metrics-server.d.ts +1 -1
  70. package/dist/services/metrics-server.d.ts.map +1 -1
  71. package/dist/services/metrics-server.js +65 -3
  72. package/dist/services/metrics-server.js.map +1 -1
  73. package/dist/tools/base-tool.d.ts.map +1 -1
  74. package/dist/tools/base-tool.js +14 -16
  75. package/dist/tools/base-tool.js.map +1 -1
  76. package/dist/tools/consolidated-tool-definitions.d.ts +16 -1
  77. package/dist/tools/consolidated-tool-definitions.d.ts.map +1 -1
  78. package/dist/tools/consolidated-tool-definitions.js +1479 -2538
  79. package/dist/tools/consolidated-tool-definitions.js.map +1 -1
  80. package/dist/tools/consolidated-tool-handlers.d.ts.map +1 -1
  81. package/dist/tools/consolidated-tool-handlers.js +195 -217
  82. package/dist/tools/consolidated-tool-handlers.js.map +1 -1
  83. package/dist/tools/dynamic-handler-registry.d.ts +1 -0
  84. package/dist/tools/dynamic-handler-registry.d.ts.map +1 -1
  85. package/dist/tools/dynamic-handler-registry.js +15 -7
  86. package/dist/tools/dynamic-handler-registry.js.map +1 -1
  87. package/dist/tools/dynamic-tool-manager.d.ts +1 -1
  88. package/dist/tools/dynamic-tool-manager.d.ts.map +1 -1
  89. package/dist/tools/dynamic-tool-manager.js +30 -18
  90. package/dist/tools/dynamic-tool-manager.js.map +1 -1
  91. package/dist/tools/editor.d.ts +2 -2
  92. package/dist/tools/editor.d.ts.map +1 -1
  93. package/dist/tools/editor.js +4 -4
  94. package/dist/tools/editor.js.map +1 -1
  95. package/dist/tools/handlers/actor-handlers.d.ts.map +1 -1
  96. package/dist/tools/handlers/actor-handlers.js +66 -7
  97. package/dist/tools/handlers/actor-handlers.js.map +1 -1
  98. package/dist/tools/handlers/ai-handlers.d.ts.map +1 -1
  99. package/dist/tools/handlers/ai-handlers.js +24 -13
  100. package/dist/tools/handlers/ai-handlers.js.map +1 -1
  101. package/dist/tools/handlers/animation-authoring-handlers.d.ts.map +1 -1
  102. package/dist/tools/handlers/animation-authoring-handlers.js +285 -218
  103. package/dist/tools/handlers/animation-authoring-handlers.js.map +1 -1
  104. package/dist/tools/handlers/animation-handlers.d.ts.map +1 -1
  105. package/dist/tools/handlers/animation-handlers.js +69 -21
  106. package/dist/tools/handlers/animation-handlers.js.map +1 -1
  107. package/dist/tools/handlers/asset-handlers.d.ts.map +1 -1
  108. package/dist/tools/handlers/asset-handlers.js +75 -16
  109. package/dist/tools/handlers/asset-handlers.js.map +1 -1
  110. package/dist/tools/handlers/audio-authoring-handlers.d.ts.map +1 -1
  111. package/dist/tools/handlers/audio-authoring-handlers.js +102 -9
  112. package/dist/tools/handlers/audio-authoring-handlers.js.map +1 -1
  113. package/dist/tools/handlers/audio-handlers.d.ts.map +1 -1
  114. package/dist/tools/handlers/audio-handlers.js +48 -13
  115. package/dist/tools/handlers/audio-handlers.js.map +1 -1
  116. package/dist/tools/handlers/blueprint-handlers.d.ts.map +1 -1
  117. package/dist/tools/handlers/blueprint-handlers.js +28 -48
  118. package/dist/tools/handlers/blueprint-handlers.js.map +1 -1
  119. package/dist/tools/handlers/character-handlers.d.ts.map +1 -1
  120. package/dist/tools/handlers/character-handlers.js +13 -12
  121. package/dist/tools/handlers/character-handlers.js.map +1 -1
  122. package/dist/tools/handlers/combat-handlers.d.ts.map +1 -1
  123. package/dist/tools/handlers/combat-handlers.js +12 -12
  124. package/dist/tools/handlers/combat-handlers.js.map +1 -1
  125. package/dist/tools/handlers/common-handlers.d.ts +14 -0
  126. package/dist/tools/handlers/common-handlers.d.ts.map +1 -1
  127. package/dist/tools/handlers/common-handlers.js +117 -9
  128. package/dist/tools/handlers/common-handlers.js.map +1 -1
  129. package/dist/tools/handlers/editor-handlers.d.ts.map +1 -1
  130. package/dist/tools/handlers/editor-handlers.js +139 -67
  131. package/dist/tools/handlers/editor-handlers.js.map +1 -1
  132. package/dist/tools/handlers/effect-handlers.d.ts.map +1 -1
  133. package/dist/tools/handlers/effect-handlers.js +324 -36
  134. package/dist/tools/handlers/effect-handlers.js.map +1 -1
  135. package/dist/tools/handlers/environment-handlers.d.ts.map +1 -1
  136. package/dist/tools/handlers/environment-handlers.js +186 -21
  137. package/dist/tools/handlers/environment-handlers.js.map +1 -1
  138. package/dist/tools/handlers/game-framework-handlers.d.ts.map +1 -1
  139. package/dist/tools/handlers/game-framework-handlers.js +10 -12
  140. package/dist/tools/handlers/game-framework-handlers.js.map +1 -1
  141. package/dist/tools/handlers/gas-handlers.d.ts.map +1 -1
  142. package/dist/tools/handlers/gas-handlers.js +136 -20
  143. package/dist/tools/handlers/gas-handlers.js.map +1 -1
  144. package/dist/tools/handlers/geometry-handlers.d.ts.map +1 -1
  145. package/dist/tools/handlers/geometry-handlers.js +130 -7
  146. package/dist/tools/handlers/geometry-handlers.js.map +1 -1
  147. package/dist/tools/handlers/graph-handlers.d.ts.map +1 -1
  148. package/dist/tools/handlers/graph-handlers.js +46 -11
  149. package/dist/tools/handlers/graph-handlers.js.map +1 -1
  150. package/dist/tools/handlers/input-handlers.d.ts.map +1 -1
  151. package/dist/tools/handlers/input-handlers.js +33 -75
  152. package/dist/tools/handlers/input-handlers.js.map +1 -1
  153. package/dist/tools/handlers/inspect-handlers.d.ts.map +1 -1
  154. package/dist/tools/handlers/inspect-handlers.js +136 -39
  155. package/dist/tools/handlers/inspect-handlers.js.map +1 -1
  156. package/dist/tools/handlers/interaction-handlers.d.ts.map +1 -1
  157. package/dist/tools/handlers/interaction-handlers.js +14 -12
  158. package/dist/tools/handlers/interaction-handlers.js.map +1 -1
  159. package/dist/tools/handlers/inventory-handlers.d.ts.map +1 -1
  160. package/dist/tools/handlers/inventory-handlers.js +19 -12
  161. package/dist/tools/handlers/inventory-handlers.js.map +1 -1
  162. package/dist/tools/handlers/level-handlers.d.ts.map +1 -1
  163. package/dist/tools/handlers/level-handlers.js +166 -149
  164. package/dist/tools/handlers/level-handlers.js.map +1 -1
  165. package/dist/tools/handlers/level-structure-handlers.d.ts.map +1 -1
  166. package/dist/tools/handlers/level-structure-handlers.js +18 -34
  167. package/dist/tools/handlers/level-structure-handlers.js.map +1 -1
  168. package/dist/tools/handlers/manage-tools-handlers.js +3 -3
  169. package/dist/tools/handlers/manage-tools-handlers.js.map +1 -1
  170. package/dist/tools/handlers/material-authoring-handlers.d.ts.map +1 -1
  171. package/dist/tools/handlers/material-authoring-handlers.js +382 -41
  172. package/dist/tools/handlers/material-authoring-handlers.js.map +1 -1
  173. package/dist/tools/handlers/navigation-handlers.d.ts.map +1 -1
  174. package/dist/tools/handlers/navigation-handlers.js +11 -36
  175. package/dist/tools/handlers/navigation-handlers.js.map +1 -1
  176. package/dist/tools/handlers/networking-handlers.d.ts.map +1 -1
  177. package/dist/tools/handlers/networking-handlers.js +17 -15
  178. package/dist/tools/handlers/networking-handlers.js.map +1 -1
  179. package/dist/tools/handlers/niagara-authoring-handlers.d.ts.map +1 -1
  180. package/dist/tools/handlers/niagara-authoring-handlers.js +24 -23
  181. package/dist/tools/handlers/niagara-authoring-handlers.js.map +1 -1
  182. package/dist/tools/handlers/pcg-handlers.d.ts +4 -0
  183. package/dist/tools/handlers/pcg-handlers.d.ts.map +1 -0
  184. package/dist/tools/handlers/pcg-handlers.js +77 -0
  185. package/dist/tools/handlers/pcg-handlers.js.map +1 -0
  186. package/dist/tools/handlers/performance-handlers.d.ts.map +1 -1
  187. package/dist/tools/handlers/performance-handlers.js +35 -42
  188. package/dist/tools/handlers/performance-handlers.js.map +1 -1
  189. package/dist/tools/handlers/pipeline-handlers.d.ts.map +1 -1
  190. package/dist/tools/handlers/pipeline-handlers.js +157 -39
  191. package/dist/tools/handlers/pipeline-handlers.js.map +1 -1
  192. package/dist/tools/handlers/sequence-handlers.d.ts.map +1 -1
  193. package/dist/tools/handlers/sequence-handlers.js +6 -4
  194. package/dist/tools/handlers/sequence-handlers.js.map +1 -1
  195. package/dist/tools/handlers/sessions-handlers.d.ts.map +1 -1
  196. package/dist/tools/handlers/sessions-handlers.js +7 -15
  197. package/dist/tools/handlers/sessions-handlers.js.map +1 -1
  198. package/dist/tools/handlers/spline-handlers.d.ts.map +1 -1
  199. package/dist/tools/handlers/spline-handlers.js +8 -35
  200. package/dist/tools/handlers/spline-handlers.js.map +1 -1
  201. package/dist/tools/handlers/system-handlers.d.ts.map +1 -1
  202. package/dist/tools/handlers/system-handlers.js +100 -26
  203. package/dist/tools/handlers/system-handlers.js.map +1 -1
  204. package/dist/tools/handlers/texture-handlers.d.ts.map +1 -1
  205. package/dist/tools/handlers/texture-handlers.js +14 -0
  206. package/dist/tools/handlers/texture-handlers.js.map +1 -1
  207. package/dist/tools/handlers/volume-handlers.d.ts.map +1 -1
  208. package/dist/tools/handlers/volume-handlers.js +6 -33
  209. package/dist/tools/handlers/volume-handlers.js.map +1 -1
  210. package/dist/tools/handlers/widget-authoring-handlers.d.ts.map +1 -1
  211. package/dist/tools/handlers/widget-authoring-handlers.js +26 -20
  212. package/dist/tools/handlers/widget-authoring-handlers.js.map +1 -1
  213. package/dist/tools/level.d.ts +2 -2
  214. package/dist/tools/level.d.ts.map +1 -1
  215. package/dist/tools/level.js +2 -1
  216. package/dist/tools/level.js.map +1 -1
  217. package/dist/tools/property-dictionary.js +1 -1
  218. package/dist/tools/property-dictionary.js.map +1 -1
  219. package/dist/tools/schemas/core-tools.d.ts +1 -1
  220. package/dist/tools/schemas/core-tools.d.ts.map +1 -1
  221. package/dist/tools/schemas/core-tools.js +94 -57
  222. package/dist/tools/schemas/core-tools.js.map +1 -1
  223. package/dist/tools/tool-definition-utils.d.ts +8 -0
  224. package/dist/tools/tool-definition-utils.d.ts.map +1 -1
  225. package/dist/tools/tool-definition-utils.js +20 -0
  226. package/dist/tools/tool-definition-utils.js.map +1 -1
  227. package/dist/types/automation-responses.d.ts +26 -33
  228. package/dist/types/automation-responses.d.ts.map +1 -1
  229. package/dist/types/env.d.ts.map +1 -1
  230. package/dist/types/env.js +7 -6
  231. package/dist/types/env.js.map +1 -1
  232. package/dist/types/handler-types.d.ts +41 -20
  233. package/dist/types/handler-types.d.ts.map +1 -1
  234. package/dist/types/index.d.ts +2 -2
  235. package/dist/types/index.d.ts.map +1 -1
  236. package/dist/types/index.js.map +1 -1
  237. package/dist/types/tool-interfaces.d.ts +5 -873
  238. package/dist/types/tool-interfaces.d.ts.map +1 -1
  239. package/dist/types/tool-types.d.ts +35 -1
  240. package/dist/types/tool-types.d.ts.map +1 -1
  241. package/dist/unreal-bridge.d.ts.map +1 -1
  242. package/dist/unreal-bridge.js +16 -6
  243. package/dist/unreal-bridge.js.map +1 -1
  244. package/dist/utils/action-constants.d.ts +4 -1
  245. package/dist/utils/action-constants.d.ts.map +1 -1
  246. package/dist/utils/action-constants.js +4 -1
  247. package/dist/utils/action-constants.js.map +1 -1
  248. package/dist/utils/command-validator.d.ts.map +1 -1
  249. package/dist/utils/command-validator.js +5 -4
  250. package/dist/utils/command-validator.js.map +1 -1
  251. package/dist/utils/elicitation.d.ts +5 -2
  252. package/dist/utils/elicitation.d.ts.map +1 -1
  253. package/dist/utils/elicitation.js +38 -21
  254. package/dist/utils/elicitation.js.map +1 -1
  255. package/dist/utils/environment-snapshot.d.ts +17 -0
  256. package/dist/utils/environment-snapshot.d.ts.map +1 -0
  257. package/dist/utils/environment-snapshot.js +242 -0
  258. package/dist/utils/environment-snapshot.js.map +1 -0
  259. package/dist/utils/error-handler.d.ts +1 -11
  260. package/dist/utils/error-handler.d.ts.map +1 -1
  261. package/dist/utils/error-handler.js +41 -25
  262. package/dist/utils/error-handler.js.map +1 -1
  263. package/dist/utils/index.d.ts +2 -1
  264. package/dist/utils/index.d.ts.map +1 -1
  265. package/dist/utils/index.js +2 -1
  266. package/dist/utils/index.js.map +1 -1
  267. package/dist/utils/ini-reader.js +4 -4
  268. package/dist/utils/ini-reader.js.map +1 -1
  269. package/dist/utils/log-reader.d.ts +29 -0
  270. package/dist/utils/log-reader.d.ts.map +1 -0
  271. package/dist/utils/log-reader.js +229 -0
  272. package/dist/utils/log-reader.js.map +1 -0
  273. package/dist/utils/log-redaction.d.ts +4 -0
  274. package/dist/utils/log-redaction.d.ts.map +1 -0
  275. package/dist/utils/log-redaction.js +27 -0
  276. package/dist/utils/log-redaction.js.map +1 -0
  277. package/dist/utils/logger.d.ts +1 -0
  278. package/dist/utils/logger.d.ts.map +1 -1
  279. package/dist/utils/logger.js +20 -7
  280. package/dist/utils/logger.js.map +1 -1
  281. package/dist/utils/normalize.d.ts.map +1 -1
  282. package/dist/utils/normalize.js +31 -30
  283. package/dist/utils/normalize.js.map +1 -1
  284. package/dist/utils/path-security.d.ts.map +1 -1
  285. package/dist/utils/path-security.js +20 -11
  286. package/dist/utils/path-security.js.map +1 -1
  287. package/dist/utils/response-factory.d.ts +1 -1
  288. package/dist/utils/response-factory.d.ts.map +1 -1
  289. package/dist/utils/response-factory.js +17 -3
  290. package/dist/utils/response-factory.js.map +1 -1
  291. package/dist/utils/response-validator.d.ts.map +1 -1
  292. package/dist/utils/response-validator.js +114 -47
  293. package/dist/utils/response-validator.js.map +1 -1
  294. package/dist/utils/safe-json.d.ts.map +1 -1
  295. package/dist/utils/safe-json.js +24 -18
  296. package/dist/utils/safe-json.js.map +1 -1
  297. package/dist/utils/type-coercion.d.ts +2 -3
  298. package/dist/utils/type-coercion.d.ts.map +1 -1
  299. package/dist/utils/type-coercion.js +42 -14
  300. package/dist/utils/type-coercion.js.map +1 -1
  301. package/dist/utils/type-guards.d.ts +2 -0
  302. package/dist/utils/type-guards.d.ts.map +1 -0
  303. package/dist/utils/type-guards.js +4 -0
  304. package/dist/utils/type-guards.js.map +1 -0
  305. package/dist/utils/unreal-command-queue.d.ts +2 -0
  306. package/dist/utils/unreal-command-queue.d.ts.map +1 -1
  307. package/dist/utils/unreal-command-queue.js +80 -54
  308. package/dist/utils/unreal-command-queue.js.map +1 -1
  309. package/dist/utils/validation.d.ts +2 -1
  310. package/dist/utils/validation.d.ts.map +1 -1
  311. package/dist/utils/validation.js +44 -34
  312. package/dist/utils/validation.js.map +1 -1
  313. package/package.json +4 -6
  314. package/server.json +3 -3
  315. package/dist/graphql/loaders.d.ts +0 -64
  316. package/dist/graphql/loaders.d.ts.map +0 -1
  317. package/dist/graphql/loaders.js +0 -117
  318. package/dist/graphql/loaders.js.map +0 -1
  319. package/dist/graphql/resolvers.d.ts +0 -373
  320. package/dist/graphql/resolvers.d.ts.map +0 -1
  321. package/dist/graphql/resolvers.js +0 -776
  322. package/dist/graphql/resolvers.js.map +0 -1
  323. package/dist/graphql/schema.d.ts +0 -5
  324. package/dist/graphql/schema.d.ts.map +0 -1
  325. package/dist/graphql/schema.js +0 -437
  326. package/dist/graphql/schema.js.map +0 -1
  327. package/dist/graphql/server.d.ts +0 -25
  328. package/dist/graphql/server.d.ts.map +0 -1
  329. package/dist/graphql/server.js +0 -119
  330. package/dist/graphql/server.js.map +0 -1
  331. package/dist/graphql/types.d.ts +0 -9
  332. package/dist/graphql/types.d.ts.map +0 -1
  333. package/dist/graphql/types.js +0 -2
  334. package/dist/graphql/types.js.map +0 -1
  335. package/dist/tools/actors.d.ts +0 -212
  336. package/dist/tools/actors.d.ts.map +0 -1
  337. package/dist/tools/actors.js +0 -456
  338. package/dist/tools/actors.js.map +0 -1
  339. package/dist/tools/animation.d.ts +0 -274
  340. package/dist/tools/animation.d.ts.map +0 -1
  341. package/dist/tools/animation.js +0 -773
  342. package/dist/tools/animation.js.map +0 -1
  343. package/dist/tools/assets.d.ts +0 -82
  344. package/dist/tools/assets.d.ts.map +0 -1
  345. package/dist/tools/assets.js +0 -383
  346. package/dist/tools/assets.js.map +0 -1
  347. package/dist/tools/blueprint.d.ts +0 -271
  348. package/dist/tools/blueprint.d.ts.map +0 -1
  349. package/dist/tools/blueprint.js +0 -828
  350. package/dist/tools/blueprint.js.map +0 -1
  351. package/dist/tools/environment.d.ts +0 -37
  352. package/dist/tools/environment.d.ts.map +0 -1
  353. package/dist/tools/environment.js +0 -338
  354. package/dist/tools/environment.js.map +0 -1
  355. package/dist/tools/foliage.d.ts +0 -140
  356. package/dist/tools/foliage.d.ts.map +0 -1
  357. package/dist/tools/foliage.js +0 -405
  358. package/dist/tools/foliage.js.map +0 -1
  359. package/dist/tools/landscape.d.ts +0 -120
  360. package/dist/tools/landscape.d.ts.map +0 -1
  361. package/dist/tools/landscape.js +0 -454
  362. package/dist/tools/landscape.js.map +0 -1
  363. package/dist/tools/lighting.d.ts +0 -240
  364. package/dist/tools/lighting.d.ts.map +0 -1
  365. package/dist/tools/lighting.js +0 -856
  366. package/dist/tools/lighting.js.map +0 -1
  367. package/dist/tools/logs.d.ts +0 -45
  368. package/dist/tools/logs.d.ts.map +0 -1
  369. package/dist/tools/logs.js +0 -235
  370. package/dist/tools/logs.js.map +0 -1
  371. package/dist/tools/niagara.d.ts +0 -277
  372. package/dist/tools/niagara.d.ts.map +0 -1
  373. package/dist/tools/niagara.js +0 -325
  374. package/dist/tools/niagara.js.map +0 -1
  375. package/dist/tools/physics.d.ts +0 -191
  376. package/dist/tools/physics.d.ts.map +0 -1
  377. package/dist/tools/physics.js +0 -492
  378. package/dist/tools/physics.js.map +0 -1
  379. package/dist/tools/sequence.d.ts +0 -139
  380. package/dist/tools/sequence.d.ts.map +0 -1
  381. package/dist/tools/sequence.js +0 -261
  382. package/dist/tools/sequence.js.map +0 -1
@@ -10,7 +10,11 @@ import { HandshakeHandler } from './handshake.js';
10
10
  import { MessageHandler } from './message-handler.js';
11
11
  import { automationMessageSchema } from './message-schema.js';
12
12
  import { config } from '../config.js';
13
+ import { redactImagePayloadTextForLog } from '../utils/log-redaction.js';
13
14
  const require = createRequire(import.meta.url);
15
+ function castAutomationResponse(response) {
16
+ return response;
17
+ }
14
18
  const packageInfo = (() => {
15
19
  try {
16
20
  return require('../../package.json');
@@ -36,6 +40,7 @@ export class AutomationBridge extends EventEmitter {
36
40
  maxConcurrentConnections;
37
41
  maxQueuedRequests;
38
42
  useTls;
43
+ connectionTimeoutMs;
39
44
  connectionManager;
40
45
  requestTracker;
41
46
  handshakeHandler;
@@ -50,6 +55,10 @@ export class AutomationBridge extends EventEmitter {
50
55
  queuedRequestItems = [];
51
56
  connectionPromise;
52
57
  connectionLock = false;
58
+ pendingConnectionSocket;
59
+ abortedConnectionSockets = new WeakSet();
60
+ connectionAttemptCleanup;
61
+ connectionAttemptReject;
53
62
  constructor(options = {}) {
54
63
  super();
55
64
  const allowNonLoopback = options.allowNonLoopback
@@ -114,12 +123,18 @@ export class AutomationBridge extends EventEmitter {
114
123
  return value > 0 && value <= 65535 ? value : null;
115
124
  }
116
125
  if (typeof value === 'string' && value.trim().length > 0) {
117
- const parsed = Number.parseInt(value.trim(), 10);
126
+ const trimmed = value.trim();
127
+ if (!/^\d+$/.test(trimmed))
128
+ return null;
129
+ const parsed = Number(trimmed);
118
130
  return Number.isInteger(parsed) && parsed > 0 && parsed <= 65535 ? parsed : null;
119
131
  }
120
132
  return null;
121
133
  };
122
- const defaultPort = sanitizePort(options.port ?? process.env.MCP_AUTOMATION_WS_PORT) ?? DEFAULT_AUTOMATION_PORT;
134
+ const defaultPort = sanitizePort(options.port)
135
+ ?? sanitizePort(process.env.MCP_AUTOMATION_WS_PORT)
136
+ ?? sanitizePort(process.env.MCP_AUTOMATION_PORT)
137
+ ?? DEFAULT_AUTOMATION_PORT;
123
138
  const configuredPortValues = options.ports
124
139
  ? options.ports
125
140
  : process.env.MCP_AUTOMATION_WS_PORTS
@@ -171,7 +186,10 @@ export class AutomationBridge extends EventEmitter {
171
186
  return value >= 0 ? value : fallback;
172
187
  }
173
188
  if (typeof value === 'string' && value.trim().length > 0) {
174
- const parsed = Number.parseInt(value.trim(), 10);
189
+ const trimmed = value.trim();
190
+ if (!/^\d+$/.test(trimmed))
191
+ return fallback;
192
+ const parsed = Number(trimmed);
175
193
  return Number.isInteger(parsed) && parsed >= 0 ? parsed : fallback;
176
194
  }
177
195
  return fallback;
@@ -193,16 +211,16 @@ export class AutomationBridge extends EventEmitter {
193
211
  const maxConcurrentConnections = Math.max(1, options.maxConcurrentConnections ?? 10);
194
212
  this.maxQueuedRequests = Math.max(0, options.maxQueuedRequests ?? DEFAULT_MAX_QUEUED_REQUESTS);
195
213
  this.useTls = parseBoolean(options.useTls ?? process.env.MCP_AUTOMATION_USE_TLS, false);
214
+ this.connectionTimeoutMs = Math.max(1, parseNonNegativeInt(options.connectionTimeoutMs ?? config.MCP_CONNECTION_TIMEOUT_MS, config.MCP_CONNECTION_TIMEOUT_MS));
196
215
  const maxInboundMessagesPerMinute = parseNonNegativeInt(options.maxInboundMessagesPerMinute
197
216
  ?? process.env.MCP_AUTOMATION_MAX_MESSAGES_PER_MINUTE, DEFAULT_MAX_INBOUND_MESSAGES_PER_MINUTE);
198
217
  const maxInboundAutomationRequestsPerMinute = parseNonNegativeInt(options.maxInboundAutomationRequestsPerMinute
199
218
  ?? process.env.MCP_AUTOMATION_MAX_AUTOMATION_REQUESTS_PER_MINUTE, DEFAULT_MAX_INBOUND_AUTOMATION_REQUESTS_PER_MINUTE);
200
219
  const rawClientHost = options.clientHost
201
220
  ?? process.env.MCP_AUTOMATION_CLIENT_HOST
202
- ?? process.env.MCP_AUTOMATION_HOST
203
- ?? DEFAULT_AUTOMATION_HOST;
221
+ ?? this.host;
204
222
  this.clientHost = normalizeHost(rawClientHost, 'Automation bridge client host');
205
- this.clientPort = options.clientPort ?? sanitizePort(process.env.MCP_AUTOMATION_CLIENT_PORT) ?? DEFAULT_AUTOMATION_PORT;
223
+ this.clientPort = options.clientPort ?? sanitizePort(process.env.MCP_AUTOMATION_CLIENT_PORT) ?? defaultPort;
206
224
  this.maxConcurrentConnections = maxConcurrentConnections;
207
225
  this.connectionManager = new ConnectionManager(heartbeatIntervalMs, maxInboundMessagesPerMinute, maxInboundAutomationRequestsPerMinute);
208
226
  this.requestTracker = new RequestTracker(maxPendingRequests);
@@ -246,6 +264,7 @@ export class AutomationBridge extends EventEmitter {
246
264
  headers,
247
265
  perMessageDeflate: false
248
266
  });
267
+ this.pendingConnectionSocket = socket;
249
268
  this.handleClientConnection(socket);
250
269
  }
251
270
  catch (error) {
@@ -260,7 +279,8 @@ export class AutomationBridge extends EventEmitter {
260
279
  socket.on('open', async () => {
261
280
  this.log.info('Automation bridge client connected, starting handshake');
262
281
  try {
263
- const metadata = await this.handshakeHandler.initiateHandshake(socket);
282
+ const metadata = await this.handshakeHandler.initiateHandshake(socket, this.connectionTimeoutMs);
283
+ this.clearPendingConnection(socket);
264
284
  this.lastHandshakeAt = new Date();
265
285
  this.lastHandshakeMetadata = metadata;
266
286
  this.lastHandshakeFailure = undefined;
@@ -325,7 +345,7 @@ export class AutomationBridge extends EventEmitter {
325
345
  return;
326
346
  }
327
347
  const text = rawDataToUtf8String(data, byteLength);
328
- this.log.debug(`[AutomationBridge Client] Received message: ${text.substring(0, 1000)}`);
348
+ this.log.debug(`[AutomationBridge Client] Received message: ${redactImagePayloadTextForLog(text).substring(0, 1000)}`);
329
349
  const parsed = JSON.parse(text);
330
350
  if (!this.connectionManager.recordInboundMessage(socket, false)) {
331
351
  this.log.warn('Inbound message rate limit exceeded; closing connection.');
@@ -334,7 +354,7 @@ export class AutomationBridge extends EventEmitter {
334
354
  }
335
355
  const validation = automationMessageSchema.safeParse(parsed);
336
356
  if (!validation.success) {
337
- this.log.warn('Dropped invalid automation message', validation.error.format());
357
+ this.log.warn('Dropped invalid automation message', validation.error.issues);
338
358
  return;
339
359
  }
340
360
  this.connectionManager.updateLastMessageTime();
@@ -347,12 +367,18 @@ export class AutomationBridge extends EventEmitter {
347
367
  });
348
368
  }
349
369
  catch (error) {
370
+ this.clearPendingConnection(socket);
350
371
  const err = error instanceof Error ? error : new Error(String(error));
351
372
  this.lastHandshakeFailure = { reason: err.message, at: new Date() };
352
373
  this.emitAutomation('handshakeFailed', { reason: err.message, port: this.clientPort });
353
374
  }
354
375
  });
355
376
  socket.on('error', (error) => {
377
+ this.clearPendingConnection(socket);
378
+ if (this.abortedConnectionSockets.has(socket)) {
379
+ this.log.debug('Ignoring error from aborted automation bridge socket', error);
380
+ return;
381
+ }
356
382
  this.log.error('Automation bridge client socket error', error);
357
383
  const errObj = error instanceof Error ? error : new Error(String(error));
358
384
  this.lastError = { message: errObj.message, at: new Date() };
@@ -360,6 +386,8 @@ export class AutomationBridge extends EventEmitter {
360
386
  this.emitAutomation('error', errWithPort);
361
387
  });
362
388
  socket.on('close', (code, reasonBuffer) => {
389
+ this.clearPendingConnection(socket);
390
+ this.abortedConnectionSockets.delete(socket);
363
391
  const reason = reasonBuffer.toString('utf8');
364
392
  const socketInfo = this.connectionManager.removeSocket(socket);
365
393
  if (socketInfo) {
@@ -372,6 +400,7 @@ export class AutomationBridge extends EventEmitter {
372
400
  });
373
401
  this.log.info(`Automation bridge client socket closed (code=${code}, reason=${reason})`);
374
402
  if (!this.connectionManager.isConnected()) {
403
+ this.rejectQueuedRequests(new Error(reason || 'Connection lost'));
375
404
  this.requestTracker.rejectAll(new Error(reason || 'Connection lost'));
376
405
  }
377
406
  }
@@ -389,6 +418,37 @@ export class AutomationBridge extends EventEmitter {
389
418
  const scheme = this.useTls ? 'wss' : 'ws';
390
419
  return `${scheme}://${this.formatHostForUrl(this.clientHost)}:${this.clientPort}`;
391
420
  }
421
+ clearPendingConnection(socket) {
422
+ if (this.pendingConnectionSocket === socket) {
423
+ this.pendingConnectionSocket = undefined;
424
+ }
425
+ }
426
+ abortPendingConnection(reason = new Error('Automation bridge connection attempt aborted')) {
427
+ const socket = this.pendingConnectionSocket;
428
+ this.pendingConnectionSocket = undefined;
429
+ const rejectConnectionAttempt = this.connectionAttemptReject;
430
+ const cleanup = this.connectionAttemptCleanup;
431
+ if (cleanup) {
432
+ cleanup();
433
+ }
434
+ else {
435
+ this.connectionLock = false;
436
+ this.connectionPromise = undefined;
437
+ this.connectionAttemptReject = undefined;
438
+ }
439
+ if (rejectConnectionAttempt) {
440
+ rejectConnectionAttempt(reason);
441
+ }
442
+ if (socket && socket.readyState !== WebSocket.CLOSED && socket.readyState !== WebSocket.CLOSING) {
443
+ this.abortedConnectionSockets.add(socket);
444
+ try {
445
+ socket.terminate();
446
+ }
447
+ catch (error) {
448
+ this.log.debug('Failed to terminate timed-out automation bridge socket', error);
449
+ }
450
+ }
451
+ }
392
452
  stop() {
393
453
  if (this.isConnected()) {
394
454
  this.broadcast({
@@ -397,8 +457,10 @@ export class AutomationBridge extends EventEmitter {
397
457
  reason: 'Server shutting down'
398
458
  });
399
459
  }
460
+ this.abortPendingConnection(new Error('Automation bridge server stopped'));
400
461
  this.connectionManager.closeAll(1001, 'Server shutdown');
401
462
  this.lastHandshakeAck = undefined;
463
+ this.rejectQueuedRequests(new Error('Automation bridge server stopped'));
402
464
  this.requestTracker.rejectAll(new Error('Automation bridge server stopped'));
403
465
  }
404
466
  isConnected() {
@@ -418,7 +480,7 @@ export class AutomationBridge extends EventEmitter {
418
480
  }));
419
481
  return {
420
482
  enabled: this.enabled,
421
- host: this.host,
483
+ host: this.clientHost,
422
484
  port: this.port,
423
485
  configuredPorts: [...this.ports],
424
486
  listeningPorts: [],
@@ -481,7 +543,13 @@ export class AutomationBridge extends EventEmitter {
481
543
  this.off('handshakeFailed', onHandshakeFail);
482
544
  this.connectionLock = false;
483
545
  this.connectionPromise = undefined;
546
+ if (this.connectionAttemptCleanup === cleanup) {
547
+ this.connectionAttemptCleanup = undefined;
548
+ this.connectionAttemptReject = undefined;
549
+ }
484
550
  };
551
+ this.connectionAttemptCleanup = cleanup;
552
+ this.connectionAttemptReject = reject;
485
553
  this.once('connected', onConnect);
486
554
  this.once('error', onError);
487
555
  this.once('handshakeFailed', onHandshakeFail);
@@ -494,7 +562,7 @@ export class AutomationBridge extends EventEmitter {
494
562
  });
495
563
  }
496
564
  try {
497
- const connectTimeout = 5000;
565
+ const connectTimeout = this.connectionTimeoutMs;
498
566
  let timeoutId;
499
567
  const timeoutPromise = new Promise((_, reject) => {
500
568
  timeoutId = setTimeout(() => reject(new Error('Lazy connection timeout')), connectTimeout);
@@ -508,8 +576,11 @@ export class AutomationBridge extends EventEmitter {
508
576
  }
509
577
  }
510
578
  catch (err) {
511
- this.log.error('Lazy connection failed', err);
512
579
  const errObj = err;
580
+ if (String(errObj?.message ?? err) === 'Lazy connection timeout') {
581
+ this.abortPendingConnection(new Error('Lazy connection timeout'));
582
+ }
583
+ this.log.error('Lazy connection failed', err);
513
584
  throw new Error(`Failed to establish connection to Unreal Engine: ${String(errObj?.message ?? err)}`);
514
585
  }
515
586
  }
@@ -542,7 +613,7 @@ export class AutomationBridge extends EventEmitter {
542
613
  if (coalesceKey) {
543
614
  const existing = this.requestTracker.getCoalescedRequest(coalesceKey);
544
615
  if (existing) {
545
- return existing;
616
+ return existing.then((castAutomationResponse));
546
617
  }
547
618
  }
548
619
  const { requestId, promise } = this.requestTracker.createRequest(action, payload, timeoutMs);
@@ -555,7 +626,7 @@ export class AutomationBridge extends EventEmitter {
555
626
  action,
556
627
  payload
557
628
  };
558
- const resultPromise = promise;
629
+ const resultPromise = promise.then((castAutomationResponse));
559
630
  resultPromise.finally(() => {
560
631
  this.processRequestQueue();
561
632
  }).catch(() => { });
@@ -571,6 +642,10 @@ export class AutomationBridge extends EventEmitter {
571
642
  processRequestQueue() {
572
643
  if (this.queuedRequestItems.length === 0)
573
644
  return;
645
+ if (!this.isConnected()) {
646
+ this.rejectQueuedRequests(new Error('Connection lost'));
647
+ return;
648
+ }
574
649
  while (this.queuedRequestItems.length > 0 &&
575
650
  this.requestTracker.getPendingCount() < this.requestTracker.getMaxPendingRequests()) {
576
651
  const item = this.queuedRequestItems.shift();
@@ -581,6 +656,11 @@ export class AutomationBridge extends EventEmitter {
581
656
  }
582
657
  }
583
658
  }
659
+ rejectQueuedRequests(error) {
660
+ for (const item of this.queuedRequestItems.splice(0)) {
661
+ item.reject(error);
662
+ }
663
+ }
584
664
  send(payload) {
585
665
  const primarySocket = this.connectionManager.getPrimarySocket();
586
666
  if (!primarySocket || primarySocket.readyState !== WebSocket.OPEN) {
@@ -1 +1 @@
1
- {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/automation/bridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bridge.js","sourceRoot":"","sources":["../../src/automation/bridge.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"connection-manager.d.ts","sourceRoot":"","sources":["../../src/automation/connection-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAG/B,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,qBAAa,iBAAkB,SAAQ,YAAY;IAS3C,OAAO,CAAC,mBAAmB;IAC3B,OAAO,CAAC,oBAAoB;IAC5B,OAAO,CAAC,8BAA8B;IAV1C,OAAO,CAAC,aAAa,CAAoC;IACzD,OAAO,CAAC,aAAa,CAAC,CAAY;IAClC,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,aAAa,CAAC,CAAO;IAC7B,OAAO,CAAC,GAAG,CAAmC;IAC9C,OAAO,CAAC,cAAc,CAAkG;gBAG5G,mBAAmB,EAAE,MAAM,EAC3B,oBAAoB,EAAE,MAAM,EAC5B,8BAA8B,EAAE,MAAM;IAS3C,sBAAsB,IAAI,MAAM;IAIhC,cAAc,CACjB,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,aAAa,CAAC,EAAE,MAAM,EACtB,UAAU,CAAC,EAAE,MAAM,GACpB,IAAI;IAqCA,YAAY,CAAC,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS;IAevD,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,GAAG,OAAO;IAmC9E,gBAAgB,IAAI,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC;IAI9C,gBAAgB,IAAI,SAAS,GAAG,SAAS;IAIzC,WAAW,IAAI,OAAO;IAItB,cAAc,IAAI,IAAI;IA4BtB,aAAa,IAAI,IAAI;IAOrB,qBAAqB,IAAI,IAAI;IAI7B,kBAAkB,IAAI,IAAI,GAAG,SAAS;IAItC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;CAUxD"}
1
+ {"version":3,"file":"connection-manager.d.ts","sourceRoot":"","sources":["../../src/automation/connection-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAG/B,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAI3C,qBAAa,iBAAkB,SAAQ,YAAY;IAS3C,OAAO,CAAC,mBAAmB;IAC3B,OAAO,CAAC,oBAAoB;IAC5B,OAAO,CAAC,8BAA8B;IAV1C,OAAO,CAAC,aAAa,CAAoC;IACzD,OAAO,CAAC,aAAa,CAAC,CAAY;IAClC,OAAO,CAAC,cAAc,CAAC,CAAiB;IACxC,OAAO,CAAC,aAAa,CAAC,CAAO;IAC7B,OAAO,CAAC,GAAG,CAAmC;IAC9C,OAAO,CAAC,cAAc,CAAkG;gBAG5G,mBAAmB,EAAE,MAAM,EAC3B,oBAAoB,EAAE,MAAM,EAC5B,8BAA8B,EAAE,MAAM;IAS3C,sBAAsB,IAAI,MAAM;IAIhC,cAAc,CACjB,MAAM,EAAE,SAAS,EACjB,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAClC,aAAa,CAAC,EAAE,MAAM,EACtB,UAAU,CAAC,EAAE,MAAM,GACpB,IAAI;IAqCA,YAAY,CAAC,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS;IAevD,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,mBAAmB,EAAE,OAAO,GAAG,OAAO;IAyC9E,gBAAgB,IAAI,GAAG,CAAC,SAAS,EAAE,UAAU,CAAC;IAI9C,gBAAgB,IAAI,SAAS,GAAG,SAAS;IAIzC,WAAW,IAAI,OAAO;IAItB,cAAc,IAAI,IAAI;IA4BtB,aAAa,IAAI,IAAI;IAOrB,qBAAqB,IAAI,IAAI;IAI7B,kBAAkB,IAAI,IAAI,GAAG,SAAS;IAItC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;CAUxD"}
@@ -2,6 +2,7 @@ import { WebSocket } from 'ws';
2
2
  import { Logger } from '../utils/logger.js';
3
3
  import { randomUUID } from 'node:crypto';
4
4
  import { EventEmitter } from 'node:events';
5
+ const RATE_LIMIT_WINDOW_MS = 60_000;
5
6
  export class ConnectionManager extends EventEmitter {
6
7
  heartbeatIntervalMs;
7
8
  maxMessagesPerMinute;
@@ -64,13 +65,21 @@ export class ConnectionManager extends EventEmitter {
64
65
  return info;
65
66
  }
66
67
  recordInboundMessage(socket, isAutomationRequest) {
68
+ if (!this.activeSockets.has(socket)) {
69
+ this.rateLimitState.delete(socket);
70
+ return false;
71
+ }
67
72
  if (this.maxMessagesPerMinute <= 0 && this.maxAutomationRequestsPerMinute <= 0) {
68
73
  return true;
69
74
  }
70
75
  const nowMs = Date.now();
71
- const state = this.rateLimitState.get(socket) ?? { windowStartMs: nowMs, messageCount: 0, automationCount: 0 };
76
+ let state = this.rateLimitState.get(socket);
77
+ if (!state) {
78
+ state = { windowStartMs: nowMs, messageCount: 0, automationCount: 0 };
79
+ this.rateLimitState.set(socket, state);
80
+ }
72
81
  const windowElapsedMs = nowMs - state.windowStartMs;
73
- if (windowElapsedMs >= 60000) {
82
+ if (windowElapsedMs >= RATE_LIMIT_WINDOW_MS) {
74
83
  state.windowStartMs = nowMs;
75
84
  state.messageCount = 0;
76
85
  state.automationCount = 0;
@@ -79,12 +88,11 @@ export class ConnectionManager extends EventEmitter {
79
88
  if (isAutomationRequest) {
80
89
  state.automationCount += 1;
81
90
  }
82
- this.rateLimitState.set(socket, state);
83
- if (this.maxMessagesPerMinute > 0 && state.messageCount >= this.maxMessagesPerMinute) {
91
+ if (this.maxMessagesPerMinute > 0 && state.messageCount > this.maxMessagesPerMinute) {
84
92
  this.log.warn(`Inbound message rate exceeded (${state.messageCount}/${this.maxMessagesPerMinute} per minute).`);
85
93
  return false;
86
94
  }
87
- if (isAutomationRequest && this.maxAutomationRequestsPerMinute > 0 && state.automationCount >= this.maxAutomationRequestsPerMinute) {
95
+ if (isAutomationRequest && this.maxAutomationRequestsPerMinute > 0 && state.automationCount > this.maxAutomationRequestsPerMinute) {
88
96
  this.log.warn(`Inbound automation request rate exceeded (${state.automationCount}/${this.maxAutomationRequestsPerMinute} per minute).`);
89
97
  return false;
90
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"connection-manager.js","sourceRoot":"","sources":["../../src/automation/connection-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connection-manager.js","sourceRoot":"","sources":["../../src/automation/connection-manager.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"handshake.d.ts","sourceRoot":"","sources":["../../src/automation/handshake.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAI/B,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,qBAAa,gBAAiB,SAAQ,YAAY;IAK1C,OAAO,CAAC,eAAe,CAAC;IAJ5B,OAAO,CAAC,GAAG,CAAkC;IAC7C,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAQ;gBAGzC,eAAe,CAAC,EAAE,MAAM,YAAA;IAK7B,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,GAAE,MAA0C,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IA8EpI,OAAO,CAAC,yBAAyB;CAQpC"}
1
+ {"version":3,"file":"handshake.d.ts","sourceRoot":"","sources":["../../src/automation/handshake.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAI/B,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,qBAAa,gBAAiB,SAAQ,YAAY;IAK1C,OAAO,CAAC,eAAe,CAAC;IAJ5B,OAAO,CAAC,GAAG,CAAkC;IAC7C,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAQ;gBAGzC,eAAe,CAAC,EAAE,MAAM,YAAA;IAK7B,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,GAAE,MAA0C,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IA0FpI,OAAO,CAAC,yBAAyB;CAQpC"}
@@ -12,14 +12,41 @@ export class HandshakeHandler extends EventEmitter {
12
12
  }
13
13
  initiateHandshake(socket, timeoutMs = this.DEFAULT_HANDSHAKE_TIMEOUT_MS) {
14
14
  return new Promise((resolve, reject) => {
15
- let handshakeComplete = false;
15
+ let settled = false;
16
+ let helloTimer;
16
17
  const timeout = setTimeout(() => {
17
- if (!handshakeComplete) {
18
+ if (!settled) {
18
19
  this.log.warn('Automation bridge client handshake timed out');
19
- socket.close(4002, 'Handshake timeout');
20
- reject(new Error('Handshake timeout'));
20
+ rejectHandshake(new Error('Handshake timeout'), 4002, 'Handshake timeout');
21
21
  }
22
22
  }, timeoutMs);
23
+ const cleanup = () => {
24
+ clearTimeout(timeout);
25
+ if (helloTimer) {
26
+ clearTimeout(helloTimer);
27
+ helloTimer = undefined;
28
+ }
29
+ socket.off('message', onMessage);
30
+ socket.off('error', onError);
31
+ socket.off('close', onClose);
32
+ };
33
+ const rejectHandshake = (error, closeCode, closeReason) => {
34
+ if (settled)
35
+ return;
36
+ settled = true;
37
+ if (closeCode !== undefined) {
38
+ socket.close(closeCode, closeReason);
39
+ }
40
+ cleanup();
41
+ reject(error);
42
+ };
43
+ const resolveHandshake = (metadata) => {
44
+ if (settled)
45
+ return;
46
+ settled = true;
47
+ cleanup();
48
+ resolve(metadata);
49
+ };
23
50
  const onMessage = (data) => {
24
51
  let parsed;
25
52
  const text = typeof data === 'string' ? data : data.toString('utf8');
@@ -28,49 +55,35 @@ export class HandshakeHandler extends EventEmitter {
28
55
  }
29
56
  catch (error) {
30
57
  this.log.error('Received non-JSON automation message during handshake', error);
31
- socket.close(4003, 'Invalid JSON payload');
32
- cleanup();
33
- reject(new Error('Invalid JSON payload'));
58
+ rejectHandshake(new Error('Invalid JSON payload'), 4003, 'Invalid JSON payload');
34
59
  return;
35
60
  }
36
61
  const validation = bridgeAckSchema.safeParse(parsed);
37
62
  if (validation.success) {
38
- handshakeComplete = true;
39
- cleanup();
40
63
  const metadata = this.sanitizeHandshakeMetadata(validation.data);
41
- resolve(metadata);
64
+ resolveHandshake(metadata);
42
65
  return;
43
66
  }
44
67
  const typeHint = typeof parsed.type === 'string' ? parsed.type : 'unknown';
45
- this.log.warn(`Expected bridge_ack handshake, received ${typeHint}`, validation.error.format());
46
- socket.close(4004, 'Handshake expected bridge_ack');
47
- cleanup();
48
- reject(new Error(`Handshake expected bridge_ack, got ${typeHint}`));
68
+ this.log.warn(`Expected bridge_ack handshake, received ${typeHint}`, validation.error.issues);
69
+ rejectHandshake(new Error(`Handshake expected bridge_ack, got ${typeHint}`), 4004, 'Handshake expected bridge_ack');
49
70
  };
50
71
  const onError = (error) => {
51
- cleanup();
52
- reject(error);
72
+ rejectHandshake(error);
53
73
  };
54
74
  const onClose = () => {
55
- cleanup();
56
- reject(new Error('Socket closed during handshake'));
57
- };
58
- const cleanup = () => {
59
- clearTimeout(timeout);
60
- socket.off('message', onMessage);
61
- socket.off('error', onError);
62
- socket.off('close', onClose);
75
+ rejectHandshake(new Error('Socket closed during handshake'));
63
76
  };
64
77
  socket.on('message', onMessage);
65
78
  socket.on('error', onError);
66
79
  socket.on('close', onClose);
67
- setTimeout(() => {
68
- if (socket.readyState === WebSocket.OPEN) {
80
+ helloTimer = setTimeout(() => {
81
+ if (!settled && socket.readyState === WebSocket.OPEN) {
69
82
  const helloPayload = {
70
83
  type: 'bridge_hello',
71
84
  capabilityToken: this.capabilityToken || undefined
72
85
  };
73
- this.log.debug(`Sending bridge_hello (delayed): ${JSON.stringify(helloPayload)}`);
86
+ this.log.debug('Sending bridge_hello (delayed)');
74
87
  socket.send(JSON.stringify(helloPayload));
75
88
  }
76
89
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"handshake.js","sourceRoot":"","sources":["../../src/automation/handshake.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,OAAO,gBAAiB,SAAQ,YAAY;IAKlC;IAJJ,GAAG,GAAG,IAAI,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAC5B,4BAA4B,GAAG,IAAI,CAAC;IAErD,YACY,eAAwB;QAEhC,KAAK,EAAE,CAAC;QAFA,oBAAe,GAAf,eAAe,CAAS;IAGpC,CAAC;IAEM,iBAAiB,CAAC,MAAiB,EAAE,YAAoB,IAAI,CAAC,4BAA4B;QAC7F,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,IAAI,iBAAiB,GAAG,KAAK,CAAC;YAE9B,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC5B,IAAI,CAAC,iBAAiB,EAAE,CAAC;oBACrB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;oBAC9D,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;oBACxC,MAAM,CAAC,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;gBAC3C,CAAC;YACL,CAAC,EAAE,SAAS,CAAC,CAAC;YAEd,MAAM,SAAS,GAAG,CAAC,IAAqB,EAAE,EAAE;gBACxC,IAAI,MAA+B,CAAC;gBACpC,MAAM,IAAI,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBACrE,IAAI,CAAC;oBACD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAC;gBACzD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,uDAAuD,EAAE,KAAK,CAAC,CAAC;oBAC/E,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;oBAC3C,OAAO,EAAE,CAAC;oBACV,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;oBAC1C,OAAO;gBACX,CAAC;gBAED,MAAM,UAAU,GAAG,eAAe,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBACrD,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;oBACrB,iBAAiB,GAAG,IAAI,CAAC;oBACzB,OAAO,EAAE,CAAC;oBACV,MAAM,QAAQ,GAAG,IAAI,CAAC,yBAAyB,CAAC,UAAU,CAAC,IAA+B,CAAC,CAAC;oBAC5F,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAClB,OAAO;gBACX,CAAC;gBAED,MAAM,QAAQ,GAAG,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;gBAC3E,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,2CAA2C,QAAQ,EAAE,EAAE,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;gBAChG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,+BAA+B,CAAC,CAAC;gBACpD,OAAO,EAAE,CAAC;gBACV,MAAM,CAAC,IAAI,KAAK,CAAC,sCAAsC,QAAQ,EAAE,CAAC,CAAC,CAAC;YACxE,CAAC,CAAC;YAEF,MAAM,OAAO,GAAG,CAAC,KAAY,EAAE,EAAE;gBAC7B,OAAO,EAAE,CAAC;gBACV,MAAM,CAAC,KAAK,CAAC,CAAC;YAClB,CAAC,CAAC;YAEF,MAAM,OAAO,GAAG,GAAG,EAAE;gBACjB,OAAO,EAAE,CAAC;gBACV,MAAM,CAAC,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;YACxD,CAAC,CAAC;YAEF,MAAM,OAAO,GAAG,GAAG,EAAE;gBACjB,YAAY,CAAC,OAAO,CAAC,CAAC;gBACtB,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;gBACjC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC7B,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACjC,CAAC,CAAC;YAEF,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAChC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAG5B,UAAU,CAAC,GAAG,EAAE;gBACZ,IAAI,MAAM,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;oBACvC,MAAM,YAAY,GAA4B;wBAC1C,IAAI,EAAE,cAAc;wBACpB,eAAe,EAAE,IAAI,CAAC,eAAe,IAAI,SAAS;qBACrD,CAAC;oBACF,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mCAAmC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;oBAClF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC;gBAC9C,CAAC;qBAAM,CAAC;oBACJ,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;gBACrE,CAAC;YACL,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,yBAAyB,CAAC,OAAgC;QAC9D,MAAM,SAAS,GAA4B,EAAE,GAAG,OAAO,EAAE,CAAC;QAC1D,OAAO,SAAS,CAAC,IAAI,CAAC;QACtB,IAAI,iBAAiB,IAAI,SAAS,EAAE,CAAC;YACjC,SAAS,CAAC,eAAe,GAAG,UAAU,CAAC;QAC3C,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;CACJ"}
1
+ {"version":3,"file":"handshake.js","sourceRoot":"","sources":["../../src/automation/handshake.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  export { AutomationBridge } from './bridge.js';
2
- export * from './types.js';
2
+ export type { AutomationBridgeOptions, AutomationBridgeMessage, AutomationBridgeResponseMessage, PendingRequestDetail, AutomationBridgeConnectionInfo, AutomationBridgeConnectedEvent, AutomationBridgeDisconnectedEvent, AutomationBridgePortError, ProgressUpdateMessage, AutomationBridgeStatus, PendingRequest, QueuedRequestItem, SocketInfo, AutomationBridgeEvents } from './types.js';
3
3
  //# sourceMappingURL=index.d.ts.map