@1mcp/agent 0.35.0-beta.1 → 0.35.0-beta.3

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 (389) hide show
  1. package/README.md +6 -2
  2. package/build/admin/assets/{admin-console-CkZ5lBKg.js → admin-console-BOl7XR0p.js} +6 -6
  3. package/build/admin/assets/{admin-console-CX5GzncA.css → admin-console-Bbil6BQU.css} +1 -1
  4. package/build/admin/index.html +2 -2
  5. package/build/application/services/healthService.d.ts +32 -0
  6. package/build/application/services/healthService.d.ts.map +1 -1
  7. package/build/application/services/healthService.js +49 -0
  8. package/build/application/services/healthService.js.map +1 -1
  9. package/build/auth/oauthAuthorizationFlow.d.ts +2 -2
  10. package/build/auth/oauthAuthorizationFlow.d.ts.map +1 -1
  11. package/build/auth/oauthAuthorizationFlow.js +1 -1
  12. package/build/auth/oauthAuthorizationFlow.js.map +1 -1
  13. package/build/auth/sdkOAuthServerProvider.d.ts +4 -3
  14. package/build/auth/sdkOAuthServerProvider.d.ts.map +1 -1
  15. package/build/auth/sdkOAuthServerProvider.js +132 -17
  16. package/build/auth/sdkOAuthServerProvider.js.map +1 -1
  17. package/build/auth/sessionTypes.d.ts +40 -5
  18. package/build/auth/sessionTypes.d.ts.map +1 -1
  19. package/build/auth/sessionTypes.js +33 -1
  20. package/build/auth/sessionTypes.js.map +1 -1
  21. package/build/auth/storage/fileStorageService.d.ts +18 -1
  22. package/build/auth/storage/fileStorageService.d.ts.map +1 -1
  23. package/build/auth/storage/fileStorageService.js +253 -3
  24. package/build/auth/storage/fileStorageService.js.map +1 -1
  25. package/build/auth/storage/oauthStorageService.d.ts +4 -1
  26. package/build/auth/storage/oauthStorageService.d.ts.map +1 -1
  27. package/build/auth/storage/oauthStorageService.js +8 -1
  28. package/build/auth/storage/oauthStorageService.js.map +1 -1
  29. package/build/auth/storage/refreshTokenFamilyRepository.d.ts +36 -0
  30. package/build/auth/storage/refreshTokenFamilyRepository.d.ts.map +1 -0
  31. package/build/auth/storage/refreshTokenFamilyRepository.js +167 -0
  32. package/build/auth/storage/refreshTokenFamilyRepository.js.map +1 -0
  33. package/build/auth/storage/sessionRepository.d.ts +14 -1
  34. package/build/auth/storage/sessionRepository.d.ts.map +1 -1
  35. package/build/auth/storage/sessionRepository.js +32 -9
  36. package/build/auth/storage/sessionRepository.js.map +1 -1
  37. package/build/commands/inspect/inspect.d.ts.map +1 -1
  38. package/build/commands/inspect/inspect.js +2 -9
  39. package/build/commands/inspect/inspect.js.map +1 -1
  40. package/build/commands/inspect/inspectUtils.d.ts +4 -0
  41. package/build/commands/inspect/inspectUtils.d.ts.map +1 -1
  42. package/build/commands/inspect/inspectUtils.js +12 -0
  43. package/build/commands/inspect/inspectUtils.js.map +1 -1
  44. package/build/commands/instructions/instructionsUtils.d.ts +2 -0
  45. package/build/commands/instructions/instructionsUtils.d.ts.map +1 -1
  46. package/build/commands/instructions/instructionsUtils.js +7 -3
  47. package/build/commands/instructions/instructionsUtils.js.map +1 -1
  48. package/build/commands/mcp/index.d.ts.map +1 -1
  49. package/build/commands/mcp/index.js +10 -0
  50. package/build/commands/mcp/index.js.map +1 -1
  51. package/build/commands/mcp/restart.d.ts +69 -0
  52. package/build/commands/mcp/restart.d.ts.map +1 -0
  53. package/build/commands/mcp/restart.js +259 -0
  54. package/build/commands/mcp/restart.js.map +1 -0
  55. package/build/commands/mcp/status.d.ts +24 -1
  56. package/build/commands/mcp/status.d.ts.map +1 -1
  57. package/build/commands/mcp/status.js +158 -14
  58. package/build/commands/mcp/status.js.map +1 -1
  59. package/build/commands/run/run.d.ts.map +1 -1
  60. package/build/commands/run/run.js +86 -7
  61. package/build/commands/run/run.js.map +1 -1
  62. package/build/commands/serve/asyncLoadingOptions.d.ts +30 -0
  63. package/build/commands/serve/asyncLoadingOptions.d.ts.map +1 -0
  64. package/build/commands/serve/asyncLoadingOptions.js +34 -0
  65. package/build/commands/serve/asyncLoadingOptions.js.map +1 -0
  66. package/build/commands/serve/index.d.ts +12 -1
  67. package/build/commands/serve/index.d.ts.map +1 -1
  68. package/build/commands/serve/index.js +26 -15
  69. package/build/commands/serve/index.js.map +1 -1
  70. package/build/commands/serve/serve.d.ts +15 -1
  71. package/build/commands/serve/serve.d.ts.map +1 -1
  72. package/build/commands/serve/serve.js +128 -65
  73. package/build/commands/serve/serve.js.map +1 -1
  74. package/build/commands/serve/serveBackground.d.ts +48 -26
  75. package/build/commands/serve/serveBackground.d.ts.map +1 -1
  76. package/build/commands/serve/serveBackground.js +231 -61
  77. package/build/commands/serve/serveBackground.js.map +1 -1
  78. package/build/commands/serve/serveRestart.d.ts +1 -1
  79. package/build/commands/serve/serveRestart.js +1 -1
  80. package/build/commands/serve/serveStatus.d.ts +20 -10
  81. package/build/commands/serve/serveStatus.d.ts.map +1 -1
  82. package/build/commands/serve/serveStatus.js +174 -13
  83. package/build/commands/serve/serveStatus.js.map +1 -1
  84. package/build/commands/serve/serveStop.d.ts +13 -4
  85. package/build/commands/serve/serveStop.d.ts.map +1 -1
  86. package/build/commands/serve/serveStop.js +212 -23
  87. package/build/commands/serve/serveStop.js.map +1 -1
  88. package/build/commands/shared/apiClient.d.ts +1 -1
  89. package/build/commands/shared/apiClient.d.ts.map +1 -1
  90. package/build/commands/shared/apiClient.js +2 -2
  91. package/build/commands/shared/apiClient.js.map +1 -1
  92. package/build/commands/shared/clientSurfaceAttachment.d.ts +3 -1
  93. package/build/commands/shared/clientSurfaceAttachment.d.ts.map +1 -1
  94. package/build/commands/shared/clientSurfaceAttachment.js +14 -4
  95. package/build/commands/shared/clientSurfaceAttachment.js.map +1 -1
  96. package/build/commands/shared/commandRunner.d.ts +1 -0
  97. package/build/commands/shared/commandRunner.d.ts.map +1 -1
  98. package/build/commands/shared/commandRunner.js +10 -2
  99. package/build/commands/shared/commandRunner.js.map +1 -1
  100. package/build/commands/shared/filterSelectionQuery.d.ts +8 -0
  101. package/build/commands/shared/filterSelectionQuery.d.ts.map +1 -0
  102. package/build/commands/shared/filterSelectionQuery.js +12 -0
  103. package/build/commands/shared/filterSelectionQuery.js.map +1 -0
  104. package/build/commands/shared/inspectApiSchemas.d.ts +83 -0
  105. package/build/commands/shared/inspectApiSchemas.d.ts.map +1 -0
  106. package/build/commands/shared/inspectApiSchemas.js +40 -0
  107. package/build/commands/shared/inspectApiSchemas.js.map +1 -0
  108. package/build/commands/shared/serveTargetResolver.d.ts.map +1 -1
  109. package/build/commands/shared/serveTargetResolver.js +19 -8
  110. package/build/commands/shared/serveTargetResolver.js.map +1 -1
  111. package/build/commands/wait/index.d.ts +3 -0
  112. package/build/commands/wait/index.d.ts.map +1 -0
  113. package/build/commands/wait/index.js +20 -0
  114. package/build/commands/wait/index.js.map +1 -0
  115. package/build/commands/wait/wait.d.ts +39 -0
  116. package/build/commands/wait/wait.d.ts.map +1 -0
  117. package/build/commands/wait/wait.js +161 -0
  118. package/build/commands/wait/wait.js.map +1 -0
  119. package/build/config/configLoader.d.ts.map +1 -1
  120. package/build/config/configLoader.js +12 -0
  121. package/build/config/configLoader.js.map +1 -1
  122. package/build/config/configManager.d.ts +2 -0
  123. package/build/config/configManager.d.ts.map +1 -1
  124. package/build/config/configManager.js +19 -8
  125. package/build/config/configManager.js.map +1 -1
  126. package/build/config/mcpConfigMerge.d.ts.map +1 -1
  127. package/build/config/mcpConfigMerge.js +13 -2
  128. package/build/config/mcpConfigMerge.js.map +1 -1
  129. package/build/constants/auth.d.ts +10 -1
  130. package/build/constants/auth.d.ts.map +1 -1
  131. package/build/constants/auth.js +11 -1
  132. package/build/constants/auth.js.map +1 -1
  133. package/build/constants/mcp.d.ts +7 -1
  134. package/build/constants/mcp.d.ts.map +1 -1
  135. package/build/constants/mcp.js +9 -1
  136. package/build/constants/mcp.js.map +1 -1
  137. package/build/core/capabilities/capabilityAggregator.d.ts.map +1 -1
  138. package/build/core/capabilities/capabilityAggregator.js +10 -9
  139. package/build/core/capabilities/capabilityAggregator.js.map +1 -1
  140. package/build/core/capabilities/capabilityCatalog.d.ts +6 -5
  141. package/build/core/capabilities/capabilityCatalog.d.ts.map +1 -1
  142. package/build/core/capabilities/capabilityCatalog.js +36 -23
  143. package/build/core/capabilities/capabilityCatalog.js.map +1 -1
  144. package/build/core/capabilities/capabilityVisibility.d.ts +12 -0
  145. package/build/core/capabilities/capabilityVisibility.d.ts.map +1 -0
  146. package/build/core/capabilities/capabilityVisibility.js +13 -0
  147. package/build/core/capabilities/capabilityVisibility.js.map +1 -0
  148. package/build/core/capabilities/internalCapabilitiesProvider.d.ts +2 -1
  149. package/build/core/capabilities/internalCapabilitiesProvider.d.ts.map +1 -1
  150. package/build/core/capabilities/internalCapabilitiesProvider.js +2 -2
  151. package/build/core/capabilities/internalCapabilitiesProvider.js.map +1 -1
  152. package/build/core/capabilities/lazyLoadingOrchestrator.d.ts +5 -23
  153. package/build/core/capabilities/lazyLoadingOrchestrator.d.ts.map +1 -1
  154. package/build/core/capabilities/lazyLoadingOrchestrator.js +25 -44
  155. package/build/core/capabilities/lazyLoadingOrchestrator.js.map +1 -1
  156. package/build/core/capabilities/metaToolProvider.d.ts +6 -21
  157. package/build/core/capabilities/metaToolProvider.d.ts.map +1 -1
  158. package/build/core/capabilities/metaToolProvider.js +18 -70
  159. package/build/core/capabilities/metaToolProvider.js.map +1 -1
  160. package/build/core/capabilities/toolRegistry.d.ts +5 -1
  161. package/build/core/capabilities/toolRegistry.d.ts.map +1 -1
  162. package/build/core/capabilities/toolRegistry.js +11 -3
  163. package/build/core/capabilities/toolRegistry.js.map +1 -1
  164. package/build/core/client/clientManager.d.ts +33 -1
  165. package/build/core/client/clientManager.d.ts.map +1 -1
  166. package/build/core/client/clientManager.js +350 -2
  167. package/build/core/client/clientManager.js.map +1 -1
  168. package/build/core/client/connectionHandler.d.ts.map +1 -1
  169. package/build/core/client/connectionHandler.js +18 -1
  170. package/build/core/client/connectionHandler.js.map +1 -1
  171. package/build/core/client/recreateHttpTransportOptions.d.ts +14 -0
  172. package/build/core/client/recreateHttpTransportOptions.d.ts.map +1 -0
  173. package/build/core/client/recreateHttpTransportOptions.js +2 -0
  174. package/build/core/client/recreateHttpTransportOptions.js.map +1 -0
  175. package/build/core/client/transportRecreator.d.ts +8 -1
  176. package/build/core/client/transportRecreator.d.ts.map +1 -1
  177. package/build/core/client/transportRecreator.js +11 -2
  178. package/build/core/client/transportRecreator.js.map +1 -1
  179. package/build/core/configChangeHandler.d.ts +1 -0
  180. package/build/core/configChangeHandler.d.ts.map +1 -1
  181. package/build/core/configChangeHandler.js +14 -0
  182. package/build/core/configChangeHandler.js.map +1 -1
  183. package/build/core/instructions/templateTypes.d.ts +2 -2
  184. package/build/core/instructions/templateTypes.d.ts.map +1 -1
  185. package/build/core/loading/mcpLoadingManager.d.ts.map +1 -1
  186. package/build/core/loading/mcpLoadingManager.js +16 -4
  187. package/build/core/loading/mcpLoadingManager.js.map +1 -1
  188. package/build/core/protocol/requestHandlerUtils.d.ts +3 -0
  189. package/build/core/protocol/requestHandlerUtils.d.ts.map +1 -1
  190. package/build/core/protocol/requestHandlerUtils.js +23 -7
  191. package/build/core/protocol/requestHandlerUtils.js.map +1 -1
  192. package/build/core/protocol/toolRequestHandlers.d.ts.map +1 -1
  193. package/build/core/protocol/toolRequestHandlers.js +13 -13
  194. package/build/core/protocol/toolRequestHandlers.js.map +1 -1
  195. package/build/core/runtime/runtimeIdentityService.d.ts +1 -0
  196. package/build/core/runtime/runtimeIdentityService.d.ts.map +1 -1
  197. package/build/core/runtime/runtimeIdentityService.js +4 -1
  198. package/build/core/runtime/runtimeIdentityService.js.map +1 -1
  199. package/build/core/server/backendStdioSupervisor.d.ts +73 -0
  200. package/build/core/server/backendStdioSupervisor.d.ts.map +1 -0
  201. package/build/core/server/backendStdioSupervisor.js +191 -0
  202. package/build/core/server/backendStdioSupervisor.js.map +1 -0
  203. package/build/core/server/backgroundLaunchConfig.d.ts +15 -0
  204. package/build/core/server/backgroundLaunchConfig.d.ts.map +1 -0
  205. package/build/core/server/backgroundLaunchConfig.js +46 -0
  206. package/build/core/server/backgroundLaunchConfig.js.map +1 -0
  207. package/build/core/server/backgroundRuntimeSupervisor.d.ts +44 -0
  208. package/build/core/server/backgroundRuntimeSupervisor.d.ts.map +1 -0
  209. package/build/core/server/backgroundRuntimeSupervisor.js +252 -0
  210. package/build/core/server/backgroundRuntimeSupervisor.js.map +1 -0
  211. package/build/core/server/backgroundRuntimeSupervisorState.d.ts +30 -0
  212. package/build/core/server/backgroundRuntimeSupervisorState.d.ts.map +1 -0
  213. package/build/core/server/backgroundRuntimeSupervisorState.js +81 -0
  214. package/build/core/server/backgroundRuntimeSupervisorState.js.map +1 -0
  215. package/build/core/server/clientInstanceFactory.d.ts.map +1 -1
  216. package/build/core/server/clientInstanceFactory.js +13 -3
  217. package/build/core/server/clientInstanceFactory.js.map +1 -1
  218. package/build/core/server/clientInstancePool.d.ts +17 -5
  219. package/build/core/server/clientInstancePool.d.ts.map +1 -1
  220. package/build/core/server/clientInstancePool.js +198 -33
  221. package/build/core/server/clientInstancePool.js.map +1 -1
  222. package/build/core/server/clientInstancePoolTypes.d.ts +7 -1
  223. package/build/core/server/clientInstancePoolTypes.d.ts.map +1 -1
  224. package/build/core/server/clientInstancePoolTypes.js.map +1 -1
  225. package/build/core/server/connectionManager.d.ts +0 -6
  226. package/build/core/server/connectionManager.d.ts.map +1 -1
  227. package/build/core/server/connectionManager.js +0 -39
  228. package/build/core/server/connectionManager.js.map +1 -1
  229. package/build/core/server/connectionResolver.d.ts.map +1 -1
  230. package/build/core/server/connectionResolver.js +35 -1
  231. package/build/core/server/connectionResolver.js.map +1 -1
  232. package/build/core/server/runtimeScopeOwnership.d.ts +61 -0
  233. package/build/core/server/runtimeScopeOwnership.d.ts.map +1 -0
  234. package/build/core/server/runtimeScopeOwnership.js +544 -0
  235. package/build/core/server/runtimeScopeOwnership.js.map +1 -0
  236. package/build/core/server/serverManager.d.ts +2 -0
  237. package/build/core/server/serverManager.d.ts.map +1 -1
  238. package/build/core/server/serverManager.js +30 -0
  239. package/build/core/server/serverManager.js.map +1 -1
  240. package/build/core/server/templateIdentity.d.ts +10 -0
  241. package/build/core/server/templateIdentity.d.ts.map +1 -1
  242. package/build/core/server/templateIdentity.js +33 -0
  243. package/build/core/server/templateIdentity.js.map +1 -1
  244. package/build/core/server/templateServerCleanup.d.ts.map +1 -1
  245. package/build/core/server/templateServerCleanup.js +7 -1
  246. package/build/core/server/templateServerCleanup.js.map +1 -1
  247. package/build/core/server/templateServerManager.d.ts +13 -0
  248. package/build/core/server/templateServerManager.d.ts.map +1 -1
  249. package/build/core/server/templateServerManager.js +129 -4
  250. package/build/core/server/templateServerManager.js.map +1 -1
  251. package/build/core/tools/handlers/serverManagementHandler.d.ts +111 -5
  252. package/build/core/tools/handlers/serverManagementHandler.d.ts.map +1 -1
  253. package/build/core/tools/handlers/serverManagementHandler.js +103 -45
  254. package/build/core/tools/handlers/serverManagementHandler.js.map +1 -1
  255. package/build/core/tools/internal/adapters/management/managementAdapter.d.ts +2 -2
  256. package/build/core/tools/internal/adapters/management/managementAdapter.d.ts.map +1 -1
  257. package/build/core/tools/internal/adapters/management/managementAdapter.js +45 -26
  258. package/build/core/tools/internal/adapters/management/managementAdapter.js.map +1 -1
  259. package/build/core/tools/internal/adapters/management/types.d.ts +21 -2
  260. package/build/core/tools/internal/adapters/management/types.d.ts.map +1 -1
  261. package/build/core/tools/internal/managementHandlers.d.ts.map +1 -1
  262. package/build/core/tools/internal/managementHandlers.js +73 -22
  263. package/build/core/tools/internal/managementHandlers.js.map +1 -1
  264. package/build/core/tools/internal/schemas/discovery.d.ts +2 -2
  265. package/build/core/tools/internal/schemas/edit.js +1 -1
  266. package/build/core/tools/internal/schemas/edit.js.map +1 -1
  267. package/build/core/tools/internal/schemas/index.d.ts +77 -6
  268. package/build/core/tools/internal/schemas/index.d.ts.map +1 -1
  269. package/build/core/tools/internal/schemas/management.d.ts +75 -4
  270. package/build/core/tools/internal/schemas/management.d.ts.map +1 -1
  271. package/build/core/tools/internal/schemas/management.js +69 -2
  272. package/build/core/tools/internal/schemas/management.js.map +1 -1
  273. package/build/core/types/client.d.ts +9 -2
  274. package/build/core/types/client.d.ts.map +1 -1
  275. package/build/core/types/client.js +4 -0
  276. package/build/core/types/client.js.map +1 -1
  277. package/build/core/types/transport.d.ts +27 -1
  278. package/build/core/types/transport.d.ts.map +1 -1
  279. package/build/core/types/transport.js +39 -8
  280. package/build/core/types/transport.js.map +1 -1
  281. package/build/domains/admin/adminBackendRestartService.d.ts +41 -0
  282. package/build/domains/admin/adminBackendRestartService.d.ts.map +1 -0
  283. package/build/domains/admin/adminBackendRestartService.js +22 -0
  284. package/build/domains/admin/adminBackendRestartService.js.map +1 -0
  285. package/build/domains/admin/adminDomain.d.ts +7 -0
  286. package/build/domains/admin/adminDomain.d.ts.map +1 -1
  287. package/build/domains/admin/adminDomain.js +13 -0
  288. package/build/domains/admin/adminDomain.js.map +1 -1
  289. package/build/domains/admin/adminOAuthService.d.ts +26 -0
  290. package/build/domains/admin/adminOAuthService.d.ts.map +1 -0
  291. package/build/domains/admin/adminOAuthService.js +71 -0
  292. package/build/domains/admin/adminOAuthService.js.map +1 -0
  293. package/build/domains/admin/adminOperationService.d.ts +1 -0
  294. package/build/domains/admin/adminOperationService.d.ts.map +1 -1
  295. package/build/domains/admin/adminOperationService.js +39 -14
  296. package/build/domains/admin/adminOperationService.js.map +1 -1
  297. package/build/domains/admin/runtimeServerManagerBackendRestartService.d.ts +20 -0
  298. package/build/domains/admin/runtimeServerManagerBackendRestartService.d.ts.map +1 -0
  299. package/build/domains/admin/runtimeServerManagerBackendRestartService.js +78 -0
  300. package/build/domains/admin/runtimeServerManagerBackendRestartService.js.map +1 -0
  301. package/build/domains/backend-logs/backendLogBroker.d.ts +47 -0
  302. package/build/domains/backend-logs/backendLogBroker.d.ts.map +1 -0
  303. package/build/domains/backend-logs/backendLogBroker.js +249 -0
  304. package/build/domains/backend-logs/backendLogBroker.js.map +1 -0
  305. package/build/domains/backend-logs/backendLogProjection.d.ts +9 -0
  306. package/build/domains/backend-logs/backendLogProjection.d.ts.map +1 -0
  307. package/build/domains/backend-logs/backendLogProjection.js +40 -0
  308. package/build/domains/backend-logs/backendLogProjection.js.map +1 -0
  309. package/build/domains/backend-logs/backendLogRuntime.d.ts +4 -0
  310. package/build/domains/backend-logs/backendLogRuntime.d.ts.map +1 -0
  311. package/build/domains/backend-logs/backendLogRuntime.js +11 -0
  312. package/build/domains/backend-logs/backendLogRuntime.js.map +1 -0
  313. package/build/domains/backend-logs/backendLogSanitizer.d.ts +2 -0
  314. package/build/domains/backend-logs/backendLogSanitizer.d.ts.map +1 -0
  315. package/build/domains/backend-logs/backendLogSanitizer.js +30 -0
  316. package/build/domains/backend-logs/backendLogSanitizer.js.map +1 -0
  317. package/build/domains/backend-logs/backendLogSource.d.ts +8 -0
  318. package/build/domains/backend-logs/backendLogSource.d.ts.map +1 -0
  319. package/build/domains/backend-logs/backendLogSource.js +22 -0
  320. package/build/domains/backend-logs/backendLogSource.js.map +1 -0
  321. package/build/domains/backend-logs/backendLogTypes.d.ts +49 -0
  322. package/build/domains/backend-logs/backendLogTypes.d.ts.map +1 -0
  323. package/build/domains/backend-logs/backendLogTypes.js +2 -0
  324. package/build/domains/backend-logs/backendLogTypes.js.map +1 -0
  325. package/build/domains/runtime-targets/runtimeIdentityVerification.d.ts +8 -1
  326. package/build/domains/runtime-targets/runtimeIdentityVerification.d.ts.map +1 -1
  327. package/build/domains/runtime-targets/runtimeIdentityVerification.js +62 -3
  328. package/build/domains/runtime-targets/runtimeIdentityVerification.js.map +1 -1
  329. package/build/domains/runtime-targets/runtimeProbe.d.ts +34 -0
  330. package/build/domains/runtime-targets/runtimeProbe.d.ts.map +1 -0
  331. package/build/domains/runtime-targets/runtimeProbe.js +71 -0
  332. package/build/domains/runtime-targets/runtimeProbe.js.map +1 -0
  333. package/build/index.d.ts.map +1 -1
  334. package/build/index.js +3 -0
  335. package/build/index.js.map +1 -1
  336. package/build/server.d.ts.map +1 -1
  337. package/build/server.js +18 -2
  338. package/build/server.js.map +1 -1
  339. package/build/transport/http/routes/adminRoutes.d.ts +6 -0
  340. package/build/transport/http/routes/adminRoutes.d.ts.map +1 -1
  341. package/build/transport/http/routes/adminRoutes.js +438 -38
  342. package/build/transport/http/routes/adminRoutes.js.map +1 -1
  343. package/build/transport/http/routes/healthRoutes.d.ts.map +1 -1
  344. package/build/transport/http/routes/healthRoutes.js +70 -2
  345. package/build/transport/http/routes/healthRoutes.js.map +1 -1
  346. package/build/transport/http/routes/inspectHelpers.d.ts +11 -4
  347. package/build/transport/http/routes/inspectHelpers.d.ts.map +1 -1
  348. package/build/transport/http/routes/inspectHelpers.js +21 -2
  349. package/build/transport/http/routes/inspectHelpers.js.map +1 -1
  350. package/build/transport/http/routes/inspectRoutes.d.ts.map +1 -1
  351. package/build/transport/http/routes/inspectRoutes.js +55 -4
  352. package/build/transport/http/routes/inspectRoutes.js.map +1 -1
  353. package/build/transport/http/routes/oauthRoutes.d.ts +3 -2
  354. package/build/transport/http/routes/oauthRoutes.d.ts.map +1 -1
  355. package/build/transport/http/routes/oauthRoutes.js +10 -8
  356. package/build/transport/http/routes/oauthRoutes.js.map +1 -1
  357. package/build/transport/http/routes/toolRoutes.d.ts.map +1 -1
  358. package/build/transport/http/routes/toolRoutes.js +37 -29
  359. package/build/transport/http/routes/toolRoutes.js.map +1 -1
  360. package/build/transport/http/server.d.ts.map +1 -1
  361. package/build/transport/http/server.js +16 -5
  362. package/build/transport/http/server.js.map +1 -1
  363. package/build/transport/managedStdioStderr.d.ts +17 -1
  364. package/build/transport/managedStdioStderr.d.ts.map +1 -1
  365. package/build/transport/managedStdioStderr.js +129 -5
  366. package/build/transport/managedStdioStderr.js.map +1 -1
  367. package/build/transport/managedStdioStderrOptions.d.ts +2 -0
  368. package/build/transport/managedStdioStderrOptions.d.ts.map +1 -1
  369. package/build/transport/restartableStdioTransport.js +1 -1
  370. package/build/transport/restartableStdioTransport.js.map +1 -1
  371. package/build/transport/transportFactory.d.ts +6 -2
  372. package/build/transport/transportFactory.d.ts.map +1 -1
  373. package/build/transport/transportFactory.js +69 -29
  374. package/build/transport/transportFactory.js.map +1 -1
  375. package/build/transport/transportFactory.testSetup.js +2 -0
  376. package/build/transport/transportFactory.testSetup.js.map +1 -1
  377. package/build/types/serverStatus.d.ts +3 -0
  378. package/build/types/serverStatus.d.ts.map +1 -0
  379. package/build/types/serverStatus.js +13 -0
  380. package/build/types/serverStatus.js.map +1 -0
  381. package/build/utils/core/errorTypes.d.ts +3 -0
  382. package/build/utils/core/errorTypes.d.ts.map +1 -1
  383. package/build/utils/core/errorTypes.js +7 -0
  384. package/build/utils/core/errorTypes.js.map +1 -1
  385. package/build/utils/validation/urlDetection.d.ts +12 -9
  386. package/build/utils/validation/urlDetection.d.ts.map +1 -1
  387. package/build/utils/validation/urlDetection.js +233 -31
  388. package/build/utils/validation/urlDetection.js.map +1 -1
  389. package/package.json +4 -3
