@shin1ohno/sage 0.10.0 → 0.11.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 (79) hide show
  1. package/dist/cli/mcp-handler.d.ts.map +1 -1
  2. package/dist/cli/mcp-handler.js +213 -6
  3. package/dist/cli/mcp-handler.js.map +1 -1
  4. package/dist/cli/signal-handler.d.ts +23 -0
  5. package/dist/cli/signal-handler.d.ts.map +1 -0
  6. package/dist/cli/signal-handler.js +51 -0
  7. package/dist/cli/signal-handler.js.map +1 -0
  8. package/dist/config/config-differ.d.ts +21 -0
  9. package/dist/config/config-differ.d.ts.map +1 -0
  10. package/dist/config/config-differ.js +194 -0
  11. package/dist/config/config-differ.js.map +1 -0
  12. package/dist/config/config-reload-service.d.ts +84 -0
  13. package/dist/config/config-reload-service.d.ts.map +1 -0
  14. package/dist/config/config-reload-service.js +234 -0
  15. package/dist/config/config-reload-service.js.map +1 -0
  16. package/dist/config/config-watcher.d.ts +78 -0
  17. package/dist/config/config-watcher.d.ts.map +1 -0
  18. package/dist/config/config-watcher.js +244 -0
  19. package/dist/config/config-watcher.js.map +1 -0
  20. package/dist/config/hot-reload-config.d.ts +16 -0
  21. package/dist/config/hot-reload-config.d.ts.map +1 -0
  22. package/dist/config/hot-reload-config.js +61 -0
  23. package/dist/config/hot-reload-config.js.map +1 -0
  24. package/dist/index.js +58 -0
  25. package/dist/index.js.map +1 -1
  26. package/dist/services/reloadable/calendar-source-manager-adapter.d.ts +45 -0
  27. package/dist/services/reloadable/calendar-source-manager-adapter.d.ts.map +1 -0
  28. package/dist/services/reloadable/calendar-source-manager-adapter.js +106 -0
  29. package/dist/services/reloadable/calendar-source-manager-adapter.js.map +1 -0
  30. package/dist/services/reloadable/index.d.ts +46 -0
  31. package/dist/services/reloadable/index.d.ts.map +1 -0
  32. package/dist/services/reloadable/index.js +88 -0
  33. package/dist/services/reloadable/index.js.map +1 -0
  34. package/dist/services/reloadable/notion-service-adapter.d.ts +45 -0
  35. package/dist/services/reloadable/notion-service-adapter.d.ts.map +1 -0
  36. package/dist/services/reloadable/notion-service-adapter.js +86 -0
  37. package/dist/services/reloadable/notion-service-adapter.js.map +1 -0
  38. package/dist/services/reloadable/priority-engine-adapter.d.ts +73 -0
  39. package/dist/services/reloadable/priority-engine-adapter.d.ts.map +1 -0
  40. package/dist/services/reloadable/priority-engine-adapter.js +105 -0
  41. package/dist/services/reloadable/priority-engine-adapter.js.map +1 -0
  42. package/dist/services/reloadable/reminder-manager-adapter.d.ts +45 -0
  43. package/dist/services/reloadable/reminder-manager-adapter.d.ts.map +1 -0
  44. package/dist/services/reloadable/reminder-manager-adapter.js +80 -0
  45. package/dist/services/reloadable/reminder-manager-adapter.js.map +1 -0
  46. package/dist/services/reloadable/todo-list-manager-adapter.d.ts +45 -0
  47. package/dist/services/reloadable/todo-list-manager-adapter.d.ts.map +1 -0
  48. package/dist/services/reloadable/todo-list-manager-adapter.js +80 -0
  49. package/dist/services/reloadable/todo-list-manager-adapter.js.map +1 -0
  50. package/dist/services/reloadable/working-cadence-adapter.d.ts +52 -0
  51. package/dist/services/reloadable/working-cadence-adapter.d.ts.map +1 -0
  52. package/dist/services/reloadable/working-cadence-adapter.js +77 -0
  53. package/dist/services/reloadable/working-cadence-adapter.js.map +1 -0
  54. package/dist/services/service-registry.d.ts +85 -0
  55. package/dist/services/service-registry.d.ts.map +1 -0
  56. package/dist/services/service-registry.js +166 -0
  57. package/dist/services/service-registry.js.map +1 -0
  58. package/dist/tools/config/index.d.ts +9 -0
  59. package/dist/tools/config/index.d.ts.map +1 -0
  60. package/dist/tools/config/index.js +8 -0
  61. package/dist/tools/config/index.js.map +1 -0
  62. package/dist/tools/config/reload-handler.d.ts +35 -0
  63. package/dist/tools/config/reload-handler.d.ts.map +1 -0
  64. package/dist/tools/config/reload-handler.js +63 -0
  65. package/dist/tools/config/reload-handler.js.map +1 -0
  66. package/dist/tools/integrations/handlers.d.ts +2 -0
  67. package/dist/tools/integrations/handlers.d.ts.map +1 -1
  68. package/dist/tools/integrations/handlers.js.map +1 -1
  69. package/dist/tools/setup/handlers.d.ts +2 -0
  70. package/dist/tools/setup/handlers.d.ts.map +1 -1
  71. package/dist/tools/setup/handlers.js +14 -0
  72. package/dist/tools/setup/handlers.js.map +1 -1
  73. package/dist/types/hot-reload.d.ts +131 -0
  74. package/dist/types/hot-reload.d.ts.map +1 -0
  75. package/dist/types/hot-reload.js +5 -0
  76. package/dist/types/hot-reload.js.map +1 -0
  77. package/dist/version.js +1 -1
  78. package/dist/version.js.map +1 -1
  79. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-handler.d.ts","sourceRoot":"","sources":["../../src/cli/mcp-handler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AA6DH;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;CACH;AASD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACzD,SAAS,IAAI,cAAc,EAAE,CAAC;CAC/B;AA2hCD;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,UAAU,CAAC,CAI5D"}
