@p4r4d0xb0x/opencode-dcp 3.0.5 → 3.1.12

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 (217) hide show
  1. package/README.md +31 -26
  2. package/dist/index.d.ts +2 -2
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +7909 -76
  5. package/dist/index.js.map +1 -1
  6. package/dist/lib/commands/compression-targets.d.ts +14 -0
  7. package/dist/lib/commands/compression-targets.d.ts.map +1 -0
  8. package/dist/lib/commands/context.d.ts.map +1 -1
  9. package/dist/lib/commands/decompress.d.ts.map +1 -1
  10. package/dist/lib/commands/index.d.ts +8 -0
  11. package/dist/lib/commands/index.d.ts.map +1 -0
  12. package/dist/lib/commands/manual.d.ts +1 -0
  13. package/dist/lib/commands/manual.d.ts.map +1 -1
  14. package/dist/lib/commands/recompress.d.ts.map +1 -1
  15. package/dist/lib/commands/stats.d.ts.map +1 -1
  16. package/dist/lib/commands/sweep.d.ts.map +1 -1
  17. package/dist/lib/compress/index.d.ts +4 -0
  18. package/dist/lib/compress/index.d.ts.map +1 -0
  19. package/dist/lib/compress/message-utils.d.ts +8 -0
  20. package/dist/lib/compress/message-utils.d.ts.map +1 -0
  21. package/dist/lib/compress/message.d.ts +4 -0
  22. package/dist/lib/compress/message.d.ts.map +1 -0
  23. package/dist/lib/compress/pipeline.d.ts +29 -0
  24. package/dist/lib/compress/pipeline.d.ts.map +1 -0
  25. package/dist/lib/compress/protected-content.d.ts +7 -0
  26. package/dist/lib/compress/protected-content.d.ts.map +1 -0
  27. package/dist/lib/compress/range-utils.d.ts +10 -0
  28. package/dist/lib/compress/range-utils.d.ts.map +1 -0
  29. package/dist/lib/compress/range.d.ts +4 -0
  30. package/dist/lib/compress/range.d.ts.map +1 -0
  31. package/dist/lib/compress/search.d.ts +11 -0
  32. package/dist/lib/compress/search.d.ts.map +1 -0
  33. package/dist/lib/compress/state.d.ts +9 -0
  34. package/dist/lib/compress/state.d.ts.map +1 -0
  35. package/dist/lib/compress/timing.d.ts +18 -0
  36. package/dist/lib/compress/timing.d.ts.map +1 -0
  37. package/dist/lib/compress/types.d.ts +94 -0
  38. package/dist/lib/compress/types.d.ts.map +1 -0
  39. package/dist/lib/{shared-utils.d.ts → compress-permission.d.ts} +2 -4
  40. package/dist/lib/compress-permission.d.ts.map +1 -0
  41. package/dist/lib/config.d.ts +7 -7
  42. package/dist/lib/config.d.ts.map +1 -1
  43. package/dist/lib/hooks.d.ts +4 -1
  44. package/dist/lib/hooks.d.ts.map +1 -1
  45. package/dist/lib/message-ids.d.ts +1 -1
  46. package/dist/lib/message-ids.d.ts.map +1 -1
  47. package/dist/lib/messages/index.d.ts +2 -0
  48. package/dist/lib/messages/index.d.ts.map +1 -1
  49. package/dist/lib/messages/inject/inject.d.ts +3 -2
  50. package/dist/lib/messages/inject/inject.d.ts.map +1 -1
  51. package/dist/lib/messages/inject/utils.d.ts +2 -3
  52. package/dist/lib/messages/inject/utils.d.ts.map +1 -1
  53. package/dist/lib/messages/priority.d.ts +13 -0
  54. package/dist/lib/messages/priority.d.ts.map +1 -0
  55. package/dist/lib/messages/prune.d.ts.map +1 -1
  56. package/dist/lib/messages/query.d.ts +7 -0
  57. package/dist/lib/messages/query.d.ts.map +1 -0
  58. package/dist/lib/messages/shape.d.ts +5 -0
  59. package/dist/lib/messages/shape.d.ts.map +1 -0
  60. package/dist/lib/messages/utils.d.ts +10 -4
  61. package/dist/lib/messages/utils.d.ts.map +1 -1
  62. package/dist/lib/prompts/compress-message.d.ts +2 -0
  63. package/dist/lib/prompts/compress-message.d.ts.map +1 -0
  64. package/dist/lib/prompts/compress-range.d.ts +2 -0
  65. package/dist/lib/prompts/compress-range.d.ts.map +1 -0
  66. package/dist/lib/prompts/context-limit-nudge.d.ts +1 -1
  67. package/dist/lib/prompts/context-limit-nudge.d.ts.map +1 -1
  68. package/dist/lib/prompts/extensions/nudge.d.ts +5 -0
  69. package/dist/lib/prompts/extensions/nudge.d.ts.map +1 -0
  70. package/dist/lib/prompts/extensions/system.d.ts +4 -0
  71. package/dist/lib/prompts/extensions/system.d.ts.map +1 -0
  72. package/dist/lib/prompts/extensions/tool.d.ts +3 -0
  73. package/dist/lib/prompts/extensions/tool.d.ts.map +1 -0
  74. package/dist/lib/prompts/index.d.ts +2 -1
  75. package/dist/lib/prompts/index.d.ts.map +1 -1
  76. package/dist/lib/prompts/iteration-nudge.d.ts +1 -1
  77. package/dist/lib/prompts/iteration-nudge.d.ts.map +1 -1
  78. package/dist/lib/prompts/store.d.ts +5 -4
  79. package/dist/lib/prompts/store.d.ts.map +1 -1
  80. package/dist/lib/prompts/system.d.ts +1 -1
  81. package/dist/lib/prompts/system.d.ts.map +1 -1
  82. package/dist/lib/prompts/turn-nudge.d.ts +1 -1
  83. package/dist/lib/prompts/turn-nudge.d.ts.map +1 -1
  84. package/dist/lib/state/index.d.ts +1 -0
  85. package/dist/lib/state/index.d.ts.map +1 -1
  86. package/dist/lib/state/persistence.d.ts +1 -0
  87. package/dist/lib/state/persistence.d.ts.map +1 -1
  88. package/dist/lib/state/state.d.ts.map +1 -1
  89. package/dist/lib/state/types.d.ts +10 -1
  90. package/dist/lib/state/types.d.ts.map +1 -1
  91. package/dist/lib/state/utils.d.ts +9 -5
  92. package/dist/lib/state/utils.d.ts.map +1 -1
  93. package/dist/lib/strategies/index.d.ts +0 -1
  94. package/dist/lib/strategies/index.d.ts.map +1 -1
  95. package/dist/lib/{strategies/utils.d.ts → token-utils.d.ts} +6 -8
  96. package/dist/lib/token-utils.d.ts.map +1 -0
  97. package/dist/lib/ui/notification.d.ts +8 -1
  98. package/dist/lib/ui/notification.d.ts.map +1 -1
  99. package/dist/lib/ui/utils.d.ts +1 -1
  100. package/dist/lib/ui/utils.d.ts.map +1 -1
  101. package/dist/lib/update.d.ts +22 -0
  102. package/dist/lib/update.d.ts.map +1 -0
  103. package/package.json +26 -15
  104. package/dist/lib/auth.js +0 -32
  105. package/dist/lib/auth.js.map +0 -1
  106. package/dist/lib/commands/context.js +0 -241
  107. package/dist/lib/commands/context.js.map +0 -1
  108. package/dist/lib/commands/decompress.js +0 -159
  109. package/dist/lib/commands/decompress.js.map +0 -1
  110. package/dist/lib/commands/help.js +0 -52
  111. package/dist/lib/commands/help.js.map +0 -1
  112. package/dist/lib/commands/manual.js +0 -48
  113. package/dist/lib/commands/manual.js.map +0 -1
  114. package/dist/lib/commands/recompress.js +0 -137
  115. package/dist/lib/commands/recompress.js.map +0 -1
  116. package/dist/lib/commands/stats.js +0 -62
  117. package/dist/lib/commands/stats.js.map +0 -1
  118. package/dist/lib/commands/sweep.js +0 -194
  119. package/dist/lib/commands/sweep.js.map +0 -1
  120. package/dist/lib/config.js +0 -766
  121. package/dist/lib/config.js.map +0 -1
  122. package/dist/lib/hooks.js +0 -195
  123. package/dist/lib/hooks.js.map +0 -1
  124. package/dist/lib/host-permissions.js +0 -58
  125. package/dist/lib/host-permissions.js.map +0 -1
  126. package/dist/lib/logger.js +0 -204
  127. package/dist/lib/logger.js.map +0 -1
  128. package/dist/lib/message-ids.js +0 -112
  129. package/dist/lib/message-ids.js.map +0 -1
  130. package/dist/lib/messages/index.js +0 -7
  131. package/dist/lib/messages/index.js.map +0 -1
  132. package/dist/lib/messages/inject/inject.js +0 -131
  133. package/dist/lib/messages/inject/inject.js.map +0 -1
  134. package/dist/lib/messages/inject/subagent-results.js +0 -58
  135. package/dist/lib/messages/inject/subagent-results.js.map +0 -1
  136. package/dist/lib/messages/inject/utils.js +0 -198
  137. package/dist/lib/messages/inject/utils.js.map +0 -1
  138. package/dist/lib/messages/prune.js +0 -177
  139. package/dist/lib/messages/prune.js.map +0 -1
  140. package/dist/lib/messages/reasoning-strip.js +0 -33
  141. package/dist/lib/messages/reasoning-strip.js.map +0 -1
  142. package/dist/lib/messages/sync.js +0 -93
  143. package/dist/lib/messages/sync.js.map +0 -1
  144. package/dist/lib/messages/utils.js +0 -118
  145. package/dist/lib/messages/utils.js.map +0 -1
  146. package/dist/lib/prompts/compress.d.ts +0 -2
  147. package/dist/lib/prompts/compress.d.ts.map +0 -1
  148. package/dist/lib/prompts/compress.js +0 -85
  149. package/dist/lib/prompts/compress.js.map +0 -1
  150. package/dist/lib/prompts/context-limit-nudge.js +0 -25
  151. package/dist/lib/prompts/context-limit-nudge.js.map +0 -1
  152. package/dist/lib/prompts/index.js +0 -19
  153. package/dist/lib/prompts/index.js.map +0 -1
  154. package/dist/lib/prompts/internal-overlays.d.ts +0 -5
  155. package/dist/lib/prompts/internal-overlays.d.ts.map +0 -1
  156. package/dist/lib/prompts/internal-overlays.js +0 -43
  157. package/dist/lib/prompts/internal-overlays.js.map +0 -1
  158. package/dist/lib/prompts/iteration-nudge.js +0 -9
  159. package/dist/lib/prompts/iteration-nudge.js.map +0 -1
  160. package/dist/lib/prompts/store.js +0 -346
  161. package/dist/lib/prompts/store.js.map +0 -1
  162. package/dist/lib/prompts/system.js +0 -30
  163. package/dist/lib/prompts/system.js.map +0 -1
  164. package/dist/lib/prompts/turn-nudge.js +0 -12
  165. package/dist/lib/prompts/turn-nudge.js.map +0 -1
  166. package/dist/lib/protected-patterns.js +0 -107
  167. package/dist/lib/protected-patterns.js.map +0 -1
  168. package/dist/lib/shared-utils.d.ts.map +0 -1
  169. package/dist/lib/shared-utils.js +0 -30
  170. package/dist/lib/shared-utils.js.map +0 -1
  171. package/dist/lib/state/index.js +0 -4
  172. package/dist/lib/state/index.js.map +0 -1
  173. package/dist/lib/state/persistence.js +0 -174
  174. package/dist/lib/state/persistence.js.map +0 -1
  175. package/dist/lib/state/state.js +0 -134
  176. package/dist/lib/state/state.js.map +0 -1
  177. package/dist/lib/state/tool-cache.js +0 -69
  178. package/dist/lib/state/tool-cache.js.map +0 -1
  179. package/dist/lib/state/types.js +0 -2
  180. package/dist/lib/state/types.js.map +0 -1
  181. package/dist/lib/state/utils.js +0 -196
  182. package/dist/lib/state/utils.js.map +0 -1
  183. package/dist/lib/strategies/deduplication.js +0 -100
  184. package/dist/lib/strategies/deduplication.js.map +0 -1
  185. package/dist/lib/strategies/index.js +0 -4
  186. package/dist/lib/strategies/index.js.map +0 -1
  187. package/dist/lib/strategies/purge-errors.js +0 -62
  188. package/dist/lib/strategies/purge-errors.js.map +0 -1
  189. package/dist/lib/strategies/supersede-writes.d.ts +0 -13
  190. package/dist/lib/strategies/supersede-writes.d.ts.map +0 -1
  191. package/dist/lib/strategies/supersede-writes.js +0 -94
  192. package/dist/lib/strategies/supersede-writes.js.map +0 -1
  193. package/dist/lib/strategies/utils.d.ts.map +0 -1
  194. package/dist/lib/strategies/utils.js +0 -128
  195. package/dist/lib/strategies/utils.js.map +0 -1
  196. package/dist/lib/subagents/subagent-results.js +0 -52
  197. package/dist/lib/subagents/subagent-results.js.map +0 -1
  198. package/dist/lib/tools/compress.d.ts +0 -4
  199. package/dist/lib/tools/compress.d.ts.map +0 -1
  200. package/dist/lib/tools/compress.js +0 -110
  201. package/dist/lib/tools/compress.js.map +0 -1
  202. package/dist/lib/tools/index.d.ts +0 -3
  203. package/dist/lib/tools/index.d.ts.map +0 -1
  204. package/dist/lib/tools/index.js +0 -2
  205. package/dist/lib/tools/index.js.map +0 -1
  206. package/dist/lib/tools/types.d.ts +0 -13
  207. package/dist/lib/tools/types.d.ts.map +0 -1
  208. package/dist/lib/tools/types.js +0 -2
  209. package/dist/lib/tools/types.js.map +0 -1
  210. package/dist/lib/tools/utils.d.ts +0 -80
  211. package/dist/lib/tools/utils.d.ts.map +0 -1
  212. package/dist/lib/tools/utils.js +0 -675
  213. package/dist/lib/tools/utils.js.map +0 -1
  214. package/dist/lib/ui/notification.js +0 -182
  215. package/dist/lib/ui/notification.js.map +0 -1
  216. package/dist/lib/ui/utils.js +0 -255
  217. package/dist/lib/ui/utils.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../lib/config.ts"],"names":[],"mappings":"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"}
