@1mcp/agent 0.38.0 → 0.38.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 (322) hide show
  1. package/build/admin/assets/{admin-OAuthServicesWorkspace-CzXIIHM0.js → admin-OAuthServicesWorkspace-C3DNmymC.js} +1 -1
  2. package/build/admin/assets/{admin-console-Mv3xmdoU.js → admin-console-BmdH0cQS.js} +3 -3
  3. package/build/admin/index.html +1 -1
  4. package/build/auth/oauthAuthorizationFlow.d.ts +4 -0
  5. package/build/auth/oauthAuthorizationFlow.d.ts.map +1 -1
  6. package/build/auth/oauthAuthorizationFlow.js +61 -4
  7. package/build/auth/oauthAuthorizationFlow.js.map +1 -1
  8. package/build/auth/storage/authCodeRepository.d.ts +1 -1
  9. package/build/auth/storage/authRequestRepository.d.ts +1 -1
  10. package/build/auth/storage/clientSessionRepository.d.ts +1 -1
  11. package/build/auth/storage/fileStorageService.d.ts +1 -1
  12. package/build/auth/storage/refreshTokenFamilyRepository.d.ts +1 -1
  13. package/build/auth/storage/refreshTokenFamilyRepository.js +1 -1
  14. package/build/auth/storage/sessionRepository.d.ts +1 -1
  15. package/build/auth/storage/sessionRepository.js +1 -1
  16. package/build/commands/admin/admin.d.ts +2 -2
  17. package/build/commands/admin/admin.js +3 -3
  18. package/build/commands/admin/index.js +1 -1
  19. package/build/commands/app/consolidate.js +1 -1
  20. package/build/commands/auth/index.js +1 -1
  21. package/build/commands/auth/login.js +1 -1
  22. package/build/commands/auth/runtimeTargetContext.js +1 -1
  23. package/build/commands/auth/status.js +1 -1
  24. package/build/commands/inspect/index.js +1 -1
  25. package/build/commands/inspect/inspect.d.ts +2 -2
  26. package/build/commands/inspect/inspect.d.ts.map +1 -1
  27. package/build/commands/inspect/inspect.js +37 -7
  28. package/build/commands/inspect/inspect.js.map +1 -1
  29. package/build/commands/inspect/inspectUtils.d.ts +1 -1
  30. package/build/commands/inspect/inspectUtils.d.ts.map +1 -1
  31. package/build/commands/inspect/inspectUtils.js +12 -3
  32. package/build/commands/inspect/inspectUtils.js.map +1 -1
  33. package/build/commands/instructions/index.js +1 -1
  34. package/build/commands/instructions/instructions.js +4 -4
  35. package/build/commands/mcp/enable.d.ts +1 -1
  36. package/build/commands/mcp/enable.js +2 -2
  37. package/build/commands/mcp/restart.d.ts +1 -1
  38. package/build/commands/mcp/restart.js +2 -2
  39. package/build/commands/mcp/status.d.ts +1 -1
  40. package/build/commands/mcp/status.js +2 -2
  41. package/build/commands/mcp/tokens.js +1 -1
  42. package/build/commands/mcp/tools.d.ts +1 -1
  43. package/build/commands/mcp/tools.js +1 -1
  44. package/build/commands/mcp/utils/mcpServerConfig.d.ts +1 -1
  45. package/build/commands/mcp/utils/mcpServerConfig.js +2 -2
  46. package/build/commands/preset/edit.js +1 -1
  47. package/build/commands/preset/interactive.js +1 -1
  48. package/build/commands/preset/show.js +1 -1
  49. package/build/commands/preset/test.js +1 -1
  50. package/build/commands/proxy/proxy.js +1 -1
  51. package/build/commands/run/index.js +1 -1
  52. package/build/commands/run/run.d.ts +3 -3
  53. package/build/commands/run/run.d.ts.map +1 -1
  54. package/build/commands/run/run.js +14 -8
  55. package/build/commands/run/run.js.map +1 -1
  56. package/build/commands/run/upstreamEofGuidance.d.ts +3 -0
  57. package/build/commands/run/upstreamEofGuidance.d.ts.map +1 -0
  58. package/build/commands/run/upstreamEofGuidance.js +19 -0
  59. package/build/commands/run/upstreamEofGuidance.js.map +1 -0
  60. package/build/commands/serve/serveBackground.d.ts +3 -0
  61. package/build/commands/serve/serveBackground.d.ts.map +1 -1
  62. package/build/commands/serve/serveBackground.js +19 -5
  63. package/build/commands/serve/serveBackground.js.map +1 -1
  64. package/build/commands/serve/serveStatus.d.ts +2 -1
  65. package/build/commands/serve/serveStatus.d.ts.map +1 -1
  66. package/build/commands/serve/serveStatus.js +30 -12
  67. package/build/commands/serve/serveStatus.js.map +1 -1
  68. package/build/commands/serve/serveStop.d.ts +2 -1
  69. package/build/commands/serve/serveStop.d.ts.map +1 -1
  70. package/build/commands/serve/serveStop.js +113 -20
  71. package/build/commands/serve/serveStop.js.map +1 -1
  72. package/build/commands/shared/clientSurfaceAttachment.d.ts +3 -3
  73. package/build/commands/shared/clientSurfaceAttachment.js +4 -4
  74. package/build/commands/shared/inspectApiSchemas.d.ts +13 -0
  75. package/build/commands/shared/inspectApiSchemas.d.ts.map +1 -1
  76. package/build/commands/shared/inspectApiSchemas.js +18 -0
  77. package/build/commands/shared/inspectApiSchemas.js.map +1 -1
  78. package/build/commands/shared/serveTargetResolver.d.ts +1 -1
  79. package/build/commands/shared/serveTargetResolver.js +1 -1
  80. package/build/commands/target/index.js +1 -1
  81. package/build/commands/wait/index.js +1 -1
  82. package/build/commands/wait/wait.d.ts +2 -2
  83. package/build/commands/wait/wait.js +4 -4
  84. package/build/config/configLoader.js +1 -1
  85. package/build/config/configManager.js +3 -3
  86. package/build/config/configuredServerTargets.js +1 -1
  87. package/build/config/mcpConfigManager.js +3 -3
  88. package/build/constants/mcp.d.ts +1 -1
  89. package/build/constants/mcp.js +1 -1
  90. package/build/constants.d.ts +1 -1
  91. package/build/constants.js +1 -1
  92. package/build/core/capabilities/asyncLoadingOrchestrator.d.ts +4 -4
  93. package/build/core/capabilities/asyncLoadingOrchestrator.js +3 -3
  94. package/build/core/capabilities/capabilityAggregator.d.ts +1 -1
  95. package/build/core/capabilities/capabilityAggregator.js +1 -1
  96. package/build/core/capabilities/capabilityCatalog.d.ts +2 -2
  97. package/build/core/capabilities/capabilityCatalog.js +5 -5
  98. package/build/core/capabilities/capabilityManager.d.ts +1 -1
  99. package/build/core/capabilities/capabilityManager.js +2 -2
  100. package/build/core/capabilities/capabilityPagination.d.ts +1 -1
  101. package/build/core/capabilities/configuredToolSnapshot.d.ts +1 -1
  102. package/build/core/capabilities/configuredToolSnapshot.js +1 -1
  103. package/build/core/capabilities/inspectPagination.d.ts +16 -0
  104. package/build/core/capabilities/inspectPagination.d.ts.map +1 -0
  105. package/build/core/capabilities/inspectPagination.js +41 -0
  106. package/build/core/capabilities/inspectPagination.js.map +1 -0
  107. package/build/core/capabilities/internal/discoveryTools.js +1 -1
  108. package/build/core/capabilities/internal/installationTools.js +1 -1
  109. package/build/core/capabilities/internal/managementTools.js +1 -1
  110. package/build/core/capabilities/internalCapabilitiesProvider.d.ts +2 -2
  111. package/build/core/capabilities/internalCapabilitiesProvider.js +8 -8
  112. package/build/core/capabilities/lazyLoadingOrchestrator.d.ts +3 -3
  113. package/build/core/capabilities/lazyLoadingOrchestrator.js +3 -3
  114. package/build/core/capabilities/metaToolProvider.d.ts +2 -2
  115. package/build/core/capabilities/runtimeCapabilityCatalog.d.ts +1 -1
  116. package/build/core/capabilities/runtimeCapabilityCatalog.js +4 -4
  117. package/build/core/capabilities/toolRegistry.d.ts +1 -1
  118. package/build/core/client/postAuthOAuthRecovery.d.ts +1 -1
  119. package/build/core/client/postAuthOAuthRecovery.js +3 -3
  120. package/build/core/client/renderableOutboundConnection.d.ts +2 -2
  121. package/build/core/configChangeHandler.js +6 -6
  122. package/build/core/filtering/clientFiltering.d.ts +1 -1
  123. package/build/core/filtering/filterCache.d.ts +1 -1
  124. package/build/core/filtering/filterSelection.d.ts +1 -1
  125. package/build/core/filtering/filteringService.d.ts +1 -1
  126. package/build/core/filtering/filteringService.js +1 -1
  127. package/build/core/filtering/templateFilteringService.d.ts +2 -2
  128. package/build/core/filtering/templateIndex.d.ts +1 -1
  129. package/build/core/flags/flagManager.js +1 -1
  130. package/build/core/instructions/effectiveServerInstructions.d.ts +1 -1
  131. package/build/core/instructions/instructionAggregator.d.ts +3 -3
  132. package/build/core/instructions/instructionAggregator.js +1 -1
  133. package/build/core/loading/loadingStateTracker.d.ts.map +1 -1
  134. package/build/core/loading/loadingStateTracker.js +5 -1
  135. package/build/core/loading/loadingStateTracker.js.map +1 -1
  136. package/build/core/loading/mcpLoadingManager.d.ts +2 -2
  137. package/build/core/notifications/notificationManager.d.ts +2 -2
  138. package/build/core/notifications/notificationManager.js +2 -2
  139. package/build/core/protocol/requestHandlerUtils.d.ts +4 -4
  140. package/build/core/protocol/requestHandlerUtils.js +9 -9
  141. package/build/core/server/adapters/ExternalServerAdapter.d.ts +2 -2
  142. package/build/core/server/adapters/ServerRegistry.d.ts +3 -3
  143. package/build/core/server/adapters/TemplateServerAdapter.d.ts +3 -3
  144. package/build/core/server/adapters/types.d.ts +3 -3
  145. package/build/core/server/adapters/types.js +1 -1
  146. package/build/core/server/agentConfig.d.ts +3 -3
  147. package/build/core/server/agentConfig.js +2 -2
  148. package/build/core/server/backendStdioSupervisor.d.ts.map +1 -1
  149. package/build/core/server/backendStdioSupervisor.js +8 -5
  150. package/build/core/server/backendStdioSupervisor.js.map +1 -1
  151. package/build/core/server/backgroundLaunchConfig.d.ts +1 -1
  152. package/build/core/server/backgroundLaunchConfig.js +1 -1
  153. package/build/core/server/backgroundRuntimeSupervisor.d.ts +2 -2
  154. package/build/core/server/backgroundRuntimeSupervisor.d.ts.map +1 -1
  155. package/build/core/server/backgroundRuntimeSupervisor.js +12 -4
  156. package/build/core/server/backgroundRuntimeSupervisor.js.map +1 -1
  157. package/build/core/server/backgroundRuntimeSupervisorState.d.ts +3 -0
  158. package/build/core/server/backgroundRuntimeSupervisorState.d.ts.map +1 -1
  159. package/build/core/server/backgroundRuntimeSupervisorState.js +3 -0
  160. package/build/core/server/backgroundRuntimeSupervisorState.js.map +1 -1
  161. package/build/core/server/connectionResolver.d.ts +1 -1
  162. package/build/core/server/disabledTools.d.ts +1 -1
  163. package/build/core/server/pidFileManager.d.ts +6 -2
  164. package/build/core/server/pidFileManager.d.ts.map +1 -1
  165. package/build/core/server/pidFileManager.js +13 -4
  166. package/build/core/server/pidFileManager.js.map +1 -1
  167. package/build/core/server/processIdentity.d.ts +27 -0
  168. package/build/core/server/processIdentity.d.ts.map +1 -0
  169. package/build/core/server/processIdentity.js +101 -0
  170. package/build/core/server/processIdentity.js.map +1 -0
  171. package/build/core/server/runtimeFileLock.d.ts +6 -0
  172. package/build/core/server/runtimeFileLock.d.ts.map +1 -0
  173. package/build/core/server/runtimeFileLock.js +34 -0
  174. package/build/core/server/runtimeFileLock.js.map +1 -0
  175. package/build/core/server/runtimeLifecycle.d.ts +5 -5
  176. package/build/core/server/runtimeLifecycle.d.ts.map +1 -1
  177. package/build/core/server/runtimeLifecycle.js +16 -3
  178. package/build/core/server/runtimeLifecycle.js.map +1 -1
  179. package/build/core/server/runtimeScopeOwnership.d.ts +3 -0
  180. package/build/core/server/runtimeScopeOwnership.d.ts.map +1 -1
  181. package/build/core/server/runtimeScopeOwnership.js +95 -28
  182. package/build/core/server/runtimeScopeOwnership.js.map +1 -1
  183. package/build/core/server/templateConfigurationManager.d.ts +1 -1
  184. package/build/core/server/toolDescriptionOverrides.d.ts +1 -1
  185. package/build/core/tools/handlers/serverManagementHandler.d.ts +4 -4
  186. package/build/core/tools/handlers/serverManagementHandler.js +3 -3
  187. package/build/core/tools/internal/adapters/helpers/configTransformers.d.ts +1 -1
  188. package/build/core/tools/internal/adapters/management/managementAdapter.d.ts +1 -1
  189. package/build/core/tools/internal/adapters/management/managementAdapter.js +2 -2
  190. package/build/core/tools/internal/adapters/management/toolHandlers.js +1 -1
  191. package/build/core/tools/internal/adapters/management/types.d.ts +1 -1
  192. package/build/core/tools/internal/adapters/management/validation.d.ts +1 -1
  193. package/build/core/tools/internal/adapters/validation/configValidation.d.ts +1 -1
  194. package/build/core/tools/internal/discoveryHandlers.js +1 -1
  195. package/build/core/tools/internal/installationHandlers.js +2 -2
  196. package/build/core/tools/internal/managementHandlers.js +2 -2
  197. package/build/core/types/server.d.ts +2 -2
  198. package/build/domains/admin/adminConfiguredServerService.d.ts +1 -1
  199. package/build/domains/admin/adminConfiguredServerService.js +2 -2
  200. package/build/domains/admin/adminDomain.d.ts +2 -2
  201. package/build/domains/admin/adminDomain.js +1 -1
  202. package/build/domains/admin/adminInstructionPreviewRuntime.d.ts +1 -1
  203. package/build/domains/admin/adminInstructionPreviewRuntime.js +1 -1
  204. package/build/domains/admin/adminInstructionTemplateService.d.ts +3 -3
  205. package/build/domains/admin/adminOAuthService.d.ts +1 -0
  206. package/build/domains/admin/adminOAuthService.d.ts.map +1 -1
  207. package/build/domains/admin/adminOAuthService.js +8 -2
  208. package/build/domains/admin/adminOAuthService.js.map +1 -1
  209. package/build/domains/admin/adminPresetService.d.ts +2 -2
  210. package/build/domains/admin/adminPresetService.js +2 -2
  211. package/build/domains/admin/configuredToolInventory.js +1 -1
  212. package/build/domains/admin/runtimeConfiguredToolInspectionService.js +1 -1
  213. package/build/domains/discovery/appDiscovery.js +2 -2
  214. package/build/domains/installation/metadata/defaultsProvider.d.ts +1 -1
  215. package/build/domains/installation/metadata/metadataExtractor.d.ts +1 -1
  216. package/build/domains/installation/serverInstallationSourceResolution.d.ts +1 -1
  217. package/build/domains/installation/serverInstallationTypes.d.ts +2 -2
  218. package/build/domains/installation/serverInstallationWorkflow.js +2 -2
  219. package/build/domains/instruction-template/instructionTemplateManager.d.ts +1 -1
  220. package/build/domains/instruction-template/instructionTemplateManager.js +1 -1
  221. package/build/domains/preset/manager/presetManager.d.ts +1 -1
  222. package/build/domains/preset/manager/presetManager.js +3 -3
  223. package/build/domains/preset/manager/presetManagerCleanup.d.ts +2 -2
  224. package/build/domains/preset/manager/presetStorage.d.ts +1 -1
  225. package/build/domains/preset/manager/presetTesting.d.ts +1 -1
  226. package/build/domains/preset/manager/presetTesting.js +2 -2
  227. package/build/domains/preset/manager/presetValidation.d.ts +1 -1
  228. package/build/domains/preset/manager/presetValidation.js +1 -1
  229. package/build/domains/preset/parsers/tagQueryEvaluator.d.ts +1 -1
  230. package/build/domains/preset/parsers/tagQueryParser.d.ts +1 -1
  231. package/build/domains/registry/formatters/commonFormatters.d.ts +1 -1
  232. package/build/domains/registry/formatters/serverDetailFormatter.d.ts +1 -1
  233. package/build/domains/registry/formatters/serverDetailFormatter.js +1 -1
  234. package/build/domains/registry/formatters/versionsFormatter.d.ts +1 -1
  235. package/build/domains/registry/searchFiltering.d.ts +1 -1
  236. package/build/domains/registry/searchFiltering.js +1 -1
  237. package/build/domains/server-management/types.d.ts +1 -1
  238. package/build/logger/configureGlobalLogger.js +1 -1
  239. package/build/sdk/legacy/auth/sdkOAuthClientProvider.d.ts +2 -2
  240. package/build/sdk/legacy/auth/sdkOAuthServerProvider.d.ts +4 -4
  241. package/build/sdk/legacy/auth/sdkOAuthServerProvider.js +1 -1
  242. package/build/sdk/legacy/client/runtime/clientManager.d.ts +1 -1
  243. package/build/sdk/legacy/client/runtime/legacyGatewayClientAdapter.d.ts +2 -2
  244. package/build/sdk/legacy/client/runtime/legacyGatewayClientAdapter.js +1 -1
  245. package/build/sdk/legacy/client/runtime/legacyOutboundConnection.js +1 -1
  246. package/build/sdk/legacy/client/runtime/legacySdkClientAdapter.d.ts +2 -2
  247. package/build/sdk/legacy/client/runtime/legacySdkClientAdapter.js +4 -4
  248. package/build/sdk/legacy/client/runtime/legacyTransport.d.ts +1 -1
  249. package/build/sdk/legacy/client/runtime/modernSdkClientAdapter.d.ts +1 -1
  250. package/build/sdk/legacy/client/runtime/modernSdkClientAdapter.js +2 -2
  251. package/build/sdk/legacy/client/runtime/outboundRequestParams.d.ts +1 -1
  252. package/build/sdk/legacy/client/runtime/serveClient.d.ts +2 -2
  253. package/build/sdk/legacy/client/runtime/serveClient.d.ts.map +1 -1
  254. package/build/sdk/legacy/client/runtime/serveClient.js +4 -4
  255. package/build/sdk/legacy/client/runtime/serveClient.js.map +1 -1
  256. package/build/sdk/legacy/commands/serve.js +1 -1
  257. package/build/sdk/legacy/server/protocol/notificationHandlers.d.ts +1 -1
  258. package/build/sdk/legacy/server/protocol/notificationHandlers.js +5 -5
  259. package/build/sdk/legacy/server/protocol/promptRequestHandlers.d.ts +1 -1
  260. package/build/sdk/legacy/server/protocol/promptRequestHandlers.js +3 -3
  261. package/build/sdk/legacy/server/protocol/requestHandlers.d.ts +1 -1
  262. package/build/sdk/legacy/server/protocol/requestHandlers.js +3 -3
  263. package/build/sdk/legacy/server/protocol/resourceRequestHandlers.d.ts +1 -1
  264. package/build/sdk/legacy/server/protocol/resourceRequestHandlers.js +4 -4
  265. package/build/sdk/legacy/server/protocol/toolRequestHandlers.d.ts +1 -1
  266. package/build/sdk/legacy/server/protocol/toolRequestHandlers.js +3 -3
  267. package/build/sdk/legacy/server/runtime/clientInstancePoolTypes.d.ts +2 -2
  268. package/build/sdk/legacy/server/runtime/connectionManager.d.ts +1 -1
  269. package/build/sdk/legacy/server/runtime/connectionManager.js +2 -2
  270. package/build/sdk/legacy/server/runtime/legacyInboundConnection.d.ts +2 -2
  271. package/build/sdk/legacy/server/runtime/legacySdkServerAdapter.d.ts +3 -3
  272. package/build/sdk/legacy/server/runtime/legacySdkServerAdapter.js +2 -2
  273. package/build/sdk/legacy/server/runtime/mcpLoggingEnhancer.d.ts +1 -1
  274. package/build/sdk/legacy/server/runtime/mcpServerLifecycleManager.d.ts +2 -2
  275. package/build/sdk/legacy/server/runtime/mcpServerLifecycleManager.js +1 -1
  276. package/build/sdk/legacy/server/runtime/requestContextPreparation.d.ts +1 -1
  277. package/build/sdk/legacy/server/runtime/serverManager.d.ts +1 -1
  278. package/build/sdk/legacy/server/runtime/serverManager.js +1 -1
  279. package/build/sdk/legacy/server/runtime/templateServerCleanup.d.ts +1 -1
  280. package/build/sdk/legacy/server/runtime/templateServerManager.d.ts +1 -1
  281. package/build/sdk/legacy/server/runtime/templateServerManager.js +1 -1
  282. package/build/sdk/legacy/shared/capabilityListCapture.d.ts +1 -1
  283. package/build/sdk/legacy/shared/capabilityListCapture.js +1 -1
  284. package/build/sdk/legacy/transport/http/loggingSseTransport.d.ts +2 -2
  285. package/build/sdk/legacy/transport/http/loggingSseTransport.js +1 -1
  286. package/build/sdk/legacy/transport/http/middlewares/scopeAuthMiddleware.d.ts +1 -1
  287. package/build/sdk/legacy/transport/http/middlewares/scopeAuthMiddleware.js +1 -1
  288. package/build/sdk/legacy/transport/http/modernInboundLegacyBridge.js +2 -2
  289. package/build/sdk/legacy/transport/http/restorableStreamableTransport.d.ts +1 -1
  290. package/build/sdk/legacy/transport/http/restorableStreamableTransport.js +1 -1
  291. package/build/sdk/legacy/transport/http/routes/sseRoutes.js +2 -2
  292. package/build/sdk/legacy/transport/http/server.js +2 -2
  293. package/build/sdk/legacy/transport/http/streamableSessionLifecycle.d.ts +1 -1
  294. package/build/sdk/legacy/transport/http/streamableSessionLifecycle.js +1 -1
  295. package/build/sdk/legacy/transport/restartableStdioTransport.d.ts +3 -3
  296. package/build/sdk/legacy/transport/restartableStdioTransport.js +1 -1
  297. package/build/sdk/legacy/transport/stdioProxyTransport.js +2 -2
  298. package/build/sdk/legacy/transport/transportFactory.js +3 -3
  299. package/build/sdk/legacy/validation/CustomJsonSchemaValidator.d.ts +1 -1
  300. package/build/transport/http/middlewares/httpRequestLogger.js +1 -1
  301. package/build/transport/http/middlewares/tagsExtractor.js +1 -1
  302. package/build/transport/http/routes/adminRoutes.d.ts +3 -1
  303. package/build/transport/http/routes/adminRoutes.d.ts.map +1 -1
  304. package/build/transport/http/routes/adminRoutes.js +36 -1
  305. package/build/transport/http/routes/adminRoutes.js.map +1 -1
  306. package/build/transport/http/routes/apiRoutes.js +1 -1
  307. package/build/transport/http/routes/inspectHelpers.js +1 -1
  308. package/build/transport/http/routes/inspectRequestContext.js +2 -2
  309. package/build/transport/http/routes/inspectRoutes.d.ts.map +1 -1
  310. package/build/transport/http/routes/inspectRoutes.js +57 -59
  311. package/build/transport/http/routes/inspectRoutes.js.map +1 -1
  312. package/build/transport/http/routes/modernHttpRoutes.js +1 -1
  313. package/build/transport/http/routes/oauthRoutes.d.ts.map +1 -1
  314. package/build/transport/http/routes/oauthRoutes.js +20 -4
  315. package/build/transport/http/routes/oauthRoutes.js.map +1 -1
  316. package/build/transport/http/routes/streamableHttpRoutes.d.ts +2 -2
  317. package/build/transport/http/routes/streamableHttpRoutes.js +7 -7
  318. package/build/transport/http/routes/toolRoutes.js +1 -1
  319. package/build/transport/http/storage/streamableSessionRepository.js +1 -1
  320. package/build/transport/http/utils/templateContextAuthority.js +1 -1
  321. package/build/utils/validation/urlDetection.js +1 -1
  322. package/package.json +1 -1
