genbox-agent 1.0.82 → 1.0.84

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.
@@ -1 +1 @@
1
- {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/storage/manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAgB,aAAa,EAA4B,MAAM,SAAS,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACjI,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvG,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAG5E,OAAO,EACL,OAAO,EACP,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,OAAO,EACP,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,gBAAgB,EAChB,SAAS,EACT,aAAa,EACb,YAAY,EACZ,QAAQ,GACT,CAAC;AAEF;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,OAAO,CAAe;IACvB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,MAAM,EAAE,eAAe,CAAC;gBAEnB,MAAM,CAAC,EAAE,aAAa;IASlC;;OAEG;IACH,QAAQ;;;;;;;IAIR;;OAEG;IACH,oBAAoB;;;;;;IAIpB;;OAEG;IACH,iBAAiB,IAAI,OAAO,EAAE;IAI9B;;OAEG;IACH,KAAK;IAIL;;;;;;;;OAQG;IACH,eAAe,CAAC,KAAK,EAAE;QACrB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,SAAS,CAAC;QACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;QACpB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAG3B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,GAAG;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,YAAY,CAAA;KAAE;IA4K7C;;OAEG;IACH,aAAa,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO;IAuBjD;;OAEG;IACH,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,SAAK,GAAG;QACxD,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;QACxB,MAAM,EAAE,YAAY,EAAE,CAAC;QACvB,QAAQ,EAAE,OAAO,EAAE,CAAC;KACrB;IAYD;;OAEG;IACH,eAAe,CAAC,MAAM;;;;KAA+C,GAAG;QACtE,QAAQ,EAAE,OAAO,EAAE,CAAC;QACpB,QAAQ,EAAE,OAAO,EAAE,CAAC;QACpB,MAAM,EAAE,YAAY,EAAE,CAAC;KACxB;IAQD;;OAEG;IACH,UAAU,CAAC,IAAI,EAAE;QACf,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;QACtB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,GAAG,IAAI;IAcR;;OAEG;IACH,OAAO,IAAI;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE;IAKpC;;;;;;OAMG;IACG,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAgMtK;;;OAGG;IACG,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;CAqE1E;AAKD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG,cAAc,CAKxE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAK1C"}
1
+ {"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/storage/manager.ts"],"names":[],"mappings":"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"}
@@ -153,11 +153,27 @@ class StorageManager {
153
153
  this.sessions.updateState(linkedDtachSessionId, state, toolName);
154
154
  }
155
155
  };
156
- // Handle special event types
157
- // Note: Event types come from Claude Code hooks or our internal mappings:
158
- // - Raw hook names: Stop, UserPromptSubmit, PreToolUse, PostToolUse, SubagentStop
159
- // - Internal names: before_prompt, after_prompt, before_tool, after_tool, subagent_stop
156
+ // ==========================================================================
157
+ // STATE MACHINE - Pure State Transitions
158
+ // ==========================================================================
159
+ // CRITICAL: Hooks are the ONLY source of truth for state changes.
160
+ // File inference should be minimal and only used as a fallback.
161
+ //
162
+ // State Transitions:
163
+ // - UserPromptSubmit -> thinking
164
+ // - PreToolUse -> executing_tool (with toolName)
165
+ // - PostToolUse(Task) -> waiting_for_subagent
166
+ // - PostToolUse(other) -> responding
167
+ // - Stop while waiting_for_subagent -> NO CHANGE (stay waiting_for_subagent)
168
+ // - Stop while NOT waiting_for_subagent -> waiting_for_input
169
+ // - SubagentStop -> responding (Claude processes result and continues)
170
+ // - Notification(idle_prompt) -> waiting_for_input (fallback/definitive)
171
+ //
172
+ // Event type mappings:
173
+ // - Raw hook names: Stop, UserPromptSubmit, PreToolUse, PostToolUse, SubagentStop, Notification
174
+ // - Internal names: before_prompt, after_prompt, before_tool, after_tool, subagent_stop, notification
160
175
  // - Legacy types: prompt_submitted, response_completed, tool_started, tool_completed
176
+ // ==========================================================================
161
177
  switch (eventType) {
162
178
  case 'session_start':
163
179
  this.sessions.updateStatus(sessionId, 'active');
@@ -171,7 +187,10 @@ class StorageManager {
171
187
  this.sessions.updateStatus(linkedDtachSessionId, 'ended');
172
188
  }
173
189
  break;
174
- // Claude Code: UserPromptSubmit -> thinking state
190
+ // ==========================================================================
191
+ // UserPromptSubmit -> THINKING
192
+ // User submitted a prompt, Claude is now processing
193
+ // ==========================================================================
175
194
  case 'UserPromptSubmit':
176
195
  case 'before_prompt':
177
196
  case 'prompt_submitted':
@@ -188,53 +207,88 @@ class StorageManager {
188
207
  });
189
208
  }
190
209
  catch (error) {
191
- // Silent fail - don't block event recording if message storage fails
192
210
  console.error(`[StorageManager] Failed to store user message: ${error}`);
193
211
  }
194
212
  }
195
213
  break;
196
- // Claude Code: Stop -> waiting_for_input state (Claude finished responding)
197
- // BUT: If a Task subagent was spawned, it's still running - don't set waiting_for_input yet
214
+ // ==========================================================================
215
+ // Stop -> WAITING_FOR_INPUT (unless waiting_for_subagent)
216
+ // Claude finished responding. BUT if a Task subagent is running, stay waiting.
217
+ // The subagent will fire SubagentStop when it completes.
218
+ // ==========================================================================
198
219
  case 'Stop':
199
220
  case 'after_prompt':
