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

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 (186) hide show
  1. package/README.md +1 -0
  2. package/build/admin/assets/{admin-console-CX5GzncA.css → admin-console-C5_zD_qW.css} +1 -1
  3. package/build/admin/assets/{admin-console-CkZ5lBKg.js → admin-console-CbHHoqLr.js} +6 -6
  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/commands/mcp/index.d.ts.map +1 -1
  10. package/build/commands/mcp/index.js +10 -0
  11. package/build/commands/mcp/index.js.map +1 -1
  12. package/build/commands/mcp/restart.d.ts +69 -0
  13. package/build/commands/mcp/restart.d.ts.map +1 -0
  14. package/build/commands/mcp/restart.js +259 -0
  15. package/build/commands/mcp/restart.js.map +1 -0
  16. package/build/commands/mcp/status.d.ts +24 -1
  17. package/build/commands/mcp/status.d.ts.map +1 -1
  18. package/build/commands/mcp/status.js +158 -14
  19. package/build/commands/mcp/status.js.map +1 -1
  20. package/build/commands/serve/index.d.ts +8 -0
  21. package/build/commands/serve/index.d.ts.map +1 -1
  22. package/build/commands/serve/index.js +12 -0
  23. package/build/commands/serve/index.js.map +1 -1
  24. package/build/commands/serve/serve.d.ts +13 -0
  25. package/build/commands/serve/serve.d.ts.map +1 -1
  26. package/build/commands/serve/serve.js +111 -57
  27. package/build/commands/serve/serve.js.map +1 -1
  28. package/build/commands/serve/serveBackground.d.ts +48 -26
  29. package/build/commands/serve/serveBackground.d.ts.map +1 -1
  30. package/build/commands/serve/serveBackground.js +230 -61
  31. package/build/commands/serve/serveBackground.js.map +1 -1
  32. package/build/commands/serve/serveRestart.d.ts +1 -1
  33. package/build/commands/serve/serveRestart.js +1 -1
  34. package/build/commands/serve/serveStatus.d.ts +20 -10
  35. package/build/commands/serve/serveStatus.d.ts.map +1 -1
  36. package/build/commands/serve/serveStatus.js +174 -13
  37. package/build/commands/serve/serveStatus.js.map +1 -1
  38. package/build/commands/serve/serveStop.d.ts +13 -4
  39. package/build/commands/serve/serveStop.d.ts.map +1 -1
  40. package/build/commands/serve/serveStop.js +212 -23
  41. package/build/commands/serve/serveStop.js.map +1 -1
  42. package/build/config/configManager.d.ts +2 -0
  43. package/build/config/configManager.d.ts.map +1 -1
  44. package/build/config/configManager.js +19 -8
  45. package/build/config/configManager.js.map +1 -1
  46. package/build/config/mcpConfigMerge.d.ts.map +1 -1
  47. package/build/config/mcpConfigMerge.js +13 -2
  48. package/build/config/mcpConfigMerge.js.map +1 -1
  49. package/build/constants/mcp.d.ts +1 -1
  50. package/build/constants/mcp.js +1 -1
  51. package/build/core/client/clientManager.d.ts +24 -1
  52. package/build/core/client/clientManager.d.ts.map +1 -1
  53. package/build/core/client/clientManager.js +268 -2
  54. package/build/core/client/clientManager.js.map +1 -1
  55. package/build/core/client/connectionHandler.d.ts.map +1 -1
  56. package/build/core/client/connectionHandler.js +18 -1
  57. package/build/core/client/connectionHandler.js.map +1 -1
  58. package/build/core/configChangeHandler.d.ts +1 -0
  59. package/build/core/configChangeHandler.d.ts.map +1 -1
  60. package/build/core/configChangeHandler.js +14 -0
  61. package/build/core/configChangeHandler.js.map +1 -1
  62. package/build/core/loading/mcpLoadingManager.d.ts.map +1 -1
  63. package/build/core/loading/mcpLoadingManager.js +16 -4
  64. package/build/core/loading/mcpLoadingManager.js.map +1 -1
  65. package/build/core/server/backendStdioSupervisor.d.ts +73 -0
  66. package/build/core/server/backendStdioSupervisor.d.ts.map +1 -0
  67. package/build/core/server/backendStdioSupervisor.js +191 -0
  68. package/build/core/server/backendStdioSupervisor.js.map +1 -0
  69. package/build/core/server/backgroundLaunchConfig.d.ts +15 -0
  70. package/build/core/server/backgroundLaunchConfig.d.ts.map +1 -0
  71. package/build/core/server/backgroundLaunchConfig.js +46 -0
  72. package/build/core/server/backgroundLaunchConfig.js.map +1 -0
  73. package/build/core/server/backgroundRuntimeSupervisor.d.ts +44 -0
  74. package/build/core/server/backgroundRuntimeSupervisor.d.ts.map +1 -0
  75. package/build/core/server/backgroundRuntimeSupervisor.js +252 -0
  76. package/build/core/server/backgroundRuntimeSupervisor.js.map +1 -0
  77. package/build/core/server/backgroundRuntimeSupervisorState.d.ts +30 -0
  78. package/build/core/server/backgroundRuntimeSupervisorState.d.ts.map +1 -0
  79. package/build/core/server/backgroundRuntimeSupervisorState.js +81 -0
  80. package/build/core/server/backgroundRuntimeSupervisorState.js.map +1 -0
  81. package/build/core/server/clientInstanceFactory.d.ts.map +1 -1
  82. package/build/core/server/clientInstanceFactory.js +1 -0
  83. package/build/core/server/clientInstanceFactory.js.map +1 -1
  84. package/build/core/server/clientInstancePool.d.ts +17 -5
  85. package/build/core/server/clientInstancePool.d.ts.map +1 -1
  86. package/build/core/server/clientInstancePool.js +198 -33
  87. package/build/core/server/clientInstancePool.js.map +1 -1
  88. package/build/core/server/clientInstancePoolTypes.d.ts +7 -1
  89. package/build/core/server/clientInstancePoolTypes.d.ts.map +1 -1
  90. package/build/core/server/clientInstancePoolTypes.js.map +1 -1
  91. package/build/core/server/runtimeScopeOwnership.d.ts +61 -0
  92. package/build/core/server/runtimeScopeOwnership.d.ts.map +1 -0
  93. package/build/core/server/runtimeScopeOwnership.js +544 -0
  94. package/build/core/server/runtimeScopeOwnership.js.map +1 -0
  95. package/build/core/server/serverManager.d.ts +2 -0
  96. package/build/core/server/serverManager.d.ts.map +1 -1
  97. package/build/core/server/serverManager.js +30 -0
  98. package/build/core/server/serverManager.js.map +1 -1
  99. package/build/core/server/templateIdentity.d.ts +10 -0
  100. package/build/core/server/templateIdentity.d.ts.map +1 -1
  101. package/build/core/server/templateIdentity.js +33 -0
  102. package/build/core/server/templateIdentity.js.map +1 -1
  103. package/build/core/server/templateServerCleanup.d.ts.map +1 -1
  104. package/build/core/server/templateServerCleanup.js +7 -1
  105. package/build/core/server/templateServerCleanup.js.map +1 -1
  106. package/build/core/server/templateServerManager.d.ts +13 -0
  107. package/build/core/server/templateServerManager.d.ts.map +1 -1
  108. package/build/core/server/templateServerManager.js +129 -4
  109. package/build/core/server/templateServerManager.js.map +1 -1
  110. package/build/core/tools/handlers/serverManagementHandler.d.ts +111 -5
  111. package/build/core/tools/handlers/serverManagementHandler.d.ts.map +1 -1
  112. package/build/core/tools/handlers/serverManagementHandler.js +103 -45
  113. package/build/core/tools/handlers/serverManagementHandler.js.map +1 -1
  114. package/build/core/tools/internal/adapters/management/managementAdapter.d.ts +2 -2
  115. package/build/core/tools/internal/adapters/management/managementAdapter.d.ts.map +1 -1
  116. package/build/core/tools/internal/adapters/management/managementAdapter.js +45 -26
  117. package/build/core/tools/internal/adapters/management/managementAdapter.js.map +1 -1
  118. package/build/core/tools/internal/adapters/management/types.d.ts +21 -2
  119. package/build/core/tools/internal/adapters/management/types.d.ts.map +1 -1
  120. package/build/core/tools/internal/managementHandlers.d.ts.map +1 -1
  121. package/build/core/tools/internal/managementHandlers.js +73 -22
  122. package/build/core/tools/internal/managementHandlers.js.map +1 -1
  123. package/build/core/tools/internal/schemas/discovery.d.ts +2 -2
  124. package/build/core/tools/internal/schemas/edit.js +1 -1
  125. package/build/core/tools/internal/schemas/edit.js.map +1 -1
  126. package/build/core/tools/internal/schemas/index.d.ts +77 -6
  127. package/build/core/tools/internal/schemas/index.d.ts.map +1 -1
  128. package/build/core/tools/internal/schemas/management.d.ts +75 -4
  129. package/build/core/tools/internal/schemas/management.d.ts.map +1 -1
  130. package/build/core/tools/internal/schemas/management.js +69 -2
  131. package/build/core/tools/internal/schemas/management.js.map +1 -1
  132. package/build/core/types/client.d.ts +9 -2
  133. package/build/core/types/client.d.ts.map +1 -1
  134. package/build/core/types/client.js +4 -0
  135. package/build/core/types/client.js.map +1 -1
  136. package/build/core/types/transport.d.ts +25 -1
  137. package/build/core/types/transport.d.ts.map +1 -1
  138. package/build/core/types/transport.js +21 -3
  139. package/build/core/types/transport.js.map +1 -1
  140. package/build/domains/admin/adminBackendRestartService.d.ts +41 -0
  141. package/build/domains/admin/adminBackendRestartService.d.ts.map +1 -0
  142. package/build/domains/admin/adminBackendRestartService.js +22 -0
  143. package/build/domains/admin/adminBackendRestartService.js.map +1 -0
  144. package/build/domains/admin/adminDomain.d.ts +7 -0
  145. package/build/domains/admin/adminDomain.d.ts.map +1 -1
  146. package/build/domains/admin/adminDomain.js +13 -0
  147. package/build/domains/admin/adminDomain.js.map +1 -1
  148. package/build/domains/admin/adminOAuthService.d.ts +26 -0
  149. package/build/domains/admin/adminOAuthService.d.ts.map +1 -0
  150. package/build/domains/admin/adminOAuthService.js +71 -0
  151. package/build/domains/admin/adminOAuthService.js.map +1 -0
  152. package/build/domains/admin/adminOperationService.d.ts +1 -0
  153. package/build/domains/admin/adminOperationService.d.ts.map +1 -1
  154. package/build/domains/admin/adminOperationService.js +39 -14
  155. package/build/domains/admin/adminOperationService.js.map +1 -1
  156. package/build/domains/admin/runtimeServerManagerBackendRestartService.d.ts +20 -0
  157. package/build/domains/admin/runtimeServerManagerBackendRestartService.d.ts.map +1 -0
  158. package/build/domains/admin/runtimeServerManagerBackendRestartService.js +78 -0
  159. package/build/domains/admin/runtimeServerManagerBackendRestartService.js.map +1 -0
  160. package/build/server.d.ts.map +1 -1
  161. package/build/server.js +18 -2
  162. package/build/server.js.map +1 -1
  163. package/build/transport/http/routes/adminRoutes.d.ts +4 -0
  164. package/build/transport/http/routes/adminRoutes.d.ts.map +1 -1
  165. package/build/transport/http/routes/adminRoutes.js +280 -22
  166. package/build/transport/http/routes/adminRoutes.js.map +1 -1
  167. package/build/transport/http/routes/healthRoutes.d.ts.map +1 -1
  168. package/build/transport/http/routes/healthRoutes.js +70 -2
  169. package/build/transport/http/routes/healthRoutes.js.map +1 -1
  170. package/build/transport/http/routes/oauthRoutes.d.ts +3 -2
  171. package/build/transport/http/routes/oauthRoutes.d.ts.map +1 -1
  172. package/build/transport/http/routes/oauthRoutes.js +10 -8
  173. package/build/transport/http/routes/oauthRoutes.js.map +1 -1
  174. package/build/transport/http/server.d.ts.map +1 -1
  175. package/build/transport/http/server.js +13 -4
  176. package/build/transport/http/server.js.map +1 -1
  177. package/build/transport/transportFactory.d.ts.map +1 -1
  178. package/build/transport/transportFactory.js +27 -15
  179. package/build/transport/transportFactory.js.map +1 -1
  180. package/build/transport/transportFactory.testSetup.js +2 -0
  181. package/build/transport/transportFactory.testSetup.js.map +1 -1
  182. package/build/utils/core/errorTypes.d.ts +3 -0
  183. package/build/utils/core/errorTypes.d.ts.map +1 -1
  184. package/build/utils/core/errorTypes.js +7 -0
  185. package/build/utils/core/errorTypes.js.map +1 -1
  186. package/package.json +1 -1