@@ -1,29 +1,33 @@
1
1
  import { type SpawnOptions } from 'child_process';
2
+ import { type BackgroundSupervisorDependencies, type BackgroundSupervisorOptions } from '../../core/server/backgroundRuntimeSupervisor.js';
3
+ import { type BackgroundSupervisorState } from '../../core/server/backgroundRuntimeSupervisorState.js';
2
4
  import { ServerPidInfo } from '../../core/server/pidFileManager.js';
3
5
  import { ReadinessProbe } from '../../core/server/runtimeLifecycle.js';
6
+ import { type RuntimeScopeOwnership } from '../../core/server/runtimeScopeOwnership.js';
7
+ import type { ApplicationConfig } from '../../core/types/transport.js';
4
8
  import type { ServeOptions } from './serve.js';
5
9
  /**
6
- * `serve --background`: start the HTTP Aggregated Runtime as a detached child
7
- * for the selected Runtime Scope, then return once it is ready.
10
+ * `serve --background`: start a detached persistent supervisor for the selected
11
+ * Runtime Scope, then return once its current worker is ready.
8
12
  *
9
- * The parent never serves; it spawns a detached copy of this executable running
10
- * the normal serve path (marked with an internal guard flag so it does not
11
- * recursively background itself), waits for the child's PID file and
12
- * `/health/ready`, and reports the result.
13
+ * The launcher never serves. The supervisor owns the Runtime Scope, starts
14
+ * authorized workers, and remains resident across retries and crash-loop state.
13
15
  */
