@1mcp/agent 0.39.8 → 0.40.0-beta.1

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 (683) hide show
  1. package/README.md +22 -7
  2. package/build/admin/assets/{admin-BackendLogsWorkspace-BKavXT9B.js → admin-BackendLogsWorkspace-DnPzXW3E.js} +1 -1
  3. package/build/admin/assets/{admin-InstructionTemplatesWorkspace-CvG4EPdZ.js → admin-InstructionTemplatesWorkspace-B7beKEgz.js} +1 -1
  4. package/build/admin/assets/{admin-OAuthServicesWorkspace-0aX5Dfnd.js → admin-OAuthServicesWorkspace-pgsV0qQs.js} +1 -1
  5. package/build/admin/assets/{admin-PresetAuthoringWorkspace-BboJVBFl.js → admin-PresetAuthoringWorkspace-053b1zwU.js} +1 -1
  6. package/build/admin/assets/admin-console-lrFAX4EQ.js +3 -0
  7. package/build/admin/assets/admin-icons-wOzB38gm.js +1 -0
  8. package/build/admin/assets/admin-vendor-BLZ1Mauf.js +3 -0
  9. package/build/admin/assets/admin-vendor-BdHKHno1.js +1 -0
  10. package/build/admin/assets/admin-vendor-BqYiU41k.js +51 -0
  11. package/build/admin/assets/admin-vendor-C291Vs-N.js +3 -0
  12. package/build/admin/assets/admin-vendor-VzhcFgoy.js +1 -0
  13. package/build/admin/index.html +7 -5
  14. package/build/application/backendPreparationAdmission.d.ts +77 -0
  15. package/build/application/backendPreparationAdmission.d.ts.map +1 -0
  16. package/build/application/backendPreparationAdmission.js +423 -0
  17. package/build/application/backendPreparationAdmission.js.map +1 -0
  18. package/build/application/backendPreparationCoordinator.d.ts +122 -0
  19. package/build/application/backendPreparationCoordinator.d.ts.map +1 -0
  20. package/build/application/backendPreparationCoordinator.js +885 -0
  21. package/build/application/backendPreparationCoordinator.js.map +1 -0
  22. package/build/application/projectLifecycle.d.ts +49 -0
  23. package/build/application/projectLifecycle.d.ts.map +1 -0
  24. package/build/application/projectLifecycle.js +228 -0
  25. package/build/application/projectLifecycle.js.map +1 -0
  26. package/build/auth/oauthDiagnostics.d.ts +4 -0
  27. package/build/auth/oauthDiagnostics.d.ts.map +1 -1
  28. package/build/auth/oauthDiagnostics.js +4 -0
  29. package/build/auth/oauthDiagnostics.js.map +1 -1
  30. package/build/auth/oauthEndpointFetch.d.ts +2 -1
  31. package/build/auth/oauthEndpointFetch.d.ts.map +1 -1
  32. package/build/auth/oauthEndpointFetch.js +17 -6
  33. package/build/auth/oauthEndpointFetch.js.map +1 -1
  34. package/build/auth/sessionTypes.d.ts +1 -1
  35. package/build/cli.d.ts.map +1 -1
  36. package/build/cli.js +48 -18
  37. package/build/cli.js.map +1 -1
  38. package/build/commands/admin/index.d.ts.map +1 -1
  39. package/build/commands/admin/index.js +2 -6
  40. package/build/commands/admin/index.js.map +1 -1
  41. package/build/commands/app/backups.d.ts.map +1 -1
  42. package/build/commands/app/backups.js +2 -1
  43. package/build/commands/app/backups.js.map +1 -1
  44. package/build/commands/app/consolidate.d.ts.map +1 -1
  45. package/build/commands/app/consolidate.js +5 -4
  46. package/build/commands/app/consolidate.js.map +1 -1
  47. package/build/commands/app/discover.d.ts.map +1 -1
  48. package/build/commands/app/discover.js +2 -1
  49. package/build/commands/app/discover.js.map +1 -1
  50. package/build/commands/app/index.d.ts.map +1 -1
  51. package/build/commands/app/index.js +35 -32
  52. package/build/commands/app/index.js.map +1 -1
  53. package/build/commands/app/restore.d.ts.map +1 -1
  54. package/build/commands/app/restore.js +6 -5
  55. package/build/commands/app/restore.js.map +1 -1
  56. package/build/commands/app/status.d.ts.map +1 -1
  57. package/build/commands/app/status.js +2 -1
  58. package/build/commands/app/status.js.map +1 -1
  59. package/build/commands/auth/index.d.ts.map +1 -1
  60. package/build/commands/auth/index.js +2 -7
  61. package/build/commands/auth/index.js.map +1 -1
  62. package/build/commands/bootstrap/bootstrap.d.ts +38 -0
  63. package/build/commands/bootstrap/bootstrap.d.ts.map +1 -0
  64. package/build/commands/bootstrap/bootstrap.js +288 -0
  65. package/build/commands/bootstrap/bootstrap.js.map +1 -0
  66. package/build/commands/bootstrap/bootstrapOwnership.d.ts +13 -0
  67. package/build/commands/bootstrap/bootstrapOwnership.d.ts.map +1 -0
  68. package/build/commands/bootstrap/bootstrapOwnership.js +144 -0
  69. package/build/commands/bootstrap/bootstrapOwnership.js.map +1 -0
  70. package/build/commands/bootstrap/index.d.ts +3 -0
  71. package/build/commands/bootstrap/index.d.ts.map +1 -0
  72. package/build/commands/bootstrap/index.js +25 -0
  73. package/build/commands/bootstrap/index.js.map +1 -0
  74. package/build/commands/cliSetup/index.d.ts.map +1 -1
  75. package/build/commands/cliSetup/index.js +17 -15
  76. package/build/commands/cliSetup/index.js.map +1 -1
  77. package/build/commands/cliSetup/installPreparationSkill.d.ts +8 -0
  78. package/build/commands/cliSetup/installPreparationSkill.d.ts.map +1 -0
  79. package/build/commands/cliSetup/installPreparationSkill.js +201 -0
  80. package/build/commands/cliSetup/installPreparationSkill.js.map +1 -0
  81. package/build/commands/cliSetup/preparationSkill.generated.d.ts +2 -0
  82. package/build/commands/cliSetup/preparationSkill.generated.d.ts.map +1 -0
  83. package/build/commands/cliSetup/preparationSkill.generated.js +8 -0
  84. package/build/commands/cliSetup/preparationSkill.generated.js.map +1 -0
  85. package/build/commands/cliSetup/setupFiles.d.ts +5 -1
  86. package/build/commands/cliSetup/setupFiles.d.ts.map +1 -1
  87. package/build/commands/cliSetup/setupFiles.js +54 -37
  88. package/build/commands/cliSetup/setupFiles.js.map +1 -1
  89. package/build/commands/inspect/index.d.ts.map +1 -1
  90. package/build/commands/inspect/index.js +5 -5
  91. package/build/commands/inspect/index.js.map +1 -1
  92. package/build/commands/inspect/inspect.d.ts +2 -1
  93. package/build/commands/inspect/inspect.d.ts.map +1 -1
  94. package/build/commands/inspect/inspect.js +14 -6
  95. package/build/commands/inspect/inspect.js.map +1 -1
  96. package/build/commands/inspect/inspectUtils.d.ts +1 -0
  97. package/build/commands/inspect/inspectUtils.d.ts.map +1 -1
  98. package/build/commands/inspect/inspectUtils.js +13 -2
  99. package/build/commands/inspect/inspectUtils.js.map +1 -1
  100. package/build/commands/instructions/index.d.ts.map +1 -1
  101. package/build/commands/instructions/index.js +8 -3
  102. package/build/commands/instructions/index.js.map +1 -1
  103. package/build/commands/instructions/instructions.d.ts +3 -1
  104. package/build/commands/instructions/instructions.d.ts.map +1 -1
  105. package/build/commands/instructions/instructions.js +24 -0
  106. package/build/commands/instructions/instructions.js.map +1 -1
  107. package/build/commands/instructions/instructionsUtils.d.ts +2 -0
  108. package/build/commands/instructions/instructionsUtils.d.ts.map +1 -1
  109. package/build/commands/instructions/instructionsUtils.js +14 -4
  110. package/build/commands/instructions/instructionsUtils.js.map +1 -1
  111. package/build/commands/mcp/add.d.ts.map +1 -1
  112. package/build/commands/mcp/add.js +2 -1
  113. package/build/commands/mcp/add.js.map +1 -1
  114. package/build/commands/mcp/enable.d.ts.map +1 -1
  115. package/build/commands/mcp/enable.js +2 -1
  116. package/build/commands/mcp/enable.js.map +1 -1
  117. package/build/commands/mcp/index.d.ts.map +1 -1
  118. package/build/commands/mcp/index.js +99 -75
  119. package/build/commands/mcp/index.js.map +1 -1
  120. package/build/commands/mcp/install.d.ts.map +1 -1
  121. package/build/commands/mcp/install.js +6 -5
  122. package/build/commands/mcp/install.js.map +1 -1
  123. package/build/commands/mcp/installSource.d.ts +3 -1
  124. package/build/commands/mcp/installSource.d.ts.map +1 -1
  125. package/build/commands/mcp/installSource.js +2 -2
  126. package/build/commands/mcp/installSource.js.map +1 -1
  127. package/build/commands/mcp/knownServerSetup.d.ts +4 -0
  128. package/build/commands/mcp/knownServerSetup.d.ts.map +1 -0
  129. package/build/commands/mcp/knownServerSetup.js +102 -0
  130. package/build/commands/mcp/knownServerSetup.js.map +1 -0
  131. package/build/commands/mcp/list.d.ts.map +1 -1
  132. package/build/commands/mcp/list.js +2 -1
  133. package/build/commands/mcp/list.js.map +1 -1
  134. package/build/commands/mcp/remove.d.ts.map +1 -1
  135. package/build/commands/mcp/remove.js +2 -1
  136. package/build/commands/mcp/remove.js.map +1 -1
  137. package/build/commands/mcp/setup.d.ts +28 -0
  138. package/build/commands/mcp/setup.d.ts.map +1 -0
  139. package/build/commands/mcp/setup.js +56 -0
  140. package/build/commands/mcp/setup.js.map +1 -0
  141. package/build/commands/mcp/status.d.ts.map +1 -1
  142. package/build/commands/mcp/status.js +2 -1
  143. package/build/commands/mcp/status.js.map +1 -1
  144. package/build/commands/mcp/tokens.d.ts.map +1 -1
  145. package/build/commands/mcp/tokens.js +5 -4
  146. package/build/commands/mcp/tokens.js.map +1 -1
  147. package/build/commands/mcp/tools.d.ts.map +1 -1
  148. package/build/commands/mcp/tools.js +20 -11
  149. package/build/commands/mcp/tools.js.map +1 -1
  150. package/build/commands/preparation/index.d.ts +3 -0
  151. package/build/commands/preparation/index.d.ts.map +1 -0
  152. package/build/commands/preparation/index.js +55 -0
  153. package/build/commands/preparation/index.js.map +1 -0
  154. package/build/commands/preparation/preparation.d.ts +18 -0
  155. package/build/commands/preparation/preparation.d.ts.map +1 -0
  156. package/build/commands/preparation/preparation.js +102 -0
  157. package/build/commands/preparation/preparation.js.map +1 -0
  158. package/build/commands/preset/delete.d.ts.map +1 -1
  159. package/build/commands/preset/delete.js +2 -1
  160. package/build/commands/preset/delete.js.map +1 -1
  161. package/build/commands/preset/edit.d.ts.map +1 -1
  162. package/build/commands/preset/edit.js +3 -2
  163. package/build/commands/preset/edit.js.map +1 -1
  164. package/build/commands/preset/index.d.ts.map +1 -1
  165. package/build/commands/preset/index.js +38 -68
  166. package/build/commands/preset/index.js.map +1 -1
  167. package/build/commands/preset/interactive.d.ts.map +1 -1
  168. package/build/commands/preset/interactive.js +2 -1
  169. package/build/commands/preset/interactive.js.map +1 -1
  170. package/build/commands/preset/list.d.ts.map +1 -1
  171. package/build/commands/preset/list.js +2 -1
  172. package/build/commands/preset/list.js.map +1 -1
  173. package/build/commands/preset/show.d.ts.map +1 -1
  174. package/build/commands/preset/show.js +2 -1
  175. package/build/commands/preset/show.js.map +1 -1
  176. package/build/commands/preset/test.d.ts.map +1 -1
  177. package/build/commands/preset/test.js +2 -1
  178. package/build/commands/preset/test.js.map +1 -1
  179. package/build/commands/preset/url.d.ts.map +1 -1
  180. package/build/commands/preset/url.js +2 -1
  181. package/build/commands/preset/url.js.map +1 -1
  182. package/build/commands/project/index.d.ts +3 -0
  183. package/build/commands/project/index.d.ts.map +1 -0
  184. package/build/commands/project/index.js +40 -0
  185. package/build/commands/project/index.js.map +1 -0
  186. package/build/commands/project/project.d.ts +34 -0
  187. package/build/commands/project/project.d.ts.map +1 -0
  188. package/build/commands/project/project.js +119 -0
  189. package/build/commands/project/project.js.map +1 -0
  190. package/build/commands/proxy/index.d.ts +2 -1
  191. package/build/commands/proxy/index.d.ts.map +1 -1
  192. package/build/commands/proxy/index.js +6 -46
  193. package/build/commands/proxy/index.js.map +1 -1
  194. package/build/commands/proxy/proxy.d.ts.map +1 -1
  195. package/build/commands/proxy/proxy.js +11 -1
  196. package/build/commands/proxy/proxy.js.map +1 -1
  197. package/build/commands/registry/index.d.ts.map +1 -1
  198. package/build/commands/registry/index.js +37 -30
  199. package/build/commands/registry/index.js.map +1 -1
  200. package/build/commands/registry/search.d.ts.map +1 -1
  201. package/build/commands/registry/search.js +2 -1
  202. package/build/commands/registry/search.js.map +1 -1
  203. package/build/commands/registry/show.d.ts.map +1 -1
  204. package/build/commands/registry/show.js +2 -1
  205. package/build/commands/registry/show.js.map +1 -1
  206. package/build/commands/registry/status.d.ts.map +1 -1
  207. package/build/commands/registry/status.js +2 -1
  208. package/build/commands/registry/status.js.map +1 -1
  209. package/build/commands/registry/versions.d.ts.map +1 -1
  210. package/build/commands/registry/versions.js +2 -1
  211. package/build/commands/registry/versions.js.map +1 -1
  212. package/build/commands/run/index.d.ts.map +1 -1
  213. package/build/commands/run/index.js +18 -4
  214. package/build/commands/run/index.js.map +1 -1
  215. package/build/commands/run/run.d.ts +6 -1
  216. package/build/commands/run/run.d.ts.map +1 -1
  217. package/build/commands/run/run.js +96 -23
  218. package/build/commands/run/run.js.map +1 -1
  219. package/build/commands/run/stdoutBudget.d.ts +10 -0
  220. package/build/commands/run/stdoutBudget.d.ts.map +1 -0
  221. package/build/commands/run/stdoutBudget.js +102 -0
  222. package/build/commands/run/stdoutBudget.js.map +1 -0
  223. package/build/commands/serve/cooperativeRuntime.d.ts.map +1 -1
  224. package/build/commands/serve/cooperativeRuntime.js +9 -1
  225. package/build/commands/serve/cooperativeRuntime.js.map +1 -1
  226. package/build/commands/serve/index.d.ts.map +1 -1
  227. package/build/commands/serve/index.js +62 -39
  228. package/build/commands/serve/index.js.map +1 -1
  229. package/build/commands/serve/serveBackground.d.ts.map +1 -1
  230. package/build/commands/serve/serveBackground.js +12 -0
  231. package/build/commands/serve/serveBackground.js.map +1 -1
  232. package/build/commands/shared/agentSession.d.ts +5 -0
  233. package/build/commands/shared/agentSession.d.ts.map +1 -0
  234. package/build/commands/shared/agentSession.js +75 -0
  235. package/build/commands/shared/agentSession.js.map +1 -0
  236. package/build/commands/shared/apiClient.d.ts +2 -0
  237. package/build/commands/shared/apiClient.d.ts.map +1 -1
  238. package/build/commands/shared/apiClient.js +10 -6
  239. package/build/commands/shared/apiClient.js.map +1 -1
  240. package/build/commands/shared/cliContext.d.ts +2 -1
  241. package/build/commands/shared/cliContext.d.ts.map +1 -1
  242. package/build/commands/shared/cliContext.js +2 -1
  243. package/build/commands/shared/cliContext.js.map +1 -1
  244. package/build/commands/shared/clientSurfaceAttachment.d.ts +7 -1
  245. package/build/commands/shared/clientSurfaceAttachment.d.ts.map +1 -1
  246. package/build/commands/shared/clientSurfaceAttachment.js +221 -140
  247. package/build/commands/shared/clientSurfaceAttachment.js.map +1 -1
  248. package/build/commands/shared/commandRunner.d.ts +2 -1
  249. package/build/commands/shared/commandRunner.d.ts.map +1 -1
  250. package/build/commands/shared/commandRunner.js +15 -3
  251. package/build/commands/shared/commandRunner.js.map +1 -1
  252. package/build/commands/shared/inspectApiSchemas.d.ts +8 -8
  253. package/build/commands/shared/productCommandFamily.d.ts +4 -0
  254. package/build/commands/shared/productCommandFamily.d.ts.map +1 -0
  255. package/build/commands/shared/productCommandFamily.js +27 -0
  256. package/build/commands/shared/productCommandFamily.js.map +1 -0
  257. package/build/commands/shared/projectOwnerStorage.d.ts +8 -0
  258. package/build/commands/shared/projectOwnerStorage.d.ts.map +1 -0
  259. package/build/commands/shared/projectOwnerStorage.js +63 -0
  260. package/build/commands/shared/projectOwnerStorage.js.map +1 -0
  261. package/build/commands/shared/projectOwnerStore.d.ts +95 -0
  262. package/build/commands/shared/projectOwnerStore.d.ts.map +1 -0
  263. package/build/commands/shared/projectOwnerStore.js +578 -0
  264. package/build/commands/shared/projectOwnerStore.js.map +1 -0
  265. package/build/commands/shared/projectSelectionOptions.d.ts +24 -0
  266. package/build/commands/shared/projectSelectionOptions.d.ts.map +1 -0
  267. package/build/commands/shared/projectSelectionOptions.js +20 -0
  268. package/build/commands/shared/projectSelectionOptions.js.map +1 -0
  269. package/build/commands/shared/serveTargetResolver.d.ts +7 -1
  270. package/build/commands/shared/serveTargetResolver.d.ts.map +1 -1
  271. package/build/commands/shared/serveTargetResolver.js +99 -4
  272. package/build/commands/shared/serveTargetResolver.js.map +1 -1
  273. package/build/commands/target/index.d.ts.map +1 -1
  274. package/build/commands/target/index.js +6 -13
  275. package/build/commands/target/index.js.map +1 -1
  276. package/build/commands/telemetry/index.d.ts +3 -0
  277. package/build/commands/telemetry/index.d.ts.map +1 -0
  278. package/build/commands/telemetry/index.js +35 -0
  279. package/build/commands/telemetry/index.js.map +1 -0
  280. package/build/commands/wait/index.d.ts.map +1 -1
  281. package/build/commands/wait/index.js +3 -3
  282. package/build/commands/wait/index.js.map +1 -1
  283. package/build/commands/wait/wait.d.ts +2 -1
  284. package/build/commands/wait/wait.d.ts.map +1 -1
  285. package/build/commands/wait/wait.js.map +1 -1
  286. package/build/config/configLoader.d.ts.map +1 -1
  287. package/build/config/configLoader.js +5 -1
  288. package/build/config/configLoader.js.map +1 -1
  289. package/build/config/configManager.d.ts.map +1 -1
  290. package/build/config/configManager.js +15 -1
  291. package/build/config/configManager.js.map +1 -1
  292. package/build/config/productTelemetryBootstrap.d.ts +12 -0
  293. package/build/config/productTelemetryBootstrap.d.ts.map +1 -0
  294. package/build/config/productTelemetryBootstrap.js +40 -0
  295. package/build/config/productTelemetryBootstrap.js.map +1 -0
  296. package/build/config/projectConfigLoader.d.ts +4 -0
  297. package/build/config/projectConfigLoader.d.ts.map +1 -1
  298. package/build/config/projectConfigLoader.js +129 -28
  299. package/build/config/projectConfigLoader.js.map +1 -1
  300. package/build/config/projectConfigTypes.d.ts +7 -0
  301. package/build/config/projectConfigTypes.d.ts.map +1 -1
  302. package/build/config/projectConfigTypes.js +1 -0
  303. package/build/config/projectConfigTypes.js.map +1 -1
  304. package/build/constants/cliTimeouts.d.ts +4 -0
  305. package/build/constants/cliTimeouts.d.ts.map +1 -0
  306. package/build/constants/cliTimeouts.js +4 -0
  307. package/build/constants/cliTimeouts.js.map +1 -0
  308. package/build/constants/mcp.d.ts +1 -1
  309. package/build/constants/mcp.d.ts.map +1 -1
  310. package/build/constants/mcp.js +1 -1
  311. package/build/constants/mcp.js.map +1 -1
  312. package/build/core/capabilities/capabilityCatalog.d.ts +7 -0
  313. package/build/core/capabilities/capabilityCatalog.d.ts.map +1 -1
  314. package/build/core/capabilities/capabilityCatalog.js +58 -2
  315. package/build/core/capabilities/capabilityCatalog.js.map +1 -1
  316. package/build/core/capabilities/capabilityPagination.d.ts +12 -4
  317. package/build/core/capabilities/capabilityPagination.d.ts.map +1 -1
  318. package/build/core/capabilities/capabilityPagination.js +15 -2
  319. package/build/core/capabilities/capabilityPagination.js.map +1 -1
  320. package/build/core/capabilities/capabilityVisibility.d.ts +3 -0
  321. package/build/core/capabilities/capabilityVisibility.d.ts.map +1 -1
  322. package/build/core/capabilities/capabilityVisibility.js.map +1 -1
  323. package/build/core/capabilities/lazyLoadingOrchestrator.d.ts +4 -1
  324. package/build/core/capabilities/lazyLoadingOrchestrator.d.ts.map +1 -1
  325. package/build/core/capabilities/lazyLoadingOrchestrator.js +6 -2
  326. package/build/core/capabilities/lazyLoadingOrchestrator.js.map +1 -1
  327. package/build/core/capabilities/metaToolProvider.d.ts +2 -2
  328. package/build/core/capabilities/metaToolProvider.d.ts.map +1 -1
  329. package/build/core/capabilities/metaToolProvider.js +2 -2
  330. package/build/core/capabilities/metaToolProvider.js.map +1 -1
  331. package/build/core/capabilities/runtimeCapabilityCatalog.d.ts +1 -0
  332. package/build/core/capabilities/runtimeCapabilityCatalog.d.ts.map +1 -1
  333. package/build/core/capabilities/runtimeCapabilityCatalog.js +33 -9
  334. package/build/core/capabilities/runtimeCapabilityCatalog.js.map +1 -1
  335. package/build/core/context/projectOwner.d.ts +16 -0
  336. package/build/core/context/projectOwner.d.ts.map +1 -0
  337. package/build/core/context/projectOwner.js +33 -0
  338. package/build/core/context/projectOwner.js.map +1 -0
  339. package/build/core/context/projectPreparationAuthority.d.ts +37 -0
  340. package/build/core/context/projectPreparationAuthority.d.ts.map +1 -0
  341. package/build/core/context/projectPreparationAuthority.js +113 -0
  342. package/build/core/context/projectPreparationAuthority.js.map +1 -0
  343. package/build/core/instructions/inspectionGuidance.d.ts +2 -0
  344. package/build/core/instructions/inspectionGuidance.d.ts.map +1 -0
  345. package/build/core/instructions/inspectionGuidance.js +2 -0
  346. package/build/core/instructions/inspectionGuidance.js.map +1 -0
  347. package/build/core/instructions/instructionAggregator.d.ts +1 -0
  348. package/build/core/instructions/instructionAggregator.d.ts.map +1 -1
  349. package/build/core/instructions/instructionAggregator.js +2 -2
  350. package/build/core/instructions/instructionAggregator.js.map +1 -1
  351. package/build/core/instructions/instructionsDistribution.d.ts +5 -0
  352. package/build/core/instructions/instructionsDistribution.d.ts.map +1 -1
  353. package/build/core/instructions/instructionsDistribution.js +72 -15
  354. package/build/core/instructions/instructionsDistribution.js.map +1 -1
  355. package/build/core/instructions/preparationGuidance.d.ts +3 -0
  356. package/build/core/instructions/preparationGuidance.d.ts.map +1 -0
  357. package/build/core/instructions/preparationGuidance.js +14 -0
  358. package/build/core/instructions/preparationGuidance.js.map +1 -0
  359. package/build/core/instructions/sessionGuidance.d.ts +3 -0
  360. package/build/core/instructions/sessionGuidance.d.ts.map +1 -0
  361. package/build/core/instructions/sessionGuidance.js +25 -0
  362. package/build/core/instructions/sessionGuidance.js.map +1 -0
  363. package/build/core/instructions/templateTypes.d.ts +3 -1
  364. package/build/core/instructions/templateTypes.d.ts.map +1 -1
  365. package/build/core/instructions/templateTypes.js +15 -5
  366. package/build/core/instructions/templateTypes.js.map +1 -1
  367. package/build/core/protocol/requestHandlerUtils.d.ts.map +1 -1
  368. package/build/core/protocol/requestHandlerUtils.js +23 -4
  369. package/build/core/protocol/requestHandlerUtils.js.map +1 -1
  370. package/build/core/server/connectionResolver.d.ts +5 -0
  371. package/build/core/server/connectionResolver.d.ts.map +1 -1
  372. package/build/core/server/connectionResolver.js +11 -0
  373. package/build/core/server/connectionResolver.js.map +1 -1
  374. package/build/core/server/runtimeLaunchIpc.d.ts +186 -15
  375. package/build/core/server/runtimeLaunchIpc.d.ts.map +1 -1
  376. package/build/core/server/runtimeReplacementConfig.d.ts +186 -15
  377. package/build/core/server/runtimeReplacementConfig.d.ts.map +1 -1
  378. package/build/core/tools/handlers/serverManagementHandler.d.ts +436 -16
  379. package/build/core/tools/handlers/serverManagementHandler.d.ts.map +1 -1
  380. package/build/core/tools/internal/adapters/helpers/configTransformers.d.ts +63 -3
  381. package/build/core/tools/internal/adapters/helpers/configTransformers.d.ts.map +1 -1
  382. package/build/core/tools/internal/schemas/discovery.d.ts +3 -3
  383. package/build/core/tools/internal/schemas/edit.d.ts +5 -6
  384. package/build/core/tools/internal/schemas/edit.d.ts.map +1 -1
  385. package/build/core/tools/internal/schemas/edit.js +2 -10
  386. package/build/core/tools/internal/schemas/edit.js.map +1 -1
  387. package/build/core/tools/internal/schemas/index.d.ts +18 -13
  388. package/build/core/tools/internal/schemas/index.d.ts.map +1 -1
  389. package/build/core/tools/internal/schemas/installation.d.ts +1 -1
  390. package/build/core/tools/internal/schemas/management.d.ts +9 -9
  391. package/build/core/types/server.d.ts +7 -1
  392. package/build/core/types/server.d.ts.map +1 -1
  393. package/build/core/types/transport.d.ts +285 -27
  394. package/build/core/types/transport.d.ts.map +1 -1
  395. package/build/core/types/transport.js +40 -0
  396. package/build/core/types/transport.js.map +1 -1
  397. package/build/domains/admin/adminConfiguredServerService.d.ts.map +1 -1
  398. package/build/domains/admin/adminConfiguredServerService.js +30 -14
  399. package/build/domains/admin/adminConfiguredServerService.js.map +1 -1
  400. package/build/domains/admin/adminInstructionPreviewRuntime.d.ts.map +1 -1
  401. package/build/domains/admin/adminInstructionPreviewRuntime.js +4 -1
  402. package/build/domains/admin/adminInstructionPreviewRuntime.js.map +1 -1
  403. package/build/domains/admin/adminOperationService.d.ts +1 -0
  404. package/build/domains/admin/adminOperationService.d.ts.map +1 -1
  405. package/build/domains/admin/adminOperationService.js +38 -0
  406. package/build/domains/admin/adminOperationService.js.map +1 -1
  407. package/build/domains/backend-preparation/adapterRegistry.d.ts +8 -0
  408. package/build/domains/backend-preparation/adapterRegistry.d.ts.map +1 -0
  409. package/build/domains/backend-preparation/adapterRegistry.js +15 -0
  410. package/build/domains/backend-preparation/adapterRegistry.js.map +1 -0
  411. package/build/domains/backend-preparation/builtInIntegrationDefinitions.d.ts +4 -0
  412. package/build/domains/backend-preparation/builtInIntegrationDefinitions.d.ts.map +1 -0
  413. package/build/domains/backend-preparation/builtInIntegrationDefinitions.js +3 -0
  414. package/build/domains/backend-preparation/builtInIntegrationDefinitions.js.map +1 -0
  415. package/build/domains/backend-preparation/configuredCommandAdapter.d.ts +88 -0
  416. package/build/domains/backend-preparation/configuredCommandAdapter.d.ts.map +1 -0
  417. package/build/domains/backend-preparation/configuredCommandAdapter.js +196 -0
  418. package/build/domains/backend-preparation/configuredCommandAdapter.js.map +1 -0
  419. package/build/domains/backend-preparation/configuredCommandProcess.d.ts +27 -0
  420. package/build/domains/backend-preparation/configuredCommandProcess.d.ts.map +1 -0
  421. package/build/domains/backend-preparation/configuredCommandProcess.js +183 -0
  422. package/build/domains/backend-preparation/configuredCommandProcess.js.map +1 -0
  423. package/build/domains/backend-preparation/contracts.d.ts +131 -0
  424. package/build/domains/backend-preparation/contracts.d.ts.map +1 -0
  425. package/build/domains/backend-preparation/contracts.js +2 -0
  426. package/build/domains/backend-preparation/contracts.js.map +1 -0
  427. package/build/domains/backend-preparation/integrationDefinitions.d.ts +171 -0
  428. package/build/domains/backend-preparation/integrationDefinitions.d.ts.map +1 -0
  429. package/build/domains/backend-preparation/integrationDefinitions.js +246 -0
  430. package/build/domains/backend-preparation/integrationDefinitions.js.map +1 -0
  431. package/build/domains/backend-preparation/policy.d.ts +50 -0
  432. package/build/domains/backend-preparation/policy.d.ts.map +1 -0
  433. package/build/domains/backend-preparation/policy.js +58 -0
  434. package/build/domains/backend-preparation/policy.js.map +1 -0
  435. package/build/domains/backend-preparation/scheduler.d.ts +18 -0
  436. package/build/domains/backend-preparation/scheduler.d.ts.map +1 -0
  437. package/build/domains/backend-preparation/scheduler.js +62 -0
  438. package/build/domains/backend-preparation/scheduler.js.map +1 -0
  439. package/build/domains/backend-preparation/service.d.ts +67 -0
  440. package/build/domains/backend-preparation/service.d.ts.map +1 -0
  441. package/build/domains/backend-preparation/service.js +709 -0
  442. package/build/domains/backend-preparation/service.js.map +1 -0
  443. package/build/domains/config-change/configChange.js +5 -5
  444. package/build/domains/config-change/configChange.js.map +1 -1
  445. package/build/domains/installation/knownServerCatalog.d.ts +14 -0
  446. package/build/domains/installation/knownServerCatalog.d.ts.map +1 -0
  447. package/build/domains/installation/knownServerCatalog.js +56 -0
  448. package/build/domains/installation/knownServerCatalog.js.map +1 -0
  449. package/build/domains/installation/knownServerSetup.d.ts +21 -0
  450. package/build/domains/installation/knownServerSetup.d.ts.map +1 -0
  451. package/build/domains/installation/knownServerSetup.js +330 -0
  452. package/build/domains/installation/knownServerSetup.js.map +1 -0
  453. package/build/domains/installation/knownServerSetupTypes.d.ts +34 -0
  454. package/build/domains/installation/knownServerSetupTypes.d.ts.map +1 -0
  455. package/build/domains/installation/knownServerSetupTypes.js +2 -0
  456. package/build/domains/installation/knownServerSetupTypes.js.map +1 -0
  457. package/build/domains/installation/serverInstallationSourceResolution.js +1 -0
  458. package/build/domains/installation/serverInstallationSourceResolution.js.map +1 -1
  459. package/build/domains/installation/serverInstallationTypes.d.ts +1 -0
  460. package/build/domains/installation/serverInstallationTypes.d.ts.map +1 -1
  461. package/build/domains/preset/services/presetErrorHandler.d.ts.map +1 -1
  462. package/build/domains/preset/services/presetErrorHandler.js +3 -2
  463. package/build/domains/preset/services/presetErrorHandler.js.map +1 -1
  464. package/build/domains/project-selection/projectBindingScope.d.ts +7 -0
  465. package/build/domains/project-selection/projectBindingScope.d.ts.map +1 -0
  466. package/build/domains/project-selection/projectBindingScope.js +9 -0
  467. package/build/domains/project-selection/projectBindingScope.js.map +1 -0
  468. package/build/domains/project-selection/projectPolicy.d.ts +11 -0
  469. package/build/domains/project-selection/projectPolicy.d.ts.map +1 -0
  470. package/build/domains/project-selection/projectPolicy.js +104 -0
  471. package/build/domains/project-selection/projectPolicy.js.map +1 -0
  472. package/build/domains/project-selection/projectSelection.d.ts +30 -0
  473. package/build/domains/project-selection/projectSelection.d.ts.map +1 -0
  474. package/build/domains/project-selection/projectSelection.js +124 -0
  475. package/build/domains/project-selection/projectSelection.js.map +1 -0
  476. package/build/globalOptions.d.ts +33 -11
  477. package/build/globalOptions.d.ts.map +1 -1
  478. package/build/globalOptions.js +61 -0
  479. package/build/globalOptions.js.map +1 -1
  480. package/build/observability/events/registry.d.ts +7 -1
  481. package/build/observability/events/registry.d.ts.map +1 -1
  482. package/build/observability/events/registry.js +7 -1
  483. package/build/observability/events/registry.js.map +1 -1
  484. package/build/productTelemetry/commandScope.d.ts +8 -0
  485. package/build/productTelemetry/commandScope.d.ts.map +1 -0
  486. package/build/productTelemetry/commandScope.js +50 -0
  487. package/build/productTelemetry/commandScope.js.map +1 -0
  488. package/build/productTelemetry/contract.d.ts +136 -0
  489. package/build/productTelemetry/contract.d.ts.map +1 -0
  490. package/build/productTelemetry/contract.js +103 -0
  491. package/build/productTelemetry/contract.js.map +1 -0
  492. package/build/productTelemetry/delivery.d.ts +8 -0
  493. package/build/productTelemetry/delivery.d.ts.map +1 -0
  494. package/build/productTelemetry/delivery.js +142 -0
  495. package/build/productTelemetry/delivery.js.map +1 -0
  496. package/build/productTelemetry/index.d.ts +15 -0
  497. package/build/productTelemetry/index.d.ts.map +1 -0
  498. package/build/productTelemetry/index.js +118 -0
  499. package/build/productTelemetry/index.js.map +1 -0
  500. package/build/productTelemetry/installationStore.d.ts +117 -0
  501. package/build/productTelemetry/installationStore.d.ts.map +1 -0
  502. package/build/productTelemetry/installationStore.js +400 -0
  503. package/build/productTelemetry/installationStore.js.map +1 -0
  504. package/build/productTelemetry/notice.d.ts +3 -0
  505. package/build/productTelemetry/notice.d.ts.map +1 -0
  506. package/build/productTelemetry/notice.js +13 -0
  507. package/build/productTelemetry/notice.js.map +1 -0
  508. package/build/productTelemetry/operation.d.ts +9 -0
  509. package/build/productTelemetry/operation.d.ts.map +1 -0
  510. package/build/productTelemetry/operation.js +51 -0
  511. package/build/productTelemetry/operation.js.map +1 -0
  512. package/build/productTelemetry/permissions.d.ts +8 -0
  513. package/build/productTelemetry/permissions.d.ts.map +1 -0
  514. package/build/productTelemetry/permissions.js +10 -0
  515. package/build/productTelemetry/permissions.js.map +1 -0
  516. package/build/productTelemetry/policy.d.ts +12 -0
  517. package/build/productTelemetry/policy.d.ts.map +1 -0
  518. package/build/productTelemetry/policy.js +31 -0
  519. package/build/productTelemetry/policy.js.map +1 -0
  520. package/build/productTelemetry/producer.d.ts +51 -0
  521. package/build/productTelemetry/producer.d.ts.map +1 -0
  522. package/build/productTelemetry/producer.js +214 -0
  523. package/build/productTelemetry/producer.js.map +1 -0
  524. package/build/sdk/legacy/auth/sdkOAuthClientProvider.d.ts +2 -0
  525. package/build/sdk/legacy/auth/sdkOAuthClientProvider.d.ts.map +1 -1
  526. package/build/sdk/legacy/auth/sdkOAuthClientProvider.js +30 -8
  527. package/build/sdk/legacy/auth/sdkOAuthClientProvider.js.map +1 -1
  528. package/build/sdk/legacy/client/runtime/backendDispatchLifetime.d.ts.map +1 -1
  529. package/build/sdk/legacy/client/runtime/backendDispatchLifetime.js +8 -2
  530. package/build/sdk/legacy/client/runtime/backendDispatchLifetime.js.map +1 -1
  531. package/build/sdk/legacy/client/runtime/legacyTransport.d.ts +2 -0
  532. package/build/sdk/legacy/client/runtime/legacyTransport.d.ts.map +1 -1
  533. package/build/sdk/legacy/client/runtime/serveClient.d.ts +6 -1
  534. package/build/sdk/legacy/client/runtime/serveClient.d.ts.map +1 -1
  535. package/build/sdk/legacy/client/runtime/serveClient.js +16 -5
  536. package/build/sdk/legacy/client/runtime/serveClient.js.map +1 -1
  537. package/build/sdk/legacy/commands/serve.d.ts +1 -0
  538. package/build/sdk/legacy/commands/serve.d.ts.map +1 -1
  539. package/build/sdk/legacy/commands/serve.js +41 -6
  540. package/build/sdk/legacy/commands/serve.js.map +1 -1
  541. package/build/sdk/legacy/server/protocol/projectAdmission.d.ts +4 -0
  542. package/build/sdk/legacy/server/protocol/projectAdmission.d.ts.map +1 -0
  543. package/build/sdk/legacy/server/protocol/projectAdmission.js +24 -0
  544. package/build/sdk/legacy/server/protocol/projectAdmission.js.map +1 -0
  545. package/build/sdk/legacy/server/protocol/promptRequestHandlers.d.ts.map +1 -1
  546. package/build/sdk/legacy/server/protocol/promptRequestHandlers.js +6 -3
  547. package/build/sdk/legacy/server/protocol/promptRequestHandlers.js.map +1 -1
  548. package/build/sdk/legacy/server/protocol/resourceRequestHandlers.d.ts.map +1 -1
  549. package/build/sdk/legacy/server/protocol/resourceRequestHandlers.js +6 -4
  550. package/build/sdk/legacy/server/protocol/resourceRequestHandlers.js.map +1 -1
  551. package/build/sdk/legacy/server/protocol/resourceSubscriptions.d.ts +1 -1
  552. package/build/sdk/legacy/server/protocol/resourceSubscriptions.d.ts.map +1 -1
  553. package/build/sdk/legacy/server/protocol/resourceSubscriptions.js +193 -41
  554. package/build/sdk/legacy/server/protocol/resourceSubscriptions.js.map +1 -1
  555. package/build/sdk/legacy/server/protocol/toolRequestHandlers.d.ts.map +1 -1
  556. package/build/sdk/legacy/server/protocol/toolRequestHandlers.js +93 -17
  557. package/build/sdk/legacy/server/protocol/toolRequestHandlers.js.map +1 -1
  558. package/build/sdk/legacy/server/runtime/clientInstancePool.d.ts +12 -0
  559. package/build/sdk/legacy/server/runtime/clientInstancePool.d.ts.map +1 -1
  560. package/build/sdk/legacy/server/runtime/clientInstancePool.js +117 -4
  561. package/build/sdk/legacy/server/runtime/clientInstancePool.js.map +1 -1
  562. package/build/sdk/legacy/server/runtime/connectionManager.d.ts.map +1 -1
  563. package/build/sdk/legacy/server/runtime/connectionManager.js +3 -1
  564. package/build/sdk/legacy/server/runtime/connectionManager.js.map +1 -1
  565. package/build/sdk/legacy/server/runtime/legacySdkServerAdapter.d.ts +3 -1
  566. package/build/sdk/legacy/server/runtime/legacySdkServerAdapter.d.ts.map +1 -1
  567. package/build/sdk/legacy/server/runtime/legacySdkServerAdapter.js +52 -2
  568. package/build/sdk/legacy/server/runtime/legacySdkServerAdapter.js.map +1 -1
  569. package/build/sdk/legacy/server/runtime/requestContextPreparation.d.ts +19 -1
  570. package/build/sdk/legacy/server/runtime/requestContextPreparation.d.ts.map +1 -1
  571. package/build/sdk/legacy/server/runtime/requestContextPreparation.js +40 -7
  572. package/build/sdk/legacy/server/runtime/requestContextPreparation.js.map +1 -1
  573. package/build/sdk/legacy/server/runtime/serverManager.d.ts +6 -2
  574. package/build/sdk/legacy/server/runtime/serverManager.d.ts.map +1 -1
  575. package/build/sdk/legacy/server/runtime/serverManager.js +85 -17
  576. package/build/sdk/legacy/server/runtime/serverManager.js.map +1 -1
  577. package/build/sdk/legacy/server/runtime/templateServerManager.d.ts +26 -4
  578. package/build/sdk/legacy/server/runtime/templateServerManager.d.ts.map +1 -1
  579. package/build/sdk/legacy/server/runtime/templateServerManager.js +260 -14
  580. package/build/sdk/legacy/server/runtime/templateServerManager.js.map +1 -1
  581. package/build/sdk/legacy/transport/http/modernInboundLegacyBridge.js +1 -1
  582. package/build/sdk/legacy/transport/http/modernInboundLegacyBridge.js.map +1 -1
  583. package/build/sdk/legacy/transport/http/server.d.ts +1 -1
  584. package/build/sdk/legacy/transport/http/server.d.ts.map +1 -1
  585. package/build/sdk/legacy/transport/http/server.js +5 -1
  586. package/build/sdk/legacy/transport/http/server.js.map +1 -1
  587. package/build/sdk/legacy/transport/http/streamableSessionLifecycle.d.ts.map +1 -1
  588. package/build/sdk/legacy/transport/http/streamableSessionLifecycle.js +14 -3
  589. package/build/sdk/legacy/transport/http/streamableSessionLifecycle.js.map +1 -1
  590. package/build/sdk/legacy/transport/stdioProxyTransport.d.ts +1 -0
  591. package/build/sdk/legacy/transport/stdioProxyTransport.d.ts.map +1 -1
  592. package/build/sdk/legacy/transport/stdioProxyTransport.js +2 -0
  593. package/build/sdk/legacy/transport/stdioProxyTransport.js.map +1 -1
  594. package/build/sdk/legacy/transport/transportFactory.d.ts.map +1 -1
  595. package/build/sdk/legacy/transport/transportFactory.js +2 -0
  596. package/build/sdk/legacy/transport/transportFactory.js.map +1 -1
  597. package/build/template/handlebarsTemplateRenderer.d.ts.map +1 -1
  598. package/build/template/handlebarsTemplateRenderer.js +3 -0
  599. package/build/template/handlebarsTemplateRenderer.js.map +1 -1
  600. package/build/transport/http/middlewares/projectAdmission.d.ts +5 -0
  601. package/build/transport/http/middlewares/projectAdmission.d.ts.map +1 -0
  602. package/build/transport/http/middlewares/projectAdmission.js +33 -0
  603. package/build/transport/http/middlewares/projectAdmission.js.map +1 -0
  604. package/build/transport/http/routes/adminRoutes.d.ts.map +1 -1
  605. package/build/transport/http/routes/adminRoutes.js +2 -0
  606. package/build/transport/http/routes/adminRoutes.js.map +1 -1
  607. package/build/transport/http/routes/apiRoutes.d.ts.map +1 -1
  608. package/build/transport/http/routes/apiRoutes.js +4 -0
  609. package/build/transport/http/routes/apiRoutes.js.map +1 -1
  610. package/build/transport/http/routes/inspectHelpers.d.ts +1 -0
  611. package/build/transport/http/routes/inspectHelpers.d.ts.map +1 -1
  612. package/build/transport/http/routes/inspectHelpers.js +2 -0
  613. package/build/transport/http/routes/inspectHelpers.js.map +1 -1
  614. package/build/transport/http/routes/inspectRequestContext.d.ts +5 -2
  615. package/build/transport/http/routes/inspectRequestContext.d.ts.map +1 -1
  616. package/build/transport/http/routes/inspectRequestContext.js +41 -19
  617. package/build/transport/http/routes/inspectRequestContext.js.map +1 -1
  618. package/build/transport/http/routes/inspectRoutes.d.ts +13 -2
  619. package/build/transport/http/routes/inspectRoutes.d.ts.map +1 -1
  620. package/build/transport/http/routes/inspectRoutes.js +119 -25
  621. package/build/transport/http/routes/inspectRoutes.js.map +1 -1
  622. package/build/transport/http/routes/instructionsRoutes.d.ts.map +1 -1
  623. package/build/transport/http/routes/instructionsRoutes.js +20 -8
  624. package/build/transport/http/routes/instructionsRoutes.js.map +1 -1
  625. package/build/transport/http/routes/modernHttpRoutes.d.ts.map +1 -1
  626. package/build/transport/http/routes/modernHttpRoutes.js +99 -15
  627. package/build/transport/http/routes/modernHttpRoutes.js.map +1 -1
  628. package/build/transport/http/routes/modernInteractionBinding.d.ts.map +1 -1
  629. package/build/transport/http/routes/modernInteractionBinding.js +3 -9
  630. package/build/transport/http/routes/modernInteractionBinding.js.map +1 -1
  631. package/build/transport/http/routes/modernProductTelemetry.d.ts +4 -0
  632. package/build/transport/http/routes/modernProductTelemetry.d.ts.map +1 -0
  633. package/build/transport/http/routes/modernProductTelemetry.js +65 -0
  634. package/build/transport/http/routes/modernProductTelemetry.js.map +1 -0
  635. package/build/transport/http/routes/modernSubscriptions.d.ts.map +1 -1
  636. package/build/transport/http/routes/modernSubscriptions.js +35 -17
  637. package/build/transport/http/routes/modernSubscriptions.js.map +1 -1
  638. package/build/transport/http/routes/modernTemplateContext.d.ts +2 -1
  639. package/build/transport/http/routes/modernTemplateContext.d.ts.map +1 -1
  640. package/build/transport/http/routes/modernTemplateContext.js +14 -3
  641. package/build/transport/http/routes/modernTemplateContext.js.map +1 -1
  642. package/build/transport/http/routes/modernToolHeaderRegistry.d.ts.map +1 -1
  643. package/build/transport/http/routes/modernToolHeaderRegistry.js +2 -2
  644. package/build/transport/http/routes/modernToolHeaderRegistry.js.map +1 -1
  645. package/build/transport/http/routes/preparationRoutes.d.ts +26 -0
  646. package/build/transport/http/routes/preparationRoutes.d.ts.map +1 -0
  647. package/build/transport/http/routes/preparationRoutes.js +132 -0
  648. package/build/transport/http/routes/preparationRoutes.js.map +1 -0
  649. package/build/transport/http/routes/projectRoutes.d.ts +18 -0
  650. package/build/transport/http/routes/projectRoutes.d.ts.map +1 -0
  651. package/build/transport/http/routes/projectRoutes.js +159 -0
  652. package/build/transport/http/routes/projectRoutes.js.map +1 -0
  653. package/build/transport/http/routes/streamableHttpRoutes.d.ts.map +1 -1
  654. package/build/transport/http/routes/streamableHttpRoutes.js +24 -4
  655. package/build/transport/http/routes/streamableHttpRoutes.js.map +1 -1
  656. package/build/transport/http/routes/toolRoutes.d.ts.map +1 -1
  657. package/build/transport/http/routes/toolRoutes.js +163 -20
  658. package/build/transport/http/routes/toolRoutes.js.map +1 -1
  659. package/build/transport/http/utils/contextExtractor.d.ts +2 -0
  660. package/build/transport/http/utils/contextExtractor.d.ts.map +1 -1
  661. package/build/transport/http/utils/contextExtractor.js +11 -0
  662. package/build/transport/http/utils/contextExtractor.js.map +1 -1
  663. package/build/transport/http/utils/templateContextAuthority.d.ts +2 -0
  664. package/build/transport/http/utils/templateContextAuthority.d.ts.map +1 -1
  665. package/build/transport/http/utils/templateContextAuthority.js +23 -2
  666. package/build/transport/http/utils/templateContextAuthority.js.map +1 -1
  667. package/build/types/context.d.ts +13 -0
  668. package/build/types/context.d.ts.map +1 -1
  669. package/build/types/context.js.map +1 -1
  670. package/build/utils/cli/help.d.ts +7 -0
  671. package/build/utils/cli/help.d.ts.map +1 -0
  672. package/build/utils/cli/help.js +57 -0
  673. package/build/utils/cli/help.js.map +1 -0
  674. package/build/utils/security/privateFileSystem.d.ts +12 -0
  675. package/build/utils/security/privateFileSystem.d.ts.map +1 -0
  676. package/build/utils/security/privateFileSystem.js +114 -0
  677. package/build/utils/security/privateFileSystem.js.map +1 -0
  678. package/package.json +24 -24
  679. package/build/admin/assets/admin-console-DQaCpfYK.js +0 -3
  680. package/build/admin/assets/admin-icons-CYGTDZA5.js +0 -1
  681. package/build/admin/assets/admin-vendor-62eL-qdH.js +0 -1
  682. package/build/admin/assets/admin-vendor-BbMrl7MK.js +0 -3
  683. package/build/admin/assets/admin-vendor-DpjVwd81.js +0 -62
