@comake/skl-js-engine 1.1.6 → 1.2.0

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.
File without changes
@@ -0,0 +1,641 @@
1
+ "use strict";
2
+ // /* eslint-disable indent */
3
+ // /* eslint-disable no-void */
4
+ // /* eslint-disable @typescript-eslint/no-use-before-define */
5
+ // /* eslint-disable no-inline-comments */
6
+ // /* eslint-disable line-comment-position */
7
+ // /* eslint-disable @typescript-eslint/explicit-function-return-type */
8
+ // import type { ChildProcess } from 'child_process';
9
+ // import { EventEmitter } from 'node:events';
10
+ // import type { Readable, Writable } from 'stream';
11
+ // import { Logger } from '../../logger';
12
+ // import { DEFAULT_EXECUTION_OPTIONS, EXECUTION_CONSTANTS } from '../constants';
13
+ // import { spawnDenoProcess } from '../denoUtils';
14
+ // import { ProcessSpawnError } from '../errors';
15
+ // import type { ClientTransport } from '../jsonRpc/JsonRpcClient';
16
+ // import { JsonRpcClient } from '../jsonRpc/JsonRpcClient';
17
+ // import { JsonRpcServer } from '../jsonRpc/JsonRpcServer';
18
+ // import type {
19
+ // LogNotification,
20
+ // StatusRequest,
21
+ // StatusResponse
22
+ // } from '../jsonRpc/types';
23
+ // import {
24
+ // STANDARD_METHODS
25
+ // } from '../jsonRpc/types';
26
+ // import { buildDenoPermissions, validatePermissionConfig } from '../PermissionBuilder';
27
+ // import type { ExecutionOptions, PermissionConfig } from '../types';
28
+ // import { BaseTransport } from './base/BaseTransport';
29
+ // import type { Transport, TransportConfig } from './Transport';
30
+ // import { TransportStatus } from './Transport';
31
+ // /**
32
+ // * StdioTransport implementation using stdin/stdout for JSON-RPC communication
33
+ // * This is the parent-side transport that manages a child process
34
+ // */
35
+ // export class StdioTransport extends BaseTransport {
36
+ // private childProcess?: ChildProcess;
37
+ // private readonly server: JsonRpcServer;
38
+ // private readonly client: JsonRpcClient;
39
+ // private readonly clientTransport: StdioClientTransport;
40
+ // private readonly executorScriptPath: string;
41
+ // public constructor(executorScriptPath: string, server: JsonRpcServer) {
42
+ // super();
43
+ // this.executorScriptPath = executorScriptPath;
44
+ // this.server = server;
45
+ // this.client = new JsonRpcClient();
46
+ // this.clientTransport = new StdioClientTransport();
47
+ // this.setupServerMethods();
48
+ // this.setupEventHandlers();
49
+ // }
50
+ // /**
51
+ // * Initialize the transport connection
52
+ // */
53
+ // public async initialize(config?: TransportConfig, executionOptions?: ExecutionOptions): Promise<void> {
54
+ // if (this.status !== TransportStatus.disconnected) {
55
+ // throw new Error(`Cannot initialize transport in ${this.status} state`);
56
+ // }
57
+ // try {
58
+ // this.setStatus(TransportStatus.connecting);
59
+ // const normalizedOptions = this.normalizeOptions(executionOptions);
60
+ // const permissionConfig = this.extractPermissionConfig(normalizedOptions);
61
+ // // Validate permissions before proceeding
62
+ // validatePermissionConfig(permissionConfig);
63
+ // const permissions = buildDenoPermissions(permissionConfig);
64
+ // const mergedPermissions: string[] = [ ...EXECUTION_CONSTANTS.denoFlags ];
65
+ // permissions.forEach(permission => {
66
+ // if (!mergedPermissions.includes(permission)) {
67
+ // mergedPermissions.push(permission);
68
+ // }
69
+ // });
70
+ // // Build command arguments (will be updated when we have permission support)
71
+ // const commandArgs = [ ...mergedPermissions, this.executorScriptPath ];
72
+ // // Spawn the Deno process
73
+ // this.childProcess = spawnDenoProcess(commandArgs);
74
+ // // Set up client transport
75
+ // this.clientTransport.setProcess(this.childProcess.stdout!, this.childProcess.stdin!);
76
+ // this.client.setTransport(this.clientTransport);
77
+ // // Set up process communication
78
+ // this.setupProcessCommunication();
79
+ // // Wait for process to be ready
80
+ // await this.waitForReady(config?.timeout ?? 5000);
81
+ // this.setStatus(TransportStatus.connected);
82
+ // } catch (error: unknown) {
83
+ // this.setStatus(TransportStatus.error);
84
+ // throw error;
85
+ // }
86
+ // }
87
+ // /**
88
+ // * Normalizes execution options with defaults
89
+ // * @param options - Raw execution options
90
+ // * @returns Normalized options with all required fields
91
+ // */
92
+ // private normalizeOptions(options?: ExecutionOptions): Required<ExecutionOptions> {
93
+ // return {
94
+ // timeout: options?.timeout ?? DEFAULT_EXECUTION_OPTIONS.timeout,
95
+ // functionName: options?.functionName ?? DEFAULT_EXECUTION_OPTIONS.functionName,
96
+ // allowNetwork: options?.allowNetwork ?? DEFAULT_EXECUTION_OPTIONS.allowNetwork,
97
+ // allowedDomains: options?.allowedDomains ?? [ ...DEFAULT_EXECUTION_OPTIONS.allowedDomains ],
98
+ // allowEnv: options?.allowEnv ?? DEFAULT_EXECUTION_OPTIONS.allowEnv,
99
+ // allowRead: options?.allowRead ?? DEFAULT_EXECUTION_OPTIONS.allowRead,
100
+ // debugMode: options?.debugMode ?? DEFAULT_EXECUTION_OPTIONS.debugMode,
101
+ // retries: options?.retries ?? DEFAULT_EXECUTION_OPTIONS.retries
102
+ // };
103
+ // }
104
+ // /**
105
+ // * Extracts permission configuration from execution options
106
+ // * @param options - Normalized execution options
107
+ // * @returns Permission configuration object
108
+ // */
109
+ // private extractPermissionConfig(options: Required<ExecutionOptions>): PermissionConfig {
110
+ // return {
111
+ // allowNetwork: options.allowNetwork,
112
+ // allowedDomains: options.allowedDomains,
113
+ // allowEnv: options.allowEnv,
114
+ // allowRead: options.allowRead
115
+ // };
116
+ // }
117
+ // /**
118
+ // * Send a message through the transport
119
+ // */
120
+ // public async send<TRequest, TResponse>(message: TRequest): Promise<TResponse> {
121
+ // if (!this.isReady()) {
122
+ // throw new Error('Transport is not ready');
123
+ // }
124
+ // // Expect message to have method and params for direct RPC calls
125
+ // const rpcMessage = message as any;
126
+ // if (rpcMessage.method) {
127
+ // return this.client.request(rpcMessage.method, rpcMessage.params);
128
+ // }
129
+ // throw new Error('Message must have a method property for RPC calls');
130
+ // }
131
+ // /**
132
+ // * Make a direct RPC request to the child process
133
+ // */
134
+ // public async request<TParams = any, TResult = any>(
135
+ // method: string,
136
+ // params?: TParams,
137
+ // options?: { timeout?: number; retries?: number }
138
+ // ): Promise<TResult> {
139
+ // if (!this.isReady()) {
140
+ // throw new Error('Transport is not ready');
141
+ // }
142
+ // return this.client.request<TParams, TResult>(method, params, options);
143
+ // }
144
+ // /**
145
+ // * Send a notification to the child process (no response expected)
146
+ // */
147
+ // public async notify<TParams = any>(method: string, params?: TParams): Promise<void> {
148
+ // if (!this.isReady()) {
149
+ // throw new Error('Transport is not ready');
150
+ // }
151
+ // return this.client.notify(method, params);
152
+ // }
153
+ // /**
154
+ // * Close the transport connection
155
+ // */
156
+ // public async close(): Promise<void> {
157
+ // if (this.status === TransportStatus.disconnected) {
158
+ // return;
159
+ // }
160
+ // this.setStatus(TransportStatus.disconnected);
161
+ // // Close JSON-RPC client
162
+ // await this.client.close();
163
+ // // Close child process
164
+ // if (this.childProcess && !this.childProcess.killed) {
165
+ // this.childProcess.kill(EXECUTION_CONSTANTS.processSignals.term);
166
+ // // Wait for process to exit gracefully
167
+ // await new Promise<void>(resolve => {
168
+ // const timeout = setTimeout(() => {
169
+ // if (this.childProcess && !this.childProcess.killed) {
170
+ // this.childProcess.kill('SIGKILL');
171
+ // }
172
+ // resolve();
173
+ // }, 3000);
174
+ // this.childProcess!.on('exit', () => {
175
+ // clearTimeout(timeout);
176
+ // resolve();
177
+ // });
178
+ // });
179
+ // }
180
+ // this.childProcess = undefined;
181
+ // }
182
+ // /**
183
+ // * Check if the transport is ready for communication
184
+ // */
185
+ // public isReady(): boolean {
186
+ // return this.status === TransportStatus.connected && this.childProcess !== undefined && !this.childProcess.killed;
187
+ // }
188
+ // /**
189
+ // * Set up server methods for handling incoming requests from Deno process
190
+ // */
191
+ // private setupServerMethods(): void {
192
+ // // Handle status requests
193
+ // this.server.registerMethod<StatusRequest, StatusResponse>(STANDARD_METHODS.getStatus, async() => ({
194
+ // status: 'ready',
195
+ // uptime: process.uptime() * 1000,
196
+ // memoryUsage: {
197
+ // used: process.memoryUsage().heapUsed,
198
+ // total: process.memoryUsage().heapTotal
199
+ // }
200
+ // }));
201
+ // // Handle ping requests
202
+ // this.server.registerMethod(STANDARD_METHODS.ping, async() => 'pong');
203
+ // // Handle log notifications
204
+ // this.server.registerMethod<LogNotification, void>(STANDARD_METHODS.log, async params => {
205
+ // if (this.messageHandler) {
206
+ // await this.messageHandler(params);
207
+ // }
208
+ // });
209
+ // }
210
+ // /**
211
+ // * Set up event handlers
212
+ // */
213
+ // private setupEventHandlers(): void {
214
+ // this.server.on('error', error => {
215
+ // this.handleError(error, 'Server error');
216
+ // });
217
+ // this.client.on('error', error => {
218
+ // this.handleError(error, 'Client error');
219
+ // });
220
+ // // Add fallback error handler to prevent process crashes
221
+ // this.on('error', (error: Error) => {
222
+ // // If no one else handles the error, at least log it instead of crashing
223
+ // if (this.listenerCount('error') === 1) {
224
+ // this.logger.error('Unhandled transport error', error);
225
+ // }
226
+ // });
227
+ // }
228
+ // /**
229
+ // * Set up process communication handlers
230
+ // */
231
+ // private setupProcessCommunication(): void {
232
+ // if (!this.childProcess) {
233
+ // throw new Error('Child process not available');
234
+ // }
235
+ // let buffer = '';
236
+ // // Handle stdout data (responses from Deno process)
237
+ // this.childProcess.stdout?.on('data', (data: Buffer) => {
238
+ // buffer += data.toString();
239
+ // // Process complete JSON messages
240
+ // const lines = buffer.split('\n');
241
+ // buffer = lines.pop() ?? ''; // Keep incomplete line in buffer
242
+ // for (const line of lines) {
243
+ // if (line.trim()) {
244
+ // this.logger.log('Received message', line.trim());
245
+ // this.handleIncomingMessage(line.trim()).catch(error => {
246
+ // this.emit('error', error);
247
+ // });
248
+ // }
249
+ // }
250
+ // });
251
+ // // Handle stderr data (log messages and errors from Deno process)
252
+ // this.childProcess.stderr?.on('data', (data: Buffer) => {
253
+ // const stderrOutput = data.toString().trim();
254
+ // // Only treat messages starting with "ERROR:" as actual errors
255
+ // if (stderrOutput.startsWith('ERROR:')) {
256
+ // this.emit('error', new Error(`Deno process error: ${stderrOutput}`));
257
+ // } else {
258
+ // // Log normal stderr output as debug information
259
+ // this.logger.log('Child process log', stderrOutput);
260
+ // }
261
+ // });
262
+ // // Handle process exit
263
+ // this.childProcess.on('exit', (code, signal) => {
264
+ // if (this.status === TransportStatus.connected) {
265
+ // const error = new Error(`Process exited unexpectedly (code: ${code}, signal: ${signal})`);
266
+ // this.setStatus(TransportStatus.error);
267
+ // this.emit('error', error);
268
+ // }
269
+ // });
270
+ // // Handle process errors
271
+ // this.childProcess.on('error', error => {
272
+ // this.setStatus(TransportStatus.error);
273
+ // this.emit('error', new ProcessSpawnError(error));
274
+ // });
275
+ // }
276
+ // /**
277
+ // * Handle incoming message from Deno process with bidirectional routing
278
+ // */
279
+ // private async handleIncomingMessage(messageData: string): Promise<void> {
280
+ // try {
281
+ // const message = this.safeParse(messageData);
282
+ // if (!message) {
283
+ // return;
284
+ // }
285
+ // // Check if this is a response to our request (has 'result' or 'error' and 'id')
286
+ // if (this.isResponse(message)) {
287
+ // // This is a response to a request we made - route to client
288
+ // this.logger.log('Routing response to parent client', { id: message.id });
289
+ // await this.client.handleIncomingMessage(messageData);
290
+ // } else {
291
+ // // This is a request or notification for us - route to server
292
+ // this.logger.log('Routing request to parent server', { method: message.method, id: message.id });
293
+ // const response = await this.server.processMessage(messageData);
294
+ // this.logger.log('Sending response to parent process', response);
295
+ // // Only send response if there is one (requests get responses, notifications don't)
296
+ // if (response && this.childProcess?.stdin) {
297
+ // const responseData = `${JSON.stringify(response)}\n`;
298
+ // this.childProcess.stdin.write(responseData);
299
+ // }
300
+ // }
301
+ // } catch (error: unknown) {
302
+ // this.emit('error', new Error(`Failed to handle incoming message: ${(error as Error).message}`));
303
+ // }
304
+ // }
305
+ // private safeParse(message: string): any {
306
+ // try {
307
+ // return JSON.parse(message);
308
+ // } catch {
309
+ // return undefined;
310
+ // }
311
+ // }
312
+ // /**
313
+ // * Check if a message is a JSON-RPC response
314
+ // */
315
+ // private isResponse(message: any): boolean {
316
+ // return message &&
317
+ // typeof message === 'object' &&
318
+ // ('result' in message || 'error' in message) &&
319
+ // 'id' in message &&
320
+ // !('method' in message);
321
+ // }
322
+ // /**
323
+ // * Wait for the process to be ready
324
+ // */
325
+ // private async waitForReady(timeout: number): Promise<void> {
326
+ // return new Promise((resolve, reject) => {
327
+ // const timeoutId = setTimeout(() => {
328
+ // reject(new Error(`Transport initialization timed out after ${timeout}ms`));
329
+ // }, timeout);
330
+ // // Try to ping the process to check if it's ready
331
+ // const checkReady = async(): Promise<void> => {
332
+ // try {
333
+ // await this.client.request(STANDARD_METHODS.ping, undefined, { timeout: 1000 });
334
+ // clearTimeout(timeoutId);
335
+ // resolve();
336
+ // } catch {
337
+ // // Process not ready yet, try again
338
+ // setTimeout(checkReady, 100);
339
+ // }
340
+ // };
341
+ // // Start checking after a short delay to let process start
342
+ // setTimeout(checkReady, 100);
343
+ // });
344
+ // }
345
+ // }
346
+ // /**
347
+ // * Client transport implementation for stdio communication
348
+ // */
349
+ // export class StdioClientTransport implements ClientTransport {
350
+ // private stdout?: Readable;
351
+ // private stdin?: Writable;
352
+ // private messageHandler?: (message: string) => void;
353
+ // private name?: string;
354
+ // private readonly logger = Logger.getInstance();
355
+ // public setProcess(stdout: Readable, stdin: Writable): void {
356
+ // this.stdout = stdout;
357
+ // this.stdin = stdin;
358
+ // }
359
+ // public setName(name: string): void {
360
+ // this.name = name;
361
+ // this.logger.setMetadata({ name, transport: 'StdioClientTransport' });
362
+ // }
363
+ // public async send(message: string): Promise<void> {
364
+ // if (!this.stdin) {
365
+ // throw new Error('Process stdin not available');
366
+ // }
367
+ // this.logger.log('Sending message', message);
368
+ // this.stdin.write(`${message}\n`);
369
+ // }
370
+ // public onMessage(handler: (message: string) => void): void {
371
+ // this.messageHandler = handler;
372
+ // // Note: Message handling is done in the main StdioTransport class
373
+ // // This is here for interface compliance
374
+ // }
375
+ // public async close(): Promise<void> {
376
+ // this.stdout = undefined;
377
+ // this.stdin = undefined;
378
+ // this.messageHandler = undefined;
379
+ // }
380
+ // }
381
+ // /**
382
+ // * Bidirectional StdioTransport for child processes
383
+ // * This class handles both server (receiving requests) and client (sending requests) functionality
384
+ // * over a single stdio channel with proper message routing.
385
+ // *
386
+ // * Usage in child process:
387
+ // * ```typescript
388
+ // * const transport = new BidirectionalStdioTransport();
389
+ // *
390
+ // * // Register methods that parent can call
391
+ // * transport.registerMethod('ping', async () => 'pong');
392
+ // *
393
+ // * // Make requests to parent
394
+ // * const result = await transport.request('getTime');
395
+ // * ```
396
+ // */
397
+ // export class BidirectionalStdioTransport extends EventEmitter {
398
+ // private readonly server: JsonRpcServer;
399
+ // private readonly client: JsonRpcClient;
400
+ // private readonly logger = Logger.getInstance();
401
+ // private buffer = '';
402
+ // private name?: string;
403
+ // private initialized = false;
404
+ // public constructor() {
405
+ // super();
406
+ // this.server = new JsonRpcServer();
407
+ // this.client = new JsonRpcClient();
408
+ // // Set up the client transport that routes through our stdio
409
+ // const clientTransport: ClientTransport = {
410
+ // send: async(message: string): Promise<void> => {
411
+ // this.sendMessage(message);
412
+ // },
413
+ // onMessage(): void {
414
+ // // The message routing will handle client responses automatically
415
+ // },
416
+ // async close(): Promise<void> {
417
+ // // Nothing to close for stdio
418
+ // }
419
+ // };
420
+ // this.client.setTransport(clientTransport);
421
+ // this.setupEventHandlers();
422
+ // }
423
+ // /**
424
+ // * Set a name for this transport (used in logging)
425
+ // */
426
+ // public setName(name: string): void {
427
+ // this.name = name;
428
+ // this.logger.setMetadata({ name, transport: 'BidirectionalStdioTransport' });
429
+ // }
430
+ // /**
431
+ // * Initialize the bidirectional transport
432
+ // * This should be called once after setting up all methods
433
+ // */
434
+ // public async initialize(): Promise<void> {
435
+ // if (this.initialized) {
436
+ // throw new Error('Transport already initialized');
437
+ // }
438
+ // this.initialized = true;
439
+ // this.setupStdioCommunication();
440
+ // // Log to stderr to avoid contaminating stdout
441
+ // this.logger.log('Transport initialized');
442
+ // }
443
+ // /**
444
+ // * Register a method that the parent can call
445
+ // * @param method - Method name
446
+ // * @param handler - Method handler function
447
+ // */
448
+ // public registerMethod<TParams = any, TResult = any>(
449
+ // method: string,
450
+ // handler: (params: TParams) => Promise<TResult> | TResult
451
+ // ): void {
452
+ // this.server.registerMethod(method, handler);
453
+ // }
454
+ // /**
455
+ // * Send a request to the parent process
456
+ // * @param method - Method name
457
+ // * @param params - Method parameters
458
+ // * @param options - Request options
459
+ // * @returns Promise resolving to the response
460
+ // */
461
+ // public async request<TParams = any, TResult = any>(
462
+ // method: string,
463
+ // params?: TParams,
464
+ // options?: { timeout?: number }
465
+ // ): Promise<TResult> {
466
+ // if (!this.initialized) {
467
+ // throw new Error('Transport not initialized. Call initialize() first.');
468
+ // }
469
+ // return this.client.request<TParams, TResult>(method, params, options);
470
+ // }
471
+ // /**
472
+ // * Send a notification to the parent process (no response expected)
473
+ // * @param method - Method name
474
+ // * @param params - Method parameters
475
+ // */
476
+ // public async notify<TParams = any>(method: string, params?: TParams): Promise<void> {
477
+ // if (!this.initialized) {
478
+ // throw new Error('Transport not initialized. Call initialize() first.');
479
+ // }
480
+ // return this.client.notify(method, params);
481
+ // }
482
+ // /**
483
+ // * Get transport statistics
484
+ // */
485
+ // public getStats(): {
486
+ // serverMethods: number;
487
+ // pendingRequests: number;
488
+ // initialized: boolean;
489
+ // } {
490
+ // return {
491
+ // serverMethods: 0, // Server methods count not accessible due to private property
492
+ // pendingRequests: this.client.getStats().pendingRequests,
493
+ // initialized: this.initialized
494
+ // };
495
+ // }
496
+ // /**
497
+ // * Close the transport and cleanup resources
498
+ // */
499
+ // public async close(): Promise<void> {
500
+ // await this.client.close();
501
+ // this.initialized = false;
502
+ // this.removeAllListeners();
503
+ // }
504
+ // /**
505
+ // * Set up stdio communication handlers
506
+ // */
507
+ // private setupStdioCommunication(): void {
508
+ // // Handle incoming data from parent
509
+ // process.stdin.on('data', async(data: Buffer) => {
510
+ // this.buffer += data.toString();
511
+ // // Process complete JSON messages
512
+ // const lines = this.buffer.split('\n');
513
+ // this.buffer = lines.pop() ?? ''; // Keep incomplete line in buffer
514
+ // for (const line of lines) {
515
+ // if (line.trim()) {
516
+ // await this.handleIncomingMessage(line.trim());
517
+ // }
518
+ // }
519
+ // });
520
+ // // Handle process termination gracefully
521
+ // process.on('SIGTERM', () => {
522
+ // this.close().finally(() => process.exit(0));
523
+ // });
524
+ // process.on('SIGINT', () => {
525
+ // this.close().finally(() => process.exit(0));
526
+ // });
527
+ // }
528
+ // /**
529
+ // * Handle incoming message and route to appropriate handler
530
+ // */
531
+ // private async handleIncomingMessage(messageData: string): Promise<void> {
532
+ // try {
533
+ // const message = this.safeParse(messageData);
534
+ // if (!message) {
535
+ // return;
536
+ // }
537
+ // // Check if this is a response to our request (has 'result' or 'error' and 'id')
538
+ // if (this.isResponse(message)) {
539
+ // // This is a response to a request we made - route to client
540
+ // this.logger.log(`Routing response to client: ${message.id}`);
541
+ // // Manually trigger client's handleIncomingMessage
542
+ // await this.client.handleIncomingMessage(messageData);
543
+ // } else {
544
+ // // This is a request or notification for us - route to server
545
+ // this.logger.log(`Routing request to server: ${message.method}`);
546
+ // const response = await this.server.processMessage(messageData);
547
+ // this.logger.log('Sending response to parent process', response);
548
+ // // Only send response if there is one (requests get responses, notifications don't)
549
+ // if (response) {
550
+ // this.sendMessage(JSON.stringify(response));
551
+ // }
552
+ // }
553
+ // } catch (error: unknown) {
554
+ // process.stderr.write(`Error processing message: ${(error as Error).message}\n`);
555
+ // this.emit('error', error);
556
+ // }
557
+ // }
558
+ // private safeParse(message: string): any {
559
+ // try {
560
+ // return JSON.parse(message);
561
+ // } catch {
562
+ // return undefined;
563
+ // }
564
+ // }
565
+ // /**
566
+ // * Check if a message is a JSON-RPC response
567
+ // */
568
+ // private isResponse(message: any): boolean {
569
+ // return message &&
570
+ // typeof message === 'object' &&
571
+ // ('result' in message || 'error' in message) &&
572
+ // 'id' in message &&
573
+ // !('method' in message);
574
+ // }
575
+ // /**
576
+ // * Send a message to the parent process
577
+ // */
578
+ // private sendMessage(message: string): void {
579
+ // // Log to stderr to avoid contaminating stdout JSON-RPC channel
580
+ // this.logger.log(`Sending: ${message}`);
581
+ // process.stdout.write(`${message}\n`);
582
+ // }
583
+ // /**
584
+ // * Set up event handlers
585
+ // */
586
+ // private setupEventHandlers(): void {
587
+ // this.server.on('error', (error: Error) => {
588
+ // this.logger.error('Server error', error);
589
+ // this.emit('error', error);
590
+ // });
591
+ // this.client.on('error', (error: Error) => {
592
+ // this.logger.error('Client error', error);
593
+ // this.emit('error', error);
594
+ // });
595
+ // }
596
+ // }
597
+ // export class StdioServerTransport implements Transport {
598
+ // private readonly server: JsonRpcServer;
599
+ // private name?: string;
600
+ // private readonly logger = Logger.getInstance();
601
+ // public constructor(private readonly stdio: Readable, private readonly stdout: Writable, server: JsonRpcServer) {
602
+ // this.server = server;
603
+ // }
604
+ // public setName(name: string): void {
605
+ // this.name = name;
606
+ // this.logger.setMetadata({ name });
607
+ // }
608
+ // public get status(): TransportStatus {
609
+ // return TransportStatus.connected;
610
+ // }
611
+ // public isReady(): boolean {
612
+ // return true;
613
+ // }
614
+ // public async initialize(): Promise<void> {
615
+ // this.logger.log('Initializing transport');
616
+ // this.stdio.on('data', async(data: Buffer) => {
617
+ // this.logger.log('Received message', data.toString());
618
+ // const response = await this.server.processMessage(data.toString());
619
+ // await this.send(JSON.stringify(response));
620
+ // });
621
+ // }
622
+ // public async send<TRequest, TResponse>(message: TRequest): Promise<TResponse> {
623
+ // this.logger.log('Sending message', message);
624
+ // return new Promise<any>(resolve => {
625
+ // const json = JSON.stringify(message);
626
+ // if (this.stdout.write(json)) {
627
+ // resolve(undefined as unknown as TResponse);
628
+ // } else {
629
+ // this.stdout.once('drain', resolve);
630
+ // }
631
+ // });
632
+ // }
633
+ // public onMessage<T>(): void {
634
+ // return void 0;
635
+ // }
636
+ // public async close(): Promise<void> {
637
+ // this.logger.log('Closing transport');
638
+ // this.stdio.destroy();
639
+ // }
640
+ // }
641
+ //# sourceMappingURL=StdioTransport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StdioTransport.js","sourceRoot":"","sources":["../../../src/JsExecutor/transport/StdioTransport.ts"],"names":[],"mappings":"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"}
package/dist/SklEngine.js CHANGED
@@ -646,6 +646,11 @@ class SKLEngine {
646
646
  if (capabilityId === constants_1.EngineConstants.dataSource.exists) {
647
647
  return await this.existsAndWrapValueFromcapabilityArgs(mappedArgs);
648
648
  }
649
+ if (capabilityId === 'https://skl.ai/capability/execute-code') {
650
+ const codeBlocks = (0, Util_1.ensureArray)(capabilityMapping[constants_1.EngineConstants.prop.codeBlocks] ?? []).filter((mappingItem) => mappingItem[constants_1.PROP_ENTITY_TYPE] === constants_1.EngineConstants.spec.codeBlock &&
651
+ this.isJavaScriptCode((0, Util_1.getValueIfDefined)(mappingItem[constants_1.EngineConstants.prop.codeBody])));
652
+ return await this.executeCodeBlocks(codeBlocks, mappedArgs, {});
653
+ }
649
654
  // Check for custom capabilities
650
655
  if (customCapabilities_1.globalCustomCapabilities.has(capabilityId)) {
651
656
  return await customCapabilities_1.globalCustomCapabilities.execute(capabilityId, mappedArgs, this, capabilityConfig);
@@ -787,6 +792,9 @@ class SKLEngine {
787
792
  if (constants_1.EngineConstants.prop.inputsMappingRef in mapping) {
788
793
  const reference = (0, Util_1.getValueIfDefined)(mapping[constants_1.EngineConstants.prop.inputsMappingRef]);
789
794
  const referencedMapping = this.getDataAtReference(reference, args);
795
+ if (!referencedMapping || referencedMapping?.length === 0) {
796
+ return args;
797
+ }
790
798
  // Handle inputsMappingFrameRef if present
791
799
  let frame;
792
800
  if (constants_1.EngineConstants.prop.inputsMappingFrameRef in mapping) {
@@ -1 +1 @@
1
- {"version":3,"file":"SklEngine.js","sourceRoot":"","sources":["../src/SklEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SklEngine.js","sourceRoot":"","sources":["../src/SklEngine.ts"],"names":[],"mappings":"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"}
@@ -73,6 +73,7 @@ export declare const EngineConstants: {
73
73
  label: "https://skl.ai/label";
74
74
  identifier: "https://skl.ai/identifier";
75
75
  codeBody: "https://skl.ai/content/codeBody";
76
+ codeBlocks: "https://skl.ai/content/codeBlocks";
76
77
  integration: "https://skl.ai/integration/integration";
77
78
  accountOrUser: "https://skl.ai/accountOrUser";
78
79
  capabilityType: "https://skl.ai/capabilityType";
package/dist/constants.js CHANGED
@@ -80,6 +80,7 @@ exports.EngineConstants = {
80
80
  label: Vocabularies_1.SKL_PROPERTY.label,
81
81
  identifier: Vocabularies_1.SKL_PROPERTY.identifier,
82
82
  codeBody: Vocabularies_1.SKL_PROPERTY['content/codeBody'],
83
+ codeBlocks: Vocabularies_1.SKL_PROPERTY['content/codeBlocks'],
83
84
  integration: Vocabularies_1.SKL_PROPERTY['integration/integration'],
84
85
  accountOrUser: Vocabularies_1.SKL_PROPERTY.accountOrUser,
85
86
  capabilityType: Vocabularies_1.SKL_PROPERTY.capabilityType
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"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"}
@@ -3,5 +3,5 @@ export declare const SKL_NAMESPACE = "https://skl.ai/";
3
3
  export declare const SKL_DATA_NAMESPACE = "https://skl.ai/d/";
4
4
  export declare const SKL_ENGINE_NAMESPACE = "https://skl.ai/skl-engine/";
5
5
  export declare const SKL_SPECS: import("./helper").Namespace<"Capability" | "CapabilityMapping" | "TriggerCapabilityMapping" | "integration/InvalidTokenErrorMatcher" | "JsonDataSource" | "Mapping" | "Inputs" | "OpenAPI" | "CodeBlock" | "integration/AuthenticationCredential" | "integration/IntegrationInterface", "https://skl.ai/">;
6
- export declare const SKL_PROPERTY: import("./helper").Namespace<"object" | "type" | "label" | "capabilityType" | "capability" | "inputs" | "outputs" | "inputsContext" | "outputsContext" | "integration/invalidTokenErrorMatcher" | "integration/invalidTokenErrorMatcherStatus" | "integration/invalidTokenErrorMatcherMessageRegex" | "integration/credential/refreshToken" | "integration/credential/jwtBearerOptions" | "integration/credential/accessToken" | "integration/credential/bearerToken" | "integration/username" | "integration/password" | "integration/oneTimePassword" | "integration/apiKey" | "integration/declarativeApiDescription" | "integration/overrideBasePath" | "integration/schemeName" | "integration/oauthFlow" | "integration/stage" | "operationId" | "data" | "source" | "dataSource" | "headers" | "mapping/series" | "mapping/parallel" | "mapping/inputsReference" | "mapping/inputsMapping" | "mapping/inputsMappingFrame" | "mapping/inputsMappingRef" | "mapping/inputsMappingFrameRef" | "mapping/outputsMapping" | "mapping/outputsMappingFrame" | "mapping/preProcessingMapping" | "mapping/preProcessingMappingFrame" | "mapping/operationMapping" | "dateTimeCreated" | "dateTimeModified" | "identifier" | "content/codeBody" | "integration/integration" | "accountOrUser", "https://skl.ai/">;
6
+ export declare const SKL_PROPERTY: import("./helper").Namespace<"object" | "type" | "label" | "capabilityType" | "capability" | "inputs" | "outputs" | "inputsContext" | "outputsContext" | "integration/invalidTokenErrorMatcher" | "integration/invalidTokenErrorMatcherStatus" | "integration/invalidTokenErrorMatcherMessageRegex" | "integration/credential/refreshToken" | "integration/credential/jwtBearerOptions" | "integration/credential/accessToken" | "integration/credential/bearerToken" | "integration/username" | "integration/password" | "integration/oneTimePassword" | "integration/apiKey" | "integration/declarativeApiDescription" | "integration/overrideBasePath" | "integration/schemeName" | "integration/oauthFlow" | "integration/stage" | "operationId" | "data" | "source" | "dataSource" | "headers" | "mapping/series" | "mapping/parallel" | "mapping/inputsReference" | "mapping/inputsMapping" | "mapping/inputsMappingFrame" | "mapping/inputsMappingRef" | "mapping/inputsMappingFrameRef" | "mapping/outputsMapping" | "mapping/outputsMappingFrame" | "mapping/preProcessingMapping" | "mapping/preProcessingMappingFrame" | "mapping/operationMapping" | "dateTimeCreated" | "dateTimeModified" | "identifier" | "content/codeBody" | "integration/integration" | "accountOrUser" | "content/codeBlocks", "https://skl.ai/">;
7
7
  export declare const SKL_ENGINE: import("./helper").Namespace<"update" | "findAll" | "findAllBy" | "find" | "findBy" | "exists" | "existsResult" | "count" | "countResult" | "save" | "destroy", "https://skl.ai/skl-engine/">;
@@ -83,7 +83,8 @@ exports.SKL_PROPERTY = (0, helper_1.createNamespace)(exports.SKL_NAMESPACE, [
83
83
  'identifier',
84
84
  'content/codeBody',
85
85
  'integration/integration',
86
- 'accountOrUser'
86
+ 'accountOrUser',
87
+ 'content/codeBlocks'
87
88
  ]);
88
89
  // Export const SKLSO_INTEGRATION_NAMESPACE = 'https://skl.so/integration/';
89
90
  // Export const SKLSO_INTEGRATION = createNamespace(SKLSO_INTEGRATION_NAMESPACE, [
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/util/Vocabularies/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qCAA2C;AAE3C,2CAAyB;AAEZ,QAAA,aAAa,GAAG,iBAAiB,CAAC;AAClC,QAAA,kBAAkB,GAAG,mBAAmB,CAAC;AACzC,QAAA,oBAAoB,GAAG,4BAA4B,CAAC;AAEpD,QAAA,SAAS,GAAG,IAAA,wBAAe,EAAC,qBAAa,EAAE;IACtD,YAAY;IACZ,mBAAmB;IACnB,0BAA0B;IAC1B,sCAAsC;IACtC,gBAAgB;IAChB,SAAS;IACT,QAAQ;IACR,SAAS;IACT,WAAW;IACX,sCAAsC;IACtC,kCAAkC;CACnC,CAAC,CAAC;AAEU,QAAA,YAAY,GAAG,IAAA,wBAAe,EAAC,qBAAa,EAAE;IAEzD,SAAS;IACT,gBAAgB;IAEhB,UAAU;IACV,YAAY;IACZ,QAAQ;IACR,SAAS;IACT,eAAe;IACf,gBAAgB;IAEhB,sCAAsC;IACtC,4CAA4C;IAC5C,kDAAkD;IAClD,qCAAqC;IACrC,yCAAyC;IACzC,oCAAoC;IACpC,oCAAoC;IACpC,sBAAsB;IACtB,sBAAsB;IACtB,6BAA6B;IAC7B,oBAAoB;IACpB,uCAAuC;IACvC,8BAA8B;IAC9B,wBAAwB;IACxB,uBAAuB;IACvB,mBAAmB;IACnB,aAAa;IAEb,MAAM;IACN,QAAQ;IACR,YAAY;IACZ,SAAS;IACT,QAAQ;IAER,gBAAgB;IAChB,kBAAkB;IAClB,yBAAyB;IACzB,uBAAuB;IACvB,4BAA4B;IAC5B,0BAA0B;IAC1B,+BAA+B;IAC/B,wBAAwB;IACxB,6BAA6B;IAC7B,8BAA8B;IAC9B,mCAAmC;IACnC,0BAA0B;IAE1B,MAAM;IACN,iBAAiB;IACjB,kBAAkB;IAClB,OAAO;IACP,YAAY;IACZ,kBAAkB;IAClB,yBAAyB;IACzB,eAAe;CAChB,CAAC,CAAC;AAEH,4EAA4E;AAC5E,kFAAkF;AAClF,iBAAiB;AACjB,aAAa;AACb,gBAAgB;AAChB,eAAe;AACf,cAAc;AACd,8BAA8B;AAC9B,MAAM;AAEN,gGAAgG;AAChG,qHAAqH;AAExG,QAAA,UAAU,GAAG,IAAA,wBAAe,EAAC,4BAAoB,EAAE;IAC9D,QAAQ;IACR,SAAS;IACT,WAAW;IACX,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,cAAc;IACd,OAAO;IACP,aAAa;IACb,MAAM;IACN,SAAS;CACV,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/util/Vocabularies/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,qCAA2C;AAE3C,2CAAyB;AAEZ,QAAA,aAAa,GAAG,iBAAiB,CAAC;AAClC,QAAA,kBAAkB,GAAG,mBAAmB,CAAC;AACzC,QAAA,oBAAoB,GAAG,4BAA4B,CAAC;AAEpD,QAAA,SAAS,GAAG,IAAA,wBAAe,EAAC,qBAAa,EAAE;IACtD,YAAY;IACZ,mBAAmB;IACnB,0BAA0B;IAC1B,sCAAsC;IACtC,gBAAgB;IAChB,SAAS;IACT,QAAQ;IACR,SAAS;IACT,WAAW;IACX,sCAAsC;IACtC,kCAAkC;CACnC,CAAC,CAAC;AAEU,QAAA,YAAY,GAAG,IAAA,wBAAe,EAAC,qBAAa,EAAE;IAEzD,SAAS;IACT,gBAAgB;IAEhB,UAAU;IACV,YAAY;IACZ,QAAQ;IACR,SAAS;IACT,eAAe;IACf,gBAAgB;IAEhB,sCAAsC;IACtC,4CAA4C;IAC5C,kDAAkD;IAClD,qCAAqC;IACrC,yCAAyC;IACzC,oCAAoC;IACpC,oCAAoC;IACpC,sBAAsB;IACtB,sBAAsB;IACtB,6BAA6B;IAC7B,oBAAoB;IACpB,uCAAuC;IACvC,8BAA8B;IAC9B,wBAAwB;IACxB,uBAAuB;IACvB,mBAAmB;IACnB,aAAa;IAEb,MAAM;IACN,QAAQ;IACR,YAAY;IACZ,SAAS;IACT,QAAQ;IAER,gBAAgB;IAChB,kBAAkB;IAClB,yBAAyB;IACzB,uBAAuB;IACvB,4BAA4B;IAC5B,0BAA0B;IAC1B,+BAA+B;IAC/B,wBAAwB;IACxB,6BAA6B;IAC7B,8BAA8B;IAC9B,mCAAmC;IACnC,0BAA0B;IAE1B,MAAM;IACN,iBAAiB;IACjB,kBAAkB;IAClB,OAAO;IACP,YAAY;IACZ,kBAAkB;IAClB,yBAAyB;IACzB,eAAe;IACf,oBAAoB;CACrB,CAAC,CAAC;AAEH,4EAA4E;AAC5E,kFAAkF;AAClF,iBAAiB;AACjB,aAAa;AACb,gBAAgB;AAChB,eAAe;AACf,cAAc;AACd,8BAA8B;AAC9B,MAAM;AAEN,gGAAgG;AAChG,qHAAqH;AAExG,QAAA,UAAU,GAAG,IAAA,wBAAe,EAAC,4BAAoB,EAAE;IAC9D,QAAQ;IACR,SAAS;IACT,WAAW;IACX,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,cAAc;IACd,OAAO;IACP,aAAa;IACb,MAAM;IACN,SAAS;CACV,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@comake/skl-js-engine",
3
- "version": "1.1.6",
3
+ "version": "1.2.0",
4
4
  "description": "Standard Knowledge Language Javascript Engine",
5
5
  "keywords": [
6
6
  "skl",