@@ -2,6 +2,7 @@ import fs from 'fs';
2
2
  import path from 'path';
3
3
  import logger from '../../logger/logger.js';
4
4
  import { z } from 'zod';
5
+ import { processIdentitySchema, readProcessIdentity } from './processIdentity.js';
5
6
  /**
6
7
  * Schema validating a PID file at the (untrusted, cross-version) file boundary.
7
8
  * `pid` must be a positive integer — this is load-bearing: a negative PID would
@@ -11,6 +12,7 @@ import { z } from 'zod';
11
12
  */
12
13
  const serverPidInfoSchema = z.object({
13
14
  pid: z.number().int().positive(),
15
+ processIdentity: processIdentitySchema.optional(),
14
16
  url: z.string().min(1),
15
17
  port: z.number().int().min(1).max(65535),
16
18
  host: z.string().min(1),
@@ -67,7 +69,7 @@ export function writePidFile(configDir, serverInfo) {
67
69
  // Write PID file atomically: write to a sibling temp file then rename into
68
70
  // place (rename is atomic on POSIX). Concurrent readers — racing `serve
69
71
  // --status` / discovery — never observe a half-written, unparseable file.
70
- const content = JSON.stringify(serverInfo, null, 2);
72
+ const content = JSON.stringify({ ...serverInfo, processIdentity: serverInfo.processIdentity ?? readProcessIdentity(serverInfo.pid) }, null, 2);
71
73
  const tempFilePath = `${pidFilePath}.${process.pid}.tmp`;
72
74
  fs.writeFileSync(tempFilePath, content, { encoding: 'utf-8' });
73
75
  fs.renameSync(tempFilePath, pidFilePath);
@@ -148,7 +150,9 @@ export function cleanupPidFile(configDir) {
148
150
  }
149
151
  }
150
152
  /**
151
- * Delete the PID file only if it still records `expectedPid`. Guards against a
153
+ * Delete the PID file only if it still matches the expected PID or full record.
154
+ * Lifecycle callers pass the full record to also match birth evidence and startup time.
155
+ * Guards against a
152
156
  * time-of-check/time-of-use race: between reading a stale/dead PID and deleting
153
157
  * the file, a new runtime may have written a fresh PID file in the same scope.
154
158
  * Deleting unconditionally would strand that live runtime (undiscoverable to
@@ -157,7 +161,8 @@ export function cleanupPidFile(configDir) {
157
161
  * @returns true if the file was removed or is already gone/replaced; false if a
158
162
  * matching file existed but could not be deleted.
159
163
  */
160
- export function cleanupPidFileIfMatches(configDir, expectedPid) {
164
+ export function cleanupPidFileIfMatches(configDir, expected) {
165
+ const expectedPid = typeof expected === 'number' ? expected : expected.pid;
161
166
  let current;
162
167
  try {
163
168
  current = readPidFile(configDir);
@@ -168,7 +173,11 @@ export function cleanupPidFileIfMatches(configDir, expectedPid) {
168
173
  }
169
174
  throw error;
170
175
  }
171
- if (!current || current.pid !== expectedPid) {
176
+ if (!current ||
177
+ current.pid !== expectedPid ||
178
+ (typeof expected !== 'number' &&
179
+ (current.startedAt !== expected.startedAt ||
180
+ JSON.stringify(current.processIdentity) !== JSON.stringify(expected.processIdentity)))) {
172
181
  // Already gone, or replaced by a newer runtime — leave it untouched.
173
182
  return true;
174
183
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pidFileManager.js","sourceRoot":"","sources":["../../../src/core/server/pidFileManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pidFileManager.js","sourceRoot":"","sources":["../../../src/core/server/pidFileManager.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import { z } from 'zod';
2
+ export declare const processIdentitySchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
3
+ platform: z.ZodLiteral<"linux">;
4
+ bootId: z.ZodString;
5
+ pidNamespace: z.ZodString;
6
+ startTime: z.ZodString;
7
+ }, z.core.$strip>, z.ZodObject<{
8
+ platform: z.ZodLiteral<"darwin">;
9
+ hostname: z.ZodString;
10
+ startTime: z.ZodString;
11
+ }, z.core.$strip>, z.ZodObject<{
12
+ platform: z.ZodLiteral<"win32">;
13
+ hostname: z.ZodString;
14
+ startTime: z.ZodString;
15
+ }, z.core.$strip>], "platform">;
16
+ export type ProcessIdentity = z.infer<typeof processIdentitySchema>;
17
+ export type ProcessIdentityStatus = 'alive' | 'dead' | 'unknown';
18
+ /** Capture kernel process birth evidence; unavailable evidence is never a PID-only match. */
19
+ export declare function readProcessIdentity(pid: number): ProcessIdentity | undefined;
20
+ interface IdentityDependencies {
21
+ readIdentity?: typeof readProcessIdentity;
22
+ processAlive?: (pid: number) => boolean;
23
+ }
24
+ /** Numeric PIDs are meaningful only within the recorded execution context. */
25
+ export declare function inspectProcessIdentity(pid: number, identity?: ProcessIdentity, dependencies?: IdentityDependencies): ProcessIdentityStatus;
26
+ export {};
27
+ //# sourceMappingURL=processIdentity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processIdentity.d.ts","sourceRoot":"","sources":["../../../src/core/server/processIdentity.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;+BAShC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,qBAAqB,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;AAEjE,6FAA6F;AAC7F,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAoD5E;AAED,UAAU,oBAAoB;IAC5B,YAAY,CAAC,EAAE,OAAO,mBAAmB,CAAC;IAC1C,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;CACzC;AAmBD,8EAA8E;AAC9E,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,MAAM,EACX,QAAQ,CAAC,EAAE,eAAe,EAC1B,YAAY,GAAE,oBAAyB,GACtC,qBAAqB,CAWvB"}
@@ -0,0 +1,101 @@
1
+ import childProcess from 'node:child_process';
2
+ import fs from 'node:fs';
3
+ import os from 'node:os';
4
+ import { z } from 'zod';
5
+ export const processIdentitySchema = z.discriminatedUnion('platform', [
6
+ z.object({
7
+ platform: z.literal('linux'),
8
+ bootId: z.string().min(1),
9
+ pidNamespace: z.string().min(1),
10
+ startTime: z.string().regex(/^\d+$/),
11
+ }),
12
+ z.object({ platform: z.literal('darwin'), hostname: z.string().min(1), startTime: z.string().min(1) }),
13
+ z.object({ platform: z.literal('win32'), hostname: z.string().min(1), startTime: z.string().regex(/^\d+$/) }),
14
+ ]);
15
+ /** Capture kernel process birth evidence; unavailable evidence is never a PID-only match. */
16
+ export function readProcessIdentity(pid) {
17
+ if (!Number.isSafeInteger(pid) || pid <= 0)
18
+ return undefined;
19
+ try {
20
+ if (process.platform === 'linux') {
21
+ const stat = fs.readFileSync(`/proc/${pid}/stat`, 'utf8');
22
+ // comm is parenthesized and may itself contain spaces or closing parentheses.
23
+ const fields = stat
24
+ .slice(stat.lastIndexOf(')') + 2)
25
+ .trim()
26
+ .split(/\s+/);
27
+ if (fields[0] === 'Z' || fields[0] === 'X')
28
+ return undefined;
29
+ return processIdentitySchema.parse({
30
+ platform: 'linux',
31
+ bootId: fs.readFileSync('/proc/sys/kernel/random/boot_id', 'utf8').trim(),
32
+ pidNamespace: fs.readlinkSync(`/proc/${pid}/ns/pid`),
33
+ startTime: fields[19],
34
+ });
35
+ }
36
+ if (process.platform === 'darwin') {
37
+ // macOS ps exposes birth time at second precision; see the lifecycle platform contract.
38
+ const startTime = childProcess
39
+ .execFileSync('/usr/bin/env', ['LC_ALL=C', 'TZ=UTC', '/bin/ps', '-p', String(pid), '-o', 'lstart='], {
40
+ encoding: 'utf8',
41
+ timeout: 3000,
42
+ stdio: ['ignore', 'pipe', 'ignore'],
43
+ })
44
+ .trim();
45
+ return processIdentitySchema.parse({ platform: 'darwin', hostname: os.hostname(), startTime });
46
+ }
47
+ if (process.platform === 'win32') {
48
+ const startTime = childProcess
49
+ .execFileSync('powershell.exe', [
50
+ '-NoProfile',
51
+ '-NonInteractive',
52
+ '-Command',
53
+ `(Get-Process -Id ${pid} -ErrorAction Stop).StartTime.ToUniversalTime().Ticks`,
54
+ ], {
55
+ encoding: 'utf8',
56
+ timeout: 3000,
57
+ stdio: ['ignore', 'pipe', 'ignore'],
58
+ })
59
+ .trim();
60
+ return processIdentitySchema.parse({ platform: 'win32', hostname: os.hostname(), startTime });
61
+ }
62
+ }
63
+ catch {
64
+ // Permission errors, disappearing processes, malformed procfs, and missing platform tools are uncertain.
65
+ }
66
+ return undefined;
67
+ }
68
+ function processExists(pid) {
69
+ try {
70
+ process.kill(pid, 0);
71
+ return true;
72
+ }
73
+ catch (error) {
74
+ return !(error instanceof Error && 'code' in error && error.code === 'ESRCH');
75
+ }
76
+ }
77
+ function sameContext(left, right) {
78
+ if (left.platform !== right.platform)
79
+ return false;
80
+ if (left.platform === 'linux' && right.platform === 'linux') {
81
+ return left.bootId === right.bootId && left.pidNamespace === right.pidNamespace;
82
+ }
83
+ return 'hostname' in left && 'hostname' in right && left.hostname === right.hostname;
84
+ }
85
+ /** Numeric PIDs are meaningful only within the recorded execution context. */
86
+ export function inspectProcessIdentity(pid, identity, dependencies = {}) {
87
+ if (!identity)
88
+ return 'unknown';
89
+ const readIdentity = dependencies.readIdentity ?? readProcessIdentity;
90
+ const context = readIdentity(process.pid);
91
+ if (!context || !sameContext(identity, context))
92
+ return 'unknown';
93
+ const observed = readIdentity(pid);
94
+ if (observed) {
95
+ if (!sameContext(identity, observed))
96
+ return 'unknown';
97
+ return observed.startTime === identity.startTime ? 'alive' : 'dead';
98
+ }
99
+ return (dependencies.processAlive ?? processExists)(pid) ? 'unknown' : 'dead';
100
+ }
101
+ //# sourceMappingURL=processIdentity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processIdentity.js","sourceRoot":"","sources":["../../../src/core/server/processIdentity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export interface RuntimeFileLock {
2
+ release: () => void;
3
+ }
4
+ /** Linux flock belongs to the shared open file description, including our retained FD. */
5
+ export declare function acquireRuntimeFileLock(lockPath: string): RuntimeFileLock | null;
6
+ //# sourceMappingURL=runtimeFileLock.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtimeFileLock.d.ts","sourceRoot":"","sources":["../../../src/core/server/runtimeFileLock.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,0FAA0F;AAC1F,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CA4B/E"}
@@ -0,0 +1,34 @@
1
+ import { spawnSync } from 'node:child_process';
2
+ import fs from 'node:fs';
3
+ /** Linux flock belongs to the shared open file description, including our retained FD. */
4
+ export function acquireRuntimeFileLock(lockPath) {
5
+ if (process.platform !== 'linux')
6
+ return null;
7
+ // Keep this inode permanently: unlinking it would let contenders lock different files.
8
+ const fd = fs.openSync(lockPath, 'a', 0o600);
9
+ try {
10
+ const result = spawnSync('flock', ['-n', '3'], {
11
+ stdio: ['ignore', 'ignore', 'pipe', fd],
12
+ timeout: 5_000,
13
+ });
14
+ if (result.error || result.status !== 0) {
15
+ throw new Error(result.status === 1 && !result.error
16
+ ? 'Runtime Scope filesystem lock is held by another lifecycle operation'
17
+ : `Cannot acquire Runtime Scope filesystem lock; Linux requires a working flock command (${result.error?.message ?? result.stderr?.toString().trim() ?? result.status})`);
18
+ }
19
+ }
20
+ catch (error) {
21
+ fs.closeSync(fd);
22
+ throw error;
23
+ }
24
+ let released = false;
25
+ return {
26
+ release: () => {
27
+ if (released)
28
+ return;
29
+ released = true;
30
+ fs.closeSync(fd);
31
+ },
32
+ };
33
+ }
34
+ //# sourceMappingURL=runtimeFileLock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtimeFileLock.js","sourceRoot":"","sources":["../../../src/core/server/runtimeFileLock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,MAAM,SAAS,CAAC;AAMzB,0FAA0F;AAC1F,MAAM,UAAU,sBAAsB,CAAC,QAAgB;IACrD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IAC9C,uFAAuF;IACvF,MAAM,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;IAC7C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE;YAC7C,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC;YACvC,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QACH,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CACb,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK;gBAClC,CAAC,CAAC,sEAAsE;gBACxE,CAAC,CAAC,yFAAyF,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC,MAAM,GAAG,CAC3K,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACjB,MAAM,KAAK,CAAC;IACd,CAAC;IACD,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,OAAO;QACL,OAAO,EAAE,GAAG,EAAE;YACZ,IAAI,QAAQ;gBAAE,OAAO;YACrB,QAAQ,GAAG,IAAI,CAAC;YAChB,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACnB,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1,4 +1,4 @@
1
- import { ServerPidInfo } from '../../core/server/pidFileManager.js';
1
+ import { ServerPidInfo } from './pidFileManager.js';
2
2
  /**
3
3
  * Lifecycle module for the (Background) Aggregated Runtime.
4
4
  *
@@ -11,14 +11,14 @@ import { ServerPidInfo } from '../../core/server/pidFileManager.js';
11
11
  /**
12
12
  * Discovered state of the runtime occupying a Runtime Scope.
13
13
  *
14
- * - `not-running`: no PID file, malformed PID file, or the recorded process is
15
- * dead. The PID file is deleted in the dead-process case.
14
+ * - `not-running`: no PID file, or the recorded process incarnation is dead.
15
+ * Matching stale metadata is deleted in the dead-process case.
16
16
  * - `unreachable`: the recorded process is alive but the readiness probe failed.
17
17
  * The PID file is RETAINED — the runtime may be mid-startup or wedged, and
18
18
  * deleting it would strand a real process.
19
19
  * - `running`: the recorded process is alive and the readiness probe succeeded.
20
- * - `error`: the PID file exists but cannot be read, so callers must fail
21
- * closed instead of treating the scope as empty.
20
+ * - `error`: metadata is unreadable/malformed or incarnation evidence is
21
+ * unavailable; callers fail closed and retain the metadata.
22
22
  */
23
23
  export type RuntimeStatus = 'not-running' | 'unreachable' | 'running' | 'error';
24
24
  export interface ScopedRuntime {
@@ -1 +1 @@
1
- {"version":3,"file":"runtimeLifecycle.d.ts","sourceRoot":"","sources":["../../../src/core/server/runtimeLifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,EAKL,aAAa,EACd,MAAM,oCAAoC,CAAC;AAK5C;;;;;;;;GAQG;AAEH;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,aAAa,GAAG,SAAS,GAAG,OAAO,CAAC;AAEhF,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,aAAa,CAAC;IACtB,+EAA+E;IAC/E,IAAI,EAAE,aAAa,GAAG,IAAI,CAAC;IAC3B,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,aAAa,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAOvE;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,SAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAS5F;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,aAAa,KAAK,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC;AAiB3F,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,aAAa,EACnB,SAAS,SAAO,GACf,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAyBxC;AAED;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CACzC,SAAS,EAAE,MAAM,EACjB,cAAc,GAAE,cAA+B,GAC9C,OAAO,CAAC,aAAa,CAAC,CAgCxB"}
1
+ {"version":3,"file":"runtimeLifecycle.d.ts","sourceRoot":"","sources":["../../../src/core/server/runtimeLifecycle.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,aAAa,EACd,MAAM,oCAAoC,CAAC;AAO5C;;;;;;;;GAQG;AAEH;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,aAAa,GAAG,aAAa,GAAG,aAAa,GAAG,SAAS,GAAG,OAAO,CAAC;AAEhF,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,aAAa,CAAC;IACtB,+EAA+E;IAC/E,IAAI,EAAE,aAAa,GAAG,IAAI,CAAC;IAC3B,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;GAKG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE,aAAa,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAOvE;;GAEG;AACH,wBAAsB,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,SAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAS5F;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,IAAI,EAAE,aAAa,KAAK,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAAC;AAiB3F,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,aAAa,EACnB,SAAS,SAAO,GACf,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAyBxC;AAED;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CACzC,SAAS,EAAE,MAAM,EACjB,cAAc,GAAE,cAA+B,GAC9C,OAAO,CAAC,aAAa,CAAC,CA2CxB"}
@@ -1,6 +1,8 @@
1
- import { cleanupPidFileIfMatches, isProcessAlive, PidFileReadError, readPidFile, } from '../../core/server/pidFileManager.js';
1
+ import fs from 'node:fs';
2
+ import { cleanupPidFileIfMatches, getPidFilePath, PidFileReadError, readPidFile, } from './pidFileManager.js';
2
3
  import logger from '../../logger/logger.js';
3
4
  import { z } from 'zod';
5
+ import { inspectProcessIdentity } from './processIdentity.js';
4
6
  /** Derive the runtime base URL (strip a trailing `/mcp`) from a recorded URL. */
5
7
  function baseUrlOf(url) {
6
8
  return url.replace(/\/mcp\/?$/, '');
@@ -80,14 +82,25 @@ export async function discoverScopedRuntime(configDir, readinessProbe = probeRea
80
82
  throw error;
81
83
  }
82
84
  if (!info) {
85
+ if (fs.existsSync(getPidFilePath(configDir))) {
86
+ return { status: 'error', info: null, error: 'Runtime PID metadata is malformed; retained for manual recovery.' };
87
+ }
83
88
  return { status: 'not-running', info: null };
84
89
  }
85
90
  // Tier 1: dead process → delete the stale PID file, report not-running.
86
91
  // Delete only if the file still records this dead PID: a newer runtime may
87
92
  // have replaced it between the read above and here, and we must not strand it.
88
- if (!isProcessAlive(info.pid)) {
93
+ const identityStatus = inspectProcessIdentity(info.pid, info.processIdentity);
94
+ if (identityStatus === 'unknown') {
95
+ return {
96
+ status: 'error',
97
+ info: null,
98
+ error: `Cannot verify process identity for Runtime Scope PID ${info.pid}; lifecycle metadata was retained.`,
99
+ };
100
+ }
101
+ if (identityStatus === 'dead') {
89
102
  logger.warn(`PID file points to dead process (PID: ${info.pid}); removing stale PID file`);
90
- cleanupPidFileIfMatches(configDir, info.pid);
103
+ cleanupPidFileIfMatches(configDir, info);
91
104
  return { status: 'not-running', info: null };
92
105
  }
93
106
  // Tier 2: alive but unreachable → retain the PID file, report not-usable.
@@ -1 +1 @@
1
- {"version":3,"file":"runtimeLifecycle.js","sourceRoot":"","sources":["../../../src/core/server/runtimeLifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtimeLifecycle.js","sourceRoot":"","sources":["../../../src/core/server/runtimeLifecycle.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { type ProcessIdentity } from './processIdentity.js';
1
2
  export type RuntimeScopeClaimantKind = 'foreground-http' | 'foreground-stdio' | 'background-supervisor';
2
3
  export interface RuntimeScopeOwnershipRecord {
3
4
  version: 1;
@@ -5,6 +6,8 @@ export interface RuntimeScopeOwnershipRecord {
5
6
  claimId: string;
6
7
  kind: RuntimeScopeClaimantKind;
7
8
  claimedAt: string;
9
+ processIdentity?: ProcessIdentity;
10
+ coordination?: 'flock';
8
11
  }
9
12
  export interface RuntimeScopeOwnership {
10
13
  record: RuntimeScopeOwnershipRecord;
@@ -1 +1 @@
1
- {"version":3,"file":"runtimeScopeOwnership.d.ts","sourceRoot":"","sources":["../../../src/core/server/runtimeScopeOwnership.ts"],"names":[],"mappings":"AAgBA,MAAM,MAAM,wBAAwB,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,uBAAuB,CAAC;AAExG,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,CAAC,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,wBAAwB,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,2BAA2B,CAAC;IACpC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,wBAAwB,CAAC;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,kCAAkC,GAAG,OAAO,GAAG,WAAW,CAAC;AAEvE,KAAK,6BAA6B,GAAG,IAAI,CAAC,2BAA2B,EAAE,SAAS,GAAG,KAAK,CAAC,CAAC;AAE1F,qBAAa,sBAAuB,SAAQ,KAAK;aAE7B,SAAS,EAAE,MAAM;aACjB,MAAM,EAAE,kCAAkC;aAC1C,KAAK,EAAE,2BAA2B,GAAG,IAAI;gBAFzC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,kCAAkC,EAC1C,KAAK,EAAE,2BAA2B,GAAG,IAAI,EACzD,MAAM,CAAC,EAAE,MAAM;CAMlB;AAkBD,UAAU,qBAAqB;IAC7B,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IACxC,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IAC7B,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAgBD,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAErE;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,oBAAoB,EAC9B,YAAY,GAAE,qBAA0B,GACvC,qBAAqB,CA8DvB;AAED,4EAA4E;AAC5E,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,IAAI,CAAC,2BAA2B,EAAE,SAAS,GAAG,KAAK,CAAC,EACnE,YAAY,GAAE,qBAA0B,GACvC,oBAAoB,CA+DtB;AAED;;;GAGG;AACH,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,6BAA6B,EACvC,YAAY,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAwB,GACtD,OAAO,CAMT;AA8FD;;;GAGG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,wBAAwB,EACtC,YAAY,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAwB,GACtD,2BAA2B,CAgB7B;AA2JD,iFAAiF;AACjF,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,2BAA2B,GAAG,IAAI,CAE/F;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,6BAA6B,GAAG,OAAO,CAMhH"}
1
+ {"version":3,"file":"runtimeScopeOwnership.d.ts","sourceRoot":"","sources":["../../../src/core/server/runtimeScopeOwnership.ts"],"names":[],"mappings":"AAMA,OAAO,EAEL,KAAK,eAAe,EAGrB,MAAM,qCAAqC,CAAC;AAY7C,MAAM,MAAM,wBAAwB,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,uBAAuB,CAAC;AAExG,MAAM,WAAW,2BAA2B;IAC1C,OAAO,EAAE,CAAC,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,wBAAwB,CAAC;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,YAAY,CAAC,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,2BAA2B,CAAC;IACpC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,wBAAwB,CAAC;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,kCAAkC,GAAG,OAAO,GAAG,WAAW,CAAC;AAEvE,KAAK,6BAA6B,GAAG,IAAI,CAAC,2BAA2B,EAAE,SAAS,GAAG,KAAK,CAAC,CAAC;AAE1F,qBAAa,sBAAuB,SAAQ,KAAK;aAE7B,SAAS,EAAE,MAAM;aACjB,MAAM,EAAE,kCAAkC;aAC1C,KAAK,EAAE,2BAA2B,GAAG,IAAI;gBAFzC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,kCAAkC,EAC1C,KAAK,EAAE,2BAA2B,GAAG,IAAI,EACzD,MAAM,CAAC,EAAE,MAAM;CAMlB;AAsBD,UAAU,qBAAqB;IAC7B,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IACxC,aAAa,CAAC,EAAE,MAAM,MAAM,CAAC;IAC7B,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;CAClB;AAgBD,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAErE;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,oBAAoB,EAC9B,YAAY,GAAE,qBAA0B,GACvC,qBAAqB,CAuEvB;AAED,4EAA4E;AAC5E,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,IAAI,CAAC,2BAA2B,EAAE,SAAS,GAAG,KAAK,CAAC,EACnE,YAAY,GAAE,qBAA0B,GACvC,oBAAoB,CAyEtB;AAED;;;GAGG;AACH,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,6BAA6B,EACvC,YAAY,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAwB,GACtD,OAAO,CAeT;AAoHD;;;GAGG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,wBAAwB,EACtC,YAAY,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAwB,GACtD,2BAA2B,CAoB7B;AA2KD,iFAAiF;AACjF,wBAAgB,yBAAyB,CAAC,SAAS,EAAE,MAAM,GAAG,2BAA2B,GAAG,IAAI,CAE/F;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,6BAA6B,GAAG,OAAO,CAMhH"}