@@ -10,12 +10,14 @@ import { projectResourceUri, resolveResourceRoute } from '../../shared/resourceT
10
10
  import { ListResourcesRequestSchema, ListResourceTemplatesRequestSchema, ReadResourceRequestSchema, SubscribeRequestSchema, UnsubscribeRequestSchema, } from '../../types.js';
11
11
  import { withErrorHandling } from '../../../../utils/core/errorHandling.js';
12
12
  import { withPrivateInteractionConnection } from './privateInteractionConnection.js';
13
+ import { withInboundProjectAdmission } from './projectAdmission.js';
13
14
  import { withProviderRequestProgress } from './requestProviderProgress.js';
14
15
  import { bindOwnedCatalogConnections, bindOwnedNotificationAuthorization, subscribeOwnedResource, unsubscribeOwnedResource, } from './resourceSubscriptions.js';
15
16
  export function registerResourceHandlers(outboundConns, inboundConn) {
17
+ const handle = (work, message) => withErrorHandling(withInboundProjectAdmission(inboundConn, work), message);
16
18
  const acquire = (cursor, kind = 'resources') => acquireRuntimeCapabilityCatalog(outboundConns, resolveCapabilityVisibility(outboundConns, inboundConn, getRequestSession(inboundConn), 'resources'), { continuation: cursor ? { kind, cursor, enablePagination: inboundConn.enablePagination ?? false } : undefined });
17
19
  const server = getLegacyInboundServer(inboundConn);
18
- server.setRequestHandler(ListResourcesRequestSchema, withErrorHandling(async (request, extra) => {
20
+ server.setRequestHandler(ListResourcesRequestSchema, handle(async (request, extra) => {
19
21
  bindOwnedCatalogConnections(outboundConns, inboundConn, 'resources');
20
22
  if (extra?.authInfo)
21
23
  bindOwnedNotificationAuthorization(outboundConns, inboundConn, () => revalidateLegacyRequestAuthInfo(extra.authInfo));
@@ -31,7 +33,7 @@ export function registerResourceHandlers(outboundConns, inboundConn) {
31
33
  ...(result._meta === undefined ? {} : { _meta: result._meta }),
32
34
  };
33
35
  }, 'Error listing resources'));
34
- server.setRequestHandler(ListResourceTemplatesRequestSchema, withErrorHandling(async (request, extra) => {
36
+ server.setRequestHandler(ListResourceTemplatesRequestSchema, handle(async (request, extra) => {
35
37
  bindOwnedCatalogConnections(outboundConns, inboundConn, 'resources');
36
38
  if (extra?.authInfo)
37
39
  bindOwnedNotificationAuthorization(outboundConns, inboundConn, () => revalidateLegacyRequestAuthInfo(extra.authInfo));
@@ -47,7 +49,7 @@ export function registerResourceHandlers(outboundConns, inboundConn) {
47
49
  ...(result._meta === undefined ? {} : { _meta: result._meta }),
48
50
  };
49
51
  }, 'Error listing resource templates'));
50
- server.setRequestHandler(SubscribeRequestSchema, withErrorHandling(async (request, extra) => {
52
+ server.setRequestHandler(SubscribeRequestSchema, handle(async (request, extra) => {
51
53
  await subscribeOwnedResource(outboundConns, inboundConn, request.params.uri, extra.signal, extra.authInfo ? () => revalidateLegacyRequestAuthInfo(extra.authInfo) : undefined);
52
54
  return {};
53
55
  }, 'Error subscribing to resource'));
@@ -55,7 +57,7 @@ export function registerResourceHandlers(outboundConns, inboundConn) {
55
57
  await unsubscribeOwnedResource(inboundConn, request.params.uri);
56
58
  return {};
57
59
  }, 'Error unsubscribing from resource'));
58
- server.setRequestHandler(ReadResourceRequestSchema, withErrorHandling(async (request, extra) => {
60
+ server.setRequestHandler(ReadResourceRequestSchema, handle(async (request, extra) => {
59
61
  const snapshot = await acquire();
60
62
  const route = resolveResourceRoute(snapshot, request.params.uri);
61
63
  const assertResourceCurrent = () => {
@@ -1 +1 @@
1
- {"version":3,"file":"resourceRequestHandlers.js","sourceRoot":"","sources":["../../../../../src/sdk/legacy/server/protocol/resourceRequestHandlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resourceRequestHandlers.js","sourceRoot":"","sources":["../../../../../src/sdk/legacy/server/protocol/resourceRequestHandlers.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,7 @@ export declare function requireOwnedNotificationAuthorization(connections: Legac
16
16
  /** Bind the admitted request grant before allowing unsolicited catalog delivery. */
17
17
  export declare function bindOwnedNotificationAuthorization(connections: LegacyOutboundConnections, inbound: InboundConnection, authorize: () => Promise<boolean>): void;
18
18
  /** Only the exact source/kind whose coverage belongs to this owner may enqueue a catalog event. */
19
- export declare function enqueueOwnedCatalogNotification(connections: LegacyOutboundConnections, inbound: InboundConnection, connection: LegacyOutboundConnection, notification: Update): void;
19
+ export declare function enqueueOwnedCatalogNotification(connections: LegacyOutboundConnections, inbound: InboundConnection, connection: LegacyOutboundConnection, notification: Update, origin?: 'runtime-preparation'): void;
20
20
  /** Catalog invalidation remains synchronous upstream; recipient delivery never blocks its peers. */
21
21
  export declare function enqueueOwnedNotification(connections: LegacyOutboundConnections, inbound: InboundConnection, notification: Update, isCurrent?: () => boolean): void;
22
22
  export declare function subscribeOwnedResource(connections: LegacyOutboundConnections, inbound: InboundConnection, uri: string, signal?: AbortSignal, authorize?: () => Promise<boolean>): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"resourceSubscriptions.d.ts","sourceRoot":"","sources":["../../../../../src/sdk/legacy/server/protocol/resourceSubscriptions.ts"],"names":[],"mappings":"AAMA,OAAO,EAAgB,KAAK,iBAAiB,EAAgB,MAAM,0BAA0B,CAAC;AAG9F,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAG/B,MAAM,4DAA4D,CAAC;AAsBpE,UAAU,MAAM;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AA6FD,wBAAgB,+BAA+B,CAAC,UAAU,EAAE,wBAAwB,GAAG,IAAI,CAyB1F;AA+DD,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAcrF;AAsHD,0FAA0F;AAC1F,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC3B,IAAI,CAMN;AAuFD,yHAAyH;AACzH,wBAAgB,8BAA8B,CAC5C,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,EAC1B,UAAU,EAAE,wBAAwB,EACpC,IAAI,EAAE,OAAO,GAAG,WAAW,GAAG,SAAS,GACtC,IAAI,CAmCN;AAED,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,OAAO,GAAG,WAAW,GAAG,SAAS,GACtC,IAAI,CAEN;AAED,oGAAoG;AACpG,wBAAgB,qCAAqC,CACnD,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,GACzB,IAAI,CAEN;AAED,oFAAoF;AACpF,wBAAgB,kCAAkC,CAChD,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,EAC1B,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAChC,IAAI,CAKN;AAED,mGAAmG;AACnG,wBAAgB,+BAA+B,CAC7C,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,EAC1B,UAAU,EAAE,wBAAwB,EACpC,YAAY,EAAE,MAAM,GACnB,IAAI,CAgBN;AAED,oGAAoG;AACpG,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,EAC1B,YAAY,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,MAAM,OAAO,GACxB,IAAI,CAiBN;AAED,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,EAC1B,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,WAAW,EACpB,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GACjC,OAAO,CAAC,IAAI,CAAC,CAkIf;AAED,wBAAsB,wBAAwB,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAGrG;AAED,sFAAsF;AACtF,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAM3G;AAqCD,oFAAoF;AACpF,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,wBAAwB,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAOlG"}
1
+ {"version":3,"file":"resourceSubscriptions.d.ts","sourceRoot":"","sources":["../../../../../src/sdk/legacy/server/protocol/resourceSubscriptions.ts"],"names":[],"mappings":"AAcA,OAAO,EAAgB,KAAK,iBAAiB,EAAgB,MAAM,0BAA0B,CAAC;AAQ9F,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAG/B,MAAM,4DAA4D,CAAC;AAuBpE,UAAU,MAAM;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAoGD,wBAAgB,+BAA+B,CAAC,UAAU,EAAE,wBAAwB,GAAG,IAAI,CAyB1F;AAwED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAMrF;AAkMD,0FAA0F;AAC1F,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,EAC1B,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAC3B,IAAI,CAMN;AA2GD,yHAAyH;AACzH,wBAAgB,8BAA8B,CAC5C,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,EAC1B,UAAU,EAAE,wBAAwB,EACpC,IAAI,EAAE,OAAO,GAAG,WAAW,GAAG,SAAS,GACtC,IAAI,CAgEN;AAED,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,EAC1B,IAAI,EAAE,OAAO,GAAG,WAAW,GAAG,SAAS,GACtC,IAAI,CAEN;AAED,oGAAoG;AACpG,wBAAgB,qCAAqC,CACnD,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,GACzB,IAAI,CAEN;AAED,oFAAoF;AACpF,wBAAgB,kCAAkC,CAChD,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,EAC1B,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAChC,IAAI,CAKN;AAED,mGAAmG;AACnG,wBAAgB,+BAA+B,CAC7C,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,EAC1B,UAAU,EAAE,wBAAwB,EACpC,YAAY,EAAE,MAAM,EACpB,MAAM,CAAC,EAAE,qBAAqB,GAC7B,IAAI,CAsBN;AAED,oGAAoG;AACpG,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,EAC1B,YAAY,EAAE,MAAM,EACpB,SAAS,CAAC,EAAE,MAAM,OAAO,GACxB,IAAI,CAIN;AAyBD,wBAAsB,sBAAsB,CAC1C,WAAW,EAAE,yBAAyB,EACtC,OAAO,EAAE,iBAAiB,EAC1B,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,WAAW,EACpB,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GACjC,OAAO,CAAC,IAAI,CAAC,CAuIf;AAED,wBAAsB,wBAAwB,CAAC,OAAO,EAAE,iBAAiB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMrG;AAED,sFAAsF;AACtF,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,wBAAwB,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAM3G;AAqCD,oFAAoF;AACpF,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,wBAAwB,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAOlG"}
@@ -1,7 +1,14 @@
1
+ import { getProjectLifecycle, projectPaths } from '../../../../application/projectLifecycle.js';
2
+ import { getConfiguredServerTargets } from '../../../../config/configuredServerTargets.js';
3
+ import { registerCapabilityPaginationNotifications } from '../../../../core/capabilities/capabilityPagination.js';
1
4
  import { acquireRuntimeCapabilityCatalog, } from '../../../../core/capabilities/runtimeCapabilityCatalog.js';
5
+ import { getProjectPreparationAuthorityIdentity, validateProjectPreparationAuthority, } from '../../../../core/context/projectPreparationAuthority.js';
2
6
  import { getRequestSession, resolveCapabilityVisibility } from '../../../../core/protocol/requestHandlerUtils.js';
3
7
  import { AgentConfigManager } from '../../../../core/server/agentConfig.js';
8
+ import { ServerManager } from '../../../../core/server/serverManager.js';
4
9
  import { ClientStatus, ServerStatus } from '../../../../core/types/index.js';
10
+ import { PreparationConfigurationError, validatePreparationConfig, } from '../../../../domains/backend-preparation/integrationDefinitions.js';
11
+ import { getProjectBinding, withProjectBinding } from '../../../../domains/project-selection/projectBindingScope.js';
5
12
  import logger from '../../../../logger/logger.js';
6
13
  import { toJsonValue } from '../../../contracts/index.js';
7
14
  import { requestLegacyOutbound, setOutboundNotificationHandler, } from '../../client/runtime/legacyOutboundConnection.js';
@@ -52,9 +59,13 @@ function countUnconfirmedUpstreamWatches() {
52
59
  return count;
53
60
  }
54
61
  async function acquireOwnerCatalog(owner) {
55
- const visibility = resolveCapabilityVisibility(owner.connections, owner.inbound, getRequestSession(owner.inbound), 'resources');
62
+ const visibility = ownerVisibility(owner, 'resources');
56
63
  return acquireRuntimeCapabilityCatalog(owner.connections, visibility, { signal: owner.abort.signal });
57
64
  }
65
+ function ownerVisibility(owner, kind) {
66
+ const resolve = () => resolveCapabilityVisibility(owner.connections, owner.inbound, owner.bindingId, kind);
67
+ return owner.binding ? withProjectBinding(owner.binding.bindingId, owner.binding.context, resolve) : resolve();
68
+ }
58
69
  async function resolve(owner, uri, snapshot) {
59
70
  snapshot ??= await acquireOwnerCatalog(owner);
60
71
  return resolveResourceRoute(snapshot, uri);
@@ -98,15 +109,25 @@ function removeReservation(watch) {
98
109
  }
99
110
  }
100
111
  async function detach(watch) {
112
+ if (watch.teardown)
113
+ return watch.teardown;
114
+ watch.owner.teardowns.add(watch);
101
115
  removeReservation(watch);
102
116
  watch.abort.abort();
103
- try {
104
- await closeUpstreamWatch(watch);
105
- }
106
- catch (error) {
107
- logger.warn('resourceSubscriptions.resource.subscription.cleanup.incomplete.0640deca', { error: error });
108
- throw error;
109
- }
117
+ watch.teardown = (async () => {
118
+ try {
119
+ await closeUpstreamWatch(watch);
120
+ watch.owner.teardowns.delete(watch);
121
+ releaseIdleProjectSubscription(watch.owner);
122
+ }
123
+ catch (error) {
124
+ watch.cleanupFailed = true;
125
+ monitorOwner(watch.owner);
126
+ logger.warn('resourceSubscriptions.resource.subscription.cleanup.incomplete.0640deca', { error: error });
127
+ throw error;
128
+ }
129
+ })();
130
+ return watch.teardown;
110
131
  }
111
132
  async function closeUpstreamWatch(watch) {
112
133
  if (watch.modern) {
@@ -155,21 +176,31 @@ function releaseUpstreamWatch(upstream, operation) {
155
176
  removeUpstreamRecord(upstream);
156
177
  }
157
178
  export async function cleanupOwnedResources(inbound) {
158
- const owner = owners.get(inbound);
179
+ const all = owners.get(inbound);
180
+ owners.delete(inbound);
181
+ const results = await Promise.allSettled(Array.from(all?.values() ?? [], cleanupOwner));
182
+ if (results.some((result) => result.status === 'rejected'))
183
+ throw new Error('Resource subscription cleanup incomplete');
184
+ }
185
+ async function cleanupOwner(owner) {
159
186
  if (!owner || owner.closed)
160
187
  return;
161
188
  owner.closed = true;
162
189
  ownerCount--;
163
190
  owner.abort.abort();
164
191
  clearInterval(owner.monitor);
192
+ owner.monitor = undefined;
165
193
  for (const { connection } of owner.catalogs.values())
166
194
  catalogOwners.get(connection)?.delete(owner);
167
195
  owner.catalogs.clear();
168
196
  const results = await Promise.allSettled(Array.from(owner.watches.values(), detach));
169
197
  const failedWatches = results.filter((result) => result.status === 'rejected').length;
198
+ if (owner.teardowns.size)
199
+ monitorOwner(owner);
170
200
  if (failedWatches) {
171
201
  throw new Error('Resource subscription cleanup incomplete');
172
202
  }
203
+ releaseIdleProjectSubscription(owner);
173
204
  }
174
205
  function terminate(owner) {
175
206
  if (owner.closed)
@@ -189,15 +220,23 @@ function loseWatchCoverage(watch) {
189
220
  void detach(watch).catch(() => undefined);
190
221
  }
191
222
  function getOwner(connections, inbound) {
192
- let owner = owners.get(inbound);
223
+ const bindingId = getRequestSession(inbound);
224
+ let byBinding = owners.get(inbound);
225
+ if (!byBinding)
226
+ owners.set(inbound, (byBinding = new Map()));
227
+ let owner = byBinding.get(bindingId ?? '');
193
228
  if (!owner) {
229
+ const existingOwner = byBinding.values().next().value;
194
230
  if (ownerCount >= MAX_PROCESS_WATCHES)
195
231
  throw new Error('Subscription owner admission limit exceeded');
196
232
  ownerCount++;
197
233
  owner = {
198
234
  inbound,
235
+ bindingId,
236
+ binding: getProjectBinding() ?? (bindingId ? { bindingId } : undefined),
199
237
  connections,
200
238
  watches: new Map(),
239
+ teardowns: new Set(),
201
240
  catalogs: new Map(),
202
241
  catalogKinds: new Set(),
203
242
  abort: new AbortController(),
@@ -207,11 +246,22 @@ function getOwner(connections, inbound) {
207
246
  bytes: 0,
208
247
  delivery: Promise.resolve(),
209
248
  checking: false,
249
+ requiresAuthorization: existingOwner?.requiresAuthorization,
250
+ authorize: existingOwner?.authorize,
210
251
  };
211
- owners.set(inbound, owner);
252
+ byBinding.set(bindingId ?? '', owner);
212
253
  }
213
254
  return owner;
214
255
  }
256
+ function retainProjectSubscription(owner) {
257
+ owner.releaseProjectSubscription ??= getProjectLifecycle()?.block(projectPaths(owner.binding?.context ?? owner.inbound.context), 'subscription', owner.bindingId ?? 'legacy');
258
+ }
259
+ function releaseIdleProjectSubscription(owner) {
260
+ if (owner.watches.size || owner.catalogs.size || owner.setups || owner.pending || owner.teardowns.size)
261
+ return;
262
+ owner.releaseProjectSubscription?.();
263
+ owner.releaseProjectSubscription = undefined;
264
+ }
215
265
  async function assertWatchCurrent(watch, snapshot) {
216
266
  if (!watch.active || watch.owner.closed)
217
267
  return;
@@ -234,6 +284,38 @@ function supportsListChanged(connection, kind) {
234
284
  return false;
235
285
  return capability.listChanged === true;
236
286
  }
287
+ /** Runtime-generated preparation changes require a current verified binding and configured adapter. */
288
+ function preparationCatalogIdentity(connection, bindingId) {
289
+ if (!bindingId)
290
+ return undefined;
291
+ const definition = getConfiguredServerTargets()[connection.name];
292
+ let preparation;
293
+ try {
294
+ preparation = definition?.preparation ? validatePreparationConfig(definition.preparation) : undefined;
295
+ }
296
+ catch (error) {
297
+ if (error instanceof PreparationConfigurationError)
298
+ return undefined;
299
+ throw error;
300
+ }
301
+ if (definition?.disabled ||
302
+ preparation?.adapter !== 'configured-command' ||
303
+ !preparation.integration ||
304
+ !preparation.allowedActions.length)
305
+ return undefined;
306
+ const manager = ServerManager.current.getTemplateServerManager();
307
+ const context = manager.getBindingContext?.(bindingId);
308
+ const authority = manager.getBindingAuthority?.(bindingId);
309
+ if (!context?.sessionId ||
310
+ !authority ||
311
+ !validateProjectPreparationAuthority(authority, { bindingId, context, ownerSessionId: context.sessionId }))
312
+ return undefined;
313
+ return JSON.stringify({
314
+ definition,
315
+ effectiveRevision: preparation.effectiveRevision,
316
+ authority: getProjectPreparationAuthorityIdentity(authority, context),
317
+ });
318
+ }
237
319
  async function assertCatalogCurrent(owner) {
238
320
  if (owner.inbound.subscriptionListKinds === undefined) {
239
321
  await refreshOrdinaryCatalog(owner);
@@ -252,9 +334,13 @@ function isCatalogSourceCurrent(owner, source) {
252
334
  return false;
253
335
  if (current.status !== ClientStatus.Connected)
254
336
  return false;
255
- if (!supportsListChanged(current, source.kind))
337
+ if (source.preparationIdentity) {
338
+ if (preparationCatalogIdentity(current, owner.bindingId) !== source.preparationIdentity)
339
+ return false;
340
+ }
341
+ else if (!supportsListChanged(current, source.kind))
256
342
  return false;
257
- const visibility = resolveCapabilityVisibility(owner.connections, owner.inbound, getRequestSession(owner.inbound), source.kind);
343
+ const visibility = ownerVisibility(owner, source.kind);
258
344
  return visibility.serverCandidates.has(source.connectionKey);
259
345
  }
260
346
  /** Ordinary clients follow the current catalog; an explicit modern filter pins its sources. */
@@ -272,9 +358,10 @@ async function refreshOrdinaryCatalog(owner) {
272
358
  if (connection.status !== ClientStatus.Connected)
273
359
  continue;
274
360
  for (const kind of owner.catalogKinds) {
275
- if (!supportsListChanged(connection, kind))
361
+ if (!supportsListChanged(connection, kind) &&
362
+ !(kind === 'tools' && preparationCatalogIdentity(connection, owner.bindingId)))
276
363
  continue;
277
- const visibility = resolveCapabilityVisibility(owner.connections, owner.inbound, getRequestSession(owner.inbound), kind);
364
+ const visibility = ownerVisibility(owner, kind);
278
365
  if (!visibility.serverCandidates.has(key))
279
366
  continue;
280
367
  if (!owner.catalogs.has(`${key}\0${kind}`))
@@ -283,10 +370,16 @@ async function refreshOrdinaryCatalog(owner) {
283
370
  }
284
371
  if (!changed)
285
372
  return;
286
- if (owner.refreshCatalog)
287
- await owner.refreshCatalog();
288
- for (const kind of owner.catalogKinds)
289
- bindOwnedCatalogConnections(owner.connections, owner.inbound, kind);
373
+ const bind = async () => {
374
+ if (owner.refreshCatalog)
375
+ await owner.refreshCatalog();
376
+ for (const kind of owner.catalogKinds)
377
+ bindOwnedCatalogConnections(owner.connections, owner.inbound, kind);
378
+ };
379
+ if (owner.binding)
380
+ await withProjectBinding(owner.binding.bindingId, owner.binding.context, bind);
381
+ else
382
+ await bind();
290
383
  }
291
384
  /** Install generation-aware forwarding again after ordinary catalog ownership changes. */
292
385
  export function bindOwnedCatalogRefresh(connections, inbound, refresh) {
@@ -302,6 +395,20 @@ function monitorOwner(owner) {
302
395
  if (owner.monitor)
303
396
  return;
304
397
  owner.monitor = setInterval(() => {
398
+ // Failed cleanup remains owned even after the inbound connection is gone.
399
+ for (const watch of owner.teardowns) {
400
+ if (!watch.cleanupFailed || watch.adapter?.state !== 'stopped')
401
+ continue;
402
+ owner.teardowns.delete(watch);
403
+ }
404
+ releaseClosedUpstreamReservations();
405
+ releaseIdleProjectSubscription(owner);
406
+ if (!owner.teardowns.size &&
407
+ (owner.closed || (!owner.watches.size && !owner.authorize && !owner.catalogKinds.size))) {
408
+ clearInterval(owner.monitor);
409
+ owner.monitor = undefined;
410
+ return;
411
+ }
305
412
  if (owner.closed || owner.checking)
306
413
  return;
307
414
  owner.checking = true;
@@ -368,6 +475,7 @@ function enqueue(owner, bytes, delivery) {
368
475
  terminate(owner);
369
476
  return;
370
477
  }
478
+ retainProjectSubscription(owner);
371
479
  owner.pending++;
372
480
  pendingUpdates++;
373
481
  pendingBytes += bytes;
@@ -384,6 +492,10 @@ function enqueue(owner, bytes, delivery) {
384
492
  await assertCatalogCurrent(owner);
385
493
  if (owner.closed)
386
494
  return;
495
+ if (owner.inbound.status !== ServerStatus.Connected)
496
+ throw new Error('Subscription owner disconnected');
497
+ // Authorization may await a provider while this binding or preparation grant is revoked.
498
+ await assertCatalogCurrent(owner);
387
499
  await delivery();
388
500
  });
389
501
  })
@@ -393,6 +505,7 @@ function enqueue(owner, bytes, delivery) {
393
505
  pendingUpdates--;
394
506
  pendingBytes -= bytes;
395
507
  owner.bytes -= bytes;
508
+ releaseIdleProjectSubscription(owner);
396
509
  });
397
510
  }
398
511
  /** Legacy inbound connections implicitly receive supported catalog changes; private modern bridges pin their filters. */
@@ -404,7 +517,9 @@ export function registerOwnedCatalogConnection(connections, inbound, connection,
404
517
  return;
405
518
  if (selected && !selected.includes(kind))
406
519
  return;
407
- if (!supportsListChanged(connection, kind))
520
+ const nativeChanges = supportsListChanged(connection, kind);
521
+ const preparationIdentity = kind === 'tools' && !nativeChanges ? preparationCatalogIdentity(connection, getRequestSession(inbound)) : undefined;
522
+ if (!nativeChanges && !preparationIdentity)
408
523
  return;
409
524
  const key = Array.from(connections).find(([, candidate]) => candidate === connection)?.[0];
410
525
  if (key === undefined)
@@ -432,11 +547,26 @@ export function registerOwnedCatalogConnection(connections, inbound, connection,
432
547
  terminate(owner);
433
548
  throw new Error('Catalog subscription source limit exceeded');
434
549
  }
435
- owner.catalogs.set(coverageKey, { connection, adapter: connection.adapter, connectionKey: key, kind });
550
+ retainProjectSubscription(owner);
551
+ owner.catalogs.set(coverageKey, {
552
+ connection,
553
+ adapter: connection.adapter,
554
+ connectionKey: key,
555
+ kind,
556
+ ...(preparationIdentity ? { preparationIdentity } : {}),
557
+ });
436
558
  let listeners = catalogOwners.get(connection);
437
559
  if (!listeners)
438
560
  catalogOwners.set(connection, (listeners = new Set()));
439
561
  listeners.add(owner);
562
+ registerCapabilityPaginationNotifications(connections, connection, inbound, async (notification) => {
563
+ enqueueOwnedCatalogNotification(connections, inbound, connection, {
564
+ method: notification.method,
565
+ params: { ...notification.params, server: connection.name },
566
+ }, notification.origin);
567
+ },
568
+ // A native-only initial forwarder cannot tag synthetic changes for this source.
569
+ preparationIdentity ? undefined : { preserveExisting: true });
440
570
  setupOwnedResourceNotifications(connection);
441
571
  monitorOwner(owner);
442
572
  }
@@ -457,27 +587,39 @@ export function bindOwnedNotificationAuthorization(connections, inbound, authori
457
587
  monitorOwner(owner);
458
588
  }
459
589
  /** Only the exact source/kind whose coverage belongs to this owner may enqueue a catalog event. */
460
- export function enqueueOwnedCatalogNotification(connections, inbound, connection, notification) {
461
- const owner = owners.get(inbound);
462
- if (!owner || owner.closed)
463
- return;
590
+ export function enqueueOwnedCatalogNotification(connections, inbound, connection, notification, origin) {
464
591
  const kind = notification.method.split('/')[1];
465
- const covered = Array.from(owner.catalogs.values()).some((source) => source.connection === connection && source.adapter === connection.adapter && source.kind === kind);
466
- if (!covered)
467
- return;
468
- const adapter = connection.adapter;
469
- enqueueOwnedNotification(connections, inbound, notification, () => {
470
- if (connection.adapter !== adapter)
471
- return false;
472
- if (connection.status !== ClientStatus.Connected)
473
- return false;
474
- return Array.from(owner.catalogs.values()).some((source) => source.connection === connection && source.adapter === adapter && source.kind === kind);
475
- });
592
+ for (const owner of owners.get(inbound)?.values() ?? []) {
593
+ if (owner.closed)
594
+ continue;
595
+ if (!allowsOwnedNotification(owner.inbound, notification))
596
+ continue;
597
+ const covered = Array.from(owner.catalogs.values()).some((source) => source.connection === connection &&
598
+ source.adapter === connection.adapter &&
599
+ source.kind === kind &&
600
+ (!source.preparationIdentity || origin === 'runtime-preparation'));
601
+ if (!covered)
602
+ continue;
603
+ const adapter = connection.adapter;
604
+ enqueueOwnerNotification(owner, notification, () => {
605
+ if (connection.adapter !== adapter)
606
+ return false;
607
+ if (connection.status !== ClientStatus.Connected)
608
+ return false;
609
+ return Array.from(owner.catalogs.values()).some((source) => source.connection === connection && source.adapter === adapter && source.kind === kind);
610
+ });
611
+ }
476
612
  }
477
613
  /** Catalog invalidation remains synchronous upstream; recipient delivery never blocks its peers. */
478
614
  export function enqueueOwnedNotification(connections, inbound, notification, isCurrent) {
479
- if (inbound.requestOnly)
615
+ if (!allowsOwnedNotification(inbound, notification))
480
616
  return;
617
+ const owner = getOwner(connections, inbound);
618
+ enqueueOwnerNotification(owner, notification, isCurrent);
619
+ }
620
+ function allowsOwnedNotification(inbound, notification) {
621
+ if (inbound.requestOnly)
622
+ return false;
481
623
  const kinds = {
482
624
  'notifications/tools/list_changed': 'tools',
483
625
  'notifications/resources/list_changed': 'resources',
@@ -485,16 +627,20 @@ export function enqueueOwnedNotification(connections, inbound, notification, isC
485
627
  };
486
628
  const kind = kinds[notification.method];
487
629
  if (kind && !AgentConfigManager.getInstance().get('features').clientNotifications)
488
- return;
630
+ return false;
489
631
  if (kind && inbound.subscriptionListKinds && !inbound.subscriptionListKinds.includes(kind))
632
+ return false;
633
+ return true;
634
+ }
635
+ function enqueueOwnerNotification(owner, notification, isCurrent) {
636
+ if (!allowsOwnedNotification(owner.inbound, notification))
490
637
  return;
491
- const owner = getOwner(connections, inbound);
492
638
  const encoded = JSON.stringify(notification);
493
639
  const snapshot = structuredClone(notification);
494
640
  enqueue(owner, Buffer.byteLength(encoded), async () => {
495
641
  if (isCurrent && !isCurrent())
496
642
  return;
497
- await inbound.adapter.notify({ method: snapshot.method, params: toJsonValue(snapshot.params ?? {}) });
643
+ await owner.inbound.adapter.notify({ method: snapshot.method, params: toJsonValue(snapshot.params ?? {}) });
498
644
  });
499
645
  }
500
646
  export async function subscribeOwnedResource(connections, inbound, uri, signal, authorize) {
@@ -551,6 +697,8 @@ export async function subscribeOwnedResource(connections, inbound, uri, signal,
551
697
  setupCount >= MAX_PROCESS_WATCHES) {
552
698
  throw new Error('Resource subscription admission limit exceeded');
553
699
  }
700
+ getProjectLifecycle()?.assertAdmission(projectPaths(owner.binding?.context ?? inbound.context));
701
+ retainProjectSubscription(owner);
554
702
  const watch = { owner, uri, abort: new AbortController(), active: true, ready: Promise.resolve(), authorize };
555
703
  owner.watches.set(uri, watch);
556
704
  watchCount++;
@@ -635,12 +783,16 @@ export async function subscribeOwnedResource(connections, inbound, uri, signal,
635
783
  signal?.removeEventListener('abort', cancel);
636
784
  setupCount--;
637
785
  owner.setups--;
786
+ releaseIdleProjectSubscription(owner);
638
787
  }
639
788
  })();
640
789
  return watch.ready;
641
790
  }
642
791
  export async function unsubscribeOwnedResource(inbound, uri) {
643
- const watch = owners.get(inbound)?.watches.get(uri);
792
+ const watch = owners
793
+ .get(inbound)
794
+ ?.get(getRequestSession(inbound) ?? '')
795
+ ?.watches.get(uri);
644
796
  if (watch)
645
797
  await detach(watch);
646
798
  }