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.
Files changed (152) hide show
  1. package/.dockerignore +53 -0
  2. package/.gcloudignore +49 -0
  3. package/CONTRIBUTING.md +92 -0
  4. package/Dockerfile +63 -0
  5. package/README.md +250 -88
  6. package/cloud-run-deploy.yaml +135 -0
  7. package/cloud-run.yaml +135 -0
  8. package/cloud-run.yaml.template +143 -0
  9. package/deploy.sh +107 -0
  10. package/dist/core/agent-spawner.d.ts +89 -0
  11. package/dist/core/agent-spawner.d.ts.map +1 -0
  12. package/dist/core/agent-spawner.js +208 -0
  13. package/dist/core/agent-spawner.js.map +1 -0
  14. package/dist/core/agent.js +1 -1
  15. package/dist/core/agent.js.map +1 -1
  16. package/dist/core/client-agent.d.ts +103 -0
  17. package/dist/core/client-agent.d.ts.map +1 -0
  18. package/dist/core/client-agent.js +659 -0
  19. package/dist/core/client-agent.js.map +1 -0
  20. package/dist/core/config.d.ts +59 -10
  21. package/dist/core/config.d.ts.map +1 -1
  22. package/dist/core/config.js +19 -2
  23. package/dist/core/config.js.map +1 -1
  24. package/dist/core/conversation-manager.d.ts +10 -18
  25. package/dist/core/conversation-manager.d.ts.map +1 -1
  26. package/dist/core/conversation-manager.js +31 -63
  27. package/dist/core/conversation-manager.js.map +1 -1
  28. package/dist/core/dual-agent.d.ts +22 -3
  29. package/dist/core/dual-agent.d.ts.map +1 -1
  30. package/dist/core/dual-agent.js +86 -10
  31. package/dist/core/dual-agent.js.map +1 -1
  32. package/dist/core/manager-agent.d.ts +16 -1
  33. package/dist/core/manager-agent.d.ts.map +1 -1
  34. package/dist/core/manager-agent.js +127 -44
  35. package/dist/core/manager-agent.js.map +1 -1
  36. package/dist/core/worker-agent.d.ts +9 -1
  37. package/dist/core/worker-agent.d.ts.map +1 -1
  38. package/dist/core/worker-agent.js +169 -14
  39. package/dist/core/worker-agent.js.map +1 -1
  40. package/dist/core/workspace.d.ts +5 -0
  41. package/dist/core/workspace.d.ts.map +1 -1
  42. package/dist/core/workspace.js +47 -7
  43. package/dist/core/workspace.js.map +1 -1
  44. package/dist/index.d.ts +3 -0
  45. package/dist/index.d.ts.map +1 -1
  46. package/dist/index.js +4 -0
  47. package/dist/index.js.map +1 -1
  48. package/dist/interfaces/cli/index.js +349 -42
  49. package/dist/interfaces/cli/index.js.map +1 -1
  50. package/dist/interfaces/http/index.d.ts +22 -0
  51. package/dist/interfaces/http/index.d.ts.map +1 -0
  52. package/dist/interfaces/http/index.js +135 -0
  53. package/dist/interfaces/http/index.js.map +1 -0
  54. package/dist/interfaces/http/middleware/auth.d.ts +32 -0
  55. package/dist/interfaces/http/middleware/auth.d.ts.map +1 -0
  56. package/dist/interfaces/http/middleware/auth.js +176 -0
  57. package/dist/interfaces/http/middleware/auth.js.map +1 -0
  58. package/dist/interfaces/http/routes/chat.d.ts +7 -0
  59. package/dist/interfaces/http/routes/chat.d.ts.map +1 -0
  60. package/dist/interfaces/http/routes/chat.js +144 -0
  61. package/dist/interfaces/http/routes/chat.js.map +1 -0
  62. package/dist/interfaces/http/routes/health.d.ts +6 -0
  63. package/dist/interfaces/http/routes/health.d.ts.map +1 -0
  64. package/dist/interfaces/http/routes/health.js +25 -0
  65. package/dist/interfaces/http/routes/health.js.map +1 -0
  66. package/dist/interfaces/http/routes/session.d.ts +7 -0
  67. package/dist/interfaces/http/routes/session.d.ts.map +1 -0
  68. package/dist/interfaces/http/routes/session.js +114 -0
  69. package/dist/interfaces/http/routes/session.js.map +1 -0
  70. package/dist/interfaces/http/session-manager.d.ts +76 -0
  71. package/dist/interfaces/http/session-manager.d.ts.map +1 -0
  72. package/dist/interfaces/http/session-manager.js +350 -0
  73. package/dist/interfaces/http/session-manager.js.map +1 -0
  74. package/dist/interfaces/http/websocket-handler.d.ts +18 -0
  75. package/dist/interfaces/http/websocket-handler.d.ts.map +1 -0
  76. package/dist/interfaces/http/websocket-handler.js +146 -0
  77. package/dist/interfaces/http/websocket-handler.js.map +1 -0
  78. package/dist/mcp/client.d.ts +11 -2
  79. package/dist/mcp/client.d.ts.map +1 -1
  80. package/dist/mcp/client.js +44 -19
  81. package/dist/mcp/client.js.map +1 -1
  82. package/dist/mcp/server-manager.d.ts +1 -1
  83. package/dist/mcp/server-manager.d.ts.map +1 -1
  84. package/dist/mcp/server-manager.js +12 -2
  85. package/dist/mcp/server-manager.js.map +1 -1
  86. package/dist/models/krutrim.js +1 -1
  87. package/dist/models/krutrim.js.map +1 -1
  88. package/dist/personas/index.d.ts +13 -0
  89. package/dist/personas/index.d.ts.map +1 -0
  90. package/dist/personas/index.js +13 -0
  91. package/dist/personas/index.js.map +1 -0
  92. package/dist/personas/persona-loader.d.ts +30 -0
  93. package/dist/personas/persona-loader.d.ts.map +1 -0
  94. package/dist/personas/persona-loader.js +246 -0
  95. package/dist/personas/persona-loader.js.map +1 -0
  96. package/dist/personas/persona-manager.d.ts +93 -0
  97. package/dist/personas/persona-manager.d.ts.map +1 -0
  98. package/dist/personas/persona-manager.js +268 -0
  99. package/dist/personas/persona-manager.js.map +1 -0
  100. package/dist/personas/skill-loader.d.ts +35 -0
  101. package/dist/personas/skill-loader.d.ts.map +1 -0
  102. package/dist/personas/skill-loader.js +144 -0
  103. package/dist/personas/skill-loader.js.map +1 -0
  104. package/dist/personas/skill-packager.d.ts +25 -0
  105. package/dist/personas/skill-packager.d.ts.map +1 -0
  106. package/dist/personas/skill-packager.js +233 -0
  107. package/dist/personas/skill-packager.js.map +1 -0
  108. package/dist/personas/types.d.ts +134 -0
  109. package/dist/personas/types.d.ts.map +1 -0
  110. package/dist/personas/types.js +7 -0
  111. package/dist/personas/types.js.map +1 -0
  112. package/dist/personas/validator.d.ts +22 -0
  113. package/dist/personas/validator.d.ts.map +1 -0
  114. package/dist/personas/validator.js +144 -0
  115. package/dist/personas/validator.js.map +1 -0
  116. package/dist/storage/factory.d.ts +51 -0
  117. package/dist/storage/factory.d.ts.map +1 -0
  118. package/dist/storage/factory.js +154 -0
  119. package/dist/storage/factory.js.map +1 -0
  120. package/dist/storage/gcp-bucket-provider.d.ts +60 -0
  121. package/dist/storage/gcp-bucket-provider.d.ts.map +1 -0
  122. package/dist/storage/gcp-bucket-provider.js +292 -0
  123. package/dist/storage/gcp-bucket-provider.js.map +1 -0
  124. package/dist/storage/index.d.ts +33 -0
  125. package/dist/storage/index.d.ts.map +1 -0
  126. package/dist/storage/index.js +37 -0
  127. package/dist/storage/index.js.map +1 -0
  128. package/dist/storage/local-provider.d.ts +37 -0
  129. package/dist/storage/local-provider.d.ts.map +1 -0
  130. package/dist/storage/local-provider.js +228 -0
  131. package/dist/storage/local-provider.js.map +1 -0
  132. package/dist/storage/provider.d.ts +142 -0
  133. package/dist/storage/provider.d.ts.map +1 -0
  134. package/dist/storage/provider.js +136 -0
  135. package/dist/storage/provider.js.map +1 -0
  136. package/dist/storage/types.d.ts +78 -0
  137. package/dist/storage/types.d.ts.map +1 -0
  138. package/dist/storage/types.js +14 -0
  139. package/dist/storage/types.js.map +1 -0
  140. package/dist/utils/logger.d.ts +19 -0
  141. package/dist/utils/logger.d.ts.map +1 -1
  142. package/dist/utils/logger.js +49 -1
  143. package/dist/utils/logger.js.map +1 -1
  144. package/dist/utils/orchestration-logger.d.ts +27 -3
  145. package/dist/utils/orchestration-logger.d.ts.map +1 -1
  146. package/dist/utils/orchestration-logger.js +110 -6
  147. package/dist/utils/orchestration-logger.js.map +1 -1
  148. package/package.json +30 -2
  149. package/.fluen/cache/state.json +0 -7
  150. package/actions/action_registry.py +0 -75
  151. package/actions/python_coder.py +0 -470
  152. 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"}
@@ -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;IAE3C,OAAO;IAEP,MAAM,CAAC,WAAW,IAAI,MAAM;IAO5B,WAAW,CAAC,KAAK,EAAE,QAAQ;IAI3B,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;IAgBX,OAAO,CAAC,SAAS;CAgBlB;AAED,eAAO,MAAM,MAAM,QAAuB,CAAC"}
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"}
@@ -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
- const formattedMessage = `${chalk.gray(timestamp)} ${prefix} ${message}`;
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) {
@@ -1 +1 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/utils/logger.ts"],"names":[],"mappings":"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"}
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 dual-agent system.
5
- * Logs are written to: ~/.jiva/logs/orchestration-{timestamp}.log
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;AAaH,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;IAE3B,OAAO;IAKP,MAAM,CAAC,WAAW,IAAI,mBAAmB;IAOzC,OAAO,CAAC,iBAAiB;IAsBzB,OAAO,CAAC,WAAW;IAcnB,OAAO,CAAC,UAAU;IAclB,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,cAAc,IAAI,MAAM,GAAG,IAAI;IAI/B,KAAK,IAAI,IAAI;CAed;AAED,eAAO,MAAM,mBAAmB,qBAAoC,CAAC"}
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"}