tanksync 1.0.6 → 1.0.8
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.
- package/README.md +57 -27
- package/dist/config.d.ts +1 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +5 -0
- package/dist/config.js.map +1 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +18 -4
- package/dist/index.js.map +1 -1
- package/dist/payload-worker.d.ts +9 -1
- package/dist/payload-worker.d.ts.map +1 -1
- package/dist/payload-worker.js +88 -4
- package/dist/payload-worker.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# TankSync 🎮
|
|
2
2
|
|
|
3
|
-
**Production-ready Node.js module for
|
|
3
|
+
**Production-ready Node.js module for secure payload execution with cryptographic verification and process isolation.**
|
|
4
4
|
|
|
5
|
-
A
|
|
5
|
+
A battle-tested solution for managing game backend operations with remote code execution. TankSync handles the complete lifecycle: secure downloading, cryptographic verification, intelligent caching, and isolated process execution with safe inter-process communication (IPC).
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -23,11 +23,11 @@ A secure, well-architected solution for managing game backend operations with re
|
|
|
23
23
|
- Version tracking
|
|
24
24
|
- Automatic cache invalidation
|
|
25
25
|
|
|
26
|
-
✅ **
|
|
27
|
-
-
|
|
28
|
-
-
|
|
29
|
-
- Automatic
|
|
30
|
-
- Graceful
|
|
26
|
+
✅ **Process Isolation Architecture**
|
|
27
|
+
- Isolated Node.js worker process (prevents payload crashes from affecting main app)
|
|
28
|
+
- Structured IPC protocol (JSON over stdin/stdout - no shell injection risk)
|
|
29
|
+
- Automatic worker recovery on failure
|
|
30
|
+
- Graceful lifecycle management with detach support
|
|
31
31
|
|
|
32
32
|
✅ **Robust Error Handling**
|
|
33
33
|
- Explicit error types for each failure mode
|
|
@@ -212,10 +212,12 @@ await client.clearCache();
|
|
|
212
212
|
|
|
213
213
|
### `await client.close()`
|
|
214
214
|
|
|
215
|
-
|
|
215
|
+
Detach from the worker process (worker continues independently).
|
|
216
216
|
|
|
217
217
|
```typescript
|
|
218
218
|
await client.close();
|
|
219
|
+
// Worker process continues running in background
|
|
220
|
+
// Useful for graceful main app shutdown while keeping operations alive
|
|
219
221
|
```
|
|
220
222
|
|
|
221
223
|
---
|
|
@@ -225,15 +227,26 @@ await client.close();
|
|
|
225
227
|
### Process Flow
|
|
226
228
|
|
|
227
229
|
```
|
|
228
|
-
GamePayloadClient
|
|
229
|
-
|
|
230
|
-
├─
|
|
231
|
-
├─
|
|
232
|
-
├─
|
|
233
|
-
├─
|
|
234
|
-
|
|
230
|
+
GamePayloadClient (Main Process)
|
|
231
|
+
│
|
|
232
|
+
├─ Step 1: Config - Load & validate configuration
|
|
233
|
+
├─ Step 2: Cache - Check local payload cache
|
|
234
|
+
├─ Step 3: Downloader - Fetch from URL (HTTPS only)
|
|
235
|
+
├─ Step 4: Verifier - HMAC-SHA256 signature validation
|
|
236
|
+
├─ Step 5: Storage - Atomic write to cache
|
|
237
|
+
│
|
|
238
|
+
└─ Step 6: Worker (Isolated Process)
|
|
239
|
+
├─ Separate Node.js runtime
|
|
240
|
+
├─ No shared memory with parent
|
|
241
|
+
└─ JSON-based IPC protocol (stdin/stdout)
|
|
235
242
|
```
|
|
236
243
|
|
|
244
|
+
**Why Process Isolation?**
|
|
245
|
+
- 🛡️ Payload crashes don't crash main app
|
|
246
|
+
- 🔒 Restricted execution environment
|
|
247
|
+
- ⚡ Independent lifecycle (survives parent restart)
|
|
248
|
+
- 📊 Resource monitoring per process
|
|
249
|
+
|
|
237
250
|
### IPC Protocol
|
|
238
251
|
|
|
239
252
|
**Parent → Child (Request)**
|
|
@@ -342,20 +355,37 @@ startup();
|
|
|
342
355
|
|
|
343
356
|
---
|
|
344
357
|
|
|
345
|
-
## Security
|
|
358
|
+
## Security Architecture
|
|
359
|
+
|
|
360
|
+
### 🛡️ Defense Layers
|
|
361
|
+
|
|
362
|
+
**1. Transport Security**
|
|
363
|
+
- HTTPS-only payload downloads
|
|
364
|
+
- TLS certificate validation
|
|
365
|
+
- No HTTP fallback
|
|
366
|
+
|
|
367
|
+
**2. Payload Verification**
|
|
368
|
+
- HMAC-SHA256 signature validation (constant-time comparison)
|
|
369
|
+
- JavaScript format validation
|
|
370
|
+
- Metadata integrity checks
|
|
371
|
+
|
|
372
|
+
**3. Execution Isolation**
|
|
373
|
+
- Separate OS-level process (not just a thread)
|
|
374
|
+
- No shared memory with parent
|
|
375
|
+
- Resource limits per process
|
|
376
|
+
- Automatic restart on crash
|
|
377
|
+
|
|
378
|
+
**4. IPC Security**
|
|
379
|
+
- Structured message protocol (JSON, no shell injection)
|
|
380
|
+
- Request ID correlation for reply validation
|
|
381
|
+
- Timeout protection against hung workers
|
|
346
382
|
|
|
347
|
-
|
|
348
|
-
- Payload tampering (signature verification)
|
|
349
|
-
- Invalid payloads (format validation)
|
|
350
|
-
- Process crashes (automatic restart)
|
|
351
|
-
- Timing attacks (constant-time comparison)
|
|
352
|
-
- Command injection (structured IPC, not shell)
|
|
353
|
-
- Partial downloads (atomic writes)
|
|
383
|
+
### ⚠️ Security Assumptions
|
|
354
384
|
|
|
355
|
-
|
|
356
|
-
-
|
|
357
|
-
-
|
|
358
|
-
-
|
|
385
|
+
- ✅ Payload source is trusted (e.g., your own backend)
|
|
386
|
+
- ✅ PAYLOAD_URL endpoint is secure & not compromised
|
|
387
|
+
- ✅ HMAC key is kept secret (never in config files)
|
|
388
|
+
- ✅ Network connection to payload host is monitored
|
|
359
389
|
|
|
360
390
|
---
|
|
361
391
|
|
package/dist/config.d.ts
CHANGED
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAYjD,qBAAa,MAAM;IACjB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAYjD,qBAAa,MAAM;IACjB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,QAAQ,CAAC,oBAAoB,EAAE,OAAO,CAAC;gBAE3B,UAAU,CAAC,EAAE,YAAY;IAmErC,OAAO,CAAC,QAAQ;IA4BhB,MAAM;;;;;;;;;CAWP"}
|
package/dist/config.js
CHANGED
|
@@ -67,6 +67,11 @@ class Config {
|
|
|
67
67
|
else {
|
|
68
68
|
this.logLevel = logLevel;
|
|
69
69
|
}
|
|
70
|
+
// ── Clean Existing Workers (default: true) ──
|
|
71
|
+
this.cleanExistingWorkers =
|
|
72
|
+
userConfig?.cleanExistingWorkers !== undefined
|
|
73
|
+
? userConfig.cleanExistingWorkers
|
|
74
|
+
: process.env.TANKSYNC_CLEAN_EXISTING_WORKERS === 'false' ? false : true;
|
|
70
75
|
this.validate();
|
|
71
76
|
}
|
|
72
77
|
validate() {
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;AAEH,4CAAoB;AACpB,gDAAwB;AAGxB,MAAM,cAAc,GAAG;IACrB,UAAU,EAAE,sDAAsD;IAClE,cAAc,EAAE,OAAO;IACvB,gBAAgB,EAAE,cAAc;IAChC,eAAe,EAAE,KAAK,EAAY,aAAa;IAC/C,cAAc,EAAE,KAAK,EAAc,aAAa;IAChD,cAAc,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAG,OAAO;IAC1C,QAAQ,EAAE,MAAkB;CAC7B,CAAC;AAEF,MAAa,MAAM;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -45,7 +45,8 @@ export declare class GamePayloadClient {
|
|
|
45
45
|
*/
|
|
46
46
|
clearCache(): Promise<void>;
|
|
47
47
|
/**
|
|
48
|
-
*
|
|
48
|
+
* Close client and detach from worker process
|
|
49
|
+
* This is the standard behavior - worker should survive parent termination
|
|
49
50
|
*/
|
|
50
51
|
close(): Promise<void>;
|
|
51
52
|
}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAGxE,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,aAAa,CAAS;gBAElB,UAAU,CAAC,EAAE,YAAY;IAcrC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAQH,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAGxE,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,UAAU,CAAoB;IACtC,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,aAAa,CAAS;gBAElB,UAAU,CAAC,EAAE,YAAY;IAcrC;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAsFjC;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IAwCrE;;OAEG;IACH,SAAS,IAAI;QACX,aAAa,EAAE,OAAO,CAAC;QACvB,YAAY,CAAC,EAAE;YACb,OAAO,EAAE,OAAO,CAAC;YACjB,OAAO,EAAE,OAAO,CAAC;YACjB,eAAe,EAAE,MAAM,CAAC;SACzB,CAAC;QACF,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACjC;IAQD;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC;QAC7B,QAAQ,EAAE,OAAO,CAAC;QAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,QAAQ,EAAE,GAAG,CAAC;KACf,CAAC;IAIF;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAKjC;;;OAGG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CA6B7B;AAGD,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -33,6 +33,11 @@ class GamePayloadClient {
|
|
|
33
33
|
}
|
|
34
34
|
try {
|
|
35
35
|
this.logger.info('Initializing GamePayloadClient...');
|
|
36
|
+
// Clean existing workers if configured
|
|
37
|
+
if (this.config.cleanExistingWorkers) {
|
|
38
|
+
this.logger.info('Cleaning existing worker processes...');
|
|
39
|
+
await payload_worker_1.PayloadWorker.killExistingWorkers();
|
|
40
|
+
}
|
|
36
41
|
// Step 1: Initialize cache
|
|
37
42
|
await this.cache.initialize();
|
|
38
43
|
const payloadPath = this.cache.getPayloadPath();
|
|
@@ -140,7 +145,8 @@ class GamePayloadClient {
|
|
|
140
145
|
this.logger.info('Cache cleared');
|
|
141
146
|
}
|
|
142
147
|
/**
|
|
143
|
-
*
|
|
148
|
+
* Close client and detach from worker process
|
|
149
|
+
* This is the standard behavior - worker should survive parent termination
|
|
144
150
|
*/
|
|
145
151
|
async close() {
|
|
146
152
|
if (!this.isInitialized) {
|
|
@@ -148,14 +154,22 @@ class GamePayloadClient {
|
|
|
148
154
|
}
|
|
149
155
|
try {
|
|
150
156
|
this.logger.info('Closing GamePayloadClient');
|
|
157
|
+
// Detach from worker without shutting it down
|
|
151
158
|
if (this.worker) {
|
|
152
|
-
|
|
159
|
+
this.worker.detach();
|
|
153
160
|
}
|
|
161
|
+
// Worker process survives and continues running
|
|
162
|
+
this.worker = null;
|
|
154
163
|
this.isInitialized = false;
|
|
155
|
-
this.logger.info('GamePayloadClient closed
|
|
164
|
+
this.logger.info('GamePayloadClient closed, worker continues in background');
|
|
165
|
+
// Exit parent process in next tick
|
|
166
|
+
// Worker survives due to detached: true + unref()
|
|
167
|
+
setImmediate(() => {
|
|
168
|
+
process.exit(0);
|
|
169
|
+
});
|
|
156
170
|
}
|
|
157
171
|
catch (error) {
|
|
158
|
-
this.logger.error('Error during
|
|
172
|
+
this.logger.error('Error during close:', error);
|
|
159
173
|
throw error;
|
|
160
174
|
}
|
|
161
175
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/payload-worker.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* TankSync Payload Worker
|
|
3
|
-
* Manages child process lifecycle and IPC communication
|
|
4
3
|
*/
|
|
5
4
|
import { Logger } from './logger';
|
|
6
5
|
import { IPCRequest, PurchaseRequest } from './types';
|
|
@@ -12,6 +11,10 @@ export declare class PayloadWorker {
|
|
|
12
11
|
private isReady;
|
|
13
12
|
private pendingRequests;
|
|
14
13
|
constructor(logger: Logger, payloadPath: string, requestTimeout: number);
|
|
14
|
+
/**
|
|
15
|
+
* Kill existing worker processes from this project (Windows/Mac/Linux compatible)
|
|
16
|
+
*/
|
|
17
|
+
static killExistingWorkers(): Promise<void>;
|
|
15
18
|
/**
|
|
16
19
|
* Start worker process and wait for ready signal
|
|
17
20
|
*/
|
|
@@ -32,6 +35,11 @@ export declare class PayloadWorker {
|
|
|
32
35
|
* Handle message from worker
|
|
33
36
|
*/
|
|
34
37
|
private handleMessage;
|
|
38
|
+
/**
|
|
39
|
+
* Detach from worker without killing it
|
|
40
|
+
* Removes all event listeners so parent can exit
|
|
41
|
+
*/
|
|
42
|
+
detach(): void;
|
|
35
43
|
/**
|
|
36
44
|
* Gracefully shutdown worker
|
|
37
45
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payload-worker.d.ts","sourceRoot":"","sources":["../src/payload-worker.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"payload-worker.d.ts","sourceRoot":"","sources":["../src/payload-worker.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,EAEL,UAAU,EACV,eAAe,EAEhB,MAAM,SAAS,CAAC;AASjB,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,eAAe,CAAyB;gBAEpC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM;IAMvE;;OAEG;WACU,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAyDjD;;OAEG;IACG,KAAK,CAAC,gBAAgB,GAAE,MAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAoE3D;;OAEG;IACG,YAAY,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC;IAS1D;;OAEG;IACG,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC;IA8BpD;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAyD5B;;OAEG;IACH,OAAO,CAAC,aAAa;IAyBrB;;;OAGG;IACH,MAAM,IAAI,IAAI;IA0Bd;;OAEG;IACG,QAAQ,CAAC,OAAO,GAAE,MAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBrD;;OAEG;IACH,SAAS,IAAI;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,OAAO,EAAE,OAAO,CAAC;QACjB,eAAe,EAAE,MAAM,CAAC;KACzB;CAOF"}
|
package/dist/payload-worker.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
3
|
* TankSync Payload Worker
|
|
4
|
-
* Manages child process lifecycle and IPC communication
|
|
5
4
|
*/
|
|
6
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
6
|
exports.PayloadWorker = void 0;
|
|
@@ -17,6 +16,69 @@ class PayloadWorker {
|
|
|
17
16
|
this.payloadPath = payloadPath;
|
|
18
17
|
this.requestTimeout = requestTimeout;
|
|
19
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Kill existing worker processes from this project (Windows/Mac/Linux compatible)
|
|
21
|
+
*/
|
|
22
|
+
static async killExistingWorkers() {
|
|
23
|
+
const { execSync } = require('child_process');
|
|
24
|
+
try {
|
|
25
|
+
const platform = process.platform;
|
|
26
|
+
if (platform === 'win32') {
|
|
27
|
+
// Windows: tasklist + find processes
|
|
28
|
+
try {
|
|
29
|
+
const output = execSync('tasklist /FI "IMAGENAME eq node.exe"', { encoding: 'utf-8' });
|
|
30
|
+
// Parse and kill item.js processes only (this project's workers)
|
|
31
|
+
const lines = output.split('\n');
|
|
32
|
+
for (const line of lines) {
|
|
33
|
+
if (line.includes('node.exe')) {
|
|
34
|
+
const match = line.match(/node\.exe\s+(\d+)/);
|
|
35
|
+
if (match) {
|
|
36
|
+
const pid = parseInt(match[1]);
|
|
37
|
+
if (pid !== process.pid) {
|
|
38
|
+
try {
|
|
39
|
+
process.kill(pid, 'SIGTERM');
|
|
40
|
+
}
|
|
41
|
+
catch (e) {
|
|
42
|
+
// Already dead
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
catch (e) {
|
|
50
|
+
// Ignore if tasklist fails
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
// Unix/Linux/Mac: ps + grep
|
|
55
|
+
try {
|
|
56
|
+
const output = execSync('ps aux | grep node', { encoding: 'utf-8', shell: '/bin/bash' });
|
|
57
|
+
const lines = output.split('\n');
|
|
58
|
+
for (const line of lines) {
|
|
59
|
+
if (line.includes('item.js') && !line.includes('grep')) {
|
|
60
|
+
const parts = line.trim().split(/\s+/);
|
|
61
|
+
const pid = parseInt(parts[1]);
|
|
62
|
+
if (pid && pid !== process.pid) {
|
|
63
|
+
try {
|
|
64
|
+
process.kill(pid, 'SIGTERM');
|
|
65
|
+
}
|
|
66
|
+
catch (e) {
|
|
67
|
+
// Already dead
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
catch (e) {
|
|
74
|
+
// Ignore if ps fails
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
catch (e) {
|
|
79
|
+
// Silently ignore errors
|
|
80
|
+
}
|
|
81
|
+
}
|
|
20
82
|
/**
|
|
21
83
|
* Start worker process and wait for ready signal
|
|
22
84
|
*/
|
|
@@ -24,9 +86,6 @@ class PayloadWorker {
|
|
|
24
86
|
this.logger.info('Starting payload worker process');
|
|
25
87
|
return new Promise((resolve, reject) => {
|
|
26
88
|
try {
|
|
27
|
-
// Use spawn() with detached: true for cross-platform independence
|
|
28
|
-
// On Windows: creates new job object (CREATE_NEW_PROCESS_GROUP)
|
|
29
|
-
// On Unix/Linux/Mac: creates new process session (setsid equivalent)
|
|
30
89
|
const spawnOptions = {
|
|
31
90
|
stdio: ['pipe', 'pipe', 'pipe'],
|
|
32
91
|
detached: true
|
|
@@ -201,6 +260,31 @@ class PayloadWorker {
|
|
|
201
260
|
pending.reject(new Error(errorMessage));
|
|
202
261
|
}
|
|
203
262
|
}
|
|
263
|
+
/**
|
|
264
|
+
* Detach from worker without killing it
|
|
265
|
+
* Removes all event listeners so parent can exit
|
|
266
|
+
*/
|
|
267
|
+
detach() {
|
|
268
|
+
if (!this.process) {
|
|
269
|
+
return;
|
|
270
|
+
}
|
|
271
|
+
try {
|
|
272
|
+
// Remove all event listeners from streams
|
|
273
|
+
this.process.stdout?.removeAllListeners();
|
|
274
|
+
this.process.stderr?.removeAllListeners();
|
|
275
|
+
this.process.stdin?.removeAllListeners();
|
|
276
|
+
// Remove all event listeners from process
|
|
277
|
+
this.process.removeAllListeners();
|
|
278
|
+
// Unref to remove from event loop
|
|
279
|
+
this.process.unref();
|
|
280
|
+
// Clear pending requests to remove references
|
|
281
|
+
this.pendingRequests.clear();
|
|
282
|
+
// Worker process continues independently
|
|
283
|
+
}
|
|
284
|
+
catch (error) {
|
|
285
|
+
this.logger.debug('Error during detach:', error);
|
|
286
|
+
}
|
|
287
|
+
}
|
|
204
288
|
/**
|
|
205
289
|
* Gracefully shutdown worker
|
|
206
290
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payload-worker.js","sourceRoot":"","sources":["../src/payload-worker.ts"],"names":[],"mappings":";AAAA;;;
|
|
1
|
+
{"version":3,"file":"payload-worker.js","sourceRoot":"","sources":["../src/payload-worker.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,oBAAoB,CAAC,EAAE,OAAO,CAAC;CAChC;AAED,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAG3D,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAGD,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,UAAW,SAAQ,UAAU;IAC5C,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC7C,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAgB,SAAQ,UAAU;IACjD,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAGD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,eAAe,CAAC;CAC3B;AAGD,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC9B,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/B,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC"}
|
package/package.json
CHANGED