@@ -3,9 +3,12 @@ import path from 'path';
3
3
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
4
4
  import { ConfigManager } from '../../config/configManager.js';
5
5
  import { getDefaultInstructionsTemplatePath, HOST, PORT } from '../../constants.js';
6
+ import { ClientManager } from '../../core/client/clientManager.js';
6
7
  import { formatValidationError, validateTemplateContent } from '../../core/instructions/templateValidator.js';
7
8
  import { AgentConfigManager } from '../../core/server/agentConfig.js';
9
+ import { getBackgroundLaunchConfigPath, readBackgroundLaunchConfig } from '../../core/server/backgroundLaunchConfig.js';
8
10
  import { cleanupPidFileOnExit, registerPidFileCleanup, writePidFile } from '../../core/server/pidFileManager.js';
11
+ import { claimRuntimeScope, verifyRuntimeScopeOwnership, } from '../../core/server/runtimeScopeOwnership.js';
9
12
  import { configureGlobalLogger } from '../../logger/configureGlobalLogger.js';
10
13
  import logger, { debugIf } from '../../logger/logger.js';
11
14
  import { resolveLoggingConfig } from '../../logger/loggingConfig.js';
@@ -87,75 +90,97 @@ function loadInstructionsTemplate(templatePath, configDir) {
87
90
  /**
88
91
  * Set up graceful shutdown handling
89
92
  */
90
- function setupGracefulShutdown(serverManager, loadingManager, expressServer, instructionAggregator, configDir) {
93
+ export function setupGracefulShutdown(serverManager, loadingManager, expressServer, instructionAggregator, configDir, runtimeOwnership) {
94
+ let shutdownPromise;
91
95
  const shutdown = async () => {
92
- logger.info('Shutting down server...');
93
- // Stop the configuration reload service
94
- // Config reload handled by ConfigManager singleton
95
- // Shutdown loading manager if it exists
96
- if (loadingManager && typeof loadingManager.shutdown === 'function') {
97
- try {
98
- loadingManager.shutdown();
99
- logger.info('Loading manager shutdown complete');
100
- }
101
- catch (error) {
102
- logger.error(`Error shutting down loading manager: ${error instanceof Error ? error.message : String(error)}`);
103
- }
96
+ if (shutdownPromise) {
97
+ return shutdownPromise;
104
98
  }
105
- // Shutdown ExpressServer if it exists
106
- if (expressServer) {
99
+ shutdownPromise = (async () => {
100
+ logger.info('Shutting down server...');
101
+ // Stop the configuration reload service
102
+ // Config reload handled by ConfigManager singleton
103
+ // Shutdown loading manager if it exists
104
+ if (loadingManager && typeof loadingManager.shutdown === 'function') {
105
+ try {
106
+ loadingManager.shutdown();
107
+ logger.info('Loading manager shutdown complete');
108
+ }
109
+ catch (error) {
110
+ logger.error(`Error shutting down loading manager: ${error instanceof Error ? error.message : String(error)}`);
111
+ }
112
+ }
107
113
  try {
108
- expressServer.shutdown();
109
- logger.info('ExpressServer shutdown complete');
114
+ await ClientManager.shutdownCurrent();
115
+ logger.info('ClientManager shutdown complete');
110
116
  }
111
117
  catch (error) {
112
- logger.error(`Error shutting down ExpressServer: ${error instanceof Error ? error.message : String(error)}`);
118
+ logger.error(`Error shutting down ClientManager: ${error instanceof Error ? error.message : String(error)}`);
113
119
  }
114
- }
115
- // Close all transports
116
- for (const [sessionId, transport] of serverManager.getTransports().entries()) {
117
120
  try {
118
- transport?.close();
119
- logger.info(`Closed transport: ${sessionId}`);
121
+ await serverManager.cleanup();
122
+ logger.info('ServerManager cleanup complete');
120
123
  }
121
124
  catch (error) {
122
- logger.error(`Error closing transport ${sessionId}: ${error instanceof Error ? error.message : String(error)}`);
125
+ logger.error(`Error cleaning up ServerManager: ${error instanceof Error ? error.message : String(error)}`);
123
126
  }
124
- }
125
- // Cleanup InstructionAggregator if it exists
126
- if (instructionAggregator && typeof instructionAggregator.cleanup === 'function') {
127
- try {
128
- instructionAggregator.cleanup();
129
- logger.info('InstructionAggregator cleanup complete');
127
+ // Shutdown ExpressServer if it exists
128
+ if (expressServer) {
129
+ try {
130
+ expressServer.shutdown();
131
+ logger.info('ExpressServer shutdown complete');
132
+ }
133
+ catch (error) {
134
+ logger.error(`Error shutting down ExpressServer: ${error instanceof Error ? error.message : String(error)}`);
135
+ }
130
136
  }
131
- catch (error) {
132
- logger.error(`Error cleaning up InstructionAggregator: ${error instanceof Error ? error.message : String(error)}`);
137
+ // Close all transports
138
+ for (const [sessionId, transport] of serverManager.getTransports().entries()) {
139
+ try {
140
+ transport?.close();
141
+ logger.info(`Closed transport: ${sessionId}`);
142
+ }
143
+ catch (error) {
144
+ logger.error(`Error closing transport ${sessionId}: ${error instanceof Error ? error.message : String(error)}`);
145
+ }
133
146
  }
134
- }
135
- // Cleanup PresetManager if it exists
136
- try {
137
- const PresetManager = (await import('../../domains/preset/manager/presetManager.js')).PresetManager;
138
- const presetManager = PresetManager.getInstance();
139
- if (presetManager && typeof presetManager.cleanup === 'function') {
140
- await presetManager.cleanup();
141
- logger.info('PresetManager cleanup complete');
147
+ // Cleanup InstructionAggregator if it exists
148
+ if (instructionAggregator && typeof instructionAggregator.cleanup === 'function') {
149
+ try {
150
+ instructionAggregator.cleanup();
151
+ logger.info('InstructionAggregator cleanup complete');
152
+ }
153
+ catch (error) {
154
+ logger.error(`Error cleaning up InstructionAggregator: ${error instanceof Error ? error.message : String(error)}`);
155
+ }
142
156
  }
143
- }
144
- catch (error) {
145
- logger.error(`Error cleaning up PresetManager: ${error instanceof Error ? error.message : String(error)}`);
146
- }
147
- // Cleanup PID file if configDir is available
148
- if (configDir) {
157
+ // Cleanup PresetManager if it exists
149
158
  try {
150
- cleanupPidFileOnExit(configDir);
151
- logger.info('PID file cleanup complete');
159
+ const PresetManager = (await import('../../domains/preset/manager/presetManager.js')).PresetManager;
160
+ const presetManager = PresetManager.getInstance();
161
+ if (presetManager && typeof presetManager.cleanup === 'function') {
162
+ await presetManager.cleanup();
163
+ logger.info('PresetManager cleanup complete');
164
+ }
152
165
  }
153
166
  catch (error) {
154
- logger.error(`Error cleaning up PID file: ${error instanceof Error ? error.message : String(error)}`);
167
+ logger.error(`Error cleaning up PresetManager: ${error instanceof Error ? error.message : String(error)}`);
155
168
  }
156
- }
157
- logger.info('Server shutdown complete');
158
- process.exit(0);
169
+ // Cleanup PID file if configDir is available
170
+ if (configDir) {
171
+ try {
172
+ cleanupPidFileOnExit(configDir);
173
+ logger.info('PID file cleanup complete');
174
+ }
175
+ catch (error) {
176
+ logger.error(`Error cleaning up PID file: ${error instanceof Error ? error.message : String(error)}`);
177
+ }
178
+ }
179
+ runtimeOwnership?.release();
180
+ logger.info('Server shutdown complete');
181
+ process.exit(0);
182
+ })();
183
+ return shutdownPromise;
159
184
  };
160
185
  // Handle various signals for graceful shutdown
161
186
  process.on('SIGINT', shutdown);
@@ -166,6 +191,7 @@ function setupGracefulShutdown(serverManager, loadingManager, expressServer, ins
166
191
  * Start the server using the specified transport.
167
192
  */
168
193
  export async function serveCommand(parsedArgv) {
194
+ let runtimeOwnership;
169
195
  try {
170
196
  const { configFilePath, runtimeScope } = resolveServeConfigPaths(parsedArgv);
171
197
  // Lifecycle actions short-circuit before any server setup. They operate on
@@ -188,18 +214,44 @@ export async function serveCommand(parsedArgv) {
188
214
  await runServeRestart(parsedArgv);
189
215
  return;
190
216
  }
191
- // Background parent: spawn a detached child and wait for readiness. The
192
- // detached child carries the guard flag, so it falls through to the normal
193
- // serve path below instead of recursively spawning another background.
217
+ // Background parent: spawn a detached supervisor and wait for its worker's
218
+ // readiness. The supervisor carries the guard flag so it cannot recurse.
194
219
  if (parsedArgv.background && !parsedArgv['background-bootstrap']) {
195
220
  const { runServeBackground } = await import('./serveBackground.js');
196
221
  await runServeBackground(parsedArgv);
197
222
  return;
198
223
  }
224
+ const supervisorClaimId = parsedArgv['runtime-owner-claim-id'];
225
+ const launchConfigFile = parsedArgv['background-launch-config'];
226
+ if (launchConfigFile && !supervisorClaimId) {
227
+ throw new Error('Background launch configuration is only valid for an authorized supervised worker');
228
+ }
229
+ if (parsedArgv['background-bootstrap'] && !supervisorClaimId) {
230
+ const { runServeBackgroundSupervisor } = await import('./serveBackground.js');
231
+ await runServeBackgroundSupervisor(parsedArgv);
232
+ return;
233
+ }
234
+ if (supervisorClaimId) {
235
+ verifyRuntimeScopeOwnership(runtimeScope, supervisorClaimId, 'background-supervisor');
236
+ const expectedLaunchConfigFile = getBackgroundLaunchConfigPath(runtimeScope);
237
+ if (!launchConfigFile || path.resolve(launchConfigFile) !== path.resolve(expectedLaunchConfigFile)) {
238
+ throw new Error('Authorized supervised workers must use the Runtime Scope background launch configuration');
239
+ }
240
+ }
241
+ else {
242
+ runtimeOwnership = claimRuntimeScope(runtimeScope, {
243
+ kind: parsedArgv.transport === 'stdio' ? 'foreground-stdio' : 'foreground-http',
244
+ });
245
+ process.once('exit', runtimeOwnership.release);
246
+ }
199
247
  // Initialize MCP config manager using resolved config path
200
248
  const mcpConfigManager = ConfigManager.getInstance(configFilePath);
201
249
  // Load app-level config from config.toml (CLI args take precedence)
202
- const appConfig = mcpConfigManager.getAppConfig();
250
+ const launchConfig = launchConfigFile ? readBackgroundLaunchConfig(launchConfigFile) : null;
251
+ if (launchConfig && launchConfig.claimId !== supervisorClaimId) {
252
+ throw new Error('Background launch configuration does not match the active supervisor claim');
253
+ }
254
+ const appConfig = launchConfig?.appConfig ?? mcpConfigManager.getAppConfig();
203
255
  // Get server count for logo display
204
256
  const transportConfig = mcpConfigManager.getTransportConfig();
205
257
  const serverCount = Object.keys(transportConfig).length;
@@ -357,6 +409,7 @@ export async function serveCommand(parsedArgv) {
357
409
  const transport = new StdioServerTransport();
358
410
  const filterConfig = await resolveStdioFilterConfig(parsedArgv);
359
411
  if (!filterConfig) {
412
+ runtimeOwnership?.release();
360
413
  return;
361
414
  }
362
415
  await serverManager.connectTransport(transport, 'stdio', {
@@ -408,7 +461,7 @@ export async function serveCommand(parsedArgv) {
408
461
  process.exit(1);
409
462
  }
410
463
  // Set up graceful shutdown handling
411
- setupGracefulShutdown(serverManager, loadingManager, expressServer, instructionAggregator, runtimeScope);
464
+ setupGracefulShutdown(serverManager, loadingManager, expressServer, instructionAggregator, runtimeScope, runtimeOwnership);
412
465
  // Log MCP loading progress (non-blocking)
413
466
  loadingManager.on('loading-progress', (summary) => {
414
467
  logger.info(`MCP loading progress: ${summary.ready}/${summary.totalServers} servers ready (${summary.loading} loading, ${summary.failed} failed)`);
@@ -418,6 +471,7 @@ export async function serveCommand(parsedArgv) {
418
471
  });
419
472
  }
420
473
  catch (error) {
474
+ runtimeOwnership?.release();
421
475
  logger.error(`Server error: ${error instanceof Error ? error.message : String(error)}`);
422
476
  process.exit(1);
423
477
  }
@@ -1 +1 @@
1
- {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/commands/serve/serve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serve.js","sourceRoot":"","sources":["../../../src/commands/serve/serve.ts"],"names":[],"mappings":"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"}
@@ -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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"}