200
- case 'response_completed':
221
+ case 'response_completed': {
201
222
  this.sessions.incrementCounts(sessionId, { assistantResponses: 1, messages: 1 });
202
- // Check if a Task subagent is running (currentToolName will be "Task")
203
- // If so, keep state as 'responding' and wait for SubagentStop
223
+ // Check current state - if waiting_for_subagent, DO NOT change state
204
224
  const currentSession = this.sessions.getById(sessionId);
205
- if (currentSession?.currentToolName === 'Task') {
206
- // Task subagent is running - don't clear the processing state yet
207
- // Keep state as 'responding' and wait for SubagentStop
208
- updateState('responding', 'Task');
225
+ if (currentSession?.currentState === 'waiting_for_subagent') {
226
+ // Task subagent is running - stay in waiting_for_subagent state
227
+ // The SubagentStop event will transition us to 'responding' when the subagent completes
228
+ console.log(`[StorageManager] Stop event ignored - waiting for subagent to complete`);
229
+ // Keep current state and tool name
209
230
  }
210
231
  else {
232
+ // Normal Stop - Claude is done, ready for input
211
233
  updateState('waiting_for_input');
212
234
  }
213
- // Note: Assistant message content is not available from hooks
214
- // Could be enhanced by reading from Claude Code's session files
215
235
  break;
216
- // Claude Code: PreToolUse -> executing_tool state
236
+ }
237
+ // ==========================================================================
238
+ // PreToolUse -> EXECUTING_TOOL
239
+ // Claude is about to execute a tool
240
+ // ==========================================================================
217
241
  case 'PreToolUse':
218
242
  case 'before_tool':
219
243
  case 'tool_started':
220
244
  updateState('executing_tool', data?.toolName || data?.tool_name);
221
245
  break;
222
- // Claude Code: PostToolUse -> responding state
246
+ // ==========================================================================
247
+ // PostToolUse -> WAITING_FOR_SUBAGENT (Task) or RESPONDING (other tools)
248
+ // Tool finished execution. Task tool is special - spawns a subagent.
249
+ // ==========================================================================
223
250
  case 'PostToolUse':
224
251
  case 'after_tool':
225
252
  case 'tool_completed':
226
- case 'tool_error':
253
+ case 'tool_error': {
227
254
  this.sessions.incrementCounts(sessionId, { toolUses: 1 });
228
- updateState('responding');
255
+ const toolName = data?.toolName || data?.tool_name;
256
+ if (toolName === 'Task') {
257
+ // Task tool creates a subagent - transition to waiting_for_subagent
258
+ // The main Claude process will Stop, but we stay waiting until SubagentStop
259
+ updateState('waiting_for_subagent', 'Task');
260
+ console.log(`[StorageManager] Task tool finished -> waiting_for_subagent`);
261
+ }
262
+ else {
263
+ // Regular tool - Claude continues responding with results
264
+ updateState('responding');
265
+ }
229
266
  break;
230
- // Claude Code: SubagentStop -> subagent (e.g., Task) finished
231
- // If the main Claude already sent Stop, we can now set waiting_for_input
267
+ }
268
+ // ==========================================================================
269
+ // SubagentStop -> RESPONDING
270
+ // Subagent (Task) finished. Claude now processes the result and continues.
271
+ // The next Stop event will transition to waiting_for_input.
272
+ // ==========================================================================
232
273
  case 'SubagentStop':
233
274
  case 'subagent_stop':
234
275
  case 'subagent_completed':
235
- // Subagent finished - clear the tool tracking and set waiting_for_input
236
- // This completes the cycle: UserPromptSubmit -> thinking -> Stop -> SubagentStop -> waiting_for_input
237
- updateState('waiting_for_input');
276
+ // Subagent finished - Claude is now processing the result and will respond
277
+ updateState('responding');
278
+ console.log(`[StorageManager] SubagentStop -> responding (Claude processing result)`);
279
+ break;
280
+ // ==========================================================================
281
+ // Notification -> Potential idle_prompt fallback
282
+ // Some notifications indicate definitive state (e.g., idle_prompt)
283
+ // ==========================================================================
284
+ case 'Notification':
285
+ case 'notification':
286
+ // Check if this is an idle/ready notification
287
+ if (data?.notification === 'idle_prompt' || data?.type === 'idle_prompt') {
288
+ // Definitive signal that Claude is ready for input
289
+ updateState('waiting_for_input');
290
+ console.log(`[StorageManager] Notification(idle_prompt) -> waiting_for_input`);
291
+ }
238
292
  break;
239
293
  }
240
294
  return { session: this.sessions.getById(sessionId), event };
@@ -428,55 +482,54 @@ class StorageManager {
428
482
  cacheWriteTokens: totalCacheWrite,
429
483
  }, totalCost);
430
484
  }
431
- // Infer session state from last message (fallback for sessions without hook events)
432
- // Uses file modification time to avoid prematurely marking sessions as complete
485
+ // ==========================================================================
486
+ // MINIMAL FILE INFERENCE - Only for sessions with NO hook events
487
+ // ==========================================================================
488
+ // CRITICAL: Hooks are the authoritative source of truth for state.
489
+ // File inference is ONLY used as a fallback for sessions that:
490
+ // 1. Have no currentState set (never received hook events)
491
+ // 2. Were created before hooks were installed
492
+ //
493
+ // If the session already has a state from hooks, DO NOT override it.
494
+ // This prevents the race conditions and premature state clearing that
495
+ // occurred with the previous file-based inference approach.
496
+ // ==========================================================================
433
497
  const currentSession = this.sessions.getById(storageSessionId);
