syntropylog 0.9.10 → 0.9.11

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 (51) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/dist/core/LifecycleManager.js +48 -58
  3. package/dist/core/LifecycleManager.js.map +1 -1
  4. package/dist/index.cjs +357 -313
  5. package/dist/index.cjs.map +1 -1
  6. package/dist/index.d.ts +8 -2
  7. package/dist/index.mjs +357 -313
  8. package/dist/index.mjs.map +1 -1
  9. package/dist/logger/Logger.js +1 -1
  10. package/dist/logger/Logger.js.map +1 -1
  11. package/dist/logger/LoggerFactory.js +102 -81
  12. package/dist/logger/LoggerFactory.js.map +1 -1
  13. package/dist/logger/transports/ColorfulConsoleTransport.js +83 -79
  14. package/dist/logger/transports/ColorfulConsoleTransport.js.map +1 -1
  15. package/dist/logger/transports/PrettyConsoleTransport.js +31 -26
  16. package/dist/logger/transports/PrettyConsoleTransport.js.map +1 -1
  17. package/dist/masking/MaskingEngine.js +27 -6
  18. package/dist/masking/MaskingEngine.js.map +1 -1
  19. package/dist/redis/RedisConnectionManager.js +53 -57
  20. package/dist/redis/RedisConnectionManager.js.map +1 -1
  21. package/dist/redis/index.js +6 -0
  22. package/dist/redis/index.js.map +1 -0
  23. package/dist/sanitization/SanitizationEngine.js +2 -2
  24. package/dist/sanitization/SanitizationEngine.js.map +1 -1
  25. package/dist/serialization/SerializationPipeline.js +10 -3
  26. package/dist/serialization/SerializationPipeline.js.map +1 -1
  27. package/dist/testing/BeaconRedisMock.js +116 -82
  28. package/dist/testing/BeaconRedisMock.js.map +1 -1
  29. package/dist/testing/index.cjs +21494 -67
  30. package/dist/testing/index.cjs.map +1 -1
  31. package/dist/testing/index.d.ts +3 -4
  32. package/dist/testing/index.mjs +21494 -67
  33. package/dist/testing/index.mjs.map +1 -1
  34. package/dist/testing/magic-string.es-Bf6eKFmE.js +2005 -0
  35. package/dist/testing/magic-string.es-Bf6eKFmE.js.map +1 -0
  36. package/dist/testing/magic-string.es-Dl5DFuGU.js +2001 -0
  37. package/dist/testing/magic-string.es-Dl5DFuGU.js.map +1 -0
  38. package/dist/tsconfig.tsbuildinfo +1 -1
  39. package/dist/types/core/LifecycleManager.d.ts +9 -1
  40. package/dist/types/logger/LoggerFactory.d.ts +8 -5
  41. package/dist/types/logger/transports/ColorfulConsoleTransport.d.ts +17 -0
  42. package/dist/types/logger/transports/PrettyConsoleTransport.d.ts +11 -0
  43. package/dist/types/masking/MaskingEngine.d.ts +2 -1
  44. package/dist/types/redis/RedisConnectionManager.d.ts +2 -6
  45. package/dist/types/redis/index.d.ts +5 -0
  46. package/dist/types/sanitization/SanitizationEngine.d.ts +1 -1
  47. package/dist/types/testing/BeaconRedisMock.d.ts +3 -3
  48. package/dist/types/utils/createFailingClient.d.ts +1 -0
  49. package/dist/utils/createFailingClient.js +16 -13
  50. package/dist/utils/createFailingClient.js.map +1 -1
  51. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.9.11
4
+
5
+ ### Patch Changes
6
+
7
+ - Fix memory leak in LoggerFactory, improve process management in LifecycleManager, and fix zombie timers in SerializationPipeline. Refactor core components to use pure functions.
8
+ - Security: Patched a potential ReDoS vulnerability in `MaskingEngine` by enforcing a timeout on regex execution using `regex-test`. Masking operations are now asynchronous to support this safety mechanism.
9
+ - MaskingEngine: Circular reference protection during recursive masking (WeakSet); cleanup of `regex-test` worker on `shutdown()` to avoid process leaks.
10
+ - Build: Rollup type declarations bundle now treats Node.js builtins (`child_process`, etc.) as external, eliminating "Unresolved dependencies" warnings.
11
+ - Types: Extended `declarations.d.ts` for `regex-test` with `test()` and `cleanWorker()` for correct typing and lint compliance.
12
+
3
13
  ## 0.9.10
4
14
 
5
15
  ### Patch Changes
@@ -7,6 +7,32 @@ import { sanitizeConfig } from '../utils/sanitizeConfig';
7
7
  import { SerializationManager } from '../serialization/SerializationManager';
8
8
  import { MaskingEngine } from '../masking/MaskingEngine';
9
9
  import { errorToJsonValue } from '../types';
