hungry-ghost-hive 0.4.0 → 0.4.1

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.
@@ -6,9 +6,9 @@ import { loadConfig } from '../../config/loader.js';
6
6
  import { Scheduler } from '../../orchestrator/scheduler.js';
7
7
  import { getHiveSessions, sendToTmuxSession, sendEnterToTmuxSession, captureTmuxPane, isManagerRunning, stopManager as stopManagerSession, killTmuxSession } from '../../tmux/manager.js';
8
8
  import { getMergeQueue, getPullRequestsByStatus, getApprovedPullRequests, updatePullRequest } from '../../db/queries/pull-requests.js';
9
- import { getUnreadMessages, markMessageRead } from '../../db/queries/messages.js';
9
+ import { markMessagesRead, getAllPendingMessages } from '../../db/queries/messages.js';
10
10
  import { createEscalation, getPendingEscalations } from '../../db/queries/escalations.js';
11
- import { getAgentById, updateAgent } from '../../db/queries/agents.js';
11
+ import { getAgentById, updateAgent, getAllAgents } from '../../db/queries/agents.js';
12
12
  import { createLog } from '../../db/queries/logs.js';
13
13
  import { queryAll } from '../../db/client.js';
14
14
  import { getAllTeams } from '../../db/queries/teams.js';
