macro-agent 0.1.7 → 0.1.10

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 (259) hide show
  1. package/CLAUDE.md +179 -38
  2. package/README.md +781 -131
  3. package/dist/acp/claude-code-replay.d.ts +11 -0
  4. package/dist/acp/claude-code-replay.d.ts.map +1 -0
  5. package/dist/acp/claude-code-replay.js +190 -0
  6. package/dist/acp/claude-code-replay.js.map +1 -0
  7. package/dist/acp/macro-agent.d.ts.map +1 -1
  8. package/dist/acp/macro-agent.js +155 -6
  9. package/dist/acp/macro-agent.js.map +1 -1
  10. package/dist/acp/types.d.ts +9 -0
  11. package/dist/acp/types.d.ts.map +1 -1
  12. package/dist/acp/types.js.map +1 -1
  13. package/dist/agent/agent-manager-v2.d.ts +21 -0
  14. package/dist/agent/agent-manager-v2.d.ts.map +1 -1
  15. package/dist/agent/agent-manager-v2.js +234 -71
  16. package/dist/agent/agent-manager-v2.js.map +1 -1
  17. package/dist/agent/agent-manager.d.ts +12 -0
  18. package/dist/agent/agent-manager.d.ts.map +1 -1
  19. package/dist/agent/agent-manager.js.map +1 -1
  20. package/dist/agent/types.d.ts +15 -2
  21. package/dist/agent/types.d.ts.map +1 -1
  22. package/dist/agent/types.js.map +1 -1
  23. package/dist/boot-v2.d.ts +41 -0
  24. package/dist/boot-v2.d.ts.map +1 -1
  25. package/dist/boot-v2.js +34 -37
  26. package/dist/boot-v2.js.map +1 -1
  27. package/dist/cli/index.js +56 -0
  28. package/dist/cli/index.js.map +1 -1
  29. package/dist/cognitive/macro-agent-backend.d.ts.map +1 -1
  30. package/dist/cognitive/macro-agent-backend.js +40 -22
  31. package/dist/cognitive/macro-agent-backend.js.map +1 -1
  32. package/dist/integrations/skilltree.d.ts.map +1 -1
  33. package/dist/integrations/skilltree.js +1 -0
  34. package/dist/integrations/skilltree.js.map +1 -1
  35. package/dist/lifecycle/cleanup.d.ts +33 -2
  36. package/dist/lifecycle/cleanup.d.ts.map +1 -1
  37. package/dist/lifecycle/cleanup.js +28 -6
  38. package/dist/lifecycle/cleanup.js.map +1 -1
  39. package/dist/lifecycle/handlers-v2.d.ts +7 -0
  40. package/dist/lifecycle/handlers-v2.d.ts.map +1 -1
  41. package/dist/lifecycle/handlers-v2.js +28 -2
  42. package/dist/lifecycle/handlers-v2.js.map +1 -1
  43. package/dist/lifecycle/types.d.ts +11 -0
  44. package/dist/lifecycle/types.d.ts.map +1 -1
  45. package/dist/lifecycle/types.js.map +1 -1
  46. package/dist/map/acp-bridge.d.ts +9 -0
  47. package/dist/map/acp-bridge.d.ts.map +1 -1
  48. package/dist/map/acp-bridge.js +15 -2
  49. package/dist/map/acp-bridge.js.map +1 -1
  50. package/dist/map/cascade-bridge.d.ts +44 -0
  51. package/dist/map/cascade-bridge.d.ts.map +1 -0
  52. package/dist/map/cascade-bridge.js +257 -0
  53. package/dist/map/cascade-bridge.js.map +1 -0
  54. package/dist/map/lifecycle-bridge.d.ts +1 -8
  55. package/dist/map/lifecycle-bridge.d.ts.map +1 -1
  56. package/dist/map/lifecycle-bridge.js +76 -22
  57. package/dist/map/lifecycle-bridge.js.map +1 -1
  58. package/dist/map/server.d.ts.map +1 -1
  59. package/dist/map/server.js +47 -6
  60. package/dist/map/server.js.map +1 -1
  61. package/dist/map/sidecar.d.ts.map +1 -1
  62. package/dist/map/sidecar.js +33 -4
  63. package/dist/map/sidecar.js.map +1 -1
  64. package/dist/map/types.d.ts +20 -0
  65. package/dist/map/types.d.ts.map +1 -1
  66. package/dist/mcp/tools/done-v2.d.ts.map +1 -1
  67. package/dist/mcp/tools/done-v2.js +8 -0
  68. package/dist/mcp/tools/done-v2.js.map +1 -1
  69. package/dist/teams/team-manager-v2.d.ts.map +1 -1
  70. package/dist/teams/team-manager-v2.js +26 -0
  71. package/dist/teams/team-manager-v2.js.map +1 -1
  72. package/dist/teams/team-runtime-v2.d.ts.map +1 -1
  73. package/dist/teams/team-runtime-v2.js +16 -3
  74. package/dist/teams/team-runtime-v2.js.map +1 -1
  75. package/dist/workspace/config.d.ts +10 -10
  76. package/dist/workspace/config.d.ts.map +1 -1
  77. package/dist/workspace/config.js +4 -4
  78. package/dist/workspace/config.js.map +1 -1
  79. package/dist/workspace/git-cascade-adapter.d.ts +510 -0
  80. package/dist/workspace/git-cascade-adapter.d.ts.map +1 -0
  81. package/dist/workspace/git-cascade-adapter.js +908 -0
  82. package/dist/workspace/git-cascade-adapter.js.map +1 -0
  83. package/dist/workspace/index.d.ts +3 -3
  84. package/dist/workspace/index.d.ts.map +1 -1
  85. package/dist/workspace/index.js +4 -4
  86. package/dist/workspace/index.js.map +1 -1
  87. package/dist/workspace/landing/direct-push.d.ts +20 -0
  88. package/dist/workspace/landing/direct-push.d.ts.map +1 -0
  89. package/dist/workspace/landing/direct-push.js +74 -0
  90. package/dist/workspace/landing/direct-push.js.map +1 -0
  91. package/dist/workspace/landing/index.d.ts +29 -0
  92. package/dist/workspace/landing/index.d.ts.map +1 -0
  93. package/dist/workspace/landing/index.js +37 -0
  94. package/dist/workspace/landing/index.js.map +1 -0
  95. package/dist/workspace/landing/merge-to-parent.d.ts +41 -0
  96. package/dist/workspace/landing/merge-to-parent.d.ts.map +1 -0
  97. package/dist/workspace/landing/merge-to-parent.js +185 -0
  98. package/dist/workspace/landing/merge-to-parent.js.map +1 -0
  99. package/dist/workspace/landing/optimistic-push.d.ts +16 -0
  100. package/dist/workspace/landing/optimistic-push.d.ts.map +1 -0
  101. package/dist/workspace/landing/optimistic-push.js +27 -0
  102. package/dist/workspace/landing/optimistic-push.js.map +1 -0
  103. package/dist/workspace/landing/queue-to-branch.d.ts +24 -0
  104. package/dist/workspace/landing/queue-to-branch.d.ts.map +1 -0
  105. package/dist/workspace/landing/queue-to-branch.js +79 -0
  106. package/dist/workspace/landing/queue-to-branch.js.map +1 -0
  107. package/dist/workspace/merge-queue/merge-queue.d.ts +10 -0
  108. package/dist/workspace/merge-queue/merge-queue.d.ts.map +1 -1
  109. package/dist/workspace/merge-queue/merge-queue.js +10 -0
  110. package/dist/workspace/merge-queue/merge-queue.js.map +1 -1
  111. package/dist/workspace/merge-queue/types.d.ts +16 -2
  112. package/dist/workspace/merge-queue/types.d.ts.map +1 -1
  113. package/dist/workspace/merge-queue/types.js +9 -0
  114. package/dist/workspace/merge-queue/types.js.map +1 -1
  115. package/dist/workspace/pool/types.d.ts +1 -0
  116. package/dist/workspace/pool/types.d.ts.map +1 -1
  117. package/dist/workspace/pool/worktree-pool.d.ts.map +1 -1
  118. package/dist/workspace/pool/worktree-pool.js +1 -0
  119. package/dist/workspace/pool/worktree-pool.js.map +1 -1
  120. package/dist/workspace/recovery/abandon.d.ts +15 -0
  121. package/dist/workspace/recovery/abandon.d.ts.map +1 -0
  122. package/dist/workspace/recovery/abandon.js +45 -0
  123. package/dist/workspace/recovery/abandon.js.map +1 -0
  124. package/dist/workspace/recovery/auto-resolve.d.ts +27 -0
  125. package/dist/workspace/recovery/auto-resolve.d.ts.map +1 -0
  126. package/dist/workspace/recovery/auto-resolve.js +99 -0
  127. package/dist/workspace/recovery/auto-resolve.js.map +1 -0
  128. package/dist/workspace/recovery/defer.d.ts +15 -0
  129. package/dist/workspace/recovery/defer.d.ts.map +1 -0
  130. package/dist/workspace/recovery/defer.js +16 -0
  131. package/dist/workspace/recovery/defer.js.map +1 -0
  132. package/dist/workspace/recovery/escalate.d.ts +16 -0
  133. package/dist/workspace/recovery/escalate.d.ts.map +1 -0
  134. package/dist/workspace/recovery/escalate.js +24 -0
  135. package/dist/workspace/recovery/escalate.js.map +1 -0
  136. package/dist/workspace/recovery/index.d.ts +32 -0
  137. package/dist/workspace/recovery/index.d.ts.map +1 -0
  138. package/dist/workspace/recovery/index.js +45 -0
  139. package/dist/workspace/recovery/index.js.map +1 -0
  140. package/dist/workspace/recovery/spawn-resolver.d.ts +45 -0
  141. package/dist/workspace/recovery/spawn-resolver.d.ts.map +1 -0
  142. package/dist/workspace/recovery/spawn-resolver.js +111 -0
  143. package/dist/workspace/recovery/spawn-resolver.js.map +1 -0
  144. package/dist/workspace/recovery/types.d.ts +63 -0
  145. package/dist/workspace/recovery/types.d.ts.map +1 -0
  146. package/dist/workspace/recovery/types.js +12 -0
  147. package/dist/workspace/recovery/types.js.map +1 -0
  148. package/dist/workspace/topology/index.d.ts +9 -0
  149. package/dist/workspace/topology/index.d.ts.map +1 -0
  150. package/dist/workspace/topology/index.js +8 -0
  151. package/dist/workspace/topology/index.js.map +1 -0
  152. package/dist/workspace/topology/no-workspace.d.ts +18 -0
  153. package/dist/workspace/topology/no-workspace.d.ts.map +1 -0
  154. package/dist/workspace/topology/no-workspace.js +25 -0
  155. package/dist/workspace/topology/no-workspace.js.map +1 -0
  156. package/dist/workspace/topology/types.d.ts +97 -0
  157. package/dist/workspace/topology/types.d.ts.map +1 -0
  158. package/dist/workspace/topology/types.js +20 -0
  159. package/dist/workspace/topology/types.js.map +1 -0
  160. package/dist/workspace/topology/yaml-driven.d.ts +69 -0
  161. package/dist/workspace/topology/yaml-driven.d.ts.map +1 -0
  162. package/dist/workspace/topology/yaml-driven.js +273 -0
  163. package/dist/workspace/topology/yaml-driven.js.map +1 -0
  164. package/dist/workspace/types-v3.d.ts +110 -0
  165. package/dist/workspace/types-v3.d.ts.map +1 -0
  166. package/dist/workspace/types-v3.js +20 -0
  167. package/dist/workspace/types-v3.js.map +1 -0
  168. package/dist/workspace/types.d.ts +145 -17
  169. package/dist/workspace/types.d.ts.map +1 -1
  170. package/dist/workspace/workspace-manager.d.ts +92 -13
  171. package/dist/workspace/workspace-manager.d.ts.map +1 -1
  172. package/dist/workspace/workspace-manager.js +373 -13
  173. package/dist/workspace/workspace-manager.js.map +1 -1
  174. package/dist/workspace/yaml-schema.d.ts +254 -0
  175. package/dist/workspace/yaml-schema.d.ts.map +1 -0
  176. package/dist/workspace/yaml-schema.js +170 -0
  177. package/dist/workspace/yaml-schema.js.map +1 -0
  178. package/docs/conflict-recovery.md +472 -0
  179. package/docs/git-cascade-integration-gaps.md +678 -0
  180. package/docs/workspace-interfaces.md +731 -0
  181. package/docs/workspace-redesign-plan.md +302 -0
  182. package/package.json +4 -4
  183. package/src/__tests__/e2e/auto-sync.e2e.test.ts +257 -0
  184. package/src/__tests__/e2e/cascade-rebase.e2e.test.ts +254 -0
  185. package/src/__tests__/e2e/cli-run.e2e.test.ts +167 -0
  186. package/src/__tests__/e2e/self-driving-v3.e2e.test.ts +197 -0
  187. package/src/__tests__/e2e/spawn-resolver.e2e.test.ts +200 -0
  188. package/src/__tests__/e2e/workspace-lifecycle.e2e.test.ts +30 -22
  189. package/src/__tests__/e2e/workspace-v3.e2e.test.ts +413 -0
  190. package/src/acp/__tests__/claude-code-replay.test.ts +225 -0
  191. package/src/acp/__tests__/macro-agent.test.ts +39 -1
  192. package/src/acp/claude-code-replay.ts +208 -0
  193. package/src/acp/macro-agent.ts +167 -9
  194. package/src/acp/types.ts +10 -0
  195. package/src/agent/__tests__/agent-manager-topology.test.ts +73 -0
  196. package/src/agent/__tests__/agent-manager-v2.test.ts +71 -11
  197. package/src/agent/__tests__/task-ref-resolution.test.ts +231 -0
  198. package/src/agent/agent-manager-v2.ts +293 -77
  199. package/src/agent/agent-manager.ts +14 -0
  200. package/src/agent/types.ts +16 -2
  201. package/src/boot-v2.ts +87 -36
  202. package/src/cli/index.ts +61 -0
  203. package/src/cognitive/__tests__/macro-agent-backend.test.ts +47 -5
  204. package/src/cognitive/macro-agent-backend.ts +45 -29
  205. package/src/integrations/skilltree.ts +1 -0
  206. package/src/lifecycle/cleanup.ts +52 -3
  207. package/src/lifecycle/handlers-v2.ts +40 -3
  208. package/src/lifecycle/types.ts +12 -0
  209. package/src/map/__tests__/cascade-bridge.test.ts +229 -0
  210. package/src/map/__tests__/lifecycle-bridge.test.ts +165 -22
  211. package/src/map/acp-bridge.ts +26 -3
  212. package/src/map/cascade-bridge.ts +301 -0
  213. package/src/map/lifecycle-bridge.ts +77 -27
  214. package/src/map/server.ts +47 -6
  215. package/src/map/sidecar.ts +31 -3
  216. package/src/map/types.ts +20 -0
  217. package/src/mcp/tools/done-v2.ts +9 -0
  218. package/src/teams/team-manager-v2.ts +37 -0
  219. package/src/teams/team-runtime-v2.ts +23 -3
  220. package/src/workspace/__tests__/{dataplane-adapter.test.ts → git-cascade-adapter.test.ts} +209 -14
  221. package/src/workspace/__tests__/self-driving-yaml.test.ts +114 -0
  222. package/src/workspace/__tests__/shared-worktree-refcount.test.ts +154 -0
  223. package/src/workspace/__tests__/standalone-mode.test.ts +118 -0
  224. package/src/workspace/__tests__/workspace-manager-v3.test.ts +245 -0
  225. package/src/workspace/__tests__/yaml-schema.test.ts +210 -0
  226. package/src/workspace/config.ts +11 -11
  227. package/src/workspace/git-cascade-adapter.ts +1186 -0
  228. package/src/workspace/index.ts +11 -11
  229. package/src/workspace/landing/__tests__/strategies.test.ts +142 -0
  230. package/src/workspace/landing/direct-push.ts +91 -0
  231. package/src/workspace/landing/index.ts +40 -0
  232. package/src/workspace/landing/merge-to-parent.ts +228 -0
  233. package/src/workspace/landing/optimistic-push.ts +36 -0
  234. package/src/workspace/landing/queue-to-branch.ts +108 -0
  235. package/src/workspace/merge-queue/merge-queue.ts +10 -0
  236. package/src/workspace/merge-queue/types.ts +16 -2
  237. package/src/workspace/pool/__tests__/worktree-pool.integration.test.ts +5 -5
  238. package/src/workspace/pool/types.ts +1 -0
  239. package/src/workspace/pool/worktree-pool.ts +1 -0
  240. package/src/workspace/recovery/__tests__/auto-resolve-integration.test.ts +127 -0
  241. package/src/workspace/recovery/__tests__/spawn-resolver.test.ts +139 -0
  242. package/src/workspace/recovery/__tests__/strategies.test.ts +145 -0
  243. package/src/workspace/recovery/abandon.ts +51 -0
  244. package/src/workspace/recovery/auto-resolve.ts +119 -0
  245. package/src/workspace/recovery/defer.ts +23 -0
  246. package/src/workspace/recovery/escalate.ts +30 -0
  247. package/src/workspace/recovery/index.ts +58 -0
  248. package/src/workspace/recovery/spawn-resolver.ts +145 -0
  249. package/src/workspace/recovery/types.ts +54 -0
  250. package/src/workspace/topology/__tests__/yaml-driven.test.ts +345 -0
  251. package/src/workspace/topology/index.ts +18 -0
  252. package/src/workspace/topology/no-workspace.ts +39 -0
  253. package/src/workspace/topology/types.ts +116 -0
  254. package/src/workspace/topology/yaml-driven.ts +316 -0
  255. package/src/workspace/types-v3.ts +155 -0
  256. package/src/workspace/types.ts +191 -20
  257. package/src/workspace/workspace-manager.ts +474 -19
  258. package/src/workspace/yaml-schema.ts +216 -0
  259. package/src/workspace/dataplane-adapter.ts +0 -546