10
+ // Pure helper function for process termination
11
+ const terminateProcess = async (childProcess, logger) => {
12
+ if (!childProcess.connected && childProcess.exitCode !== null) {
13
+ return;
14
+ }
15
+ const pid = childProcess.pid;
16
+ logger?.debug(`Sending SIGTERM to process ${pid}...`);
17
+ childProcess.kill('SIGTERM');
18
+ // Wait up to 5 seconds for graceful exit
19
+ const gracefulExit = new Promise((resolve) => {
20
+ const onExit = () => {
21
+ resolve();
22
+ childProcess.removeListener('exit', onExit);
23
+ };
24
+ childProcess.on('exit', onExit);
25
+ });
26
+ const timeout = new Promise((resolve) => setTimeout(resolve, 5000));
27
+ await Promise.race([gracefulExit, timeout]);
28
+ if (childProcess.exitCode === null) {
29
+ logger?.warn(`Process ${pid} did not exit after SIGTERM, sending SIGKILL...`);
30
+ childProcess.kill('SIGKILL');
31
+ }
32
+ else {
33
+ logger?.debug(`Process ${pid} exited gracefully`);
34
+ }
35
+ };
10
36
  export class LifecycleManager extends EventEmitter {
11
37
  state = 'NOT_INITIALIZED';
12
38
  config;
@@ -17,6 +43,7 @@ export class LifecycleManager extends EventEmitter {
17
43
  maskingEngine;
18
44
  logger = null;
19
45
  syntropyFacade;
46
+ trackedProcesses = new Set();
20
47
  constructor(syntropyFacade) {
21
48
  super();
22
49
  this.syntropyFacade = syntropyFacade;
@@ -115,70 +142,33 @@ export class LifecycleManager extends EventEmitter {
115
142
  });
116
143
  }
117
144
  }
145
+ /**
146
+ * Registers a child process to be managed by the LifecycleManager.
147
+ * Managed processes will be gracefully terminated during shutdown.
148
+ * @param childProcess The child process to track
149
+ */
150
+ registerChildProcess(childProcess) {
151
+ this.trackedProcesses.add(childProcess);
152
+ // Auto-remove if it exits on its own
153
+ childProcess.on('exit', () => {
154
+ this.trackedProcesses.delete(childProcess);
155
+ });
156
+ }
118
157
  /**
119
158
  * Terminates external processes that might keep the Node.js process active.
120
- * This includes regex-test workers and other child processes.
159
+ * Uses a graceful shutdown strategy (SIGTERM -> wait -> SIGKILL).
121
160
  */
122
161
  async terminateExternalProcesses() {
123
162
  try {
124
- this.logger?.info('🔍 Starting external process termination...');
125
- // Get all active handles
126
- const activeHandles = process._getActiveHandles?.() ?? [];
127
- this.logger?.debug(`Total active handles: ${activeHandles.length}`);
128
- // Filter child processes that need to be terminated
129
- const childProcesses = activeHandles.filter((handle) => {
130
- const h = handle;
131
- const isChildProcess = h.constructor?.name === 'ChildProcess';
132
- const isConnected = h.connected;
133
- const hasRegexTest = h.spawnargs?.some((arg) => arg.includes('regex-test'));
134
- this.logger?.debug(`Handle: ${h.constructor?.name}, connected: ${isConnected}, hasRegexTest: ${hasRegexTest}`);
135
- return Boolean(isChildProcess && isConnected && hasRegexTest);
136
- });
137
- this.logger?.info(`Found ${childProcesses.length} regex-test processes to terminate`);
138
- if (childProcesses.length > 0) {
139
- this.logger?.info(`Terminating ${childProcesses.length} external processes...`);
140
- // Terminate each child process directly with SIGKILL for maximum effectiveness
141
- for (const childProcess of childProcesses) {
142
- try {
143
- this.logger?.debug(`Terminating process ${childProcess.pid} with SIGKILL...`);
144
- childProcess.kill('SIGKILL');
145
- this.logger?.debug(`Process ${childProcess.pid} terminated with SIGKILL`);
146
- }
147
- catch (error) {
148
- this.logger?.warn(`Error terminating process ${childProcess.pid}:`, { error: errorToJsonValue(error) });
149
- }
150
- }
151
- // Wait a bit for processes to terminate
152
- this.logger?.debug('Waiting 200ms for processes to terminate...');
153
- await new Promise((resolve) => setTimeout(resolve, 200));
154
- // Check if processes are still active
155
- const remainingHandles = process._getActiveHandles?.() ?? [];
156
- const remainingChildProcesses = remainingHandles.filter((handle) => {
157
- const h = handle;
158
- return (h.constructor?.name === 'ChildProcess' &&
159
- h.connected &&
160
- h.spawnargs?.some((arg) => arg.includes('regex-test')));
161
- });
162
- if (remainingChildProcesses.length > 0) {
163
- this.logger?.warn(`${remainingChildProcesses.length} regex-test processes still active after SIGKILL`);
164
- // Try to disconnect the processes
165
- for (const childProcess of remainingChildProcesses) {
166
- try {
167
- childProcess.disconnect();
168
- this.logger?.debug(`Process ${childProcess.pid} disconnected`);
169
- }
170
- catch (error) {
171
- this.logger?.warn(`Error disconnecting process ${childProcess.pid}:`, { error: errorToJsonValue(error) });
172
- }
173
- }
174
- }
175
- else {
176
- this.logger?.info('✅ All regex-test processes terminated successfully');
177
- }
178
- }
179
- else {
180
- this.logger?.info('No regex-test processes found to terminate');
163
+ if (this.trackedProcesses.size === 0) {
164
+ this.logger?.info('No tracked external processes to terminate');
165
+ return;
181
166
  }
167
+ this.logger?.info(`Terminating ${this.trackedProcesses.size} external processes...`);
168
+ const terminationPromises = Array.from(this.trackedProcesses).map((childProcess) => terminateProcess(childProcess, this.logger));
169
+ await Promise.allSettled(terminationPromises);
170
+ this.trackedProcesses.clear();
171
+ this.logger?.info('✅ All external processes terminated');
182
172
  }
183
173
  catch (error) {
184
174
  this.logger?.warn('Error terminating external processes:', {
@@ -1 +1 @@
1
- {"version":3,"file":"LifecycleManager.js","sourceRoot":"","sources":["../../src/core/LifecycleManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LifecycleManager.js","sourceRoot":"","sources":["../../src/core/LifecycleManager.ts"],"names":[],"mappings":"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"}