@mondaydotcomorg/atp-protocol 0.17.14

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.
@@ -0,0 +1,489 @@
1
+ import type { ProvenanceMode, SecurityPolicy } from '@mondaydotcomorg/atp-provenance';
2
+ export { ProvenanceMode, type SecurityPolicy } from '@mondaydotcomorg/atp-provenance';
3
+ /**
4
+ * Callback types that can pause execution
5
+ */
6
+ export declare enum CallbackType {
7
+ LLM = "llm",
8
+ APPROVAL = "approval",
9
+ EMBEDDING = "embedding",
10
+ TOOL = "tool"
11
+ }
12
+ /**
13
+ * Tool callback operations
14
+ */
15
+ export declare enum ToolOperation {
16
+ CALL = "call"
17
+ }
18
+ export interface AgentToolProtocolRequest {
19
+ jsonrpc: '2.0';
20
+ id: string | number;
21
+ method: string;
22
+ params: Record<string, unknown>;
23
+ }
24
+ export interface AgentToolProtocolResponse {
25
+ jsonrpc: '2.0';
26
+ id: string | number;
27
+ result?: unknown;
28
+ error?: {
29
+ code: number;
30
+ message: string;
31
+ data?: unknown;
32
+ };
33
+ }
34
+ export interface AgentToolProtocolNotification {
35
+ jsonrpc: '2.0';
36
+ method: string;
37
+ params: Record<string, unknown>;
38
+ }
39
+ /**
40
+ * Client-provided service availability
41
+ */
42
+ export interface ClientServices {
43
+ /** Whether client provides LLM implementation */
44
+ hasLLM: boolean;
45
+ /** Whether client provides approval handler */
46
+ hasApproval: boolean;
47
+ /** Whether client provides embedding model */
48
+ hasEmbedding: boolean;
49
+ /** Whether client provides custom tools */
50
+ hasTools: boolean;
51
+ /** Names of client-provided tools (for discovery) */
52
+ toolNames?: string[];
53
+ }
54
+ /**
55
+ * Client-provided LLM handler
56
+ */
57
+ export interface ClientLLMHandler {
58
+ call: (prompt: string, options?: {
59
+ context?: Record<string, unknown>;
60
+ model?: string;
61
+ temperature?: number;
62
+ systemPrompt?: string;
63
+ }) => Promise<string>;
64
+ extract?: <T>(prompt: string, schema: Record<string, unknown>, options?: {
65
+ context?: Record<string, unknown>;
66
+ }) => Promise<T>;
67
+ classify?: (text: string, categories: string[], options?: {
68
+ context?: Record<string, unknown>;
69
+ }) => Promise<string>;
70
+ }
71
+ /**
72
+ * Client-provided approval handler
73
+ */
74
+ export interface ClientApprovalHandler {
75
+ request: (message: string, context?: Record<string, unknown>) => Promise<{
76
+ approved: boolean;
77
+ response?: unknown;
78
+ timestamp: number;
79
+ }>;
80
+ }
81
+ /**
82
+ * Client-provided embedding handler
83
+ */
84
+ export interface ClientEmbeddingHandler {
85
+ embed: (text: string) => Promise<number[]>;
86
+ similarity?: (text1: string, text2: string) => Promise<number>;
87
+ }
88
+ /**
89
+ * Client-provided tool handler
90
+ * Function that executes on the client side when a client tool is invoked
91
+ */
92
+ export interface ClientToolHandler {
93
+ (input: unknown): Promise<unknown>;
94
+ }
95
+ /**
96
+ * Client tool definition (metadata sent to server)
97
+ * The actual handler function remains on the client side
98
+ */
99
+ export interface ClientToolDefinition {
100
+ /** Tool name (unique per client session) */
101
+ name: string;
102
+ /** API namespace (e.g., 'playwright', 'browser'). Defaults to 'client' if not specified */
103
+ namespace?: string;
104
+ /** Human-readable description of what the tool does */
105
+ description: string;
106
+ /** JSON Schema for tool input validation */
107
+ inputSchema: JSONSchema;
108
+ /** JSON Schema for tool output (optional, for documentation) */
109
+ outputSchema?: JSONSchema;
110
+ /** Tool metadata for security and risk management */
111
+ metadata?: ToolMetadata;
112
+ /** Whether this tool supports parallel execution with other tools */
113
+ supportsConcurrency?: boolean;
114
+ /** Keywords for search/discovery (optional) */
115
+ keywords?: string[];
116
+ }
117
+ /**
118
+ * Client tool with handler (used client-side only)
119
+ * Extends ClientToolDefinition to include the actual handler function
120
+ */
121
+ export interface ClientTool extends ClientToolDefinition {
122
+ /** Handler function that executes on client side */
123
+ handler: ClientToolHandler;
124
+ }
125
+ /**
126
+ * Tool operation type classification
127
+ */
128
+ export declare enum ToolOperationType {
129
+ /** Safe read-only operations */
130
+ READ = "read",
131
+ /** Operations that modify data */
132
+ WRITE = "write",
133
+ /** Operations that delete or destroy data */
134
+ DESTRUCTIVE = "destructive"
135
+ }
136
+ /**
137
+ * Tool sensitivity level
138
+ */
139
+ export declare enum ToolSensitivityLevel {
140
+ /** Public data, no sensitivity concerns */
141
+ PUBLIC = "public",
142
+ /** Internal data, requires authentication */
143
+ INTERNAL = "internal",
144
+ /** Sensitive data (PII, financial data, etc.) */
145
+ SENSITIVE = "sensitive"
146
+ }
147
+ /**
148
+ * Client-side tool execution rules
149
+ * Allows clients to control which tools can be executed and under what conditions
150
+ */
151
+ export interface ClientToolRules {
152
+ /** Block all tools of specific operation types */
153
+ blockOperationTypes?: ToolOperationType[];
154
+ /** Block all tools with specific sensitivity levels */
155
+ blockSensitivityLevels?: ToolSensitivityLevel[];
156
+ /** Require approval for specific operation types */
157
+ requireApprovalForOperationTypes?: ToolOperationType[];
158
+ /** Require approval for specific sensitivity levels */
159
+ requireApprovalForSensitivityLevels?: ToolSensitivityLevel[];
160
+ /** Block specific tools by name (e.g., ['deleteDatabase', 'dropTable']) */
161
+ blockTools?: string[];
162
+ /** Allow only specific tools by name (whitelist mode) */
163
+ allowOnlyTools?: string[];
164
+ /** Block entire API groups (e.g., ['admin', 'system']) */
165
+ blockApiGroups?: string[];
166
+ /** Allow only specific API groups (whitelist mode) */
167
+ allowOnlyApiGroups?: string[];
168
+ }
169
+ /**
170
+ * Tool/API metadata for security and risk management
171
+ *
172
+ * What can clients do with these annotations?
173
+ *
174
+ * 1. **Block Execution**:
175
+ * - Block all WRITE operations: blockOperationTypes: [ToolOperationType.WRITE]
176
+ * - Block all DESTRUCTIVE operations: blockOperationTypes: [ToolOperationType.DESTRUCTIVE]
177
+ * - Block SENSITIVE data access: blockSensitivityLevels: [ToolSensitivityLevel.SENSITIVE]
178
+ *
179
+ * 2. **Require Approval**:
180
+ * - Require approval for WRITE: requireApprovalForOperationTypes: [ToolOperationType.WRITE]
181
+ * - Require approval for DESTRUCTIVE: requireApprovalForOperationTypes: [ToolOperationType.DESTRUCTIVE]
182
+ * - Require approval for SENSITIVE: requireApprovalForSensitivityLevels: [ToolSensitivityLevel.SENSITIVE]
183
+ *
184
+ * 3. **Whitelist/Blacklist**:
185
+ * - Block specific tools: blockTools: ['deleteDatabase', 'dropTable']
186
+ * - Allow only safe tools: allowOnlyTools: ['getUser', 'listItems']
187
+ * - Block admin APIs: blockApiGroups: ['admin', 'system']
188
+ *
189
+ * 4. **Audit & Logging**:
190
+ * - Log all DESTRUCTIVE operations
191
+ * - Track access to SENSITIVE data
192
+ * - Monitor WRITE operations
193
+ *
194
+ * Granularity levels:
195
+ * - Operation Type: READ, WRITE, DESTRUCTIVE (coarse-grained)
196
+ * - Sensitivity Level: PUBLIC, INTERNAL, SENSITIVE (data classification)
197
+ * - Tool Name: Specific function names (fine-grained)
198
+ * - API Group: Entire namespaces (medium-grained)
199
+ */
200
+ export interface ToolMetadata {
201
+ /** Operation type classification */
202
+ operationType?: ToolOperationType;
203
+ /** Sensitivity level of data handled */
204
+ sensitivityLevel?: ToolSensitivityLevel;
205
+ /** Require explicit approval before execution (server-side enforcement) */
206
+ requiresApproval?: boolean;
207
+ /** Category for grouping/filtering (e.g., 'database', 'user-management') */
208
+ category?: string;
209
+ /** Additional tags for classification */
210
+ tags?: string[];
211
+ /** Human-readable description of potential impact */
212
+ impactDescription?: string;
213
+ /**
214
+ * Required OAuth scopes to use this tool
215
+ * Used for scope-based filtering when user credentials have limited permissions
216
+ * @example ['repo', 'read:user'] for GitHub
217
+ * @example ['https://www.googleapis.com/auth/calendar'] for Google
218
+ */
219
+ requiredScopes?: string[];
220
+ /**
221
+ * Generic permissions required (for non-OAuth providers)
222
+ * @example ['admin', 'write:users']
223
+ */
224
+ requiredPermissions?: string[];
225
+ }
226
+ /**
227
+ * Client service providers
228
+ */
229
+ export interface ClientServiceProviders {
230
+ llm?: ClientLLMHandler;
231
+ approval?: ClientApprovalHandler;
232
+ embedding?: ClientEmbeddingHandler;
233
+ /** Client-provided tools that execute locally */
234
+ tools?: ClientTool[];
235
+ }
236
+ export interface ExecutionConfig {
237
+ timeout: number;
238
+ maxMemory: number;
239
+ maxLLMCalls: number;
240
+ allowedAPIs: string[];
241
+ allowLLMCalls: boolean;
242
+ progressCallback?: (message: string, fraction: number) => void;
243
+ customLLMHandler?: (prompt: string, options?: any) => Promise<string>;
244
+ clientServices?: ClientServices;
245
+ provenanceMode?: ProvenanceMode;
246
+ securityPolicies?: SecurityPolicy[];
247
+ provenanceHints?: string[];
248
+ }
249
+ /**
250
+ * Execution status codes for fine-grained error reporting
251
+ */
252
+ export declare enum ExecutionStatus {
253
+ COMPLETED = "completed",
254
+ FAILED = "failed",
255
+ TIMEOUT = "timeout",
256
+ CANCELLED = "cancelled",
257
+ PAUSED = "paused",
258
+ MEMORY_EXCEEDED = "memory_exceeded",
259
+ LLM_CALLS_EXCEEDED = "llm_calls_exceeded",
260
+ SECURITY_VIOLATION = "security_violation",
261
+ VALIDATION_FAILED = "validation_failed",
262
+ LOOP_DETECTED = "loop_detected",
263
+ RATE_LIMITED = "rate_limited",
264
+ NETWORK_ERROR = "network_error",
265
+ PARSE_ERROR = "parse_error"
266
+ }
267
+ /**
268
+ * Execution error codes for categorizing failures
269
+ */
270
+ export declare enum ExecutionErrorCode {
271
+ UNKNOWN_ERROR = "UNKNOWN_ERROR",
272
+ EXECUTION_FAILED = "EXECUTION_FAILED",
273
+ TIMEOUT_ERROR = "TIMEOUT_ERROR",
274
+ MEMORY_LIMIT_EXCEEDED = "MEMORY_LIMIT_EXCEEDED",
275
+ LLM_CALL_LIMIT_EXCEEDED = "LLM_CALL_LIMIT_EXCEEDED",
276
+ HTTP_CALL_LIMIT_EXCEEDED = "HTTP_CALL_LIMIT_EXCEEDED",
277
+ SECURITY_VIOLATION = "SECURITY_VIOLATION",
278
+ VALIDATION_FAILED = "VALIDATION_FAILED",
279
+ FORBIDDEN_OPERATION = "FORBIDDEN_OPERATION",
280
+ PARSE_ERROR = "PARSE_ERROR",
281
+ SYNTAX_ERROR = "SYNTAX_ERROR",
282
+ TYPE_ERROR = "TYPE_ERROR",
283
+ REFERENCE_ERROR = "REFERENCE_ERROR",
284
+ INFINITE_LOOP_DETECTED = "INFINITE_LOOP_DETECTED",
285
+ LOOP_TIMEOUT = "LOOP_TIMEOUT",
286
+ NETWORK_ERROR = "NETWORK_ERROR",
287
+ HTTP_ERROR = "HTTP_ERROR",
288
+ DNS_ERROR = "DNS_ERROR",
289
+ RATE_LIMIT_EXCEEDED = "RATE_LIMIT_EXCEEDED",
290
+ CONCURRENT_LIMIT_EXCEEDED = "CONCURRENT_LIMIT_EXCEEDED"
291
+ }
292
+ export interface ExecutionResult {
293
+ executionId: string;
294
+ status: ExecutionStatus;
295
+ result?: unknown;
296
+ error?: {
297
+ message: string;
298
+ code?: ExecutionErrorCode;
299
+ stack?: string;
300
+ line?: number;
301
+ context?: Record<string, unknown>;
302
+ retryable?: boolean;
303
+ suggestion?: string;
304
+ };
305
+ stats: {
306
+ duration: number;
307
+ memoryUsed: number;
308
+ llmCallsCount: number;
309
+ approvalCallsCount: number;
310
+ statementsExecuted?: number;
311
+ statementsCached?: number;
312
+ };
313
+ needsCallback?: {
314
+ type: CallbackType;
315
+ operation: string;
316
+ payload: Record<string, unknown>;
317
+ };
318
+ needsCallbacks?: BatchCallbackRequest[];
319
+ callbackHistory?: Array<{
320
+ type: CallbackType;
321
+ operation: string;
322
+ payload: Record<string, unknown>;
323
+ result?: unknown;
324
+ timestamp: number;
325
+ sequenceNumber: number;
326
+ }>;
327
+ transformedCode?: string;
328
+ provenanceSnapshot?: unknown;
329
+ provenanceTokens?: Array<{
330
+ path: string;
331
+ token: string;
332
+ }>;
333
+ }
334
+ /**
335
+ * Batch callback request for parallel execution
336
+ */
337
+ export interface BatchCallbackRequest {
338
+ /** Unique callback ID */
339
+ id: string;
340
+ /** Callback type */
341
+ type: CallbackType;
342
+ /** Operation name */
343
+ operation: string;
344
+ /** Operation payload */
345
+ payload: Record<string, unknown>;
346
+ }
347
+ /**
348
+ * Batch callback result from client
349
+ */
350
+ export interface BatchCallbackResult {
351
+ /** Callback ID (matches BatchCallbackRequest.id) */
352
+ id: string;
353
+ /** Callback result */
354
+ result: unknown;
355
+ }
356
+ export interface SearchOptions {
357
+ query: string;
358
+ apiGroups?: string[];
359
+ maxResults?: number;
360
+ useEmbeddings?: boolean;
361
+ embeddingModel?: string;
362
+ }
363
+ export interface SearchResult {
364
+ apiGroup: string;
365
+ functionName: string;
366
+ description: string;
367
+ signature: string;
368
+ example?: string;
369
+ relevanceScore: number;
370
+ }
371
+ export interface ExploreRequest {
372
+ path: string;
373
+ }
374
+ export interface ExploreDirectoryResult {
375
+ type: 'directory';
376
+ path: string;
377
+ items: Array<{
378
+ name: string;
379
+ type: 'directory' | 'function';
380
+ }>;
381
+ }
382
+ export interface ExploreFunctionResult {
383
+ type: 'function';
384
+ path: string;
385
+ name: string;
386
+ description: string;
387
+ definition: string;
388
+ group: string;
389
+ }
390
+ export type ExploreResult = ExploreDirectoryResult | ExploreFunctionResult;
391
+ export interface ValidationResult {
392
+ valid: boolean;
393
+ errors?: ValidationError[];
394
+ warnings?: ValidationError[];
395
+ securityIssues?: SecurityIssue[];
396
+ }
397
+ export interface ValidationError {
398
+ line: number;
399
+ message: string;
400
+ severity: 'error' | 'warning';
401
+ }
402
+ export interface SecurityIssue {
403
+ line: number;
404
+ issue: string;
405
+ risk: 'low' | 'medium' | 'high';
406
+ }
407
+ export interface APISource {
408
+ type: 'mcp' | 'openapi' | 'custom';
409
+ name: string;
410
+ url?: string;
411
+ spec?: unknown;
412
+ }
413
+ export interface ServerConfig {
414
+ apiGroups: APIGroupConfig[];
415
+ security: SecurityConfig;
416
+ execution: ExecutionLimits;
417
+ search: SearchConfig;
418
+ logging: LoggingConfig;
419
+ }
420
+ export interface APIGroupConfig {
421
+ name: string;
422
+ type: 'mcp' | 'openapi' | 'custom';
423
+ url?: string;
424
+ spec?: unknown;
425
+ functions?: CustomFunctionDef[];
426
+ /** Authentication configuration for this API group */
427
+ auth?: import('./auth.js').AuthConfig;
428
+ }
429
+ export interface SecurityConfig {
430
+ allowedOrigins: string[];
431
+ apiKeyRequired: boolean;
432
+ rateLimits: {
433
+ requestsPerMinute: number;
434
+ executionsPerHour: number;
435
+ };
436
+ }
437
+ export interface ExecutionLimits {
438
+ defaultTimeout: number;
439
+ maxTimeout: number;
440
+ defaultMemoryLimit: number;
441
+ maxMemoryLimit: number;
442
+ defaultLLMCallLimit: number;
443
+ maxLLMCallLimit: number;
444
+ }
445
+ export interface SearchConfig {
446
+ enableEmbeddings: boolean;
447
+ embeddingProvider?: 'openai' | 'cohere' | 'custom';
448
+ customSearcher?: (query: string) => Promise<SearchResult[]>;
449
+ }
450
+ export interface LoggingConfig {
451
+ level: 'debug' | 'info' | 'warn' | 'error';
452
+ destination: 'console' | 'file' | 'remote';
453
+ auditEnabled: boolean;
454
+ }
455
+ export interface CustomFunctionDef {
456
+ name: string;
457
+ description: string;
458
+ inputSchema: JSONSchema;
459
+ outputSchema?: JSONSchema;
460
+ handler: (params: unknown) => Promise<unknown>;
461
+ keywords?: string[];
462
+ metadata?: ToolMetadata;
463
+ requiredScopes?: string[];
464
+ auth?: {
465
+ source?: 'server' | 'user';
466
+ oauthProvider?: string;
467
+ };
468
+ }
469
+ export interface JSONSchema {
470
+ type: string;
471
+ properties?: Record<string, unknown>;
472
+ required?: string[];
473
+ [key: string]: unknown;
474
+ }
475
+ export interface ClientConfig {
476
+ serverUrl: string;
477
+ apiKey: string;
478
+ timeout?: number;
479
+ llmProvider: 'anthropic' | 'openai' | 'custom';
480
+ llmModel?: string;
481
+ temperature?: number;
482
+ defaultExecutionConfig?: Partial<ExecutionConfig>;
483
+ searchPreferences?: {
484
+ useEmbeddings?: boolean;
485
+ embeddingModel?: string;
486
+ maxResults?: number;
487
+ };
488
+ }
489
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtF,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEtF;;GAEG;AACH,oBAAY,YAAY;IACvB,GAAG,QAAQ;IACX,QAAQ,aAAa;IACrB,SAAS,cAAc;IACvB,IAAI,SAAS;CACb;AAED;;GAEG;AACH,oBAAY,aAAa;IACxB,IAAI,SAAS;CACb;AAED,MAAM,WAAW,wBAAwB;IACxC,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED,MAAM,WAAW,yBAAyB;IACzC,OAAO,EAAE,KAAK,CAAC;IACf,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,OAAO,CAAC;KACf,CAAC;CACF;AAED,MAAM,WAAW,6BAA6B;IAC7C,OAAO,EAAE,KAAK,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC9B,iDAAiD;IACjD,MAAM,EAAE,OAAO,CAAC;IAChB,+CAA+C;IAC/C,WAAW,EAAE,OAAO,CAAC;IACrB,8CAA8C;IAC9C,YAAY,EAAE,OAAO,CAAC;IACtB,2CAA2C;IAC3C,QAAQ,EAAE,OAAO,CAAC;IAClB,qDAAqD;IACrD,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,CACL,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QACT,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClC,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;KACtB,KACG,OAAO,CAAC,MAAM,CAAC,CAAC;IACrB,OAAO,CAAC,EAAE,CAAC,CAAC,EACX,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,OAAO,CAAC,EAAE;QACT,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAClC,KACG,OAAO,CAAC,CAAC,CAAC,CAAC;IAChB,QAAQ,CAAC,EAAE,CACV,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,CAAC,EAAE;QACT,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KAClC,KACG,OAAO,CAAC,MAAM,CAAC,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACrC,OAAO,EAAE,CACR,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAC7B,OAAO,CAAC;QACZ,QAAQ,EAAE,OAAO,CAAC;QAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAC3C,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC/D;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAiB;IACjC,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACnC;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACpC,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAC;IACb,2FAA2F;IAC3F,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,WAAW,EAAE,MAAM,CAAC;IACpB,4CAA4C;IAC5C,WAAW,EAAE,UAAU,CAAC;IACxB,gEAAgE;IAChE,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,qDAAqD;IACrD,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,qEAAqE;IACrE,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,+CAA+C;IAC/C,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,UAAW,SAAQ,oBAAoB;IACvD,oDAAoD;IACpD,OAAO,EAAE,iBAAiB,CAAC;CAC3B;AAED;;GAEG;AACH,oBAAY,iBAAiB;IAC5B,gCAAgC;IAChC,IAAI,SAAS;IACb,kCAAkC;IAClC,KAAK,UAAU;IACf,6CAA6C;IAC7C,WAAW,gBAAgB;CAC3B;AAED;;GAEG;AACH,oBAAY,oBAAoB;IAC/B,2CAA2C;IAC3C,MAAM,WAAW;IACjB,6CAA6C;IAC7C,QAAQ,aAAa;IACrB,iDAAiD;IACjD,SAAS,cAAc;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC/B,kDAAkD;IAClD,mBAAmB,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC1C,uDAAuD;IACvD,sBAAsB,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAChD,oDAAoD;IACpD,gCAAgC,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACvD,uDAAuD;IACvD,mCAAmC,CAAC,EAAE,oBAAoB,EAAE,CAAC;IAC7D,2EAA2E;IAC3E,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,yDAAyD;IACzD,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,0DAA0D;IAC1D,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,sDAAsD;IACtD,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,WAAW,YAAY;IAC5B,oCAAoC;IACpC,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,wCAAwC;IACxC,gBAAgB,CAAC,EAAE,oBAAoB,CAAC;IACxC,2EAA2E;IAC3E,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,4EAA4E;IAC5E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,qDAAqD;IACrD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACtC,GAAG,CAAC,EAAE,gBAAgB,CAAC;IACvB,QAAQ,CAAC,EAAE,qBAAqB,CAAC;IACjC,SAAS,CAAC,EAAE,sBAAsB,CAAC;IACnC,iDAAiD;IACjD,KAAK,CAAC,EAAE,UAAU,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC/D,gBAAgB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACtE,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,gBAAgB,CAAC,EAAE,cAAc,EAAE,CAAC;IACpC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED;;GAEG;AACH,oBAAY,eAAe;IAC1B,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,MAAM,WAAW;IACjB,eAAe,oBAAoB;IACnC,kBAAkB,uBAAuB;IACzC,kBAAkB,uBAAuB;IACzC,iBAAiB,sBAAsB;IACvC,aAAa,kBAAkB;IAC/B,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;IAC/B,WAAW,gBAAgB;CAC3B;AAED;;GAEG;AACH,oBAAY,kBAAkB;IAC7B,aAAa,kBAAkB;IAC/B,gBAAgB,qBAAqB;IACrC,aAAa,kBAAkB;IAE/B,qBAAqB,0BAA0B;IAC/C,uBAAuB,4BAA4B;IACnD,wBAAwB,6BAA6B;IAErD,kBAAkB,uBAAuB;IACzC,iBAAiB,sBAAsB;IACvC,mBAAmB,wBAAwB;IAE3C,WAAW,gBAAgB;IAC3B,YAAY,iBAAiB;IAC7B,UAAU,eAAe;IACzB,eAAe,oBAAoB;IAEnC,sBAAsB,2BAA2B;IACjD,YAAY,iBAAiB;IAE7B,aAAa,kBAAkB;IAC/B,UAAU,eAAe;IACzB,SAAS,cAAc;IAEvB,mBAAmB,wBAAwB;IAC3C,yBAAyB,8BAA8B;CACvD;AAED,MAAM,WAAW,eAAe;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC;IACxB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE;QACP,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,CAAC,EAAE,kBAAkB,CAAC;QAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClC,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,UAAU,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,KAAK,EAAE;QACN,QAAQ,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,aAAa,EAAE,MAAM,CAAC;QACtB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC1B,CAAC;IACF,aAAa,CAAC,EAAE;QACf,IAAI,EAAE,YAAY,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACjC,CAAC;IACF,cAAc,CAAC,EAAE,oBAAoB,EAAE,CAAC;IACxC,eAAe,CAAC,EAAE,KAAK,CAAC;QACvB,IAAI,EAAE,YAAY,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACjC,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC;QAClB,cAAc,EAAE,MAAM,CAAC;KACvB,CAAC,CAAC;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,gBAAgB,CAAC,EAAE,KAAK,CAAC;QACxB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;KACd,CAAC,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACpC,yBAAyB;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,oBAAoB;IACpB,IAAI,EAAE,YAAY,CAAC;IACnB,qBAAqB;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,wBAAwB;IACxB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IACnC,oDAAoD;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,sBAAsB;IACtB,MAAM,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,sBAAsB;IACtC,IAAI,EAAE,WAAW,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,WAAW,GAAG,UAAU,CAAA;KAAE,CAAC,CAAC;CAC/D;AAED,MAAM,WAAW,qBAAqB;IACrC,IAAI,EAAE,UAAU,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;CACd;AAED,MAAM,MAAM,aAAa,GAAG,sBAAsB,GAAG,qBAAqB,CAAC;AAE3E,MAAM,WAAW,gBAAgB;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;IAC7B,cAAc,CAAC,EAAE,aAAa,EAAE,CAAC;CACjC;AAED,MAAM,WAAW,eAAe;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;CAC9B;AAED,MAAM,WAAW,aAAa;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,SAAS;IACzB,IAAI,EAAE,KAAK,GAAG,SAAS,GAAG,QAAQ,CAAC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,YAAY;IAC5B,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,QAAQ,EAAE,cAAc,CAAC;IACzB,SAAS,EAAE,eAAe,CAAC;IAC3B,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,aAAa,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,KAAK,GAAG,SAAS,GAAG,QAAQ,CAAC;IACnC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,SAAS,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAChC,sDAAsD;IACtD,IAAI,CAAC,EAAE,OAAO,WAAW,EAAE,UAAU,CAAC;CACtC;AAED,MAAM,WAAW,cAAc;IAC9B,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,cAAc,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE;QACX,iBAAiB,EAAE,MAAM,CAAC;QAC1B,iBAAiB,EAAE,MAAM,CAAC;KAC1B,CAAC;CACF;AAED,MAAM,WAAW,eAAe;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC5B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;IACnD,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;CAC5D;AAED,MAAM,WAAW,aAAa;IAC7B,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC3C,WAAW,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC;IAC3C,YAAY,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,UAAU,CAAC;IACxB,YAAY,CAAC,EAAE,UAAU,CAAC;IAC1B,OAAO,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/C,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,IAAI,CAAC,EAAE;QACN,MAAM,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;QAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;CACF;AAED,MAAM,WAAW,UAAU;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC/C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sBAAsB,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;IAClD,iBAAiB,CAAC,EAAE;QACnB,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,UAAU,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACF"}
package/dist/types.js ADDED
@@ -0,0 +1,88 @@
1
+ export { ProvenanceMode } from '@mondaydotcomorg/atp-provenance';
2
+ /**
3
+ * Callback types that can pause execution
4
+ */
5
+ export var CallbackType;
6
+ (function (CallbackType) {
7
+ CallbackType["LLM"] = "llm";
8
+ CallbackType["APPROVAL"] = "approval";
9
+ CallbackType["EMBEDDING"] = "embedding";
10
+ CallbackType["TOOL"] = "tool";
11
+ })(CallbackType || (CallbackType = {}));
12
+ /**
13
+ * Tool callback operations
14
+ */
15
+ export var ToolOperation;
16
+ (function (ToolOperation) {
17
+ ToolOperation["CALL"] = "call";
18
+ })(ToolOperation || (ToolOperation = {}));
19
+ /**
20
+ * Tool operation type classification
21
+ */
22
+ export var ToolOperationType;
23
+ (function (ToolOperationType) {
24
+ /** Safe read-only operations */
25
+ ToolOperationType["READ"] = "read";
26
+ /** Operations that modify data */
27
+ ToolOperationType["WRITE"] = "write";
28
+ /** Operations that delete or destroy data */
29
+ ToolOperationType["DESTRUCTIVE"] = "destructive";
30
+ })(ToolOperationType || (ToolOperationType = {}));
31
+ /**
32
+ * Tool sensitivity level
33
+ */
34
+ export var ToolSensitivityLevel;
35
+ (function (ToolSensitivityLevel) {
36
+ /** Public data, no sensitivity concerns */
37
+ ToolSensitivityLevel["PUBLIC"] = "public";
38
+ /** Internal data, requires authentication */
39
+ ToolSensitivityLevel["INTERNAL"] = "internal";
40
+ /** Sensitive data (PII, financial data, etc.) */
41
+ ToolSensitivityLevel["SENSITIVE"] = "sensitive";
42
+ })(ToolSensitivityLevel || (ToolSensitivityLevel = {}));
43
+ /**
44
+ * Execution status codes for fine-grained error reporting
45
+ */
46
+ export var ExecutionStatus;
47
+ (function (ExecutionStatus) {
48
+ ExecutionStatus["COMPLETED"] = "completed";
49
+ ExecutionStatus["FAILED"] = "failed";
50
+ ExecutionStatus["TIMEOUT"] = "timeout";
51
+ ExecutionStatus["CANCELLED"] = "cancelled";
52
+ ExecutionStatus["PAUSED"] = "paused";
53
+ ExecutionStatus["MEMORY_EXCEEDED"] = "memory_exceeded";
54
+ ExecutionStatus["LLM_CALLS_EXCEEDED"] = "llm_calls_exceeded";
55
+ ExecutionStatus["SECURITY_VIOLATION"] = "security_violation";
56
+ ExecutionStatus["VALIDATION_FAILED"] = "validation_failed";
57
+ ExecutionStatus["LOOP_DETECTED"] = "loop_detected";
58
+ ExecutionStatus["RATE_LIMITED"] = "rate_limited";
59
+ ExecutionStatus["NETWORK_ERROR"] = "network_error";
60
+ ExecutionStatus["PARSE_ERROR"] = "parse_error";
61
+ })(ExecutionStatus || (ExecutionStatus = {}));
62
+ /**
63
+ * Execution error codes for categorizing failures
64
+ */
65
+ export var ExecutionErrorCode;
66
+ (function (ExecutionErrorCode) {
67
+ ExecutionErrorCode["UNKNOWN_ERROR"] = "UNKNOWN_ERROR";
68
+ ExecutionErrorCode["EXECUTION_FAILED"] = "EXECUTION_FAILED";
69
+ ExecutionErrorCode["TIMEOUT_ERROR"] = "TIMEOUT_ERROR";
70
+ ExecutionErrorCode["MEMORY_LIMIT_EXCEEDED"] = "MEMORY_LIMIT_EXCEEDED";
71
+ ExecutionErrorCode["LLM_CALL_LIMIT_EXCEEDED"] = "LLM_CALL_LIMIT_EXCEEDED";
72
+ ExecutionErrorCode["HTTP_CALL_LIMIT_EXCEEDED"] = "HTTP_CALL_LIMIT_EXCEEDED";
73
+ ExecutionErrorCode["SECURITY_VIOLATION"] = "SECURITY_VIOLATION";
74
+ ExecutionErrorCode["VALIDATION_FAILED"] = "VALIDATION_FAILED";
75
+ ExecutionErrorCode["FORBIDDEN_OPERATION"] = "FORBIDDEN_OPERATION";
76
+ ExecutionErrorCode["PARSE_ERROR"] = "PARSE_ERROR";
77
+ ExecutionErrorCode["SYNTAX_ERROR"] = "SYNTAX_ERROR";
78
+ ExecutionErrorCode["TYPE_ERROR"] = "TYPE_ERROR";
79
+ ExecutionErrorCode["REFERENCE_ERROR"] = "REFERENCE_ERROR";
80
+ ExecutionErrorCode["INFINITE_LOOP_DETECTED"] = "INFINITE_LOOP_DETECTED";
81
+ ExecutionErrorCode["LOOP_TIMEOUT"] = "LOOP_TIMEOUT";
82
+ ExecutionErrorCode["NETWORK_ERROR"] = "NETWORK_ERROR";
83
+ ExecutionErrorCode["HTTP_ERROR"] = "HTTP_ERROR";
84
+ ExecutionErrorCode["DNS_ERROR"] = "DNS_ERROR";
85
+ ExecutionErrorCode["RATE_LIMIT_EXCEEDED"] = "RATE_LIMIT_EXCEEDED";
86
+ ExecutionErrorCode["CONCURRENT_LIMIT_EXCEEDED"] = "CONCURRENT_LIMIT_EXCEEDED";
87
+ })(ExecutionErrorCode || (ExecutionErrorCode = {}));
88
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAuB,MAAM,iCAAiC,CAAC;AAEtF;;GAEG;AACH,MAAM,CAAN,IAAY,YAKX;AALD,WAAY,YAAY;IACvB,2BAAW,CAAA;IACX,qCAAqB,CAAA;IACrB,uCAAuB,CAAA;IACvB,6BAAa,CAAA;AACd,CAAC,EALW,YAAY,KAAZ,YAAY,QAKvB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,aAEX;AAFD,WAAY,aAAa;IACxB,8BAAa,CAAA;AACd,CAAC,EAFW,aAAa,KAAb,aAAa,QAExB;AAqID;;GAEG;AACH,MAAM,CAAN,IAAY,iBAOX;AAPD,WAAY,iBAAiB;IAC5B,gCAAgC;IAChC,kCAAa,CAAA;IACb,kCAAkC;IAClC,oCAAe,CAAA;IACf,6CAA6C;IAC7C,gDAA2B,CAAA;AAC5B,CAAC,EAPW,iBAAiB,KAAjB,iBAAiB,QAO5B;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,oBAOX;AAPD,WAAY,oBAAoB;IAC/B,2CAA2C;IAC3C,yCAAiB,CAAA;IACjB,6CAA6C;IAC7C,6CAAqB,CAAA;IACrB,iDAAiD;IACjD,+CAAuB,CAAA;AACxB,CAAC,EAPW,oBAAoB,KAApB,oBAAoB,QAO/B;AA4GD;;GAEG;AACH,MAAM,CAAN,IAAY,eAcX;AAdD,WAAY,eAAe;IAC1B,0CAAuB,CAAA;IACvB,oCAAiB,CAAA;IACjB,sCAAmB,CAAA;IACnB,0CAAuB,CAAA;IACvB,oCAAiB,CAAA;IACjB,sDAAmC,CAAA;IACnC,4DAAyC,CAAA;IACzC,4DAAyC,CAAA;IACzC,0DAAuC,CAAA;IACvC,kDAA+B,CAAA;IAC/B,gDAA6B,CAAA;IAC7B,kDAA+B,CAAA;IAC/B,8CAA2B,CAAA;AAC5B,CAAC,EAdW,eAAe,KAAf,eAAe,QAc1B;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,kBA2BX;AA3BD,WAAY,kBAAkB;IAC7B,qDAA+B,CAAA;IAC/B,2DAAqC,CAAA;IACrC,qDAA+B,CAAA;IAE/B,qEAA+C,CAAA;IAC/C,yEAAmD,CAAA;IACnD,2EAAqD,CAAA;IAErD,+DAAyC,CAAA;IACzC,6DAAuC,CAAA;IACvC,iEAA2C,CAAA;IAE3C,iDAA2B,CAAA;IAC3B,mDAA6B,CAAA;IAC7B,+CAAyB,CAAA;IACzB,yDAAmC,CAAA;IAEnC,uEAAiD,CAAA;IACjD,mDAA6B,CAAA;IAE7B,qDAA+B,CAAA;IAC/B,+CAAyB,CAAA;IACzB,6CAAuB,CAAA;IAEvB,iEAA2C,CAAA;IAC3C,6EAAuD,CAAA;AACxD,CAAC,EA3BW,kBAAkB,KAAlB,kBAAkB,QA2B7B"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Input validation utilities for ExecutionConfig and other types
3
+ */
4
+ import { z } from 'zod';
5
+ import type { ExecutionConfig } from './types.js';
6
+ /**
7
+ * Maximum allowed code size (1MB)
8
+ */
9
+ export declare const MAX_CODE_SIZE = 1000000;
10
+ export declare class ConfigValidationError extends Error {
11
+ readonly field: string;
12
+ readonly value: unknown;
13
+ constructor(message: string, field: string, value: unknown);
14
+ }
15
+ export declare class SecurityViolationError extends Error {
16
+ readonly violations: string[];
17
+ constructor(message: string, violations: string[]);
18
+ }
19
+ /**
20
+ * Sanitizes input string by removing control characters and normalizing whitespace
21
+ */
22
+ export declare function sanitizeInput(input: string, maxLength?: number): string;
23
+ /**
24
+ * Frames user code in a secure execution context to prevent injection attacks
25
+ * Similar to SQL parameterized queries - treats user code as data within a safe boundary
26
+ */
27
+ export declare function frameCodeExecution(userCode: string): string;
28
+ /**
29
+ * Zod schema for ExecutionConfig validation
30
+ */
31
+ export declare const executionConfigSchema: z.ZodObject<{
32
+ timeout: z.ZodOptional<z.ZodNumber>;
33
+ maxMemory: z.ZodOptional<z.ZodNumber>;
34
+ maxLLMCalls: z.ZodOptional<z.ZodNumber>;
35
+ allowedAPIs: z.ZodOptional<z.ZodArray<z.ZodEffects<z.ZodString, string, string>, "many">>;
36
+ allowLLMCalls: z.ZodOptional<z.ZodBoolean>;
37
+ progressCallback: z.ZodOptional<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodUnknown>>;
38
+ customLLMHandler: z.ZodOptional<z.ZodFunction<z.ZodTuple<[], z.ZodUnknown>, z.ZodUnknown>>;
39
+ clientServices: z.ZodOptional<z.ZodAny>;
40
+ provenanceMode: z.ZodOptional<z.ZodAny>;
41
+ securityPolicies: z.ZodOptional<z.ZodArray<z.ZodAny, "many">>;
42
+ provenanceHints: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
43
+ }, "strip", z.ZodTypeAny, {
44
+ timeout?: number | undefined;
45
+ maxMemory?: number | undefined;
46
+ maxLLMCalls?: number | undefined;
47
+ allowedAPIs?: string[] | undefined;
48
+ allowLLMCalls?: boolean | undefined;
49
+ progressCallback?: ((...args: unknown[]) => unknown) | undefined;
50
+ customLLMHandler?: ((...args: unknown[]) => unknown) | undefined;
51
+ clientServices?: any;
52
+ provenanceMode?: any;
53
+ securityPolicies?: any[] | undefined;
54
+ provenanceHints?: string[] | undefined;
55
+ }, {
56
+ timeout?: number | undefined;
57
+ maxMemory?: number | undefined;
58
+ maxLLMCalls?: number | undefined;
59
+ allowedAPIs?: string[] | undefined;
60
+ allowLLMCalls?: boolean | undefined;
61
+ progressCallback?: ((...args: unknown[]) => unknown) | undefined;
62
+ customLLMHandler?: ((...args: unknown[]) => unknown) | undefined;
63
+ clientServices?: any;
64
+ provenanceMode?: any;
65
+ securityPolicies?: any[] | undefined;
66
+ provenanceHints?: string[] | undefined;
67
+ }>;
68
+ /**
69
+ * Validates ExecutionConfig parameters using Zod
70
+ */
71
+ export declare function validateExecutionConfig(config: Partial<ExecutionConfig>): void;
72
+ /**
73
+ * Validates client ID format
74
+ */
75
+ export declare function validateClientId(clientId: string): void;
76
+ //# sourceMappingURL=validation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../src/validation.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,aAAa,UAAU,CAAC;AAErC,qBAAa,qBAAsB,SAAQ,KAAK;aAG9B,KAAK,EAAE,MAAM;aACb,KAAK,EAAE,OAAO;gBAF9B,OAAO,EAAE,MAAM,EACC,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,OAAO;CAK/B;AAED,qBAAa,sBAAuB,SAAQ,KAAK;aAG/B,UAAU,EAAE,MAAM,EAAE;gBADpC,OAAO,EAAE,MAAM,EACC,UAAU,EAAE,MAAM,EAAE;CAKrC;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,SAAgB,GAAG,MAAM,CAgB9E;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAS3D;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6ChC,CAAC;AAEH;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI,CAc9E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAoBvD"}