@@ -0,0 +1,11 @@
1
+ import type { SessionUpdate } from "@agentclientprotocol/sdk";
2
+ /**
3
+ * Read Claude Code's JSONL transcript for a session and yield ACP SessionUpdate
4
+ * events suitable for emitting via `connection.sessionUpdate({ sessionId, update })`.
5
+ *
6
+ * Yields events in chronological order. Returns early (yields nothing) if the
7
+ * transcript file doesn't exist — e.g., the agent is running on a different
8
+ * machine.
9
+ */
10
+ export declare function replayClaudeCodeTranscript(providerSessionId: string): AsyncGenerator<SessionUpdate>;
11
+ //# sourceMappingURL=claude-code-replay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-code-replay.d.ts","sourceRoot":"","sources":["../../src/acp/claude-code-replay.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAwH9D;;;;;;;GAOG;AACH,wBAAuB,0BAA0B,CAC/C,iBAAiB,EAAE,MAAM,GACxB,cAAc,CAAC,aAAa,CAAC,CAsD/B"}
@@ -0,0 +1,190 @@
1
+ /**
2
+ * Claude Code JSONL → ACP SessionUpdate replay
3
+ *
4
+ * Works around a gap in claude-code-acp where `loadSession` does NOT emit
5
+ * `session/update` notifications for historical conversation content — it only
6
+ * tells the Claude Code subprocess to restore context internally. That means
7
+ * clients (like OpenHive) calling ACP's `session/load` get back an empty
8
+ * session.
9
+ *
10
+ * Per the ACP spec (https://agentclientprotocol.com/protocol/session-setup#loading-sessions),
11
+ * loadSession SHOULD stream the conversation history back via session/update
12
+ * notifications. This module reads Claude Code's native JSONL transcript (which
13
+ * Claude Code always persists, no hooks required) and converts each entry to
14
+ * ACP SessionUpdate events so the client can reconstruct the conversation.
15
+ *
16
+ * TODO(upstream): fix claude-code-acp so this workaround becomes unnecessary.
17
+ * See node_modules/@sudocode-ai/claude-code-acp/dist/acp-agent.js:344-353.
18
+ *
19
+ * @module acp/claude-code-replay
20
+ */
21
+ import * as fs from "node:fs/promises";
22
+ import * as path from "node:path";
23
+ import * as os from "node:os";
24
+ /**
25
+ * Locate Claude Code's JSONL transcript for the given session.
26
+ *
27
+ * Claude Code writes transcripts to `~/.claude/projects/{encoded-cwd}/{session-id}.jsonl`.
28
+ * The cwd encoding replaces `/` with `-` (e.g., `/tmp/x` → `-private-tmp-x` on macOS
29
+ * where /tmp is a symlink). Rather than replicating the encoding exactly, we scan
30
+ * project directories for a file matching the session ID — the ID is a UUID so
31
+ * collisions are not a concern.
32
+ */
33
+ async function locateTranscript(providerSessionId) {
34
+ const projectsRoot = path.join(os.homedir(), ".claude", "projects");
35
+ let dirents;
36
+ try {
37
+ // @ts-expect-error — withFileTypes overload returns Dirent[]
38
+ dirents = await fs.readdir(projectsRoot, { withFileTypes: true });
39
+ }
40
+ catch {
41
+ return null;
42
+ }
43
+ for (const d of dirents) {
44
+ if (!d.isDirectory())
45
+ continue;
46
+ const candidate = path.join(projectsRoot, d.name, `${providerSessionId}.jsonl`);
47
+ try {
48
+ await fs.access(candidate);
49
+ return candidate;
50
+ }
51
+ catch {
52
+ // Not in this dir — keep scanning
53
+ }
54
+ }
55
+ return null;
56
+ }
57
+ /**
58
+ * Convert a user message content block into an ACP SessionUpdate.
59
+ */
60
+ function userBlockToUpdate(block) {
61
+ if (block.type === "text" && block.text) {
62
+ return {
63
+ sessionUpdate: "user_message_chunk",
64
+ content: { type: "text", text: block.text },
65
+ };
66
+ }
67
+ if (block.type === "tool_result") {
68
+ const output = typeof block.content === "string"
69
+ ? block.content
70
+ : JSON.stringify(block.content);
71
+ return {
72
+ sessionUpdate: "tool_call_update",
73
+ toolCallId: block.tool_use_id,
74
+ output,
75
+ status: block.is_error ? "failed" : "completed",
76
+ };
77
+ }
78
+ return null;
79
+ }
80
+ /**
81
+ * Convert an assistant message content block into an ACP SessionUpdate.
82
+ */
83
+ function assistantBlockToUpdate(block) {
84
+ if (block.type === "text" && block.text) {
85
+ return {
86
+ sessionUpdate: "agent_message_chunk",
87
+ content: { type: "text", text: block.text },
88
+ };
89
+ }
90
+ if (block.type === "tool_use") {
91
+ return {
92
+ sessionUpdate: "tool_call",
93
+ toolCallId: block.id,
94
+ title: block.name,
95
+ rawInput: block.input,
96
+ status: "pending",
97
+ };
98
+ }
99
+ if (block.type === "thinking") {
100
+ const text = block.thinking ?? block.text ?? "";
101
+ if (!text)
102
+ return null;
103
+ return {
104
+ sessionUpdate: "agent_thought_chunk",
105
+ content: { type: "text", text },
106
+ };
107
+ }
108
+ return null;
109
+ }
110
+ /**
111
+ * Check if a string user-message looks like a Claude Code internal command
112
+ * (e.g., `<command-name>/model</command-name>`, `<local-command-stdout>...`).
113
+ * These get recorded in the JSONL but aren't part of the conversation UX.
114
+ */
115
+ function isInternalCommand(text) {
116
+ const t = text.trimStart();
117
+ return (t.startsWith("<command-") ||
118
+ t.startsWith("<local-command-") ||
119
+ t.startsWith("<system-reminder") ||
120
+ t.startsWith("Caveat:"));
121
+ }
122
+ /**
123
+ * Read Claude Code's JSONL transcript for a session and yield ACP SessionUpdate
124
+ * events suitable for emitting via `connection.sessionUpdate({ sessionId, update })`.
125
+ *
126
+ * Yields events in chronological order. Returns early (yields nothing) if the
127
+ * transcript file doesn't exist — e.g., the agent is running on a different
128
+ * machine.
129
+ */
130
+ export async function* replayClaudeCodeTranscript(providerSessionId) {
131
+ const jsonlPath = await locateTranscript(providerSessionId);
132
+ if (!jsonlPath)
133
+ return;
134
+ let raw;
135
+ try {
136
+ raw = await fs.readFile(jsonlPath, "utf-8");
137
+ }
138
+ catch {
139
+ return;
140
+ }
141
+ for (const line of raw.split("\n")) {
142
+ const trimmed = line.trim();
143
+ if (!trimmed)
144
+ continue;
145
+ let entry;
146
+ try {
147
+ entry = JSON.parse(trimmed);
148
+ }
149
+ catch {
150
+ continue;
151
+ }
152
+ // Skip non-conversation entries (queue-operations, summaries, etc.)
153
+ if (entry.type !== "user" && entry.type !== "assistant")
154
+ continue;
155
+ // Skip meta messages (local command output, system injections)
156
+ if (entry.isMeta)
157
+ continue;
158
+ const message = entry.message;
159
+ if (!message)
160
+ continue;
161
+ const content = message.content;
162
+ if (entry.type === "user") {
163
+ if (typeof content === "string") {
164
+ if (isInternalCommand(content))
165
+ continue;
166
+ yield {
167
+ sessionUpdate: "user_message_chunk",
168
+ content: { type: "text", text: content },
169
+ };
170
+ }
171
+ else if (Array.isArray(content)) {
172
+ for (const block of content) {
173
+ const upd = userBlockToUpdate(block);
174
+ if (upd)
175
+ yield upd;
176
+ }
177
+ }
178
+ }
179
+ else if (entry.type === "assistant") {
180
+ if (Array.isArray(content)) {
181
+ for (const block of content) {
182
+ const upd = assistantBlockToUpdate(block);
183
+ if (upd)
184
+ yield upd;
185
+ }
186
+ }
187
+ }
188
+ }
189
+ }
190
+ //# sourceMappingURL=claude-code-replay.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-code-replay.js","sourceRoot":"","sources":["../../src/acp/claude-code-replay.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"macro-agent.d.ts","sourceRoot":"","sources":["../../src/acp/macro-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACV,KAAK,IAAI,QAAQ,EAclB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAKpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAQvD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,kBAAkB,CAAC;IAC3B,UAAU,CAAC,EAAE,oBAAoB,CAAC;CACnC;AAoFD;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,mBAAmB,EAC/B,MAAM,EAAE,gBAAgB,GACvB,QAAQ,CAiqBV;AAED;;;GAGG;AACH,OAAO,EAAE,aAAa,EAAE,CAAC"}
1
+ {"version":3,"file":"macro-agent.d.ts","sourceRoot":"","sources":["../../src/acp/macro-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACV,KAAK,IAAI,QAAQ,EAclB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAKpE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAQvD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,kBAAkB,CAAC;IAC3B,UAAU,CAAC,EAAE,oBAAoB,CAAC;CACnC;AAoFD;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,mBAAmB,EAC/B,MAAM,EAAE,gBAAgB,GACvB,QAAQ,CA+zBV;AAED;;;GAGG;AACH,OAAO,EAAE,aAAa,EAAE,CAAC"}
@@ -93,6 +93,20 @@ export function createMacroAgent(connection, config) {
93
93
  let checkpointCounter = 0;
94
94
  let firstPrompt = null;
95
95
  const sessionStartedAt = new Date().toISOString();
96
+ // Per-session update history for ACP session/load replay.
97
+ // Per the ACP spec, loadSession should re-emit all session/update notifications
98
+ // previously sent so the client can reconstruct state. We buffer them here
99
+ // keyed by ACP session ID.
100
+ const sessionUpdateHistory = new Map();
101
+ function appendSessionUpdate(acpSessionId, update) {
102
+ const arr = sessionUpdateHistory.get(acpSessionId);
103
+ if (arr) {
104
+ arr.push(update);
105
+ }
106
+ else {
107
+ sessionUpdateHistory.set(acpSessionId, [update]);
108
+ }
109
+ }
96
110
  // Git info (cached — read once per session)
97
111
  let gitInfo = null;
98
112
  function getGitInfo(cwd) {
@@ -289,15 +303,38 @@ export function createMacroAgent(connection, config) {
289
303
  },
290
304
  async newSession(params) {
291
305
  const cwd = params.cwd ?? defaultCwd;
292
- // Get or create a head manager for this workspace
293
- const headManager = await agentManager.getOrCreateHeadManager({ cwd });
306
+ // Two paths into newSession:
307
+ //
308
+ // 1. MAP-bound stream — initConfig.targetAgentId is set by the ACP
309
+ // bridge to the local agent ID this stream was opened against.
310
+ // Bind the session to that specific agent (any role), preserving
311
+ // the routing intent that brought the stream here. This matters
312
+ // when multiple coordinators share a cwd: cwd-based lookup would
313
+ // pick whichever the store returned first, which may not be the
314
+ // one the client actually wanted to talk to.
315
+ //
316
+ // 2. Fallback — pure ACP client with no agent context. Use
317
+ // cwd-based head-manager lookup (spawning one if needed). This
318
+ // keeps stock ACP clients working without protocol changes.
319
+ let target;
320
+ if (initConfig?.targetAgentId) {
321
+ const bound = agentManager.getActiveAgentSession(initConfig.targetAgentId);
322
+ if (!bound) {
323
+ throw new ACPError(`Agent ${initConfig.targetAgentId} is not running or has no active session`, "AGENT_NOT_FOUND", { agentId: initConfig.targetAgentId });
324
+ }
325
+ target = { id: bound.id, session_id: bound.session_id };
326
+ }
327
+ else {
328
+ const headManager = await agentManager.getOrCreateHeadManager({ cwd });
329
+ target = { id: headManager.id, session_id: headManager.session_id };
330
+ }
294
331
  // Create session mapping
295
- const mapping = sessionMapper.createMapping(headManager.session_id, headManager.id);
332
+ const mapping = sessionMapper.createMapping(target.session_id, target.id);
296
333
  // Annotate sessionlog with swarm metadata (best effort)
297
334
  try {
298
335
  const { annotateSession } = await import("../integrations/sessionlog.js");
299
336
  annotateSession(cwd, {
300
- swarmId: headManager.id,
337
+ swarmId: target.id,
301
338
  scope: "macro-agent",
302
339
  });
303
340
  }
@@ -310,9 +347,90 @@ export function createMacroAgent(connection, config) {
310
347
  },
311
348
  async loadSession(params) {
312
349
  const sessionId = params.sessionId;
350
+ /**
351
+ * Resolve the provider_session_id (Claude Code's UUID for the session)
352
+ * for a given macro-agent acp session. Needed to locate the JSONL
353
+ * transcript on disk as a fallback when the in-memory buffer is empty.
354
+ */
355
+ const resolveProviderSessionId = (agentId) => {
356
+ const store = system.agentStore;
357
+ const rec = store?.getAgent?.(agentId);
358
+ const meta = rec?.metadata;
359
+ const psid = meta?.provider_session_id;
360
+ return typeof psid === "string" ? psid : undefined;
361
+ };
362
+ // Replay helper: re-emit session/update notifications so the client can
363
+ // rebuild its view of the conversation. Per the ACP spec, loadSession
364
+ // SHOULD emit all previously-sent session/update events.
365
+ //
366
+ // Two sources in priority order:
367
+ // 1. In-memory buffer (populated by prior prompts in this process).
368
+ // Fast and accurate — exactly what was streamed to the client.
369
+ // 2. Claude Code's JSONL transcript on disk (durable across restarts).
370
+ // Used when the buffer is empty — e.g., we got a loadSession for a
371
+ // session that was prompted but whose updates were never buffered,
372
+ // or after a process restart within the same session's lifetime.
373
+ //
374
+ // This is a workaround: the ACP spec expects the underlying agent
375
+ // (claude-code-acp) to emit session/update during loadSession, but its
376
+ // current implementation only passes `resume: sessionId` to Claude Code
377
+ // SDK for internal context restoration without surfacing history to the
378
+ // client. See claude-code-replay.ts for details.
379
+ const replayHistory = async (agentIdForLookup, explicitProviderSessionId) => {
380
+ const buffered = sessionUpdateHistory.get(sessionId);
381
+ if (buffered && buffered.length > 0) {
382
+ for (const update of buffered) {
383
+ try {
384
+ await connection.sessionUpdate({ sessionId, update });
385
+ }
386
+ catch {
387
+ // Best effort — continue replaying remaining updates
388
+ }
389
+ }
390
+ return;
391
+ }
392
+ // Buffer empty — fall back to Claude Code JSONL if we can locate it.
393
+ // Provider session ID resolution priority:
394
+ // 1. Explicit — passed via ACP LoadSessionRequest._meta.provider_session_id
395
+ // (survives macro-agent restart since it comes from the client)
396
+ // 2. From agent metadata — when sessionMapper still has the mapping
397
+ const providerSessionId = explicitProviderSessionId ??
398
+ (agentIdForLookup ? resolveProviderSessionId(agentIdForLookup) : undefined);
399
+ if (!providerSessionId)
400
+ return;
401
+ try {
402
+ const { replayClaudeCodeTranscript } = await import("./claude-code-replay.js");
403
+ const bufferForFuture = [];
404
+ for await (const update of replayClaudeCodeTranscript(providerSessionId)) {
405
+ try {
406
+ await connection.sessionUpdate({ sessionId, update });
407
+ bufferForFuture.push(update);
408
+ }
409
+ catch {
410
+ // Best effort — continue
411
+ }
412
+ }
413
+ // Populate the in-memory buffer so subsequent loadSession calls use
414
+ // the fast path. Only if we actually read something.
415
+ if (bufferForFuture.length > 0) {
416
+ sessionUpdateHistory.set(sessionId, bufferForFuture);
417
+ }
418
+ }
419
+ catch {
420
+ // Transcript read failed — no history to emit
421
+ }
422
+ };
423
+ // Extract optional provider_session_id from ACP LoadSessionRequest._meta.
424
+ // Clients (like OpenHive) that know the underlying Claude Code session ID
425
+ // can pass it here to enable history recovery across macro-agent restarts
426
+ // (when sessionMapper is empty because it's in-memory only).
427
+ const metaProviderSessionId = typeof params._meta?.provider_session_id === "string"
428
+ ? params._meta.provider_session_id
429
+ : undefined;
313
430
  // Check if we already have a mapping for this session
314
431
  let mapping = sessionMapper.getMapping(sessionId);
315
432
  if (mapping) {
433
+ await replayHistory(mapping.agentId, metaProviderSessionId);
316
434
  return {};
317
435
  }
318
436
  // Try to resume the agent associated with this session
@@ -321,6 +439,16 @@ export function createMacroAgent(connection, config) {
321
439
  if (agent) {
322
440
  const resumed = await agentManager.resume(sessionId);
323
441
  mapping = sessionMapper.createMapping(resumed.session_id, resumed.id);
442
+ await replayHistory(resumed.id, metaProviderSessionId);
443
+ return {};
444
+ }
445
+ // No mapping — but if the client supplied provider_session_id via _meta,
446
+ // we can still replay history from the JSONL on disk. This is the
447
+ // cross-restart recovery path. We don't create a session mapping because
448
+ // there's no live agent to bind to — the client should create a fresh
449
+ // session if it wants to continue the conversation.
450
+ if (metaProviderSessionId) {
451
+ await replayHistory(undefined, metaProviderSessionId);
324
452
  return {};
325
453
  }
326
454
  throw RequestError.invalidParams({ sessionId }, `Session not found: ${sessionId}`);
@@ -340,6 +468,19 @@ export function createMacroAgent(connection, config) {
340
468
  }
341
469
  }
342
470
  const message = textParts.join("\n") || "";
471
+ // Record the user prompt as a user_message_chunk update in the replay
472
+ // buffer so session/load can reconstruct the full conversation. The
473
+ // agent itself doesn't emit this — the client sent it — but it IS part
474
+ // of the session's logical state.
475
+ for (const block of params.prompt) {
476
+ if ("text" in block && typeof block.text === "string" && block.text) {
477
+ const userChunk = {
478
+ sessionUpdate: "user_message_chunk",
479
+ content: { type: "text", text: block.text },
480
+ };
481
+ appendSessionUpdate(params.sessionId, userChunk);
482
+ }
483
+ }
343
484
  sessionMapper.setProcessing(params.sessionId, true);
344
485
  // Capture first prompt for trajectory metadata (used as session description in OpenHive UI)
345
486
  if (!firstPrompt) {
@@ -355,7 +496,7 @@ export function createMacroAgent(connection, config) {
355
496
  const mapServer = system.mapServerInstance;
356
497
  if (mapServer) {
357
498
  const agents = mapServer.agents?.list?.() ?? [];
358
- const mapAgent = agents.find((a) => a.metadata?.localAgentId === agentId);
499
+ const mapAgent = agents.find((a) => a.metadata?.peerAgentId === agentId);
359
500
  if (mapAgent) {
360
501
  mapServer.agents.updateState(mapAgent.id, "busy");
361
502
  }
@@ -555,6 +696,10 @@ export function createMacroAgent(connection, config) {
555
696
  sessionId: params.sessionId,
556
697
  update,
557
698
  };
699
+ // Buffer for replay on session/load. Per the ACP spec, loadSession
700
+ // should re-emit all previously sent session/update notifications
701
+ // so the client can reconstruct state after reconnect.
702
+ appendSessionUpdate(params.sessionId, update);
558
703
  await connection.sessionUpdate(notification);
559
704
  }
560
705
  }
@@ -590,6 +735,10 @@ export function createMacroAgent(connection, config) {
590
735
  phase: "active",
591
736
  startedAt: sessionStartedAt,
592
737
  label: `Step ${checkpointCounter} (${toolCallCount} tool calls)`,
738
+ // Underlying Claude Code session ID — lets OpenHive find the
739
+ // JSONL transcript on disk for history recovery even if the
740
+ // macro-agent process dies.
741
+ provider_session_id: agentRecord?.metadata?.provider_session_id ?? undefined,
593
742
  // metrics fields
594
743
  ...(isMetrics ? {
595
744
  duration_ms: Date.now() - promptStartTime,
@@ -632,7 +781,7 @@ export function createMacroAgent(connection, config) {
632
781
  const mapServer = system.mapServerInstance;
633
782
  if (mapServer) {
634
783
  const agents = mapServer.agents?.list?.() ?? [];
635
- const mapAgent = agents.find((a) => a.metadata?.localAgentId === agentId);
784
+ const mapAgent = agents.find((a) => a.metadata?.peerAgentId === agentId);
636
785
  if (mapAgent) {
637
786
  mapServer.agents.updateState(mapAgent.id, "idle");
638
787
  }
@@ -1 +1 @@
1
- {"version":3,"file":"macro-agent.js","sourceRoot":"","sources":["../../src/acp/macro-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"macro-agent.js","sourceRoot":"","sources":["../../src/acp/macro-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAmBH,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAKxD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAGtC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAW9C,oEAAoE;AACpE,yBAAyB;AACzB,oEAAoE;AAEpE,MAAM,oBAAoB,GAAG;IAC3B,mBAAmB;IACnB,qBAAqB;IACrB,gBAAgB;IAChB,mBAAmB;IACnB,kBAAkB;IAClB,eAAe;IACf,mBAAmB;IACnB,kBAAkB;IAClB,4BAA4B;IAC5B,yBAAyB;IACzB,0BAA0B;CAClB,CAAC;AAEX,MAAM,uBAAuB,GAAG;IAC9B,kBAAkB;IAClB,gBAAgB;IAChB,mBAAmB;IACnB,sBAAsB;IACtB,wBAAwB;IACxB,wBAAwB;IACxB,wBAAwB;IACxB,8BAA8B;CACtB,CAAC;AAKX,oEAAoE;AACpE,cAAc;AACd,oEAAoE;AAEpE,sDAAsD;AACtD,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC;IACvC,oBAAoB;IACpB,qBAAqB;IACrB,qBAAqB;IACrB,WAAW;IACX,kBAAkB;IAClB,MAAM;IACN,2BAA2B;IAC3B,qBAAqB;IACrB,sBAAsB;IACtB,qBAAqB;CACtB,CAAC,CAAC;AAEH;;;GAGG;AACH,SAAS,kBAAkB,CACzB,MAA6B;IAE7B,OAAO,CACL,eAAe,IAAI,MAAM;QACzB,wBAAwB,CAAC,GAAG,CACzB,MAAoC,CAAC,aAAa,CACpD,CACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,yBAAyB,CAChC,MAA6B;IAE7B,OAAO,CACL,eAAe,IAAI,MAAM;QACxB,MAAoC,CAAC,aAAa,KAAK,oBAAoB,CAC7E,CAAC;AACJ,CAAC;AAED,oEAAoE;AACpE,UAAU;AACV,oEAAoE;AAEpE;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAC9B,UAA+B,EAC/B,MAAwB;IAExB,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;IACtC,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC;IAC5D,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;IAE1C,MAAM,UAAU,GAAG,UAAU,EAAE,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAE3D,4CAA4C;IAC5C,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAC1B,IAAI,WAAW,GAAkB,IAAI,CAAC;IACtC,MAAM,gBAAgB,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAElD,0DAA0D;IAC1D,gFAAgF;IAChF,2EAA2E;IAC3E,2BAA2B;IAC3B,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAA2B,CAAC;IAChE,SAAS,mBAAmB,CAAC,YAAoB,EAAE,MAAqB;QACtE,MAAM,GAAG,GAAG,oBAAoB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACnD,IAAI,GAAG,EAAE,CAAC;YACR,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;aAAM,CAAC;YACN,oBAAoB,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED,4CAA4C;IAC5C,IAAI,OAAO,GAA0F,IAAI,CAAC;IAC1G,SAAS,UAAU,CAAC,GAAW;QAC7B,IAAI,OAAO;YAAE,OAAO,OAAO,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,QAAQ,CAAC,iCAAiC,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC;YAC7G,MAAM,UAAU,GAAG,QAAQ,CAAC,oBAAoB,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC;YACpG,IAAI,SAAS,GAAkB,IAAI,CAAC;YACpC,IAAI,CAAC;gBACH,SAAS,GAAG,QAAQ,CAAC,2BAA2B,EAAE,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC;YACtG,CAAC;YAAC,MAAM,CAAC,CAAC,eAAe,CAAC,CAAC;YAC3B,OAAO,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC;QAC9C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;QAChE,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,gEAAgE;IAEhE,SAAS,iBAAiB,CAAC,SAAiB;QAC1C,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACpD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,YAAY,CAAC,aAAa,CAC9B,EAAE,SAAS,EAAE,EACb,sBAAsB,SAAS,EAAE,CAClC,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,+DAA+D;IAE/D,KAAK,UAAU,eAAe,CAC5B,MAAc,EACd,MAA+B;QAE/B,sCAAsC;QACtC,IACG,uBAA6C,CAAC,QAAQ,CAAC,MAAM,CAAC,EAC/D,CAAC;YACD,MAAM,IAAI,QAAQ,CAChB,+BAA+B,MAAM,EAAE,EACvC,iBAAiB,EACjB,EAAE,MAAM,EAAE,CACX,CAAC;QACJ,CAAC;QAED,QAAQ,MAA4B,EAAE,CAAC;YACrC,KAAK,mBAAmB,CAAC,CAAC,CAAC;gBACzB,MAAM,IAAI,GAAG,MAAM,CAAC,IAAc,CAAC;gBACnC,IAAI,CAAC,IAAI;oBAAE,MAAM,YAAY,CAAC,aAAa,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;gBACxE,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC;oBACvC,IAAI;oBACJ,MAAM,EAAE,MAAM,CAAC,MAA4B;oBAC3C,GAAG,EAAG,MAAM,CAAC,GAAc,IAAI,UAAU;oBACzC,IAAI,EAAE,MAAM,CAAC,IAA0B;oBACvC,cAAc,EAAE,MAAM,CAAC,cAA4C;iBACpE,CAAC,CAAC;gBACH,OAAO;oBACL,OAAO,EAAE,OAAO,CAAC,EAAE;oBACnB,SAAS,EAAE,OAAO,CAAC,UAAU;oBAC7B,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI;oBACxB,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK;iBAC3B,CAAC;YACJ,CAAC;YAED,KAAK,qBAAqB,CAAC,CAAC,CAAC;gBAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAiB,CAAC;gBACzC,IAAI,CAAC,OAAO;oBAAE,MAAM,YAAY,CAAC,aAAa,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;gBAC9E,MAAM,SAAS,GAAG,YAAY,CAAC,YAAY,CAAC,OAAO,EAAE;oBACnD,KAAK,EAAE,MAAM,CAAC,KAA2B;iBAC1C,CAAC,CAAC;gBACH,OAAO,EAAE,SAAS,EAAE,SAAS,IAAI,IAAI,EAA6B,CAAC;YACrE,CAAC;YAED,KAAK,gBAAgB,CAAC,CAAC,CAAC;gBACtB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAgB,CAAC;gBACvC,IAAI,CAAC,MAAM;oBAAE,MAAM,YAAY,CAAC,aAAa,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;gBAC5E,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAChD,OAAO,EAAE,IAAI,EAA6B,CAAC;YAC7C,CAAC;YAED,KAAK,mBAAmB,CAAC,CAAC,CAAC;gBACzB,MAAM,SAAS,GAAG,MAAM,CAAC,SAAmB,CAAC;gBAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAiB,CAAC;gBACzC,IAAI,CAAC,SAAS,IAAI,CAAC,OAAO,EAAE,CAAC;oBAC3B,MAAM,YAAY,CAAC,aAAa,CAC9B,MAAM,EACN,oCAAoC,CACrC,CAAC;gBACJ,CAAC;gBAED,0BAA0B;gBAC1B,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACxC,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,MAAM,IAAI,QAAQ,CAChB,oBAAoB,OAAO,EAAE,EAC7B,iBAAiB,EACjB,EAAE,OAAO,EAAE,CACZ,CAAC;gBACJ,CAAC;gBAED,MAAM,eAAe,GAAG,aAAa,CAAC,KAAK,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBAChE,OAAO;oBACL,OAAO,EAAE,IAAI;oBACb,OAAO;oBACP,eAAe,EAAE,eAAe,IAAI,IAAI;iBACzC,CAAC;YACJ,CAAC;YAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACxB,MAAM,aAAa,GAAG,MAAM,CAAC,aAAuB,CAAC;gBACrD,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,MAAM,YAAY,CAAC,aAAa,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;gBACxE,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,aAAa,EAAE;wBACzD,IAAI,EAAE,MAAM,CAAC,IAA0B;wBACvC,MAAM,EAAE,MAAM,CAAC,MAA4B;wBAC3C,GAAG,EAAE,MAAM,CAAC,GAAyB;qBACtC,CAAC,CAAC;oBACH,OAAO;wBACL,OAAO,EAAE,MAAM,CAAC,EAAE;wBAClB,SAAS,EAAE,MAAM,CAAC,UAAU;qBAC7B,CAAC;gBACJ,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,IAAI,QAAQ,CAChB,gBAAiB,GAAa,CAAC,OAAO,EAAE,EACxC,aAAa,EACb,EAAE,aAAa,EAAE,CAClB,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAiB,CAAC;gBACzC,IAAI,CAAC,OAAO;oBAAE,MAAM,YAAY,CAAC,aAAa,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;gBAC9E,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACnD,OAAO;oBACL,OAAO,EAAE,OAAO,CAAC,EAAE;oBACnB,SAAS,EAAE,OAAO,CAAC,UAAU;oBAC7B,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK;iBAC3B,CAAC;YACJ,CAAC;YAED,KAAK,mBAAmB,CAAC,CAAC,CAAC;gBACzB,MAAM,OAAO,GAAG,MAAM,CAAC,OAAiB,CAAC;gBACzC,IAAI,CAAC,OAAO;oBAAE,MAAM,YAAY,CAAC,aAAa,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;gBAE9E,IAAI,MAAM,CAAC,SAAS,EAAE,CAAC;oBACrB,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,UAAU,CAC1C,MAAM,CAAC,SAAmB,EAC1B,MAAM,CAAC,KAA2B,CACnC,CAAC;oBACF,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;gBAC9B,CAAC;gBAED,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,OAAO,EAAE;oBACtD,KAAK,EAAE,MAAM,CAAC,KAA2B;iBAC1C,CAAC,CAAC;gBACH,OAAO,EAAE,QAAQ,EAAE,CAAC;YACtB,CAAC;YAED,KAAK,kBAAkB,CAAC,CAAC,CAAC;gBACxB,iDAAiD;gBACjD,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;YACxB,CAAC;YAED,KAAK,4BAA4B,CAAC,CAAC,CAAC;gBAClC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAiB,CAAC;gBACzC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAmB,CAAC;gBAC7C,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAkB,CAAC;gBAC3C,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACxC,MAAM,YAAY,CAAC,aAAa,CAC9B,MAAM,EACN,+CAA+C,CAChD,CAAC;gBACJ,CAAC;gBACD,MAAM,OAAO,GAAG,YAAY,CAAC,mBAAmB,CAC9C,OAAO,EACP,SAAS,EACT,QAAQ,CACT,CAAC;gBACF,OAAO,EAAE,OAAO,EAAE,CAAC;YACrB,CAAC;YAED,KAAK,yBAAyB,CAAC,CAAC,CAAC;gBAC/B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAiB,CAAC;gBACzC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAmB,CAAC;gBAC7C,IAAI,CAAC,OAAO,IAAI,CAAC,SAAS,EAAE,CAAC;oBAC3B,MAAM,YAAY,CAAC,aAAa,CAC9B,MAAM,EACN,oCAAoC,CACrC,CAAC;gBACJ,CAAC;gBACD,MAAM,OAAO,GAAG,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;gBAClE,OAAO,EAAE,OAAO,EAAE,CAAC;YACrB,CAAC;YAED,KAAK,0BAA0B,CAAC,CAAC,CAAC;gBAChC,MAAM,OAAO,GAAG,MAAM,CAAC,OAAiB,CAAC;gBACzC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAc,CAAC;gBACnC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;oBACtB,MAAM,YAAY,CAAC,aAAa,CAC9B,MAAM,EACN,+BAA+B,CAChC,CAAC;gBACJ,CAAC;gBACD,MAAM,OAAO,GAAG,YAAY,CAAC,iBAAiB,CAC5C,OAAO,EACP,IAAsB,CACvB,CAAC;gBACF,OAAO,EAAE,OAAO,EAAE,CAAC;YACrB,CAAC;YAED;gBACE,MAAM,IAAI,QAAQ,CAChB,sBAAsB,MAAM,EAAE,EAC9B,mBAAmB,EACnB,EAAE,MAAM,EAAE,CACX,CAAC;QACN,CAAC;IACH,CAAC;IAED,+DAA+D;IAE/D,MAAM,KAAK,GAAa;QACtB,KAAK,CAAC,UAAU,CACd,OAA0B;YAE1B,OAAO;gBACL,eAAe,EAAE,CAAC;gBAClB,SAAS,EAAE;oBACT,IAAI,EAAE,aAAa;oBACnB,OAAO,EAAE,OAAO;iBACjB;gBACD,iBAAiB,EAAE;oBACjB,WAAW,EAAE,IAAI;oBACjB,mBAAmB,EAAE;wBACnB,MAAM,EAAE,EAAE;qBACX;iBACF;gBACD,UAAU,EAAE;oBACV,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBACrC,IAAI;wBACJ,WAAW,EAAE,0BAA0B,IAAI,EAAE;qBAC9C,CAAC,CAAC;oBACH,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;wBACxC,IAAI;wBACJ,WAAW,EAAE,0BAA0B,IAAI,EAAE;qBAC9C,CAAC,CAAC;iBACJ;aACoB,CAAC;QAC1B,CAAC;QAED,KAAK,CAAC,UAAU,CACd,MAAyB;YAEzB,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,UAAU,CAAC;YAErC,6BAA6B;YAC7B,EAAE;YACF,qEAAqE;YACrE,oEAAoE;YACpE,sEAAsE;YACtE,qEAAqE;YACrE,sEAAsE;YACtE,qEAAqE;YACrE,kDAAkD;YAClD,EAAE;YACF,6DAA6D;YAC7D,oEAAoE;YACpE,iEAAiE;YACjE,IAAI,MAA0C,CAAC;YAC/C,IAAI,UAAU,EAAE,aAAa,EAAE,CAAC;gBAC9B,MAAM,KAAK,GAAG,YAAY,CAAC,qBAAqB,CAC9C,UAAU,CAAC,aAAoB,CAChC,CAAC;gBACF,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,MAAM,IAAI,QAAQ,CAChB,SAAS,UAAU,CAAC,aAAa,0CAA0C,EAC3E,iBAAiB,EACjB,EAAE,OAAO,EAAE,UAAU,CAAC,aAAa,EAAE,CACtC,CAAC;gBACJ,CAAC;gBACD,MAAM,GAAG,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC;YAC1D,CAAC;iBAAM,CAAC;gBACN,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,sBAAsB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;gBACvE,MAAM,GAAG,EAAE,EAAE,EAAE,WAAW,CAAC,EAAE,EAAE,UAAU,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC;YACtE,CAAC;YAED,yBAAyB;YACzB,MAAM,OAAO,GAAG,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;YAE1E,wDAAwD;YACxD,IAAI,CAAC;gBACH,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAC;gBAC1E,eAAe,CAAC,GAAG,EAAE;oBACnB,OAAO,EAAE,MAAM,CAAC,EAAE;oBAClB,KAAK,EAAE,aAAa;iBACrB,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACP,uCAAuC;YACzC,CAAC;YAED,OAAO;gBACL,SAAS,EAAE,OAAO,CAAC,YAAY;aAChC,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,WAAW,CACf,MAA0B;YAE1B,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;YAEnC;;;;eAIG;YACH,MAAM,wBAAwB,GAAG,CAAC,OAAe,EAAsB,EAAE;gBACvE,MAAM,KAAK,GAAI,MAAc,CAAC,UAAU,CAAC;gBACzC,MAAM,GAAG,GAAG,KAAK,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC;gBACvC,MAAM,IAAI,GAAG,GAAG,EAAE,QAA+C,CAAC;gBAClE,MAAM,IAAI,GAAG,IAAI,EAAE,mBAAmB,CAAC;gBACvC,OAAO,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;YACrD,CAAC,CAAC;YAEF,wEAAwE;YACxE,sEAAsE;YACtE,yDAAyD;YACzD,EAAE;YACF,iCAAiC;YACjC,sEAAsE;YACtE,oEAAoE;YACpE,yEAAyE;YACzE,wEAAwE;YACxE,wEAAwE;YACxE,sEAAsE;YACtE,EAAE;YACF,kEAAkE;YAClE,uEAAuE;YACvE,wEAAwE;YACxE,wEAAwE;YACxE,iDAAiD;YACjD,MAAM,aAAa,GAAG,KAAK,EAAE,gBAAyB,EAAE,yBAAkC,EAAiB,EAAE;gBAC3G,MAAM,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACrD,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACpC,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;wBAC9B,IAAI,CAAC;4BACH,MAAM,UAAU,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;wBACxD,CAAC;wBAAC,MAAM,CAAC;4BACP,qDAAqD;wBACvD,CAAC;oBACH,CAAC;oBACD,OAAO;gBACT,CAAC;gBAED,qEAAqE;gBACrE,2CAA2C;gBAC3C,8EAA8E;gBAC9E,qEAAqE;gBACrE,sEAAsE;gBACtE,MAAM,iBAAiB,GACrB,yBAAyB;oBACzB,CAAC,gBAAgB,CAAC,CAAC,CAAC,wBAAwB,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAC9E,IAAI,CAAC,iBAAiB;oBAAE,OAAO;gBAE/B,IAAI,CAAC;oBACH,MAAM,EAAE,0BAA0B,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;oBAC/E,MAAM,eAAe,GAAoB,EAAE,CAAC;oBAC5C,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,0BAA0B,CAAC,iBAAiB,CAAC,EAAE,CAAC;wBACzE,IAAI,CAAC;4BACH,MAAM,UAAU,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;4BACtD,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;wBAC/B,CAAC;wBAAC,MAAM,CAAC;4BACP,yBAAyB;wBAC3B,CAAC;oBACH,CAAC;oBACD,oEAAoE;oBACpE,qDAAqD;oBACrD,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC/B,oBAAoB,CAAC,GAAG,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;oBACvD,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,8CAA8C;gBAChD,CAAC;YACH,CAAC,CAAC;YAEF,0EAA0E;YAC1E,0EAA0E;YAC1E,0EAA0E;YAC1E,6DAA6D;YAC7D,MAAM,qBAAqB,GACzB,OAAQ,MAAc,CAAC,KAAK,EAAE,mBAAmB,KAAK,QAAQ;gBAC5D,CAAC,CAAG,MAAc,CAAC,KAAK,CAAC,mBAA8B;gBACvD,CAAC,CAAC,SAAS,CAAC;YAEhB,sDAAsD;YACtD,IAAI,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAClD,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,aAAa,CAAC,OAAO,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;gBAC5D,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,uDAAuD;YACvD,oDAAoD;YACpD,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC1C,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBACrD,OAAO,GAAG,aAAa,CAAC,aAAa,CACnC,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,EAAE,CACX,CAAC;gBACF,MAAM,aAAa,CAAC,OAAO,CAAC,EAAE,EAAE,qBAAqB,CAAC,CAAC;gBACvD,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,yEAAyE;YACzE,kEAAkE;YAClE,yEAAyE;YACzE,sEAAsE;YACtE,oDAAoD;YACpD,IAAI,qBAAqB,EAAE,CAAC;gBAC1B,MAAM,aAAa,CAAC,SAAS,EAAE,qBAAqB,CAAC,CAAC;gBACtD,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,MAAM,YAAY,CAAC,aAAa,CAC9B,EAAE,SAAS,EAAE,EACb,sBAAsB,SAAS,EAAE,CAClC,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,YAAY,CAChB,OAA4B;YAE5B,qDAAqD;YACrD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,MAAqB;YAChC,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACpD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;YAEhC,0CAA0C;YAC1C,MAAM,SAAS,GAAa,EAAE,CAAC;YAC/B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClC,IAAI,MAAM,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBACtD,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;YACD,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YAE3C,sEAAsE;YACtE,oEAAoE;YACpE,uEAAuE;YACvE,kCAAkC;YAClC,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClC,IAAI,MAAM,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;oBACpE,MAAM,SAAS,GAAG;wBAChB,aAAa,EAAE,oBAAoB;wBACnC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE;qBAChB,CAAC;oBAC9B,mBAAmB,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;gBACnD,CAAC;YACH,CAAC;YAED,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAEpD,4FAA4F;YAC5F,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACtC,CAAC;YAED,uCAAuC;YACvC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;YACvC,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,MAAM,eAAe,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACnC,IAAI,UAAU,GAAG,EAAE,YAAY,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,qBAAqB,EAAE,CAAC,EAAE,CAAC;YAEvG,4EAA4E;YAC5E,IAAI,CAAC;gBACH,MAAM,SAAS,GAAI,MAAc,CAAC,iBAAiB,CAAC;gBACpD,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC;oBAChD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAC1B,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,KAAK,OAAO,CAChD,CAAC;oBACF,IAAI,QAAQ,EAAE,CAAC;wBACb,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;oBACpD,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAE7B,4DAA4D;YAC5D,IAAI,CAAC;gBACH,MAAM,WAAW,GAAI,MAAc,CAAC,UAAU,CAAC;gBAC/C,IAAI,WAAW,EAAE,SAAS,EAAE,CAAC;oBAC3B,2DAA2D;oBAC3D,gEAAgE;gBAClE,CAAC;YACH,CAAC;YAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAE7B,IAAI,CAAC;gBACH,4CAA4C;gBAC5C,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAEtD,IAAI,KAAK,EAAE,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;oBACnC,sEAAsE;oBACtE,qEAAqE;oBACrE,IAAI,eAAe,IAAI,MAAM,EAAE,CAAC;wBAC9B,MAAM,EAAE,GAAG,MAAa,CAAC;wBACzB,IAAI,EAAE,CAAC,aAAa,KAAK,WAAW,EAAE,CAAC;4BACrC,aAAa,EAAE,CAAC;4BAChB,MAAM,KAAK,GAAG,EAAE,CAAC,QAA+C,CAAC;4BACjE,IAAI,KAAK,EAAE,SAAS;gCAAE,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,SAAmB,CAAC,CAAC;4BAClE,IAAI,KAAK,EAAE,QAAQ;gCAAE,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,QAAkB,CAAC,CAAC;4BAChE,IAAI,KAAK,EAAE,IAAI;gCAAE,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,IAAc,CAAC,CAAC;4BACxD,IAAI,KAAK,EAAE,OAAO;gCAAE,YAAY,CAAC,GAAG,CAAC,UAAW,KAAK,CAAC,OAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;wBAC3F,CAAC;wBAED,8CAA8C;wBAC9C,IAAI,EAAE,CAAC,aAAa,KAAK,qBAAqB,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;4BAC3D,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC;4BACnB,IAAI,CAAC,CAAC,WAAW;gCAAE,UAAU,CAAC,YAAY,IAAI,CAAC,CAAC,WAAW,CAAC;4BAC5D,IAAI,CAAC,CAAC,YAAY;gCAAE,UAAU,CAAC,aAAa,IAAI,CAAC,CAAC,YAAY,CAAC;4BAC/D,IAAI,CAAC,CAAC,eAAe;gCAAE,UAAU,CAAC,iBAAiB,IAAI,CAAC,CAAC,eAAe,CAAC;4BACzE,IAAI,CAAC,CAAC,mBAAmB;gCAAE,UAAU,CAAC,qBAAqB,IAAI,CAAC,CAAC,mBAAmB,CAAC;wBACvF,CAAC;wBAED,6CAA6C;wBAC7C,IAAI,EAAE,CAAC,aAAa,KAAK,kBAAkB,IAAI,EAAE,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;4BACvE,MAAM,QAAQ,GAAG,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC;4BAChC,MAAM,OAAO,GAAI,MAAc,CAAC,UAAU,CAAC;4BAC3C,IAAI,OAAO,EAAE,SAAS,IAAI,QAAQ,EAAE,CAAC;gCACnC,IAAI,CAAC;oCACH,+BAA+B;oCAC/B,IAAI,QAAQ,KAAK,YAAY,IAAI,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;wCACjE,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC,MAAM,KAAK,QAAQ;4CAC5C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC;wCACtC,OAAO,CAAC,gBAAgB,EAAE,CAAC;4CACzB,EAAE,EAAE,gBAAgB,IAAI,CAAC,GAAG,EAAE,EAAE;4CAChC,UAAU,EAAE,MAAM,CAAC,SAAS;4CAC5B,KAAK,EAAE,OAAO;4CACd,MAAM,EAAE,IAAI;4CACZ,aAAa,EAAE,EAAE;4CACjB,iBAAiB,EAAE,iBAAiB;4CACpC,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,QAAQ,EAAE;yCACrE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oCACrB,CAAC;yCAAM,IAAI,QAAQ,KAAK,YAAY,IAAI,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;wCACxE,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC,MAAM,KAAK,QAAQ;4CAC5C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC;wCACtC,OAAO,CAAC,gBAAgB,EAAE,CAAC;4CACzB,EAAE,EAAE,gBAAgB,IAAI,CAAC,GAAG,EAAE,EAAE;4CAChC,UAAU,EAAE,MAAM,CAAC,SAAS;4CAC5B,KAAK,EAAE,OAAO;4CACd,MAAM,EAAE,IAAI;4CACZ,aAAa,EAAE,EAAE;4CACjB,iBAAiB,EAAE,iBAAiB;4CACpC,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,QAAQ,EAAE;yCACpE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oCACrB,CAAC;oCAED,0EAA0E;yCACrE,IAAI,QAAQ,KAAK,wBAAwB,IAAI,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;wCACnF,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC,MAAM,KAAK,QAAQ;4CAC5C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC;wCACtC,OAAO,CAAC,gBAAgB,EAAE,CAAC;4CACzB,EAAE,EAAE,qBAAqB,IAAI,CAAC,GAAG,EAAE,EAAE;4CACrC,UAAU,EAAE,MAAM,CAAC,SAAS;4CAC5B,KAAK,EAAE,OAAO;4CACd,MAAM,EAAE,IAAI;4CACZ,aAAa,EAAE,EAAE;4CACjB,iBAAiB,EAAE,iBAAiB;4CACpC,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE;yCAC1F,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oCACrB,CAAC;yCAAM,IAAI,QAAQ,KAAK,wBAAwB,IAAI,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;wCACrF,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC,MAAM,KAAK,QAAQ;4CAC5C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC;wCACtC,OAAO,CAAC,gBAAgB,EAAE,CAAC;4CACzB,EAAE,EAAE,oBAAoB,IAAI,CAAC,GAAG,EAAE,EAAE;4CACpC,UAAU,EAAE,MAAM,CAAC,SAAS;4CAC5B,KAAK,EAAE,OAAO;4CACd,MAAM,EAAE,IAAI;4CACZ,aAAa,EAAE,EAAE;4CACjB,iBAAiB,EAAE,iBAAiB;4CACpC,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE;yCACzF,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oCACrB,CAAC;yCAAM,IAAI,QAAQ,KAAK,iBAAiB,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;wCACzG,MAAM,QAAQ,GAAG,OAAO,EAAE,CAAC,MAAM,KAAK,QAAQ;4CAC5C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC;wCACtC,OAAO,CAAC,gBAAgB,EAAE,CAAC;4CACzB,EAAE,EAAE,oBAAoB,IAAI,CAAC,GAAG,EAAE,EAAE;4CACpC,UAAU,EAAE,MAAM,CAAC,SAAS;4CAC5B,KAAK,EAAE,OAAO;4CACd,MAAM,EAAE,IAAI;4CACZ,aAAa,EAAE,EAAE;4CACjB,iBAAiB,EAAE,iBAAiB;4CACpC,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE;yCACzF,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oCACrB,CAAC;yCAAM,IAAI,QAAQ,KAAK,qBAAqB,IAAI,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;wCACjH,MAAM,YAAY,GAAG,OAAO,EAAE,CAAC,MAAM,KAAK,QAAQ;4CAChD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC;wCACtC,OAAO,CAAC,gBAAgB,EAAE,CAAC;4CACzB,EAAE,EAAE,kBAAkB,IAAI,CAAC,GAAG,EAAE,EAAE;4CAClC,UAAU,EAAE,MAAM,CAAC,SAAS;4CAC5B,KAAK,EAAE,OAAO;4CACd,MAAM,EAAE,IAAI;4CACZ,aAAa,EAAE,EAAE;4CACjB,iBAAiB,EAAE,iBAAiB;4CACpC,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,YAAY,EAAE;yCACjG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oCACrB,CAAC;oCAED,kDAAkD;yCAC7C,IAAI,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;wCAClF,OAAO,CAAC,gBAAgB,EAAE,CAAC;4CACzB,EAAE,EAAE,eAAe,IAAI,CAAC,GAAG,EAAE,EAAE;4CAC/B,UAAU,EAAE,MAAM,CAAC,SAAS;4CAC5B,KAAK,EAAE,OAAO;4CACd,MAAM,EAAE,IAAI;4CACZ,aAAa,EAAE,EAAE;4CACjB,iBAAiB,EAAE,iBAAiB;4CACpC,QAAQ,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE;yCACpD,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;oCACrB,CAAC;gCACH,CAAC;gCAAC,MAAM,CAAC,CAAC,yBAAyB,CAAC,CAAC;4BACvC,CAAC;wBACH,CAAC;oBACH,CAAC;oBAED,wDAAwD;oBACxD,mDAAmD;oBACnD,6DAA6D;oBAC7D,2DAA2D;oBAC3D,8DAA8D;oBAC9D,IAAI,yBAAyB,CAAC,MAAM,CAAC,EAAE,CAAC;wBACtC,IAAI,CAAC;4BACH,MAAM,YAAY,GAAG,MAAM,UAAU,CAAC,iBAAiB,CAAC;gCACtD,SAAS,EAAE,MAAM,CAAC,SAAS;gCAC3B,QAAQ,EAAE;oCACR,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU;oCACtC,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK;oCAC5B,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAa;oCACrC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,QAAQ;iCACnC;gCACD,OAAO,EAAE,MAAM,CAAC,OAAO;6BACxB,CAAC,CAAC;4BACH,mDAAmD;4BACnD,0FAA0F;4BAC1F,MAAM,OAAO,GAAG,YAAY,EAAE,OAAO,CAAC;4BACtC,IAAI,OAAO,EAAE,CAAC;gCACZ,IAAI,OAAO,CAAC,OAAO,KAAK,UAAU,IAAI,UAAU,IAAI,OAAO,EAAE,CAAC;oCAC5D,YAAY,CAAC,mBAAmB,CAC9B,OAAO,EACP,MAAM,CAAC,SAAS,EAChB,OAAO,CAAC,QAAQ,CACjB,CAAC;gCACJ,CAAC;qCAAM,IAAI,OAAO,CAAC,OAAO,KAAK,WAAW,EAAE,CAAC;oCAC3C,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;gCAC3D,CAAC;4BACH,CAAC;wBACH,CAAC;wBAAC,MAAM,CAAC;4BACP,+DAA+D;4BAC/D,uCAAuC;4BACvC,IAAI,CAAC;gCACH,YAAY,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;4BAC3D,CAAC;4BAAC,MAAM,CAAC;gCACP,cAAc;4BAChB,CAAC;wBACH,CAAC;wBACD,SAAS;oBACX,CAAC;oBAED,+DAA+D;oBAC/D,wDAAwD;oBACxD,oDAAoD;oBACpD,IAAI,eAAe,IAAI,MAAM,IAAI,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC;wBAC5D,MAAM,YAAY,GAAwB;4BACxC,SAAS,EAAE,MAAM,CAAC,SAAS;4BAC3B,MAAM;yBACP,CAAC;wBACF,mEAAmE;wBACnE,kEAAkE;wBAClE,uDAAuD;wBACvD,mBAAmB,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;wBAC9C,MAAM,UAAU,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;oBAC/C,CAAC;gBACH,CAAC;gBAED,8DAA8D;gBAC9D,0EAA0E;gBAC1E,MAAM,OAAO,GAAI,MAAc,CAAC,UAAU,CAAC;gBAC3C,IAAI,OAAO,EAAE,CAAC;oBACZ,iBAAiB,EAAE,CAAC;oBACpB,MAAM,WAAW,GAAI,MAAc,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC;oBACpE,MAAM,QAAQ,GAAG,WAAW,EAAE,GAAG,IAAI,UAAU,CAAC;oBAChD,MAAM,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;oBAEjC,gEAAgE;oBAChE,MAAM,SAAS,GAAY,MAAc,CAAC,oBAAoB,IAAI,MAAM,CAAC;oBAEzE,2CAA2C;oBAC3C,+CAA+C;oBAC/C,+FAA+F;oBAC/F,qBAAqB;oBACrB,MAAM,SAAS,GAAG,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,MAAM,CAAC;oBAClE,MAAM,MAAM,GAAG,SAAS,KAAK,MAAM,CAAC;oBAEpC,MAAM,UAAU,GAAgC;wBAC9C,EAAE,EAAE,GAAG,MAAM,CAAC,SAAS,QAAQ,iBAAiB,EAAE;wBAClD,UAAU,EAAE,MAAM,CAAC,SAAS;wBAC5B,KAAK,EAAE,WAAW,EAAE,IAAI,IAAI,OAAO;wBACnC,MAAM,EAAE,GAAG,CAAC,MAAM;wBAClB,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE;wBACxD,iBAAiB,EAAE,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;wBACpD,+CAA+C;wBAC/C,GAAG,CAAC,SAAS,IAAI,CAAC,UAAU,CAAC,YAAY,GAAG,CAAC,IAAI,UAAU,CAAC,aAAa,GAAG,CAAC,CAAC;4BAC5E,CAAC,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE;4BAC7B,CAAC,CAAC,EAAE,CAAC;wBACP,QAAQ,EAAE;4BACR,qCAAqC;4BACrC,KAAK,EAAE,QAAQ;4BACf,SAAS,EAAE,gBAAgB;4BAC3B,KAAK,EAAE,QAAQ,iBAAiB,KAAK,aAAa,cAAc;4BAChE,6DAA6D;4BAC7D,4DAA4D;4BAC5D,4BAA4B;4BAC5B,mBAAmB,EAChB,WAAmB,EAAE,QAAQ,EAAE,mBAAmB,IAAI,SAAS;4BAClE,iBAAiB;4BACjB,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;gCACd,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,eAAe;gCACzC,aAAa;6BACd,CAAC,CAAC,CAAC,EAAE,CAAC;4BACP,cAAc;4BACd,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;gCACX,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE;gCACxC,WAAW,EAAE,QAAQ;gCACrB,WAAW,EAAE,WAAW,IAAI,SAAS;gCACrC,aAAa,EAAE,GAAG,CAAC,UAAU,IAAI,SAAS;gCAC1C,YAAY,EAAE,GAAG,CAAC,SAAS,IAAI,SAAS;6BACzC,CAAC,CAAC,CAAC,EAAE,CAAC;yBACR;qBACF,CAAC;oBACF,gFAAgF;oBAChF,IAAI,kBAAkB,GAAG,UAAU,CAAC;oBACpC,IAAI,CAAC;wBACH,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAC;wBAC9F,MAAM,YAAY,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;wBACjD,IAAI,YAAY,EAAE,CAAC;4BACjB,kBAAkB,GAAG,gBAAgB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;wBAClE,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,iDAAiD;oBACnD,CAAC;oBAED,OAAO,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBAC/D,CAAC;gBAED,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,iDAAiD;gBACjD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;YACrC,CAAC;oBAAS,CAAC;gBACT,aAAa,CAAC,aAAa,CAAC,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;gBAErD,uDAAuD;gBACvD,IAAI,CAAC;oBACH,MAAM,SAAS,GAAI,MAAc,CAAC,iBAAiB,CAAC;oBACpD,IAAI,SAAS,EAAE,CAAC;wBACd,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC;wBAChD,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAC1B,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,KAAK,OAAO,CAChD,CAAC;wBACF,IAAI,QAAQ,EAAE,CAAC;4BACb,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;wBACpD,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QAED,KAAK,CAAC,MAAM,CAAC,MAA0B;YACrC,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC3D,IAAI,CAAC,OAAO;gBAAE,OAAO;YAErB,IAAI,CAAC;gBACH,MAAM,YAAY,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YAC7D,CAAC;YAAC,MAAM,CAAC;gBACP,2BAA2B;YAC7B,CAAC;QACH,CAAC;QAED,KAAK,CAAC,SAAS,CACb,MAAc,EACd,MAA+B;YAE/B,OAAO,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzC,CAAC;KACF,CAAC;IAEF,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,OAAO,EAAE,aAAa,EAAE,CAAC"}
@@ -36,6 +36,15 @@ export interface MacroAgentInitConfig {
36
36
  systemPromptPrefix?: string;
37
37
  /** Suffix appended to system prompts */
38
38
  systemPromptSuffix?: string;
39
+ /**
40
+ * Local agent ID this ACP stream is bound to. When set, `session/new` binds
41
+ * the new session to this specific agent (any role) instead of falling back
42
+ * to cwd-based head-manager lookup. Set by the ACP-over-MAP bridge so that
43
+ * MAP-level routing (which already targets a specific agent) is preserved
44
+ * end-to-end through the ACP layer — important when multiple coordinators
45
+ * share the same cwd.
46
+ */
47
+ targetAgentId?: string;
39
48
  }
40
49
  export type ACPErrorCode = "SESSION_NOT_FOUND" | "AGENT_NOT_FOUND" | "MOUNT_FAILED" | "FORK_FAILED" | "INVALID_EXTENSION" | "PERMISSION_DENIED" | "NO_PEER_MANAGER";
41
50
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/acp/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAElC;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,8BAA8B;IAC9B,YAAY,EAAE,YAAY,CAAC;IAE3B,2DAA2D;IAC3D,OAAO,EAAE,MAAM,CAAC;IAEhB,qDAAqD;IACrD,aAAa,EAAE,MAAM,CAAC;IAEtB,0CAA0C;IAC1C,SAAS,EAAE,OAAO,CAAC;IAEnB,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC;IAElB,8CAA8C;IAC9C,YAAY,EAAE,OAAO,CAAC;CACvB;AAMD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,yCAAyC;IACzC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,wCAAwC;IACxC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAMD,MAAM,MAAM,YAAY,GACpB,mBAAmB,GACnB,iBAAiB,GACjB,cAAc,GACd,aAAa,GACb,mBAAmB,GACnB,mBAAmB,GACnB,iBAAiB,CAAC;AAEtB;;GAEG;AACH,qBAAa,QAAS,SAAQ,KAAK;IACjC,SAAgB,IAAI,EAAE,YAAY,CAAC;IACnC,SAAgB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAGhD,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,YAAY,EAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAOpC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/acp/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,MAAM,MAAM,YAAY,GAAG,MAAM,CAAC;AAElC;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,8BAA8B;IAC9B,YAAY,EAAE,YAAY,CAAC;IAE3B,2DAA2D;IAC3D,OAAO,EAAE,MAAM,CAAC;IAEhB,qDAAqD;IACrD,aAAa,EAAE,MAAM,CAAC;IAEtB,0CAA0C;IAC1C,SAAS,EAAE,OAAO,CAAC;IAEnB,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC;IAElB,8CAA8C;IAC9C,YAAY,EAAE,OAAO,CAAC;CACvB;AAMD;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,yCAAyC;IACzC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,wCAAwC;IACxC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAMD,MAAM,MAAM,YAAY,GACpB,mBAAmB,GACnB,iBAAiB,GACjB,cAAc,GACd,aAAa,GACb,mBAAmB,GACnB,mBAAmB,GACnB,iBAAiB,CAAC;AAEtB;;GAEG;AACH,qBAAa,QAAS,SAAQ,KAAK;IACjC,SAAgB,IAAI,EAAE,YAAY,CAAC;IACnC,SAAgB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;gBAGhD,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,YAAY,EAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAOpC"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/acp/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAgEH;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjB,IAAI,CAAe;IACnB,OAAO,CAA2B;IAElD,YACE,OAAe,EACf,IAAkB,EAClB,OAAiC;QAEjC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/acp/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AA0EH;;GAEG;AACH,MAAM,OAAO,QAAS,SAAQ,KAAK;IACjB,IAAI,CAAe;IACnB,OAAO,CAA2B;IAElD,YACE,OAAe,EACf,IAAkB,EAClB,OAAiC;QAEjC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;CACF"}
@@ -9,6 +9,7 @@
9
9
  */
10
10
  import { type PermissionMode } from "acp-factory";
11
11
  import { AgentStore } from "./agent-store.js";
12
+ import type { SpawnAgentOptions } from "./types.js";
12
13
  import type { RoleRegistry } from "../roles/types.js";
13
14
  import type { WorkspaceManager } from "../workspace/types.js";
14
15
  import { AgentTokenManager } from "../auth/token.js";
@@ -32,6 +33,26 @@ export interface AgentManagerV2Config {
32
33
  serverToken?: string;
33
34
  /** Control socket path for MCP subprocess lifecycle RPC */
34
35
  controlSocketPath?: string;
36
+ /**
37
+ * Default opentasks resource ID hosted on the OpenHive hub. When set,
38
+ * spawn paths build `taskRef = { resource_id: <this>, node_id: task_id }`
39
+ * automatically from `SpawnAgentOptions.task_id` (for any spawn where
40
+ * `resolveTaskRef` returned undefined AND the caller didn't supply an
41
+ * explicit `taskRef`).
42
+ *
43
+ * Operators set this once at swarm registration for the common
44
+ * single-graph case. Multi-graph deployments should use `resolveTaskRef`
45
+ * instead.
46
+ */
47
+ taskResourceId?: string;
48
+ /**
49
+ * Multi-graph resolver. Called at every spawn; return a `TaskRef` to set
50
+ * the binding or `undefined` to fall through to the `taskResourceId`
51
+ * default. Explicit `SpawnAgentOptions.taskRef` always wins over both.
52
+ *
53
+ * Keep cheap — runs per-spawn.
54
+ */
55
+ resolveTaskRef?: (spawnOptions: SpawnAgentOptions) => import("git-cascade/events").TaskRef | undefined;
35
56
  }
36
57
  export declare function createAgentManagerV2(agentStore: AgentStore, inboxAdapter: InboxAdapter, tasksAdapter: TasksAdapter, config?: AgentManagerV2Config): AgentManager;
37
58
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"agent-manager-v2.d.ts","sourceRoot":"","sources":["../../src/agent/agent-manager-v2.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,OAAO,EAKL,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,UAAU,EAGX,MAAM,kBAAkB,CAAC;AA0B1B,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,mBAAmB,CAAC;AAIlE,OAAO,KAAK,EAAE,gBAAgB,EAAa,MAAM,uBAAuB,CAAC;AAMzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAoB,MAAM,oBAAoB,CAAC;AAkCzE,oEAAoE;AACpE,UAAU,kBAAkB;IAC1B,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3C;AAED,MAAM,WAAW,oBAAoB;IACnC,qBAAqB,CAAC,EAAE,cAAc,CAAC;IACvC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2DAA2D;IAC3D,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAMD,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY,EAC1B,MAAM,GAAE,oBAAyB,GAChC,YAAY,CAk0Cd"}
1
+ {"version":3,"file":"agent-manager-v2.d.ts","sourceRoot":"","sources":["../../src/agent/agent-manager-v2.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,OAAO,EAKL,KAAK,cAAc,EACpB,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,UAAU,EAGX,MAAM,kBAAkB,CAAC;AAQ1B,OAAO,KAAK,EACV,iBAAiB,EAelB,MAAM,YAAY,CAAC;AAEpB,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,mBAAmB,CAAC;AAIlE,OAAO,KAAK,EAAE,gBAAgB,EAAa,MAAM,uBAAuB,CAAC;AAMzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAoB,MAAM,oBAAoB,CAAC;AAkCzE,oEAAoE;AACpE,UAAU,kBAAkB;IAC1B,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3C;AAED,MAAM,WAAW,oBAAoB;IACnC,qBAAqB,CAAC,EAAE,cAAc,CAAC;IACvC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2DAA2D;IAC3D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;;;;;;;;OAUG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;;;;OAMG;IACH,cAAc,CAAC,EAAE,CACf,YAAY,EAAE,iBAAiB,KAC5B,OAAO,oBAAoB,EAAE,OAAO,GAAG,SAAS,CAAC;CACvD;AAMD,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,UAAU,EACtB,YAAY,EAAE,YAAY,EAC1B,YAAY,EAAE,YAAY,EAC1B,MAAM,GAAE,oBAAyB,GAChC,YAAY,CAmgDd"}