@intrect/openswarm 0.15.0 → 0.17.0

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 (323) hide show
  1. package/README.md +4 -3
  2. package/dist/adapters/agenticLoop.d.ts +2 -0
  3. package/dist/adapters/agenticLoop.d.ts.map +1 -1
  4. package/dist/adapters/agenticLoop.js +8 -5
  5. package/dist/adapters/agenticLoop.js.map +1 -1
  6. package/dist/adapters/codexResponses.d.ts.map +1 -1
  7. package/dist/adapters/codexResponses.js +1 -0
  8. package/dist/adapters/codexResponses.js.map +1 -1
  9. package/dist/adapters/gpt.d.ts.map +1 -1
  10. package/dist/adapters/gpt.js +1 -0
  11. package/dist/adapters/gpt.js.map +1 -1
  12. package/dist/adapters/local.d.ts.map +1 -1
  13. package/dist/adapters/local.js +1 -0
  14. package/dist/adapters/local.js.map +1 -1
  15. package/dist/adapters/openrouter.d.ts.map +1 -1
  16. package/dist/adapters/openrouter.js +1 -0
  17. package/dist/adapters/openrouter.js.map +1 -1
  18. package/dist/adapters/tools.d.ts +2 -0
  19. package/dist/adapters/tools.d.ts.map +1 -1
  20. package/dist/adapters/tools.js +7 -0
  21. package/dist/adapters/tools.js.map +1 -1
  22. package/dist/adapters/types.d.ts +2 -0
  23. package/dist/adapters/types.d.ts.map +1 -1
  24. package/dist/automation/autonomousRunner.d.ts +5 -5
  25. package/dist/automation/autonomousRunner.d.ts.map +1 -1
  26. package/dist/automation/autonomousRunner.js +7 -9
  27. package/dist/automation/autonomousRunner.js.map +1 -1
  28. package/dist/automation/ciWorker.d.ts.map +1 -1
  29. package/dist/automation/ciWorker.js +16 -11
  30. package/dist/automation/ciWorker.js.map +1 -1
  31. package/dist/automation/dailyReporter.d.ts.map +1 -1
  32. package/dist/automation/dailyReporter.js +7 -2
  33. package/dist/automation/dailyReporter.js.map +1 -1
  34. package/dist/automation/longRunningMonitor.d.ts.map +1 -1
  35. package/dist/automation/longRunningMonitor.js +17 -27
  36. package/dist/automation/longRunningMonitor.js.map +1 -1
  37. package/dist/automation/prProcessor.d.ts.map +1 -1
  38. package/dist/automation/prProcessor.js +103 -24
  39. package/dist/automation/prProcessor.js.map +1 -1
  40. package/dist/automation/runnerState.d.ts +0 -6
  41. package/dist/automation/runnerState.d.ts.map +1 -1
  42. package/dist/automation/runnerState.js +16 -31
  43. package/dist/automation/runnerState.js.map +1 -1
  44. package/dist/automation/runnerTypes.d.ts +0 -2
  45. package/dist/automation/runnerTypes.d.ts.map +1 -1
  46. package/dist/automation/scheduler.d.ts.map +1 -1
  47. package/dist/automation/scheduler.js +76 -76
  48. package/dist/automation/scheduler.js.map +1 -1
  49. package/dist/automation/taskSource.d.ts +1 -1
  50. package/dist/automation/taskSource.d.ts.map +1 -1
  51. package/dist/automation/taskSource.js +95 -8
  52. package/dist/automation/taskSource.js.map +1 -1
  53. package/dist/automation/workerAuditLog.d.ts.map +1 -1
  54. package/dist/automation/workerAuditLog.js +4 -1
  55. package/dist/automation/workerAuditLog.js.map +1 -1
  56. package/dist/cli/authHandler.d.ts.map +1 -1
  57. package/dist/cli/authHandler.js +10 -12
  58. package/dist/cli/authHandler.js.map +1 -1
  59. package/dist/cli/checkHandler.d.ts.map +1 -1
  60. package/dist/cli/checkHandler.js +12 -10
  61. package/dist/cli/checkHandler.js.map +1 -1
  62. package/dist/cli/daemon.d.ts.map +1 -1
  63. package/dist/cli/daemon.js +24 -9
  64. package/dist/cli/daemon.js.map +1 -1
  65. package/dist/cli/fixCommand.d.ts.map +1 -1
  66. package/dist/cli/fixCommand.js +10 -0
  67. package/dist/cli/fixCommand.js.map +1 -1
  68. package/dist/cli/initWizard.d.ts.map +1 -1
  69. package/dist/cli/initWizard.js +6 -1
  70. package/dist/cli/initWizard.js.map +1 -1
  71. package/dist/cli/projectHandler.d.ts.map +1 -1
  72. package/dist/cli/projectHandler.js +3 -2
  73. package/dist/cli/projectHandler.js.map +1 -1
  74. package/dist/cli/promptHandler.d.ts.map +1 -1
  75. package/dist/cli/promptHandler.js +21 -10
  76. package/dist/cli/promptHandler.js.map +1 -1
  77. package/dist/cli/reviewAudit.d.ts +2 -2
  78. package/dist/cli/reviewAudit.js +3 -3
  79. package/dist/cli/reviewAudit.js.map +1 -1
  80. package/dist/cli/reviewMaxCommand.d.ts.map +1 -1
  81. package/dist/cli/reviewMaxCommand.js +10 -2
  82. package/dist/cli/reviewMaxCommand.js.map +1 -1
  83. package/dist/cli/scheduleCommand.d.ts.map +1 -1
  84. package/dist/cli/scheduleCommand.js +20 -5
  85. package/dist/cli/scheduleCommand.js.map +1 -1
  86. package/dist/cli.js +15 -4
  87. package/dist/cli.js.map +1 -1
  88. package/dist/core/config.d.ts +33 -14
  89. package/dist/core/config.d.ts.map +1 -1
  90. package/dist/core/config.js +18 -3
  91. package/dist/core/config.js.map +1 -1
  92. package/dist/core/service.d.ts.map +1 -1
  93. package/dist/core/service.js +0 -2
  94. package/dist/core/service.js.map +1 -1
  95. package/dist/core/types.d.ts +0 -2
  96. package/dist/core/types.d.ts.map +1 -1
  97. package/dist/discord/discordCore.d.ts.map +1 -1
  98. package/dist/discord/discordCore.js +20 -4
  99. package/dist/discord/discordCore.js.map +1 -1
  100. package/dist/discord/discordPair.js +12 -0
  101. package/dist/discord/discordPair.js.map +1 -1
  102. package/dist/github/github.d.ts +1 -1
  103. package/dist/github/github.d.ts.map +1 -1
  104. package/dist/github/github.js +41 -11
  105. package/dist/github/github.js.map +1 -1
  106. package/dist/index.js +15 -6
  107. package/dist/index.js.map +1 -1
  108. package/dist/issues/graphql/resolvers.d.ts +4 -4
  109. package/dist/issues/graphql/resolvers.d.ts.map +1 -1
  110. package/dist/issues/graphql/resolvers.js +43 -3
  111. package/dist/issues/graphql/resolvers.js.map +1 -1
  112. package/dist/issues/graphql/server.d.ts.map +1 -1
  113. package/dist/issues/graphql/server.js +76 -5
  114. package/dist/issues/graphql/server.js.map +1 -1
  115. package/dist/issues/graphql/typeDefs.d.ts +1 -1
  116. package/dist/issues/graphql/typeDefs.d.ts.map +1 -1
  117. package/dist/issues/graphql/typeDefs.js +0 -5
  118. package/dist/issues/graphql/typeDefs.js.map +1 -1
  119. package/dist/issues/issueBoardHtml.d.ts +1 -1
  120. package/dist/issues/issueBoardHtml.d.ts.map +1 -1
  121. package/dist/issues/issueBoardHtml.js +40 -20
  122. package/dist/issues/issueBoardHtml.js.map +1 -1
  123. package/dist/issues/linearBridge.d.ts +1 -1
  124. package/dist/issues/linearBridge.d.ts.map +1 -1
  125. package/dist/issues/linearBridge.js +14 -5
  126. package/dist/issues/linearBridge.js.map +1 -1
  127. package/dist/issues/memoryBridge.d.ts.map +1 -1
  128. package/dist/issues/memoryBridge.js +23 -11
  129. package/dist/issues/memoryBridge.js.map +1 -1
  130. package/dist/issues/schema.d.ts +3 -3
  131. package/dist/issues/sqliteStore.d.ts +3 -0
  132. package/dist/issues/sqliteStore.d.ts.map +1 -1
  133. package/dist/issues/sqliteStore.js +124 -19
  134. package/dist/issues/sqliteStore.js.map +1 -1
  135. package/dist/knowledge/analyzer.d.ts.map +1 -1
  136. package/dist/knowledge/analyzer.js +13 -1
  137. package/dist/knowledge/analyzer.js.map +1 -1
  138. package/dist/knowledge/graphqlExporter.d.ts.map +1 -1
  139. package/dist/knowledge/graphqlExporter.js +38 -9
  140. package/dist/knowledge/graphqlExporter.js.map +1 -1
  141. package/dist/knowledge/scanner.d.ts.map +1 -1
  142. package/dist/knowledge/scanner.js +69 -26
  143. package/dist/knowledge/scanner.js.map +1 -1
  144. package/dist/linear/linear.d.ts.map +1 -1
  145. package/dist/linear/linear.js +11 -11
  146. package/dist/linear/linear.js.map +1 -1
  147. package/dist/linear/projectUpdater.js +12 -2
  148. package/dist/linear/projectUpdater.js.map +1 -1
  149. package/dist/locale/en.d.ts.map +1 -1
  150. package/dist/locale/en.js +4 -0
  151. package/dist/locale/en.js.map +1 -1
  152. package/dist/locale/index.d.ts +7 -2
  153. package/dist/locale/index.d.ts.map +1 -1
  154. package/dist/locale/index.js.map +1 -1
  155. package/dist/locale/ko.d.ts.map +1 -1
  156. package/dist/locale/ko.js +4 -0
  157. package/dist/locale/ko.js.map +1 -1
  158. package/dist/locale/prompts/en.d.ts.map +1 -1
  159. package/dist/locale/prompts/en.js +111 -42
  160. package/dist/locale/prompts/en.js.map +1 -1
  161. package/dist/locale/prompts/ko.d.ts.map +1 -1
  162. package/dist/locale/prompts/ko.js +111 -42
  163. package/dist/locale/prompts/ko.js.map +1 -1
  164. package/dist/locale/types.d.ts +4 -0
  165. package/dist/locale/types.d.ts.map +1 -1
  166. package/dist/mcp/mcpClient.d.ts.map +1 -1
  167. package/dist/mcp/mcpClient.js +68 -6
  168. package/dist/mcp/mcpClient.js.map +1 -1
  169. package/dist/mcp/memoryServer.js +3 -0
  170. package/dist/mcp/memoryServer.js.map +1 -1
  171. package/dist/memory/codex.d.ts.map +1 -1
  172. package/dist/memory/codex.js +3 -2
  173. package/dist/memory/codex.js.map +1 -1
  174. package/dist/memory/compaction.d.ts.map +1 -1
  175. package/dist/memory/compaction.js +36 -6
  176. package/dist/memory/compaction.js.map +1 -1
  177. package/dist/memory/memoryCore.d.ts +1 -0
  178. package/dist/memory/memoryCore.d.ts.map +1 -1
  179. package/dist/memory/memoryCore.js +43 -25
  180. package/dist/memory/memoryCore.js.map +1 -1
  181. package/dist/memory/memoryOps.d.ts.map +1 -1
  182. package/dist/memory/memoryOps.js +54 -58
  183. package/dist/memory/memoryOps.js.map +1 -1
  184. package/dist/notify/notifier.d.ts.map +1 -1
  185. package/dist/notify/notifier.js +31 -7
  186. package/dist/notify/notifier.js.map +1 -1
  187. package/dist/orchestration/conflictDetector.d.ts.map +1 -1
  188. package/dist/orchestration/conflictDetector.js +15 -4
  189. package/dist/orchestration/conflictDetector.js.map +1 -1
  190. package/dist/orchestration/decisionEngine.d.ts +32 -2
  191. package/dist/orchestration/decisionEngine.d.ts.map +1 -1
  192. package/dist/orchestration/decisionEngine.js +80 -41
  193. package/dist/orchestration/decisionEngine.js.map +1 -1
  194. package/dist/orchestration/taskParser.d.ts.map +1 -1
  195. package/dist/orchestration/taskParser.js +21 -3
  196. package/dist/orchestration/taskParser.js.map +1 -1
  197. package/dist/orchestration/taskScheduler.d.ts.map +1 -1
  198. package/dist/orchestration/taskScheduler.js +47 -19
  199. package/dist/orchestration/taskScheduler.js.map +1 -1
  200. package/dist/orchestration/workflow.d.ts.map +1 -1
  201. package/dist/orchestration/workflow.js +22 -5
  202. package/dist/orchestration/workflow.js.map +1 -1
  203. package/dist/registry/bsDetector.js +2 -2
  204. package/dist/registry/bsDetector.js.map +1 -1
  205. package/dist/registry/entityScanner.d.ts.map +1 -1
  206. package/dist/registry/entityScanner.js +25 -6
  207. package/dist/registry/entityScanner.js.map +1 -1
  208. package/dist/registry/graphql/resolvers.d.ts +23 -8
  209. package/dist/registry/graphql/resolvers.d.ts.map +1 -1
  210. package/dist/registry/graphql/resolvers.js +126 -32
  211. package/dist/registry/graphql/resolvers.js.map +1 -1
  212. package/dist/registry/graphql/typeDefs.d.ts +1 -1
  213. package/dist/registry/graphql/typeDefs.d.ts.map +1 -1
  214. package/dist/registry/graphql/typeDefs.js +9 -8
  215. package/dist/registry/graphql/typeDefs.js.map +1 -1
  216. package/dist/registry/issueBridge.d.ts +1 -1
  217. package/dist/registry/issueBridge.d.ts.map +1 -1
  218. package/dist/registry/issueBridge.js +2 -2
  219. package/dist/registry/issueBridge.js.map +1 -1
  220. package/dist/registry/sqliteStore.d.ts +2 -2
  221. package/dist/registry/sqliteStore.d.ts.map +1 -1
  222. package/dist/registry/sqliteStore.js +24 -10
  223. package/dist/registry/sqliteStore.js.map +1 -1
  224. package/dist/runners/cliRunner.d.ts.map +1 -1
  225. package/dist/runners/cliRunner.js +42 -19
  226. package/dist/runners/cliRunner.js.map +1 -1
  227. package/dist/support/apiCache.d.ts +15 -1
  228. package/dist/support/apiCache.d.ts.map +1 -1
  229. package/dist/support/apiCache.js +42 -7
  230. package/dist/support/apiCache.js.map +1 -1
  231. package/dist/support/chatBackend.d.ts.map +1 -1
  232. package/dist/support/chatBackend.js +2 -3
  233. package/dist/support/chatBackend.js.map +1 -1
  234. package/dist/support/chatSession.d.ts.map +1 -1
  235. package/dist/support/chatSession.js +21 -3
  236. package/dist/support/chatSession.js.map +1 -1
  237. package/dist/support/dashboardHtml.d.ts +1 -1
  238. package/dist/support/dashboardHtml.d.ts.map +1 -1
  239. package/dist/support/dashboardHtml.js +19 -14
  240. package/dist/support/dashboardHtml.js.map +1 -1
  241. package/dist/support/delete-beliefs.d.ts +3 -1
  242. package/dist/support/delete-beliefs.d.ts.map +1 -1
  243. package/dist/support/delete-beliefs.js +18 -7
  244. package/dist/support/delete-beliefs.js.map +1 -1
  245. package/dist/support/editParser.d.ts.map +1 -1
  246. package/dist/support/editParser.js +46 -12
  247. package/dist/support/editParser.js.map +1 -1
  248. package/dist/support/gitTracker.d.ts +2 -2
  249. package/dist/support/gitTracker.d.ts.map +1 -1
  250. package/dist/support/gitTracker.js +10 -5
  251. package/dist/support/gitTracker.js.map +1 -1
  252. package/dist/support/planner.d.ts.map +1 -1
  253. package/dist/support/planner.js +1 -0
  254. package/dist/support/planner.js.map +1 -1
  255. package/dist/support/projectMapper.d.ts.map +1 -1
  256. package/dist/support/projectMapper.js +21 -16
  257. package/dist/support/projectMapper.js.map +1 -1
  258. package/dist/support/rateLimiter.d.ts.map +1 -1
  259. package/dist/support/rateLimiter.js +3 -0
  260. package/dist/support/rateLimiter.js.map +1 -1
  261. package/dist/support/rollback.d.ts.map +1 -1
  262. package/dist/support/rollback.js +57 -8
  263. package/dist/support/rollback.js.map +1 -1
  264. package/dist/support/stuckDetector.d.ts.map +1 -1
  265. package/dist/support/stuckDetector.js +8 -6
  266. package/dist/support/stuckDetector.js.map +1 -1
  267. package/dist/support/timeWindow.d.ts +1 -1
  268. package/dist/support/timeWindow.d.ts.map +1 -1
  269. package/dist/support/timeWindow.js +18 -7
  270. package/dist/support/timeWindow.js.map +1 -1
  271. package/dist/support/web.d.ts.map +1 -1
  272. package/dist/support/web.js +872 -791
  273. package/dist/support/web.js.map +1 -1
  274. package/dist/support/workflowLinear.d.ts.map +1 -1
  275. package/dist/support/workflowLinear.js +8 -6
  276. package/dist/support/workflowLinear.js.map +1 -1
  277. package/dist/support/worktreeManager.d.ts.map +1 -1
  278. package/dist/support/worktreeManager.js +33 -9
  279. package/dist/support/worktreeManager.js.map +1 -1
  280. package/dist/taskState/store.d.ts +7 -2
  281. package/dist/taskState/store.d.ts.map +1 -1
  282. package/dist/taskState/store.js +77 -21
  283. package/dist/taskState/store.js.map +1 -1
  284. package/dist/telemetry/telemetry.d.ts.map +1 -1
  285. package/dist/telemetry/telemetry.js +18 -4
  286. package/dist/telemetry/telemetry.js.map +1 -1
  287. package/dist/tui/components/ChatInput.d.ts +1 -0
  288. package/dist/tui/components/ChatInput.d.ts.map +1 -1
  289. package/dist/tui/components/ChatInput.js +14 -1
  290. package/dist/tui/components/ChatInput.js.map +1 -1
  291. package/dist/tui/components/SubagentTree.d.ts.map +1 -1
  292. package/dist/tui/components/SubagentTree.js +14 -2
  293. package/dist/tui/components/SubagentTree.js.map +1 -1
  294. package/dist/tui/hooks/useMonitor.d.ts.map +1 -1
  295. package/dist/tui/hooks/useMonitor.js +5 -0
  296. package/dist/tui/hooks/useMonitor.js.map +1 -1
  297. package/dist/tui/hooks/usePipelineEvents.d.ts.map +1 -1
  298. package/dist/tui/hooks/usePipelineEvents.js +12 -2
  299. package/dist/tui/hooks/usePipelineEvents.js.map +1 -1
  300. package/dist/tui/markdown.d.ts.map +1 -1
  301. package/dist/tui/markdown.js +11 -3
  302. package/dist/tui/markdown.js.map +1 -1
  303. package/dist/tui/monitorApi.d.ts.map +1 -1
  304. package/dist/tui/monitorApi.js +21 -0
  305. package/dist/tui/monitorApi.js.map +1 -1
  306. package/dist/tui/monitorRows.d.ts +2 -2
  307. package/dist/tui/monitorRows.d.ts.map +1 -1
  308. package/dist/tui/monitorRows.js +7 -1
  309. package/dist/tui/monitorRows.js.map +1 -1
  310. package/dist/tui/panels/ChatPanel.d.ts.map +1 -1
  311. package/dist/tui/panels/ChatPanel.js +30 -3
  312. package/dist/tui/panels/ChatPanel.js.map +1 -1
  313. package/dist/tui/sse.d.ts +1 -0
  314. package/dist/tui/sse.d.ts.map +1 -1
  315. package/dist/tui/sse.js +6 -1
  316. package/dist/tui/sse.js.map +1 -1
  317. package/dist/tui/subagentTree.d.ts.map +1 -1
  318. package/dist/tui/subagentTree.js +16 -5
  319. package/dist/tui/subagentTree.js.map +1 -1
  320. package/dist/tui/tabs.d.ts.map +1 -1
  321. package/dist/tui/tabs.js +7 -1
  322. package/dist/tui/tabs.js.map +1 -1
  323. package/package.json +1 -1