package/dist/lib/hooks.js DELETED
@@ -1,195 +0,0 @@
1
- import { assignMessageRefs } from "./message-ids";
2
- import { syncToolCache } from "./state/tool-cache";
3
- import { prune, syncCompressionBlocks, injectCompressNudges, injectMessageIds, injectExtendedSubAgentResults, stripStaleMetadata, } from "./messages";
4
- import { buildToolIdList, isIgnoredUserMessage, stripHallucinations } from "./messages/utils";
5
- import { checkSession } from "./state";
6
- import { renderSystemPrompt } from "./prompts";
7
- import { handleStatsCommand } from "./commands/stats";
8
- import { handleContextCommand } from "./commands/context";
9
- import { handleHelpCommand } from "./commands/help";
10
- import { handleSweepCommand } from "./commands/sweep";
11
- import { handleManualToggleCommand, handleManualTriggerCommand } from "./commands/manual";
12
- import { handleDecompressCommand } from "./commands/decompress";
13
- import { handleRecompressCommand } from "./commands/recompress";
14
- import { compressPermission, syncCompressPermissionState } from "./shared-utils";
15
- import { ensureSessionInitialized } from "./state/state";
16
- import { cacheSystemPromptTokens } from "./ui/utils";
17
- const INTERNAL_AGENT_SIGNATURES = [
18
- "You are a title generator",
19
- "You are a helpful AI assistant tasked with summarizing conversations",
20
- "Summarize what was done in this conversation",
21
- ];
22
- const DCP_MESSAGE_ID_TAG_REGEX = /<dcp-message-id>(?:m\d+|b\d+)<\/dcp-message-id>/g;
23
- const DCP_SYSTEM_REMINDER_REGEX = /<dcp-system-reminder\b[^>]*>[\s\S]*?<\/dcp-system-reminder>/g;
24
- function applyManualPrompt(state, messages, logger) {
25
- const pending = state.pendingManualTrigger;
26
- if (!pending) {
27
- return;
28
- }
29
- if (!state.sessionId || pending.sessionId !== state.sessionId) {
30
- state.pendingManualTrigger = null;
31
- return;
32
- }
33
- for (let i = messages.length - 1; i >= 0; i--) {
34
- const msg = messages[i];
35
- if (msg.info.role !== "user" || isIgnoredUserMessage(msg)) {
36
- continue;
37
- }
38
- for (const part of msg.parts) {
39
- if (part.type !== "text" || part.ignored || part.synthetic) {
40
- continue;
41
- }
42
- part.text = pending.prompt;
43
- state.pendingManualTrigger = null;
44
- logger.debug("Applied manual prompt", { sessionId: pending.sessionId });
45
- return;
46
- }
47
- }
48
- state.pendingManualTrigger = null;
49
- }
50
- export function createSystemPromptHandler(state, logger, config, prompts) {
51
- return async (input, output) => {
52
- if (input.model?.limit?.context) {
53
- state.modelContextLimit = input.model.limit.context;
54
- logger.debug("Cached model context limit", { limit: state.modelContextLimit });
55
- }
56
- if (state.isSubAgent && !config.experimental.allowSubAgents) {
57
- return;
58
- }
59
- const systemText = output.system.join("\n");
60
- if (INTERNAL_AGENT_SIGNATURES.some((sig) => systemText.includes(sig))) {
61
- logger.info("Skipping DCP system prompt injection for internal agent");
62
- return;
63
- }
64
- const effectivePermission = input.sessionID && state.sessionId === input.sessionID
65
- ? compressPermission(state, config)
66
- : config.compress.permission;
67
- if (effectivePermission === "deny") {
68
- return;
69
- }
70
- prompts.reload();
71
- const runtimePrompts = prompts.getRuntimePrompts();
72
- const newPrompt = renderSystemPrompt(runtimePrompts, !!state.manualMode, state.isSubAgent && config.experimental.allowSubAgents);
73
- if (output.system.length > 0) {
74
- output.system[output.system.length - 1] += "\n\n" + newPrompt;
75
- }
76
- else {
77
- output.system.push(newPrompt);
78
- }
79
- };
80
- }
81
- export function createChatMessageTransformHandler(client, state, logger, config, prompts, hostPermissions) {
82
- return async (input, output) => {
83
- await checkSession(client, state, logger, output.messages, config.manualMode.enabled);
84
- syncCompressPermissionState(state, config, hostPermissions, output.messages);
85
- if (state.isSubAgent && !config.experimental.allowSubAgents) {
86
- return;
87
- }
88
- stripHallucinations(output.messages);
89
- cacheSystemPromptTokens(state, output.messages);
90
- assignMessageRefs(state, output.messages);
91
- syncCompressionBlocks(state, logger, output.messages);
92
- syncToolCache(state, config, logger, output.messages);
93
- buildToolIdList(state, output.messages);
94
- prune(state, logger, config, output.messages);
95
- await injectExtendedSubAgentResults(client, state, logger, output.messages, config.experimental.allowSubAgents);
96
- prompts.reload();
97
- injectCompressNudges(state, config, logger, output.messages, prompts.getRuntimePrompts());
98
- injectMessageIds(state, config, output.messages);
99
- applyManualPrompt(state, output.messages, logger);
100
- stripStaleMetadata(output.messages);
101
- if (state.sessionId) {
102
- await logger.saveContext(state.sessionId, output.messages);
103
- }
104
- };
105
- }
106
- export function createCommandExecuteHandler(client, state, logger, config, workingDirectory, hostPermissions) {
107
- return async (input, output) => {
108
- if (!config.commands.enabled) {
109
- return;
110
- }
111
- if (input.command === "dcp") {
112
- const messagesResponse = await client.session.messages({
113
- path: { id: input.sessionID },
114
- });
115
- const messages = (messagesResponse.data || messagesResponse);
116
- await ensureSessionInitialized(client, state, input.sessionID, logger, messages, config.manualMode.enabled);
117
- syncCompressPermissionState(state, config, hostPermissions, messages);
118
- const effectivePermission = compressPermission(state, config);
119
- const args = (input.arguments || "").trim().split(/\s+/).filter(Boolean);
120
- const subcommand = args[0]?.toLowerCase() || "";
121
- const subArgs = args.slice(1);
122
- const commandCtx = {
123
- client,
124
- state,
125
- config,
126
- logger,
127
- sessionId: input.sessionID,
128
- messages,
129
- };
130
- if (subcommand === "context") {
131
- await handleContextCommand(commandCtx);
132
- throw new Error("__DCP_CONTEXT_HANDLED__");
133
- }
134
- if (subcommand === "stats") {
135
- await handleStatsCommand(commandCtx);
136
- throw new Error("__DCP_STATS_HANDLED__");
137
- }
138
- if (subcommand === "sweep") {
139
- await handleSweepCommand({
140
- ...commandCtx,
141
- args: subArgs,
142
- workingDirectory,
143
- });
144
- throw new Error("__DCP_SWEEP_HANDLED__");
145
- }
146
- if (subcommand === "manual") {
147
- await handleManualToggleCommand(commandCtx, subArgs[0]?.toLowerCase());
148
- throw new Error("__DCP_MANUAL_HANDLED__");
149
- }
150
- if (subcommand === "compress" && effectivePermission !== "deny") {
151
- const userFocus = subArgs.join(" ").trim();
152
- const prompt = await handleManualTriggerCommand(commandCtx, "compress", userFocus);
153
- if (!prompt) {
154
- throw new Error("__DCP_MANUAL_TRIGGER_BLOCKED__");
155
- }
156
- state.manualMode = "compress-pending";
157
- state.pendingManualTrigger = {
158
- sessionId: input.sessionID,
159
- prompt,
160
- };
161
- const rawArgs = (input.arguments || "").trim();
162
- output.parts.length = 0;
163
- output.parts.push({
164
- type: "text",
165
- text: rawArgs ? `/dcp ${rawArgs}` : `/dcp ${subcommand}`,
166
- });
167
- return;
168
- }
169
- if (subcommand === "decompress" && effectivePermission !== "deny") {
170
- await handleDecompressCommand({
171
- ...commandCtx,
172
- args: subArgs,
173
- });
174
- throw new Error("__DCP_DECOMPRESS_HANDLED__");
175
- }
176
- if (subcommand === "recompress" && effectivePermission !== "deny") {
177
- await handleRecompressCommand({
178
- ...commandCtx,
179
- args: subArgs,
180
- });
181
- throw new Error("__DCP_RECOMPRESS_HANDLED__");
182
- }
183
- await handleHelpCommand(commandCtx);
184
- throw new Error("__DCP_HELP_HANDLED__");
185
- }
186
- };
187
- }
188
- export function createTextCompleteHandler() {
189
- return async (_input, output) => {
190
- output.text = output.text
191
- .replace(DCP_SYSTEM_REMINDER_REGEX, "")
192
- .replace(DCP_MESSAGE_ID_TAG_REGEX, "");
193
- };
194
- }
195
- //# sourceMappingURL=hooks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hooks.js","sourceRoot":"","sources":["../../lib/hooks.ts"],"names":[],"mappings":"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"}
@@ -1,58 +0,0 @@
1
- const findLastMatchingRule = (rules, predicate) => {
2
- for (let index = rules.length - 1; index >= 0; index -= 1) {
3
- const rule = rules[index];
4
- if (rule && predicate(rule)) {
5
- return rule;
6
- }
7
- }
8
- return undefined;
9
- };
10
- const wildcardMatch = (value, pattern) => {
11
- const normalizedValue = value.replaceAll("\\", "/");
12
- let escaped = pattern
13
- .replaceAll("\\", "/")
14
- .replace(/[.+^${}()|[\]\\]/g, "\\$&")
15
- .replace(/\*/g, ".*")
16
- .replace(/\?/g, ".");
17
- if (escaped.endsWith(" .*")) {
18
- escaped = escaped.slice(0, -3) + "( .*)?";
19
- }
20
- const flags = process.platform === "win32" ? "si" : "s";
21
- return new RegExp(`^${escaped}$`, flags).test(normalizedValue);
22
- };
23
- const getPermissionRules = (permissionConfigs) => {
24
- const rules = [];
25
- for (const permissionConfig of permissionConfigs) {
26
- if (!permissionConfig) {
27
- continue;
28
- }
29
- for (const [permission, value] of Object.entries(permissionConfig)) {
30
- if (value === "ask" || value === "allow" || value === "deny") {
31
- rules.push({ permission, pattern: "*", action: value });
32
- continue;
33
- }
34
- for (const [pattern, action] of Object.entries(value)) {
35
- if (action === "ask" || action === "allow" || action === "deny") {
36
- rules.push({ permission, pattern, action });
37
- }
38
- }
39
- }
40
- }
41
- return rules;
42
- };
43
- export const compressDisabledByOpencode = (...permissionConfigs) => {
44
- const match = findLastMatchingRule(getPermissionRules(permissionConfigs), (rule) => wildcardMatch("compress", rule.permission));
45
- return match?.pattern === "*" && match.action === "deny";
46
- };
47
- export const resolveEffectiveCompressPermission = (basePermission, hostPermissions, agentName) => {
48
- if (basePermission === "deny") {
49
- return "deny";
50
- }
51
- return compressDisabledByOpencode(hostPermissions.global, agentName ? hostPermissions.agents[agentName] : undefined)
52
- ? "deny"
53
- : basePermission;
54
- };
55
- export const hasExplicitToolPermission = (permissionConfig, tool) => {
56
- return permissionConfig ? Object.prototype.hasOwnProperty.call(permissionConfig, tool) : false;
57
- };
58
- //# sourceMappingURL=host-permissions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"host-permissions.js","sourceRoot":"","sources":["../../lib/host-permissions.ts"],"names":[],"mappings":"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"}
@@ -1,204 +0,0 @@
1
- import { writeFile, mkdir } from "fs/promises";
2
- import { join } from "path";
3
- import { existsSync } from "fs";
4
- import { homedir } from "os";
5
- export class Logger {
6
- logDir;
7
- enabled;
8
- constructor(enabled) {
9
- this.enabled = enabled;
10
- const configHome = process.env.XDG_CONFIG_HOME || join(homedir(), ".config");
11
- this.logDir = join(configHome, "opencode", "logs", "dcp");
12
- }
13
- async ensureLogDir() {
14
- if (!existsSync(this.logDir)) {
15
- await mkdir(this.logDir, { recursive: true });
16
- }
17
- }
18
- formatData(data) {
19
- if (!data)
20
- return "";
21
- const parts = [];
22
- for (const [key, value] of Object.entries(data)) {
23
- if (value === undefined || value === null)
24
- continue;
25
- // Format arrays compactly
26
- if (Array.isArray(value)) {
27
- if (value.length === 0)
28
- continue;
29
- parts.push(`${key}=[${value.slice(0, 3).join(",")}${value.length > 3 ? `...+${value.length - 3}` : ""}]`);
30
- }
31
- else if (typeof value === "object") {
32
- const str = JSON.stringify(value);
33
- if (str.length < 50) {
34
- parts.push(`${key}=${str}`);
35
- }
36
- }
37
- else {
38
- parts.push(`${key}=${value}`);
39
- }
40
- }
41
- return parts.join(" ");
42
- }
43
- getCallerFile(skipFrames = 3) {
44
- const originalPrepareStackTrace = Error.prepareStackTrace;
45
- try {
46
- const err = new Error();
47
- Error.prepareStackTrace = (_, stack) => stack;
48
- const stack = err.stack;
49
- Error.prepareStackTrace = originalPrepareStackTrace;
50
- // Skip specified number of frames to get to actual caller
51
- for (let i = skipFrames; i < stack.length; i++) {
52
- const filename = stack[i]?.getFileName();
53
- if (filename && !filename.includes("/logger.")) {
54
- // Extract just the filename without path and extension
55
- const match = filename.match(/([^/\\]+)\.[tj]s$/);
56
- return match ? match[1] : filename;
57
- }
58
- }
59
- return "unknown";
60
- }
61
- catch {
62
- return "unknown";
63
- }
64
- }
65
- async write(level, component, message, data) {
66
- if (!this.enabled)
67
- return;
68
- try {
69
- await this.ensureLogDir();
70
- const timestamp = new Date().toISOString();
71
- const dataStr = this.formatData(data);
72
- const logLine = `${timestamp} ${level.padEnd(5)} ${component}: ${message}${dataStr ? " | " + dataStr : ""}\n`;
73
- const dailyLogDir = join(this.logDir, "daily");
74
- if (!existsSync(dailyLogDir)) {
75
- await mkdir(dailyLogDir, { recursive: true });
76
- }
77
- const logFile = join(dailyLogDir, `${new Date().toISOString().split("T")[0]}.log`);
78
- await writeFile(logFile, logLine, { flag: "a" });
79
- }
80
- catch (error) { }
81
- }
82
- info(message, data) {
83
- const component = this.getCallerFile(2);
84
- return this.write("INFO", component, message, data);
85
- }
86
- debug(message, data) {
87
- const component = this.getCallerFile(2);
88
- return this.write("DEBUG", component, message, data);
89
- }
90
- warn(message, data) {
91
- const component = this.getCallerFile(2);
92
- return this.write("WARN", component, message, data);
93
- }
94
- error(message, data) {
95
- const component = this.getCallerFile(2);
96
- return this.write("ERROR", component, message, data);
97
- }
98
- /**
99
- * Strips unnecessary metadata from messages for cleaner debug logs.
100
- *
101
- * Removed:
102
- * - All IDs (id, sessionID, messageID, parentID)
103
- * - summary, path, cost, model, agent, mode, finish, providerID, modelID
104
- * - step-start and step-finish parts entirely
105
- * - snapshot fields
106
- * - ignored text parts
107
- *
108
- * Kept:
109
- * - role, time (created only), tokens (input, output, reasoning, cache)
110
- * - text, reasoning, tool parts with content
111
- * - tool calls with: tool, callID, input, output, metadata
112
- */
113
- minimizeForDebug(messages) {
114
- return messages.map((msg) => {
115
- const minimized = {
116
- role: msg.info?.role,
117
- };
118
- if (msg.info?.time?.created) {
119
- minimized.time = msg.info.time.created;
120
- }
121
- if (msg.info?.tokens) {
122
- minimized.tokens = {
123
- input: msg.info.tokens.input,
124
- output: msg.info.tokens.output,
125
- reasoning: msg.info.tokens.reasoning,
126
- cache: msg.info.tokens.cache,
127
- };
128
- }
129
- if (msg.parts) {
130
- minimized.parts = msg.parts
131
- .map((part) => {
132
- if (part.type === "step-start" || part.type === "step-finish") {
133
- return null;
134
- }
135
- if (part.type === "text") {
136
- if (part.ignored)
137
- return null;
138
- const textPart = { type: "text", text: part.text };
139
- if (part.metadata)
140
- textPart.metadata = part.metadata;
141
- return textPart;
142
- }
143
- if (part.type === "reasoning") {
144
- const reasoningPart = { type: "reasoning", text: part.text };
145
- if (part.metadata)
146
- reasoningPart.metadata = part.metadata;
147
- return reasoningPart;
148
- }
149
- if (part.type === "tool") {
150
- const toolPart = {
151
- type: "tool",
152
- tool: part.tool,
153
- callID: part.callID,
154
- };
155
- if (part.state?.status) {
156
- toolPart.status = part.state.status;
157
- }
158
- if (part.state?.input) {
159
- toolPart.input = part.state.input;
160
- }
161
- if (part.state?.output) {
162
- toolPart.output = part.state.output;
163
- }
164
- if (part.state?.error) {
165
- toolPart.error = part.state.error;
166
- }
167
- if (part.metadata) {
168
- toolPart.metadata = part.metadata;
169
- }
170
- if (part.state?.metadata) {
171
- toolPart.metadata = {
172
- ...(toolPart.metadata || {}),
173
- ...part.state.metadata,
174
- };
175
- }
176
- if (part.state?.title) {
177
- toolPart.title = part.state.title;
178
- }
179
- return toolPart;
180
- }
181
- return null;
182
- })
183
- .filter(Boolean);
184
- }
185
- return minimized;
186
- });
187
- }
188
- async saveContext(sessionId, messages) {
189
- if (!this.enabled)
190
- return;
191
- try {
192
- const contextDir = join(this.logDir, "context", sessionId);
193
- if (!existsSync(contextDir)) {
194
- await mkdir(contextDir, { recursive: true });
195
- }
196
- const minimized = this.minimizeForDebug(messages).filter((msg) => msg.parts && msg.parts.length > 0);
197
- const timestamp = new Date().toISOString().replace(/[:.]/g, "-");
198
- const contextFile = join(contextDir, `${timestamp}.json`);
199
- await writeFile(contextFile, JSON.stringify(minimized, null, 2));
200
- }
201
- catch (error) { }
202
- }
203
- }
204
- //# sourceMappingURL=logger.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../lib/logger.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAC3B,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAA;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAA;AAE5B,MAAM,OAAO,MAAM;IACP,MAAM,CAAQ;IACf,OAAO,CAAS;IAEvB,YAAY,OAAgB;QACxB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QACtB,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAA;QAC5E,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;IAC7D,CAAC;IAEO,KAAK,CAAC,YAAY;QACtB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAC3B,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;QACjD,CAAC;IACL,CAAC;IAEO,UAAU,CAAC,IAAU;QACzB,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,CAAA;QAEpB,MAAM,KAAK,GAAa,EAAE,CAAA;QAC1B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9C,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI;gBAAE,SAAQ;YAEnD,0BAA0B;YAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;oBAAE,SAAQ;gBAChC,KAAK,CAAC,IAAI,CACN,GAAG,GAAG,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,CAChG,CAAA;YACL,CAAC;iBAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACnC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAA;gBACjC,IAAI,GAAG,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;oBAClB,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,GAAG,EAAE,CAAC,CAAA;gBAC/B,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC,CAAA;YACjC,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC1B,CAAC;IAEO,aAAa,CAAC,aAAqB,CAAC;QACxC,MAAM,yBAAyB,GAAG,KAAK,CAAC,iBAAiB,CAAA;QACzD,IAAI,CAAC;YACD,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAA;YACvB,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAA;YAC7C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAqC,CAAA;YACvD,KAAK,CAAC,iBAAiB,GAAG,yBAAyB,CAAA;YAEnD,0DAA0D;YAC1D,KAAK,IAAI,CAAC,GAAG,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAA;gBACxC,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC7C,uDAAuD;oBACvD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAA;oBACjD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAA;gBACtC,CAAC;YACL,CAAC;YACD,OAAO,SAAS,CAAA;QACpB,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,SAAS,CAAA;QACpB,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,KAAK,CAAC,KAAa,EAAE,SAAiB,EAAE,OAAe,EAAE,IAAU;QAC7E,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAM;QAEzB,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,YAAY,EAAE,CAAA;YAEzB,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;YAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YAErC,MAAM,OAAO,GAAG,GAAG,SAAS,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,SAAS,KAAK,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,CAAA;YAE7G,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;YAC9C,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC3B,MAAM,KAAK,CAAC,WAAW,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YACjD,CAAC;YAED,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;YAClF,MAAM,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;QACpD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC,CAAA,CAAC;IACtB,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,IAAU;QAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QACvC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;IACvD,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,IAAU;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QACvC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;IACxD,CAAC;IAED,IAAI,CAAC,OAAe,EAAE,IAAU;QAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QACvC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;IACvD,CAAC;IAED,KAAK,CAAC,OAAe,EAAE,IAAU;QAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAA;QACvC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,CAAA;IACxD,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACK,gBAAgB,CAAC,QAAe;QACpC,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACxB,MAAM,SAAS,GAAQ;gBACnB,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,IAAI;aACvB,CAAA;YAED,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gBAC1B,SAAS,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAA;YAC1C,CAAC;YAED,IAAI,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;gBACnB,SAAS,CAAC,MAAM,GAAG;oBACf,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK;oBAC5B,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM;oBAC9B,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS;oBACpC,KAAK,EAAE,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK;iBAC/B,CAAA;YACL,CAAC;YAED,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;gBACZ,SAAS,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK;qBACtB,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE;oBACf,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;wBAC5D,OAAO,IAAI,CAAA;oBACf,CAAC;oBAED,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBACvB,IAAI,IAAI,CAAC,OAAO;4BAAE,OAAO,IAAI,CAAA;wBAC7B,MAAM,QAAQ,GAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAA;wBACvD,IAAI,IAAI,CAAC,QAAQ;4BAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;wBACpD,OAAO,QAAQ,CAAA;oBACnB,CAAC;oBAED,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;wBAC5B,MAAM,aAAa,GAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAA;wBACjE,IAAI,IAAI,CAAC,QAAQ;4BAAE,aAAa,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;wBACzD,OAAO,aAAa,CAAA;oBACxB,CAAC;oBAED,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBACvB,MAAM,QAAQ,GAAQ;4BAClB,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,MAAM,EAAE,IAAI,CAAC,MAAM;yBACtB,CAAA;wBAED,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;4BACrB,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;wBACvC,CAAC;wBACD,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;4BACpB,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;wBACrC,CAAC;wBACD,IAAI,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC;4BACrB,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAA;wBACvC,CAAC;wBACD,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;4BACpB,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;wBACrC,CAAC;wBACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;4BAChB,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;wBACrC,CAAC;wBACD,IAAI,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC;4BACvB,QAAQ,CAAC,QAAQ,GAAG;gCAChB,GAAG,CAAC,QAAQ,CAAC,QAAQ,IAAI,EAAE,CAAC;gCAC5B,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ;6BACzB,CAAA;wBACL,CAAC;wBACD,IAAI,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC;4BACpB,QAAQ,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAA;wBACrC,CAAC;wBAED,OAAO,QAAQ,CAAA;oBACnB,CAAC;oBAED,OAAO,IAAI,CAAA;gBACf,CAAC,CAAC;qBACD,MAAM,CAAC,OAAO,CAAC,CAAA;YACxB,CAAC;YAED,OAAO,SAAS,CAAA;QACpB,CAAC,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,SAAiB,EAAE,QAAe;QAChD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAM;QAEzB,IAAI,CAAC;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;YAC1D,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC1B,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YAChD,CAAC;YAED,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,MAAM,CACpD,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAC7C,CAAA;YACD,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;YAChE,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,SAAS,OAAO,CAAC,CAAA;YACzD,MAAM,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;QACpE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC,CAAA,CAAC;IACtB,CAAC;CACJ"}