434
498
  if (parsedMessages.length > 0 && currentSession && sessionFile) {
435
- const lastMsg = parsedMessages[parsedMessages.length - 1];
436
- let inferredState = null;
437
- // Check file modification time - only consider "done" if file hasn't been modified recently
438
- const stats = fs.statSync(sessionFile);
439
- const modifiedAgoMs = Date.now() - stats.mtimeMs;
440
- const IDLE_THRESHOLD_MS = 5000; // 5 seconds - if no activity, likely done
441
- const isFileIdle = modifiedAgoMs > IDLE_THRESHOLD_MS;
442
- if (lastMsg.role === 'user') {
443
- // Last message from user means Claude is thinking/processing
444
- inferredState = 'thinking';
445
- }
446
- else if (lastMsg.role === 'assistant') {
447
- // Check if the assistant message has pending tool_use
448
- const hasPendingToolUse = lastMsg.content?.some((block) => block.type === 'tool_use' && !block.result);
449
- if (hasPendingToolUse) {
450
- inferredState = 'executing_tool';
499
+ // Only infer state if session has NO state (never received hook events)
500
+ const hasNoState = !currentSession.currentState;
501
+ if (hasNoState) {
502
+ const lastMsg = parsedMessages[parsedMessages.length - 1];
503
+ let inferredState = null;
504
+ // Check file modification time
505
+ const stats = fs.statSync(sessionFile);
506
+ const modifiedAgoMs = Date.now() - stats.mtimeMs;
507
+ const IDLE_THRESHOLD_MS = 30000; // 30 seconds - conservative for fallback inference
508
+ if (lastMsg.role === 'user') {
509
+ // Last message from user means Claude is thinking/processing
510
+ inferredState = 'thinking';
451
511
  }
452
- else if (isFileIdle) {
453
- // File hasn't been modified recently - Claude is likely done
454
- inferredState = 'waiting_for_input';
512
+ else if (lastMsg.role === 'assistant') {
513
+ // Check if the assistant message has pending tool_use
514
+ const hasPendingToolUse = lastMsg.content?.some((block) => block.type === 'tool_use' && !block.result);
515
+ if (hasPendingToolUse) {
516
+ inferredState = 'executing_tool';
517
+ }
518
+ else if (modifiedAgoMs > IDLE_THRESHOLD_MS) {
519
+ // File hasn't been modified recently - Claude is likely done
520
+ inferredState = 'waiting_for_input';
521
+ }
522
+ else {
523
+ // File was modified recently - Claude might still be responding
524
+ inferredState = 'responding';
525
+ }
455
526
  }
456
- else {
457
- // File was modified recently - Claude is still responding
458
- inferredState = 'responding';
527
+ if (inferredState) {
528
+ this.sessions.updateState(storageSessionId, inferredState);
529
+ console.log(`[StorageManager] Fallback state inference (no hooks): ${inferredState}`);
459
530
  }
460
531
  }
461
- // Update state if inferred state is different from current state
462
- // Rules for state updates:
463
- // 1. Don't downgrade from 'waiting_for_input' back to active states (hook is authoritative)
464
- // 2. Don't downgrade from active states (executing_tool, responding, thinking) to waiting_for_input
465
- // if the session was recently updated (within 10 seconds) - hook events are more accurate
466
- const isActiveState = ['thinking', 'executing_tool', 'responding'].includes(currentSession.currentState || '');
467
- const wasRecentlyUpdated = (Date.now() - currentSession.updatedAt) < 10000; // 10 seconds
468
- const wouldDowngrade = inferredState === 'waiting_for_input' && isActiveState && wasRecentlyUpdated;
469
- const shouldUpdate = inferredState &&
470
- inferredState !== currentSession.currentState &&
471
- !(currentSession.currentState === 'waiting_for_input' && inferredState !== 'waiting_for_input') &&
472
- !wouldDowngrade;
473
- if (shouldUpdate) {
474
- this.sessions.updateState(storageSessionId, inferredState);
475
- console.log(`[StorageManager] Inferred session state: ${inferredState} (was: ${currentSession.currentState}, file idle: ${isFileIdle})`);
476
- }
477
- else if (wouldDowngrade) {
478
- console.log(`[StorageManager] Skipping state downgrade from ${currentSession.currentState} to ${inferredState} (recently updated by hook)`);
479
- }
532
+ // If session has a state from hooks, DO NOT override - hooks are authoritative
480
533
  }
481
534
  // Return the storageSessionId (genbox session ID) since that's what messages are keyed by
482
535
  // The Tauri backend will use this to query messages
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/storage/manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/storage/manager.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkrBH,8CAKC;AAKD,kDAKC;AA/rBD,mCAAgF;AAChF,sDAAiI;AACjI,sDAAuG;AACvG,kDAAwF;AAoBxF;;GAEG;AACH,MAAa,cAAc;IACjB,OAAO,CAAe;IACvB,QAAQ,CAAoB;IAC5B,QAAQ,CAAoB;IAC5B,MAAM,CAAkB;IAE/B,YAAY,MAAsB;QAChC,IAAI,CAAC,OAAO,GAAG,IAAA,kBAAU,EAAC,MAAM,CAAC,CAAC;QAClC,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAEhC,IAAI,CAAC,QAAQ,GAAG,IAAI,4BAAiB,CAAC,EAAE,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,4BAAiB,CAAC,EAAE,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,GAAG,IAAI,wBAAe,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,oBAAoB;QAClB,OAAO,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,iBAAiB;QACf,OAAO,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,KAAK;QACH,IAAA,oBAAY,GAAE,CAAC;IACjB,CAAC;IAED;;;;;;;;OAQG;IACH,eAAe,CAAC,KAcf;QACC,MAAM,EACJ,SAAS,EACT,SAAS,EACT,QAAQ,GAAG,QAAQ,EACnB,WAAW,EACX,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,SAAS,GACV,GAAG,KAAK,CAAC;QAEV,wBAAwB;QACxB,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAC7B,EAAE,EAAE,SAAS;gBACb,QAAQ;gBACR,WAAW;aACZ,CAAC,CAAC;QACL,CAAC;QAED,mFAAmF;QACnF,4EAA4E;QAC5E,MAAM,YAAY,GAAG,SAAS,CAAC,MAAM,KAAK,EAAE,IAAI,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACxE,IAAI,oBAAoB,GAAkB,IAAI,CAAC;QAE/C,IAAI,YAAY,IAAI,WAAW,EAAE,CAAC;YAChC,wDAAwD;YACxD,uEAAuE;YACvE,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,WAAW,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YAChG,KAAK,MAAM,YAAY,IAAI,gBAAgB,EAAE,CAAC;gBAC5C,uDAAuD;gBACvD,IAAI,YAAY,CAAC,EAAE,KAAK,SAAS;oBAAE,SAAS;gBAC5C,IAAI,YAAY,CAAC,EAAE,CAAC,MAAM,KAAK,EAAE,IAAI,YAAY,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC;oBAAE,SAAS;gBAE7E,mEAAmE;gBACnE,kEAAkE;gBAClE,oBAAoB,GAAG,YAAY,CAAC,EAAE,CAAC;gBACvC,OAAO,CAAC,GAAG,CAAC,wCAAwC,SAAS,qBAAqB,oBAAoB,EAAE,CAAC,CAAC;gBAC1G,MAAM;YACR,CAAC;QACH,CAAC;QAED,qCAAqC;QACrC,IAAI,WAAW,IAAI,YAAY,IAAI,eAAe,IAAI,gBAAgB,EAAE,CAAC;YACvE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,SAAS,EAAE;gBACrC,WAAW;gBACX,YAAY;gBACZ,eAAe;gBACf,gBAAgB;gBAChB,aAAa;aACd,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC;YAEnB,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAE,CAAC;QAC9C,CAAC;QAED,eAAe;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YAC/B,SAAS;YACT,IAAI,EAAE,SAAS;YACf,IAAI;YACJ,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,GAAG,GAAG,CAAC;YAC1D,YAAY,EAAE,OAAO,CAAC,YAAY;SACnC,CAAC,CAAC;QAEH,qFAAqF;QACrF,MAAM,WAAW,GAAG,CAAC,KAAmB,EAAE,QAAiB,EAAE,EAAE;YAC7D,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YACtD,IAAI,oBAAoB,EAAE,CAAC;gBACzB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,oBAAoB,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YACnE,CAAC;QACH,CAAC,CAAC;QAEF,6EAA6E;QAC7E,yCAAyC;QACzC,6EAA6E;QAC7E,kEAAkE;QAClE,gEAAgE;QAChE,EAAE;QACF,qBAAqB;QACrB,iCAAiC;QACjC,iDAAiD;QACjD,8CAA8C;QAC9C,qCAAqC;QACrC,6EAA6E;QAC7E,6DAA6D;QAC7D,uEAAuE;QACvE,yEAAyE;QACzE,EAAE;QACF,uBAAuB;QACvB,gGAAgG;QAChG,sGAAsG;QACtG,qFAAqF;QACrF,6EAA6E;QAE7E,QAAQ,SAAS,EAAE,CAAC;YAClB,KAAK,eAAe;gBAClB,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;gBAChD,IAAI,oBAAoB,EAAE,CAAC;oBACzB,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;gBAC7D,CAAC;gBACD,MAAM;YAER,KAAK,aAAa;gBAChB,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBAC/C,IAAI,oBAAoB,EAAE,CAAC;oBACzB,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,oBAAoB,EAAE,OAAO,CAAC,CAAC;gBAC5D,CAAC;gBACD,MAAM;YAER,6EAA6E;YAC7E,+BAA+B;YAC/B,oDAAoD;YACpD,6EAA6E;YAC7E,KAAK,kBAAkB,CAAC;YACxB,KAAK,eAAe,CAAC;YACrB,KAAK,kBAAkB;gBACrB,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC1E,WAAW,CAAC,UAAU,CAAC,CAAC;gBAExB,iCAAiC;gBACjC,IAAI,IAAI,EAAE,MAAM,EAAE,CAAC;oBACjB,IAAI,CAAC;wBACH,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;4BACnB,SAAS;4BACT,IAAI,EAAE,MAAM;4BACZ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC;4BAC9C,QAAQ,EAAE,OAAO,CAAC,YAAY,GAAG,CAAC;yBACnC,CAAC,CAAC;oBACL,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,OAAO,CAAC,KAAK,CAAC,kDAAkD,KAAK,EAAE,CAAC,CAAC;oBAC3E,CAAC;gBACH,CAAC;gBACD,MAAM;YAER,6EAA6E;YAC7E,0DAA0D;YAC1D,+EAA+E;YAC/E,yDAAyD;YACzD,6EAA6E;YAC7E,KAAK,MAAM,CAAC;YACZ,KAAK,cAAc,CAAC;YACpB,KAAK,oBAAoB,CAAC,CAAC,CAAC;gBAC1B,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,EAAE,EAAE,kBAAkB,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;gBAEjF,qEAAqE;gBACrE,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACxD,IAAI,cAAc,EAAE,YAAY,KAAK,sBAAsB,EAAE,CAAC;oBAC5D,gEAAgE;oBAChE,wFAAwF;oBACxF,OAAO,CAAC,GAAG,CAAC,wEAAwE,CAAC,CAAC;oBACtF,mCAAmC;gBACrC,CAAC;qBAAM,CAAC;oBACN,gDAAgD;oBAChD,WAAW,CAAC,mBAAmB,CAAC,CAAC;gBACnC,CAAC;gBACD,MAAM;YACR,CAAC;YAED,6EAA6E;YAC7E,+BAA+B;YAC/B,oCAAoC;YACpC,6EAA6E;YAC7E,KAAK,YAAY,CAAC;YAClB,KAAK,aAAa,CAAC;YACnB,KAAK,cAAc;gBACjB,WAAW,CAAC,gBAAgB,EAAE,IAAI,EAAE,QAAQ,IAAI,IAAI,EAAE,SAAS,CAAC,CAAC;gBACjE,MAAM;YAER,6EAA6E;YAC7E,yEAAyE;YACzE,qEAAqE;YACrE,6EAA6E;YAC7E,KAAK,aAAa,CAAC;YACnB,KAAK,YAAY,CAAC;YAClB,KAAK,gBAAgB,CAAC;YACtB,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC1D,MAAM,QAAQ,GAAG,IAAI,EAAE,QAAQ,IAAI,IAAI,EAAE,SAAS,CAAC;gBAEnD,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;oBACxB,oEAAoE;oBACpE,4EAA4E;oBAC5E,WAAW,CAAC,sBAAsB,EAAE,MAAM,CAAC,CAAC;oBAC5C,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;gBAC7E,CAAC;qBAAM,CAAC;oBACN,0DAA0D;oBAC1D,WAAW,CAAC,YAAY,CAAC,CAAC;gBAC5B,CAAC;gBACD,MAAM;YACR,CAAC;YAED,6EAA6E;YAC7E,6BAA6B;YAC7B,2EAA2E;YAC3E,4DAA4D;YAC5D,6EAA6E;YAC7E,KAAK,cAAc,CAAC;YACpB,KAAK,eAAe,CAAC;YACrB,KAAK,oBAAoB;gBACvB,2EAA2E;gBAC3E,WAAW,CAAC,YAAY,CAAC,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,wEAAwE,CAAC,CAAC;gBACtF,MAAM;YAER,6EAA6E;YAC7E,iDAAiD;YACjD,mEAAmE;YACnE,6EAA6E;YAC7E,KAAK,cAAc,CAAC;YACpB,KAAK,cAAc;gBACjB,8CAA8C;gBAC9C,IAAI,IAAI,EAAE,YAAY,KAAK,aAAa,IAAI,IAAI,EAAE,IAAI,KAAK,aAAa,EAAE,CAAC;oBACzE,mDAAmD;oBACnD,WAAW,CAAC,mBAAmB,CAAC,CAAC;oBACjC,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;gBACjF,CAAC;gBACD,MAAM;QACV,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAE,EAAE,KAAK,EAAE,CAAC;IAC/D,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,KAAyB;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAE5C,wBAAwB;QACxB,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,SAAS,EAAE;YAC7C,QAAQ,EAAE,CAAC;YACX,WAAW,EAAE,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,kBAAkB,EAAE,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SACvD,CAAC,CAAC;QAEH,yBAAyB;QACzB,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,YAAY,EAAE,CAAC;YAC5C,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE;gBAC3C,WAAW,EAAE,KAAK,CAAC,WAAW;gBAC9B,YAAY,EAAE,KAAK,CAAC,YAAY;gBAChC,eAAe,EAAE,KAAK,CAAC,eAAe;gBACtC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;aACzC,EAAE,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;QAC3B,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,oBAAoB,CAAC,SAAiB,EAAE,UAAU,GAAG,EAAE;QAKrD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACjD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACrD,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;QACrE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QAEvD,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,MAAM,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;QAKnE,OAAO;YACL,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC;YACpD,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC;YACpD,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC;SAC/C,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,UAAU,CAAC,IAIV;QACC,IAAI,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;YAC5B,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACjC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,CAAC;YAC5B,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAChD,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED;;OAEG;IACH,OAAO;QACL,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QAC9C,OAAO,EAAE,aAAa,EAAE,CAAC;IAC3B,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,qBAAqB,CAAC,SAAiB,EAAE,SAAkB,EAAE,WAAoB;QACrF,IAAI,CAAC;YACH,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,GAAG,wDAAa,qCAAqC,GAAC,CAAC;YACjG,MAAM,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,mCAAmC,EAAE,GAAG,wDAAa,mCAAmC,GAAC,CAAC;YAC9K,MAAM,IAAI,GAAG,wDAAa,MAAM,GAAC,CAAC;YAClC,MAAM,EAAE,GAAG,wDAAa,IAAI,GAAC,CAAC;YAE9B,wFAAwF;YACxF,OAAO,CAAC,GAAG,CAAC,gEAAgE,SAAS,eAAe,SAAS,iBAAiB,WAAW,EAAE,CAAC,CAAC;YAC7I,IAAI,WAAW,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;YAE7C,IAAI,CAAC,WAAW,IAAI,WAAW,EAAE,CAAC;gBAChC,4DAA4D;gBAC5D,iEAAiE;gBACjE,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,WAAW,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;gBACpF,MAAM,WAAW,GAAG,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBACpD,MAAM,mBAAmB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;gBAE9D,OAAO,CAAC,GAAG,CAAC,0DAA0D,mBAAmB,EAAE,CAAC,CAAC;gBAE7F,IAAI,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;oBACvC,0DAA0D;oBAC1D,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;wBACzC,WAAW,GAAG,mCAAmC,CAAC,mBAAmB,EAAE,SAAS,CAAC,CAAC;wBAClF,IAAI,WAAW,EAAE,CAAC;4BAChB,OAAO,CAAC,GAAG,CAAC,gEAAgE,WAAW,EAAE,CAAC,CAAC;wBAC7F,CAAC;6BAAM,CAAC;4BACN,OAAO,CAAC,GAAG,CAAC,yDAAyD,SAAS,oBAAoB,CAAC,CAAC;wBACtG,CAAC;oBACH,CAAC;oBACD,8DAA8D;oBAC9D,2DAA2D;gBAC7D,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CAAC,0DAA0D,mBAAmB,EAAE,CAAC,CAAC;gBAC/F,CAAC;YACH,CAAC;YAED,yDAAyD;YACzD,IAAI,CAAC,WAAW,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;gBACzD,WAAW,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;gBACpD,IAAI,WAAW,EAAE,CAAC;oBAChB,OAAO,CAAC,GAAG,CAAC,4DAA4D,WAAW,EAAE,CAAC,CAAC;gBACzF,CAAC;YACH,CAAC;YAED,oEAAoE;YACpE,IAAI,CAAC,WAAW,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;gBAC3C,MAAM,aAAa,GAAG,uBAAuB,EAAE,CAAC;gBAChD,IAAI,aAAa,EAAE,CAAC;oBAClB,WAAW,GAAG,qBAAqB,CAAC,aAAa,CAAC,CAAC;oBACnD,OAAO,CAAC,GAAG,CAAC,kEAAkE,WAAW,EAAE,CAAC,CAAC;gBAC/F,CAAC;YACH,CAAC;YAED,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAO,EAAE,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,wBAAwB,EAAE,CAAC;YAC/D,CAAC;YAED,kCAAkC;YAClC,MAAM,cAAc,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;YAE1D,qDAAqD;YACrD,MAAM,eAAe,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAE5F,uEAAuE;YACvE,kFAAkF;YAClF,MAAM,gBAAgB,GAAG,SAAS,CAAC;YAEnC,4FAA4F;YAC5F,IAAI,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YACtD,IAAI,CAAC,OAAO,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,8CAA8C;gBAC9C,8FAA8F;gBAC9F,MAAM,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;gBACrE,IAAI,WAAW,GAAG,WAAW,CAAC;gBAC9B,IAAI,SAAS,EAAE,CAAC;oBACd,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;gBACnE,CAAC;gBAED,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;oBAC7B,EAAE,EAAE,gBAAgB;oBACpB,QAAQ,EAAE,QAAQ;oBAClB,WAAW;iBACZ,CAAC,CAAC;gBACH,OAAO,CAAC,GAAG,CAAC,+CAA+C,gBAAgB,EAAE,CAAC,CAAC;YACjF,CAAC;YAED,gDAAgD;YAChD,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;YACtE,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC;YAE9C,mDAAmD;YACnD,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,KAAK,IAAI,CAAC,GAAG,aAAa,EAAE,CAAC,GAAG,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3D,MAAM,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;gBAC9B,IAAI,CAAC;oBACH,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;wBACnB,SAAS,EAAE,gBAAgB,EAAG,+CAA+C;wBAC7E,IAAI,EAAE,GAAG,CAAC,IAAI;wBACd,OAAO,EAAE,GAAG,CAAC,OAAO;wBACpB,QAAQ,EAAE,GAAG,CAAC,QAAQ;wBACtB,WAAW,EAAE,GAAG,CAAC,WAAW;wBAC5B,YAAY,EAAE,GAAG,CAAC,YAAY;wBAC9B,eAAe,EAAE,GAAG,CAAC,eAAe;wBACpC,gBAAgB,EAAE,GAAG,CAAC,gBAAgB;wBACtC,SAAS,EAAE,GAAG,CAAC,SAAS;qBACzB,CAAC,CAAC;oBACH,aAAa,EAAE,CAAC;gBAClB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,4CAA4C,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;gBAC3E,CAAC;YACH,CAAC;YAED,+BAA+B;YAC/B,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;gBACnD,MAAM,gBAAgB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC1F,MAAM,iBAAiB,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC5F,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC5F,MAAM,eAAe,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAC9F,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAEjF,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,gBAAgB,EAAE;oBAC5C,WAAW,EAAE,gBAAgB;oBAC7B,YAAY,EAAE,iBAAiB;oBAC/B,eAAe,EAAE,cAAc;oBAC/B,gBAAgB,EAAE,eAAe;iBAClC,EAAE,SAAS,CAAC,CAAC;YAChB,CAAC;YAED,6EAA6E;YAC7E,iEAAiE;YACjE,6EAA6E;YAC7E,mEAAmE;YACnE,+DAA+D;YAC/D,2DAA2D;YAC3D,8CAA8C;YAC9C,EAAE;YACF,qEAAqE;YACrE,sEAAsE;YACtE,4DAA4D;YAC5D,6EAA6E;YAC7E,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC/D,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,IAAI,cAAc,IAAI,WAAW,EAAE,CAAC;gBAC/D,wEAAwE;gBACxE,MAAM,UAAU,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC;gBAEhD,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,OAAO,GAAG,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAC1D,IAAI,aAAa,GAAwB,IAAI,CAAC;oBAE9C,+BAA+B;oBAC/B,MAAM,KAAK,GAAG,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;oBACvC,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC;oBACjD,MAAM,iBAAiB,GAAG,KAAK,CAAC,CAAC,mDAAmD;oBAEpF,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBAC5B,6DAA6D;wBAC7D,aAAa,GAAG,UAAU,CAAC;oBAC7B,CAAC;yBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;wBACxC,sDAAsD;wBACtD,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,EAAE,IAAI,CAC7C,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,KAAK,CAAC,MAAM,CAC3D,CAAC;wBACF,IAAI,iBAAiB,EAAE,CAAC;4BACtB,aAAa,GAAG,gBAAgB,CAAC;wBACnC,CAAC;6BAAM,IAAI,aAAa,GAAG,iBAAiB,EAAE,CAAC;4BAC7C,6DAA6D;4BAC7D,aAAa,GAAG,mBAAmB,CAAC;wBACtC,CAAC;6BAAM,CAAC;4BACN,gEAAgE;4BAChE,aAAa,GAAG,YAAY,CAAC;wBAC/B,CAAC;oBACH,CAAC;oBAED,IAAI,aAAa,EAAE,CAAC;wBAClB,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,gBAAgB,EAAE,aAAa,CAAC,CAAC;wBAC3D,OAAO,CAAC,GAAG,CAAC,yDAAyD,aAAa,EAAE,CAAC,CAAC;oBACxF,CAAC;gBACH,CAAC;gBACD,+EAA+E;YACjF,CAAC;YAED,0FAA0F;YAC1F,oDAAoD;YACpD,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAE,CAAC;QAC9D,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,uDAAuD,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YACtF,OAAO,EAAE,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;QACpD,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,kBAAkB,CAAC,SAAiB;QACxC,IAAI,CAAC;YACH,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,GAAG,wDAAa,qCAAqC,GAAC,CAAC;YACnH,MAAM,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,GAAG,wDAAa,mCAAmC,GAAC,CAAC;YAE7G,0EAA0E;YAC1E,IAAI,WAAW,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;YAC7C,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,sDAAsD;gBACtD,MAAM,aAAa,GAAG,uBAAuB,EAAE,CAAC;gBAChD,IAAI,aAAa,EAAE,CAAC;oBAClB,WAAW,GAAG,qBAAqB,CAAC,aAAa,CAAC,CAAC;oBACnD,OAAO,CAAC,GAAG,CAAC,4DAA4D,WAAW,EAAE,CAAC,CAAC;gBACzF,CAAC;YACH,CAAC;YAED,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAO,CAAC,KAAK,CAAC,+CAA+C,SAAS,EAAE,CAAC,CAAC;gBAC1E,OAAO,IAAI,CAAC;YACd,CAAC;YAED,oDAAoD;YACpD,MAAM,cAAc,GAAG,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;YAC1D,MAAM,eAAe,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAE5F,8FAA8F;YAC9F,MAAM,gBAAgB,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,eAAe,CAAC,CAAC;YACrE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC;YAEzC,OAAO,CAAC,GAAG,CAAC,oDAAoD,QAAQ,qBAAqB,eAAe,GAAG,CAAC,CAAC;YAEjH,yBAAyB;YACzB,MAAM,OAAO,GAAG,gBAAgB,CAAC,WAAW,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,EAAE;gBAClE,IAAI,CAAC;oBACH,wBAAwB;oBACxB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;wBACnB,SAAS,EAAE,OAAO,CAAC,SAAS;wBAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;wBAClB,OAAO,EAAE,OAAO,CAAC,OAAO;wBACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;wBAC1B,WAAW,EAAE,OAAO,CAAC,WAAW;wBAChC,YAAY,EAAE,OAAO,CAAC,YAAY;wBAClC,eAAe,EAAE,OAAO,CAAC,eAAe;wBACxC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;wBAC1C,SAAS,EAAE,OAAO,CAAC,SAAS;qBAC7B,CAAC,CAAC;oBAEH,sEAAsE;oBACtE,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,YAAY,EAAE,CAAC;wBAChD,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,EAAE;4BAC7C,WAAW,EAAE,OAAO,CAAC,WAAW;4BAChC,YAAY,EAAE,OAAO,CAAC,YAAY;4BAClC,eAAe,EAAE,OAAO,CAAC,eAAe;4BACxC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB;yBAC3C,EAAE,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;oBAC7B,CAAC;oBAED,OAAO,CAAC,GAAG,CAAC,wCAAwC,OAAO,CAAC,IAAI,iBAAiB,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;gBACxG,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,qDAAqD,KAAK,EAAE,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,mDAAmD,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAClF,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;CACF;AA9oBD,wCA8oBC;AAED,qBAAqB;AACrB,IAAI,eAAe,GAA0B,IAAI,CAAC;AAElD;;GAEG;AACH,SAAgB,iBAAiB,CAAC,MAAsB;IACtD,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,eAAe,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,eAAe,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB;IACjC,IAAI,eAAe,EAAE,CAAC;QACpB,eAAe,CAAC,KAAK,EAAE,CAAC;QACxB,eAAe,GAAG,IAAI,CAAC;IACzB,CAAC;AACH,CAAC"}
@@ -12,7 +12,7 @@ export declare const SCHEMA_SQL = "\n-- Schema version tracking\nCREATE TABLE IF
12
12
  /**
13
13
  * Event types (matching Session V2 API)
14
14
  */
15
- export declare const EVENT_TYPES: readonly ["session_start", "session_end", "prompt_submitted", "response_started", "response_completed", "subagent_completed", "tool_started", "tool_completed", "tool_error", "state_change", "command_received", "command_executed", "context_window_warning", "context_compression", "git_commit", "git_push", "file_created", "file_modified", "file_deleted", "error", "warning", "before_prompt", "after_prompt", "before_tool", "after_tool", "subagent_stop", "Stop", "UserPromptSubmit", "PreToolUse", "PostToolUse", "SubagentStop"];
15
+ export declare const EVENT_TYPES: readonly ["session_start", "session_end", "prompt_submitted", "response_started", "response_completed", "subagent_completed", "tool_started", "tool_completed", "tool_error", "state_change", "command_received", "command_executed", "context_window_warning", "context_compression", "git_commit", "git_push", "file_created", "file_modified", "file_deleted", "error", "warning", "before_prompt", "after_prompt", "before_tool", "after_tool", "subagent_stop", "Stop", "UserPromptSubmit", "PreToolUse", "PostToolUse", "SubagentStop", "Notification", "notification"];
16
16
  export type EventType = typeof EVENT_TYPES[number];
17
17
  /**
18
18
  * Session status values
@@ -21,8 +21,18 @@ export declare const SESSION_STATUSES: readonly ["active", "idle", "waiting_inpu
21
21
  export type SessionStatus = typeof SESSION_STATUSES[number];
22
22
  /**
23
23
  * Session state values (for live monitoring)
24
- */
25
- export declare const SESSION_STATES: readonly ["waiting_for_input", "thinking", "executing_tool", "responding"];
24
+ *
25
+ * State Machine Transitions (hooks are the ONLY source of truth):
26
+ * - UserPromptSubmit -> thinking
27
+ * - PreToolUse -> executing_tool (with toolName)
28
+ * - PostToolUse(Task) -> waiting_for_subagent
29
+ * - PostToolUse(other) -> responding
30
+ * - Stop while waiting_for_subagent -> NO CHANGE (stay waiting)
31
+ * - Stop while NOT waiting_for_subagent -> waiting_for_input
32
+ * - SubagentStop -> responding (Claude continues processing result)
33
+ * - Notification(idle_prompt) -> waiting_for_input (fallback/definitive)
34
+ */
35
+ export declare const SESSION_STATES: readonly ["waiting_for_input", "thinking", "executing_tool", "responding", "waiting_for_subagent"];
26
36
  export type SessionState = typeof SESSION_STATES[number];
27
37
  /**
28
38
  * Provider types
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/storage/schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,cAAc,IAAI,CAAC;AAEhC;;GAEG;AACH,eAAO,MAAM,UAAU,47OA+MtB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,+gBAkCd,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,gBAAgB,gEAMnB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAE5D;;GAEG;AACH,eAAO,MAAM,cAAc,4EAKjB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;AAEzD;;GAEG;AACH,eAAO,MAAM,SAAS,wCAAyC,CAAC;AAChE,MAAM,MAAM,QAAQ,GAAG,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,SAAS,uCAAwC,CAAC;AAC/D,MAAM,MAAM,OAAO,GAAG,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,eAAe,sDAAuD,CAAC;AACpF,MAAM,MAAM,YAAY,GAAG,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/storage/schema.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,cAAc,IAAI,CAAC;AAEhC;;GAEG;AACH,eAAO,MAAM,UAAU,47OA+MtB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,+iBAoCd,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,gBAAgB,gEAMnB,CAAC;AAEX,MAAM,MAAM,aAAa,GAAG,OAAO,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAE5D;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,cAAc,oGAMjB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC;AAEzD;;GAEG;AACH,eAAO,MAAM,SAAS,wCAAyC,CAAC;AAChE,MAAM,MAAM,QAAQ,GAAG,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,SAAS,uCAAwC,CAAC;AAC/D,MAAM,MAAM,OAAO,GAAG,OAAO,SAAS,CAAC,MAAM,CAAC,CAAC;AAE/C;;GAEG;AACH,eAAO,MAAM,eAAe,sDAAuD,CAAC;AACpF,MAAM,MAAM,YAAY,GAAG,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC"}
@@ -256,6 +256,8 @@ exports.EVENT_TYPES = [
256
256
  'PreToolUse', // About to use tool -> executing_tool
257
257
  'PostToolUse', // Tool finished -> responding
258
258
  'SubagentStop', // Subagent finished -> responding
259
+ 'Notification', // System notification (e.g., idle_prompt)
260
+ 'notification', // Internal notification event type
259
261
  ];
260
262
  /**
261
263
  * Session status values
@@ -269,12 +271,23 @@ exports.SESSION_STATUSES = [
269
271
  ];
270
272
  /**
271
273
  * Session state values (for live monitoring)
274
+ *
275
+ * State Machine Transitions (hooks are the ONLY source of truth):
276
+ * - UserPromptSubmit -> thinking
277
+ * - PreToolUse -> executing_tool (with toolName)
278
+ * - PostToolUse(Task) -> waiting_for_subagent
279
+ * - PostToolUse(other) -> responding
280
+ * - Stop while waiting_for_subagent -> NO CHANGE (stay waiting)
281
+ * - Stop while NOT waiting_for_subagent -> waiting_for_input
282
+ * - SubagentStop -> responding (Claude continues processing result)
283
+ * - Notification(idle_prompt) -> waiting_for_input (fallback/definitive)
272
284
  */
273
285
  exports.SESSION_STATES = [
274
286
  'waiting_for_input',
275
287
  'thinking',
276
288
  'executing_tool',
277
289
  'responding',
290
+ 'waiting_for_subagent', // Waiting for Task subagent to complete
278
291
  ];
279
292
  /**
280
293
  * Provider types
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/storage/schema.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEU,QAAA,cAAc,GAAG,CAAC,CAAC;AAEhC;;GAEG;AACU,QAAA,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+MzB,CAAC;AAEF;;GAEG;AACU,QAAA,WAAW,GAAG;IACzB,eAAe;IACf,aAAa;IACb,kBAAkB;IAClB,kBAAkB;IAClB,oBAAoB;IACpB,oBAAoB,EAAG,sDAAsD;IAC7E,cAAc;IACd,gBAAgB;IAChB,YAAY;IACZ,cAAc;IACd,kBAAkB;IAClB,kBAAkB;IAClB,wBAAwB;IACxB,qBAAqB;IACrB,YAAY;IACZ,UAAU;IACV,cAAc;IACd,eAAe;IACf,cAAc;IACd,OAAO;IACP,SAAS;IACT,mDAAmD;IACnD,eAAe,EAAK,+BAA+B;IACnD,cAAc,EAAM,4BAA4B;IAChD,aAAa,EAAO,+BAA+B;IACnD,YAAY,EAAQ,4BAA4B;IAChD,eAAe,EAAK,6BAA6B;IACjD,sDAAsD;IACtD,MAAM,EAAc,kDAAkD;IACtE,kBAAkB,EAAE,oCAAoC;IACxD,YAAY,EAAQ,sCAAsC;IAC1D,aAAa,EAAO,8BAA8B;IAClD,cAAc,EAAM,kCAAkC;CAC9C,CAAC;AAIX;;GAEG;AACU,QAAA,gBAAgB,GAAG;IAC9B,QAAQ;IACR,MAAM;IACN,eAAe;IACf,OAAO;IACP,OAAO;CACC,CAAC;AAIX;;GAEG;AACU,QAAA,cAAc,GAAG;IAC5B,mBAAmB;IACnB,UAAU;IACV,gBAAgB;IAChB,YAAY;CACJ,CAAC;AAIX;;GAEG;AACU,QAAA,SAAS,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;AAGhE;;GAEG;AACU,QAAA,SAAS,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAU,CAAC;AAG/D;;GAEG;AACU,QAAA,eAAe,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAU,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/storage/schema.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEU,QAAA,cAAc,GAAG,CAAC,CAAC;AAEhC;;GAEG;AACU,QAAA,UAAU,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+MzB,CAAC;AAEF;;GAEG;AACU,QAAA,WAAW,GAAG;IACzB,eAAe;IACf,aAAa;IACb,kBAAkB;IAClB,kBAAkB;IAClB,oBAAoB;IACpB,oBAAoB,EAAG,sDAAsD;IAC7E,cAAc;IACd,gBAAgB;IAChB,YAAY;IACZ,cAAc;IACd,kBAAkB;IAClB,kBAAkB;IAClB,wBAAwB;IACxB,qBAAqB;IACrB,YAAY;IACZ,UAAU;IACV,cAAc;IACd,eAAe;IACf,cAAc;IACd,OAAO;IACP,SAAS;IACT,mDAAmD;IACnD,eAAe,EAAK,+BAA+B;IACnD,cAAc,EAAM,4BAA4B;IAChD,aAAa,EAAO,+BAA+B;IACnD,YAAY,EAAQ,4BAA4B;IAChD,eAAe,EAAK,6BAA6B;IACjD,sDAAsD;IACtD,MAAM,EAAc,kDAAkD;IACtE,kBAAkB,EAAE,oCAAoC;IACxD,YAAY,EAAQ,sCAAsC;IAC1D,aAAa,EAAO,8BAA8B;IAClD,cAAc,EAAM,kCAAkC;IACtD,cAAc,EAAM,0CAA0C;IAC9D,cAAc,EAAM,mCAAmC;CAC/C,CAAC;AAIX;;GAEG;AACU,QAAA,gBAAgB,GAAG;IAC9B,QAAQ;IACR,MAAM;IACN,eAAe;IACf,OAAO;IACP,OAAO;CACC,CAAC;AAIX;;;;;;;;;;;;GAYG;AACU,QAAA,cAAc,GAAG;IAC5B,mBAAmB;IACnB,UAAU;IACV,gBAAgB;IAChB,YAAY;IACZ,sBAAsB,EAAG,wCAAwC;CACzD,CAAC;AAIX;;GAEG;AACU,QAAA,SAAS,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;AAGhE;;GAEG;AACU,QAAA,SAAS,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAU,CAAC;AAG/D;;GAEG;AACU,QAAA,eAAe,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAU,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "genbox-agent",
3
- "version": "1.0.82",
3
+ "version": "1.0.84",
4
4
  "description": "Unified agent for monitoring and controlling AI CLI sessions (Claude Code, Gemini CLI, OpenAI Codex) in genbox VMs",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",