lua-cli 3.15.3 → 3.16.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 (834) hide show
  1. package/dist/api-exports.d.ts +5029 -698
  2. package/dist/api-exports.js +6509 -772
  3. package/dist/api-exports.js.map +1 -1
  4. package/dist/index.d.ts +0 -1
  5. package/dist/index.js +41174 -82
  6. package/dist/index.js.map +1 -1
  7. package/dist/voice/test/index.d.ts +1217 -0
  8. package/dist/voice/test/index.js +386 -0
  9. package/dist/voice/test/index.js.map +1 -0
  10. package/dist/voice-exports.d.ts +40 -0
  11. package/dist/voice-exports.js +16 -0
  12. package/dist/voice-exports.js.map +1 -0
  13. package/docs/README.md +1 -1
  14. package/package.json +38 -21
  15. package/scripts/build-vendor.mjs +6 -3
  16. package/scripts/run-api-extractor.mjs +79 -0
  17. package/template/.gitignore +21 -0
  18. package/template/package.json +1 -1
  19. package/dist/api/agent.api.service.d.ts +0 -165
  20. package/dist/api/agent.api.service.d.ts.map +0 -1
  21. package/dist/api/agent.api.service.js +0 -207
  22. package/dist/api/agent.api.service.js.map +0 -1
  23. package/dist/api/agents.api.service.d.ts +0 -21
  24. package/dist/api/agents.api.service.d.ts.map +0 -1
  25. package/dist/api/agents.api.service.js +0 -51
  26. package/dist/api/agents.api.service.js.map +0 -1
  27. package/dist/api/ai.api.service.d.ts +0 -20
  28. package/dist/api/ai.api.service.d.ts.map +0 -1
  29. package/dist/api/ai.api.service.js +0 -40
  30. package/dist/api/ai.api.service.js.map +0 -1
  31. package/dist/api/auth.api.service.d.ts +0 -49
  32. package/dist/api/auth.api.service.d.ts.map +0 -1
  33. package/dist/api/auth.api.service.js +0 -55
  34. package/dist/api/auth.api.service.js.map +0 -1
  35. package/dist/api/backup.api.service.d.ts +0 -78
  36. package/dist/api/backup.api.service.d.ts.map +0 -1
  37. package/dist/api/backup.api.service.js +0 -115
  38. package/dist/api/backup.api.service.js.map +0 -1
  39. package/dist/api/basket.api.service.d.ts +0 -85
  40. package/dist/api/basket.api.service.d.ts.map +0 -1
  41. package/dist/api/basket.api.service.js +0 -160
  42. package/dist/api/basket.api.service.js.map +0 -1
  43. package/dist/api/cdn.api.service.d.ts +0 -21
  44. package/dist/api/cdn.api.service.d.ts.map +0 -1
  45. package/dist/api/cdn.api.service.js +0 -46
  46. package/dist/api/cdn.api.service.js.map +0 -1
  47. package/dist/api/chat.api.service.d.ts +0 -40
  48. package/dist/api/chat.api.service.d.ts.map +0 -1
  49. package/dist/api/chat.api.service.js +0 -121
  50. package/dist/api/chat.api.service.js.map +0 -1
  51. package/dist/api/credentials.d.ts +0 -25
  52. package/dist/api/credentials.d.ts.map +0 -1
  53. package/dist/api/credentials.js +0 -44
  54. package/dist/api/credentials.js.map +0 -1
  55. package/dist/api/custom.data.api.service.d.ts +0 -71
  56. package/dist/api/custom.data.api.service.d.ts.map +0 -1
  57. package/dist/api/custom.data.api.service.js +0 -126
  58. package/dist/api/custom.data.api.service.js.map +0 -1
  59. package/dist/api/developer.api.service.d.ts +0 -121
  60. package/dist/api/developer.api.service.d.ts.map +0 -1
  61. package/dist/api/developer.api.service.js +0 -162
  62. package/dist/api/developer.api.service.js.map +0 -1
  63. package/dist/api/device-trigger.api.service.d.ts +0 -136
  64. package/dist/api/device-trigger.api.service.d.ts.map +0 -1
  65. package/dist/api/device-trigger.api.service.js +0 -120
  66. package/dist/api/device-trigger.api.service.js.map +0 -1
  67. package/dist/api/device.api.service.d.ts +0 -61
  68. package/dist/api/device.api.service.d.ts.map +0 -1
  69. package/dist/api/device.api.service.js +0 -72
  70. package/dist/api/device.api.service.js.map +0 -1
  71. package/dist/api/http.client.d.ts +0 -90
  72. package/dist/api/http.client.d.ts.map +0 -1
  73. package/dist/api/http.client.js +0 -265
  74. package/dist/api/http.client.js.map +0 -1
  75. package/dist/api/job.api.service.d.ts +0 -154
  76. package/dist/api/job.api.service.d.ts.map +0 -1
  77. package/dist/api/job.api.service.js +0 -230
  78. package/dist/api/job.api.service.js.map +0 -1
  79. package/dist/api/lazy-instances.d.ts +0 -107
  80. package/dist/api/lazy-instances.d.ts.map +0 -1
  81. package/dist/api/lazy-instances.js +0 -220
  82. package/dist/api/lazy-instances.js.map +0 -1
  83. package/dist/api/logs.api.service.d.ts +0 -38
  84. package/dist/api/logs.api.service.d.ts.map +0 -1
  85. package/dist/api/logs.api.service.js +0 -50
  86. package/dist/api/logs.api.service.js.map +0 -1
  87. package/dist/api/marketplace.api.service.d.ts +0 -28
  88. package/dist/api/marketplace.api.service.d.ts.map +0 -1
  89. package/dist/api/marketplace.api.service.js +0 -112
  90. package/dist/api/marketplace.api.service.js.map +0 -1
  91. package/dist/api/order.api.service.d.ts +0 -53
  92. package/dist/api/order.api.service.d.ts.map +0 -1
  93. package/dist/api/order.api.service.js +0 -94
  94. package/dist/api/order.api.service.js.map +0 -1
  95. package/dist/api/persona.api.service.d.ts +0 -56
  96. package/dist/api/persona.api.service.d.ts.map +0 -1
  97. package/dist/api/persona.api.service.js +0 -90
  98. package/dist/api/persona.api.service.js.map +0 -1
  99. package/dist/api/postprocessor.api.service.d.ts +0 -151
  100. package/dist/api/postprocessor.api.service.d.ts.map +0 -1
  101. package/dist/api/postprocessor.api.service.js +0 -109
  102. package/dist/api/postprocessor.api.service.js.map +0 -1
  103. package/dist/api/preprocessor.api.service.d.ts +0 -155
  104. package/dist/api/preprocessor.api.service.d.ts.map +0 -1
  105. package/dist/api/preprocessor.api.service.js +0 -111
  106. package/dist/api/preprocessor.api.service.js.map +0 -1
  107. package/dist/api/products.api.service.d.ts +0 -80
  108. package/dist/api/products.api.service.d.ts.map +0 -1
  109. package/dist/api/products.api.service.js +0 -126
  110. package/dist/api/products.api.service.js.map +0 -1
  111. package/dist/api/resource.api.service.d.ts +0 -77
  112. package/dist/api/resource.api.service.d.ts.map +0 -1
  113. package/dist/api/resource.api.service.js +0 -74
  114. package/dist/api/resource.api.service.js.map +0 -1
  115. package/dist/api/skills.api.service.d.ts +0 -94
  116. package/dist/api/skills.api.service.d.ts.map +0 -1
  117. package/dist/api/skills.api.service.js +0 -120
  118. package/dist/api/skills.api.service.js.map +0 -1
  119. package/dist/api/tool.api.service.d.ts +0 -53
  120. package/dist/api/tool.api.service.d.ts.map +0 -1
  121. package/dist/api/tool.api.service.js +0 -74
  122. package/dist/api/tool.api.service.js.map +0 -1
  123. package/dist/api/unifiedto.api.service.d.ts +0 -133
  124. package/dist/api/unifiedto.api.service.d.ts.map +0 -1
  125. package/dist/api/unifiedto.api.service.js +0 -166
  126. package/dist/api/unifiedto.api.service.js.map +0 -1
  127. package/dist/api/user.data.api.service.d.ts +0 -69
  128. package/dist/api/user.data.api.service.d.ts.map +0 -1
  129. package/dist/api/user.data.api.service.js +0 -158
  130. package/dist/api/user.data.api.service.js.map +0 -1
  131. package/dist/api/webhook.api.service.d.ts +0 -163
  132. package/dist/api/webhook.api.service.d.ts.map +0 -1
  133. package/dist/api/webhook.api.service.js +0 -140
  134. package/dist/api/webhook.api.service.js.map +0 -1
  135. package/dist/api/whatsapp-templates.api.service.d.ts +0 -41
  136. package/dist/api/whatsapp-templates.api.service.d.ts.map +0 -1
  137. package/dist/api/whatsapp-templates.api.service.js +0 -79
  138. package/dist/api/whatsapp-templates.api.service.js.map +0 -1
  139. package/dist/api-exports.d.ts.map +0 -1
  140. package/dist/cli/command-definitions.d.ts +0 -29
  141. package/dist/cli/command-definitions.d.ts.map +0 -1
  142. package/dist/cli/command-definitions.js +0 -943
  143. package/dist/cli/command-definitions.js.map +0 -1
  144. package/dist/commands/admin.d.ts +0 -24
  145. package/dist/commands/admin.d.ts.map +0 -1
  146. package/dist/commands/admin.js +0 -44
  147. package/dist/commands/admin.js.map +0 -1
  148. package/dist/commands/agents.d.ts +0 -23
  149. package/dist/commands/agents.d.ts.map +0 -1
  150. package/dist/commands/agents.js +0 -83
  151. package/dist/commands/agents.js.map +0 -1
  152. package/dist/commands/apiKey.d.ts +0 -8
  153. package/dist/commands/apiKey.d.ts.map +0 -1
  154. package/dist/commands/apiKey.js +0 -43
  155. package/dist/commands/apiKey.js.map +0 -1
  156. package/dist/commands/channels.d.ts +0 -13
  157. package/dist/commands/channels.d.ts.map +0 -1
  158. package/dist/commands/channels.js +0 -747
  159. package/dist/commands/channels.js.map +0 -1
  160. package/dist/commands/chat-log-probe.d.ts +0 -59
  161. package/dist/commands/chat-log-probe.d.ts.map +0 -1
  162. package/dist/commands/chat-log-probe.js +0 -87
  163. package/dist/commands/chat-log-probe.js.map +0 -1
  164. package/dist/commands/chat.d.ts +0 -20
  165. package/dist/commands/chat.d.ts.map +0 -1
  166. package/dist/commands/chat.js +0 -618
  167. package/dist/commands/chat.js.map +0 -1
  168. package/dist/commands/chatClear.d.ts +0 -25
  169. package/dist/commands/chatClear.d.ts.map +0 -1
  170. package/dist/commands/chatClear.js +0 -71
  171. package/dist/commands/chatClear.js.map +0 -1
  172. package/dist/commands/compile.d.ts +0 -48
  173. package/dist/commands/compile.d.ts.map +0 -1
  174. package/dist/commands/compile.js +0 -216
  175. package/dist/commands/compile.js.map +0 -1
  176. package/dist/commands/completion.d.ts +0 -12
  177. package/dist/commands/completion.d.ts.map +0 -1
  178. package/dist/commands/completion.js +0 -211
  179. package/dist/commands/completion.js.map +0 -1
  180. package/dist/commands/configure.d.ts +0 -42
  181. package/dist/commands/configure.d.ts.map +0 -1
  182. package/dist/commands/configure.js +0 -76
  183. package/dist/commands/configure.js.map +0 -1
  184. package/dist/commands/deploy.d.ts +0 -14
  185. package/dist/commands/deploy.d.ts.map +0 -1
  186. package/dist/commands/deploy.js +0 -517
  187. package/dist/commands/deploy.js.map +0 -1
  188. package/dist/commands/destroy.d.ts +0 -8
  189. package/dist/commands/destroy.d.ts.map +0 -1
  190. package/dist/commands/destroy.js +0 -66
  191. package/dist/commands/destroy.js.map +0 -1
  192. package/dist/commands/devices.d.ts +0 -6
  193. package/dist/commands/devices.d.ts.map +0 -1
  194. package/dist/commands/devices.js +0 -265
  195. package/dist/commands/devices.js.map +0 -1
  196. package/dist/commands/docs.d.ts +0 -20
  197. package/dist/commands/docs.d.ts.map +0 -1
  198. package/dist/commands/docs.js +0 -33
  199. package/dist/commands/docs.js.map +0 -1
  200. package/dist/commands/env.d.ts +0 -34
  201. package/dist/commands/env.d.ts.map +0 -1
  202. package/dist/commands/env.js +0 -612
  203. package/dist/commands/env.js.map +0 -1
  204. package/dist/commands/evals.d.ts +0 -9
  205. package/dist/commands/evals.d.ts.map +0 -1
  206. package/dist/commands/evals.js +0 -27
  207. package/dist/commands/evals.js.map +0 -1
  208. package/dist/commands/features.d.ts +0 -13
  209. package/dist/commands/features.d.ts.map +0 -1
  210. package/dist/commands/features.js +0 -455
  211. package/dist/commands/features.js.map +0 -1
  212. package/dist/commands/governance.d.ts +0 -7
  213. package/dist/commands/governance.d.ts.map +0 -1
  214. package/dist/commands/governance.js +0 -258
  215. package/dist/commands/governance.js.map +0 -1
  216. package/dist/commands/index.d.ts +0 -38
  217. package/dist/commands/index.d.ts.map +0 -1
  218. package/dist/commands/index.js +0 -38
  219. package/dist/commands/index.js.map +0 -1
  220. package/dist/commands/init.d.ts +0 -53
  221. package/dist/commands/init.d.ts.map +0 -1
  222. package/dist/commands/init.js +0 -992
  223. package/dist/commands/init.js.map +0 -1
  224. package/dist/commands/integrations.d.ts +0 -18
  225. package/dist/commands/integrations.d.ts.map +0 -1
  226. package/dist/commands/integrations.js +0 -2666
  227. package/dist/commands/integrations.js.map +0 -1
  228. package/dist/commands/jobs.d.ts +0 -13
  229. package/dist/commands/jobs.d.ts.map +0 -1
  230. package/dist/commands/jobs.js +0 -736
  231. package/dist/commands/jobs.js.map +0 -1
  232. package/dist/commands/log-tip.d.ts +0 -79
  233. package/dist/commands/log-tip.d.ts.map +0 -1
  234. package/dist/commands/log-tip.js +0 -83
  235. package/dist/commands/log-tip.js.map +0 -1
  236. package/dist/commands/logs.d.ts +0 -13
  237. package/dist/commands/logs.d.ts.map +0 -1
  238. package/dist/commands/logs.js +0 -493
  239. package/dist/commands/logs.js.map +0 -1
  240. package/dist/commands/marketplace.d.ts +0 -34
  241. package/dist/commands/marketplace.d.ts.map +0 -1
  242. package/dist/commands/marketplace.js +0 -2105
  243. package/dist/commands/marketplace.js.map +0 -1
  244. package/dist/commands/mcp.d.ts +0 -32
  245. package/dist/commands/mcp.d.ts.map +0 -1
  246. package/dist/commands/mcp.js +0 -395
  247. package/dist/commands/mcp.js.map +0 -1
  248. package/dist/commands/models.d.ts +0 -18
  249. package/dist/commands/models.d.ts.map +0 -1
  250. package/dist/commands/models.js +0 -207
  251. package/dist/commands/models.js.map +0 -1
  252. package/dist/commands/persona.d.ts +0 -13
  253. package/dist/commands/persona.d.ts.map +0 -1
  254. package/dist/commands/persona.js +0 -560
  255. package/dist/commands/persona.js.map +0 -1
  256. package/dist/commands/postprocessors.d.ts +0 -13
  257. package/dist/commands/postprocessors.d.ts.map +0 -1
  258. package/dist/commands/postprocessors.js +0 -558
  259. package/dist/commands/postprocessors.js.map +0 -1
  260. package/dist/commands/preprocessors.d.ts +0 -13
  261. package/dist/commands/preprocessors.d.ts.map +0 -1
  262. package/dist/commands/preprocessors.js +0 -558
  263. package/dist/commands/preprocessors.js.map +0 -1
  264. package/dist/commands/production.d.ts +0 -13
  265. package/dist/commands/production.d.ts.map +0 -1
  266. package/dist/commands/production.js +0 -588
  267. package/dist/commands/production.js.map +0 -1
  268. package/dist/commands/push-helpers.d.ts +0 -42
  269. package/dist/commands/push-helpers.d.ts.map +0 -1
  270. package/dist/commands/push-helpers.js +0 -48
  271. package/dist/commands/push-helpers.js.map +0 -1
  272. package/dist/commands/push.d.ts +0 -31
  273. package/dist/commands/push.d.ts.map +0 -1
  274. package/dist/commands/push.js +0 -1262
  275. package/dist/commands/push.js.map +0 -1
  276. package/dist/commands/pushBackup.d.ts +0 -78
  277. package/dist/commands/pushBackup.d.ts.map +0 -1
  278. package/dist/commands/pushBackup.js +0 -274
  279. package/dist/commands/pushBackup.js.map +0 -1
  280. package/dist/commands/resources.d.ts +0 -13
  281. package/dist/commands/resources.d.ts.map +0 -1
  282. package/dist/commands/resources.js +0 -377
  283. package/dist/commands/resources.js.map +0 -1
  284. package/dist/commands/skills.d.ts +0 -13
  285. package/dist/commands/skills.d.ts.map +0 -1
  286. package/dist/commands/skills.js +0 -618
  287. package/dist/commands/skills.js.map +0 -1
  288. package/dist/commands/source.d.ts +0 -72
  289. package/dist/commands/source.d.ts.map +0 -1
  290. package/dist/commands/source.js +0 -134
  291. package/dist/commands/source.js.map +0 -1
  292. package/dist/commands/status.d.ts +0 -14
  293. package/dist/commands/status.d.ts.map +0 -1
  294. package/dist/commands/status.js +0 -731
  295. package/dist/commands/status.js.map +0 -1
  296. package/dist/commands/sync.d.ts +0 -28
  297. package/dist/commands/sync.d.ts.map +0 -1
  298. package/dist/commands/sync.js +0 -802
  299. package/dist/commands/sync.js.map +0 -1
  300. package/dist/commands/telemetry.d.ts +0 -6
  301. package/dist/commands/telemetry.d.ts.map +0 -1
  302. package/dist/commands/telemetry.js +0 -42
  303. package/dist/commands/telemetry.js.map +0 -1
  304. package/dist/commands/test-output.helpers.d.ts +0 -24
  305. package/dist/commands/test-output.helpers.d.ts.map +0 -1
  306. package/dist/commands/test-output.helpers.js +0 -62
  307. package/dist/commands/test-output.helpers.js.map +0 -1
  308. package/dist/commands/test.d.ts +0 -9
  309. package/dist/commands/test.d.ts.map +0 -1
  310. package/dist/commands/test.js +0 -787
  311. package/dist/commands/test.js.map +0 -1
  312. package/dist/commands/update.d.ts +0 -14
  313. package/dist/commands/update.d.ts.map +0 -1
  314. package/dist/commands/update.js +0 -97
  315. package/dist/commands/update.js.map +0 -1
  316. package/dist/commands/webhooks.d.ts +0 -13
  317. package/dist/commands/webhooks.d.ts.map +0 -1
  318. package/dist/commands/webhooks.js +0 -691
  319. package/dist/commands/webhooks.js.map +0 -1
  320. package/dist/compiler/agent-traverser.d.ts +0 -140
  321. package/dist/compiler/agent-traverser.d.ts.map +0 -1
  322. package/dist/compiler/agent-traverser.js +0 -420
  323. package/dist/compiler/agent-traverser.js.map +0 -1
  324. package/dist/compiler/bundler.d.ts +0 -43
  325. package/dist/compiler/bundler.d.ts.map +0 -1
  326. package/dist/compiler/bundler.js +0 -188
  327. package/dist/compiler/bundler.js.map +0 -1
  328. package/dist/compiler/compiler.d.ts +0 -208
  329. package/dist/compiler/compiler.d.ts.map +0 -1
  330. package/dist/compiler/compiler.js +0 -706
  331. package/dist/compiler/compiler.js.map +0 -1
  332. package/dist/compiler/index.d.ts +0 -38
  333. package/dist/compiler/index.d.ts.map +0 -1
  334. package/dist/compiler/index.js +0 -43
  335. package/dist/compiler/index.js.map +0 -1
  336. package/dist/compiler/plugins/agent.plugin.d.ts +0 -58
  337. package/dist/compiler/plugins/agent.plugin.d.ts.map +0 -1
  338. package/dist/compiler/plugins/agent.plugin.js +0 -161
  339. package/dist/compiler/plugins/agent.plugin.js.map +0 -1
  340. package/dist/compiler/plugins/base.d.ts +0 -334
  341. package/dist/compiler/plugins/base.d.ts.map +0 -1
  342. package/dist/compiler/plugins/base.js +0 -353
  343. package/dist/compiler/plugins/base.js.map +0 -1
  344. package/dist/compiler/plugins/device-trigger.plugin.d.ts +0 -38
  345. package/dist/compiler/plugins/device-trigger.plugin.d.ts.map +0 -1
  346. package/dist/compiler/plugins/device-trigger.plugin.js +0 -107
  347. package/dist/compiler/plugins/device-trigger.plugin.js.map +0 -1
  348. package/dist/compiler/plugins/device.plugin.d.ts +0 -39
  349. package/dist/compiler/plugins/device.plugin.d.ts.map +0 -1
  350. package/dist/compiler/plugins/device.plugin.js +0 -77
  351. package/dist/compiler/plugins/device.plugin.js.map +0 -1
  352. package/dist/compiler/plugins/job.plugin.d.ts +0 -34
  353. package/dist/compiler/plugins/job.plugin.d.ts.map +0 -1
  354. package/dist/compiler/plugins/job.plugin.js +0 -108
  355. package/dist/compiler/plugins/job.plugin.js.map +0 -1
  356. package/dist/compiler/plugins/mcp-server.plugin.d.ts +0 -38
  357. package/dist/compiler/plugins/mcp-server.plugin.d.ts.map +0 -1
  358. package/dist/compiler/plugins/mcp-server.plugin.js +0 -107
  359. package/dist/compiler/plugins/mcp-server.plugin.js.map +0 -1
  360. package/dist/compiler/plugins/postprocessor.plugin.d.ts +0 -21
  361. package/dist/compiler/plugins/postprocessor.plugin.d.ts.map +0 -1
  362. package/dist/compiler/plugins/postprocessor.plugin.js +0 -36
  363. package/dist/compiler/plugins/postprocessor.plugin.js.map +0 -1
  364. package/dist/compiler/plugins/preprocessor.plugin.d.ts +0 -21
  365. package/dist/compiler/plugins/preprocessor.plugin.d.ts.map +0 -1
  366. package/dist/compiler/plugins/preprocessor.plugin.js +0 -38
  367. package/dist/compiler/plugins/preprocessor.plugin.js.map +0 -1
  368. package/dist/compiler/plugins/processor-base.d.ts +0 -17
  369. package/dist/compiler/plugins/processor-base.d.ts.map +0 -1
  370. package/dist/compiler/plugins/processor-base.js +0 -27
  371. package/dist/compiler/plugins/processor-base.js.map +0 -1
  372. package/dist/compiler/plugins/registry.d.ts +0 -62
  373. package/dist/compiler/plugins/registry.d.ts.map +0 -1
  374. package/dist/compiler/plugins/registry.js +0 -113
  375. package/dist/compiler/plugins/registry.js.map +0 -1
  376. package/dist/compiler/plugins/skill.plugin.d.ts +0 -106
  377. package/dist/compiler/plugins/skill.plugin.d.ts.map +0 -1
  378. package/dist/compiler/plugins/skill.plugin.js +0 -316
  379. package/dist/compiler/plugins/skill.plugin.js.map +0 -1
  380. package/dist/compiler/plugins/tool.plugin.d.ts +0 -69
  381. package/dist/compiler/plugins/tool.plugin.d.ts.map +0 -1
  382. package/dist/compiler/plugins/tool.plugin.js +0 -262
  383. package/dist/compiler/plugins/tool.plugin.js.map +0 -1
  384. package/dist/compiler/plugins/webhook.plugin.d.ts +0 -38
  385. package/dist/compiler/plugins/webhook.plugin.d.ts.map +0 -1
  386. package/dist/compiler/plugins/webhook.plugin.js +0 -117
  387. package/dist/compiler/plugins/webhook.plugin.js.map +0 -1
  388. package/dist/compiler/source-writer.d.ts +0 -129
  389. package/dist/compiler/source-writer.d.ts.map +0 -1
  390. package/dist/compiler/source-writer.js +0 -329
  391. package/dist/compiler/source-writer.js.map +0 -1
  392. package/dist/compiler/types.d.ts +0 -391
  393. package/dist/compiler/types.d.ts.map +0 -1
  394. package/dist/compiler/types.js +0 -30
  395. package/dist/compiler/types.js.map +0 -1
  396. package/dist/compiler/utils/ast-helpers.d.ts +0 -106
  397. package/dist/compiler/utils/ast-helpers.d.ts.map +0 -1
  398. package/dist/compiler/utils/ast-helpers.js +0 -356
  399. package/dist/compiler/utils/ast-helpers.js.map +0 -1
  400. package/dist/compiler/utils/common.d.ts +0 -22
  401. package/dist/compiler/utils/common.d.ts.map +0 -1
  402. package/dist/compiler/utils/common.js +0 -55
  403. package/dist/compiler/utils/common.js.map +0 -1
  404. package/dist/compiler/utils/file-discovery.d.ts +0 -35
  405. package/dist/compiler/utils/file-discovery.d.ts.map +0 -1
  406. package/dist/compiler/utils/file-discovery.js +0 -60
  407. package/dist/compiler/utils/file-discovery.js.map +0 -1
  408. package/dist/compiler/utils/path-resolver.d.ts +0 -83
  409. package/dist/compiler/utils/path-resolver.d.ts.map +0 -1
  410. package/dist/compiler/utils/path-resolver.js +0 -162
  411. package/dist/compiler/utils/path-resolver.js.map +0 -1
  412. package/dist/compiler/utils/reference-resolver.d.ts +0 -196
  413. package/dist/compiler/utils/reference-resolver.d.ts.map +0 -1
  414. package/dist/compiler/utils/reference-resolver.js +0 -1026
  415. package/dist/compiler/utils/reference-resolver.js.map +0 -1
  416. package/dist/compiler/utils/schema-converter.d.ts +0 -52
  417. package/dist/compiler/utils/schema-converter.d.ts.map +0 -1
  418. package/dist/compiler/utils/schema-converter.js +0 -170
  419. package/dist/compiler/utils/schema-converter.js.map +0 -1
  420. package/dist/compiler/utils/workspace.d.ts +0 -35
  421. package/dist/compiler/utils/workspace.d.ts.map +0 -1
  422. package/dist/compiler/utils/workspace.js +0 -121
  423. package/dist/compiler/utils/workspace.js.map +0 -1
  424. package/dist/config/compile.constants.d.ts +0 -75
  425. package/dist/config/compile.constants.d.ts.map +0 -1
  426. package/dist/config/compile.constants.js +0 -95
  427. package/dist/config/compile.constants.js.map +0 -1
  428. package/dist/config/constants.d.ts +0 -49
  429. package/dist/config/constants.d.ts.map +0 -1
  430. package/dist/config/constants.js +0 -69
  431. package/dist/config/constants.js.map +0 -1
  432. package/dist/errors/auth.error.d.ts +0 -34
  433. package/dist/errors/auth.error.d.ts.map +0 -1
  434. package/dist/errors/auth.error.js +0 -29
  435. package/dist/errors/auth.error.js.map +0 -1
  436. package/dist/errors/index.d.ts +0 -5
  437. package/dist/errors/index.d.ts.map +0 -1
  438. package/dist/errors/index.js +0 -5
  439. package/dist/errors/index.js.map +0 -1
  440. package/dist/index.d.ts.map +0 -1
  441. package/dist/instances/basket.instance.d.ts +0 -82
  442. package/dist/instances/basket.instance.d.ts.map +0 -1
  443. package/dist/instances/basket.instance.js +0 -245
  444. package/dist/instances/basket.instance.js.map +0 -1
  445. package/dist/instances/data.entry.instance.d.ts +0 -50
  446. package/dist/instances/data.entry.instance.d.ts.map +0 -1
  447. package/dist/instances/data.entry.instance.js +0 -163
  448. package/dist/instances/data.entry.instance.js.map +0 -1
  449. package/dist/instances/job.instance.d.ts +0 -133
  450. package/dist/instances/job.instance.d.ts.map +0 -1
  451. package/dist/instances/job.instance.js +0 -180
  452. package/dist/instances/job.instance.js.map +0 -1
  453. package/dist/instances/order.instance.d.ts +0 -50
  454. package/dist/instances/order.instance.d.ts.map +0 -1
  455. package/dist/instances/order.instance.js +0 -199
  456. package/dist/instances/order.instance.js.map +0 -1
  457. package/dist/instances/product.instance.d.ts +0 -43
  458. package/dist/instances/product.instance.d.ts.map +0 -1
  459. package/dist/instances/product.instance.js +0 -145
  460. package/dist/instances/product.instance.js.map +0 -1
  461. package/dist/instances/product.pagination.instance.d.ts +0 -102
  462. package/dist/instances/product.pagination.instance.d.ts.map +0 -1
  463. package/dist/instances/product.pagination.instance.js +0 -156
  464. package/dist/instances/product.pagination.instance.js.map +0 -1
  465. package/dist/instances/product.search.instance.d.ts +0 -81
  466. package/dist/instances/product.search.instance.d.ts.map +0 -1
  467. package/dist/instances/product.search.instance.js +0 -121
  468. package/dist/instances/product.search.instance.js.map +0 -1
  469. package/dist/instances/user.instance.d.ts +0 -56
  470. package/dist/instances/user.instance.d.ts.map +0 -1
  471. package/dist/instances/user.instance.js +0 -188
  472. package/dist/instances/user.instance.js.map +0 -1
  473. package/dist/interfaces/admin.d.ts +0 -64
  474. package/dist/interfaces/admin.d.ts.map +0 -1
  475. package/dist/interfaces/admin.js +0 -6
  476. package/dist/interfaces/admin.js.map +0 -1
  477. package/dist/interfaces/agent.d.ts +0 -399
  478. package/dist/interfaces/agent.d.ts.map +0 -1
  479. package/dist/interfaces/agent.js +0 -6
  480. package/dist/interfaces/agent.js.map +0 -1
  481. package/dist/interfaces/backup.d.ts +0 -17
  482. package/dist/interfaces/backup.d.ts.map +0 -1
  483. package/dist/interfaces/backup.js +0 -7
  484. package/dist/interfaces/backup.js.map +0 -1
  485. package/dist/interfaces/baskets.d.ts +0 -80
  486. package/dist/interfaces/baskets.d.ts.map +0 -1
  487. package/dist/interfaces/baskets.js +0 -20
  488. package/dist/interfaces/baskets.js.map +0 -1
  489. package/dist/interfaces/cdn.d.ts +0 -25
  490. package/dist/interfaces/cdn.d.ts.map +0 -1
  491. package/dist/interfaces/cdn.js +0 -6
  492. package/dist/interfaces/cdn.js.map +0 -1
  493. package/dist/interfaces/chat.d.ts +0 -98
  494. package/dist/interfaces/chat.d.ts.map +0 -1
  495. package/dist/interfaces/chat.js +0 -6
  496. package/dist/interfaces/chat.js.map +0 -1
  497. package/dist/interfaces/common.d.ts +0 -64
  498. package/dist/interfaces/common.d.ts.map +0 -1
  499. package/dist/interfaces/common.js +0 -9
  500. package/dist/interfaces/common.js.map +0 -1
  501. package/dist/interfaces/custom.data.d.ts +0 -83
  502. package/dist/interfaces/custom.data.d.ts.map +0 -1
  503. package/dist/interfaces/custom.data.js +0 -6
  504. package/dist/interfaces/custom.data.js.map +0 -1
  505. package/dist/interfaces/deploy.d.ts +0 -15
  506. package/dist/interfaces/deploy.d.ts.map +0 -1
  507. package/dist/interfaces/deploy.js +0 -5
  508. package/dist/interfaces/deploy.js.map +0 -1
  509. package/dist/interfaces/dev.d.ts +0 -54
  510. package/dist/interfaces/dev.d.ts.map +0 -1
  511. package/dist/interfaces/dev.js +0 -6
  512. package/dist/interfaces/dev.js.map +0 -1
  513. package/dist/interfaces/device-triggers.d.ts +0 -80
  514. package/dist/interfaces/device-triggers.d.ts.map +0 -1
  515. package/dist/interfaces/device-triggers.js +0 -6
  516. package/dist/interfaces/device-triggers.js.map +0 -1
  517. package/dist/interfaces/devices.d.ts +0 -74
  518. package/dist/interfaces/devices.d.ts.map +0 -1
  519. package/dist/interfaces/devices.js +0 -5
  520. package/dist/interfaces/devices.js.map +0 -1
  521. package/dist/interfaces/index.d.ts +0 -15
  522. package/dist/interfaces/index.d.ts.map +0 -1
  523. package/dist/interfaces/index.js +0 -8
  524. package/dist/interfaces/index.js.map +0 -1
  525. package/dist/interfaces/init.d.ts +0 -42
  526. package/dist/interfaces/init.d.ts.map +0 -1
  527. package/dist/interfaces/init.js +0 -5
  528. package/dist/interfaces/init.js.map +0 -1
  529. package/dist/interfaces/jobs.d.ts +0 -149
  530. package/dist/interfaces/jobs.d.ts.map +0 -1
  531. package/dist/interfaces/jobs.js +0 -6
  532. package/dist/interfaces/jobs.js.map +0 -1
  533. package/dist/interfaces/logs.d.ts +0 -44
  534. package/dist/interfaces/logs.d.ts.map +0 -1
  535. package/dist/interfaces/logs.js +0 -6
  536. package/dist/interfaces/logs.js.map +0 -1
  537. package/dist/interfaces/lua.d.ts +0 -37
  538. package/dist/interfaces/lua.d.ts.map +0 -1
  539. package/dist/interfaces/lua.js +0 -6
  540. package/dist/interfaces/lua.js.map +0 -1
  541. package/dist/interfaces/marketplace.d.ts +0 -171
  542. package/dist/interfaces/marketplace.d.ts.map +0 -1
  543. package/dist/interfaces/marketplace.js +0 -3
  544. package/dist/interfaces/marketplace.js.map +0 -1
  545. package/dist/interfaces/mcp.d.ts +0 -96
  546. package/dist/interfaces/mcp.d.ts.map +0 -1
  547. package/dist/interfaces/mcp.js +0 -9
  548. package/dist/interfaces/mcp.js.map +0 -1
  549. package/dist/interfaces/message.d.ts +0 -16
  550. package/dist/interfaces/message.d.ts.map +0 -1
  551. package/dist/interfaces/message.js +0 -2
  552. package/dist/interfaces/message.js.map +0 -1
  553. package/dist/interfaces/orders.d.ts +0 -68
  554. package/dist/interfaces/orders.d.ts.map +0 -1
  555. package/dist/interfaces/orders.js +0 -20
  556. package/dist/interfaces/orders.js.map +0 -1
  557. package/dist/interfaces/persona.d.ts +0 -44
  558. package/dist/interfaces/persona.d.ts.map +0 -1
  559. package/dist/interfaces/persona.js +0 -6
  560. package/dist/interfaces/persona.js.map +0 -1
  561. package/dist/interfaces/postprocessors.d.ts +0 -15
  562. package/dist/interfaces/postprocessors.d.ts.map +0 -1
  563. package/dist/interfaces/postprocessors.js +0 -5
  564. package/dist/interfaces/postprocessors.js.map +0 -1
  565. package/dist/interfaces/preprocessors.d.ts +0 -15
  566. package/dist/interfaces/preprocessors.d.ts.map +0 -1
  567. package/dist/interfaces/preprocessors.js +0 -5
  568. package/dist/interfaces/preprocessors.js.map +0 -1
  569. package/dist/interfaces/product.d.ts +0 -92
  570. package/dist/interfaces/product.d.ts.map +0 -1
  571. package/dist/interfaces/product.js +0 -6
  572. package/dist/interfaces/product.js.map +0 -1
  573. package/dist/interfaces/push.d.ts +0 -27
  574. package/dist/interfaces/push.d.ts.map +0 -1
  575. package/dist/interfaces/push.js +0 -5
  576. package/dist/interfaces/push.js.map +0 -1
  577. package/dist/interfaces/skills.d.ts +0 -137
  578. package/dist/interfaces/skills.d.ts.map +0 -1
  579. package/dist/interfaces/skills.js +0 -6
  580. package/dist/interfaces/skills.js.map +0 -1
  581. package/dist/interfaces/test.d.ts +0 -37
  582. package/dist/interfaces/test.d.ts.map +0 -1
  583. package/dist/interfaces/test.js +0 -5
  584. package/dist/interfaces/test.js.map +0 -1
  585. package/dist/interfaces/unifiedto.d.ts +0 -141
  586. package/dist/interfaces/unifiedto.d.ts.map +0 -1
  587. package/dist/interfaces/unifiedto.js +0 -6
  588. package/dist/interfaces/unifiedto.js.map +0 -1
  589. package/dist/interfaces/user.d.ts +0 -75
  590. package/dist/interfaces/user.d.ts.map +0 -1
  591. package/dist/interfaces/user.js +0 -2
  592. package/dist/interfaces/user.js.map +0 -1
  593. package/dist/interfaces/webhooks.d.ts +0 -97
  594. package/dist/interfaces/webhooks.d.ts.map +0 -1
  595. package/dist/interfaces/webhooks.js +0 -6
  596. package/dist/interfaces/webhooks.js.map +0 -1
  597. package/dist/interfaces/whatsapp-templates.d.ts +0 -105
  598. package/dist/interfaces/whatsapp-templates.d.ts.map +0 -1
  599. package/dist/interfaces/whatsapp-templates.js +0 -6
  600. package/dist/interfaces/whatsapp-templates.js.map +0 -1
  601. package/dist/primitives/agent.handler.d.ts +0 -71
  602. package/dist/primitives/agent.handler.d.ts.map +0 -1
  603. package/dist/primitives/agent.handler.js +0 -226
  604. package/dist/primitives/agent.handler.js.map +0 -1
  605. package/dist/primitives/base.handler.d.ts +0 -229
  606. package/dist/primitives/base.handler.d.ts.map +0 -1
  607. package/dist/primitives/base.handler.js +0 -620
  608. package/dist/primitives/base.handler.js.map +0 -1
  609. package/dist/primitives/device-trigger.handler.d.ts +0 -56
  610. package/dist/primitives/device-trigger.handler.d.ts.map +0 -1
  611. package/dist/primitives/device-trigger.handler.js +0 -99
  612. package/dist/primitives/device-trigger.handler.js.map +0 -1
  613. package/dist/primitives/device.handler.d.ts +0 -57
  614. package/dist/primitives/device.handler.d.ts.map +0 -1
  615. package/dist/primitives/device.handler.js +0 -103
  616. package/dist/primitives/device.handler.js.map +0 -1
  617. package/dist/primitives/index.d.ts +0 -51
  618. package/dist/primitives/index.d.ts.map +0 -1
  619. package/dist/primitives/index.js +0 -75
  620. package/dist/primitives/index.js.map +0 -1
  621. package/dist/primitives/job.handler.d.ts +0 -53
  622. package/dist/primitives/job.handler.d.ts.map +0 -1
  623. package/dist/primitives/job.handler.js +0 -110
  624. package/dist/primitives/job.handler.js.map +0 -1
  625. package/dist/primitives/mcp-server.handler.d.ts +0 -93
  626. package/dist/primitives/mcp-server.handler.d.ts.map +0 -1
  627. package/dist/primitives/mcp-server.handler.js +0 -216
  628. package/dist/primitives/mcp-server.handler.js.map +0 -1
  629. package/dist/primitives/postprocessor.handler.d.ts +0 -44
  630. package/dist/primitives/postprocessor.handler.d.ts.map +0 -1
  631. package/dist/primitives/postprocessor.handler.js +0 -71
  632. package/dist/primitives/postprocessor.handler.js.map +0 -1
  633. package/dist/primitives/preprocessor.handler.d.ts +0 -44
  634. package/dist/primitives/preprocessor.handler.d.ts.map +0 -1
  635. package/dist/primitives/preprocessor.handler.js +0 -72
  636. package/dist/primitives/preprocessor.handler.js.map +0 -1
  637. package/dist/primitives/skill.handler.d.ts +0 -47
  638. package/dist/primitives/skill.handler.d.ts.map +0 -1
  639. package/dist/primitives/skill.handler.js +0 -229
  640. package/dist/primitives/skill.handler.js.map +0 -1
  641. package/dist/primitives/types.d.ts +0 -91
  642. package/dist/primitives/types.d.ts.map +0 -1
  643. package/dist/primitives/types.js +0 -17
  644. package/dist/primitives/types.js.map +0 -1
  645. package/dist/primitives/webhook.handler.d.ts +0 -47
  646. package/dist/primitives/webhook.handler.d.ts.map +0 -1
  647. package/dist/primitives/webhook.handler.js +0 -87
  648. package/dist/primitives/webhook.handler.js.map +0 -1
  649. package/dist/services/analytics.d.ts +0 -57
  650. package/dist/services/analytics.d.ts.map +0 -1
  651. package/dist/services/analytics.js +0 -317
  652. package/dist/services/analytics.js.map +0 -1
  653. package/dist/services/auth.d.ts +0 -72
  654. package/dist/services/auth.d.ts.map +0 -1
  655. package/dist/services/auth.js +0 -173
  656. package/dist/services/auth.js.map +0 -1
  657. package/dist/services/sandbox.service.d.ts +0 -105
  658. package/dist/services/sandbox.service.d.ts.map +0 -1
  659. package/dist/services/sandbox.service.js +0 -531
  660. package/dist/services/sandbox.service.js.map +0 -1
  661. package/dist/types/api-contracts.d.ts +0 -287
  662. package/dist/types/api-contracts.d.ts.map +0 -1
  663. package/dist/types/api-contracts.js +0 -2
  664. package/dist/types/api-contracts.js.map +0 -1
  665. package/dist/types/index.d.ts +0 -28
  666. package/dist/types/index.d.ts.map +0 -1
  667. package/dist/types/index.js +0 -30
  668. package/dist/types/index.js.map +0 -1
  669. package/dist/types/skill.d.ts +0 -1079
  670. package/dist/types/skill.d.ts.map +0 -1
  671. package/dist/types/skill.js +0 -688
  672. package/dist/types/skill.js.map +0 -1
  673. package/dist/types/tool-validation.d.ts +0 -35
  674. package/dist/types/tool-validation.d.ts.map +0 -1
  675. package/dist/types/tool-validation.js +0 -43
  676. package/dist/types/tool-validation.js.map +0 -1
  677. package/dist/types/yaml.types.d.ts +0 -91
  678. package/dist/types/yaml.types.d.ts.map +0 -1
  679. package/dist/types/yaml.types.js +0 -5
  680. package/dist/types/yaml.types.js.map +0 -1
  681. package/dist/utils/aliases.d.ts +0 -7
  682. package/dist/utils/aliases.d.ts.map +0 -1
  683. package/dist/utils/aliases.js +0 -492
  684. package/dist/utils/aliases.js.map +0 -1
  685. package/dist/utils/artifact-loader.d.ts +0 -152
  686. package/dist/utils/artifact-loader.d.ts.map +0 -1
  687. package/dist/utils/artifact-loader.js +0 -284
  688. package/dist/utils/artifact-loader.js.map +0 -1
  689. package/dist/utils/auth-flows.d.ts +0 -55
  690. package/dist/utils/auth-flows.d.ts.map +0 -1
  691. package/dist/utils/auth-flows.js +0 -246
  692. package/dist/utils/auth-flows.js.map +0 -1
  693. package/dist/utils/backup-helpers.d.ts +0 -238
  694. package/dist/utils/backup-helpers.d.ts.map +0 -1
  695. package/dist/utils/backup-helpers.js +0 -704
  696. package/dist/utils/backup-helpers.js.map +0 -1
  697. package/dist/utils/build-manifest-from-disk.d.ts +0 -8
  698. package/dist/utils/build-manifest-from-disk.d.ts.map +0 -1
  699. package/dist/utils/build-manifest-from-disk.js +0 -21
  700. package/dist/utils/build-manifest-from-disk.js.map +0 -1
  701. package/dist/utils/bundle-upload.d.ts +0 -42
  702. package/dist/utils/bundle-upload.d.ts.map +0 -1
  703. package/dist/utils/bundle-upload.js +0 -90
  704. package/dist/utils/bundle-upload.js.map +0 -1
  705. package/dist/utils/chat-attachments.d.ts +0 -15
  706. package/dist/utils/chat-attachments.d.ts.map +0 -1
  707. package/dist/utils/chat-attachments.js +0 -116
  708. package/dist/utils/chat-attachments.js.map +0 -1
  709. package/dist/utils/cli.d.ts +0 -62
  710. package/dist/utils/cli.d.ts.map +0 -1
  711. package/dist/utils/cli.js +0 -198
  712. package/dist/utils/cli.js.map +0 -1
  713. package/dist/utils/command-utils.d.ts +0 -46
  714. package/dist/utils/command-utils.d.ts.map +0 -1
  715. package/dist/utils/command-utils.js +0 -74
  716. package/dist/utils/command-utils.js.map +0 -1
  717. package/dist/utils/deploy-helpers.d.ts +0 -40
  718. package/dist/utils/deploy-helpers.d.ts.map +0 -1
  719. package/dist/utils/deploy-helpers.js +0 -76
  720. package/dist/utils/deploy-helpers.js.map +0 -1
  721. package/dist/utils/env-loader.utils.d.ts +0 -19
  722. package/dist/utils/env-loader.utils.d.ts.map +0 -1
  723. package/dist/utils/env-loader.utils.js +0 -90
  724. package/dist/utils/env-loader.utils.js.map +0 -1
  725. package/dist/utils/files.d.ts +0 -65
  726. package/dist/utils/files.d.ts.map +0 -1
  727. package/dist/utils/files.js +0 -193
  728. package/dist/utils/files.js.map +0 -1
  729. package/dist/utils/hints.d.ts +0 -81
  730. package/dist/utils/hints.d.ts.map +0 -1
  731. package/dist/utils/hints.js +0 -81
  732. package/dist/utils/hints.js.map +0 -1
  733. package/dist/utils/init-agent.d.ts +0 -86
  734. package/dist/utils/init-agent.d.ts.map +0 -1
  735. package/dist/utils/init-agent.js +0 -201
  736. package/dist/utils/init-agent.js.map +0 -1
  737. package/dist/utils/init-helpers.d.ts +0 -37
  738. package/dist/utils/init-helpers.d.ts.map +0 -1
  739. package/dist/utils/init-helpers.js +0 -78
  740. package/dist/utils/init-helpers.js.map +0 -1
  741. package/dist/utils/init-prompts.d.ts +0 -74
  742. package/dist/utils/init-prompts.d.ts.map +0 -1
  743. package/dist/utils/init-prompts.js +0 -256
  744. package/dist/utils/init-prompts.js.map +0 -1
  745. package/dist/utils/prompt-handler.d.ts +0 -17
  746. package/dist/utils/prompt-handler.d.ts.map +0 -1
  747. package/dist/utils/prompt-handler.js +0 -49
  748. package/dist/utils/prompt-handler.js.map +0 -1
  749. package/dist/utils/sandbox-storage.d.ts +0 -83
  750. package/dist/utils/sandbox-storage.d.ts.map +0 -1
  751. package/dist/utils/sandbox-storage.js +0 -211
  752. package/dist/utils/sandbox-storage.js.map +0 -1
  753. package/dist/utils/sandbox.d.ts +0 -76
  754. package/dist/utils/sandbox.d.ts.map +0 -1
  755. package/dist/utils/sandbox.js +0 -664
  756. package/dist/utils/sandbox.js.map +0 -1
  757. package/dist/utils/semver.d.ts +0 -40
  758. package/dist/utils/semver.d.ts.map +0 -1
  759. package/dist/utils/semver.js +0 -99
  760. package/dist/utils/semver.js.map +0 -1
  761. package/dist/utils/suggest.d.ts +0 -3
  762. package/dist/utils/suggest.d.ts.map +0 -1
  763. package/dist/utils/suggest.js +0 -32
  764. package/dist/utils/suggest.js.map +0 -1
  765. package/dist/utils/sync-display.d.ts +0 -28
  766. package/dist/utils/sync-display.d.ts.map +0 -1
  767. package/dist/utils/sync-display.js +0 -168
  768. package/dist/utils/sync-display.js.map +0 -1
  769. package/dist/utils/sync-fetch.d.ts +0 -108
  770. package/dist/utils/sync-fetch.d.ts.map +0 -1
  771. package/dist/utils/sync-fetch.js +0 -294
  772. package/dist/utils/sync-fetch.js.map +0 -1
  773. package/dist/utils/sync-helpers.d.ts +0 -7
  774. package/dist/utils/sync-helpers.d.ts.map +0 -1
  775. package/dist/utils/sync-helpers.js +0 -7
  776. package/dist/utils/sync-helpers.js.map +0 -1
  777. package/dist/utils/version-check.d.ts +0 -37
  778. package/dist/utils/version-check.d.ts.map +0 -1
  779. package/dist/utils/version-check.js +0 -117
  780. package/dist/utils/version-check.js.map +0 -1
  781. package/dist/utils/write-info.d.ts +0 -9
  782. package/dist/utils/write-info.d.ts.map +0 -1
  783. package/dist/utils/write-info.js +0 -11
  784. package/dist/utils/write-info.js.map +0 -1
  785. package/node_modules/@lua/shared-source-sync/dist/index.d.mts +0 -424
  786. package/node_modules/@lua/shared-source-sync/dist/index.d.ts +0 -424
  787. package/node_modules/@lua/shared-source-sync/dist/index.js +0 -536
  788. package/node_modules/@lua/shared-source-sync/dist/index.mjs +0 -491
  789. package/node_modules/@lua/shared-source-sync/package.json +0 -26
  790. package/node_modules/@lua/shared-source-sync/src/archive.ts +0 -98
  791. package/node_modules/@lua/shared-source-sync/src/filter.ts +0 -72
  792. package/node_modules/@lua/shared-source-sync/src/hash.ts +0 -40
  793. package/node_modules/@lua/shared-source-sync/src/http.ts +0 -132
  794. package/node_modules/@lua/shared-source-sync/src/index.ts +0 -56
  795. package/node_modules/@lua/shared-source-sync/src/pull.ts +0 -50
  796. package/node_modules/@lua/shared-source-sync/src/push.ts +0 -94
  797. package/node_modules/@lua/shared-source-sync/src/restore.ts +0 -83
  798. package/node_modules/@lua/shared-source-sync/src/skill-source.ts +0 -55
  799. package/node_modules/@lua/shared-source-sync/src/transfer.ts +0 -92
  800. package/node_modules/@lua/shared-source-sync/src/types.ts +0 -88
  801. package/node_modules/@lua/shared-source-sync/src/walk.ts +0 -91
  802. package/node_modules/@lua/shared-source-sync/tests/archive.test.ts +0 -108
  803. package/node_modules/@lua/shared-source-sync/tests/hash.test.ts +0 -40
  804. package/node_modules/@lua/shared-source-sync/tests/http.test.ts +0 -77
  805. package/node_modules/@lua/shared-source-sync/tests/push.test.ts +0 -162
  806. package/node_modules/@lua/shared-source-sync/tests/walk.test.ts +0 -84
  807. package/node_modules/@lua/shared-source-sync/tsconfig.json +0 -12
  808. package/node_modules/@lua/shared-source-sync/tsup.config.ts +0 -9
  809. package/node_modules/@lua/shared-source-sync/vitest.config.ts +0 -8
  810. package/node_modules/@lua/shared-types/dist/index.d.mts +0 -619
  811. package/node_modules/@lua/shared-types/dist/index.d.ts +0 -619
  812. package/node_modules/@lua/shared-types/dist/index.js +0 -435
  813. package/node_modules/@lua/shared-types/dist/index.mjs +0 -394
  814. package/node_modules/@lua/shared-types/package.json +0 -26
  815. package/node_modules/@lua/shared-types/src/agent-config.types.ts +0 -45
  816. package/node_modules/@lua/shared-types/src/agent-invocation.types.ts +0 -73
  817. package/node_modules/@lua/shared-types/src/ai-generate.types.ts +0 -74
  818. package/node_modules/@lua/shared-types/src/ai-generate.utils.ts +0 -16
  819. package/node_modules/@lua/shared-types/src/channel.type.ts +0 -23
  820. package/node_modules/@lua/shared-types/src/chat-history.types.ts +0 -112
  821. package/node_modules/@lua/shared-types/src/chat-stream.types.ts +0 -18
  822. package/node_modules/@lua/shared-types/src/client-tools.types.ts +0 -47
  823. package/node_modules/@lua/shared-types/src/device.types.ts +0 -190
  824. package/node_modules/@lua/shared-types/src/index.ts +0 -15
  825. package/node_modules/@lua/shared-types/src/model-registry.ts +0 -26
  826. package/node_modules/@lua/shared-types/src/persona-defaults.ts +0 -59
  827. package/node_modules/@lua/shared-types/src/persona-text.type.ts +0 -92
  828. package/node_modules/@lua/shared-types/src/sandbox-contract.ts +0 -63
  829. package/node_modules/@lua/shared-types/src/unstructured-types.ts +0 -58
  830. package/node_modules/@lua/shared-types/src/vm-execution-log.types.ts +0 -41
  831. package/node_modules/@lua/shared-types/tsconfig.json +0 -12
  832. package/node_modules/@lua/shared-types/tsup.config.ts +0 -9
  833. package/scripts/resolve-workspace-deps.cjs +0 -61
  834. /package/dist/{compiler/utils/zod-runtime.mjs → zod-runtime.mjs} +0 -0