@@ -6,10 +6,18 @@
6
6
  // path so Slack/Telegram/generic-webhook are BYO drop-ins (INT-1576). Only the
7
7
  // OUTBOUND notification path is abstracted; interactive Discord bot commands
8
8
  // (!status etc.) remain Discord-specific.
9
+ const NOTIFICATION_TEXT_LIMIT = 4096;
10
+ const NOTIFICATION_POST_TIMEOUT_MS = 10_000;
11
+ const TRUNCATED_SUFFIX = '\n[truncated]';
12
+ function truncateNotificationText(text) {
13
+ if (text.length <= NOTIFICATION_TEXT_LIMIT)
14
+ return text;
15
+ return `${text.slice(0, NOTIFICATION_TEXT_LIMIT - TRUNCATED_SUFFIX.length)}${TRUNCATED_SUFFIX}`;
16
+ }
9
17
  /** Flatten a string|Embed into readable plain text for non-Discord channels. */
10
18
  export function messageToText(message) {
11
19
  if (typeof message === 'string')
12
- return message;
20
+ return truncateNotificationText(message);
13
21
  const d = message.data;
14
22
  const parts = [];
15
23
  if (d.title)
@@ -18,14 +26,30 @@ export function messageToText(message) {
18
26
  parts.push(d.description);
19
27
  for (const f of d.fields ?? [])
20
28
  parts.push(`${f.name}: ${f.value}`);
21
- return parts.join('\n') || '(notification)';
29
+ return truncateNotificationText(parts.join('\n') || '(notification)');
22
30
  }
23
31
  async function postJson(url, body) {
24
- const res = await fetch(url, {
25
- method: 'POST',
26
- headers: { 'Content-Type': 'application/json', 'User-Agent': 'OpenSwarm/0.7' },
27
- body: JSON.stringify(body),
32
+ const controller = new AbortController();
33
+ let timeoutId;
34
+ const timeout = new Promise((_, reject) => {
35
+ timeoutId = setTimeout(() => {
36
+ controller.abort();
37
+ reject(new Error(`notification webhook timed out after ${NOTIFICATION_POST_TIMEOUT_MS}ms`));
38
+ }, NOTIFICATION_POST_TIMEOUT_MS);
39
+ });
40
+ const res = await Promise.race([
41
+ fetch(url, {
42
+ method: 'POST',
43
+ headers: { 'Content-Type': 'application/json', 'User-Agent': 'OpenSwarm/0.7' },
44
+ body: JSON.stringify(body),
45
+ signal: controller.signal,
46
+ }),
47
+ timeout,
48
+ ]).finally(() => {
49
+ if (timeoutId)
50
+ clearTimeout(timeoutId);
28
51
  });
52
+ await res.arrayBuffer();
29
53
  if (!res.ok)
30
54
  throw new Error(`HTTP ${res.status} ${res.statusText}`);
31
55
  }
@@ -46,7 +70,7 @@ class DiscordNotifier {
46
70
  if (typeof message === 'string') {
47
71
  // Lazy import keeps discord.js out of the load path for non-Discord users.
48
72
  const { EmbedBuilder } = await import('discord.js');
49
- const embed = new EmbedBuilder().setDescription(message).setColor(0x00ff41).setTimestamp();
73
+ const embed = new EmbedBuilder().setDescription(messageToText(message)).setColor(0x00ff41).setTimestamp();
50
74
  await this.send({ embeds: [embed] });
51
75
  }
52
76
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"notifier.js","sourceRoot":"","sources":["../../src/notify/notifier.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,mCAAmC;AACnC,+CAA+C;AAC/C,EAAE;AACF,4EAA4E;AAC5E,+EAA+E;AAC/E,6EAA6E;AAC7E,0CAA0C;AAoB1C,gFAAgF;AAChF,MAAM,UAAU,aAAa,CAAC,OAA8B;IAC1D,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAChD,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACvB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,CAAC,CAAC,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,CAAC,CAAC,WAAW;QAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IAC7C,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACpE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,gBAAgB,CAAC;AAC9C,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,GAAW,EAAE,IAAa;IAChD,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAC3B,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,YAAY,EAAE,eAAe,EAAE;QAC9E,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;KAC3B,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;AACvE,CAAC;AAED,sDAAsD;AACtD,MAAM,YAAY;IAChB,KAAK,CAAC,MAAM,CAAC,OAA8B;QACzC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAC9E,CAAC;CACF;AAED,6FAA6F;AAC7F,MAAM,eAAe;IACU;IAA7B,YAA6B,IAAiB;QAAjB,SAAI,GAAJ,IAAI,CAAa;IAAG,CAAC;IAClD,KAAK,CAAC,MAAM,CAAC,OAA8B;QACzC,IAAI,CAAC;YACH,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAChC,2EAA2E;gBAC3E,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACpD,MAAM,KAAK,GAAG,IAAI,YAAY,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,YAAY,EAAE,CAAC;gBAC3F,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;CACF;AAED,MAAM,aAAa;IACY;IAA7B,YAA6B,UAAkB;QAAlB,eAAU,GAAV,UAAU,CAAQ;IAAG,CAAC;IACnD,KAAK,CAAC,MAAM,CAAC,OAA8B;QACzC,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;CACF;AAED,MAAM,gBAAgB;IACS;IAAmC;IAAhE,YAA6B,QAAgB,EAAmB,MAAc;QAAjD,aAAQ,GAAR,QAAQ,CAAQ;QAAmB,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAClF,KAAK,CAAC,MAAM,CAAC,OAA8B;QACzC,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,+BAA+B,IAAI,CAAC,QAAQ,cAAc,EAAE;gBACzE,OAAO,EAAE,IAAI,CAAC,MAAM;gBACpB,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC;aAC7B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;CACF;AAED,MAAM,eAAe;IACU;IAA7B,YAA6B,GAAW;QAAX,QAAG,GAAH,GAAG,CAAQ;IAAG,CAAC;IAC5C,KAAK,CAAC,MAAM,CAAC,OAA8B;QACzC,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,MAAuC,EAAE,WAAyB;IAC/F,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACtE,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC;QAC7E,KAAK,OAAO;YACV,OAAO,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC;QAClG,KAAK,UAAU;YACb,OAAO,MAAM,EAAE,gBAAgB,IAAI,MAAM,EAAE,cAAc;gBACvD,CAAC,CAAC,IAAI,gBAAgB,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,cAAc,CAAC;gBACtE,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC;QACzB,KAAK,SAAS;YACZ,OAAO,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC;QAC1F,KAAK,MAAM,CAAC;QACZ;YACE,OAAO,IAAI,YAAY,EAAE,CAAC;IAC9B,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"notifier.js","sourceRoot":"","sources":["../../src/notify/notifier.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,mCAAmC;AACnC,+CAA+C;AAC/C,EAAE;AACF,4EAA4E;AAC5E,+EAA+E;AAC/E,6EAA6E;AAC7E,0CAA0C;AAoB1C,MAAM,uBAAuB,GAAG,IAAI,CAAC;AACrC,MAAM,4BAA4B,GAAG,MAAM,CAAC;AAC5C,MAAM,gBAAgB,GAAG,eAAe,CAAC;AAEzC,SAAS,wBAAwB,CAAC,IAAY;IAC5C,IAAI,IAAI,CAAC,MAAM,IAAI,uBAAuB;QAAE,OAAO,IAAI,CAAC;IACxD,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,uBAAuB,GAAG,gBAAgB,CAAC,MAAM,CAAC,GAAG,gBAAgB,EAAE,CAAC;AAClG,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,aAAa,CAAC,OAA8B;IAC1D,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,wBAAwB,CAAC,OAAO,CAAC,CAAC;IAC1E,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IACvB,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,CAAC,CAAC,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACjC,IAAI,CAAC,CAAC,WAAW;QAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IAC7C,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,IAAI,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IACpE,OAAO,wBAAwB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,gBAAgB,CAAC,CAAC;AACxE,CAAC;AAED,KAAK,UAAU,QAAQ,CAAC,GAAW,EAAE,IAAa;IAChD,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,IAAI,SAAoD,CAAC;IACzD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;QAC/C,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAC1B,UAAU,CAAC,KAAK,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,KAAK,CAAC,wCAAwC,4BAA4B,IAAI,CAAC,CAAC,CAAC;QAC9F,CAAC,EAAE,4BAA4B,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IACH,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;QAC7B,KAAK,CAAC,GAAG,EAAE;YACT,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,YAAY,EAAE,eAAe,EAAE;YAC9E,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;YAC1B,MAAM,EAAE,UAAU,CAAC,MAAM;SAC1B,CAAC;QACF,OAAO;KACR,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;QACd,IAAI,SAAS;YAAE,YAAY,CAAC,SAAS,CAAC,CAAC;IACzC,CAAC,CAAC,CAAC;IACH,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC;IACxB,IAAI,CAAC,GAAG,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;AACvE,CAAC;AAED,sDAAsD;AACtD,MAAM,YAAY;IAChB,KAAK,CAAC,MAAM,CAAC,OAA8B;QACzC,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAC9E,CAAC;CACF;AAED,6FAA6F;AAC7F,MAAM,eAAe;IACU;IAA7B,YAA6B,IAAiB;QAAjB,SAAI,GAAJ,IAAI,CAAa;IAAG,CAAC;IAClD,KAAK,CAAC,MAAM,CAAC,OAA8B;QACzC,IAAI,CAAC;YACH,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAChC,2EAA2E;gBAC3E,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;gBACpD,MAAM,KAAK,GAAG,IAAI,YAAY,EAAE,CAAC,cAAc,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,YAAY,EAAE,CAAC;gBAC1G,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;CACF;AAED,MAAM,aAAa;IACY;IAA7B,YAA6B,UAAkB;QAAlB,eAAU,GAAV,UAAU,CAAQ;IAAG,CAAC;IACnD,KAAK,CAAC,MAAM,CAAC,OAA8B;QACzC,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,GAAG,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;CACF;AAED,MAAM,gBAAgB;IACS;IAAmC;IAAhE,YAA6B,QAAgB,EAAmB,MAAc;QAAjD,aAAQ,GAAR,QAAQ,CAAQ;QAAmB,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAClF,KAAK,CAAC,MAAM,CAAC,OAA8B;QACzC,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,+BAA+B,IAAI,CAAC,QAAQ,cAAc,EAAE;gBACzE,OAAO,EAAE,IAAI,CAAC,MAAM;gBACpB,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC;aAC7B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;QACvD,CAAC;IACH,CAAC;CACF;AAED,MAAM,eAAe;IACU;IAA7B,YAA6B,GAAW;QAAX,QAAG,GAAH,GAAG,CAAQ;IAAG,CAAC;IAC5C,KAAK,CAAC,MAAM,CAAC,OAA8B;QACzC,IAAI,CAAC;YACH,MAAM,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,aAAa,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAC;QACtD,CAAC;IACH,CAAC;CACF;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,MAAuC,EAAE,WAAyB;IAC/F,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACtE,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,SAAS;YACZ,OAAO,WAAW,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC;QAC7E,KAAK,OAAO;YACV,OAAO,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC,IAAI,aAAa,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC;QAClG,KAAK,UAAU;YACb,OAAO,MAAM,EAAE,gBAAgB,IAAI,MAAM,EAAE,cAAc;gBACvD,CAAC,CAAC,IAAI,gBAAgB,CAAC,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAAC,cAAc,CAAC;gBACtE,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC;QACzB,KAAK,SAAS;YACZ,OAAO,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,YAAY,EAAE,CAAC;QAC1F,KAAK,MAAM,CAAC;QACZ;YACE,OAAO,IAAI,YAAY,EAAE,CAAC;IAC9B,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"conflictDetector.d.ts","sourceRoot":"","sources":["../../src/orchestration/conflictDetector.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAKpD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,cAAc,EAAE,aAAa,EAAE,CAAC;CACjC;AA0DD;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,QAAQ,EAAE,EACjB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,uBAAuB,CAAC,CA0GlC"}
1
+ {"version":3,"file":"conflictDetector.d.ts","sourceRoot":"","sources":["../../src/orchestration/conflictDetector.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAKpD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,QAAQ,EAAE,CAAC;IACjB,cAAc,EAAE,aAAa,EAAE,CAAC;CACjC;AA0DD;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,QAAQ,EAAE,EACjB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,uBAAuB,CAAC,CAoHlC"}
@@ -108,14 +108,14 @@ export async function detectFileConflicts(tasks, projectPath) {
108
108
  }
109
109
  }
110
110
  if (shared.length > 0) {
111
- uf.union(i, j);
112
- const key = `${uf.find(i)}`;
111
+ const key = `${i}:${j}`;
113
112
  if (!pairShared.has(key)) {
114
113
  pairShared.set(key, new Set());
115
114
  }
116
115
  for (const mod of shared) {
117
116
  pairShared.get(key).add(mod);
118
117
  }
118
+ uf.union(i, j);
119
119
  }
120
120
  }
121
121
  }
@@ -131,7 +131,7 @@ export async function detectFileConflicts(tasks, projectPath) {
131
131
  // Step 4: safe / conflictGroups 분류
132
132
  const safe = [];
133
133
  const conflictGroups = [];
134
- for (const [root, indices] of groups) {
134
+ for (const [, indices] of groups) {
135
135
  // 영향 분석이 없는 태스크(그래프 미존재)는 단독 그룹으로 safe
136
136
  const hasImpact = indices.some(i => taskImpacts.has(i));
137
137
  if (indices.length === 1 || !hasImpact) {
@@ -143,7 +143,18 @@ export async function detectFileConflicts(tasks, projectPath) {
143
143
  }
144
144
  // 충돌 그룹: 최고 우선순위(낮은 숫자) 태스크만 safe에 포함
145
145
  const groupTasks = indices.map(i => tasks[i]);
146
- const sharedModules = Array.from(pairShared.get(`${root}`) || []);
146
+ const sharedModuleSet = new Set();
147
+ for (let a = 0; a < indices.length; a++) {
148
+ for (let b = a + 1; b < indices.length; b++) {
149
+ const shared = pairShared.get(`${indices[a]}:${indices[b]}`);
150
+ if (!shared)
151
+ continue;
152
+ for (const mod of shared) {
153
+ sharedModuleSet.add(mod);
154
+ }
155
+ }
156
+ }
157
+ const sharedModules = Array.from(sharedModuleSet);
147
158
  // 우선순위 기준 정렬 (1=Urgent > 4=Low)
148
159
  groupTasks.sort((a, b) => a.priority - b.priority);
149
160
  // 최고 우선순위 태스크만 safe
@@ -1 +1 @@
1
- {"version":3,"file":"conflictDetector.js","sourceRoot":"","sources":["../../src/orchestration/conflictDetector.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,8CAA8C;AAC9C,oCAAoC;AACpC,sBAAsB;AACtB,uCAAuC;AAGvC,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAcrD,4BAA4B;AAE5B,MAAM,SAAS;IACL,MAAM,GAAwB,IAAI,GAAG,EAAE,CAAC;IACxC,IAAI,GAAwB,IAAI,GAAG,EAAE,CAAC;IAE9C,YAAY,IAAY;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACtB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAED,IAAI,CAAC,CAAS;QACZ,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC;QACrD,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,CAAS,EAAE,CAAS;QACxB,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,MAAM,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,EAAE,KAAK,EAAE;YAAE,OAAO;QAEtB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAE,CAAC;QACjC,IAAI,KAAK,GAAG,KAAK,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1B,CAAC;aAAM,IAAI,KAAK,GAAG,KAAK,EAAE,CAAC;YACzB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1B,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;YACxB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QAC/B,CAAC;IACH,CAAC;CACF;AAED,qBAAqB;AAErB;;;;GAIG;AACH,SAAS,cAAc,CAAC,OAA6B;IACnD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,IAAI,CAAC,OAAO;QAAE,OAAO,GAAG,CAAC;IACzB,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;QAC1B,IAAI,OAAO,GAAG,KAAK,QAAQ;YAAE,SAAS;QACtC,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QACjE,IAAI,UAAU;YAAE,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;IACtC,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,KAAiB,EACjB,WAAmB;IAEnB,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC;IAC7C,CAAC;IAED,6BAA6B;IAC7B,MAAM,WAAW,GAA6B,IAAI,GAAG,EAAE,CAAC;IAExD,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;QAC5B,mEAAmE;QACnE,wEAAwE;QACxE,yBAAyB;QACzB,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAChD,IAAI,QAAQ,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YACtB,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAC/B,OAAO;QACT,CAAC;QAED,wEAAwE;QACxE,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC7E,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,OAAO,GAAG,cAAc,CAAC,CAAC,GAAG,MAAM,CAAC,aAAa,EAAE,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC;YACtF,IAAI,OAAO,CAAC,IAAI,GAAG,CAAC;gBAAE,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;IACH,CAAC,CAAC,CACH,CAAC;IAEF,kDAAkD;IAClD,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACvC,cAAc;IACd,MAAM,UAAU,GAA6B,IAAI,GAAG,EAAE,CAAC;IAEvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC;YAAE,SAAS;QAE/C,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACpC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC;gBAAE,SAAS;YAE/C,SAAS;YACT,MAAM,MAAM,GAAa,EAAE,CAAC;YAC5B,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;gBAC3B,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACtB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACnB,CAAC;YACH,CAAC;YAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtB,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACf,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;oBACzB,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC;gBACjC,CAAC;gBACD,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;oBACzB,UAAU,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,gBAAgB;IAChB,MAAM,MAAM,GAA0B,IAAI,GAAG,EAAE,CAAC;IAChD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACvB,CAAC;QACD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5B,CAAC;IAED,mCAAmC;IACnC,MAAM,IAAI,GAAe,EAAE,CAAC;IAC5B,MAAM,cAAc,GAAoB,EAAE,CAAC;IAE3C,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,EAAE,CAAC;QACrC,uCAAuC;QACvC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAExD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACvC,4BAA4B;YAC5B,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;gBAC1B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YACxB,CAAC;YACD,SAAS;QACX,CAAC;QAED,sCAAsC;QACtC,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,MAAM,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAElE,gCAAgC;QAChC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;QAEnD,oBAAoB;QACpB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;QAEzB,kBAAkB;QAClB,cAAc,CAAC,IAAI,CAAC;YAClB,KAAK,EAAE,UAAU;YACjB,aAAa;SACd,CAAC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;AAClC,CAAC"}
1
+ {"version":3,"file":"conflictDetector.js","sourceRoot":"","sources":["../../src/orchestration/conflictDetector.ts"],"names":[],"mappings":"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"}
@@ -123,7 +123,19 @@ export interface DecisionEngineConfig {
123
123
  * actionable, so moving an issue to Backlog stops the daemon picking it up.
124
124
  */
125
125
  includeBacklog?: boolean;
126
+ /**
127
+ * Allow selecting multiple tasks from the same project in one cycle
128
+ * (round-robin fill: every pass adds at most one task per project, so no
129
+ * project can monopolize the slots). Wire this from
130
+ * `allowSameProjectConcurrent && worktreeMode` — the scheduler only runs
131
+ * same-project tasks concurrently under worktree isolation, and the
132
+ * heartbeat's knowledge-graph conflict detection defers file-overlapping
133
+ * tasks within a project. Default false (one task per project per cycle).
134
+ * (INT-2318)
135
+ */
136
+ sameProjectParallel?: boolean;
126
137
  }
138
+ export declare function isAllowedProjectPath(projectPath: string, allowedProjects: string[]): boolean;
127
139
  /**
128
140
  * R5: whether the daemon should act on an issue in the given Linear state. Only
129
141
  * Todo/In Progress/In Review (and unknown states, conservatively) are actionable;
@@ -131,6 +143,24 @@ export interface DecisionEngineConfig {
131
143
  * into the legacy "Backlog is a work queue" behavior.
132
144
  */
133
145
  export declare function isActionableLinearState(linearState: string | undefined, includeBacklog?: boolean): boolean;
146
+ /**
147
+ * Select up to `maxTasks` from the priority-sorted list, round-robin across
148
+ * projects: every pass adds at most one task per project, so no project can
149
+ * monopolize the slots and all bots stay active. With `sameProjectParallel`
150
+ * (scheduler worktree isolation + KG conflict detection downstream) later
151
+ * passes fill the remaining slots with additional tasks from the same
152
+ * projects; without it, selection stops after the first pass (one task per
153
+ * project per cycle). Tasks failing `validate`/`toWorkflow` are counted as
154
+ * skipped and never retried in later passes. Pure orchestration (deps
155
+ * injected) — unit-tested directly. (INT-2318)
156
+ */
157
+ export declare function selectTasksRoundRobin(sorted: TaskItem[], maxTasks: number, sameProjectParallel: boolean, validate: (task: TaskItem) => boolean, toWorkflow: (task: TaskItem) => Promise<WorkflowConfig | null>): Promise<{
158
+ selected: Array<{
159
+ task: TaskItem;
160
+ workflow: WorkflowConfig;
161
+ }>;
162
+ skippedCount: number;
163
+ }>;
134
164
  export declare class DecisionEngine {
135
165
  private config;
136
166
  private state;
@@ -147,9 +177,9 @@ export declare class DecisionEngine {
147
177
  * Heartbeat execution - returns multiple tasks (for parallel processing)
148
178
  * @param tasks - Candidate task list
149
179
  * @param maxTasks - Maximum number of tasks to return
150
- * @param _excludeProjects - Project paths to exclude (already running projects)
180
+ * @param excludeProjects - Project paths or Linear project IDs to exclude (already running projects)
151
181
  */
152
- heartbeatMultiple(tasks: TaskItem[], maxTasks?: number, _excludeProjects?: string[]): Promise<DecisionResultMultiple>;
182
+ heartbeatMultiple(tasks: TaskItem[], maxTasks?: number, excludeProjects?: string[]): Promise<DecisionResultMultiple>;
153
183
  /**
154
184
  * Execute task
155
185
  */
@@ -1 +1 @@
1
- {"version":3,"file":"decisionEngine.d.ts","sourceRoot":"","sources":["../../src/orchestration/decisionEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"decisionEngine.d.ts","sourceRoot":"","sources":["../../src/orchestration/decisionEngine.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@
2
2
  // OpenSwarm - Decision Engine
3
3
  // Autonomous action scope control and task decision
4
4
  // ============================================
5
- import { resolve } from 'path';
5
+ import { isAbsolute, relative, resolve } from 'path';
6
6
  import { homedir } from 'os';
7
7
  import * as fs from 'fs/promises';
8
8
  import { loadWorkflow, listWorkflows, createCIPipelineTemplate, } from './workflow.js';
@@ -102,6 +102,24 @@ const DEFAULT_CONFIG = {
102
102
  dryRun: false,
103
103
  includeBacklog: false, // Backlog is parked, not a queue (R5)
104
104
  };
105
+ function expandHomePath(input) {
106
+ if (input === '~')
107
+ return homedir();
108
+ if (input.startsWith('~/'))
109
+ return resolve(homedir(), input.slice(2));
110
+ return input;
111
+ }
112
+ function normalizeProjectPath(input) {
113
+ return resolve(expandHomePath(input));
114
+ }
115
+ export function isAllowedProjectPath(projectPath, allowedProjects) {
116
+ const normalizedProjectPath = normalizeProjectPath(projectPath);
117
+ return allowedProjects.some(allowedProject => {
118
+ const normalizedAllowedProject = normalizeProjectPath(allowedProject);
119
+ const rel = relative(normalizedAllowedProject, normalizedProjectPath);
120
+ return rel === '' || (!!rel && !rel.startsWith('..') && !isAbsolute(rel));
121
+ });
122
+ }
105
123
  /**
106
124
  * Linear states the daemon will NOT act on. Backlog is "parked" (opt back in via
107
125
  * DecisionEngineConfig.includeBacklog); Done/Canceled are terminal.
@@ -120,6 +138,55 @@ export function isActionableLinearState(linearState, includeBacklog = false) {
120
138
  return true;
121
139
  return linearState === 'Backlog' && includeBacklog === true;
122
140
  }
141
+ /**
142
+ * Select up to `maxTasks` from the priority-sorted list, round-robin across
143
+ * projects: every pass adds at most one task per project, so no project can
144
+ * monopolize the slots and all bots stay active. With `sameProjectParallel`
145
+ * (scheduler worktree isolation + KG conflict detection downstream) later
146
+ * passes fill the remaining slots with additional tasks from the same
147
+ * projects; without it, selection stops after the first pass (one task per
148
+ * project per cycle). Tasks failing `validate`/`toWorkflow` are counted as
149
+ * skipped and never retried in later passes. Pure orchestration (deps
150
+ * injected) — unit-tested directly. (INT-2318)
151
+ */
152
+ export async function selectTasksRoundRobin(sorted, maxTasks, sameProjectParallel, validate, toWorkflow) {
153
+ const selected = [];
154
+ const seenIds = new Set();
155
+ let skippedCount = 0;
156
+ const maxPasses = sameProjectParallel ? Math.max(1, maxTasks) : 1;
157
+ for (let pass = 0; pass < maxPasses && selected.length < maxTasks; pass++) {
158
+ const projectsThisPass = new Set();
159
+ let addedThisPass = 0;
160
+ for (const task of sorted) {
161
+ if (selected.length >= maxTasks)
162
+ break;
163
+ if (seenIds.has(task.id))
164
+ continue;
165
+ const projectKey = task.linearProject?.id || task.projectPath || task.id;
166
+ if (projectsThisPass.has(projectKey)) {
167
+ continue; // already picked a task for this project this pass
168
+ }
169
+ if (!validate(task)) {
170
+ skippedCount++;
171
+ seenIds.add(task.id);
172
+ continue;
173
+ }
174
+ const workflow = await toWorkflow(task);
175
+ if (!workflow) {
176
+ skippedCount++;
177
+ seenIds.add(task.id);
178
+ continue;
179
+ }
180
+ selected.push({ task, workflow });
181
+ seenIds.add(task.id);
182
+ projectsThisPass.add(projectKey);
183
+ addedThisPass++;
184
+ }
185
+ if (addedThisPass === 0)
186
+ break; // nothing left to pick
187
+ }
188
+ return { selected, skippedCount };
189
+ }
123
190
  async function loadState() {
124
191
  try {
125
192
  const content = await fs.readFile(ENGINE_STATE_FILE, 'utf-8');
@@ -236,9 +303,9 @@ export class DecisionEngine {
236
303
  * Heartbeat execution - returns multiple tasks (for parallel processing)
237
304
  * @param tasks - Candidate task list
238
305
  * @param maxTasks - Maximum number of tasks to return
239
- * @param _excludeProjects - Project paths to exclude (already running projects)
306
+ * @param excludeProjects - Project paths or Linear project IDs to exclude (already running projects)
240
307
  */
241
- async heartbeatMultiple(tasks, maxTasks = 3, _excludeProjects = []) {
308
+ async heartbeatMultiple(tasks, maxTasks = 3, excludeProjects = []) {
242
309
  console.log(`[DecisionEngine] Heartbeat multiple triggered (max: ${maxTasks})`);
243
310
  // 1. Time window check
244
311
  const timeCheck = checkWorkAllowed();
@@ -274,7 +341,11 @@ export class DecisionEngine {
274
341
  };
275
342
  }
276
343
  // 4. Filter executable tasks
277
- const executableTasks = this.filterExecutableTasks(tasks);
344
+ const excludedProjects = new Set(excludeProjects.filter(Boolean));
345
+ const executableTasks = this.filterExecutableTasks(tasks).filter(task => {
346
+ return !((task.projectPath && excludedProjects.has(task.projectPath)) ||
347
+ (task.linearProject?.id && excludedProjects.has(task.linearProject.id)));
348
+ });
278
349
  if (executableTasks.length === 0) {
279
350
  return {
280
351
  action: 'skip',
@@ -287,35 +358,9 @@ export class DecisionEngine {
287
358
  // full fetched set so blocked dependents still count toward a blocker's weight.
288
359
  const downstream = computeDownstreamCounts(tasks);
289
360
  const sorted = this.prioritizeTasks(executableTasks, downstream);
290
- // 6. Select multiple tasks. One per project per cycle: the scheduler runs at
291
- // most one worker per project, so selecting several from the same project just
292
- // queues them and starves other projects. Spreading across projects keeps all
293
- // bots active (the deferred same-project tasks get picked next cycle).
294
- const selectedTasks = [];
295
- const selectedProjects = new Set();
296
- let skippedCount = 0;
297
- for (const task of sorted) {
298
- if (selectedTasks.length >= maxTasks)
299
- break;
300
- const projectKey = task.linearProject?.id || task.projectPath || task.id;
301
- if (selectedProjects.has(projectKey)) {
302
- continue; // already picked a task for this project this cycle
303
- }
304
- // Scope validation
305
- const scopeCheck = this.validateScope(task);
306
- if (!scopeCheck.valid) {
307
- skippedCount++;
308
- continue;
309
- }
310
- // Workflow mapping
311
- const workflow = await this.taskToWorkflow(task);
312
- if (!workflow) {
313
- skippedCount++;
314
- continue;
315
- }
316
- selectedTasks.push({ task, workflow });
317
- selectedProjects.add(projectKey);
318
- }
361
+ // 6. Select multiple tasks (round-robin across projects see
362
+ // selectTasksRoundRobin). (INT-2318)
363
+ const { selected: selectedTasks, skippedCount } = await selectTasksRoundRobin(sorted, maxTasks, !!this.config.sameProjectParallel, (task) => this.validateScope(task).valid, (task) => this.taskToWorkflow(task));
319
364
  if (selectedTasks.length === 0) {
320
365
  return {
321
366
  action: 'skip',
@@ -364,8 +409,7 @@ export class DecisionEngine {
364
409
  return tasks.filter(task => {
365
410
  // Check if project is allowed
366
411
  if (task.projectPath && this.config.allowedProjects.length > 0) {
367
- const allowed = this.config.allowedProjects.some(p => task.projectPath.includes(p) || p.includes(task.projectPath));
368
- if (!allowed) {
412
+ if (!isAllowedProjectPath(task.projectPath, this.config.allowedProjects)) {
369
413
  console.log(`[DecisionEngine] Filtered out ${task.issueIdentifier}: project not allowed (${task.projectPath})`);
370
414
  return false;
371
415
  }
@@ -445,13 +489,8 @@ export class DecisionEngine {
445
489
  }
446
490
  // 3. Project path validation
447
491
  if (task.projectPath) {
448
- const expanded = task.projectPath.replace('~', homedir());
449
492
  if (this.config.allowedProjects.length > 0) {
450
- const allowed = this.config.allowedProjects.some(p => {
451
- const expandedAllowed = p.replace('~', homedir());
452
- return expanded.startsWith(expandedAllowed) || expandedAllowed.startsWith(expanded);
453
- });
454
- if (!allowed) {
493
+ if (!isAllowedProjectPath(task.projectPath, this.config.allowedProjects)) {
455
494
  return {
456
495
  valid: false,
457
496
  reason: `Project path "${task.projectPath}" not in allowed list`,
@@ -1 +1 @@
1
- {"version":3,"file":"decisionEngine.js","sourceRoot":"","sources":["../../src/orchestration/decisionEngine.ts"],"names":[],"mappings":"AAAA,+CAA+C;AAC/C,8BAA8B;AAC9B,oDAAoD;AACpD,+CAA+C;AAE/C,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAGL,YAAY,EACZ,aAAa,EACb,wBAAwB,GACzB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,cAAc,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AACrG,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AA2CzD;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,IAAc,EAAE,SAAsB;IACpE,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC5F,MAAM,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/D,OAAO,WAAW,IAAI,QAAQ,CAAC;AACjC,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAiB;IACvD,MAAM,IAAI,GAAG,CAAC,CAAW,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC;IAChD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IACvC,iFAAiF;IACjF,MAAM,UAAU,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC/C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,KAAK,MAAM,OAAO,IAAI,CAAC,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;YACxC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;gBAAE,SAAS;YAClC,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACpC,IAAI,GAAG;gBAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;;gBACtB,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAuB,CAAC;IAC5C,MAAM,WAAW,GAAG,CAAC,EAAU,EAAE,KAAkB,EAAe,EAAE;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC5B,IAAI,MAAM;YAAE,OAAO,MAAM,CAAC;QAC1B,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC,cAAc;QACnD,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACd,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;QAC9B,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC;YACzC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACX,KAAK,MAAM,CAAC,IAAI,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC;gBAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACpD,CAAC;QACD,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACjB,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;QAClB,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,KAAK,MAAM,CAAC,IAAI,KAAK;QAAE,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IACjF,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,gFAAgF;AAChF,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC,CAAC;AAIzE;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,aAAa,CAAC,IAI7B;IACC,MAAM,WAAW,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;IACnE,IAAI,WAAW,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,iBAAiB,CAAC;QAAE,OAAO,SAAS,CAAC;IAC9E,IAAI,IAAI,CAAC,OAAO;QAAE,OAAO,YAAY,CAAC;IACtC,OAAO,MAAM,CAAC;AAChB,CAAC;AA+DD,YAAY;AAEZ,MAAM,iBAAiB,GAAG,OAAO,CAAC,OAAO,EAAE,EAAE,uCAAuC,CAAC,CAAC;AACtF,MAAM,qBAAqB,GAAG,OAAO,CAAC,OAAO,EAAE,EAAE,kCAAkC,CAAC,CAAC;AAErF,MAAM,cAAc,GAAyB;IAC3C,eAAe,EAAE,EAAE;IACnB,WAAW,EAAE,KAAK,EAAQ,6BAA6B;IACvD,mBAAmB,EAAE,CAAC;IACtB,eAAe,EAAE,GAAG,EAAM,YAAY;IACtC,MAAM,EAAE,KAAK;IACb,cAAc,EAAE,KAAK,EAAK,sCAAsC;CACjE,CAAC;AAEF;;;GAGG;AACH,MAAM,4BAA4B,GAAG,IAAI,GAAG,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;AAE3F;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,WAA+B,EAAE,cAAc,GAAG,KAAK;IAC7F,IAAI,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC,CAAC,4CAA4C;IAC3E,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,WAAW,CAAC;QAAE,OAAO,IAAI,CAAC;IAChE,OAAO,WAAW,KAAK,SAAS,IAAI,cAAc,KAAK,IAAI,CAAC;AAC9D,CAAC;AAYD,KAAK,UAAU,SAAS;IACtB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO;YACL,SAAS,EAAE,CAAC;YACZ,mBAAmB,EAAE,CAAC;YACtB,mBAAmB,EAAE,CAAC;YACtB,gBAAgB,EAAE,CAAC;SACpB,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,KAAkB;IACzC,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACtE,MAAM,EAAE,CAAC,SAAS,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,kBAAkB;AAElB,MAAM,OAAO,cAAc;IACjB,MAAM,CAAuB;IAC7B,KAAK,GAAgB;QAC3B,SAAS,EAAE,CAAC;QACZ,mBAAmB,EAAE,CAAC;QACtB,mBAAmB,EAAE,CAAC;QACtB,gBAAgB,EAAE,CAAC;KACpB,CAAC;IAEF,YAAY,SAAwC,EAAE;QACpD,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,IAAI;QACR,IAAI,CAAC,KAAK,GAAG,MAAM,SAAS,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,KAAiB;QAC/B,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;QAEpD,uBAAuB;QACvB,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;QACrC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACvB,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,wBAAwB,SAAS,CAAC,MAAM,EAAE;aACnD,CAAC;QACJ,CAAC;QAED,oBAAoB;QACpB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,gBAAgB,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;QAC7D,IAAI,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YACnD,OAAO;gBACL,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE,aAAa,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,gBAAgB,CAAC,aAAa;aAC5F,CAAC;QACJ,CAAC;QAED,kCAAkC;QAClC,IAAI,IAAI,CAAC,KAAK,CAAC,mBAAmB,IAAI,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;YACtE,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC;YACzE,IAAI,CAAC,KAAK,CAAC,mBAAmB,GAAG,CAAC,CAAC;YACnC,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO;gBACL,MAAM,EAAE,OAAO;gBACf,MAAM,EAAE,+CAA+C;aACxD,CAAC;QACJ,CAAC;QAED,6BAA6B;QAC7B,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,gCAAgC;aACzC,CAAC;QACJ,CAAC;QAED,+EAA+E;QAC/E,gFAAgF;QAChF,MAAM,UAAU,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;QACjE,MAAM,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QAE/B,iCAAiC;QACjC,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;QACpD,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,MAAM,EAAE,oBAAoB,UAAU,CAAC,MAAM,EAAE;aAChD,CAAC;QACJ,CAAC;QAED,sBAAsB;QACtB,OAAO,CAAC,GAAG,CAAC,8CAA8C,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC;QAC7E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,qCAAqC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC5E,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,YAAY;gBAClB,MAAM,EAAE,+BAA+B;aACxC,CAAC;QACJ,CAAC;QAED,qBAAqB;QACrB,OAAO,CAAC,GAAG,CAAC,oDAAoD,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QAC3F,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO;YACrD,IAAI,EAAE,YAAY;YAClB,QAAQ;YACR,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;gBAC7B,CAAC,CAAC,mBAAmB,YAAY,CAAC,KAAK,EAAE;gBACzC,CAAC,CAAC,yCAAyC,YAAY,CAAC,KAAK,EAAE;SAClE,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,iBAAiB,CACrB,KAAiB,EACjB,WAAmB,CAAC,EACpB,mBAA6B,EAAE;QAE/B,OAAO,CAAC,GAAG,CAAC,uDAAuD,QAAQ,GAAG,CAAC,CAAC;QAEhF,uBAAuB;QACvB,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;QACrC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACvB,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,KAAK,EAAE,EAAE;gBACT,MAAM,EAAE,wBAAwB,SAAS,CAAC,MAAM,EAAE;gBAClD,YAAY,EAAE,KAAK,CAAC,MAAM;aAC3B,CAAC;QACJ,CAAC;QAED,oBAAoB;QACpB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,gBAAgB,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;QAC7D,IAAI,gBAAgB,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YACnD,OAAO;gBACL,MAAM,EAAE,OAAO;gBACf,KAAK,EAAE,EAAE;gBACT,MAAM,EAAE,aAAa,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,gBAAgB,CAAC,aAAa;gBAC3F,YAAY,EAAE,KAAK,CAAC,MAAM;aAC3B,CAAC;QACJ,CAAC;QAED,kCAAkC;QAClC,IAAI,IAAI,CAAC,KAAK,CAAC,mBAAmB,IAAI,IAAI,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC;YACtE,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAC;YACzE,IAAI,CAAC,KAAK,CAAC,mBAAmB,GAAG,CAAC,CAAC;YACnC,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC5B,OAAO;gBACL,MAAM,EAAE,OAAO;gBACf,KAAK,EAAE,EAAE;gBACT,MAAM,EAAE,+CAA+C;gBACvD,YAAY,EAAE,KAAK,CAAC,MAAM;aAC3B,CAAC;QACJ,CAAC;QAED,6BAA6B;QAC7B,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QAC1D,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,KAAK,EAAE,EAAE;gBACT,MAAM,EAAE,gCAAgC;gBACxC,YAAY,EAAE,KAAK,CAAC,MAAM;aAC3B,CAAC;QACJ,CAAC;QAED,+EAA+E;QAC/E,gFAAgF;QAChF,MAAM,UAAU,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;QAEjE,6EAA6E;QAC7E,+EAA+E;QAC/E,8EAA8E;QAC9E,uEAAuE;QACvE,MAAM,aAAa,GAAwD,EAAE,CAAC;QAC9E,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;QAC3C,IAAI,YAAY,GAAG,CAAC,CAAC;QAErB,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;YAC1B,IAAI,aAAa,CAAC,MAAM,IAAI,QAAQ;gBAAE,MAAM;YAE5C,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,EAAE,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,EAAE,CAAC;YACzE,IAAI,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;gBACrC,SAAS,CAAC,oDAAoD;YAChE,CAAC;YAED,mBAAmB;YACnB,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;YAC5C,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBACtB,YAAY,EAAE,CAAC;gBACf,SAAS;YACX,CAAC;YAED,mBAAmB;YACnB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,YAAY,EAAE,CAAC;gBACf,SAAS;YACX,CAAC;YAED,aAAa,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YACvC,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;QAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO;gBACL,MAAM,EAAE,MAAM;gBACd,KAAK,EAAE,EAAE;gBACT,MAAM,EAAE,6CAA6C;gBACrD,YAAY,EAAE,MAAM,CAAC,MAAM;aAC5B,CAAC;QACJ,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,6BAA6B,aAAa,CAAC,MAAM,+BAA+B,CAAC,CAAC;QAC9F,OAAO;YACL,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO;YACrD,KAAK,EAAE,aAAa;YACpB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;gBAC7B,CAAC,CAAC,kBAAkB,aAAa,CAAC,MAAM,QAAQ;gBAChD,CAAC,CAAC,oBAAoB,aAAa,CAAC,MAAM,4BAA4B;YACxE,YAAY;SACb,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,IAAc,EAAE,SAAyB;QACzD,OAAO,CAAC,GAAG,CAAC,oCAAoC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAE9D,eAAe;QACf,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC;QAChC,MAAM,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE5B,0EAA0E;QAC1E,MAAM,IAAI,KAAK,CAAC,+FAA+F,CAAC,CAAC;IACnH,CAAC;IAED;;OAEG;IACH,qBAAqB,CAAC,KAAe;QACnC,IAAI,CAAC,MAAM,CAAC,eAAe,GAAG,KAAK,CAAC;IACtC,CAAC;IAED;;OAEG;IACK,qBAAqB,CAAC,KAAiB;QAC7C,4FAA4F;QAC5F,8FAA8F;QAC9F,6FAA6F;QAC7F,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAEzF,OAAO,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;YACzB,8BAA8B;YAC9B,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CACnD,IAAI,CAAC,WAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAY,CAAC,CAC/D,CAAC;gBACF,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,OAAO,CAAC,GAAG,CAAC,iCAAiC,IAAI,CAAC,eAAe,0BAA0B,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;oBAChH,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;YAED,gFAAgF;YAChF,IAAI,eAAe,CAAC,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC;gBACrC,OAAO,CAAC,GAAG,CAAC,iCAAiC,IAAI,CAAC,eAAe,uCAAuC,CAAC,CAAC;gBAC1G,OAAO,KAAK,CAAC;YACf,CAAC;YAED,2EAA2E;YAC3E,0EAA0E;YAC1E,6EAA6E;YAC7E,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC3E,OAAO,CAAC,GAAG,CAAC,iCAAiC,IAAI,CAAC,eAAe,mBAAmB,IAAI,CAAC,WAAW,8BAA8B,CAAC,CAAC;gBACpI,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;gBACrB,OAAO,CAAC,GAAG,CAAC,iCAAiC,IAAI,CAAC,eAAe,KAAK,SAAS,CAAC,MAAM,IAAI,WAAW,iBAAiB,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC;gBACnK,OAAO,KAAK,CAAC;YACf,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,KAAiB,EAAE,UAAgC;QACzE,MAAM,IAAI,GAAG,CAAC,CAAW,EAAE,EAAE,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QACtE,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC9B,2EAA2E;YAC3E,2EAA2E;YAC3E,8EAA8E;YAC9E,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,GAAG,KAAK,GAAG,EAAE,CAAC;gBAChB,OAAO,GAAG,GAAG,GAAG,CAAC;YACnB,CAAC;YAED,MAAM,KAAK,GAAG,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,gBAAgB,CAAC;YACpD,MAAM,KAAK,GAAG,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC,gBAAgB,CAAC;YACpD,IAAI,KAAK,KAAK,KAAK,EAAE,CAAC;gBACpB,OAAO,KAAK,GAAG,KAAK,CAAC;YACvB,CAAC;YAED,8CAA8C;YAC9C,IAAI,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAC9B,OAAO,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;YACjC,CAAC;YAED,0CAA0C;YAC1C,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;gBAC3B,OAAO,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;YAC/B,CAAC;YACD,IAAI,CAAC,CAAC,OAAO;gBAAE,OAAO,CAAC,CAAC,CAAC;YACzB,IAAI,CAAC,CAAC,OAAO;gBAAE,OAAO,CAAC,CAAC;YAExB,8BAA8B;YAC9B,OAAO,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;QACnC,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,IAAc;QAClC,mCAAmC;QACnC,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACxD,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,gBAAgB,IAAI,CAAC,MAAM,8CAA8C;aAClF,CAAC;QACJ,CAAC;QAED,8CAA8C;QAC9C,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YACtC,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,+CAA+C;aACxD,CAAC;QACJ,CAAC;QAED,6BAA6B;QAC7B,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YAC1D,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;oBACnD,MAAM,eAAe,GAAG,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;oBAClD,OAAO,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,eAAe,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACtF,CAAC,CAAC,CAAC;gBACH,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,OAAO;wBACL,KAAK,EAAE,KAAK;wBACZ,MAAM,EAAE,iBAAiB,IAAI,CAAC,WAAW,uBAAuB;qBACjE,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IACzB,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,cAAc,CAAC,IAAc;QACzC,yCAAyC;QACzC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,OAAO,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvC,CAAC;QAED,gDAAgD;QAChD,MAAM,SAAS,GAAG,MAAM,aAAa,EAAE,CAAC;QACxC,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAClC,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,WAAW;YAClC,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,OAAO,CAC/B,CAAC;QACF,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAE9B,2CAA2C;QAC3C,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,cAAc,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC1D,IAAI,cAAc,EAAE,CAAC;gBACnB,OAAO,CAAC,GAAG,CAAC,qDAAqD,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;gBACjF,OAAO,cAAc,CAAC,QAAQ,CAAC;YACjC,CAAC;QACH,CAAC;QAED,2CAA2C;QAC3C,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,uCAAuC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YAEjE,gEAAgE;YAChE,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;gBACrB,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;oBAClF,IAAI,MAAM,EAAE,CAAC;wBACX,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;wBAC7B,OAAO,CAAC,GAAG,CAAC,kCAAkC,MAAM,CAAC,cAAc,YAAY,MAAM,CAAC,aAAa,CAAC,MAAM,UAAU,MAAM,CAAC,gBAAgB,CAAC,MAAM,WAAW,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;oBAC1L,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,OAAO,CAAC,IAAI,CAAC,yDAAyD,EAAE,GAAG,CAAC,CAAC;gBAC/E,CAAC;YACH,CAAC;YAED,MAAM,MAAM,GAAG,SAAS,CAAC;gBACvB,EAAE,EAAE,IAAI,CAAC,OAAO;gBAChB,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,cAAc;gBAChD,mBAAmB,EAAE,IAAI,CAAC,cAAc;oBACtC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,MAAM;oBACxF,CAAC,CAAC,SAAS;aACd,CAAC,CAAC;YAEH,qBAAqB;YACrB,MAAM,cAAc,CAAC,MAAM,CAAC,CAAC;YAE7B,8BAA8B;YAC9B,IAAI,MAAM,CAAC,QAAQ,CAAC,mBAAmB,EAAE,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,8CAA8C,MAAM,CAAC,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC;gBACzF,OAAO,CAAC,GAAG,CAAC,2BAA2B,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE,CAAC,CAAC;YACvF,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,8BAA8B,MAAM,CAAC,QAAQ,CAAC,MAAM,YAAY,CAAC,CAAC;YAC9E,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACjC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC;YAC5C,CAAC;YAED,OAAO,MAAM,CAAC,QAAQ,CAAC;QACzB,CAAC;QAED,mCAAmC;QACnC,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACrB,OAAO,wBAAwB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACpD,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,mBAAmB,CAAC,OAAe;QACvC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC;QACzB,OAAO,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,YAAY,CAAC,UAA0B;QAC3C,OAAO,CAAC,GAAG,CAAC,uCAAuC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;QAEvE,4CAA4C;QAC5C,IAAI,eAAe,GAAqB,EAAE,CAAC;QAC3C,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;YAClE,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACxC,CAAC;QAAC,MAAM,CAAC;YACP,eAAe,GAAG,EAAE,CAAC;QACvB,CAAC;QAED,eAAe,CAAC,IAAI,CAAC;YACnB,GAAG,UAAU;SACd,CAAC,CAAC;QAEH,MAAM,EAAE,CAAC,SAAS,CAAC,qBAAqB,EAAE,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAEpF,wBAAwB;QACxB,IAAI,CAAC;YACH,MAAM,mBAAmB,CAAC,QAAQ,EAChC,+BAA+B,UAAU,CAAC,KAAK,UAAU,UAAU,CAAC,MAAM,EAAE,EAC5E,EAAE,UAAU,EAAE,GAAG,EAAE,WAAW,EAAE,WAAW,EAAE,CAC9C,CAAC;QACJ,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,OAAO,CAAC,IAAI,CAAC,qDAAqD,EAAE,MAAM,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB;QACtB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;YAClE,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,QAAQ;QAMN,OAAO;YACL,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,mBAAmB;YAC9C,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB;YACxC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,mBAAmB;YAC9C,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS;SAChC,CAAC;IACJ,CAAC;CACF;AAED,oCAAoC;AAEpC,IAAI,cAAc,GAA0B,IAAI,CAAC;AAEjD;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAsC;IACtE,IAAI,CAAC,cAAc,IAAI,MAAM,EAAE,CAAC;QAC9B,cAAc,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IACD,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,KAAiB,EACjB,MAAsC;IAEtC,MAAM,MAAM,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;IACpB,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACjC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAajC;IACC,OAAO;QACL,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,MAAM,EAAE,QAAQ;QAChB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,CAAC;QAC7B,OAAO,EAAE,KAAK,CAAC,EAAE;QACjB,eAAe,EAAE,KAAK,CAAC,UAAU;QACjC,WAAW,EAAE,KAAK,CAAC,KAAK;QACxB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YAC7B,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE;YACpB,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,IAAI;SACzB,CAAC,CAAC,CAAC,SAAS;QACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,SAAS;KACvE,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"decisionEngine.js","sourceRoot":"","sources":["../../src/orchestration/decisionEngine.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"taskParser.d.ts","sourceRoot":"","sources":["../../src/orchestration/taskParser.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,cAAc,EAAgB,MAAM,eAAe,CAAC;AAI7D;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,0BAA0B;IAC1B,QAAQ,EAAE;QACR,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IAEF,sBAAsB;IACtB,QAAQ,EAAE;QACR,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;QAC5C,cAAc,EAAE,MAAM,CAAC;QACvB,mBAAmB,EAAE,OAAO,CAAC;QAC7B,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC;IAEF,0BAA0B;IAC1B,QAAQ,EAAE,OAAO,EAAE,CAAC;IAEpB,yBAAyB;IACzB,QAAQ,EAAE,cAAc,CAAC;IAEzB,wBAAwB;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,QAAQ,GAChB,SAAS,GACT,SAAS,GACT,UAAU,GACV,MAAM,GACN,MAAM,GACN,OAAO,GACP,eAAe,GACf,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,EAAE,UAAU,GAAG,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,eAAe,CAAC;IAC1E,QAAQ,EAAE,OAAO,CAAC;CACnB;AAkdD;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC3C,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,GAAG,UAAU,CAoCb;AAgCD;;GAEG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAItE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAQhF;AAID;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAkClE"}
1
+ {"version":3,"file":"taskParser.d.ts","sourceRoot":"","sources":["../../src/orchestration/taskParser.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,cAAc,EAAgB,MAAM,eAAe,CAAC;AAI7D;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,0BAA0B;IAC1B,QAAQ,EAAE;QACR,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IAEF,sBAAsB;IACtB,QAAQ,EAAE;QACR,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;QAC5C,cAAc,EAAE,MAAM,CAAC;QACvB,mBAAmB,EAAE,OAAO,CAAC;QAC7B,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC;IAEF,0BAA0B;IAC1B,QAAQ,EAAE,OAAO,EAAE,CAAC;IAEpB,yBAAyB;IACzB,QAAQ,EAAE,cAAc,CAAC;IAEzB,wBAAwB;IACxB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,QAAQ,GAChB,SAAS,GACT,SAAS,GACT,UAAU,GACV,MAAM,GACN,MAAM,GACN,OAAO,GACP,eAAe,GACf,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,IAAI,EAAE,UAAU,GAAG,gBAAgB,GAAG,MAAM,GAAG,QAAQ,GAAG,eAAe,CAAC;IAC1E,QAAQ,EAAE,OAAO,CAAC;CACnB;AAmdD;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC;IAC3C,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,GAAG,UAAU,CAoCb;AAsDD;;GAEG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAItE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC,CAQhF;AAID;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAkClE"}
@@ -2,7 +2,7 @@
2
2
  // OpenSwarm - Task Parser
3
3
  // Analyze Linear issues and decompose into executable subtasks
4
4
  // ============================================
5
- import { resolve } from 'path';
5
+ import { basename, isAbsolute, relative, resolve } from 'path';
6
6
  import { homedir } from 'os';
7
7
  import * as fs from 'fs/promises';
8
8
  // Task Type Detection
@@ -423,6 +423,7 @@ ${template.prompt}
423
423
  subtasks.push({
424
424
  ...template,
425
425
  id: `${type}-${template.id}`,
426
+ dependsOn: template.dependsOn.map(dep => `${type}-${dep}`),
426
427
  prompt: contextualPrompt,
427
428
  });
428
429
  }
@@ -485,12 +486,29 @@ function subtasksToWorkflow(issue, subtasks) {
485
486
  }
486
487
  // Parsing Result Storage
487
488
  const PARSED_TASKS_DIR = resolve(homedir(), '.openswarm/parsed-tasks');
489
+ function parsedTaskFilePath(issueId) {
490
+ if (!issueId ||
491
+ issueId !== basename(issueId) ||
492
+ issueId === '.' ||
493
+ issueId === '..' ||
494
+ issueId.includes('/') ||
495
+ issueId.includes('\\') ||
496
+ issueId.includes('\0')) {
497
+ throw new Error(`Invalid parsed task ID: ${issueId}`);
498
+ }
499
+ const filePath = resolve(PARSED_TASKS_DIR, `${issueId}.json`);
500
+ const rel = relative(PARSED_TASKS_DIR, filePath);
501
+ if (rel === '' || rel.startsWith('..') || isAbsolute(rel)) {
502
+ throw new Error(`Invalid parsed task ID: ${issueId}`);
503
+ }
504
+ return filePath;
505
+ }
488
506
  /**
489
507
  * Save parsed result
490
508
  */
491
509
  export async function saveParsedTask(parsed) {
492
510
  await fs.mkdir(PARSED_TASKS_DIR, { recursive: true });
493
- const filePath = resolve(PARSED_TASKS_DIR, `${parsed.original.id}.json`);
511
+ const filePath = parsedTaskFilePath(parsed.original.id);
494
512
  await fs.writeFile(filePath, JSON.stringify(parsed, null, 2));
495
513
  }
496
514
  /**
@@ -498,7 +516,7 @@ export async function saveParsedTask(parsed) {
498
516
  */
499
517
  export async function loadParsedTask(issueId) {
500
518
  try {
501
- const filePath = resolve(PARSED_TASKS_DIR, `${issueId}.json`);
519
+ const filePath = parsedTaskFilePath(issueId);
502
520
  const content = await fs.readFile(filePath, 'utf-8');
503
521
  return JSON.parse(content);
504
522
  }