@shuji-bonji/rxjs-mcp 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/dist/data/cleanup-examples.d.ts +9 -0
  2. package/dist/data/cleanup-examples.d.ts.map +1 -0
  3. package/dist/data/cleanup-examples.js +87 -0
  4. package/dist/data/cleanup-examples.js.map +1 -0
  5. package/dist/data/creation-functions.d.ts +7 -0
  6. package/dist/data/creation-functions.d.ts.map +1 -0
  7. package/dist/data/creation-functions.js +135 -0
  8. package/dist/data/creation-functions.js.map +1 -0
  9. package/dist/data/operators.d.ts +7 -0
  10. package/dist/data/operators.d.ts.map +1 -0
  11. package/dist/data/operators.js +500 -0
  12. package/dist/data/operators.js.map +1 -0
  13. package/dist/data/patterns.d.ts +10 -0
  14. package/dist/data/patterns.d.ts.map +1 -0
  15. package/dist/data/patterns.js +482 -0
  16. package/dist/data/patterns.js.map +1 -0
  17. package/dist/data/rxjs-context.d.ts +169 -0
  18. package/dist/data/rxjs-context.d.ts.map +1 -0
  19. package/dist/data/rxjs-context.js +209 -0
  20. package/dist/data/rxjs-context.js.map +1 -0
  21. package/dist/index.js +2 -1
  22. package/dist/index.js.map +1 -1
  23. package/dist/tools/analyze-operators.d.ts.map +1 -1
  24. package/dist/tools/analyze-operators.js +2 -121
  25. package/dist/tools/analyze-operators.js.map +1 -1
  26. package/dist/tools/execute-stream-worker.js +7 -149
  27. package/dist/tools/execute-stream-worker.js.map +1 -1
  28. package/dist/tools/execute-stream.d.ts.map +1 -1
  29. package/dist/tools/execute-stream.js +33 -67
  30. package/dist/tools/execute-stream.js.map +1 -1
  31. package/dist/tools/memory-leak.d.ts.map +1 -1
  32. package/dist/tools/memory-leak.js +2 -82
  33. package/dist/tools/memory-leak.js.map +1 -1
  34. package/dist/tools/suggest-pattern.d.ts.map +1 -1
  35. package/dist/tools/suggest-pattern.js +1 -477
  36. package/dist/tools/suggest-pattern.js.map +1 -1
  37. package/dist/types.d.ts +40 -0
  38. package/dist/types.d.ts.map +1 -1
  39. package/package.json +3 -2
@@ -3,7 +3,11 @@
3
3
  * This runs in a separate thread to prevent main process pollution
4
4
  */
5
5
  import { parentPort, workerData } from 'worker_threads';