@@ -1,1026 +0,0 @@
1
- /**
2
- * Primitive Reference Resolver
3
- *
4
- * Statically resolves a TypeScript expression that is expected to yield an
5
- * array of primitive instances (e.g. `mcpServers: [luaDocsMcpServer, ...more]`)
6
- * into a list of named references (`ResolvedRef[]`), without executing user
7
- * code.
8
- *
9
- * ## Supported expression shapes
10
- *
11
- * - Inline: `[new LuaMCPServer({...}), foo]`
12
- * - Variable ref: `const servers = [...]; mcpServers: servers`
13
- * - Spread: `[...base, new LuaMCPServer({...})]`
14
- * - Cross-file: `import servers from './servers'; mcpServers: servers`
15
- * - Re-export: `export { servers } from './impl'`
16
- * - Barrel chains: `export * from './servers'` + same-name imports
17
- * - Path aliases: `@shared/tools`, `~/lib/tools`, etc. (via tsconfig paths)
18
- * - Property read: `const all = { mcp: [...] }; mcpServers: all.mcp`
19
- * - Identifier chains: `const a = inner; const b = a; mcpServers: b`
20
- *
21
- * ## Result shape (Babel's `path.evaluate()` convention)
22
- *
23
- * { confident: true; value: ResolvedRef[] }
24
- * | { confident: false; value: ResolvedRef[]; deopt: Node; reason: string;
25
- * ruleId: 'lua/unresolved-primitive-ref' }
26
- *
27
- * The `deopt` field pinpoints the AST node that defeated resolution so the
28
- * compiler can emit an actionable `file:line:col` diagnostic. Partial results
29
- * (`value`) are returned even on deopt so the compiler can emit whatever was
30
- * resolvable up to the unknown shape.
31
- *
32
- * ## Resolution strategy
33
- *
34
- * 1. **AST fast path** (primary). Traverse ArrayLiteralExpression, follow
35
- * Identifiers to their VariableDeclaration (same-file or via ImportDeclaration
36
- * → getModuleSpecifierSourceFile()), recursively expand spreads. This is
37
- * the idiomatic ts-morph pattern (see ts-morph issue #644 — manual iteration
38
- * is ~1000x faster than getExportedDeclarations() because it doesn't trigger
39
- * full symbol binding). Files are added to the project on demand via
40
- * `addSourceFileAtPath()` as the walk discovers them.
41
- * 2. **Symbol fallback** (only when fast path exhausts). Uses
42
- * `getAliasedSymbol()` + `symbol.getDeclarations()[0]` to handle exotic
43
- * re-export chains the manual walk can't follow.
44
- *
45
- * ## Escape hatch
46
- *
47
- * A leading `/* @lua-ignore-ref *\/` comment on the expression silences the
48
- * deopt diagnostic for users who intentionally construct the array dynamically.
49
- *
50
- * ## Why we don't evaluate code
51
- *
52
- * Earlier iterations used `ts-evaluator` to sandbox-evaluate array expressions.
53
- * That path loses the link to the compile-time identifier (it yields runtime
54
- * `.name` strings, not the class/variable name needed for import resolution)
55
- * and adds a sandboxed-RCE surface (cf. CVE-2023-45133 in Babel). The AST
56
- * approach covers every case the evaluator did, cheaper and safer.
57
- */
58
- import { Node, } from 'ts-morph';
59
- import { resolveModuleSpecifier, getProjectRootDir } from './path-resolver.js';
60
- // =============================================================================
61
- // PUBLIC API
62
- // =============================================================================
63
- /**
64
- * Resolve an expression node that represents an array of primitive references.
65
- *
66
- * Typical usage from a plugin/traverser:
67
- *
68
- * const prop = configObj.getProperty('mcpServers');
69
- * const init = (prop as PropertyAssignment).getInitializer();
70
- * const result = resolveArrayRefs(init, { project });
71
- * if (!result.confident) { log.warn(reportDeopt(result, 'mcpServers')); }
72
- * const refs = result.value;
73
- *
74
- * @param expression - The expression node whose value is expected to be an
75
- * array of primitive instances. Typically the initializer of a
76
- * `skills` / `tools` / `mcpServers` property.
77
- * @param ctx - Resolver context carrying the project and optional logger.
78
- * @returns An `EvaluationResult` — confident + full value on success,
79
- * confident:false + partial value + deopt node on unknown shapes.
80
- */
81
- export function resolveArrayRefs(expression, ctx) {
82
- if (!expression) {
83
- // A missing expression is not a user error (absent property); confident empty.
84
- return { confident: true, value: [] };
85
- }
86
- // Honor the escape hatch: any `/* @lua-ignore-ref */` comment on or
87
- // leading into this expression means "trust me, don't diagnose this".
88
- if (hasIgnoreRefPragma(expression)) {
89
- ctx.log?.(' [@lua-ignore-ref] skipping resolution by user request');
90
- return { confident: true, value: [] };
91
- }
92
- // Derive rootDir: explicit ctx wins, then the Compiler-registered
93
- // value on the Project, then process.cwd() as a last-resort fallback
94
- // (matches pre-refactor behavior for ad-hoc test callers).
95
- const rootDir = ctx.rootDir ?? getProjectRootDir(ctx.project) ?? process.cwd();
96
- const state = {
97
- project: ctx.project,
98
- rootDir,
99
- visited: ctx.visited ?? new Set(),
100
- log: ctx.log ?? (() => { }),
101
- slowPathHits: 0,
102
- };
103
- const value = [];
104
- resolveArrayExpression(expression, value, state);
105
- // Slow-path telemetry — opt-in via SMOKE_DEBUG. If this is ever >0 for
106
- // a fixture that the resolver should handle via the fast path, that's
107
- // a sign the fast path regressed or the shape is unexpected.
108
- if (state.slowPathHits > 0 && process.env.SMOKE_DEBUG) {
109
- state.log(`[resolver] followSymbolInFile slow-path hits: ${state.slowPathHits}`);
110
- }
111
- if (state.deopt) {
112
- return {
113
- confident: false,
114
- value,
115
- deopt: state.deopt.node,
116
- reason: state.deopt.reason,
117
- ruleId: 'lua/unresolved-primitive-ref',
118
- };
119
- }
120
- return { confident: true, value };
121
- }
122
- /**
123
- * Format an `EvaluationResult.deopt` as a SARIF-style diagnostic string
124
- * for `log.warn()`. Includes the rule id, file:line:col, reason, and a
125
- * remediation hint pointing the user at the escape hatch.
126
- *
127
- * Call sites log this rather than constructing the string inline so every
128
- * resolver deopt surfaces with the same shape.
129
- */
130
- export function reportDeopt(result, propertyName) {
131
- const deopt = result.deopt;
132
- const sourceFile = deopt.getSourceFile();
133
- const filePath = sourceFile.getFilePath();
134
- const { line, column } = sourceFile.getLineAndColumnAtPos(deopt.getStart());
135
- const snippet = truncate(deopt.getText(), 60);
136
- return (`[${result.ruleId}] ${filePath}:${line}:${column}\n` +
137
- ` could not statically resolve "${propertyName}": ${result.reason}\n` +
138
- ` at: \`${snippet}\`\n` +
139
- ` hint: inline the array, export the value as a plain array literal, ` +
140
- `or add a leading /* @lua-ignore-ref */ comment to silence`);
141
- }
142
- /**
143
- * Format a SARIF-style diagnostic that isn't anchored on an AST node we
144
- * parsed directly (e.g. "tried to find a tool in this file and the
145
- * plugin returned nothing"). For node-anchored deopts, use
146
- * `reportDeopt()` instead — it produces richer output.
147
- *
148
- * All resolver/traverser warnings should flow through either this
149
- * helper or `reportDeopt`, so every line the user sees has a rule id
150
- * and follows the same shape.
151
- */
152
- export function formatSarifWarning(args) {
153
- const loc = args.line !== undefined && args.column !== undefined
154
- ? `${args.filePath}:${args.line}:${args.column}`
155
- : args.filePath;
156
- const hintLine = args.hint ? `\n hint: ${args.hint}` : '';
157
- return `[${args.ruleId}] ${loc}\n ${args.message}${hintLine}`;
158
- }
159
- // =============================================================================
160
- // ARRAY EXPRESSION WALK
161
- // =============================================================================
162
- /**
163
- * Resolve an expression that's expected to be an array of primitive refs.
164
- *
165
- * Dispatches on node kind: ArrayLiteral → iterate elements; Identifier →
166
- * follow the reference chain; anything else → deopt with a pinpointing reason.
167
- *
168
- * Mutates `out` with resolved refs and `state.deopt` on failure.
169
- */
170
- function resolveArrayExpression(node, out, state) {
171
- // Direct array literal: iterate elements.
172
- if (Node.isArrayLiteralExpression(node)) {
173
- for (const element of node.getElements()) {
174
- resolveArrayElement(element, out, state);
175
- if (state.deopt)
176
- return; // stop at first deopt — we have a pinpoint
177
- }
178
- return;
179
- }
180
- // Identifier: follow to declaration, then recurse into its initializer.
181
- if (Node.isIdentifier(node)) {
182
- const decl = followIdentifier(node, state);
183
- if (!decl) {
184
- // Fall back to the default-import-of-array shape:
185
- // // target.ts
186
- // export default [new LuaMCPServer(...), ...];
187
- // // consumer.ts
188
- // import servers from './target';
189
- // mcpServers: servers;
190
- // There's no `const servers = ...` to hand back as a declaration;
191
- // instead, locate the default export expression and recurse into it.
192
- const defaultExpr = followDefaultImportToExpression(node, state);
193
- if (defaultExpr) {
194
- resolveArrayExpression(defaultExpr, out, state);
195
- return;
196
- }
197
- state.deopt = state.deopt ?? {
198
- node,
199
- reason: `cannot resolve identifier "${node.getText()}" to a declaration in the project`,
200
- };
201
- return;
202
- }
203
- // Class/function declarations aren't arrays — a user writing
204
- // `mcpServers: MyClass` is malformed; pinpoint it.
205
- if (!Node.isVariableDeclaration(decl)) {
206
- state.deopt = state.deopt ?? {
207
- node,
208
- reason: `identifier "${node.getText()}" resolves to a ${decl.getKindName()}, not an array`,
209
- };
210
- return;
211
- }
212
- const init = decl.getInitializer();
213
- if (!init) {
214
- state.deopt = state.deopt ?? {
215
- node,
216
- reason: `identifier "${node.getText()}" resolves to a declaration with no initializer`,
217
- };
218
- return;
219
- }
220
- resolveArrayExpression(init, out, state);
221
- return;
222
- }
223
- // Parenthesized / type-asserted / as-const: unwrap and recurse.
224
- if (Node.isParenthesizedExpression(node)) {
225
- resolveArrayExpression(node.getExpression(), out, state);
226
- return;
227
- }
228
- if (Node.isAsExpression(node) || Node.isTypeAssertion(node) || Node.isSatisfiesExpression(node)) {
229
- resolveArrayExpression(node.getExpression(), out, state);
230
- return;
231
- }
232
- // Property access: `all.mcp` where `all` is an object literal.
233
- if (Node.isPropertyAccessExpression(node)) {
234
- const value = resolvePropertyAccess(node, state);
235
- if (!value) {
236
- state.deopt = state.deopt ?? {
237
- node,
238
- reason: `property access "${node.getText()}" does not resolve to a static array`,
239
- };
240
- return;
241
- }
242
- resolveArrayExpression(value, out, state);
243
- return;
244
- }
245
- // Array concat expressions like `a.concat(b)` or `[...a, ...b]` route
246
- // through ArrayLiteral (the spread case above) or deopt here.
247
- if (Node.isCallExpression(node)) {
248
- state.deopt = state.deopt ?? {
249
- node,
250
- reason: `call expression "${truncate(node.getText(), 40)}" cannot be statically resolved to an array`,
251
- };
252
- return;
253
- }
254
- state.deopt = state.deopt ?? {
255
- node,
256
- reason: `unsupported expression kind ${node.getKindName()}`,
257
- };
258
- }
259
- /**
260
- * Resolve a single element within an ArrayLiteralExpression.
261
- *
262
- * Handles:
263
- * - `new X({...})` → ResolvedRef pointing at the inline NewExpression
264
- * - `foo` (Identifier) → follow to declaration, decide if it's a ref or an array
265
- * - `...foo` (Spread) → recurse into the spread expression as an array
266
- * - Anything else → deopt
267
- */
268
- function resolveArrayElement(element, out, state) {
269
- // Unwrap parens / assertions first.
270
- let node = element;
271
- while (Node.isParenthesizedExpression(node) ||
272
- Node.isAsExpression(node) ||
273
- Node.isTypeAssertion(node) ||
274
- Node.isSatisfiesExpression(node)) {
275
- node = node.getExpression();
276
- }
277
- // Spread: `...foo` — resolve as an array expression.
278
- if (Node.isSpreadElement(node)) {
279
- resolveArrayExpression(node.getExpression(), out, state);
280
- return;
281
- }
282
- // Inline `new X({...})` — record with identifier = class name.
283
- //
284
- // Two legitimate interpretations depending on the caller:
285
- // 1. Tool-class pattern (SkillPlugin's `tools: [new GetUserDataTool()]`):
286
- // the class name is imported from another project file and we
287
- // need `sourceFile` to point at that file so `ToolPlugin.detect()`
288
- // can find `export class GetUserDataTool` there.
289
- // 2. Primitive-registration pattern (AgentTraverser's
290
- // `mcpServers: [new LuaMCPServer({...})]`): the class name is
291
- // external/generic (LuaMCPServer lives in the `lua-cli` package)
292
- // and the actual primitive is the inline NewExpression itself,
293
- // so `sourceFile` stays the consumer's file and AgentTraverser
294
- // emits a deopt diagnostic (see `newExpression && !declaration`).
295
- //
296
- // Distinguishing them: try to follow the class identifier to a local
297
- // ClassDeclaration. If we find one in a real project source file, we
298
- // record it — that tells downstream plugins to look in the target
299
- // file. If the declaration lives in a `.d.ts` / `node_modules` file
300
- // (e.g. `LuaMCPServer` resolving to `lua-cli`'s ambient class via
301
- // TS's aliased-symbol lookup), we treat it as external and keep the
302
- // old permissive shape so AgentTraverser's `newExpression &&
303
- // !declaration` deopt path still fires. Without this guard, inline
304
- // primitive-registration cases (`mcpServers: [new LuaMCPServer(...)]`)
305
- // would silently bind to the ambient class declaration and then
306
- // silently fail to detect any primitive downstream.
307
- if (Node.isNewExpression(node)) {
308
- const classExpr = node.getExpression();
309
- const className = classExpr.getText();
310
- if (Node.isIdentifier(classExpr)) {
311
- const decl = followIdentifier(classExpr, state);
312
- if (decl && Node.isClassDeclaration(decl)) {
313
- const declFile = decl.getSourceFile();
314
- const isProjectFile = !declFile.isDeclarationFile() && !declFile.isInNodeModules();
315
- if (isProjectFile) {
316
- out.push({
317
- identifierName: className,
318
- sourceFile: declFile,
319
- declaration: decl,
320
- newExpression: node,
321
- viaDefaultImport: isDefaultImportBinding(classExpr),
322
- });
323
- return;
324
- }
325
- }
326
- }
327
- out.push({
328
- identifierName: className,
329
- sourceFile: node.getSourceFile(),
330
- newExpression: node,
331
- });
332
- return;
333
- }
334
- // `foo` — follow to declaration.
335
- if (Node.isIdentifier(node)) {
336
- // Record whether this identifier is a consumer-side default-import
337
- // binding (`import whatever from './target'`). Propagated onto every
338
- // ref produced below so downstream plugin.detect() matching can
339
- // prefer the target's default export — the consumer's local name is
340
- // arbitrary and won't line up with any exportName on the target side.
341
- const viaDefaultImport = isDefaultImportBinding(node);
342
- const decl = followIdentifier(node, state);
343
- if (!decl) {
344
- // Fallback: the identifier IS an import, but the target uses an
345
- // inline `export default defineX({...})` / `export default new X({...})`
346
- // pattern that doesn't bind to a named declaration. We can still
347
- // report the reference because the plugin's `detect()` will walk the
348
- // target file and find the inline primitive by itself.
349
- const fileLevelRef = findFileLevelImport(node, state);
350
- if (fileLevelRef) {
351
- out.push(fileLevelRef);
352
- return;
353
- }
354
- state.deopt = state.deopt ?? {
355
- node,
356
- reason: `cannot resolve identifier "${node.getText()}" to a declaration in the project`,
357
- };
358
- return;
359
- }
360
- // If the declaration IS a class/function (like `new` used as a var), treat as ref.
361
- if (Node.isClassDeclaration(decl) || Node.isFunctionDeclaration(decl)) {
362
- out.push({
363
- identifierName: node.getText(),
364
- sourceFile: decl.getSourceFile(),
365
- declaration: decl,
366
- viaDefaultImport,
367
- });
368
- return;
369
- }
370
- const init = decl.getInitializer();
371
- if (!init) {
372
- // Exported as type-only / ambient → not a primitive we can compile.
373
- state.deopt = state.deopt ?? {
374
- node,
375
- reason: `identifier "${node.getText()}" has no initializer`,
376
- };
377
- return;
378
- }
379
- // Variable points at another array — this is a pass-through, recurse.
380
- if (Node.isArrayLiteralExpression(init)) {
381
- resolveArrayExpression(init, out, state);
382
- return;
383
- }
384
- // Variable points at another identifier — keep following.
385
- if (Node.isIdentifier(init)) {
386
- resolveArrayElement(init, out, state);
387
- return;
388
- }
389
- // Variable points at a `new X({...})` — leaf ref.
390
- if (Node.isNewExpression(init)) {
391
- out.push({
392
- identifierName: node.getText(),
393
- sourceFile: decl.getSourceFile(),
394
- declaration: decl,
395
- newExpression: init,
396
- viaDefaultImport,
397
- });
398
- return;
399
- }
400
- // Variable points at a `defineX({...})` call — also a leaf ref.
401
- if (Node.isCallExpression(init)) {
402
- out.push({
403
- identifierName: node.getText(),
404
- sourceFile: decl.getSourceFile(),
405
- declaration: decl,
406
- viaDefaultImport,
407
- });
408
- return;
409
- }
410
- // Any other initializer (property access, complex expression) — treat
411
- // as an opaque leaf ref. Plugins downstream will attempt detection.
412
- // We take the name as authoritative; if the plugin can't match it we
413
- // fall back to a warning, not a silent drop.
414
- out.push({
415
- identifierName: node.getText(),
416
- sourceFile: decl.getSourceFile(),
417
- declaration: decl,
418
- viaDefaultImport,
419
- });
420
- return;
421
- }
422
- // Property access as an element (e.g. `registry.auth`) — resolve.
423
- if (Node.isPropertyAccessExpression(node)) {
424
- const value = resolvePropertyAccess(node, state);
425
- if (!value) {
426
- state.deopt = state.deopt ?? {
427
- node,
428
- reason: `property access "${node.getText()}" does not resolve to a primitive`,
429
- };
430
- return;
431
- }
432
- resolveArrayElement(value, out, state);
433
- return;
434
- }
435
- state.deopt = state.deopt ?? {
436
- node,
437
- reason: `unsupported array element kind ${node.getKindName()}`,
438
- };
439
- }
440
- // =============================================================================
441
- // IDENTIFIER → DECLARATION RESOLUTION
442
- // =============================================================================
443
- /**
444
- * Follow an Identifier to the VariableDeclaration/ClassDeclaration/
445
- * FunctionDeclaration it ultimately refers to.
446
- *
447
- * Order of attempts (cheapest first; matches ts-morph issue #644 guidance):
448
- *
449
- * 1. Same-file variable declaration (O(1) symbol-table lookup).
450
- * 2. Same-file class/function declaration.
451
- * 3. Follow an `import` to the target SourceFile, then:
452
- * - Named export in that file (or a variable with the same name)
453
- * - Re-export chain (`export { x } from './y'`, `export * from './y'`)
454
- * - Default export matching the imported default binding
455
- * 4. Symbol-based fallback (`getAliasedSymbol`) — only if the manual
456
- * walk exhausted. This is the slow path (triggers TS binding) but
457
- * covers exotic cases the manual walk doesn't model.
458
- *
459
- * Cycle detection: we mark `<filePath>#<identifier>` in `state.visited`
460
- * before recursing across files. A revisit short-circuits to undefined
461
- * rather than looping — the caller emits a deopt with a clear reason.
462
- */
463
- function followIdentifier(node, state) {
464
- const name = node.getText();
465
- const sourceFile = node.getSourceFile();
466
- const visitKey = `${sourceFile.getFilePath()}#${name}`;
467
- if (state.visited.has(visitKey)) {
468
- state.log(` cycle detected following ${visitKey}; stopping walk`);
469
- return undefined;
470
- }
471
- state.visited.add(visitKey);
472
- // Step 1: same-file variable.
473
- const localVar = sourceFile.getVariableDeclaration(name);
474
- if (localVar)
475
- return localVar;
476
- // Step 2: same-file class/function.
477
- const localClass = sourceFile.getClass(name);
478
- if (localClass)
479
- return localClass;
480
- const localFn = sourceFile.getFunction(name);
481
- if (localFn)
482
- return localFn;
483
- // Step 3: imports.
484
- const viaImport = followImport(name, sourceFile, state);
485
- if (viaImport)
486
- return viaImport;
487
- // Step 4: symbol fallback — only reached when the manual walk exhausts.
488
- // Intentionally last because it triggers full TS binding.
489
- return followSymbol(node, state);
490
- }
491
- /**
492
- * When `node` is a default-imported identifier (`import servers from './x'`),
493
- * return the expression on the right-hand side of that file's
494
- * `export default ...`, so the array walk can recurse into it.
495
- *
496
- * Handles the case the declaration-based path can't:
497
- * // target.ts
498
- * export default [a, b];
499
- * There's no `VariableDeclaration` named `servers` here — the export
500
- * assignment's expression is the array itself, and we have to hand the
501
- * whole expression back to the caller so it can iterate the elements.
502
- *
503
- * Returns undefined when the identifier isn't a default import, or when
504
- * the target uses `export default someIdentifier` (already handled by
505
- * `resolveDefaultInFile` → declaration path) or is otherwise opaque.
506
- */
507
- function followDefaultImportToExpression(node, state) {
508
- const name = node.getText();
509
- const sourceFile = node.getSourceFile();
510
- for (const importDecl of sourceFile.getImportDeclarations()) {
511
- const defaultImport = importDecl.getDefaultImport();
512
- if (!defaultImport || defaultImport.getText() !== name)
513
- continue;
514
- const target = loadImportTarget(importDecl, state, sourceFile.getFilePath());
515
- if (!target)
516
- return undefined;
517
- for (const assign of target.getExportAssignments()) {
518
- if (assign.isExportEquals())
519
- continue;
520
- return assign.getExpression();
521
- }
522
- return undefined;
523
- }
524
- return undefined;
525
- }
526
- /**
527
- * Locate the target SourceFile for an imported identifier without requiring
528
- * an intermediary declaration on that side. Used for the common pattern:
529
- *
530
- * // target.ts
531
- * export default defineJob({ ... });
532
- * // consumer.ts
533
- * import syncJob from './target';
534
- * jobs: [syncJob];
535
- *
536
- * There's no `const syncJob = ...` on the target side, so `followIdentifier`
537
- * can't produce a declaration — but we still know which file holds the
538
- * primitive and what name the consumer used. The caller's plugin will walk
539
- * that file with its own `detect()` and find the inline primitive.
540
- */
541
- function findFileLevelImport(node, state) {
542
- const name = node.getText();
543
- const sourceFile = node.getSourceFile();
544
- for (const importDecl of sourceFile.getImportDeclarations()) {
545
- const defaultImport = importDecl.getDefaultImport();
546
- const matchesDefault = defaultImport?.getText() === name;
547
- const matchesNamed = importDecl
548
- .getNamedImports()
549
- .some((n) => (n.getAliasNode()?.getText() ?? n.getName()) === name);
550
- if (!matchesDefault && !matchesNamed)
551
- continue;
552
- const target = loadImportTarget(importDecl, state, sourceFile.getFilePath());
553
- if (!target)
554
- return undefined;
555
- return {
556
- identifierName: name,
557
- sourceFile: target,
558
- viaDefaultImport: matchesDefault,
559
- };
560
- }
561
- return undefined;
562
- }
563
- /**
564
- * Find a same-named ImportDeclaration and resolve into the target file.
565
- *
566
- * Handles:
567
- * - `import foo from './x'` (default)
568
- * - `import { foo } from './x'` (named)
569
- * - `import { foo as bar } from './x'` (named w/ alias)
570
- *
571
- * Namespace imports (`import * as ns from './x'`) aren't resolved here
572
- * — a bare `ns` identifier can't stand in for a primitive array; the
573
- * only meaningful use is `ns.foo`, which is resolved in
574
- * `resolvePropertyAccess` via `followNamespaceImport`.
575
- *
576
- * After locating the import, loads the target file into the project
577
- * on demand and recurses inside it via `resolveInFile()`.
578
- */
579
- function followImport(name, sourceFile, state) {
580
- for (const importDecl of sourceFile.getImportDeclarations()) {
581
- // Default: `import foo from './x'`
582
- const defaultImport = importDecl.getDefaultImport();
583
- if (defaultImport && defaultImport.getText() === name) {
584
- const targetFile = loadImportTarget(importDecl, state, sourceFile.getFilePath());
585
- if (!targetFile)
586
- return undefined;
587
- return resolveDefaultInFile(targetFile, state);
588
- }
589
- // Named: `import { foo } from './x'` or `import { foo as bar } from './x'`
590
- for (const named of importDecl.getNamedImports()) {
591
- const localBinding = named.getAliasNode()?.getText() ?? named.getName();
592
- if (localBinding !== name)
593
- continue;
594
- const remoteName = named.getName(); // the name as exported by target
595
- const targetFile = loadImportTarget(importDecl, state, sourceFile.getFilePath());
596
- if (!targetFile)
597
- return undefined;
598
- return resolveInFile(remoteName, targetFile, state);
599
- }
600
- }
601
- return undefined;
602
- }
603
- /**
604
- * Load the SourceFile that an `import` or `export ... from` declaration
605
- * points at, using the ts-morph built-in resolver where it works, and
606
- * falling back to the project's tsconfig `paths` aliases + relative FS
607
- * resolution otherwise.
608
- *
609
- * Works uniformly for `ImportDeclaration` and `ExportDeclaration` because
610
- * both expose `getModuleSpecifierSourceFile()` / `getModuleSpecifierValue()`
611
- * (ExportDeclaration returns undefined when there's no `from` clause).
612
- *
613
- * Files discovered this way are added to the project lazily so the rest
614
- * of the resolver (and downstream plugins) can use them as first-class
615
- * SourceFiles.
616
- */
617
- function loadImportTarget(decl, state, fromFile) {
618
- // Fast path: ts-morph already figured it out.
619
- const viaTsMorph = decl.getModuleSpecifierSourceFile();
620
- if (viaTsMorph)
621
- return viaTsMorph;
622
- // Slow path: shared resolveModuleSpecifier in utils/path-resolver.ts
623
- // — the same helper AgentTraverser uses, so drift between the two
624
- // sites (previously a real concern) is impossible.
625
- const specifier = decl.getModuleSpecifierValue();
626
- if (!specifier)
627
- return undefined; // bare `export { x }` with no source
628
- const resolved = resolveModuleSpecifier(specifier, fromFile, state.rootDir);
629
- if (!resolved)
630
- return undefined;
631
- try {
632
- const existing = state.project.getSourceFile(resolved);
633
- if (existing)
634
- return existing;
635
- return state.project.addSourceFileAtPath(resolved);
636
- }
637
- catch (err) {
638
- state.log(` failed to load ${resolved}: ${String(err)}`);
639
- return undefined;
640
- }
641
- }
642
- /**
643
- * Resolve an `export { x } from './y'` / `export * from './y'` /
644
- * same-file declaration named `name` in the given file.
645
- *
646
- * Walks the re-export graph breadth-first until it finds the underlying
647
- * declaration. Guarded by `state.visited` against cyclic re-exports.
648
- */
649
- function resolveInFile(name, sourceFile, state) {
650
- const visitKey = `${sourceFile.getFilePath()}#${name}`;
651
- if (state.visited.has(visitKey))
652
- return undefined;
653
- state.visited.add(visitKey);
654
- // Same-file declaration wins.
655
- const local = sourceFile.getVariableDeclaration(name) ?? sourceFile.getClass(name) ?? sourceFile.getFunction(name);
656
- if (local)
657
- return local;
658
- // Re-exports with a module specifier: `export { x } from './y'`,
659
- // `export { x as y } from './z'`, `export * from './y'`, `export * as ns from './y'`.
660
- for (const exp of sourceFile.getExportDeclarations()) {
661
- if (!exp.getModuleSpecifierValue())
662
- continue;
663
- const target = loadImportTarget(exp, state, sourceFile.getFilePath());
664
- if (!target)
665
- continue;
666
- const matched = findInNamedExports(exp, name);
667
- if (matched) {
668
- return resolveInFile(matched, target, state);
669
- }
670
- // `export * from './y'` — ts-morph models this as an ExportDeclaration
671
- // with a module specifier, no named exports, and no namespace export.
672
- // Recurse to search the target exhaustively.
673
- const isWildcard = exp.getNamedExports().length === 0 && !exp.getNamespaceExport();
674
- if (isWildcard) {
675
- const viaWildcard = resolveInFile(name, target, state);
676
- if (viaWildcard)
677
- return viaWildcard;
678
- }
679
- }
680
- // Re-exports without a module specifier: `export { x }` (rebind within
681
- // the same file, possibly with a rename).
682
- for (const exp of sourceFile.getExportDeclarations()) {
683
- if (exp.getModuleSpecifierValue())
684
- continue;
685
- const matched = findInNamedExports(exp, name);
686
- if (matched) {
687
- return resolveInFile(matched, sourceFile, state);
688
- }
689
- }
690
- // Chase symbol as a last resort — expensive, but handles exotic barrels.
691
- const symbolResult = followSymbolInFile(name, sourceFile, state);
692
- if (symbolResult)
693
- return symbolResult;
694
- return undefined;
695
- }
696
- /**
697
- * Find the `default` export in a file. Typical shapes:
698
- * export default foo → VariableDeclaration for `foo`
699
- * export default new X({...}) → synthesized VariableDeclaration? No — return undefined
700
- * and let the caller handle it (we don't manufacture decls).
701
- * export default function X() → FunctionDeclaration
702
- * export default class X {} → ClassDeclaration
703
- *
704
- * Returns undefined for inline `export default <expr>` patterns that don't
705
- * bind to a named declaration — those cases bubble up as a deopt with a
706
- * clear message upstream.
707
- */
708
- function resolveDefaultInFile(sourceFile, state) {
709
- for (const assign of sourceFile.getExportAssignments()) {
710
- if (assign.isExportEquals())
711
- continue;
712
- const expr = assign.getExpression();
713
- if (Node.isIdentifier(expr)) {
714
- return resolveInFile(expr.getText(), sourceFile, state);
715
- }
716
- // `export default new X(...)` / `export default defineX(...)` —
717
- // the caller has to treat the whole file as the unit.
718
- return undefined;
719
- }
720
- // `export default function X()` / `export default class X {}`
721
- for (const cls of sourceFile.getClasses()) {
722
- if (cls.isDefaultExport())
723
- return cls;
724
- }
725
- for (const fn of sourceFile.getFunctions()) {
726
- if (fn.isDefaultExport())
727
- return fn;
728
- }
729
- // Re-export-as-default:
730
- // export { foo as default } from './other'
731
- // export { foo as default } (same-file, equivalent to
732
- // `export default foo`)
733
- // These don't show up as ExportAssignments or `isDefaultExport()`
734
- // declarations — they're ExportDeclarations with a spec aliased to
735
- // `default`. Without this branch the walk falls back to
736
- // `findFileLevelImport`, which lands on the barrel file instead of
737
- // the ultimate source, and plugin.detect() emits a spurious
738
- // `lua/missing-primitive-declaration` on a file that legitimately
739
- // has no primitive in it.
740
- for (const exp of sourceFile.getExportDeclarations()) {
741
- for (const spec of exp.getNamedExports()) {
742
- const alias = spec.getAliasNode()?.getText();
743
- if (alias !== 'default')
744
- continue;
745
- const remoteName = spec.getName();
746
- const moduleSpecifier = exp.getModuleSpecifierValue();
747
- if (moduleSpecifier) {
748
- // Cross-file: `export { foo as default } from './other'`
749
- const target = loadImportTarget(exp, state, sourceFile.getFilePath());
750
- if (!target)
751
- return undefined;
752
- return resolveInFile(remoteName, target, state);
753
- }
754
- // Same-file: `export { foo as default }` without a `from` clause
755
- return resolveInFile(remoteName, sourceFile, state);
756
- }
757
- }
758
- return undefined;
759
- }
760
- /**
761
- * Return the name (as written in the source module) that a named export
762
- * specifier maps to, or undefined if this declaration doesn't export `name`.
763
- *
764
- * export { foo } → findInNamedExports(_, 'foo') = 'foo'
765
- * export { foo as bar } → findInNamedExports(_, 'bar') = 'foo'
766
- *
767
- * The returned name is used to recurse into the source module because
768
- * that's what THAT module exports, not the alias used here.
769
- */
770
- function findInNamedExports(exp, name) {
771
- for (const spec of exp.getNamedExports()) {
772
- const localName = spec.getAliasNode()?.getText() ?? spec.getName();
773
- if (localName === name)
774
- return spec.getName();
775
- }
776
- return undefined;
777
- }
778
- // =============================================================================
779
- // SYMBOL FALLBACK (slow path)
780
- // =============================================================================
781
- /**
782
- * Last-resort identifier resolution via the TypeChecker's symbol graph.
783
- * Handles re-export shapes the manual walk above doesn't model (e.g. some
784
- * exotic `export type` + `export` combinations, declaration-merging barrels).
785
- *
786
- * Expensive — triggers full symbol binding — so we only reach it when the
787
- * cheaper paths above have returned undefined. See ts-morph issue #644.
788
- */
789
- function followSymbol(node, state) {
790
- try {
791
- const symbol = node.getSymbol();
792
- if (!symbol)
793
- return undefined;
794
- const aliased = symbol.isAlias()
795
- ? (node.getSourceFile().getProject().getTypeChecker().getAliasedSymbol(symbol) ?? symbol)
796
- : symbol;
797
- for (const decl of aliased.getDeclarations()) {
798
- if (Node.isVariableDeclaration(decl) || Node.isClassDeclaration(decl) || Node.isFunctionDeclaration(decl)) {
799
- return decl;
800
- }
801
- }
802
- }
803
- catch (err) {
804
- state.log(` symbol fallback failed: ${String(err)}`);
805
- }
806
- return undefined;
807
- }
808
- /**
809
- * Symbol fallback keyed by file + name rather than an existing Identifier
810
- * node. Used when chasing re-exports that point at a name that's declared
811
- * further down the graph than our manual walk can follow.
812
- */
813
- function followSymbolInFile(name, sourceFile, state) {
814
- // Count every invocation of this slow path, not just ones that
815
- // succeed — the point of the telemetry is to know how often we hit
816
- // `getExportedDeclarations`, which triggers full TS binding and is
817
- // ~1000x slower than the AST-based walks above. Surfaced by
818
- // `resolveArrayRefs` under SMOKE_DEBUG.
819
- state.slowPathHits++;
820
- try {
821
- const exportedMap = sourceFile.getExportedDeclarations();
822
- const decls = exportedMap.get(name);
823
- if (!decls)
824
- return undefined;
825
- for (const decl of decls) {
826
- if (Node.isVariableDeclaration(decl) || Node.isClassDeclaration(decl) || Node.isFunctionDeclaration(decl)) {
827
- return decl;
828
- }
829
- }
830
- }
831
- catch (err) {
832
- state.log(` symbol-in-file fallback failed for ${name}: ${String(err)}`);
833
- }
834
- return undefined;
835
- }
836
- // =============================================================================
837
- // PROPERTY ACCESS RESOLUTION
838
- // =============================================================================
839
- /**
840
- * Resolve `a.b` where `a` is a same-file object literal, an imported object
841
- * literal, or a namespace import (`import * as ns from './x'`), and `b` is
842
- * a known property / named export. Returns the value node (typically an
843
- * ArrayLiteralExpression) so the caller can recurse into it.
844
- *
845
- * Deep chains like `a.b.c` are handled recursively.
846
- *
847
- * Namespace imports are handled here — `followImport` can't express them
848
- * because `ns` has no backing VariableDeclaration. From the resolver's
849
- * point of view, `ns.foo` is equivalent to `import { foo } from './x'`,
850
- * so we short-circuit to looking up `foo` in the target file's scope and
851
- * returning its initializer. The returned node lives in the target file,
852
- * so any identifiers inside it resolve in the right scope on recursion.
853
- */
854
- function resolvePropertyAccess(node, state) {
855
- if (!Node.isPropertyAccessExpression(node))
856
- return undefined;
857
- const propertyName = node.getName();
858
- const objectExpr = node.getExpression();
859
- // Namespace-import short-circuit: `ns.foo` where `ns` came from
860
- // `import * as ns from './x'`. Look `foo` up as a named export on the
861
- // target file and return its initializer directly.
862
- if (Node.isIdentifier(objectExpr)) {
863
- const namespaceTarget = followNamespaceImport(objectExpr, state);
864
- if (namespaceTarget) {
865
- const decl = resolveInFile(propertyName, namespaceTarget, state);
866
- if (decl && Node.isVariableDeclaration(decl)) {
867
- return decl.getInitializer();
868
- }
869
- // Class/function export under a namespace isn't a valid object-literal
870
- // base — fall through to deopt at the call site.
871
- return undefined;
872
- }
873
- }
874
- // Resolve the object part.
875
- let objectNode = objectExpr;
876
- if (Node.isIdentifier(objectExpr)) {
877
- const decl = followIdentifier(objectExpr, state);
878
- // Only VariableDeclarations have initializers; class/function
879
- // declarations can't back an object-literal property chain.
880
- objectNode = decl && Node.isVariableDeclaration(decl) ? decl.getInitializer() : undefined;
881
- }
882
- else if (Node.isPropertyAccessExpression(objectExpr)) {
883
- objectNode = resolvePropertyAccess(objectExpr, state);
884
- }
885
- if (!objectNode || !Node.isObjectLiteralExpression(objectNode)) {
886
- return undefined;
887
- }
888
- const prop = objectNode.getProperty(propertyName);
889
- if (!prop || !Node.isPropertyAssignment(prop))
890
- return undefined;
891
- return prop.getInitializer();
892
- }
893
- /**
894
- * If `identifier` is the local binding of an `import * as ns from './x'`
895
- * declaration, return the target SourceFile. Otherwise undefined.
896
- *
897
- * Narrowly scoped helper for `resolvePropertyAccess` — namespace imports
898
- * outside a property-access context would just deopt (you can't register
899
- * a primitive array as `mcpServers: ns` since `ns` is a module object,
900
- * not an array), so this is the only place it needs to exist.
901
- */
902
- function followNamespaceImport(identifier, state) {
903
- const name = identifier.getText();
904
- const sourceFile = identifier.getSourceFile();
905
- for (const importDecl of sourceFile.getImportDeclarations()) {
906
- const ns = importDecl.getNamespaceImport();
907
- if (!ns || ns.getText() !== name)
908
- continue;
909
- return loadImportTarget(importDecl, state, sourceFile.getFilePath());
910
- }
911
- return undefined;
912
- }
913
- /**
914
- * Return true when `identifier` is the local binding of a default import
915
- * (`import whatever from './target'`). Used to mark resulting `ResolvedRef`s
916
- * so downstream plugin.detect() matching can prefer the target's default
917
- * export — the consumer-side binding name is arbitrary and uncorrelated
918
- * with any exportName on the target side.
919
- */
920
- function isDefaultImportBinding(identifier) {
921
- const name = identifier.getText();
922
- const sourceFile = identifier.getSourceFile();
923
- for (const importDecl of sourceFile.getImportDeclarations()) {
924
- const defaultImport = importDecl.getDefaultImport();
925
- if (defaultImport && defaultImport.getText() === name)
926
- return true;
927
- }
928
- return false;
929
- }
930
- // =============================================================================
931
- // ESCAPE HATCH
932
- // =============================================================================
933
- /**
934
- * Check for a `/* @lua-ignore-ref *\/` pragma on the node or its enclosing
935
- * property assignment / array element. Matches the spirit of `@ts-ignore`
936
- * and `eslint-disable-next-line` — a small, stable string users can write
937
- * in source to opt out of this particular static check without silencing
938
- * everything else.
939
- *
940
- * Accepts all of these placements:
941
- *
942
- * // @lua-ignore-ref (leading line comment)
943
- * mcpServers: buildDynamically()
944
- *
945
- * mcpServers: /* @lua-ignore-ref *\/ buildDynamically() (inline block)
946
- *
947
- * mcpServers: buildDynamically() // @lua-ignore-ref (trailing line)
948
- *
949
- * mcpServers: buildDynamically() /* @lua-ignore-ref *\/ (trailing block)
950
- *
951
- * /** @lua-ignore-ref *\/ (JSDoc-style leading)
952
- * mcpServers: buildDynamically()
953
- *
954
- * We can't rely on `getLeadingCommentRanges()` alone because ts-morph
955
- * doesn't surface inline block comments between a `:` and the expression
956
- * (they're parsed as trivia the scanner drops). Instead we inspect the
957
- * raw source slice on both sides of each candidate node — leading trivia
958
- * via `FullStart..Start`, trailing trivia via `End..(next sibling's
959
- * FullStart or parent End)` — which covers every placement a user who
960
- * read the "ESLint-style" description would naturally reach for.
961
- */
962
- // Match the pragma only when it appears inside a real comment delimiter, so
963
- // a plain mention in surrounding prose — e.g. `// TODO: consider @lua-ignore-ref
964
- // here instead` in some far-away line that happens to end up in the same
965
- // trivia slice — doesn't accidentally disable the check. The `\b` after the
966
- // pragma name also prevents matching something like `@lua-ignore-refactor`.
967
- // The `\*?` after `/*` lets JSDoc-style `/** @lua-ignore-ref */` also match
968
- // — that's many users' reflex for "tool-recognized comment" and costs us
969
- // nothing to support.
970
- const IGNORE_REF_PRAGMA_REGEX = /(?:\/\*\*?|\/\/)\s*@lua-ignore-ref\b/;
971
- function hasIgnoreRefPragma(node) {
972
- // Leading trivia slice: [FullStart, Start). Captures comments on the
973
- // line(s) before a node or in the trivia between `:` and the node.
974
- const leadingSliceHasPragma = (candidate) => {
975
- if (!candidate)
976
- return false;
977
- const sourceText = candidate.getSourceFile().getFullText();
978
- const slice = sourceText.slice(candidate.getFullStart(), candidate.getStart());
979
- return IGNORE_REF_PRAGMA_REGEX.test(slice);
980
- };
981
- // Trailing trivia slice: [End, nextBoundary). `nextBoundary` is the
982
- // next sibling's FullStart if any (its FullStart includes all trivia
983
- // up to itself, so the slice between us and it is our trailing
984
- // trivia), otherwise the parent's End. This catches `// @lua-ignore-ref`
985
- // written after the property value — a common user reflex from ESLint.
986
- const trailingSliceHasPragma = (candidate) => {
987
- if (!candidate)
988
- return false;
989
- const sourceText = candidate.getSourceFile().getFullText();
990
- const end = candidate.getEnd();
991
- let nextBoundary;
992
- const parent = candidate.getParent();
993
- if (parent) {
994
- const siblings = parent.getChildren();
995
- const idx = siblings.indexOf(candidate);
996
- if (idx >= 0 && idx + 1 < siblings.length) {
997
- nextBoundary = siblings[idx + 1].getFullStart();
998
- }
999
- else {
1000
- nextBoundary = parent.getEnd();
1001
- }
1002
- }
1003
- if (nextBoundary === undefined || nextBoundary <= end)
1004
- return false;
1005
- const slice = sourceText.slice(end, nextBoundary);
1006
- return IGNORE_REF_PRAGMA_REGEX.test(slice);
1007
- };
1008
- if (leadingSliceHasPragma(node))
1009
- return true;
1010
- if (leadingSliceHasPragma(node.getParent()))
1011
- return true;
1012
- if (trailingSliceHasPragma(node))
1013
- return true;
1014
- if (trailingSliceHasPragma(node.getParent()))
1015
- return true;
1016
- return false;
1017
- }
1018
- // =============================================================================
1019
- // SMALL UTILITIES
1020
- // =============================================================================
1021
- function truncate(s, max) {
1022
- if (s.length <= max)
1023
- return s;
1024
- return s.slice(0, max - 1) + '…';
1025
- }
1026
- //# sourceMappingURL=reference-resolver.js.map