jiva-core 0.2.3 → 0.3.2
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/.dockerignore +53 -0
- package/.gcloudignore +49 -0
- package/CONTRIBUTING.md +92 -0
- package/Dockerfile +63 -0
- package/README.md +250 -88
- package/cloud-run-deploy.yaml +135 -0
- package/cloud-run.yaml +135 -0
- package/cloud-run.yaml.template +143 -0
- package/deploy.sh +107 -0
- package/dist/core/agent-spawner.d.ts +89 -0
- package/dist/core/agent-spawner.d.ts.map +1 -0
- package/dist/core/agent-spawner.js +208 -0
- package/dist/core/agent-spawner.js.map +1 -0
- package/dist/core/agent.js +1 -1
- package/dist/core/agent.js.map +1 -1
- package/dist/core/client-agent.d.ts +103 -0
- package/dist/core/client-agent.d.ts.map +1 -0
- package/dist/core/client-agent.js +659 -0
- package/dist/core/client-agent.js.map +1 -0
- package/dist/core/config.d.ts +59 -10
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +19 -2
- package/dist/core/config.js.map +1 -1
- package/dist/core/conversation-manager.d.ts +10 -18
- package/dist/core/conversation-manager.d.ts.map +1 -1
- package/dist/core/conversation-manager.js +31 -63
- package/dist/core/conversation-manager.js.map +1 -1
- package/dist/core/dual-agent.d.ts +22 -3
- package/dist/core/dual-agent.d.ts.map +1 -1
- package/dist/core/dual-agent.js +86 -10
- package/dist/core/dual-agent.js.map +1 -1
- package/dist/core/manager-agent.d.ts +16 -1
- package/dist/core/manager-agent.d.ts.map +1 -1
- package/dist/core/manager-agent.js +127 -44
- package/dist/core/manager-agent.js.map +1 -1
- package/dist/core/worker-agent.d.ts +9 -1
- package/dist/core/worker-agent.d.ts.map +1 -1
- package/dist/core/worker-agent.js +169 -14
- package/dist/core/worker-agent.js.map +1 -1
- package/dist/core/workspace.d.ts +5 -0
- package/dist/core/workspace.d.ts.map +1 -1
- package/dist/core/workspace.js +47 -7
- package/dist/core/workspace.js.map +1 -1
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/interfaces/cli/index.js +349 -42
- package/dist/interfaces/cli/index.js.map +1 -1
- package/dist/interfaces/http/index.d.ts +22 -0
- package/dist/interfaces/http/index.d.ts.map +1 -0
- package/dist/interfaces/http/index.js +135 -0
- package/dist/interfaces/http/index.js.map +1 -0
- package/dist/interfaces/http/middleware/auth.d.ts +32 -0
- package/dist/interfaces/http/middleware/auth.d.ts.map +1 -0
- package/dist/interfaces/http/middleware/auth.js +176 -0
- package/dist/interfaces/http/middleware/auth.js.map +1 -0
- package/dist/interfaces/http/routes/chat.d.ts +7 -0
- package/dist/interfaces/http/routes/chat.d.ts.map +1 -0
- package/dist/interfaces/http/routes/chat.js +144 -0
- package/dist/interfaces/http/routes/chat.js.map +1 -0
- package/dist/interfaces/http/routes/health.d.ts +6 -0
- package/dist/interfaces/http/routes/health.d.ts.map +1 -0
- package/dist/interfaces/http/routes/health.js +25 -0
- package/dist/interfaces/http/routes/health.js.map +1 -0
- package/dist/interfaces/http/routes/session.d.ts +7 -0
- package/dist/interfaces/http/routes/session.d.ts.map +1 -0
- package/dist/interfaces/http/routes/session.js +114 -0
- package/dist/interfaces/http/routes/session.js.map +1 -0
- package/dist/interfaces/http/session-manager.d.ts +76 -0
- package/dist/interfaces/http/session-manager.d.ts.map +1 -0
- package/dist/interfaces/http/session-manager.js +350 -0
- package/dist/interfaces/http/session-manager.js.map +1 -0
- package/dist/interfaces/http/websocket-handler.d.ts +18 -0
- package/dist/interfaces/http/websocket-handler.d.ts.map +1 -0
- package/dist/interfaces/http/websocket-handler.js +146 -0
- package/dist/interfaces/http/websocket-handler.js.map +1 -0
- package/dist/mcp/client.d.ts +11 -2
- package/dist/mcp/client.d.ts.map +1 -1
- package/dist/mcp/client.js +44 -19
- package/dist/mcp/client.js.map +1 -1
- package/dist/mcp/server-manager.d.ts +1 -1
- package/dist/mcp/server-manager.d.ts.map +1 -1
- package/dist/mcp/server-manager.js +12 -2
- package/dist/mcp/server-manager.js.map +1 -1
- package/dist/models/krutrim.js +1 -1
- package/dist/models/krutrim.js.map +1 -1
- package/dist/personas/index.d.ts +13 -0
- package/dist/personas/index.d.ts.map +1 -0
- package/dist/personas/index.js +13 -0
- package/dist/personas/index.js.map +1 -0
- package/dist/personas/persona-loader.d.ts +30 -0
- package/dist/personas/persona-loader.d.ts.map +1 -0
- package/dist/personas/persona-loader.js +246 -0
- package/dist/personas/persona-loader.js.map +1 -0
- package/dist/personas/persona-manager.d.ts +93 -0
- package/dist/personas/persona-manager.d.ts.map +1 -0
- package/dist/personas/persona-manager.js +268 -0
- package/dist/personas/persona-manager.js.map +1 -0
- package/dist/personas/skill-loader.d.ts +35 -0
- package/dist/personas/skill-loader.d.ts.map +1 -0
- package/dist/personas/skill-loader.js +144 -0
- package/dist/personas/skill-loader.js.map +1 -0
- package/dist/personas/skill-packager.d.ts +25 -0
- package/dist/personas/skill-packager.d.ts.map +1 -0
- package/dist/personas/skill-packager.js +233 -0
- package/dist/personas/skill-packager.js.map +1 -0
- package/dist/personas/types.d.ts +134 -0
- package/dist/personas/types.d.ts.map +1 -0
- package/dist/personas/types.js +7 -0
- package/dist/personas/types.js.map +1 -0
- package/dist/personas/validator.d.ts +22 -0
- package/dist/personas/validator.d.ts.map +1 -0
- package/dist/personas/validator.js +144 -0
- package/dist/personas/validator.js.map +1 -0
- package/dist/storage/factory.d.ts +51 -0
- package/dist/storage/factory.d.ts.map +1 -0
- package/dist/storage/factory.js +154 -0
- package/dist/storage/factory.js.map +1 -0
- package/dist/storage/gcp-bucket-provider.d.ts +60 -0
- package/dist/storage/gcp-bucket-provider.d.ts.map +1 -0
- package/dist/storage/gcp-bucket-provider.js +292 -0
- package/dist/storage/gcp-bucket-provider.js.map +1 -0
- package/dist/storage/index.d.ts +33 -0
- package/dist/storage/index.d.ts.map +1 -0
- package/dist/storage/index.js +37 -0
- package/dist/storage/index.js.map +1 -0
- package/dist/storage/local-provider.d.ts +37 -0
- package/dist/storage/local-provider.d.ts.map +1 -0
- package/dist/storage/local-provider.js +228 -0
- package/dist/storage/local-provider.js.map +1 -0
- package/dist/storage/provider.d.ts +142 -0
- package/dist/storage/provider.d.ts.map +1 -0
- package/dist/storage/provider.js +136 -0
- package/dist/storage/provider.js.map +1 -0
- package/dist/storage/types.d.ts +78 -0
- package/dist/storage/types.d.ts.map +1 -0
- package/dist/storage/types.js +14 -0
- package/dist/storage/types.js.map +1 -0
- package/dist/utils/logger.d.ts +19 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +49 -1
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/orchestration-logger.d.ts +27 -3
- package/dist/utils/orchestration-logger.d.ts.map +1 -1
- package/dist/utils/orchestration-logger.js +110 -6
- package/dist/utils/orchestration-logger.js.map +1 -1
- package/package.json +30 -2
- package/.fluen/cache/state.json +0 -7
- package/actions/action_registry.py +0 -75
- package/actions/python_coder.py +0 -470
- package/api/main.py +0 -269
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"local-provider.js","sourceRoot":"","sources":["../../src/storage/local-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* StorageProvider - Abstract interface for state persistence
|
|
3
|
+
*
|
|
4
|
+
* Enables Jiva to run on:
|
|
5
|
+
* - Local filesystem (CLI, Desktop)
|
|
6
|
+
* - Cloud storage (GCP Bucket, AWS S3)
|
|
7
|
+
* - In-memory caches (Redis)
|
|
8
|
+
*
|
|
9
|
+
* IMPORTANT: Context (tenantId, sessionId) must be set before operations
|
|
10
|
+
* - CLI mode: Uses defaults automatically
|
|
11
|
+
* - Cloud mode: Must call setContext() with values from JWT/auth
|
|
12
|
+
*/
|
|
13
|
+
import { StorageInfraConfig, StorageContext, SavedConversation, ConversationMetadata, LogEntry, JivaState } from './types.js';
|
|
14
|
+
export declare abstract class StorageProvider {
|
|
15
|
+
protected infraConfig: StorageInfraConfig;
|
|
16
|
+
protected context: StorageContext | null;
|
|
17
|
+
protected logBuffer: LogEntry[];
|
|
18
|
+
protected initialized: boolean;
|
|
19
|
+
constructor(infraConfig: StorageInfraConfig);
|
|
20
|
+
/**
|
|
21
|
+
* Initialize the storage provider (connect, verify access, etc.)
|
|
22
|
+
*/
|
|
23
|
+
abstract initialize(): Promise<void>;
|
|
24
|
+
/**
|
|
25
|
+
* Check if provider is ready
|
|
26
|
+
*/
|
|
27
|
+
isInitialized(): boolean;
|
|
28
|
+
/**
|
|
29
|
+
* Set the tenant and session context
|
|
30
|
+
* MUST be called before any tenant-specific operations in cloud mode
|
|
31
|
+
*
|
|
32
|
+
* @param context - Contains tenantId and sessionId from authenticated request
|
|
33
|
+
*/
|
|
34
|
+
setContext(context: StorageContext): void;
|
|
35
|
+
/**
|
|
36
|
+
* Get current context
|
|
37
|
+
*/
|
|
38
|
+
getContext(): StorageContext | null;
|
|
39
|
+
/**
|
|
40
|
+
* Check if context is set and valid
|
|
41
|
+
*/
|
|
42
|
+
hasContext(): boolean;
|
|
43
|
+
/**
|
|
44
|
+
* Ensure context is set before operations
|
|
45
|
+
* @throws Error if context not set
|
|
46
|
+
*/
|
|
47
|
+
protected requireContext(): StorageContext;
|
|
48
|
+
/**
|
|
49
|
+
* Get a configuration value
|
|
50
|
+
*/
|
|
51
|
+
abstract getConfig<T>(key: string): Promise<T | undefined>;
|
|
52
|
+
/**
|
|
53
|
+
* Set a configuration value
|
|
54
|
+
*/
|
|
55
|
+
abstract setConfig<T>(key: string, value: T): Promise<void>;
|
|
56
|
+
/**
|
|
57
|
+
* Get all configuration as object
|
|
58
|
+
*/
|
|
59
|
+
abstract getAllConfig(): Promise<Record<string, any>>;
|
|
60
|
+
/**
|
|
61
|
+
* Save a conversation
|
|
62
|
+
* @returns The conversation ID
|
|
63
|
+
*/
|
|
64
|
+
abstract saveConversation(conversation: SavedConversation): Promise<string>;
|
|
65
|
+
/**
|
|
66
|
+
* Load a conversation by ID
|
|
67
|
+
*/
|
|
68
|
+
abstract loadConversation(id: string): Promise<SavedConversation | null>;
|
|
69
|
+
/**
|
|
70
|
+
* List all conversations for the tenant
|
|
71
|
+
*/
|
|
72
|
+
abstract listConversations(): Promise<ConversationMetadata[]>;
|
|
73
|
+
/**
|
|
74
|
+
* Delete a conversation
|
|
75
|
+
*/
|
|
76
|
+
abstract deleteConversation(id: string): Promise<void>;
|
|
77
|
+
/**
|
|
78
|
+
* Load directive content for a workspace
|
|
79
|
+
* @param workspacePath - The workspace identifier/path
|
|
80
|
+
*/
|
|
81
|
+
abstract loadDirective(workspacePath: string): Promise<string | undefined>;
|
|
82
|
+
/**
|
|
83
|
+
* Save directive content (for cloud scenarios where directive is uploaded)
|
|
84
|
+
*/
|
|
85
|
+
abstract saveDirective(workspacePath: string, content: string): Promise<void>;
|
|
86
|
+
/**
|
|
87
|
+
* Append a log entry to the buffer
|
|
88
|
+
* Logs are held in memory until flush() is called
|
|
89
|
+
*/
|
|
90
|
+
appendLog(entry: LogEntry): void;
|
|
91
|
+
/**
|
|
92
|
+
* Append raw string content to a log file (for orchestration logs)
|
|
93
|
+
* This is separate from appendLog() which buffers structured LogEntry objects
|
|
94
|
+
*/
|
|
95
|
+
abstract appendToLog(key: string, content: string): Promise<void>;
|
|
96
|
+
/**
|
|
97
|
+
* Flush buffered logs to persistent storage
|
|
98
|
+
*/
|
|
99
|
+
abstract flushLogs(): Promise<void>;
|
|
100
|
+
/**
|
|
101
|
+
* Get current log buffer (for debugging)
|
|
102
|
+
*/
|
|
103
|
+
getLogBuffer(): LogEntry[];
|
|
104
|
+
/**
|
|
105
|
+
* Clear the log buffer
|
|
106
|
+
*/
|
|
107
|
+
clearLogBuffer(): void;
|
|
108
|
+
/**
|
|
109
|
+
* Export complete state for cloud function handoff
|
|
110
|
+
*/
|
|
111
|
+
abstract exportState(): Promise<JivaState>;
|
|
112
|
+
/**
|
|
113
|
+
* Import state from a previous export
|
|
114
|
+
*/
|
|
115
|
+
abstract importState(state: JivaState): Promise<void>;
|
|
116
|
+
/**
|
|
117
|
+
* Get the base path for a tenant
|
|
118
|
+
* Format: {tenantId}/
|
|
119
|
+
*/
|
|
120
|
+
protected getTenantPath(): string;
|
|
121
|
+
/**
|
|
122
|
+
* Get the path for a session
|
|
123
|
+
* Format: {tenantId}/sessions/{sessionId}/
|
|
124
|
+
*/
|
|
125
|
+
protected getSessionPath(): string;
|
|
126
|
+
/**
|
|
127
|
+
* Get the path for conversations
|
|
128
|
+
* Format: {tenantId}/conversations/
|
|
129
|
+
*/
|
|
130
|
+
protected getConversationsPath(): string;
|
|
131
|
+
/**
|
|
132
|
+
* Get the path for config
|
|
133
|
+
* Format: {tenantId}/config.json
|
|
134
|
+
*/
|
|
135
|
+
protected getConfigPath(): string;
|
|
136
|
+
/**
|
|
137
|
+
* Get the path for logs
|
|
138
|
+
* Format: {tenantId}/logs/{sessionId}/
|
|
139
|
+
*/
|
|
140
|
+
protected getLogsPath(): string;
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/storage/provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* StorageProvider - Abstract interface for state persistence
|
|
3
|
+
*
|
|
4
|
+
* Enables Jiva to run on:
|
|
5
|
+
* - Local filesystem (CLI, Desktop)
|
|
6
|
+
* - Cloud storage (GCP Bucket, AWS S3)
|
|
7
|
+
* - In-memory caches (Redis)
|
|
8
|
+
*
|
|
9
|
+
* IMPORTANT: Context (tenantId, sessionId) must be set before operations
|
|
10
|
+
* - CLI mode: Uses defaults automatically
|
|
11
|
+
* - Cloud mode: Must call setContext() with values from JWT/auth
|
|
12
|
+
*/
|
|
13
|
+
export class StorageProvider {
|
|
14
|
+
infraConfig;
|
|
15
|
+
context = null;
|
|
16
|
+
logBuffer = [];
|
|
17
|
+
initialized = false;
|
|
18
|
+
constructor(infraConfig) {
|
|
19
|
+
this.infraConfig = infraConfig;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Check if provider is ready
|
|
23
|
+
*/
|
|
24
|
+
isInitialized() {
|
|
25
|
+
return this.initialized;
|
|
26
|
+
}
|
|
27
|
+
// ─────────────────────────────────────────────────────────────
|
|
28
|
+
// Context Management (CRITICAL for multi-tenancy)
|
|
29
|
+
// ─────────────────────────────────────────────────────────────
|
|
30
|
+
/**
|
|
31
|
+
* Set the tenant and session context
|
|
32
|
+
* MUST be called before any tenant-specific operations in cloud mode
|
|
33
|
+
*
|
|
34
|
+
* @param context - Contains tenantId and sessionId from authenticated request
|
|
35
|
+
*/
|
|
36
|
+
setContext(context) {
|
|
37
|
+
if (!context.tenantId || !context.sessionId) {
|
|
38
|
+
throw new Error('Both tenantId and sessionId are required in StorageContext');
|
|
39
|
+
}
|
|
40
|
+
this.context = context;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Get current context
|
|
44
|
+
*/
|
|
45
|
+
getContext() {
|
|
46
|
+
return this.context;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Check if context is set and valid
|
|
50
|
+
*/
|
|
51
|
+
hasContext() {
|
|
52
|
+
return this.context !== null &&
|
|
53
|
+
!!this.context.tenantId &&
|
|
54
|
+
!!this.context.sessionId;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Ensure context is set before operations
|
|
58
|
+
* @throws Error if context not set
|
|
59
|
+
*/
|
|
60
|
+
requireContext() {
|
|
61
|
+
if (!this.context) {
|
|
62
|
+
throw new Error('Storage context not set. Call setContext({tenantId, sessionId}) before performing operations. ' +
|
|
63
|
+
'In cloud mode, extract these from the authenticated JWT.');
|
|
64
|
+
}
|
|
65
|
+
return this.context;
|
|
66
|
+
}
|
|
67
|
+
// ─────────────────────────────────────────────────────────────
|
|
68
|
+
// Logging (session-level, buffered)
|
|
69
|
+
// ─────────────────────────────────────────────────────────────
|
|
70
|
+
/**
|
|
71
|
+
* Append a log entry to the buffer
|
|
72
|
+
* Logs are held in memory until flush() is called
|
|
73
|
+
*/
|
|
74
|
+
appendLog(entry) {
|
|
75
|
+
this.logBuffer.push({
|
|
76
|
+
...entry,
|
|
77
|
+
timestamp: entry.timestamp || new Date().toISOString(),
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Get current log buffer (for debugging)
|
|
82
|
+
*/
|
|
83
|
+
getLogBuffer() {
|
|
84
|
+
return [...this.logBuffer];
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Clear the log buffer
|
|
88
|
+
*/
|
|
89
|
+
clearLogBuffer() {
|
|
90
|
+
this.logBuffer = [];
|
|
91
|
+
}
|
|
92
|
+
// ─────────────────────────────────────────────────────────────
|
|
93
|
+
// Path Helpers (for implementations)
|
|
94
|
+
// ─────────────────────────────────────────────────────────────
|
|
95
|
+
/**
|
|
96
|
+
* Get the base path for a tenant
|
|
97
|
+
* Format: {tenantId}/
|
|
98
|
+
*/
|
|
99
|
+
getTenantPath() {
|
|
100
|
+
const ctx = this.requireContext();
|
|
101
|
+
return `${ctx.tenantId}/`;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Get the path for a session
|
|
105
|
+
* Format: {tenantId}/sessions/{sessionId}/
|
|
106
|
+
*/
|
|
107
|
+
getSessionPath() {
|
|
108
|
+
const ctx = this.requireContext();
|
|
109
|
+
return `${ctx.tenantId}/sessions/${ctx.sessionId}/`;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Get the path for conversations
|
|
113
|
+
* Format: {tenantId}/conversations/
|
|
114
|
+
*/
|
|
115
|
+
getConversationsPath() {
|
|
116
|
+
const ctx = this.requireContext();
|
|
117
|
+
return `${ctx.tenantId}/conversations/`;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Get the path for config
|
|
121
|
+
* Format: {tenantId}/config.json
|
|
122
|
+
*/
|
|
123
|
+
getConfigPath() {
|
|
124
|
+
const ctx = this.requireContext();
|
|
125
|
+
return `${ctx.tenantId}/config.json`;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Get the path for logs
|
|
129
|
+
* Format: {tenantId}/logs/{sessionId}/
|
|
130
|
+
*/
|
|
131
|
+
getLogsPath() {
|
|
132
|
+
const ctx = this.requireContext();
|
|
133
|
+
return `${ctx.tenantId}/logs/${ctx.sessionId}/`;
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
//# sourceMappingURL=provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/storage/provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAWH,MAAM,OAAgB,eAAe;IACzB,WAAW,CAAqB;IAChC,OAAO,GAA0B,IAAI,CAAC;IACtC,SAAS,GAAe,EAAE,CAAC;IAC3B,WAAW,GAAY,KAAK,CAAC;IAEvC,YAAY,WAA+B;QACzC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAOD;;OAEG;IACH,aAAa;QACX,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,gEAAgE;IAChE,kDAAkD;IAClD,gEAAgE;IAEhE;;;;;OAKG;IACH,UAAU,CAAC,OAAuB;QAChC,IAAI,CAAC,OAAO,CAAC,QAAQ,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YAC5C,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;QAChF,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,KAAK,IAAI;YACrB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ;YACvB,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;IAClC,CAAC;IAED;;;OAGG;IACO,cAAc;QACtB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACb,gGAAgG;gBAChG,0DAA0D,CAC3D,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IA6DD,gEAAgE;IAChE,oCAAoC;IACpC,gEAAgE;IAEhE;;;OAGG;IACH,SAAS,CAAC,KAAe;QACvB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAClB,GAAG,KAAK;YACR,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACvD,CAAC,CAAC;IACL,CAAC;IAaD;;OAEG;IACH,YAAY;QACV,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;IACtB,CAAC;IAgBD,gEAAgE;IAChE,qCAAqC;IACrC,gEAAgE;IAEhE;;;OAGG;IACO,aAAa;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAClC,OAAO,GAAG,GAAG,CAAC,QAAQ,GAAG,CAAC;IAC5B,CAAC;IAED;;;OAGG;IACO,cAAc;QACtB,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAClC,OAAO,GAAG,GAAG,CAAC,QAAQ,aAAa,GAAG,CAAC,SAAS,GAAG,CAAC;IACtD,CAAC;IAED;;;OAGG;IACO,oBAAoB;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAClC,OAAO,GAAG,GAAG,CAAC,QAAQ,iBAAiB,CAAC;IAC1C,CAAC;IAED;;;OAGG;IACO,aAAa;QACrB,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAClC,OAAO,GAAG,GAAG,CAAC,QAAQ,cAAc,CAAC;IACvC,CAAC;IAED;;;OAGG;IACO,WAAW;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAClC,OAAO,GAAG,GAAG,CAAC,QAAQ,SAAS,GAAG,CAAC,SAAS,GAAG,CAAC;IAClD,CAAC;CACF"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Storage Types - Core type definitions for the storage abstraction layer
|
|
3
|
+
*/
|
|
4
|
+
import { Message } from '../models/base.js';
|
|
5
|
+
/**
|
|
6
|
+
* Tenant and session identification for multi-tenancy support
|
|
7
|
+
* These MUST be provided by the caller (from JWT, API key, etc.) in cloud mode
|
|
8
|
+
* In CLI mode, defaults are used for backward compatibility
|
|
9
|
+
*/
|
|
10
|
+
export interface StorageContext {
|
|
11
|
+
tenantId: string;
|
|
12
|
+
sessionId: string;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Conversation metadata (lightweight, for listing)
|
|
16
|
+
*/
|
|
17
|
+
export interface ConversationMetadata {
|
|
18
|
+
id: string;
|
|
19
|
+
title?: string;
|
|
20
|
+
created: string;
|
|
21
|
+
updated: string;
|
|
22
|
+
messageCount: number;
|
|
23
|
+
workspace?: string;
|
|
24
|
+
summary?: string;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Full conversation with messages
|
|
28
|
+
*/
|
|
29
|
+
export interface SavedConversation {
|
|
30
|
+
metadata: ConversationMetadata;
|
|
31
|
+
messages: Message[];
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Log entry for orchestration events
|
|
35
|
+
*/
|
|
36
|
+
export interface LogEntry {
|
|
37
|
+
timestamp: string;
|
|
38
|
+
level: 'debug' | 'info' | 'warn' | 'error';
|
|
39
|
+
event: string;
|
|
40
|
+
data?: Record<string, any>;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Complete Jiva state snapshot for cloud function state transfer
|
|
44
|
+
*/
|
|
45
|
+
export interface JivaState {
|
|
46
|
+
version: string;
|
|
47
|
+
tenantId: string;
|
|
48
|
+
sessionId: string;
|
|
49
|
+
exportedAt: string;
|
|
50
|
+
config: Record<string, any>;
|
|
51
|
+
conversation: SavedConversation | null;
|
|
52
|
+
directive?: string;
|
|
53
|
+
logBuffer: LogEntry[];
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Infrastructure configuration for storage providers
|
|
57
|
+
* These come from environment variables or deployment config
|
|
58
|
+
* NOT from user requests - these are deployment-time settings
|
|
59
|
+
*/
|
|
60
|
+
export interface StorageInfraConfig {
|
|
61
|
+
basePath?: string;
|
|
62
|
+
gcpBucketName?: string;
|
|
63
|
+
gcpProjectId?: string;
|
|
64
|
+
gcpKeyFilePath?: string;
|
|
65
|
+
s3BucketName?: string;
|
|
66
|
+
s3Region?: string;
|
|
67
|
+
redisUrl?: string;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Provider type enum
|
|
71
|
+
*/
|
|
72
|
+
export declare enum StorageProviderType {
|
|
73
|
+
LOCAL = "local",
|
|
74
|
+
GCP_BUCKET = "gcp-bucket",
|
|
75
|
+
AWS_S3 = "aws-s3",
|
|
76
|
+
REDIS = "redis"
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/storage/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5C;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,oBAAoB,CAAC;IAC/B,QAAQ,EAAE,OAAO,EAAE,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IAGnB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAG5B,YAAY,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAGvC,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,SAAS,EAAE,QAAQ,EAAE,CAAC;CACvB;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IAEjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IAGxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,oBAAY,mBAAmB;IAC7B,KAAK,UAAU;IACf,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,KAAK,UAAU;CAChB"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Storage Types - Core type definitions for the storage abstraction layer
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Provider type enum
|
|
6
|
+
*/
|
|
7
|
+
export var StorageProviderType;
|
|
8
|
+
(function (StorageProviderType) {
|
|
9
|
+
StorageProviderType["LOCAL"] = "local";
|
|
10
|
+
StorageProviderType["GCP_BUCKET"] = "gcp-bucket";
|
|
11
|
+
StorageProviderType["AWS_S3"] = "aws-s3";
|
|
12
|
+
StorageProviderType["REDIS"] = "redis";
|
|
13
|
+
})(StorageProviderType || (StorageProviderType = {}));
|
|
14
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/storage/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAyFH;;GAEG;AACH,MAAM,CAAN,IAAY,mBAKX;AALD,WAAY,mBAAmB;IAC7B,sCAAe,CAAA;IACf,gDAAyB,CAAA;IACzB,wCAAiB,CAAA;IACjB,sCAAe,CAAA;AACjB,CAAC,EALW,mBAAmB,KAAnB,mBAAmB,QAK9B"}
|
package/dist/utils/logger.d.ts
CHANGED
|
@@ -8,9 +8,28 @@ export declare enum LogLevel {
|
|
|
8
8
|
declare class Logger {
|
|
9
9
|
private static instance;
|
|
10
10
|
private logLevel;
|
|
11
|
+
private personaContext;
|
|
12
|
+
private sessionContexts;
|
|
13
|
+
private currentSessionId;
|
|
11
14
|
private constructor();
|
|
12
15
|
static getInstance(): Logger;
|
|
13
16
|
setLogLevel(level: LogLevel): void;
|
|
17
|
+
/**
|
|
18
|
+
* Set current session ID for multi-session environments (HTTP/Cloud)
|
|
19
|
+
*/
|
|
20
|
+
setSessionId(sessionId: string | null): void;
|
|
21
|
+
/**
|
|
22
|
+
* Set persona context for the current session or global
|
|
23
|
+
*/
|
|
24
|
+
setPersonaContext(persona: string | null): void;
|
|
25
|
+
/**
|
|
26
|
+
* Get persona context for the current session or global
|
|
27
|
+
*/
|
|
28
|
+
getPersonaContext(): string | null;
|
|
29
|
+
/**
|
|
30
|
+
* Clear session-specific context when session ends
|
|
31
|
+
*/
|
|
32
|
+
clearSessionContext(sessionId: string): void;
|
|
14
33
|
debug(message: string, ...args: any[]): void;
|
|
15
34
|
info(message: string, ...args: any[]): void;
|
|
16
35
|
warn(message: string, ...args: any[]): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAEA,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,IAAI,SAAS;IACb,KAAK,UAAU;IACf,OAAO,YAAY;CACpB;AAED,cAAM,MAAM;IACV,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAS;IAChC,OAAO,CAAC,QAAQ,CAA2B;
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAEA,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,IAAI,SAAS;IACb,IAAI,SAAS;IACb,KAAK,UAAU;IACf,OAAO,YAAY;CACpB;AAED,cAAM,MAAM;IACV,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAS;IAChC,OAAO,CAAC,QAAQ,CAA2B;IAC3C,OAAO,CAAC,cAAc,CAAuB;IAI7C,OAAO,CAAC,eAAe,CAAyC;IAChE,OAAO,CAAC,gBAAgB,CAAuB;IAE/C,OAAO;IAEP,MAAM,CAAC,WAAW,IAAI,MAAM;IAO5B,WAAW,CAAC,KAAK,EAAE,QAAQ;IAI3B;;OAEG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIrC;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAUxC;;OAEG;IACH,iBAAiB,IAAI,MAAM,GAAG,IAAI;IAUlC;;OAEG;IACH,mBAAmB,CAAC,SAAS,EAAE,MAAM;IAIrC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAIrC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAIpC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAIpC,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,OAAO,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAS9D,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;IAIvC,OAAO,CAAC,GAAG;IAwBX,OAAO,CAAC,SAAS;CAgBlB;AAED,eAAO,MAAM,MAAM,QAAuB,CAAC"}
|
package/dist/utils/logger.js
CHANGED
|
@@ -10,6 +10,11 @@ export var LogLevel;
|
|
|
10
10
|
class Logger {
|
|
11
11
|
static instance;
|
|
12
12
|
logLevel = LogLevel.INFO;
|
|
13
|
+
personaContext = null;
|
|
14
|
+
// Session-scoped persona contexts for concurrent HTTP sessions
|
|
15
|
+
// Key: sessionId, Value: persona name
|
|
16
|
+
sessionContexts = new Map();
|
|
17
|
+
currentSessionId = null;
|
|
13
18
|
constructor() { }
|
|
14
19
|
static getInstance() {
|
|
15
20
|
if (!Logger.instance) {
|
|
@@ -20,6 +25,44 @@ class Logger {
|
|
|
20
25
|
setLogLevel(level) {
|
|
21
26
|
this.logLevel = level;
|
|
22
27
|
}
|
|
28
|
+
/**
|
|
29
|
+
* Set current session ID for multi-session environments (HTTP/Cloud)
|
|
30
|
+
*/
|
|
31
|
+
setSessionId(sessionId) {
|
|
32
|
+
this.currentSessionId = sessionId;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Set persona context for the current session or global
|
|
36
|
+
*/
|
|
37
|
+
setPersonaContext(persona) {
|
|
38
|
+
if (this.currentSessionId) {
|
|
39
|
+
// Multi-session mode: store per-session context
|
|
40
|
+
this.sessionContexts.set(this.currentSessionId, persona);
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
// Single-session mode (CLI): use global context
|
|
44
|
+
this.personaContext = persona;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Get persona context for the current session or global
|
|
49
|
+
*/
|
|
50
|
+
getPersonaContext() {
|
|
51
|
+
if (this.currentSessionId) {
|
|
52
|
+
// Multi-session mode: get per-session context
|
|
53
|
+
return this.sessionContexts.get(this.currentSessionId) || null;
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
// Single-session mode (CLI): use global context
|
|
57
|
+
return this.personaContext;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Clear session-specific context when session ends
|
|
62
|
+
*/
|
|
63
|
+
clearSessionContext(sessionId) {
|
|
64
|
+
this.sessionContexts.delete(sessionId);
|
|
65
|
+
}
|
|
23
66
|
debug(message, ...args) {
|
|
24
67
|
this.log(LogLevel.DEBUG, message, ...args);
|
|
25
68
|
}
|
|
@@ -50,7 +93,12 @@ class Logger {
|
|
|
50
93
|
}
|
|
51
94
|
const timestamp = new Date().toISOString();
|
|
52
95
|
const prefix = this.getPrefix(level);
|
|
53
|
-
|
|
96
|
+
// Get persona context for current session (supports concurrent sessions)
|
|
97
|
+
const personaCtx = this.getPersonaContext();
|
|
98
|
+
const personaPrefix = personaCtx ? chalk.magenta(`[${personaCtx}]`) + ' ' : '';
|
|
99
|
+
// Add session ID prefix in multi-session mode
|
|
100
|
+
const sessionPrefix = this.currentSessionId ? chalk.cyan(`[${this.currentSessionId.substring(0, 8)}]`) + ' ' : '';
|
|
101
|
+
const formattedMessage = `${chalk.gray(timestamp)} ${prefix} ${sessionPrefix}${personaPrefix}${message}`;
|
|
54
102
|
console.log(formattedMessage, ...args);
|
|
55
103
|
}
|
|
56
104
|
getPrefix(level) {
|
package/dist/utils/logger.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAN,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,yBAAa,CAAA;IACb,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,+BAAmB,CAAA;AACrB,CAAC,EANW,QAAQ,KAAR,QAAQ,QAMnB;AAED,MAAM,MAAM;IACF,MAAM,CAAC,QAAQ,CAAS;IACxB,QAAQ,GAAa,QAAQ,CAAC,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,19 +1,36 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Orchestration Logger - Tracks Manager/Worker coordination
|
|
2
|
+
* Orchestration Logger - Tracks Manager/Worker/Client coordination
|
|
3
3
|
*
|
|
4
|
-
* Writes detailed logs to understand how tasks flow through the
|
|
5
|
-
*
|
|
4
|
+
* Writes detailed logs to understand how tasks flow through the three-agent system.
|
|
5
|
+
* Supports both local filesystem (CLI) and cloud storage (HTTP) modes.
|
|
6
6
|
*/
|
|
7
|
+
import { StorageProvider } from '../storage/provider.js';
|
|
7
8
|
declare class OrchestrationLogger {
|
|
8
9
|
private static instance;
|
|
9
10
|
private logFilePath;
|
|
10
11
|
private logStream;
|
|
11
12
|
private sessionStart;
|
|
13
|
+
private storageProvider;
|
|
14
|
+
private sessionId;
|
|
15
|
+
private logBuffer;
|
|
16
|
+
private maxBufferSize;
|
|
12
17
|
private constructor();
|
|
13
18
|
static getInstance(): OrchestrationLogger;
|
|
19
|
+
/**
|
|
20
|
+
* Configure for cloud/HTTP mode with storage provider
|
|
21
|
+
*/
|
|
22
|
+
setStorageProvider(storageProvider: StorageProvider, sessionId: string): void;
|
|
23
|
+
/**
|
|
24
|
+
* Reset to filesystem mode (CLI)
|
|
25
|
+
*/
|
|
26
|
+
resetToFilesystemMode(): void;
|
|
14
27
|
private initializeLogFile;
|
|
15
28
|
private writeHeader;
|
|
16
29
|
private writeEvent;
|
|
30
|
+
/**
|
|
31
|
+
* Flush buffered logs to cloud storage
|
|
32
|
+
*/
|
|
33
|
+
private flushToStorage;
|
|
17
34
|
logUserMessage(message: string): void;
|
|
18
35
|
logPhaseStart(phase: 'PLANNING' | 'EXECUTION' | 'SYNTHESIS'): void;
|
|
19
36
|
logPhaseEnd(phase: 'PLANNING' | 'EXECUTION' | 'SYNTHESIS', durationMs: number): void;
|
|
@@ -28,7 +45,14 @@ declare class OrchestrationLogger {
|
|
|
28
45
|
logWorkerToolCall(toolName: string, args: Record<string, any>): void;
|
|
29
46
|
logWorkerToolResult(toolName: string, success: boolean, hasImages: boolean): void;
|
|
30
47
|
logWorkerComplete(success: boolean, toolsUsed: string[], iterations: number): void;
|
|
48
|
+
logClientAnalysis(level: string, requirementCount: number, reasoning: string): void;
|
|
49
|
+
logClientCoherenceCheck(isCoherent: boolean, unsupportedClaims: string[], reasoning: string): void;
|
|
50
|
+
logClientValidation(approved: boolean, issues: string[], nextAction?: string): void;
|
|
31
51
|
getLogFilePath(): string | null;
|
|
52
|
+
/**
|
|
53
|
+
* Manually flush logs (call before session ends)
|
|
54
|
+
*/
|
|
55
|
+
flush(): Promise<void>;
|
|
32
56
|
close(): void;
|
|
33
57
|
}
|
|
34
58
|
export declare const orchestrationLogger: OrchestrationLogger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestration-logger.d.ts","sourceRoot":"","sources":["../../src/utils/orchestration-logger.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"orchestration-logger.d.ts","sourceRoot":"","sources":["../../src/utils/orchestration-logger.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AASzD,cAAM,mBAAmB;IACvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAsB;IAC7C,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,SAAS,CAA+B;IAChD,OAAO,CAAC,YAAY,CAAO;IAG3B,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,SAAS,CAAuB;IACxC,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,aAAa,CAAe;IAEpC,OAAO;IAKP,MAAM,CAAC,WAAW,IAAI,mBAAmB;IAOzC;;OAEG;IACH,kBAAkB,CAAC,eAAe,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM;IAUtE;;OAEG;IACH,qBAAqB;IAcrB,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,UAAU;IAyBlB;;OAEG;IACH,OAAO,CAAC,cAAc;IAuBtB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IASrC,aAAa,CAAC,KAAK,EAAE,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,IAAI;IASlE,WAAW,CAAC,KAAK,EAAE,UAAU,GAAG,WAAW,GAAG,WAAW,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IASpF,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,IAAI;IAetF,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IASzD,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAalE,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAa7D,kBAAkB,CAAC,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;IAarF,oBAAoB,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAUhD,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAStD,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI;IASlE,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IASpE,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,GAAG,IAAI;IASjF,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;IAelF,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IASnF,uBAAuB,CAAC,UAAU,EAAE,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IASlG,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;IAUnF,cAAc,IAAI,MAAM,GAAG,IAAI;IAI/B;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ5B,KAAK,IAAI,IAAI;CAoBd;AAED,eAAO,MAAM,mBAAmB,qBAAoC,CAAC"}
|