6
- import { Observable, Subject, BehaviorSubject, ReplaySubject, AsyncSubject, connectable, of, from, interval, timer, range, generate, concat, merge, combineLatest, zip, forkJoin, race, partition, iif, defer, scheduled, throwError, EMPTY, NEVER, firstValueFrom, lastValueFrom, map, scan, mergeScan, reduce, pairwise, groupBy, mergeMap, switchMap, concatMap, exhaustMap, expand, buffer, bufferTime, bufferCount, bufferWhen, bufferToggle, windowTime, window as windowOp, windowCount, windowToggle, windowWhen, filter, take, takeLast, takeWhile, skip, skipLast, skipWhile, skipUntil, first, last, elementAt, find, findIndex, debounceTime, throttleTime, auditTime, audit, sampleTime, sample, ignoreElements, distinct, distinctUntilChanged, distinctUntilKeyChanged, concatWith, mergeWith, combineLatestWith, zipWith, raceWith, withLatestFrom, mergeAll, concatAll, switchAll, exhaustAll, combineLatestAll, zipAll, tap, delay, delayWhen, timeout, takeUntil, finalize, repeat, retry, startWith, endWith, toArray, materialize, dematerialize, observeOn, subscribeOn, timestamp, defaultIfEmpty, every, isEmpty, catchError, retryWhen, share, shareReplay, pluck, mapTo, switchMapTo, mergeMapTo, concatMapTo, count, max, min, single, throwIfEmpty, connect, refCount, } from 'rxjs';
6
+ import { createExecutionContext, Observable, EMPTY } from '../data/rxjs-context.js';
7
+ import { take, tap, catchError, finalize } from 'rxjs';
8
+ /**
9
+ * Execute user-provided RxJS code in an isolated context
10
+ */
7
11
  async function executeCode(input) {
8
12
  const result = {
9
13
  values: [],
@@ -22,154 +26,8 @@ async function executeCode(input) {
22
26
  const startMemory = process.memoryUsage().heapUsed;
23
27
  result.memoryUsage.before = startMemory;
24
28
  try {
25
- // Create a safe execution context with RxJS imports
26
- // Note: We deliberately exclude process, require, import, fs, etc.
27
- const context = {
28
- Observable,
29
- Subject,
30
- BehaviorSubject,
31
- ReplaySubject,
32
- AsyncSubject,
33
- of,
34
- from,
35
- interval,
36
- timer,
37
- range,
38
- generate,
39
- concat,
40
- merge,
41
- combineLatest,
42
- zip,
43
- forkJoin,
44
- race,
45
- partition,
46
- iif,
47
- defer,
48
- scheduled,
49
- throwError,
50
- EMPTY,
51
- NEVER,
52
- firstValueFrom,
53
- lastValueFrom,
54
- map,
55
- scan,
56
- mergeScan,
57
- reduce,
58
- pairwise,
59
- groupBy,
60
- mergeMap,
61
- switchMap,
62
- concatMap,
63
- exhaustMap,
64
- expand,
65
- buffer,
66
- bufferTime,
67
- bufferCount,
68
- bufferWhen,
69
- bufferToggle,
70
- windowTime,
71
- window: windowOp,
72
- windowCount,
73
- windowToggle,
74
- windowWhen,
75
- filter,
76
- take,
77
- takeLast,
78
- takeWhile,
79
- skip,
80
- skipLast,
81
- skipWhile,
82
- skipUntil,
83
- first,
84
- last,
85
- elementAt,
86
- find,
87
- findIndex,
88
- debounceTime,
89
- throttleTime,
90
- auditTime,
91
- audit,
92
- sampleTime,
93
- sample,
94
- ignoreElements,
95
- distinct,
96
- distinctUntilChanged,
97
- distinctUntilKeyChanged,
98
- concatWith,
99
- mergeWith,
100
- combineLatestWith,
101
- zipWith,
102
- raceWith,
103
- withLatestFrom,
104
- mergeAll,
105
- concatAll,
106
- switchAll,
107
- exhaustAll,
108
- combineLatestAll,
109
- zipAll,
110
- tap,
111
- delay,
112
- delayWhen,
113
- timeout,
114
- takeUntil,
115
- finalize,
116
- repeat,
117
- retry,
118
- startWith,
119
- endWith,
120
- toArray,
121
- materialize,
122
- dematerialize,
123
- observeOn,
124
- subscribeOn,
125
- timestamp,
126
- defaultIfEmpty,
127
- every,
128
- isEmpty,
129
- catchError,
130
- retryWhen,
131
- share,
132
- shareReplay,
133
- pluck,
134
- mapTo,
135
- switchMapTo,
136
- mergeMapTo,
137
- concatMapTo,
138
- count,
139
- max,
140
- min,
141
- single,
142
- throwIfEmpty,
143
- connect,
144
- connectable,
145
- refCount,
146
- // Safe globals only
147
- console: {
148
- log: (...args) => { },
149
- error: (...args) => { },
150
- warn: (...args) => { },
151
- },
152
- setTimeout,
153
- clearTimeout,
154
- Date,
155
- Math,
156
- JSON,
157
- Array,
158
- Object,
159
- String,
160
- Number,
161
- Boolean,
162
- Promise,
163
- // Explicitly undefined dangerous globals
164
- process: undefined,
165
- require: undefined,
166
- module: undefined,
167
- exports: undefined,
168
- __dirname: undefined,
169
- __filename: undefined,
170
- global: undefined,
171
- globalThis: undefined,
172
- };
29
+ // Create safe execution context with RxJS imports
30
+ const context = createExecutionContext();
173
31
  // Create function with context
174
32
  const func = new Function(...Object.keys(context), `
175
33
  "use strict";
@@ -1 +1 @@
1
- {"version":3,"file":"execute-stream-worker.js","sourceRoot":"","sources":["../../src/tools/execute-stream-worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute-stream-worker.js","sourceRoot":"","sources":["../../src/tools/execute-stream-worker.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,EAAE,sBAAsB,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AACpF,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEvD;;GAEG;AACH,KAAK,UAAU,WAAW,CAAC,KAAkB;IAC3C,MAAM,MAAM,GAAiB;QAC3B,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,EAAE;QACV,SAAS,EAAE,KAAK;QAChB,QAAQ,EAAE,KAAK;QACf,QAAQ,EAAE,EAAE;QACZ,aAAa,EAAE,CAAC;QAChB,WAAW,EAAE;YACX,MAAM,EAAE,CAAC;YACT,KAAK,EAAE,CAAC;YACR,IAAI,EAAE,CAAC;SACR;KACF,CAAC;IAEF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC;IACnD,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,WAAW,CAAC;IAExC,IAAI,CAAC;QACH,kDAAkD;QAClD,MAAM,OAAO,GAAG,sBAAsB,EAAE,CAAC;QAEzC,+BAA+B;QAC/B,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE;;QAE/C,KAAK,CAAC,IAAI;KACb,CAAC,CAAC;QAEH,oCAAoC;QACpC,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAEpD,IAAI,CAAC,CAAC,WAAW,YAAY,UAAU,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,qCAAqC;QACrC,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;gBACpC,MAAM,CAAC,IAAI,KAAK,CAAC,kCAAkC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;YAC3E,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;YAEpB,IAAI,aAAa,GAAG,KAAK,CAAC;YAE1B,MAAM,YAAY,GAAG,WAAW;iBAC7B,IAAI,CACH,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EACrB,GAAG,CAAC,KAAK,CAAC,EAAE;gBACV,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBACpC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC1B,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YACtD,CAAC,CAAC,EACF,UAAU,CAAC,KAAK,CAAC,EAAE;gBACjB,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBACpC,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC5E,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBACjC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;gBACnE,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACvB,aAAa,GAAG,IAAI,CAAC;gBACrB,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,EACF,QAAQ,CAAC,GAAG,EAAE;gBACZ,YAAY,CAAC,aAAa,CAAC,CAAC;gBAC5B,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC;gBAC1B,CAAC;gBACD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBACpC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;YACnD,CAAC,CAAC,CACH;iBACA,SAAS,CAAC;gBACT,QAAQ,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE;gBACzB,KAAK,EAAE,CAAC,GAAG,EAAE,EAAE;oBACb,YAAY,CAAC,aAAa,CAAC,CAAC;oBAC5B,MAAM,CAAC,GAAG,CAAC,CAAC;gBACd,CAAC;aACF,CAAC,CAAC;YAEL,sBAAsB;YACtB,UAAU,CAAC,GAAG,EAAE;gBACd,YAAY,CAAC,WAAW,EAAE,CAAC;YAC7B,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;IAEL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QAC9E,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACjC,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;IACzB,CAAC;IAED,MAAM,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;IAE9C,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC;IACjD,MAAM,CAAC,WAAW,CAAC,KAAK,GAAG,SAAS,CAAC;IACrC,MAAM,CAAC,WAAW,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAE3D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,0BAA0B;AAC1B,MAAM,KAAK,GAAG,UAAyB,CAAC;AAExC,WAAW,CAAC,KAAK,CAAC;KACf,IAAI,CAAC,MAAM,CAAC,EAAE;IACb,UAAU,EAAE,WAAW,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;AACrD,CAAC,CAAC;KACD,KAAK,CAAC,KAAK,CAAC,EAAE;IACb,UAAU,EAAE,WAAW,CAAC;QACtB,OAAO,EAAE,KAAK;QACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;KAChE,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"execute-stream.d.ts","sourceRoot":"","sources":["../../src/tools/execute-stream.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAuC,MAAM,aAAa,CAAC;AA6NtF,eAAO,MAAM,iBAAiB,EAAE,kBAsC/B,CAAC"}
1
+ {"version":3,"file":"execute-stream.d.ts","sourceRoot":"","sources":["../../src/tools/execute-stream.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,kBAAkB,EAInB,MAAM,aAAa,CAAC;AAoLrB,eAAO,MAAM,iBAAiB,EAAE,kBAmC/B,CAAC"}
@@ -5,9 +5,10 @@ import path from 'path';
5
5
  // Get the directory of this file
6
6
  const __filename = fileURLToPath(import.meta.url);
7
7
  const __dirname = path.dirname(__filename);
8
- // Determine the worker path - handle both src (vitest) and dist (production) scenarios
8
+ /**
9
+ * Determine the worker path - handle both src (vitest) and dist (production) scenarios
10
+ */
9
11
  function getWorkerPath() {
10
- // Check if we're in src directory (vitest) or dist directory (production)
11
12
  if (__dirname.includes('/src/')) {
12
13
  // Running from src - look for compiled worker in dist
13
14
  return path.resolve(__dirname, '../../dist/tools/execute-stream-worker.js');
@@ -23,6 +24,19 @@ const inputSchema = z.object({
23
24
  captureTimeline: z.boolean().optional().default(true).describe('Whether to capture emission timeline'),
24
25
  captureMemory: z.boolean().optional().default(false).describe('Whether to capture memory usage'),
25
26
  });
27
+ /**
28
+ * Create an empty/error result
29
+ */
30
+ function createErrorResult(error, executionTime = 0) {
31
+ return {
32
+ values: [],
33
+ errors: [error],
34
+ completed: false,
35
+ timeline: [],
36
+ executionTime,
37
+ memoryUsage: { before: 0, after: 0, peak: 0 },
38
+ };
39
+ }
26
40
  /**
27
41
  * Execute RxJS code in an isolated Worker thread
28
42
  * This prevents any side effects from affecting the main process
@@ -31,99 +45,54 @@ async function executeRxJSCodeInWorker(code, takeCount, timeoutMs) {
31
45
  return new Promise((resolve) => {
32
46
  const workerPath = getWorkerPath();
33
47
  const worker = new Worker(workerPath, {
34
- workerData: {
35
- code,
36
- takeCount,
37
- timeoutMs,
38
- },
48
+ workerData: { code, takeCount, timeoutMs },
39
49
  });
40
50
  // Set a hard timeout that will kill the worker
41
51
  const hardTimeout = setTimeout(() => {
42
52
  worker.terminate().then(() => {
43
- resolve({
44
- values: [],
45
- errors: [`Execution forcefully terminated after ${timeoutMs}ms timeout`],
46
- completed: false,
47
- timeline: [],
48
- executionTime: timeoutMs,
49
- memoryUsage: {
50
- before: 0,
51
- after: 0,
52
- peak: 0,
53
- },
54
- });
53
+ resolve(createErrorResult(`Execution forcefully terminated after ${timeoutMs}ms timeout`, timeoutMs));
55
54
  });
56
55
  }, timeoutMs + 1000); // Give 1 extra second for graceful completion
57
56
  worker.on('message', (message) => {
58
57
  clearTimeout(hardTimeout);
59
58
  if (message.success && message.result) {
59
+ const result = message.result;
60
60
  resolve({
61
- values: message.result.values,
62
- errors: message.result.errors,
63
- completed: message.result.completed && !message.result.hasError,
64
- timeline: message.result.timeline,
65
- executionTime: message.result.executionTime,
66
- memoryUsage: message.result.memoryUsage,
61
+ values: result.values,
62
+ errors: result.errors,
63
+ completed: result.completed && !result.hasError,
64
+ timeline: result.timeline,
65
+ executionTime: result.executionTime,
66
+ memoryUsage: result.memoryUsage,
67
67
  });
68
68
  }
69
69
  else {
70
- resolve({
71
- values: [],
72
- errors: [message.error || 'Unknown worker error'],
73
- completed: false,
74
- timeline: [],
75
- executionTime: 0,
76
- memoryUsage: {
77
- before: 0,
78
- after: 0,
79
- peak: 0,
80
- },
81
- });
70
+ resolve(createErrorResult(message.error || 'Unknown worker error'));
82
71
  }
83
72
  worker.terminate();
84
73
  });
85
74
  worker.on('error', (error) => {
86
75
  clearTimeout(hardTimeout);
87
- resolve({
88
- values: [],
89
- errors: [error.message || 'Worker execution error'],
90
- completed: false,
91
- timeline: [],
92
- executionTime: 0,
93
- memoryUsage: {
94
- before: 0,
95
- after: 0,
96
- peak: 0,
97
- },
98
- });
76
+ resolve(createErrorResult(error.message || 'Worker execution error'));
99
77
  worker.terminate();
100
78
  });
101
79
  worker.on('exit', (code) => {
102
80
  clearTimeout(hardTimeout);
103
81
  if (code !== 0) {
104
- resolve({
105
- values: [],
106
- errors: [`Worker stopped with exit code ${code}`],
107
- completed: false,
108
- timeline: [],
109
- executionTime: 0,
110
- memoryUsage: {
111
- before: 0,
112
- after: 0,
113
- peak: 0,
114
- },
115
- });
82
+ resolve(createErrorResult(`Worker stopped with exit code ${code}`));
116
83
  }
117
84
  });
118
85
  });
119
86
  }
120
- // Format result for display
87
+ /**
88
+ * Format execution result for display
89
+ */
121
90
  function formatResult(result, captureTimeline, captureMemory) {
122
91
  const parts = [];
123
92
  const hasErrors = result.errors.length > 0;
124
93
  // Execution summary
125
94
  parts.push('## Stream Execution Result\n');
126
- // Status now correctly shows error state
95
+ // Status
127
96
  if (hasErrors && !result.completed) {
128
97
  parts.push('**Status:** ❌ Error');
129
98
  }
@@ -199,10 +168,7 @@ export const executeStreamTool = {
199
168
  const result = await executeRxJSCodeInWorker(input.code, input.takeCount, input.timeout);
200
169
  const formatted = formatResult(result, input.captureTimeline, input.captureMemory);
201
170
  return {
202
- content: [{
203
- type: 'text',
204
- text: formatted,
205
- }],
171
+ content: [{ type: 'text', text: formatted }],
206
172
  };
207
173
  }
208
174
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"execute-stream.js","sourceRoot":"","sources":["../../src/tools/execute-stream.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,iCAAiC;AACjC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,uFAAuF;AACvF,SAAS,aAAa;IACpB,0EAA0E;IAC1E,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAChC,sDAAsD;QACtD,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,2CAA2C,CAAC,CAAC;IAC9E,CAAC;IACD,oBAAoB;IACpB,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,0BAA0B,CAAC,CAAC;AAC1D,CAAC;AAED,eAAe;AACf,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3B,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;IAC/E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,kDAAkD,CAAC;IACzG,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;IAChF,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,sCAAsC,CAAC;IACtG,aAAa,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,iCAAiC,CAAC;CACjG,CAAC,CAAC;AAoBH;;;GAGG;AACH,KAAK,UAAU,uBAAuB,CACpC,IAAY,EACZ,SAAiB,EACjB,SAAiB;IAEjB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;QAEnC,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,UAAU,EAAE;YACpC,UAAU,EAAE;gBACV,IAAI;gBACJ,SAAS;gBACT,SAAS;aACV;SACF,CAAC,CAAC;QAEH,+CAA+C;QAC/C,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,EAAE;YAClC,MAAM,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;gBAC3B,OAAO,CAAC;oBACN,MAAM,EAAE,EAAE;oBACV,MAAM,EAAE,CAAC,yCAAyC,SAAS,YAAY,CAAC;oBACxE,SAAS,EAAE,KAAK;oBAChB,QAAQ,EAAE,EAAE;oBACZ,aAAa,EAAE,SAAS;oBACxB,WAAW,EAAE;wBACX,MAAM,EAAE,CAAC;wBACT,KAAK,EAAE,CAAC;wBACR,IAAI,EAAE,CAAC;qBACR;iBACF,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,8CAA8C;QAEpE,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAoE,EAAE,EAAE;YAC5F,YAAY,CAAC,WAAW,CAAC,CAAC;YAE1B,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACtC,OAAO,CAAC;oBACN,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;oBAC7B,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM;oBAC7B,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ;oBAC/D,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ;oBACjC,aAAa,EAAE,OAAO,CAAC,MAAM,CAAC,aAAa;oBAC3C,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW;iBACxC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC;oBACN,MAAM,EAAE,EAAE;oBACV,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,IAAI,sBAAsB,CAAC;oBACjD,SAAS,EAAE,KAAK;oBAChB,QAAQ,EAAE,EAAE;oBACZ,aAAa,EAAE,CAAC;oBAChB,WAAW,EAAE;wBACX,MAAM,EAAE,CAAC;wBACT,KAAK,EAAE,CAAC;wBACR,IAAI,EAAE,CAAC;qBACR;iBACF,CAAC,CAAC;YACL,CAAC;YAED,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;YAC3B,YAAY,CAAC,WAAW,CAAC,CAAC;YAC1B,OAAO,CAAC;gBACN,MAAM,EAAE,EAAE;gBACV,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,IAAI,wBAAwB,CAAC;gBACnD,SAAS,EAAE,KAAK;gBAChB,QAAQ,EAAE,EAAE;gBACZ,aAAa,EAAE,CAAC;gBAChB,WAAW,EAAE;oBACX,MAAM,EAAE,CAAC;oBACT,KAAK,EAAE,CAAC;oBACR,IAAI,EAAE,CAAC;iBACR;aACF,CAAC,CAAC;YACH,MAAM,CAAC,SAAS,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YACzB,YAAY,CAAC,WAAW,CAAC,CAAC;YAC1B,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;gBACf,OAAO,CAAC;oBACN,MAAM,EAAE,EAAE;oBACV,MAAM,EAAE,CAAC,iCAAiC,IAAI,EAAE,CAAC;oBACjD,SAAS,EAAE,KAAK;oBAChB,QAAQ,EAAE,EAAE;oBACZ,aAAa,EAAE,CAAC;oBAChB,WAAW,EAAE;wBACX,MAAM,EAAE,CAAC;wBACT,KAAK,EAAE,CAAC;wBACR,IAAI,EAAE,CAAC;qBACR;iBACF,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,4BAA4B;AAC5B,SAAS,YAAY,CAAC,MAA6B,EAAE,eAAwB,EAAE,aAAsB;IACnG,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAE3C,oBAAoB;IACpB,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAE3C,yCAAyC;IACzC,IAAI,SAAS,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACnC,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACpC,CAAC;SAAM,IAAI,SAAS,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;IACrD,CAAC;SAAM,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;IACxC,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,uBAAuB,MAAM,CAAC,aAAa,IAAI,CAAC,CAAC;IAC5D,KAAK,CAAC,IAAI,CAAC,uBAAuB,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC1D,IAAI,SAAS,EAAE,CAAC;QACd,KAAK,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEf,iBAAiB;IACjB,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACnD,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,SAAS;IACT,IAAI,SAAS,EAAE,CAAC;QACd,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACzB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;YACjC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,WAAW;IACX,IAAI,eAAe,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACpC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;YAChF,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,MAAM,GAAG,KAAK,EAAE,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;IAED,eAAe;IACf,IAAI,aAAa,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;QACxC,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC/B,MAAM,QAAQ,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACtE,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACpE,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAClG,KAAK,CAAC,IAAI,CAAC,aAAa,QAAQ,KAAK,CAAC,CAAC;QACvC,KAAK,CAAC,IAAI,CAAC,YAAY,OAAO,KAAK,CAAC,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,YAAY,OAAO,KAAK,CAAC,CAAC;IACvC,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,sBAAsB;AACtB,MAAM,CAAC,MAAM,iBAAiB,GAAuB;IACnD,UAAU,EAAE;QACV,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,uKAAuK;QACpL,WAAW,EAAE,WAAW;QACxB,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,cAAc,EAAE,IAAI;SACrB;KACF;IACD,OAAO,EAAE,KAAK,EAAE,IAAa,EAAyB,EAAE;QACtD,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAC1C,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,SAAS,EACf,KAAK,CAAC,OAAO,CACd,CAAC;YAEF,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;YAEnF,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,SAAS;qBAChB,CAAC;aACH,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;YAC9E,OAAO;gBACL,OAAO,EAAE,CAAC;wBACR,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,yBAAyB,YAAY,0IAA0I;qBACtL,CAAC;aACH,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"execute-stream.js","sourceRoot":"","sources":["../../src/tools/execute-stream.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"memory-leak.d.ts","sourceRoot":"","sources":["../../src/tools/memory-leak.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAkC,MAAM,aAAa,CAAC;AA+OjF,eAAO,MAAM,oBAAoB,EAAE,kBAwElC,CAAC"}
1
+ {"version":3,"file":"memory-leak.d.ts","sourceRoot":"","sources":["../../src/tools/memory-leak.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAkC,MAAM,aAAa,CAAC;AA6JjF,eAAO,MAAM,oBAAoB,EAAE,kBAwElC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { z } from 'zod';
2
+ import { getCleanupExample } from '../data/cleanup-examples.js';
2
3
  // Input schema
3
4
  const inputSchema = z.object({
4
5
  code: z.string().describe('RxJS code to analyze for potential memory leaks'),
@@ -133,87 +134,6 @@ function analyzeMemoryLeaks(code, lifecycle) {
133
134
  }
134
135
  return result;
135
136
  }
136
- // Generate code example for proper cleanup
137
- function generateCleanupExample(lifecycle) {
138
- const examples = {
139
- angular: `
140
- // Angular Component with proper cleanup
141
- export class MyComponent implements OnDestroy {
142
- private destroy$ = new Subject<void>();
143
-
144
- ngOnInit() {
145
- // Method 1: takeUntil pattern
146
- this.myService.getData()
147
- .pipe(takeUntil(this.destroy$))
148
- .subscribe(data => console.log(data));
149
-
150
- // Method 2: Async pipe in template
151
- this.data$ = this.myService.getData();
152
- // Template: {{ data$ | async }}
153
- }
154
-
155
- ngOnDestroy() {
156
- this.destroy$.next();
157
- this.destroy$.complete();
158
- }
159
- }`,
160
- react: `
161
- // React Hook with proper cleanup
162
- function MyComponent() {
163
- useEffect(() => {
164
- const subscription = dataStream$
165
- .pipe(/* operators */)
166
- .subscribe(data => setData(data));
167
-
168
- // Cleanup function
169
- return () => {
170
- subscription.unsubscribe();
171
- };
172
- }, [/* dependencies */]);
173
- }`,
174
- vue: `
175
- // Vue 3 Composition API with proper cleanup
176
- import { onBeforeUnmount } from 'vue';
177
-
178
- export default {
179
- setup() {
180
- const destroy$ = new Subject();
181
-
182
- // Subscribe with takeUntil
183
- dataStream$
184
- .pipe(takeUntil(destroy$))
185
- .subscribe(data => state.data = data);
186
-
187
- onBeforeUnmount(() => {
188
- destroy$.next();
189
- destroy$.complete();
190
- });
191
- }
192
- }`,
193
- none: `
194
- // Generic cleanup pattern
195
- class StreamManager {
196
- private subscriptions = new Subscription();
197
-
198
- init() {
199
- // Add subscriptions to composite
200
- this.subscriptions.add(
201
- stream1$.subscribe(/* ... */)
202
- );
203
-
204
- this.subscriptions.add(
205
- stream2$.subscribe(/* ... */)
206
- );
207
- }
208
-
209
- cleanup() {
210
- // Unsubscribe all at once
211
- this.subscriptions.unsubscribe();
212
- }
213
- }`,
214
- };
215
- return examples[lifecycle] || examples.none;
216
- }
217
137
  // Tool implementation
218
138
  export const detectMemoryLeakTool = {
219
139
  definition: {
@@ -255,7 +175,7 @@ export const detectMemoryLeakTool = {
255
175
  // Add cleanup example
256
176
  parts.push('### Proper Cleanup Pattern');
257
177
  parts.push('```typescript');
258
- parts.push(generateCleanupExample(input.componentLifecycle).trim());
178
+ parts.push(getCleanupExample(input.componentLifecycle).trim());
259
179
  parts.push('```');
260
180
  // Add best practices
261
181
  parts.push('', '### Best Practices');
@@ -1 +1 @@
1
- {"version":3,"file":"memory-leak.js","sourceRoot":"","sources":["../../src/tools/memory-leak.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memory-leak.js","sourceRoot":"","sources":["../../src/tools/memory-leak.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"suggest-pattern.d.ts","sourceRoot":"","sources":["../../src/tools/suggest-pattern.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAmC,MAAM,aAAa,CAAC;AA8flF,eAAO,MAAM,kBAAkB,EAAE,kBA2EhC,CAAC"}
1
+ {"version":3,"file":"suggest-pattern.d.ts","sourceRoot":"","sources":["../../src/tools/suggest-pattern.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAgB,MAAM,aAAa,CAAC;AA0B/D,eAAO,MAAM,kBAAkB,EAAE,kBA2EhC,CAAC"}