@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
@@ -0,0 +1,578 @@
1
+ import { createHash, randomBytes } from 'node:crypto';
2
+ import { link, lstat, mkdir, open, readdir, rename, rmdir, unlink, writeFile } from 'node:fs/promises';
3
+ import path from 'node:path';
4
+ import { setTimeout } from 'node:timers/promises';
5
+ import { inspectProcessIdentity, processIdentitySchema, readProcessIdentity, } from '../../core/server/processIdentity.js';
6
+ import { projectSetSchema } from '../../domains/project-selection/projectSelection.js';
7
+ import { credentialReadFlags, hasSafeCredentialPermissions } from '../../utils/filePermissions.js';
8
+ import { z } from 'zod';
9
+ const credentialSchema = z.object({ version: z.literal(1), token: z.string().regex(/^[a-f0-9]{64}$/) }).strict();
10
+ const targetSchema = z
11
+ .object({
12
+ project: z.array(z.string().refine(path.isAbsolute)).min(1).max(32),
13
+ 'project-set': z.string().refine(path.isAbsolute).optional(),
14
+ 'config-dir': z.string().refine(path.isAbsolute),
15
+ runtimeScopeId: z.string().min(1),
16
+ config: z.string().refine(path.isAbsolute).optional(),
17
+ context: z.string().optional(),
18
+ url: z.string().url().optional(),
19
+ })
20
+ .strict()
21
+ .refine((target) => target.project.length === 1 || Boolean(target['project-set']), {
22
+ message: 'Native-set cleanup requires an immutable selection snapshot',
23
+ });
24
+ export function hookProjectOwnerPath(storageDirectory, identity) {
25
+ if (!identity.sessionId || identity.agentId === '')
26
+ throw new Error('Missing hook owner identity');
27
+ const key = createHash('sha256')
28
+ .update(JSON.stringify([
29
+ identity.client,
30
+ identity.sessionId,
31
+ identity.agentId ?? null,
32
+ ...(identity.generation ? [identity.generation] : []),
33
+ ]))
34
+ .digest('hex');
35
+ return path.resolve(storageDirectory, 'project-owners', `${key}.json`);
36
+ }
37
+ /** A host identifier locates a private credential; it is never itself runtime authority. */
38
+ export async function createHookProjectOwner(storageDirectory, identity) {
39
+ const file = hookProjectOwnerPath(storageDirectory, identity);
40
+ const directory = path.dirname(file);
41
+ await mkdir(directory, { recursive: true, mode: 0o700 });
42
+ await assertPrivateDirectory(directory);
43
+ await publishPrivateRecord(file, JSON.stringify({ version: 1, token: randomBytes(32).toString('hex') }));
44
+ await readProjectOwner(file);
45
+ return file;
46
+ }
47
+ export async function readProjectOwner(file) {
48
+ if (!path.isAbsolute(file))
49
+ throw new Error('Project owner credential must be an absolute path');
50
+ await assertPrivateDirectory(path.dirname(file));
51
+ const handle = await open(file, credentialReadFlags(), 0o600);
52
+ try {
53
+ const info = await handle.stat();
54
+ if (!info.isFile() || !hasSafeCredentialPermissions(info, 0o077)) {
55
+ throw new Error('Project owner credential must be a private owner-only file');
56
+ }
57
+ if (info.size > 4096)
58
+ throw new Error('Invalid project owner credential');
59
+ return credentialSchema.parse(JSON.parse(await handle.readFile('utf8'))).token;
60
+ }
61
+ finally {
62
+ await handle.close();
63
+ }
64
+ }
65
+ export function projectOwnerId(token) {
66
+ const bytes = createHash('sha256').update(token).digest();
67
+ bytes[6] = (bytes[6] & 0x0f) | 0x40;
68
+ bytes[8] = (bytes[8] & 0x3f) | 0x80;
69
+ const hex = bytes.subarray(0, 16).toString('hex');
70
+ return `${hex.slice(0, 8)}-${hex.slice(8, 12)}-${hex.slice(12, 16)}-${hex.slice(16, 20)}-${hex.slice(20)}`;
71
+ }
72
+ export async function recordProjectOwnerTarget(ownerFile, input) {
73
+ await withProjectOwnerLock(ownerFile, async () => {
74
+ await assertOwnerActive(ownerFile);
75
+ await recordProjectOwnerTargetUnlocked(ownerFile, input);
76
+ });
77
+ }
78
+ async function recordProjectOwnerTargetUnlocked(ownerFile, input) {
79
+ await readProjectOwner(ownerFile);
80
+ const target = targetSchema.parse(input);
81
+ const directory = `${ownerFile}.targets`;
82
+ await mkdir(directory, { recursive: true, mode: 0o700 });
83
+ await assertPrivateDirectory(directory);
84
+ const content = JSON.stringify(target);
85
+ const file = path.join(directory, `${createHash('sha256').update(content).digest('hex')}.json`);
86
+ await publishPrivateRecord(file, content);
87
+ }
88
+ /** Snapshot only the canonical selected members, independent of the original definition file. */
89
+ async function recordProjectOwnerSelectionUnlocked(ownerFile, target, projects) {
90
+ await readProjectOwner(ownerFile);
91
+ const selection = projectSetSchema.parse({ projects, selection: projects.map((project) => project.label) });
92
+ const directory = `${ownerFile}.targets`;
93
+ await mkdir(directory, { recursive: true, mode: 0o700 });
94
+ await assertPrivateDirectory(directory);
95
+ const content = JSON.stringify(selection);
96
+ const snapshot = path.join(directory, `${createHash('sha256').update(content).digest('hex')}.selection.json`);
97
+ await publishPrivateRecord(snapshot, content);
98
+ await recordProjectOwnerTargetUnlocked(ownerFile, {
99
+ ...target,
100
+ project: projects.map((project) => project.path),
101
+ 'project-set': snapshot,
102
+ });
103
+ }
104
+ export async function readProjectOwnerTargets(ownerFile) {
105
+ await readProjectOwner(ownerFile);
106
+ const directory = `${ownerFile}.targets`;
107
+ let names;
108
+ try {
109
+ await assertPrivateDirectory(directory);
110
+ names = await readdir(directory);
111
+ }
112
+ catch (error) {
113
+ if (error instanceof Error && 'code' in error && error.code === 'ENOENT')
114
+ return [];
115
+ throw error;
116
+ }
117
+ const targets = [];
118
+ for (const name of names.filter((entry) => /^[a-f0-9]{64}\.json$/.test(entry)).sort()) {
119
+ const handle = await open(path.join(directory, name), credentialReadFlags(), 0o600);
120
+ try {
121
+ const info = await handle.stat();
122
+ if (!info.isFile() || info.size > 16384 || !hasSafeCredentialPermissions(info, 0o077))
123
+ throw new Error('Invalid project owner target');
124
+ targets.push(targetSchema.parse(JSON.parse(await handle.readFile('utf8'))));
125
+ }
126
+ finally {
127
+ await handle.close();
128
+ }
129
+ }
130
+ return targets;
131
+ }
132
+ async function assertPrivateDirectory(directory) {
133
+ const info = await lstat(directory);
134
+ if (!info.isDirectory() || info.isSymbolicLink() || !hasSafeCredentialPermissions(info, 0o077)) {
135
+ throw new Error('Project owner credentials require a private owner-only directory');
136
+ }
137
+ }
138
+ /** Publish complete records without replacing a concurrent hook's credential or target. */
139
+ async function publishPrivateRecord(file, content) {
140
+ const temporary = `${file}.${randomBytes(12).toString('hex')}.tmp`;
141
+ try {
142
+ const handle = await open(temporary, 'wx', 0o600);
143
+ try {
144
+ await handle.writeFile(content);
145
+ }
146
+ finally {
147
+ await handle.close();
148
+ }
149
+ await link(temporary, file);
150
+ }
151
+ catch (error) {
152
+ if (!(error instanceof Error && 'code' in error && error.code === 'EEXIST'))
153
+ throw error;
154
+ }
155
+ finally {
156
+ await unlink(temporary).catch((error) => {
157
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
158
+ throw error;
159
+ });
160
+ }
161
+ }
162
+ /** Only verified terminal hooks may call this. Unknown files keep recovery state intact. */
163
+ export async function removeProjectOwner(ownerFile) {
164
+ const ended = await readProjectOwnerTerminal(ownerFile);
165
+ if (!ended?.released)
166
+ throw new Error('Terminal cleanup requires persisted release proof');
167
+ await assertNoProjectOwnerCalls(ownerFile);
168
+ try {
169
+ await readProjectOwner(ownerFile);
170
+ }
171
+ catch (error) {
172
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
173
+ throw error;
174
+ }
175
+ const directory = `${ownerFile}.targets`;
176
+ let names = [];
177
+ try {
178
+ await assertPrivateDirectory(directory);
179
+ names = await readdir(directory);
180
+ }
181
+ catch (error) {
182
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
183
+ throw error;
184
+ }
185
+ if (names.some((name) => !/^[a-f0-9]{64}(\.selection)?\.json$/.test(name))) {
186
+ throw new Error('Unrecognized owner records; terminal cleanup requires inspection');
187
+ }
188
+ for (const name of names)
189
+ await unlink(path.join(directory, name));
190
+ await rmdir(directory).catch((error) => {
191
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
192
+ throw error;
193
+ });
194
+ await assertNoProjectOwnerCalls(ownerFile);
195
+ await rmdir(`${ownerFile}.calls`).catch((error) => {
196
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
197
+ throw error;
198
+ });
199
+ for (const suffix of ['.assignment.json', '.worker']) {
200
+ await unlink(`${ownerFile}${suffix}`).catch((error) => {
201
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
202
+ throw error;
203
+ });
204
+ }
205
+ const removeTerminal = async () => {
206
+ if (ended.identity) {
207
+ const storage = path.dirname(path.dirname(ownerFile));
208
+ const thread = ended.identity.agentId ?? ended.identity.sessionId;
209
+ const locator = await readHookThreadLocatorRecord(storage, ended.identity.client, thread);
210
+ if (locator?.ownerFile === ownerFile)
211
+ await unlink(hookThreadLocatorPath(storage, ended.identity.client, thread));
212
+ }
213
+ for (const file of [ownerFile, `${ownerFile}.ended`]) {
214
+ await unlink(file).catch((error) => {
215
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
216
+ throw error;
217
+ });
218
+ }
219
+ };
220
+ if (ended.identity) {
221
+ await withHookIdentityLock(path.dirname(path.dirname(ownerFile)), ended.identity, removeTerminal);
222
+ }
223
+ else {
224
+ await removeTerminal();
225
+ }
226
+ }
227
+ const assignmentSchema = z
228
+ .object({
229
+ version: z.literal(1),
230
+ worker: z.boolean(),
231
+ project: z.array(z.string().min(1)).min(1).max(32).optional(),
232
+ 'project-set': z.string().refine(path.isAbsolute).optional(),
233
+ })
234
+ .strict()
235
+ .refine((value) => Boolean(value['project-set']) ||
236
+ !value.project ||
237
+ (value.project.length === 1 && path.isAbsolute(value.project[0])), 'Worker assignment must name one absolute checkout or a project set');
238
+ export async function recordProjectOwnerAssignment(ownerFile, assignment) {
239
+ await withProjectOwnerLock(ownerFile, async () => {
240
+ await assertOwnerActive(ownerFile);
241
+ await recordProjectOwnerAssignmentUnlocked(ownerFile, assignment);
242
+ });
243
+ }
244
+ async function recordProjectOwnerAssignmentUnlocked(ownerFile, assignment) {
245
+ await readProjectOwner(ownerFile);
246
+ // An unresolved startup can be followed by the worker's explicit dispatch assignment.
247
+ // Do not publish a default until dispatch actually provides it.
248
+ if (!assignment.project && !assignment['project-set']) {
249
+ if (assignment.worker)
250
+ await publishPrivateRecord(`${ownerFile}.worker`, '{}');
251
+ return;
252
+ }
253
+ if (assignment.worker)
254
+ await publishPrivateRecord(`${ownerFile}.worker`, '{}');
255
+ const content = JSON.stringify(assignmentSchema.parse(assignment));
256
+ await publishPrivateRecord(`${ownerFile}.assignment.json`, content);
257
+ const existing = await readProjectOwnerAssignment(ownerFile);
258
+ if (assignment.worker && JSON.stringify(existing) !== content)
259
+ throw new Error('Worker assignment already exists; use a per-call --project override');
260
+ }
261
+ export async function readProjectOwnerAssignment(ownerFile) {
262
+ await readProjectOwner(ownerFile);
263
+ try {
264
+ const handle = await open(`${ownerFile}.assignment.json`, credentialReadFlags(), 0o600);
265
+ try {
266
+ const info = await handle.stat();
267
+ if (!info.isFile() || info.size > 65536 || !hasSafeCredentialPermissions(info, 0o077))
268
+ throw new Error('Invalid worker assignment');
269
+ return assignmentSchema.parse(JSON.parse(await handle.readFile('utf8')));
270
+ }
271
+ finally {
272
+ await handle.close();
273
+ }
274
+ }
275
+ catch (error) {
276
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
277
+ throw error;
278
+ }
279
+ try {
280
+ const info = await lstat(`${ownerFile}.worker`);
281
+ if (!info.isFile() || info.isSymbolicLink() || !hasSafeCredentialPermissions(info, 0o077))
282
+ throw new Error('Invalid worker marker');
283
+ return { version: 1, worker: true };
284
+ }
285
+ catch (error) {
286
+ if (error instanceof Error && 'code' in error && error.code === 'ENOENT')
287
+ return undefined;
288
+ throw error;
289
+ }
290
+ }
291
+ export async function recordProjectOwnerSelection(ownerFile, target, projects) {
292
+ await withProjectOwnerLock(ownerFile, async () => {
293
+ await assertOwnerActive(ownerFile);
294
+ await recordProjectOwnerSelectionUnlocked(ownerFile, target, projects);
295
+ });
296
+ }
297
+ /** A stale lock is retained for inspection, never cleared by age or process guesses. */
298
+ export async function withProjectOwnerLock(ownerFile, action, options = {}) {
299
+ await assertPrivateDirectory(path.dirname(ownerFile));
300
+ const lock = `${ownerFile}.lock`;
301
+ const deadline = Date.now() + (options.waitMs ?? 5000);
302
+ for (;;) {
303
+ try {
304
+ await mkdir(lock, { mode: 0o700 });
305
+ break;
306
+ }
307
+ catch (error) {
308
+ if (!(error instanceof Error && 'code' in error && error.code === 'EEXIST'))
309
+ throw error;
310
+ if (Date.now() >= deadline)
311
+ throw new Error('Owner state is busy or has an abandoned lock; inspect before recovery');
312
+ await setTimeout(25);
313
+ }
314
+ }
315
+ try {
316
+ return await action();
317
+ }
318
+ finally {
319
+ await rmdir(lock);
320
+ }
321
+ }
322
+ export async function markProjectOwnerEnded(ownerFile, identity) {
323
+ await readProjectOwner(ownerFile);
324
+ await publishPrivateRecord(`${ownerFile}.ended`, JSON.stringify({ version: 1, ...(identity ? { identity } : {}) }));
325
+ }
326
+ export async function readProjectOwnerTerminal(ownerFile) {
327
+ if (!path.isAbsolute(ownerFile))
328
+ throw new Error('Owner path must be absolute');
329
+ await assertPrivateDirectory(path.dirname(ownerFile));
330
+ try {
331
+ const handle = await open(`${ownerFile}.ended`, credentialReadFlags(), 0o600);
332
+ try {
333
+ const info = await handle.stat();
334
+ if (!info.isFile() || info.size > 16384 || !hasSafeCredentialPermissions(info, 0o077))
335
+ throw new Error('Invalid terminal owner record');
336
+ return terminalOwnerSchema.parse(JSON.parse(await handle.readFile('utf8')));
337
+ }
338
+ finally {
339
+ await handle.close();
340
+ }
341
+ }
342
+ catch (error) {
343
+ if (error instanceof Error && 'code' in error && error.code === 'ENOENT')
344
+ return undefined;
345
+ throw error;
346
+ }
347
+ }
348
+ export async function isProjectOwnerEnded(ownerFile) {
349
+ return Boolean(await readProjectOwnerTerminal(ownerFile));
350
+ }
351
+ /** Persist successful runtime release before deleting any retry state. Caller holds the owner lock. */
352
+ export async function markProjectOwnerReleased(ownerFile) {
353
+ const terminal = await readProjectOwnerTerminal(ownerFile);
354
+ if (!terminal)
355
+ throw new Error('Verified terminal record required');
356
+ const temporary = `${ownerFile}.${randomBytes(12).toString('hex')}.tmp`;
357
+ try {
358
+ await writeFile(temporary, JSON.stringify({ ...terminal, released: true }), { flag: 'wx', mode: 0o600 });
359
+ await rename(temporary, `${ownerFile}.ended`);
360
+ }
361
+ finally {
362
+ await unlink(temporary).catch((error) => {
363
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
364
+ throw error;
365
+ });
366
+ }
367
+ }
368
+ export async function assertProjectOwnerAbsent(ownerFile, identity) {
369
+ const names = ['.targets', '.assignment.json', '.worker', '.calls', '.ended'].map((suffix) => `${ownerFile}${suffix}`);
370
+ names.push(hookThreadLocatorPath(path.dirname(path.dirname(ownerFile)), identity.client, identity.agentId ?? identity.sessionId));
371
+ for (const file of names) {
372
+ try {
373
+ await lstat(file);
374
+ }
375
+ catch (error) {
376
+ if (error instanceof Error && 'code' in error && error.code === 'ENOENT')
377
+ continue;
378
+ throw error;
379
+ }
380
+ throw new Error('Owner credential is missing but recovery records remain; inspect uncertain cleanup');
381
+ }
382
+ }
383
+ async function assertOwnerActive(ownerFile) {
384
+ if (await isProjectOwnerEnded(ownerFile))
385
+ throw new Error('Session has ended; use project recover to retry recorded cleanup');
386
+ }
387
+ const hookOwnerIdentitySchema = z
388
+ .object({
389
+ client: z.enum(['codex', 'claude']),
390
+ sessionId: z.string().min(1).max(512),
391
+ agentId: z.string().min(1).max(512).optional(),
392
+ generation: z
393
+ .string()
394
+ .regex(/^[a-f0-9]{32}$/)
395
+ .optional(),
396
+ })
397
+ .strict();
398
+ const terminalOwnerSchema = z
399
+ .object({ version: z.literal(1), identity: hookOwnerIdentitySchema.optional(), released: z.literal(true).optional() })
400
+ .strict();
401
+ const threadLocatorSchema = z
402
+ .object({
403
+ version: z.union([z.literal(1), z.literal(2)]),
404
+ identity: hookOwnerIdentitySchema,
405
+ ownerFile: z.string().refine(path.isAbsolute),
406
+ })
407
+ .strict();
408
+ export function hookThreadLocatorPath(storageDirectory, client, threadId) {
409
+ const key = createHash('sha256')
410
+ .update(JSON.stringify([client, threadId]))
411
+ .digest('hex');
412
+ return path.resolve(storageDirectory, 'project-owners', `${key}.thread.json`);
413
+ }
414
+ /** Only trusted hook input writes a locator; shell environment can only read it. */
415
+ export async function recordHookThreadLocator(storageDirectory, identity, ownerFile) {
416
+ await readProjectOwner(ownerFile);
417
+ if (ownerFile !== hookProjectOwnerPath(storageDirectory, identity))
418
+ throw new Error('Hook identity and explicit owner disagree');
419
+ const file = hookThreadLocatorPath(storageDirectory, identity.client, identity.agentId ?? identity.sessionId);
420
+ const content = JSON.stringify(threadLocatorSchema.parse({ version: identity.generation ? 2 : 1, identity, ownerFile }));
421
+ const previous = await readHookThreadLocatorRecord(storageDirectory, identity.client, identity.agentId ?? identity.sessionId);
422
+ if (previous && previous.ownerFile !== ownerFile) {
423
+ if (previous.identity.sessionId !== identity.sessionId || previous.identity.agentId !== identity.agentId)
424
+ throw new Error('Hook thread identity records disagree');
425
+ if (!(await isProjectOwnerEnded(previous.ownerFile)))
426
+ throw new Error('Cannot replace an active session owner');
427
+ const temporary = `${file}.${randomBytes(12).toString('hex')}.tmp`;
428
+ try {
429
+ await writeFile(temporary, content, { flag: 'wx', mode: 0o600 });
430
+ await rename(temporary, file);
431
+ }
432
+ finally {
433
+ await unlink(temporary).catch((error) => {
434
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
435
+ throw error;
436
+ });
437
+ }
438
+ }
439
+ else {
440
+ await publishPrivateRecord(file, content);
441
+ }
442
+ const existing = await readHookThreadLocator(storageDirectory, identity.client, identity.agentId ?? identity.sessionId);
443
+ if (JSON.stringify(existing) !== content)
444
+ throw new Error('Hook thread identity records disagree');
445
+ }
446
+ export async function readHookThreadLocatorRecord(storageDirectory, client, threadId) {
447
+ const file = hookThreadLocatorPath(storageDirectory, client, threadId);
448
+ let handle;
449
+ try {
450
+ await assertPrivateDirectory(path.dirname(file));
451
+ handle = await open(file, credentialReadFlags(), 0o600);
452
+ }
453
+ catch (error) {
454
+ if (error instanceof Error && 'code' in error && error.code === 'ENOENT')
455
+ return undefined;
456
+ throw error;
457
+ }
458
+ try {
459
+ const info = await handle.stat();
460
+ if (!info.isFile() || info.size > 16384 || !hasSafeCredentialPermissions(info, 0o077))
461
+ throw new Error('Invalid private thread locator');
462
+ const record = threadLocatorSchema.parse(JSON.parse(await handle.readFile('utf8')));
463
+ if ((record.version === 2) !== Boolean(record.identity.generation))
464
+ throw new Error('Invalid owner generation');
465
+ if (record.identity.client !== client || (record.identity.agentId ?? record.identity.sessionId) !== threadId)
466
+ throw new Error('Thread locator identity mismatch');
467
+ if (record.ownerFile !== hookProjectOwnerPath(storageDirectory, record.identity))
468
+ throw new Error('Thread locator owner mismatch');
469
+ return record;
470
+ }
471
+ finally {
472
+ await handle.close();
473
+ }
474
+ }
475
+ /** A call holds its lease through admission and completion, without holding the owner lock. */
476
+ export async function acquireProjectOwnerLease(ownerFile) {
477
+ const directory = `${ownerFile}.calls`;
478
+ const file = path.join(directory, `${randomBytes(16).toString('hex')}.json`);
479
+ const identity = readProcessIdentity(process.pid);
480
+ await withProjectOwnerLock(ownerFile, async () => {
481
+ await readProjectOwner(ownerFile);
482
+ await assertOwnerActive(ownerFile);
483
+ await mkdir(directory, { recursive: true, mode: 0o700 });
484
+ await assertPrivateDirectory(directory);
485
+ await publishPrivateRecord(file, JSON.stringify({ version: 2, pid: process.pid, identity }));
486
+ });
487
+ let released = false;
488
+ return async () => {
489
+ if (released)
490
+ return;
491
+ await withProjectOwnerLock(ownerFile, async () => {
492
+ await unlink(file);
493
+ });
494
+ released = true;
495
+ };
496
+ }
497
+ /** Live or uncertain calls retain authority; only proven termination permits reconciliation. */
498
+ export async function assertNoProjectOwnerCalls(ownerFile) {
499
+ const directory = `${ownerFile}.calls`;
500
+ try {
501
+ await assertPrivateDirectory(directory);
502
+ await reconcileProjectOwnerCalls(ownerFile);
503
+ if ((await readdir(directory)).length)
504
+ throw new Error('Session cleanup has pending or uncertain caller leases; retry after calls finish or inspect abandoned state');
505
+ }
506
+ catch (error) {
507
+ if (!(error instanceof Error && 'code' in error && error.code === 'ENOENT'))
508
+ throw error;
509
+ }
510
+ }
511
+ export async function readHookThreadLocator(storageDirectory, client, threadId) {
512
+ const record = await readHookThreadLocatorRecord(storageDirectory, client, threadId);
513
+ if (record)
514
+ await readProjectOwner(record.ownerFile);
515
+ return record;
516
+ }
517
+ const callLeaseSchema = z
518
+ .object({
519
+ version: z.literal(2),
520
+ pid: z.number().int().positive(),
521
+ identity: processIdentitySchema.optional(),
522
+ })
523
+ .strict();
524
+ /**
525
+ * Caller holds the owner lock. `terminated` must identify its own child with an observed exit.
526
+ * Without that direct evidence, legacy, foreign-host and uncertain records remain protected.
527
+ */
528
+ export async function reconcileProjectOwnerCalls(ownerFile, terminated) {
529
+ const directory = `${ownerFile}.calls`;
530
+ let names;
531
+ try {
532
+ await assertPrivateDirectory(directory);
533
+ names = await readdir(directory);
534
+ }
535
+ catch (error) {
536
+ if (error instanceof Error && 'code' in error && error.code === 'ENOENT')
537
+ return;
538
+ throw error;
539
+ }
540
+ for (const name of names) {
541
+ if (!/^[a-f0-9]{32}\.json$/.test(name))
542
+ continue;
543
+ const file = path.join(directory, name);
544
+ const handle = await open(file, credentialReadFlags(), 0o600);
545
+ let lease;
546
+ try {
547
+ const info = await handle.stat();
548
+ if (!info.isFile() || info.size > 4096 || !hasSafeCredentialPermissions(info, 0o077))
549
+ continue;
550
+ const parsed = callLeaseSchema.safeParse(JSON.parse(await handle.readFile('utf8')));
551
+ if (parsed.success)
552
+ lease = parsed.data;
553
+ }
554
+ finally {
555
+ await handle.close();
556
+ }
557
+ if (!lease?.identity)
558
+ continue;
559
+ if (terminated) {
560
+ if (lease.pid !== terminated.pid || !terminated.identity)
561
+ continue;
562
+ if (JSON.stringify(lease.identity) !== JSON.stringify(terminated.identity))
563
+ continue;
564
+ // The parent already observed this exact child exit; avoid another OS probe on its result path.
565
+ await unlink(file);
566
+ continue;
567
+ }
568
+ if (inspectProcessIdentity(lease.pid, lease.identity) === 'dead')
569
+ await unlink(file);
570
+ }
571
+ }
572
+ /** Serialize trusted lifecycle hooks without changing the per-owner call admission lock. */
573
+ export async function withHookIdentityLock(storage, identity, action) {
574
+ const file = hookThreadLocatorPath(storage, identity.client, identity.agentId ?? identity.sessionId);
575
+ await mkdir(path.dirname(file), { recursive: true, mode: 0o700 });
576
+ return withProjectOwnerLock(file, action);
577
+ }
578
+ //# sourceMappingURL=projectOwnerStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectOwnerStore.js","sourceRoot":"","sources":["../../../src/commands/shared/projectOwnerStore.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import type { GlobalOptions } from '../../globalOptions.js';
2
+ import type { Argv } from 'yargs';
3
+ export interface ProjectSelectionOptions {
4
+ project?: string[];
5
+ 'project-set'?: string;
6
+ }
7
+ export declare const projectSelectionOptions: {
8
+ readonly project: {
9
+ readonly describe: "Per-call checkout override, or selected labels from --project-set; defaults to the assigned session project or cwd";
10
+ readonly type: "array";
11
+ readonly string: true;
12
+ readonly nargs: 1;
13
+ readonly requiresArg: true;
14
+ readonly global: false;
15
+ };
16
+ readonly 'project-set': {
17
+ readonly describe: "Path to a saved JSON project-set definition (no global project switch)";
18
+ readonly type: "string";
19
+ readonly requiresArg: true;
20
+ readonly global: false;
21
+ };
22
+ };
23
+ export declare function withProjectSelectionOptions(yargs: Argv): Argv<GlobalOptions & ProjectSelectionOptions>;
24
+ //# sourceMappingURL=projectSelectionOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"projectSelectionOptions.d.ts","sourceRoot":"","sources":["../../../src/commands/shared/projectSelectionOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE3D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAElC,MAAM,WAAW,uBAAuB;IACtC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;CAgB1B,CAAC;AAEX,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,IAAI,GAAG,IAAI,CAAC,aAAa,GAAG,uBAAuB,CAAC,CAEtG"}