@@ -271,23 +271,32 @@ async function managerCheck(root) {
271
271
  const escalatedSessions = new Set(existingEscalations
272
272
  .filter(e => e.from_agent_id)
273
273
  .map(e => e.from_agent_id));
274
+ // Optimization: Batch fetch all agents and messages instead of per-session queries
275
+ const allAgents = getAllAgents(db.db);
276
+ const agentsBySessionName = new Map(allAgents.map(a => [`hive-${a.id}`, a]));
277
+ const allPendingMessages = getAllPendingMessages(db.db);
278
+ const messagesBySessionName = new Map();
279
+ const messagesToMarkRead = [];
280
+ for (const msg of allPendingMessages) {
281
+ if (!messagesBySessionName.has(msg.to_session)) {
282
+ messagesBySessionName.set(msg.to_session, []);
283
+ }
284
+ messagesBySessionName.get(msg.to_session).push(msg);
285
+ }
274
286
  for (const session of hiveSessions) {
275
287
  // Skip manager itself
276
288
  if (session.name === 'hive-manager')
277
289
  continue;
278
- // Get agent information for CLI-aware messaging
279
- const agent = getAgentById(db.db, session.name.replace('hive-', ''));
290
+ // Get agent information for CLI-aware messaging (from cached data)
291
+ const agent = agentsBySessionName.get(session.name);
280
292
  const agentCliTool = (agent?.cli_tool || 'claude');
281
- // Check if agent has unread messages
282
- const unread = getUnreadMessages(db.db, session.name);
293
+ // Check if agent has unread messages (from cached data)
294
+ const unread = messagesBySessionName.get(session.name) || [];
283
295
  if (unread.length > 0) {
284
296
  await forwardMessages(session.name, unread, agentCliTool);
285
297
  messagesForwarded += unread.length;
286
- // Mark as read
287
- for (const msg of unread) {
288
- markMessageRead(db.db, msg.id);
289
- }
290
- db.save();
298
+ // Collect message IDs to mark as read in batch
299
+ messagesToMarkRead.push(...unread.map(msg => msg.id));
291
300
  }
292
301
  // Check if agent appears stuck (capture last output)
293
302
  const output = await captureTmuxPane(session.name, 50);
@@ -359,6 +368,11 @@ async function managerCheck(root) {
359
368
  }
360
369
  // If not waiting (actively working), do nothing - let them work
361
370
  }
371
+ // Batch mark all messages as read after processing
372
+ if (messagesToMarkRead.length > 0) {
373
+ markMessagesRead(db.db, messagesToMarkRead);
374
+ db.save();
375
+ }
362
376
  // Check for PRs needing QA attention
363
377
  const queuedPRs = getMergeQueue(db.db);
364
378
  if (queuedPRs.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/cli/commands/manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,eAAe,EAAE,gBAAgB,EAAE,WAAW,IAAI,kBAAkB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC1L,OAAO,EAAE,aAAa,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACvI,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAmB,MAAM,8BAA8B,CAAC;AACnG,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAC9E,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAuB,MAAM,mCAAmC,CAAC;AAC3F,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,qBAAqB,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAgB,MAAM,6BAA6B,CAAC;AAS5G,6CAA6C;AAC7C,MAAM,WAAW,GAAG,IAAI,GAAG,EAA8B,CAAC;AAE1D,+BAA+B;AAC/B,MAAM,wBAAwB,GAAG,MAAM,CAAC,CAAC,0BAA0B;AACnE,MAAM,iBAAiB,GAAG,MAAM,CAAC,CAAC,0BAA0B;AAE5D,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC;KACjD,WAAW,CAAC,kDAAkD,CAAC,CAAC;AAEnE,2BAA2B;AAC3B,cAAc;KACX,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,2CAA2C,CAAC;KACxD,MAAM,CAAC,0BAA0B,EAAE,2BAA2B,EAAE,IAAI,CAAC;KACrE,MAAM,CAAC,QAAQ,EAAE,mBAAmB,CAAC;KACrC,MAAM,CAAC,KAAK,EAAE,OAA6C,EAAE,EAAE;IAC9D,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;IAC5B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;IAErD,2CAA2C;IAC3C,IAAI,WAAW,GAAiC,IAAI,CAAC;IACrD,IAAI,CAAC;QACH,WAAW,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,wBAAwB;QACtF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;IACnD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,2EAA2E,CAAC,EAAE,GAAG,CAAC,CAAC;QAC3G,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,sDAAsD,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,CAAC;QACtG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,uBAAuB;IACvB,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;QACzB,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,WAAW,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACrD,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAE/B,8DAA8D;IAC9D,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAE7C,qEAAqE;IACrE,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC,OAAO,CAAC;IAE/D,IAAI,UAAU,EAAE,CAAC;QACf,gFAAgF;QAChF,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,kCAAkC,YAAY,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC;QACnF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC;QAElD,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;YAC1B,IAAI,CAAC;gBACH,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC,CAAC;YAClD,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,QAAQ,EAAE,CAAC;QAEjB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAClB,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACtC,CAAC;aAAM,IAAI,WAAW,EAAE,CAAC;YACvB,MAAM,WAAW,EAAE,CAAC;QACtB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,+BAA+B;QAC/B,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,mCAAmC,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC;QACjF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC;QAElD,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;YAC1B,IAAI,CAAC;gBACH,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC,CAAC;YAClD,CAAC;QACH,CAAC,CAAC;QAEF,MAAM,QAAQ,EAAE,CAAC;QAEjB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAClB,WAAW,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAClC,CAAC;aAAM,IAAI,WAAW,EAAE,CAAC;YACvB,MAAM,WAAW,EAAE,CAAC;QACtB,CAAC;IACH,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,qBAAqB;AACrB,cAAc;KACX,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,4BAA4B,CAAC;KACzC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;IAC5B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEL,4CAA4C;AAC5C,cAAc;KACX,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,6CAA6C,CAAC;KAC1D,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;IAC5B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE;YACrC,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;QAC7C,EAAE,CAAC,IAAI,EAAE,CAAC;QAEV,IAAI,MAAM,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC,CAAC;QAChF,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,MAAM,CAAC,UAAU,gBAAgB,CAAC,CAAC,CAAC;YAC3E,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,8BAA8B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACvF,CAAC;QACH,CAAC;QAED,yBAAyB;QACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACnD,MAAM,SAAS,CAAC,eAAe,EAAE,CAAC;QAClC,EAAE,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IACnC,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,uBAAuB;AACvB,cAAc;KACX,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,wCAAwC,CAAC;KACrD,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,OAAO,GAAG,MAAM,gBAAgB,EAAE,CAAC;IACzC,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC,CAAC;QAClF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC;IACxD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC;IAC1D,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,0BAA0B;AAC1B,cAAc;KACX,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,yBAAyB,CAAC;KACtC,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,OAAO,GAAG,MAAM,kBAAkB,EAAE,CAAC;IAC3C,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;IACrD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAC9D,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,yBAAyB;AACzB,cAAc;KACX,OAAO,CAAC,iBAAiB,CAAC;KAC1B,WAAW,CAAC,kCAAkC,CAAC;KAC/C,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC;KACvD,MAAM,CAAC,KAAK,EAAE,OAAe,EAAE,OAA6B,EAAE,EAAE;IAC/D,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC;IAC5B,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACrD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC5C,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;QAChE,MAAM,OAAO,GAAG,CAAC,KAAK,EAAE,QAAQ,IAAI,QAAQ,CAAY,CAAC;QACzD,MAAM,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAChF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,KAAK,UAAU,YAAY,CAAC,IAAY;IACtC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,kBAAkB,EAAE,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,SAAS,uBAAuB,CAAC,CAAC,CAAC;IAE9D,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,EAAE,GAAG,MAAM,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAE5C,IAAI,CAAC;QACH,yDAAyD;QACzD,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACzC,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE;YACrC,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;QACnD,IAAI,YAAY,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,mBAAmB,YAAY,CAAC,UAAU,2BAA2B,CAAC,CAAC,CAAC;YACjG,IAAI,YAAY,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,gCAAgC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/F,CAAC;YACD,EAAE,CAAC,IAAI,EAAE,CAAC;QACZ,CAAC;QAED,oCAAoC;QACpC,MAAM,SAAS,CAAC,eAAe,EAAE,CAAC;QAClC,EAAE,CAAC,IAAI,EAAE,CAAC;QAEV,0BAA0B;QAC1B,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACxD,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,iBAAiB,UAAU,iBAAiB,CAAC,CAAC,CAAC;YACvE,EAAE,CAAC,IAAI,EAAE,CAAC;QACZ,CAAC;QAED,6DAA6D;QAC7D,MAAM,YAAY,GAAG,MAAM,uBAAuB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QAC7D,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,YAAY,gCAAgC,CAAC,CAAC,CAAC;QACrF,CAAC;QAED,6CAA6C;QAC7C,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QAC/D,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,SAAS,gCAAgC,CAAC,CAAC,CAAC;YACjF,oCAAoC;YACpC,MAAM,SAAS,CAAC,eAAe,EAAE,CAAC;YAClC,EAAE,CAAC,IAAI,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,eAAe,EAAE,CAAC;QACzC,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACvC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAC3B,CAAC;QAEF,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC;YACrD,OAAO;QACT,CAAC;QAED,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,iBAAiB,GAAG,CAAC,CAAC;QAC1B,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAE3B,uDAAuD;QACvD,MAAM,mBAAmB,GAAG,qBAAqB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACzD,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAC/B,mBAAmB;aAChB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC;aAC5B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAC7B,CAAC;QAEF,KAAK,MAAM,OAAO,IAAI,YAAY,EAAE,CAAC;YACnC,sBAAsB;YACtB,IAAI,OAAO,CAAC,IAAI,KAAK,cAAc;gBAAE,SAAS;YAE9C,gDAAgD;YAChD,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;YACrE,MAAM,YAAY,GAAG,CAAC,KAAK,EAAE,QAAQ,IAAI,QAAQ,CAAY,CAAC;YAE9D,qCAAqC;YACrC,MAAM,MAAM,GAAG,iBAAiB,CAAC,EAAE,CAAC,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;YACtD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,MAAM,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;gBAC1D,iBAAiB,IAAI,MAAM,CAAC,MAAM,CAAC;gBACnC,eAAe;gBACf,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;oBACzB,eAAe,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBACjC,CAAC;gBACD,EAAE,CAAC,IAAI,EAAE,CAAC;YACZ,CAAC;YAED,qDAAqD;YACrD,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACvD,MAAM,WAAW,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAElD,qCAAqC;YACrC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAEnD,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,qDAAqD;gBACrD,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE;oBAC5B,SAAS,EAAE,WAAW,CAAC,KAAK;oBAC5B,mBAAmB,EAAE,GAAG;oBACxB,aAAa,EAAE,CAAC;iBACjB,CAAC,CAAC;YACL,CAAC;iBAAM,IAAI,YAAY,CAAC,SAAS,KAAK,WAAW,CAAC,KAAK,EAAE,CAAC;gBACxD,kCAAkC;gBAClC,YAAY,CAAC,SAAS,GAAG,WAAW,CAAC,KAAK,CAAC;gBAC3C,YAAY,CAAC,mBAAmB,GAAG,GAAG,CAAC;YACzC,CAAC;YAED,gDAAgD;YAChD,MAAM,WAAW,GAAG;gBAClB,SAAS,EAAE,WAAW,CAAC,SAAS;gBAChC,UAAU,EAAE,WAAW,CAAC,UAAU;gBAClC,MAAM,EAAE,WAAW,CAAC,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;aACpF,CAAC;YAEF,IAAI,WAAW,CAAC,UAAU,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBACnE,wCAAwC;gBACxC,MAAM,OAAO,GAAG,KAAK,EAAE,gBAAgB,IAAI,IAAI,CAAC;gBAEhD,gBAAgB,CAAC,EAAE,CAAC,EAAE,EAAE;oBACtB,OAAO;oBACP,WAAW,EAAE,OAAO,CAAC,IAAI;oBACzB,SAAS,EAAE,IAAI,EAAE,oBAAoB;oBACrC,MAAM,EAAE,4BAA4B,WAAW,CAAC,MAAM,IAAI,kBAAkB,EAAE;iBAC/E,CAAC,CAAC;gBACH,EAAE,CAAC,IAAI,EAAE,CAAC;gBACV,kBAAkB,EAAE,CAAC;gBACrB,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAEpC,6DAA6D;gBAC7D,MAAM,QAAQ,GAAG,yBAAyB,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;gBACvE,MAAM,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBAEhD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,OAAO,CAAC,IAAI,oBAAoB,CAAC,CAAC,CAAC;YAC5E,CAAC;iBAAM,IAAI,WAAW,CAAC,SAAS,IAAI,WAAW,CAAC,KAAK,KAAK,eAAe,CAAC,QAAQ,EAAE,CAAC;gBACnF,+CAA+C;gBAC/C,gEAAgE;gBAChE,MAAM,mBAAmB,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAC1D,IAAI,mBAAmB,EAAE,CAAC;oBACxB,MAAM,oBAAoB,GAAG,GAAG,GAAG,mBAAmB,CAAC,mBAAmB,CAAC;oBAC3E,MAAM,kBAAkB,GAAG,GAAG,GAAG,mBAAmB,CAAC,aAAa,CAAC;oBAEnE,iBAAiB;oBACjB,iDAAiD;oBACjD,sCAAsC;oBACtC,yDAAyD;oBACzD,IACE,oBAAoB,GAAG,wBAAwB;wBAC/C,kBAAkB,GAAG,iBAAiB,EACtC,CAAC;wBACD,8EAA8E;wBAC9E,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBAC9D,MAAM,YAAY,GAAG,qBAAqB,CAAC,aAAa,CAAC,CAAC;wBAE1D,4DAA4D;wBAC5D,IAAI,YAAY,CAAC,SAAS,IAAI,CAAC,YAAY,CAAC,UAAU,IAAI,YAAY,CAAC,KAAK,KAAK,eAAe,CAAC,QAAQ,EAAE,CAAC;4BAC1G,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;4BAC7C,MAAM,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;4BAC7F,mBAAmB,CAAC,aAAa,GAAG,GAAG,CAAC;4BACxC,MAAM,EAAE,CAAC;wBACX,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YACD,gEAAgE;QAClE,CAAC;QAED,qCAAqC;QACrC,MAAM,SAAS,GAAG,aAAa,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACvC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,UAAU,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;YACrE,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;gBAC5B,MAAM,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAC7B,KAAK,SAAS,CAAC,MAAM,6CAA6C,CACnE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,uDAAuD;QACvD,qFAAqF;QACrF,MAAM,WAAW,GAAG,uBAAuB,CAAC,EAAE,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;QAC/D,IAAI,iBAAiB,GAAG,CAAC,CAAC;QAC1B,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;YAC7B,2EAA2E;YAC3E,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;gBAChB,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;gBACzD,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE;oBACf,OAAO,EAAE,SAAS;oBAClB,SAAS,EAAE,iBAAiB;oBAC5B,OAAO,EAAE,SAAS,EAAE,CAAC,QAAQ,eAAe,EAAE,CAAC,YAAY,IAAI,qBAAqB,EAAE;oBACtF,OAAO,EAAE,EAAE,CAAC,QAAQ;iBACrB,CAAC,CAAC;YACL,CAAC;YAED,IAAI,EAAE,CAAC,YAAY,EAAE,CAAC;gBACpB,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,YAAY,CAAC,CAAC;gBACtE,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,iBAAiB,CAAC,UAAU,CAAC,IAAI,EACrC;WACD,EAAE,CAAC,QAAQ,IAAI,SAAS;YACvB,EAAE,CAAC,YAAY,IAAI,qBAAqB;;;mDAGD,EAAE,CAAC,WAAW,OAAO,EAAE,CAAC,QAAQ,IAAI,UAAU,WAAW,UAAU,CAAC,IAAI,EAAE,CAClH,CAAC;oBACF,MAAM,sBAAsB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;oBAC9C,iBAAiB,EAAE,CAAC;gBACtB,CAAC;YACH,CAAC;YACD,iDAAiD;YACjD,oDAAoD;YACpD,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,yDAAyD,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAChF,CAAC;QACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,EAAE,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,iBAAiB,kCAAkC,CAAC,CAAC,CAAC;QAC/F,CAAC;QAED,8EAA8E;QAC9E,2EAA2E;QAC3E,MAAM,eAAe,GAAG,kBAAkB,CAAC,EAAE,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,MAAM,CACnE,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CACzD,CAAC;QACF,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;YACpC,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;gBAC5B,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBAC3D,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBACxC,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACzC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAC3D,CAAC;oBACF,IAAI,YAAY,EAAE,CAAC;wBACjB,wCAAwC;wBACxC,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBAC5D,MAAM,WAAW,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC;wBAClD,oEAAoE;wBACpE,IAAI,WAAW,CAAC,SAAS,IAAI,CAAC,WAAW,CAAC,UAAU,IAAI,WAAW,CAAC,KAAK,KAAK,eAAe,CAAC,QAAQ,EAAE,CAAC;4BACvG,MAAM,iBAAiB,CAAC,YAAY,CAAC,IAAI,EACvC,qBAAqB,KAAK,CAAC,EAAE;;;cAG/B,CACC,CAAC;4BACF,MAAM,sBAAsB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;wBAClD,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,kDAAkD;QAClD,sDAAsD;QACtD,MAAM,uBAAuB,GAAG,QAAQ,CAAW,EAAE,CAAC,EAAE,EACtD,iFAAiF,CAClF,CAAC;QACF,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,KAAK,MAAM,KAAK,IAAI,uBAAuB,EAAE,CAAC;YAC5C,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;gBAC5B,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBAC3D,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;oBAC3C,yCAAyC;oBACzC,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACzC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,YAAY,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,CAC3D,CAAC;oBAEF,IAAI,YAAY,EAAE,CAAC;wBACjB,gCAAgC;wBAChC,MAAM,iBAAiB,CAAC,YAAY,CAAC,IAAI,EACvC,iCAAiC,KAAK,CAAC,EAAE;0CACb,CAC7B,CAAC;wBACF,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;wBACxD,MAAM,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;oBAC3C,CAAC;oBAED,2BAA2B;oBAC3B,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;oBAE7E,sBAAsB;oBACtB,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE;wBACf,OAAO,EAAE,KAAK,CAAC,EAAE;wBACjB,OAAO,EAAE,KAAK,CAAC,EAAE;wBACjB,SAAS,EAAE,kBAAkB;wBAC7B,OAAO,EAAE,+BAA+B,KAAK,CAAC,EAAE,aAAa;qBAC9D,CAAC,CAAC;oBAEH,6BAA6B;oBAC7B,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,0DAA0D,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;oBAElF,cAAc,EAAE,CAAC;gBACnB,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;YACvB,EAAE,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,cAAc,kCAAkC,CAAC,CAAC,CAAC;QAC5F,CAAC;QAED,0EAA0E;QAC1E,MAAM,aAAa,GAAG,QAAQ,CAAW,EAAE,CAAC,EAAE,EAC5C,+GAA+G,CAChH,CAAC;QACF,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,yDAAyD;YACzD,MAAM,aAAa,GAAG,QAAQ,CAA4D,EAAE,CAAC,EAAE,EAC7F,4FAA4F,CAC7F,CAAC;YACF,IAAI,YAAY,GAAG,CAAC,CAAC;YACrB,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;gBAClC,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,YAAY,CAAC,CAAC;gBAC3E,IAAI,YAAY,EAAE,CAAC;oBACjB,MAAM,iBAAiB,CAAC,YAAY,CAAC,IAAI,EACvC,+DAA+D,CAChE,CAAC;oBACF,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;oBACvD,MAAM,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBAC3C,CAAC;gBACD,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC7E,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE;oBACf,OAAO,EAAE,KAAK,CAAC,EAAE;oBACjB,SAAS,EAAE,kBAAkB;oBAC7B,OAAO,EAAE,iDAAiD;iBAC3D,CAAC,CAAC;gBACH,YAAY,EAAE,CAAC;YACjB,CAAC;YACD,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;gBACrB,EAAE,CAAC,IAAI,EAAE,CAAC;gBACV,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,eAAe,YAAY,iCAAiC,CAAC,CAAC,CAAC;YACzF,CAAC;QACH,CAAC;QAED,oFAAoF;QACpF,2DAA2D;QAC3D,MAAM,YAAY,GAAG,QAAQ,CAAW,EAAE,CAAC,EAAE,EAC3C;;uDAEiD,CAClD,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QACnE,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;gBAC5B,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACzC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,iBAAiB,EAAE,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CACtE,CAAC;gBACF,IAAI,YAAY,EAAE,CAAC;oBACjB,MAAM,iBAAiB,CAAC,YAAY,CAAC,IAAI,EACvC,qBAAqB,KAAK,CAAC,EAAE;;2DAEkB,KAAK,CAAC,EAAE,WAAW,YAAY,CAAC,IAAI;iDAC9C,KAAK,CAAC,EAAE,EAAE,CAChD,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,uCAAuC;QACvC,MAAM,cAAc,GAAG,QAAQ,CAAW,EAAE,CAAC,EAAE,EAC7C,8EAA8E,CAC/E,CAAC;QACF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,uCAAuC;YACvC,MAAM,cAAc,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;YAC7E,KAAK,MAAM,MAAM,IAAI,cAAc,EAAE,CAAC;gBACpC,MAAM,iBAAiB,CAAC,MAAM,CAAC,IAAI,EACjC,KAAK,cAAc,CAAC,MAAM,gDAAgD,MAAM,CAAC,IAAI,QAAQ,CAC9F,CAAC;YACJ,CAAC;QACH,CAAC;QAED,UAAU;QACV,MAAM,OAAO,GAAG,EAAE,CAAC;QACnB,IAAI,kBAAkB,GAAG,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,kBAAkB,sBAAsB,CAAC,CAAC;QACtF,IAAI,MAAM,GAAG,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,SAAS,CAAC,CAAC;QACjD,IAAI,iBAAiB,GAAG,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,iBAAiB,qBAAqB,CAAC,CAAC;QACnF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,MAAM,aAAa,CAAC,CAAC;QAEzE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC;QACtD,CAAC;IAEH,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAGD,SAAS,YAAY,CAAC,WAAmB;IACvC,IAAI,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,QAAQ,CAAC;IACtD,IAAI,WAAW,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QAAE,OAAO,cAAc,CAAC;IAClE,IAAI,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAE,OAAO,QAAQ,CAAC;IACtD,IAAI,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,KAAK,UAAU,UAAU,CACvB,KAAa,EACb,WAAmB,EACnB,aAAsB,EACtB,SAAkB,EAClB,MAAe,EACf,YAAsB;IAEtB,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,iBAAiB,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;QACpD,OAAO;IACT,CAAC;IAED,MAAM,IAAI,GAAG,SAAS,IAAI,YAAY,CAAC,WAAW,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,YAAY,IAAI,QAAmB,CAAC;IACpD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAE/C,gEAAgE;IAChE,IAAI,KAAa,CAAC;IAClB,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,IAAI;YACP,KAAK,GAAG;IACV,QAAQ,CAAC,UAAU,EAAE;6DACoC,CAAC;YACxD,MAAM;QACR,KAAK,QAAQ;YACX,KAAK,GAAG;uBACS,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC;qFAC4B,CAAC;YAChF,MAAM;QACR,KAAK,cAAc,CAAC;QACpB,KAAK,QAAQ;YACX,KAAK,GAAG;IACV,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC;;wEAEkC,WAAW,EAAE,CAAC;YAChF,MAAM;QACR;YACE,KAAK,GAAG;YACF,CAAC;IACX,CAAC;IAED,iCAAiC;IACjC,IAAI,MAAM,EAAE,CAAC;QACX,KAAK,GAAG,uBAAuB,MAAM,KAAK,KAAK,EAAE,CAAC;IACpD,CAAC;IAED,MAAM,iBAAiB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;IAE5C,gDAAgD;IAChD,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACvD,MAAM,sBAAsB,CAAC,WAAW,CAAC,CAAC;AAC5C,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,WAAmB,EAAE,QAAsB,EAAE,UAAmB,QAAQ;IACrG,MAAM,QAAQ,GAAG,oBAAoB,CAAC,OAAO,CAAC,CAAC;IAC/C,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,YAAY,GAAG,sBAAsB,GAAG,CAAC,YAAY,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE;IACpG,GAAG,CAAC,IAAI;kBACM,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,eAAe,EAAE,WAAW,CAAC,EAAE,CAAC;QAExE,MAAM,iBAAiB,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QACnD,+BAA+B;QAC/B,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;IACzD,CAAC;AACH,CAAC;AAOD,KAAK,UAAU,uBAAuB,CAAC,IAAY,EAAE,EAAkB;IACrE,MAAM,KAAK,GAAG,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAEjC,IAAI,cAAc,GAAG,CAAC,CAAC;IAEvB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,SAAS;QAE9B,MAAM,OAAO,GAAG,GAAG,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QAE5C,IAAI,CAAC;YACH,sCAAsC;YACtC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,6BAA6B,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE;gBAC9H,GAAG,EAAE,OAAO;aACb,CAAC,CAAC;YACH,MAAM,SAAS,GAAqE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAE9G,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;gBAC3B,mEAAmE;gBACnE,+DAA+D;gBAC/D,MAAM,UAAU,GAAG,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAC7D,IAAI,CAAC,UAAU;oBAAE,SAAS;gBAE1B,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;gBAE5C,iDAAiD;gBACjD,MAAM,KAAK,GAAG,QAAQ,CAAW,EAAE,CAAC,EAAE,EACpC,2DAA2D,EAC3D,CAAC,OAAO,CAAC,CACV,CAAC;gBAEF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACrB,yBAAyB;oBACzB,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,2GAA2G,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;oBAElI,eAAe;oBACf,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE;wBACf,OAAO,EAAE,SAAS;wBAClB,OAAO,EAAE,OAAO;wBAChB,SAAS,EAAE,cAAc;wBACzB,OAAO,EAAE,0CAA0C,EAAE,CAAC,MAAM,EAAE;qBAC/D,CAAC,CAAC;oBAEH,cAAc,EAAE,CAAC;gBACnB,CAAC;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,kEAAkE;YAClE,SAAS;QACX,CAAC;IACH,CAAC;IAED,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;QACvB,EAAE,CAAC,IAAI,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,IAAY,EAAE,EAAkB,EAAE,QAAgB;IAC7E,MAAM,KAAK,GAAG,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACjC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAEjC,8EAA8E;IAC9E,MAAM,WAAW,GAAG,QAAQ,CAAiB,EAAE,CAAC,EAAE,EAChD,6BAA6B,CAC9B,CAAC;IACF,8EAA8E;IAC9E,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;IACxE,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;IAE9F,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,SAAS;QAE9B,MAAM,OAAO,GAAG,GAAG,IAAI,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QAE5C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,8BAA8B,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE;gBAC5G,GAAG,EAAE,OAAO;aACb,CAAC,CAAC;YACH,MAAM,KAAK,GAA+E,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAEpH,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,2BAA2B;gBAC3B,IAAI,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;oBACjF,SAAS;gBACX,CAAC;gBAED,iDAAiD;gBACjD,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBACxD,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;gBAEhE,iBAAiB,CAAC,EAAE,CAAC,EAAE,EAAE;oBACvB,OAAO;oBACP,MAAM,EAAE,IAAI,CAAC,EAAE;oBACf,UAAU,EAAE,IAAI,CAAC,WAAW;oBAC5B,cAAc,EAAE,IAAI,CAAC,MAAM;oBAC3B,WAAW,EAAE,IAAI,CAAC,GAAG;oBACrB,WAAW,EAAE,IAAI;iBAClB,CAAC,CAAC;gBAEH,MAAM,EAAE,CAAC;YACX,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,kEAAkE;YAClE,SAAS;QACX,CAAC;IACH,CAAC;IAED,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACf,EAAE,CAAC,IAAI,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,IAAY,EAAE,EAAkB;IAClE,MAAM,WAAW,GAAG,uBAAuB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACnD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,CAAC,CAAC;IAEvC,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE,CAAC;QAC7B,qCAAqC;QACrC,IAAI,CAAC,EAAE,CAAC,gBAAgB;YAAE,SAAS;QAEnC,IAAI,CAAC;YACH,6BAA6B;YAC7B,IAAI,MAAM,GAAG,EAAE,CAAC,OAAO,CAAC;YACxB,IAAI,OAAO,GAAG,IAAI,CAAC;YAEnB,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,IAAI,GAAG,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;gBAC3D,IAAI,IAAI,EAAE,SAAS,EAAE,CAAC;oBACpB,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;iBAAM,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBAC1B,mDAAmD;gBACnD,MAAM,KAAK,GAAG,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACjC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;wBACnB,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;wBACrC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC;wBACjB,MAAM;oBACR,CAAC;gBACH,CAAC;YACH,CAAC;YAED,6BAA6B;YAC7B,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;YACnD,IAAI,CAAC;gBACH,QAAQ,CAAC,eAAe,EAAE,CAAC,gBAAgB,kCAAkC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;gBAEhH,6BAA6B;gBAC7B,iBAAiB,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;gBAEtD,gCAAgC;gBAChC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC;oBAChB,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;oBACtD,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE;wBACf,OAAO,EAAE,SAAS;wBAClB,OAAO,EAAE,EAAE,CAAC,QAAQ;wBACpB,SAAS,EAAE,cAAc;wBACzB,OAAO,EAAE,qCAAqC,EAAE,CAAC,gBAAgB,EAAE;qBACpE,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE;wBACf,OAAO,EAAE,SAAS;wBAClB,SAAS,EAAE,WAAW;wBACtB,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,4BAA4B,EAAE,CAAC,gBAAgB,GAAG;wBACtE,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;qBAC3B,CAAC,CAAC;gBACL,CAAC;gBAED,WAAW,EAAE,CAAC;YAChB,CAAC;YAAC,OAAO,QAAQ,EAAE,CAAC;gBAClB,gDAAgD;gBAChD,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE;oBACf,OAAO,EAAE,SAAS;oBAClB,OAAO,EAAE,EAAE,CAAC,QAAQ,IAAI,SAAS;oBACjC,SAAS,EAAE,iBAAiB;oBAC5B,MAAM,EAAE,OAAO;oBACf,OAAO,EAAE,2BAA2B,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,gBAAgB,MAAM,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE;oBAClJ,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;iBAC3B,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,sCAAsC;YACtC,SAAS;QACX,CAAC;IACH,CAAC;IAED,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;QACpB,EAAE,CAAC,IAAI,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,WAAW,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"manager.js","sourceRoot":"","sources":["../../../src/cli/commands/manager.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export interface MessageRow {
12
12
  }
13
13
  export declare function getUnreadMessages(db: Database, toSession: string): MessageRow[];
14
14
  export declare function markMessageRead(db: Database, messageId: string): void;
15
+ export declare function markMessagesRead(db: Database, messageIds: string[]): void;
15
16
  export declare function getMessageById(db: Database, id: string): MessageRow | undefined;
16
17
  export declare function getAllPendingMessages(db: Database): MessageRow[];
17
18
  //# sourceMappingURL=messages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/db/queries/messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAGvC,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,UAAU,EAAE,CAM/E;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAErE;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAE/E;AAED,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,GAAG,UAAU,EAAE,CAMhE"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../../src/db/queries/messages.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAGvC,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;IACvC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,UAAU,EAAE,CAM/E;AAED,wBAAgB,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAErE;AAED,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAIzE;AAED,wBAAgB,cAAc,CAAC,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAE/E;AAED,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,GAAG,UAAU,EAAE,CAMhE"}
@@ -9,6 +9,12 @@ export function getUnreadMessages(db, toSession) {
9
9
  export function markMessageRead(db, messageId) {
10
10
  run(db, `UPDATE messages SET status = 'read' WHERE id = ? AND status = 'pending'`, [messageId]);
11
11
  }
12
+ export function markMessagesRead(db, messageIds) {
13
+ if (messageIds.length === 0)
14
+ return;
15
+ const placeholders = messageIds.map(() => '?').join(',');
16
+ run(db, `UPDATE messages SET status = 'read' WHERE id IN (${placeholders}) AND status = 'pending'`, messageIds);
17
+ }
12
18
  export function getMessageById(db, id) {
13
19
  return queryOne(db, 'SELECT * FROM messages WHERE id = ?', [id]);
14
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../src/db/queries/messages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAcvD,MAAM,UAAU,iBAAiB,CAAC,EAAY,EAAE,SAAiB;IAC/D,OAAO,QAAQ,CAAa,EAAE,EAAE;;;;GAI/B,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,EAAY,EAAE,SAAiB;IAC7D,GAAG,CAAC,EAAE,EAAE,yEAAyE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;AAClG,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,EAAY,EAAE,EAAU;IACrD,OAAO,QAAQ,CAAa,EAAE,EAAE,qCAAqC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,EAAY;IAChD,OAAO,QAAQ,CAAa,EAAE,EAAE;;;;GAI/B,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../../src/db/queries/messages.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAcvD,MAAM,UAAU,iBAAiB,CAAC,EAAY,EAAE,SAAiB;IAC/D,OAAO,QAAQ,CAAa,EAAE,EAAE;;;;GAI/B,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,EAAY,EAAE,SAAiB;IAC7D,GAAG,CAAC,EAAE,EAAE,yEAAyE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;AAClG,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,EAAY,EAAE,UAAoB;IACjE,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IACpC,MAAM,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzD,GAAG,CAAC,EAAE,EAAE,oDAAoD,YAAY,0BAA0B,EAAE,UAAU,CAAC,CAAC;AAClH,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,EAAY,EAAE,EAAU;IACrD,OAAO,QAAQ,CAAa,EAAE,EAAE,qCAAqC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,EAAY;IAChD,OAAO,QAAQ,CAAa,EAAE,EAAE;;;;GAI/B,CAAC,CAAC;AACL,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hungry-ghost-hive",
3
- "version": "0.4.0",
3
+ "version": "0.4.1",
4
4
  "description": "AI Agent Orchestrator - Manages agile software development teams of AI agents",
5
5
  "type": "module",
6
6
  "bin": {
@@ -6,9 +6,9 @@ import { loadConfig } from '../../config/loader.js';
6
6
  import { Scheduler } from '../../orchestrator/scheduler.js';
7
7
  import { getHiveSessions, sendToTmuxSession, sendEnterToTmuxSession, captureTmuxPane, isManagerRunning, stopManager as stopManagerSession, killTmuxSession } from '../../tmux/manager.js';
8
8
  import { getMergeQueue, getPullRequestsByStatus, getApprovedPullRequests, updatePullRequest } from '../../db/queries/pull-requests.js';
9
- import { getUnreadMessages, markMessageRead, type MessageRow } from '../../db/queries/messages.js';
9
+ import { markMessagesRead, getAllPendingMessages, type MessageRow } from '../../db/queries/messages.js';
10
10
  import { createEscalation, getPendingEscalations } from '../../db/queries/escalations.js';
11
- import { getAgentById, updateAgent } from '../../db/queries/agents.js';
11
+ import { getAgentById, updateAgent, getAllAgents } from '../../db/queries/agents.js';
12
12
  import { createLog } from '../../db/queries/logs.js';
13
13
  import { queryAll } from '../../db/client.js';
14
14
  import type { StoryRow } from '../../db/client.js';
@@ -314,24 +314,38 @@ async function managerCheck(root: string): Promise<void> {
314
314
  .map(e => e.from_agent_id)
315
315
  );
316
316
 
317
+ // Optimization: Batch fetch all agents and messages instead of per-session queries
318
+ const allAgents = getAllAgents(db.db);
319
+ const agentsBySessionName = new Map(
320
+ allAgents.map(a => [`hive-${a.id}`, a])
321
+ );
322
+
323
+ const allPendingMessages = getAllPendingMessages(db.db);
324
+ const messagesBySessionName = new Map<string, MessageRow[]>();
325
+ const messagesToMarkRead: string[] = [];
326
+
327
+ for (const msg of allPendingMessages) {
328
+ if (!messagesBySessionName.has(msg.to_session)) {
329
+ messagesBySessionName.set(msg.to_session, []);
330
+ }
331
+ messagesBySessionName.get(msg.to_session)!.push(msg);
332
+ }
333
+
317
334
  for (const session of hiveSessions) {
318
335
  // Skip manager itself
319
336
  if (session.name === 'hive-manager') continue;
320
337
 
321
- // Get agent information for CLI-aware messaging
322
- const agent = getAgentById(db.db, session.name.replace('hive-', ''));
338
+ // Get agent information for CLI-aware messaging (from cached data)
339
+ const agent = agentsBySessionName.get(session.name);
323
340
  const agentCliTool = (agent?.cli_tool || 'claude') as CLITool;
324
341
 
325
- // Check if agent has unread messages
326
- const unread = getUnreadMessages(db.db, session.name);
342
+ // Check if agent has unread messages (from cached data)
343
+ const unread = messagesBySessionName.get(session.name) || [];
327
344
  if (unread.length > 0) {
328
345
  await forwardMessages(session.name, unread, agentCliTool);
329
346
  messagesForwarded += unread.length;
330
- // Mark as read
331
- for (const msg of unread) {
332
- markMessageRead(db.db, msg.id);
333
- }
334
- db.save();
347
+ // Collect message IDs to mark as read in batch
348
+ messagesToMarkRead.push(...unread.map(msg => msg.id));
335
349
  }
336
350
 
337
351
  // Check if agent appears stuck (capture last output)
@@ -414,6 +428,12 @@ async function managerCheck(root: string): Promise<void> {
414
428
  // If not waiting (actively working), do nothing - let them work
415
429
  }
416
430
 
431
+ // Batch mark all messages as read after processing
432
+ if (messagesToMarkRead.length > 0) {
433
+ markMessagesRead(db.db, messagesToMarkRead);
434
+ db.save();
435
+ }
436
+
417
437
  // Check for PRs needing QA attention
418
438
  const queuedPRs = getMergeQueue(db.db);
419
439
  if (queuedPRs.length > 0) {
@@ -25,6 +25,12 @@ export function markMessageRead(db: Database, messageId: string): void {
25
25
  run(db, `UPDATE messages SET status = 'read' WHERE id = ? AND status = 'pending'`, [messageId]);
26
26
  }
27
27
 
28
+ export function markMessagesRead(db: Database, messageIds: string[]): void {
29
+ if (messageIds.length === 0) return;
30
+ const placeholders = messageIds.map(() => '?').join(',');
31
+ run(db, `UPDATE messages SET status = 'read' WHERE id IN (${placeholders}) AND status = 'pending'`, messageIds);
32
+ }
33
+
28
34
  export function getMessageById(db: Database, id: string): MessageRow | undefined {
29
35
  return queryOne<MessageRow>(db, 'SELECT * FROM messages WHERE id = ?', [id]);
30
36
  }