1
+ {"version":3,"file":"mcp-handler.d.ts","sourceRoot":"","sources":["../../src/cli/mcp-handler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAoFH;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;CACH;AASD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,aAAa,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACzD,SAAS,IAAI,cAAc,EAAE,CAAC;CAC/B;AA6vCD;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,UAAU,CAAC,CAI5D"}
@@ -16,12 +16,19 @@ import { WorkingCadenceService } from '../services/working-cadence.js';
16
16
  import { CalendarSourceManager } from '../integrations/calendar-source-manager.js';
17
17
  import { GoogleCalendarService } from '../integrations/google-calendar-service.js';
18
18
  import { GoogleOAuthHandler } from '../oauth/google-oauth-handler.js';
19
+ // Hot-reload imports
20
+ import { ServiceRegistry } from '../services/service-registry.js';
21
+ import { CalendarSourceManagerAdapter, createCalendarSourceManager, ReminderManagerAdapter, createReminderManager, WorkingCadenceAdapter, createWorkingCadenceService, NotionServiceAdapter, createNotionMCPService, TodoListManagerAdapter, createTodoListManager, } from '../services/reloadable/index.js';
22
+ import { ConfigWatcher } from '../config/config-watcher.js';
23
+ import { ConfigReloadService } from '../config/config-reload-service.js';
24
+ import { getHotReloadConfig } from '../config/hot-reload-config.js';
19
25
  // Extracted tool handlers
20
26
  import { handleCheckSetupStatus, handleStartSetupWizard, handleAnswerWizardQuestion, handleSaveConfig, } from '../tools/setup/index.js';
21
27
  import { handleAnalyzeTasks, handleUpdateTaskStatus, handleSyncTasks, handleDetectDuplicates, } from '../tools/tasks/index.js';
22
28
  import { handleSetReminder, handleListTodos, } from '../tools/reminders/index.js';
23
29
  import { handleSyncToNotion, handleUpdateConfig, } from '../tools/integrations/index.js';
24
30
  import { handleListCalendarSources, handleListCalendarEvents, handleFindAvailableSlots, handleCreateCalendarEvent, handleRespondToCalendarEvent, handleRespondToCalendarEventsBatch, handleDeleteCalendarEvent, handleDeleteCalendarEventsBatch, } from '../tools/calendar/handlers.js';
31
+ import { handleAuthenticateGoogle, } from '../tools/oauth/index.js';
25
32
  // Protocol version
26
33
  const PROTOCOL_VERSION = '2024-11-05';
27
34
  /**
@@ -40,6 +47,14 @@ class MCPHandlerImpl {
40
47
  calendarSourceManager = null;
41
48
  googleCalendarService = null;
42
49
  initialized = false;
50
+ // Hot-reload infrastructure
51
+ serviceRegistry = null;
52
+ configReloadService = null;
53
+ calendarSourceManagerAdapter = null;
54
+ reminderManagerAdapter = null;
55
+ workingCadenceAdapter = null;
56
+ notionServiceAdapter = null;
57
+ todoListManagerAdapter = null;
43
58
  tools = new Map();
44
59
  constructor() {
45
60
  this.registerTools();
@@ -55,6 +70,7 @@ class MCPHandlerImpl {
55
70
  this.config = await ConfigLoader.load();
56
71
  if (this.config) {
57
72
  this.initializeServices(this.config);
73
+ await this.initializeHotReload(this.config);
58
74
  }
59
75
  }
60
76
  catch {
@@ -62,6 +78,103 @@ class MCPHandlerImpl {
62
78
  }
63
79
  this.initialized = true;
64
80
  }
81
+ /**
82
+ * Initialize hot-reload infrastructure
83
+ * Creates ServiceRegistry, adapters, and ConfigReloadService
84
+ */
85
+ async initializeHotReload(config) {
86
+ const hotReloadConfig = getHotReloadConfig();
87
+ // Skip hot-reload setup if disabled
88
+ if (hotReloadConfig.disabled) {
89
+ return;
90
+ }
91
+ // Create ServiceRegistry
92
+ this.serviceRegistry = new ServiceRegistry();
93
+ // Create and register CalendarSourceManager adapter
94
+ this.calendarSourceManagerAdapter = new CalendarSourceManagerAdapter(createCalendarSourceManager);
95
+ await this.calendarSourceManagerAdapter.reinitialize(config);
96
+ this.serviceRegistry.register(this.calendarSourceManagerAdapter);
97
+ // Create and register ReminderManager adapter
98
+ this.reminderManagerAdapter = new ReminderManagerAdapter(createReminderManager);
99
+ await this.reminderManagerAdapter.reinitialize(config);
100
+ this.serviceRegistry.register(this.reminderManagerAdapter);
101
+ // Create and register WorkingCadenceService adapter
102
+ this.workingCadenceAdapter = new WorkingCadenceAdapter(createWorkingCadenceService);
103
+ // Set CalendarSourceManager dependency
104
+ const calendarManagerInstance = this.calendarSourceManagerAdapter.getInstance();
105
+ if (calendarManagerInstance) {
106
+ this.workingCadenceAdapter.setCalendarSourceManager(calendarManagerInstance);
107
+ }
108
+ await this.workingCadenceAdapter.reinitialize(config);
109
+ this.serviceRegistry.register(this.workingCadenceAdapter);
110
+ // Create and register NotionMCPService adapter
111
+ this.notionServiceAdapter = new NotionServiceAdapter(createNotionMCPService);
112
+ await this.notionServiceAdapter.reinitialize(config);
113
+ this.serviceRegistry.register(this.notionServiceAdapter);
114
+ // Create and register TodoListManager adapter
115
+ this.todoListManagerAdapter = new TodoListManagerAdapter(createTodoListManager);
116
+ await this.todoListManagerAdapter.reinitialize(config);
117
+ this.serviceRegistry.register(this.todoListManagerAdapter);
118
+ // Create ConfigWatcher and ConfigReloadService
119
+ const configWatcher = new ConfigWatcher({
120
+ debounceMs: hotReloadConfig.debounceMs,
121
+ });
122
+ this.configReloadService = new ConfigReloadService(configWatcher, this.serviceRegistry, {
123
+ enableAutoReload: true,
124
+ onReload: (result) => {
125
+ // Update local service references after reload
126
+ if (result.success) {
127
+ this.updateServiceReferencesFromAdapters();
128
+ }
129
+ },
130
+ });
131
+ // Start watching for config changes
132
+ await configWatcher.start();
133
+ await this.configReloadService.start();
134
+ }
135
+ /**
136
+ * Update local service references from adapter instances
137
+ * Called after hot-reload to sync the service references
138
+ */
139
+ updateServiceReferencesFromAdapters() {
140
+ if (this.calendarSourceManagerAdapter) {
141
+ const instance = this.calendarSourceManagerAdapter.getInstance();
142
+ if (instance) {
143
+ this.calendarSourceManager = instance;
144
+ }
145
+ }
146
+ if (this.reminderManagerAdapter) {
147
+ const instance = this.reminderManagerAdapter.getInstance();
148
+ if (instance) {
149
+ this.reminderManager = instance;
150
+ }
151
+ }
152
+ if (this.workingCadenceAdapter) {
153
+ const instance = this.workingCadenceAdapter.getInstance();
154
+ if (instance) {
155
+ this.workingCadenceService = instance;
156
+ }
157
+ }
158
+ if (this.notionServiceAdapter) {
159
+ const instance = this.notionServiceAdapter.getInstance();
160
+ if (instance) {
161
+ this.notionService = instance;
162
+ }
163
+ }
164
+ if (this.todoListManagerAdapter) {
165
+ const instance = this.todoListManagerAdapter.getInstance();
166
+ if (instance) {
167
+ this.todoListManager = instance;
168
+ }
169
+ }
170
+ // Update config from ConfigReloadService
171
+ if (this.configReloadService) {
172
+ const newConfig = this.configReloadService.getCurrentConfig();
173
+ if (newConfig) {
174
+ this.config = newConfig;
175
+ }
176
+ }
177
+ }
65
178
  /**
66
179
  * Initialize services with config
67
180
  */
@@ -114,7 +227,13 @@ class MCPHandlerImpl {
114
227
  createTaskToolsContext() {
115
228
  return {
116
229
  getConfig: () => this.config,
117
- getTodoListManager: () => this.todoListManager,
230
+ getTodoListManager: () => {
231
+ // Prefer reloadable adapter instance if available
232
+ if (this.todoListManagerAdapter) {
233
+ return this.todoListManagerAdapter.getInstance();
234
+ }
235
+ return this.todoListManager;
236
+ },
118
237
  getTaskSynchronizer: () => this.taskSynchronizer,
119
238
  initializeServices: (config) => this.initializeServices(config),
120
239
  };
@@ -125,8 +244,20 @@ class MCPHandlerImpl {
125
244
  createReminderTodoContext() {
126
245
  return {
127
246
  getConfig: () => this.config,
128
- getReminderManager: () => this.reminderManager,
129
- getTodoListManager: () => this.todoListManager,
247
+ getReminderManager: () => {
248
+ // Prefer reloadable adapter instance if available
249
+ if (this.reminderManagerAdapter) {
250
+ return this.reminderManagerAdapter.getInstance();
251
+ }
252
+ return this.reminderManager;
253
+ },
254
+ getTodoListManager: () => {
255
+ // Prefer reloadable adapter instance if available
256
+ if (this.todoListManagerAdapter) {
257
+ return this.todoListManagerAdapter.getInstance();
258
+ }
259
+ return this.todoListManager;
260
+ },
130
261
  initializeServices: (config) => this.initializeServices(config),
131
262
  };
132
263
  }
@@ -139,7 +270,13 @@ class MCPHandlerImpl {
139
270
  setConfig: (config) => {
140
271
  this.config = config;
141
272
  },
142
- getNotionService: () => this.notionService,
273
+ getNotionService: () => {
274
+ // Prefer reloadable adapter instance if available
275
+ if (this.notionServiceAdapter) {
276
+ return this.notionServiceAdapter.getInstance();
277
+ }
278
+ return this.notionService;
279
+ },
143
280
  initializeServices: (config) => this.initializeServices(config),
144
281
  };
145
282
  }
@@ -149,16 +286,55 @@ class MCPHandlerImpl {
149
286
  createCalendarToolsContext() {
150
287
  return {
151
288
  getConfig: () => this.config,
152
- getCalendarSourceManager: () => this.calendarSourceManager,
289
+ getCalendarSourceManager: () => {
290
+ // Prefer reloadable adapter instance if available
291
+ if (this.calendarSourceManagerAdapter) {
292
+ return this.calendarSourceManagerAdapter.getInstance();
293
+ }
294
+ return this.calendarSourceManager;
295
+ },
153
296
  getCalendarEventResponseService: () => this.calendarEventResponseService,
154
297
  getGoogleCalendarService: () => this.googleCalendarService,
155
- getWorkingCadenceService: () => this.workingCadenceService,
298
+ getWorkingCadenceService: () => {
299
+ // Prefer reloadable adapter instance if available
300
+ if (this.workingCadenceAdapter) {
301
+ return this.workingCadenceAdapter.getInstance();
302
+ }
303
+ return this.workingCadenceService;
304
+ },
156
305
  setWorkingCadenceService: (service) => {
157
306
  this.workingCadenceService = service;
158
307
  },
159
308
  initializeServices: (config) => this.initializeServices(config),
160
309
  };
161
310
  }
311
+ /**
312
+ * Create OAuthToolsContext for OAuth tool handlers
313
+ */
314
+ createOAuthToolsContext() {
315
+ const createHandler = () => {
316
+ const oauthConfig = {
317
+ clientId: process.env.GOOGLE_CLIENT_ID || '',
318
+ clientSecret: process.env.GOOGLE_CLIENT_SECRET || '',
319
+ redirectUri: process.env.GOOGLE_REDIRECT_URI || 'http://localhost:3000/oauth/callback',
320
+ };
321
+ if (!oauthConfig.clientId || !oauthConfig.clientSecret) {
322
+ return null;
323
+ }
324
+ return new GoogleOAuthHandler(oauthConfig);
325
+ };
326
+ return {
327
+ getGoogleOAuthHandler: () => {
328
+ if (!this.config)
329
+ return null;
330
+ const googleConfig = this.config.calendar?.sources?.google;
331
+ if (!googleConfig?.enabled)
332
+ return null;
333
+ return createHandler();
334
+ },
335
+ createGoogleOAuthHandler: createHandler,
336
+ };
337
+ }
162
338
  /**
163
339
  * Handle an MCP request
164
340
  */
@@ -876,6 +1052,37 @@ class MCPHandlerImpl {
876
1052
  properties: {},
877
1053
  },
878
1054
  }, async () => handleListCalendarSources(this.createCalendarToolsContext()));
1055
+ // authenticate_google - Complete Google OAuth flow automatically
1056
+ this.registerTool({
1057
+ name: 'authenticate_google',
1058
+ description: 'Authenticate with Google Calendar using OAuth. Opens browser for authentication and automatically captures the callback. Returns success status with token information.',
1059
+ inputSchema: {
1060
+ type: 'object',
1061
+ properties: {
1062
+ force: {
1063
+ type: 'boolean',
1064
+ description: 'Force re-authentication even if tokens already exist',
1065
+ },
1066
+ timeout: {
1067
+ type: 'number',
1068
+ description: 'Timeout in seconds for waiting for authentication (default: 300)',
1069
+ },
1070
+ },
1071
+ },
1072
+ }, async (args) => {
1073
+ const result = await handleAuthenticateGoogle({
1074
+ force: args.force ?? false,
1075
+ timeout: args.timeout ?? 300,
1076
+ }, this.createOAuthToolsContext());
1077
+ return {
1078
+ content: [
1079
+ {
1080
+ type: 'text',
1081
+ text: JSON.stringify(result, null, 2),
1082
+ },
1083
+ ],
1084
+ };
1085
+ });
879
1086
  }
880
1087
  /**
881
1088
  * Register a tool
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-handler.js","sourceRoot":"","sources":["../../src/cli/mcp-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-handler.js","sourceRoot":"","sources":["../../src/cli/mcp-handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Signal Handler for Hot Reload
3
+ * Handles Unix signals for configuration reload and graceful shutdown.
4
+ */
5
+ /**
6
+ * Interface for ConfigReloadService that signal handler depends on.
7
+ * This is a minimal interface to avoid circular dependencies.
8
+ */
9
+ export interface ConfigReloadServiceInterface {
10
+ reload(): Promise<import('../types/hot-reload.js').ReloadResult>;
11
+ stop(): void;
12
+ }
13
+ /**
14
+ * Setup signal handlers for hot reload and graceful shutdown.
15
+ *
16
+ * - SIGHUP: Triggers configuration reload
17
+ * - SIGTERM: Initiates graceful shutdown
18
+ * - SIGINT: Initiates graceful shutdown
19
+ *
20
+ * @param configReloadService - Service that handles config reloading
21
+ */
22
+ export declare function setupSignalHandlers(configReloadService: ConfigReloadServiceInterface): void;
23
+ //# sourceMappingURL=signal-handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signal-handler.d.ts","sourceRoot":"","sources":["../../src/cli/signal-handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH;;;GAGG;AACH,MAAM,WAAW,4BAA4B;IAC3C,MAAM,IAAI,OAAO,CAAC,OAAO,wBAAwB,EAAE,YAAY,CAAC,CAAC;IACjE,IAAI,IAAI,IAAI,CAAC;CACd;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,mBAAmB,EAAE,4BAA4B,GAAG,IAAI,CA2C3F"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Signal Handler for Hot Reload
3
+ * Handles Unix signals for configuration reload and graceful shutdown.
4
+ */
5
+ import { createLogger } from '../utils/logger.js';
6
+ const logger = createLogger('signal-handler');
7
+ /**
8
+ * Setup signal handlers for hot reload and graceful shutdown.
9
+ *
10
+ * - SIGHUP: Triggers configuration reload
11
+ * - SIGTERM: Initiates graceful shutdown
12
+ * - SIGINT: Initiates graceful shutdown
13
+ *
14
+ * @param configReloadService - Service that handles config reloading
15
+ */
16
+ export function setupSignalHandlers(configReloadService) {
17
+ // Handle SIGHUP - reload configuration
18
+ process.on('SIGHUP', async () => {
19
+ logger.info('Received SIGHUP signal, reloading configuration');
20
+ try {
21
+ const result = await configReloadService.reload();
22
+ if (result.success) {
23
+ logger.info({
24
+ changedSections: result.changedSections,
25
+ reinitializedServices: result.reinitializedServices,
26
+ durationMs: result.durationMs,
27
+ }, 'Configuration reload completed successfully');
28
+ }
29
+ else {
30
+ logger.error({ error: result.error }, 'Configuration reload failed');
31
+ }
32
+ }
33
+ catch (error) {
34
+ logger.error({ error: error instanceof Error ? error.message : 'Unknown error' }, 'Configuration reload failed with exception');
35
+ }
36
+ });
37
+ // Handle SIGTERM - graceful shutdown
38
+ process.on('SIGTERM', () => {
39
+ logger.info('Received SIGTERM signal, initiating graceful shutdown');
40
+ configReloadService.stop();
41
+ process.exit(0);
42
+ });
43
+ // Handle SIGINT - graceful shutdown (Ctrl+C)
44
+ process.on('SIGINT', () => {
45
+ logger.info('Received SIGINT signal, initiating graceful shutdown');
46
+ configReloadService.stop();
47
+ process.exit(0);
48
+ });
49
+ logger.debug('Signal handlers registered for SIGHUP, SIGTERM, and SIGINT');
50
+ }
51
+ //# sourceMappingURL=signal-handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signal-handler.js","sourceRoot":"","sources":["../../src/cli/signal-handler.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,MAAM,GAAG,YAAY,CAAC,gBAAgB,CAAC,CAAC;AAW9C;;;;;;;;GAQG;AACH,MAAM,UAAU,mBAAmB,CAAC,mBAAiD;IACnF,uCAAuC;IACvC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;QAC9B,MAAM,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;QAE/D,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,CAAC;YAElD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,IAAI,CACT;oBACE,eAAe,EAAE,MAAM,CAAC,eAAe;oBACvC,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;oBACnD,UAAU,EAAE,MAAM,CAAC,UAAU;iBAC9B,EACD,6CAA6C,CAC9C,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,EAAE,6BAA6B,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CACV,EAAE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,EACnE,4CAA4C,CAC7C,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,qCAAqC;IACrC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;QACzB,MAAM,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;QACrE,mBAAmB,CAAC,IAAI,EAAE,CAAC;QAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,6CAA6C;IAC7C,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;QACxB,MAAM,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;QACpE,mBAAmB,CAAC,IAAI,EAAE,CAAC;QAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;AAC7E,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Configuration differ utility
3
+ * Provides deep comparison functionality for UserConfig objects
4
+ */
5
+ import type { UserConfig } from '../types/config.js';
6
+ import type { ConfigDiff } from '../types/hot-reload.js';
7
+ /**
8
+ * Compare two UserConfig objects and return the differences
9
+ * @param oldConfig - Previous configuration
10
+ * @param newConfig - New configuration
11
+ * @returns ConfigDiff describing all differences
12
+ */
13
+ export declare function diffConfig(oldConfig: UserConfig, newConfig: UserConfig): ConfigDiff;
14
+ /**
15
+ * Check if the config diff contains significant changes that warrant service re-initialization
16
+ * Changes to metadata fields (version, createdAt, lastUpdated) are not considered significant
17
+ * @param diff - ConfigDiff to evaluate
18
+ * @returns true if there are significant changes
19
+ */
20
+ export declare function hasSignificantChanges(diff: ConfigDiff): boolean;
21
+ //# sourceMappingURL=config-differ.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-differ.d.ts","sourceRoot":"","sources":["../../src/config/config-differ.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AA4HzD;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,GAAG,UAAU,CA4DnF;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CA8B/D"}