14
16
  /** Internal guard flag name; mirrors the hidden yargs option in `index.ts`. */
15
17
  export declare const BACKGROUND_GUARD_FLAG = "background-bootstrap";
18
+ export declare const RUNTIME_OWNER_CLAIM_ID_FLAG = "runtime-owner-claim-id";
19
+ export declare const BACKGROUND_LAUNCH_CONFIG_FLAG = "background-launch-config";
16
20
  /** Default log file for a background runtime when none is configured. */
17
21
  export declare function defaultBackgroundLogFile(configDir: string): string;
18
- /**
19
- * Build the child's serve arguments: strip flags the parent overrides
20
- * (`--background`, `--transport`/`-t`, `--log-file`, and the guard — including
21
- * their `=`-joined forms) and re-append the HTTP transport, the resolved log
22
- * file, and the guard flag. Background is HTTP-only, so the child is always
23
- * forced onto `--transport http`.
24
- */
25
- export declare function buildBackgroundChildArgs(serveArgs: string[], opts: {
22
+ /** Materialize parsed CLI, environment, and default values for the supervisor. */
23
+ export declare function buildBackgroundSupervisorArgs(parsedArgv: ServeOptions, opts: {
24
+ logFile: string;
25
+ }): string[];
26
+ /** Build the immutable effective invocation used for every supervised worker. */
27
+ export declare function buildBackgroundWorkerArgs(serveArgs: string[], opts: {
26
28
  logFile: string;
29
+ claimId: string;
30
+ launchConfigFile?: string;
27
31
  }): string[];
28
32
  /**
29
33
  * Resolve how to re-invoke this executable cross-platform.
@@ -38,7 +42,7 @@ export declare function resolveSelfInvocation(argv?: string[]): {
38
42
  export interface BackgroundProgress {
39
43
  /** Milliseconds elapsed since the wait began. */
40
44
  elapsedMs: number;
41
- /** The child's PID record once it appears; undefined while still spawning. */
45
+ /** The current worker's PID record once it appears; undefined while still spawning. */
42
46
  info?: ServerPidInfo;
43
47
  }
44
48
  export interface WaitForReadyOptions {
@@ -55,35 +59,53 @@ export interface WaitForReadyResult {
55
59
  ready: boolean;
56
60
  info?: ServerPidInfo;
57
61
  reason?: string;
62
+ /** True when the resident supervisor has exhausted automatic retries. */
63
+ terminal?: boolean;
58
64
  }
59
65
  /**
60
66
  * Wait until the child's PID file identifies the spawned child AND
61
- * `/health/ready` succeeds, or until timeout / child death.
67
+ * `/health/ready` succeeds, or until timeout / worker exit.
62
68
  */
63
69
  export declare function waitForBackgroundReady(configDir: string, childPid: number, options?: WaitForReadyOptions): Promise<WaitForReadyResult>;
64
- /** Minimal shape of the spawned child the orchestration depends on. */
65
- export interface SpawnedChild {
70
+ export interface WaitForSupervisorReadyOptions {
71
+ intervalMs?: number;
72
+ readinessProbe?: ReadinessProbe;
73
+ isSupervisorAlive?: (pid: number) => boolean;
74
+ readState?: (configDir: string) => BackgroundSupervisorState | null;
75
+ readRuntimeInfo?: (configDir: string) => ServerPidInfo | null;
76
+ sleep?: (ms: number) => Promise<void>;
77
+ onProgress?: (progress: BackgroundProgress) => void;
78
+ }
79
+ /** Wait through worker replacement until readiness or terminal crash-loop. */
80
+ export declare function waitForBackgroundSupervisorReady(configDir: string, supervisorPid: number, options?: WaitForSupervisorReadyOptions): Promise<WaitForReadyResult>;
81
+ /** Minimal shape of the detached supervisor the launcher depends on. */
82
+ export interface SpawnedSupervisor {
66
83
  pid?: number;
67
84
  unref(): void;
68
85
  once(event: 'exit', listener: () => void): void;
69
86
  killed?: boolean;
70
87
  }
88
+ /** @deprecated Compatibility alias; background launch now spawns a supervisor. */
89
+ export type SpawnedChild = SpawnedSupervisor;
71
90
  export interface RunBackgroundDeps {
72
91
  /** Raw CLI argv (after node/cli), defaults to the process's normalized argv. */
73
92
  rawArgv?: string[];
74
- spawnChild?: (command: string, args: string[], options: SpawnOptions) => SpawnedChild;
75
- waitForReady?: typeof waitForBackgroundReady;
93
+ spawnChild?: (command: string, args: string[], options: SpawnOptions) => SpawnedSupervisor;
94
+ waitForReady?: (configDir: string, supervisorPid: number, options: WaitForSupervisorReadyOptions) => Promise<WaitForReadyResult>;
76
95
  killChild?: (pid: number) => void;
77
- loadAppConfig?: (parsedArgv: ServeOptions) => {
78
- transport?: string;
79
- logLevel?: string;
80
- logFile?: string;
81
- logging?: unknown;
82
- };
96
+ loadAppConfig?: (parsedArgv: ServeOptions) => ApplicationConfig;
97
+ }
98
+ export interface RunBackgroundSupervisorDeps {
99
+ rawArgv?: string[];
100
+ loadAppConfig?: RunBackgroundDeps['loadAppConfig'];
101
+ claimScope?: (configDir: string) => RuntimeScopeOwnership;
102
+ runSupervisor?: (options: BackgroundSupervisorOptions, dependencies: BackgroundSupervisorDependencies) => Promise<void>;
83
103
  }
84
104
  /**
85
105
  * Parent routine for `serve --background`. Sets `process.exitCode` and returns;
86
106
  * never starts a server in-process.
87
107
  */
88
108
  export declare function runServeBackground(parsedArgv: ServeOptions, deps?: RunBackgroundDeps): Promise<void>;
109
+ /** Persistent child routine selected by the internal background-bootstrap flag. */
110
+ export declare function runServeBackgroundSupervisor(parsedArgv: ServeOptions, deps?: RunBackgroundSupervisorDeps): Promise<void>;
89
111
  //# sourceMappingURL=serveBackground.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"serveBackground.d.ts","sourceRoot":"","sources":["../../../src/commands/serve/serveBackground.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serveBackground.d.ts","sourceRoot":"","sources":["../../../src/commands/serve/serveBackground.ts"],"names":[],"mappings":"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"}
@@ -2,43 +2,122 @@ import { spawn } from 'child_process';
2
2
  import fs from 'fs';
3
3
  import path from 'path';
4
4
  import { ConfigManager } from '../../config/configManager.js';
5
- import { readPidFile } from '../../core/server/pidFileManager.js';
5
+ import { cleanupBackgroundLaunchConfig, writeBackgroundLaunchConfig } from '../../core/server/backgroundLaunchConfig.js';
6
+ import { cleanupBackgroundSupervisorState, runBackgroundRuntimeSupervisor, } from '../../core/server/backgroundRuntimeSupervisor.js';
7
+ import { readBackgroundSupervisorState, } from '../../core/server/backgroundRuntimeSupervisorState.js';
8
+ import { isProcessAlive, readPidFile } from '../../core/server/pidFileManager.js';
6
9
  import { discoverScopedRuntime, probeLoadingSummary, probeReadiness, } from '../../core/server/runtimeLifecycle.js';
10
+ import { claimRuntimeScope } from '../../core/server/runtimeScopeOwnership.js';
7
11
  import logger from '../../logger/logger.js';
8
12
  import { resolveLoggingConfig } from '../../logger/loggingConfig.js';
9
13
  import { normalizedArgv } from '../../utils/cli/normalizedArgv.js';
10
14
  import { resolveServeConfigPaths } from './runtimeScope.js';
11
15
  /**
12
- * `serve --background`: start the HTTP Aggregated Runtime as a detached child
13
- * for the selected Runtime Scope, then return once it is ready.
16
+ * `serve --background`: start a detached persistent supervisor for the selected
17
+ * Runtime Scope, then return once its current worker is ready.
14
18
  *
15
- * The parent never serves; it spawns a detached copy of this executable running
16
- * the normal serve path (marked with an internal guard flag so it does not
17
- * recursively background itself), waits for the child's PID file and
18
- * `/health/ready`, and reports the result.
19
+ * The launcher never serves. The supervisor owns the Runtime Scope, starts
20
+ * authorized workers, and remains resident across retries and crash-loop state.
19
21
  */
20
22
  /** Internal guard flag name; mirrors the hidden yargs option in `index.ts`. */
21
23
  export const BACKGROUND_GUARD_FLAG = 'background-bootstrap';
24
+ export const RUNTIME_OWNER_CLAIM_ID_FLAG = 'runtime-owner-claim-id';
25
+ export const BACKGROUND_LAUNCH_CONFIG_FLAG = 'background-launch-config';
26
+ const BACKGROUND_STARTUP_OPTION_KEYS = [
27
+ 'config',
28
+ 'config-dir',
29
+ 'log-level',
30
+ 'log-file',
31
+ 'transport',
32
+ 'port',
33
+ 'host',
34
+ 'external-url',
35
+ 'preset',
36
+ 'filter',
37
+ 'pagination',
38
+ 'auth',
39
+ 'enable-auth',
40
+ 'enable-scope-validation',
41
+ 'enable-enhanced-security',
42
+ 'session-ttl',
43
+ 'session-storage-path',
44
+ 'rate-limit-window',
45
+ 'rate-limit-max',
46
+ 'trust-proxy',
47
+ 'health-info-level',
48
+ 'enable-async-loading',
49
+ 'async-min-servers',
50
+ 'async-timeout',
51
+ 'async-batch-notifications',
52
+ 'async-batch-delay',
53
+ 'async-notify-on-snapshot',
54
+ 'async-notify-on-ready',
55
+ 'enable-lazy-loading',
56
+ 'lazy-mode',
57
+ 'lazy-inline-catalog',
58
+ 'lazy-catalog-format',
59
+ 'lazy-direct-expose',
60
+ 'lazy-cache-max-entries',
61
+ 'lazy-cache-ttl',
62
+ 'lazy-preload',
63
+ 'lazy-preload-keywords',
64
+ 'lazy-fallback-on-error',
65
+ 'lazy-fallback-timeout',
66
+ 'enable-config-reload',
67
+ 'config-reload-debounce',
68
+ 'enable-env-substitution',
69
+ 'enable-session-persistence',
70
+ 'session-persist-requests',
71
+ 'session-persist-interval',
72
+ 'session-background-flush',
73
+ 'enable-client-notifications',
74
+ 'enable-jsonrpc-error-logging',
75
+ 'enable-internal-tools',
76
+ 'internal-tools',
77
+ 'instructions-template',
78
+ ];
22
79
  /** Default log file for a background runtime when none is configured. */
23
80
  export function defaultBackgroundLogFile(configDir) {
24
81
  return path.join(configDir, 'logs', 'server.log');
25
82
  }
26
- /**
27
- * Build the child's serve arguments: strip flags the parent overrides
28
- * (`--background`, `--transport`/`-t`, `--log-file`, and the guard — including
29
- * their `=`-joined forms) and re-append the HTTP transport, the resolved log
30
- * file, and the guard flag. Background is HTTP-only, so the child is always
31
- * forced onto `--transport http`.
32
- */
33
- export function buildBackgroundChildArgs(serveArgs, opts) {
34
- const stripWithValue = new Set(['--transport', '-t', '--log-file']);
83
+ /** Materialize parsed CLI, environment, and default values for the supervisor. */
84
+ export function buildBackgroundSupervisorArgs(parsedArgv, opts) {
85
+ const args = [];
86
+ for (const key of BACKGROUND_STARTUP_OPTION_KEYS) {
87
+ if (key === 'transport' || key === 'log-file')
88
+ continue;
89
+ const value = parsedArgv[key];
90
+ if (typeof value === 'string' || typeof value === 'number' || typeof value === 'boolean') {
91
+ args.push(`--${key}=${String(value)}`);
92
+ }
93
+ }
94
+ args.push('--transport=http', `--log-file=${opts.logFile}`, `--${BACKGROUND_GUARD_FLAG}`);
95
+ return args;
96
+ }
97
+ /** Build the immutable effective invocation used for every supervised worker. */
98
+ export function buildBackgroundWorkerArgs(serveArgs, opts) {
99
+ const out = stripBackgroundManagedArgs(serveArgs);
100
+ out.push('--transport', 'http', '--log-file', opts.logFile, `--${RUNTIME_OWNER_CLAIM_ID_FLAG}`, opts.claimId);
101
+ if (opts.launchConfigFile)
102
+ out.push(`--${BACKGROUND_LAUNCH_CONFIG_FLAG}`, opts.launchConfigFile);
103
+ return out;
104
+ }
105
+ function stripBackgroundManagedArgs(serveArgs) {
106
+ const stripWithValue = new Set([
107
+ '--transport',
108
+ '-t',
109
+ '--log-file',
110
+ `--${RUNTIME_OWNER_CLAIM_ID_FLAG}`,
111
+ `--${BACKGROUND_LAUNCH_CONFIG_FLAG}`,
112
+ ]);
35
113
  const out = [];
36
114
  for (let i = 0; i < serveArgs.length; i++) {
37
115
  const token = serveArgs[i];
38
- if (token === '--background' || token === `--${BACKGROUND_GUARD_FLAG}`) {
116
+ if (/^--(?:background|restart|status|stop)(?:=.*)?$/.test(token) ||
117
+ /^--background-bootstrap(?:=.*)?$/.test(token)) {
39
118
  continue;
40
119
  }
41
- if (/^--(transport|log-file)=/.test(token) || /^-t=/.test(token)) {
120
+ if (/^--(transport|log-file|runtime-owner-claim-id|background-launch-config)=/.test(token) || /^-t=/.test(token)) {
42
121
  continue;
43
122
  }
44
123
  if (stripWithValue.has(token)) {
@@ -47,7 +126,6 @@ export function buildBackgroundChildArgs(serveArgs, opts) {
47
126
  }
48
127
  out.push(token);
49
128
  }
50
- out.push('--transport', 'http', '--log-file', opts.logFile, `--${BACKGROUND_GUARD_FLAG}`);
51
129
  return out;
52
130
  }
53
131
  /**
@@ -72,7 +150,7 @@ function stripServeToken(args) {
72
150
  }
73
151
  /**
74
152
  * Wait until the child's PID file identifies the spawned child AND
75
- * `/health/ready` succeeds, or until timeout / child death.
153
+ * `/health/ready` succeeds, or until timeout / worker exit.
76
154
  */
77
155
  export async function waitForBackgroundReady(configDir, childPid, options = {}) {
78
156
  const timeoutMs = options.timeoutMs ?? 30000;
@@ -94,10 +172,46 @@ export async function waitForBackgroundReady(configDir, childPid, options = {})
94
172
  }
95
173
  return { ready: false, reason: `timed out after ${timeoutMs}ms waiting for readiness` };
96
174
  }
175
+ /** Wait through worker replacement until readiness or terminal crash-loop. */
176
+ export async function waitForBackgroundSupervisorReady(configDir, supervisorPid, options = {}) {
177
+ const intervalMs = options.intervalMs ?? 250;
178
+ const probe = options.readinessProbe ?? probeReadiness;
179
+ const processAlive = options.isSupervisorAlive ?? isProcessAlive;
180
+ const readState = options.readState ?? readBackgroundSupervisorState;
181
+ const readRuntimeInfo = options.readRuntimeInfo ?? readPidFile;
182
+ const sleep = options.sleep ?? ((ms) => new Promise((resolve) => setTimeout(resolve, ms)));
183
+ const startedAt = Date.now();
184
+ for (;;) {
185
+ if (!processAlive(supervisorPid)) {
186
+ return { ready: false, reason: 'background supervisor exited before the runtime became ready' };
187
+ }
188
+ const state = readState(configDir);
189
+ if (state?.supervisorPid === supervisorPid) {
190
+ if (state.status === 'crash-loop') {
191
+ return { ready: false, terminal: true, reason: 'background runtime entered crash-loop' };
192
+ }
193
+ if (state.runtimePid !== null) {
194
+ const info = readRuntimeInfo(configDir);
195
+ options.onProgress?.({ elapsedMs: Date.now() - startedAt, info: info ?? undefined });
196
+ if (info?.pid === state.runtimePid && (await probe(info))) {
197
+ return { ready: true, info };
198
+ }
199
+ }
200
+ else {
201
+ options.onProgress?.({ elapsedMs: Date.now() - startedAt });
202
+ }
203
+ }
204
+ await sleep(intervalMs);
205
+ }
206
+ }
97
207
  function defaultLoadAppConfig(parsedArgv) {
98
208
  const { configFilePath } = resolveServeConfigPaths(parsedArgv);
99
209
  return ConfigManager.getInstance(configFilePath).getAppConfig();
100
210
  }
211
+ function failBackgroundStart(message) {
212
+ process.stderr.write(`${message}\n`);
213
+ process.exitCode = 1;
214
+ }
101
215
  /**
102
216
  * Parent routine for `serve --background`. Sets `process.exitCode` and returns;
103
217
  * never starts a server in-process.
@@ -112,29 +226,25 @@ export async function runServeBackground(parsedArgv, deps = {}) {
112
226
  // HTTP-only: reject stdio; sse normalizes to http.
113
227
  const effectiveTransport = parsedArgv.transport ?? appConfig.transport ?? 'http';
114
228
  if (effectiveTransport === 'stdio') {
115
- process.stderr.write('Error: `serve --background --transport stdio` is not supported.\n' +
116
- 'stdio uses the invoking process stdin/stdout and cannot be detached. Use HTTP transport.\n');
117
- process.exitCode = 1;
229
+ failBackgroundStart('Error: `serve --background --transport stdio` is not supported.\n' +
230
+ 'stdio uses the invoking process stdin/stdout and cannot be detached. Use HTTP transport.');
118
231
  return;
119
232
  }
120
- // Idempotency: do not start a second runtime if the scope is already occupied.
233
+ // Fail closed when discovery already proves that this scope is occupied.
121
234
  const existing = await discoverScopedRuntime(configDir);
122
235
  if (existing.status === 'running' && existing.info) {
123
- process.stdout.write(`A runtime is already running in this Runtime Scope; not starting another.\n` +
124
- formatStartedReport(existing.info));
125
- process.exitCode = 0;
236
+ failBackgroundStart(`A runtime already owns this Runtime Scope (PID ${existing.info.pid}).\n` +
237
+ `Refusing to start another runtime. Stop it first.`);
126
238
  return;
127
239
  }
128
240
  if (existing.status === 'unreachable' && existing.info) {
129
- process.stderr.write(`A runtime already occupies this Runtime Scope (PID ${existing.info.pid}) but is not ready yet.\n` +
130
- `Refusing to start a second runtime. Check 'serve --status' or stop it first.\n`);
131
- process.exitCode = 1;
241
+ failBackgroundStart(`A runtime already occupies this Runtime Scope (PID ${existing.info.pid}) but is not ready yet.\n` +
242
+ `Refusing to start a second runtime. Check 'serve --status' or stop it first.`);
132
243
  return;
133
244
  }
134
245
  if (existing.status === 'error') {
135
- process.stderr.write(`Cannot inspect Runtime Scope ${configDir}: ${existing.error ?? 'PID file could not be read'}.\n` +
136
- `Refusing to start a second runtime until the PID file problem is fixed.\n`);
137
- process.exitCode = 1;
246
+ failBackgroundStart(`Cannot inspect Runtime Scope ${configDir}: ${existing.error ?? 'PID file could not be read'}.\n` +
247
+ `Refusing to start a second runtime until the PID file problem is fixed.`);
138
248
  return;
139
249
  }
140
250
  // Resolve the effective log file, defaulting to <configDir>/logs/server.log.
@@ -148,32 +258,30 @@ export async function runServeBackground(parsedArgv, deps = {}) {
148
258
  });
149
259
  const logFile = resolved.file ?? defaultBackgroundLogFile(configDir);
150
260
  fs.mkdirSync(path.dirname(logFile), { recursive: true });
151
- // Build the detached child invocation.
152
- const rawArgv = deps.rawArgv ?? normalizedArgv;
153
- const childServeArgs = buildBackgroundChildArgs(stripServeToken(rawArgv), { logFile });
261
+ // Materialize parsed CLI/env/default precedence into the detached supervisor.
262
+ const supervisorServeArgs = buildBackgroundSupervisorArgs(parsedArgv, { logFile });
154
263
  const { command, baseArgs } = resolveSelfInvocation();
155
- const spawnArgs = [...baseArgs, 'serve', ...childServeArgs];
264
+ const supervisorArgs = [...baseArgs, 'serve', ...supervisorServeArgs];
156
265
  const spawnChild = deps.spawnChild ??
157
266
  ((cmd, args, options) => spawn(cmd, args, options));
158
- const child = spawnChild(command, spawnArgs, { detached: true, stdio: 'ignore' });
159
- if (!child.pid) {
160
- process.stderr.write('Error: failed to spawn background runtime process.\n');
161
- process.exitCode = 1;
267
+ const supervisor = spawnChild(command, supervisorArgs, { detached: true, stdio: 'ignore' });
268
+ if (!supervisor.pid) {
269
+ failBackgroundStart('Error: failed to spawn background runtime process.');
162
270
  return;
163
271
  }
164
272
  // Allow the parent to exit independently of the child.
165
- child.unref();
273
+ supervisor.unref();
166
274
  // Acknowledge the spawn immediately so the wait is never silent.
167
- process.stderr.write(`Starting background runtime (PID ${child.pid})…\n`);
275
+ process.stderr.write(`Starting background runtime supervisor (PID ${supervisor.pid})…\n`);
168
276
  process.stderr.write(`Log file: ${logFile}\n`);
169
- let childExited = false;
170
- child.once('exit', () => {
171
- childExited = true;
277
+ let supervisorExited = false;
278
+ supervisor.once('exit', () => {
279
+ supervisorExited = true;
172
280
  });
173
281
  const renderer = createProgressRenderer(logFile);
174
- const waitForReady = deps.waitForReady ?? waitForBackgroundReady;
175
- const result = await waitForReady(configDir, child.pid, {
176
- isChildAlive: () => !childExited,
282
+ const waitForReady = deps.waitForReady ?? waitForBackgroundSupervisorReady;
283
+ const result = await waitForReady(configDir, supervisor.pid, {
284
+ isSupervisorAlive: () => !supervisorExited,
177
285
  onProgress: renderer.render,
178
286
  });
179
287
  renderer.clear();
@@ -184,35 +292,97 @@ export async function runServeBackground(parsedArgv, deps = {}) {
184
292
  process.exitCode = 0;
185
293
  return;
186
294
  }
187
- // Failure: report log path, terminate the child, exit non-zero.
188
- process.stderr.write(`Error: background runtime did not become ready (${result.reason ?? 'unknown error'}).\n` +
189
- `See the log for details: ${logFile}\n`);
295
+ // Startup failure is non-zero. A terminal crash-loop supervisor deliberately
296
+ // remains resident for status/stop/restart; other bootstrap failures are
297
+ // terminated because they never established the persistent lifecycle owner.
298
+ failBackgroundStart(`Error: background runtime did not become ready (${result.reason ?? 'unknown error'}).\n` +
299
+ `See the log for details: ${logFile}`);
190
300
  const killChild = deps.killChild ?? defaultKillChild;
191
- if (!childExited && child.pid) {
192
- killChild(child.pid);
301
+ if (!result.terminal && !supervisorExited && supervisor.pid) {
302
+ killChild(supervisor.pid);
193
303
  }
194
- process.exitCode = 1;
304
+ }
305
+ /** Persistent child routine selected by the internal background-bootstrap flag. */
306
+ export async function runServeBackgroundSupervisor(parsedArgv, deps = {}) {
307
+ const { runtimeScope: configDir } = resolveServeConfigPaths(parsedArgv);
308
+ const ownership = (deps.claimScope ?? ((scope) => claimRuntimeScope(scope, { kind: 'background-supervisor' })))(configDir);
309
+ let launchConfigFile;
310
+ let supervisorFailure;
311
+ try {
312
+ const loadAppConfig = deps.loadAppConfig ?? defaultLoadAppConfig;
313
+ const appConfig = loadAppConfig(parsedArgv);
314
+ const { resolved } = resolveLoggingConfig({
315
+ cli: { level: parsedArgv['log-level'], file: parsedArgv['log-file'] },
316
+ structured: appConfig.logging,
317
+ flat: { level: appConfig.logLevel, file: appConfig.logFile },
318
+ });
319
+ const logFile = resolved.file ?? defaultBackgroundLogFile(configDir);
320
+ fs.mkdirSync(path.dirname(logFile), { recursive: true });
321
+ launchConfigFile = writeBackgroundLaunchConfig(configDir, ownership.record.claimId, appConfig);
322
+ const rawArgv = deps.rawArgv ?? normalizedArgv;
323
+ const workerServeArgs = buildBackgroundWorkerArgs(stripServeToken(rawArgv), {
324
+ logFile,
325
+ claimId: ownership.record.claimId,
326
+ launchConfigFile,
327
+ });
328
+ const { command, baseArgs } = resolveSelfInvocation();
329
+ const workerArgs = [...baseArgs, 'serve', ...workerServeArgs];
330
+ const runSupervisor = deps.runSupervisor ?? runBackgroundRuntimeSupervisor;
331
+ const appendEvent = (event) => {
332
+ fs.appendFileSync(logFile, `${JSON.stringify(event)}\n`, 'utf8');
333
+ };
334
+ await runSupervisor({ configDir, workerCommand: command, workerArgs }, {
335
+ waitForReady: async (worker) => {
336
+ const workerPid = worker.pid;
337
+ if (!workerPid)
338
+ return false;
339
+ const result = await waitForBackgroundReady(configDir, workerPid, {
340
+ isChildAlive: () => isProcessAlive(workerPid),
341
+ });
342
+ return result.ready;
343
+ },
344
+ appendEvent,
345
+ });
346
+ }
347
+ catch (error) {
348
+ supervisorFailure = { error };
349
+ }
350
+ if (launchConfigFile && !cleanupBackgroundLaunchConfig(configDir, ownership.record.claimId)) {
351
+ throw createCleanupMismatchError('Background launch configuration changed before supervisor cleanup', supervisorFailure);
352
+ }
353
+ if (!cleanupBackgroundSupervisorState(configDir, ownership.record.pid)) {
354
+ throw createCleanupMismatchError('Background supervisor state changed before supervisor cleanup', supervisorFailure);
355
+ }
356
+ ownership.release();
357
+ if (supervisorFailure)
358
+ throw supervisorFailure.error;
359
+ }
360
+ function createCleanupMismatchError(message, supervisorFailure) {
361
+ if (!supervisorFailure) {
362
+ return new Error(message);
363
+ }
364
+ return new Error(message, { cause: supervisorFailure.error });
195
365
  }
196
366
  function defaultKillChild(pid) {
197
367
  try {
198
368
  process.kill(pid, 'SIGTERM');
199
369
  }
200
370
  catch (error) {
201
- logger.warn(`Failed to terminate background child (PID: ${pid}): ${error}`);
371
+ logger.warn(`Failed to terminate background supervisor (PID: ${pid}): ${error}`);
202
372
  }
203
373
  }
204
374
  function formatStartedReport(info, opts = {}) {
205
- let report = `PID: ${info.pid}\n` + `URL: ${info.url}\n` + `Log file: ${info.logFile ?? '(console only)'}\n`;
375
+ const lines = [`PID: ${info.pid}`, `URL: ${info.url}`, `Log file: ${info.logFile ?? '(console only)'}`];
206
376
  if (opts.summary) {
207
- report += `Servers: ${opts.summary.ready}/${opts.summary.total} ready\n`;
377
+ lines.push(`Servers: ${opts.summary.ready}/${opts.summary.total} ready`);
208
378
  }
209
379
  // In the default sync mode the wait is bounded by upstream connection time;
210
380
  // point users at the fast-detach path. Omitted when async is already on, or
211
- // when the caller does not supply the flag (e.g. the idempotency report).
381
+ // when the caller does not supply the flag.
212
382
  if (opts.asyncEnabled === false) {
213
- report += `Tip: run with --enable-async-loading for near-instant background detach.\n`;
383
+ lines.push('Tip: run with --enable-async-loading for near-instant background detach.');
214
384
  }
215
- return report;
385
+ return `${lines.join('\n')}\n`;
216
386
  }
217
387
  /** Truncate a single line so progress output stays on one terminal row. */
218
388
  function truncate(text, max) {
@@ -1 +1 @@
1
- {"version":3,"file":"serveBackground.js","sourceRoot":"","sources":["../../../src/commands/serve/serveBackground.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serveBackground.js","sourceRoot":"","sources":["../../../src/commands/serve/serveBackground.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ import { runServeStop } from './serveStop.js';
9
9
  * clean no-op and a background runtime is still started, so a successful restart
10
10
  * always ends in a running runtime. This is a thin composition of the existing
11
11
  * `--stop` and `--background` handlers; staleness handling, signal escalation,
12
- * detached spawn, readiness wait, and idempotency all come from them unchanged.
12
+ * detached spawn, readiness wait, and exclusive startup all come from them unchanged.
13
13
  *
14
14
  * Both handlers communicate via `process.exitCode` (the established lifecycle
15
15
  * pattern), so this routine inspects it between the two phases: if the stop
@@ -15,7 +15,7 @@ export async function runServeRestart(parsedArgv, deps = {}) {
15
15
  return;
16
16
  }
17
17
  // Phase 2: start a fresh detached background runtime. The stop cleaned up the
18
- // PID file, so the background idempotency probe sees an empty scope.
18
+ // lifecycle metadata, so the background startup sees an empty scope.
19
19
  process.exitCode = undefined;
20
20
  await runBackground(parsedArgv);
21
21
  }