@yuaone/core 0.9.42 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (154) hide show
  1. package/dist/agent-affordance.d.ts +37 -0
  2. package/dist/agent-affordance.d.ts.map +1 -0
  3. package/dist/agent-affordance.js +139 -0
  4. package/dist/agent-affordance.js.map +1 -0
  5. package/dist/agent-decision-types.d.ts +262 -0
  6. package/dist/agent-decision-types.d.ts.map +1 -0
  7. package/dist/agent-decision-types.js +19 -0
  8. package/dist/agent-decision-types.js.map +1 -0
  9. package/dist/agent-decision.d.ts +52 -0
  10. package/dist/agent-decision.d.ts.map +1 -0
  11. package/dist/agent-decision.js +767 -0
  12. package/dist/agent-decision.js.map +1 -0
  13. package/dist/agent-loop.d.ts +37 -79
  14. package/dist/agent-loop.d.ts.map +1 -1
  15. package/dist/agent-loop.js +730 -586
  16. package/dist/agent-loop.js.map +1 -1
  17. package/dist/agent-reasoning-engine.d.ts +48 -0
  18. package/dist/agent-reasoning-engine.d.ts.map +1 -0
  19. package/dist/agent-reasoning-engine.js +544 -0
  20. package/dist/agent-reasoning-engine.js.map +1 -0
  21. package/dist/codebase-context.d.ts +3 -0
  22. package/dist/codebase-context.d.ts.map +1 -1
  23. package/dist/codebase-context.js +15 -6
  24. package/dist/codebase-context.js.map +1 -1
  25. package/dist/command-plan-compiler.d.ts +43 -0
  26. package/dist/command-plan-compiler.d.ts.map +1 -0
  27. package/dist/command-plan-compiler.js +164 -0
  28. package/dist/command-plan-compiler.js.map +1 -0
  29. package/dist/dependency-guard.d.ts +18 -0
  30. package/dist/dependency-guard.d.ts.map +1 -0
  31. package/dist/dependency-guard.js +113 -0
  32. package/dist/dependency-guard.js.map +1 -0
  33. package/dist/execution-engine.d.ts +10 -1
  34. package/dist/execution-engine.d.ts.map +1 -1
  35. package/dist/execution-engine.js +162 -8
  36. package/dist/execution-engine.js.map +1 -1
  37. package/dist/execution-receipt.d.ts +62 -0
  38. package/dist/execution-receipt.d.ts.map +1 -0
  39. package/dist/execution-receipt.js +67 -0
  40. package/dist/execution-receipt.js.map +1 -0
  41. package/dist/failure-surface-writer.d.ts +13 -0
  42. package/dist/failure-surface-writer.d.ts.map +1 -0
  43. package/dist/failure-surface-writer.js +33 -0
  44. package/dist/failure-surface-writer.js.map +1 -0
  45. package/dist/file-chunker.d.ts +26 -0
  46. package/dist/file-chunker.d.ts.map +1 -0
  47. package/dist/file-chunker.js +103 -0
  48. package/dist/file-chunker.js.map +1 -0
  49. package/dist/image-observer.d.ts +22 -0
  50. package/dist/image-observer.d.ts.map +1 -0
  51. package/dist/image-observer.js +60 -0
  52. package/dist/image-observer.js.map +1 -0
  53. package/dist/index.d.ts +55 -0
  54. package/dist/index.d.ts.map +1 -1
  55. package/dist/index.js +53 -0
  56. package/dist/index.js.map +1 -1
  57. package/dist/judgment-rules.d.ts +44 -0
  58. package/dist/judgment-rules.d.ts.map +1 -0
  59. package/dist/judgment-rules.js +185 -0
  60. package/dist/judgment-rules.js.map +1 -0
  61. package/dist/memory-decay.d.ts +41 -0
  62. package/dist/memory-decay.d.ts.map +1 -0
  63. package/dist/memory-decay.js +62 -0
  64. package/dist/memory-decay.js.map +1 -0
  65. package/dist/memory-manager.d.ts.map +1 -1
  66. package/dist/memory-manager.js +30 -0
  67. package/dist/memory-manager.js.map +1 -1
  68. package/dist/model-weakness-tracker.d.ts +42 -0
  69. package/dist/model-weakness-tracker.d.ts.map +1 -0
  70. package/dist/model-weakness-tracker.js +107 -0
  71. package/dist/model-weakness-tracker.js.map +1 -0
  72. package/dist/overhead-governor.d.ts +3 -1
  73. package/dist/overhead-governor.d.ts.map +1 -1
  74. package/dist/overhead-governor.js +5 -0
  75. package/dist/overhead-governor.js.map +1 -1
  76. package/dist/patch-scope-controller.d.ts +44 -0
  77. package/dist/patch-scope-controller.d.ts.map +1 -0
  78. package/dist/patch-scope-controller.js +107 -0
  79. package/dist/patch-scope-controller.js.map +1 -0
  80. package/dist/patch-transaction.d.ts +53 -0
  81. package/dist/patch-transaction.d.ts.map +1 -0
  82. package/dist/patch-transaction.js +119 -0
  83. package/dist/patch-transaction.js.map +1 -0
  84. package/dist/pre-write-validator.d.ts +29 -0
  85. package/dist/pre-write-validator.d.ts.map +1 -0
  86. package/dist/pre-write-validator.js +97 -0
  87. package/dist/pre-write-validator.js.map +1 -0
  88. package/dist/prompt-builder.d.ts +25 -0
  89. package/dist/prompt-builder.d.ts.map +1 -0
  90. package/dist/prompt-builder.js +93 -0
  91. package/dist/prompt-builder.js.map +1 -0
  92. package/dist/prompt-envelope.d.ts +40 -0
  93. package/dist/prompt-envelope.d.ts.map +1 -0
  94. package/dist/prompt-envelope.js +16 -0
  95. package/dist/prompt-envelope.js.map +1 -0
  96. package/dist/prompt-runtime.d.ts +66 -0
  97. package/dist/prompt-runtime.d.ts.map +1 -0
  98. package/dist/prompt-runtime.js +492 -0
  99. package/dist/prompt-runtime.js.map +1 -0
  100. package/dist/repo-capability-profile.d.ts +24 -0
  101. package/dist/repo-capability-profile.d.ts.map +1 -0
  102. package/dist/repo-capability-profile.js +113 -0
  103. package/dist/repo-capability-profile.js.map +1 -0
  104. package/dist/security-gate.d.ts +39 -0
  105. package/dist/security-gate.d.ts.map +1 -0
  106. package/dist/security-gate.js +121 -0
  107. package/dist/security-gate.js.map +1 -0
  108. package/dist/self-evaluation.d.ts +22 -0
  109. package/dist/self-evaluation.d.ts.map +1 -0
  110. package/dist/self-evaluation.js +43 -0
  111. package/dist/self-evaluation.js.map +1 -0
  112. package/dist/semantic-diff-reviewer.d.ts +28 -0
  113. package/dist/semantic-diff-reviewer.d.ts.map +1 -0
  114. package/dist/semantic-diff-reviewer.js +168 -0
  115. package/dist/semantic-diff-reviewer.js.map +1 -0
  116. package/dist/stall-detector.d.ts +26 -2
  117. package/dist/stall-detector.d.ts.map +1 -1
  118. package/dist/stall-detector.js +128 -3
  119. package/dist/stall-detector.js.map +1 -1
  120. package/dist/system-core.d.ts +27 -0
  121. package/dist/system-core.d.ts.map +1 -0
  122. package/dist/system-core.js +269 -0
  123. package/dist/system-core.js.map +1 -0
  124. package/dist/system-prompt.d.ts +4 -0
  125. package/dist/system-prompt.d.ts.map +1 -1
  126. package/dist/system-prompt.js +47 -218
  127. package/dist/system-prompt.js.map +1 -1
  128. package/dist/target-file-ranker.d.ts +38 -0
  129. package/dist/target-file-ranker.d.ts.map +1 -0
  130. package/dist/target-file-ranker.js +90 -0
  131. package/dist/target-file-ranker.js.map +1 -0
  132. package/dist/task-classifier.d.ts +6 -0
  133. package/dist/task-classifier.d.ts.map +1 -1
  134. package/dist/task-classifier.js +6 -0
  135. package/dist/task-classifier.js.map +1 -1
  136. package/dist/test-impact-planner.d.ts +16 -0
  137. package/dist/test-impact-planner.d.ts.map +1 -0
  138. package/dist/test-impact-planner.js +68 -0
  139. package/dist/test-impact-planner.js.map +1 -0
  140. package/dist/tool-outcome-cache.d.ts +41 -0
  141. package/dist/tool-outcome-cache.d.ts.map +1 -0
  142. package/dist/tool-outcome-cache.js +88 -0
  143. package/dist/tool-outcome-cache.js.map +1 -0
  144. package/dist/types.d.ts +39 -0
  145. package/dist/types.d.ts.map +1 -1
  146. package/dist/verifier-rules.d.ts +15 -0
  147. package/dist/verifier-rules.d.ts.map +1 -0
  148. package/dist/verifier-rules.js +80 -0
  149. package/dist/verifier-rules.js.map +1 -0
  150. package/dist/workspace-mutation-policy.d.ts +28 -0
  151. package/dist/workspace-mutation-policy.d.ts.map +1 -0
  152. package/dist/workspace-mutation-policy.js +56 -0
  153. package/dist/workspace-mutation-policy.js.map +1 -0
  154. package/package.json +1 -1
@@ -10,6 +10,7 @@
10
10
  * - Positive framing: "always do X" over "never do X" (pink elephant problem)
11
11
  * - No contradictions: removed "risky", "high-impact", "careful", "cautious"
12
12
  */
13
+ import { SYSTEM_CORE, SYSTEM_REINFORCE } from "./system-core.js";
13
14
  /**
14
15
  * Build the agent system prompt.
15
16
  *
@@ -17,11 +18,15 @@
17
18
  * FRONT → identity, behavior, tone (highest attention)
18
19
  * MIDDLE → tools, env, project, mode (factual/dynamic)
19
20
  * END → reinforce + completion (Gemini U-curve second peak)
21
+ *
22
+ * @deprecated Use compilePromptEnvelope() + buildPrompt() from prompt-runtime.ts / prompt-builder.ts instead.
23
+ * This function is kept for backward compatibility only.
24
+ * New code should use the 3-layer pipeline: PromptRuntime → PromptBuilder.
20
25
  */
21
26
  export function buildSystemPrompt(options) {
22
27
  const sections = [];
23
28
  // ═══ FRONT — identity, behavior, tone (MUST be first) ═══
24
- sections.push(CORE_IDENTITY);
29
+ sections.push(SYSTEM_CORE);
25
30
  // ═══ MIDDLE — dynamic/factual context ═══
26
31
  // Execution mode
27
32
  const modeSection = buildModeSection(options.executionMode);
@@ -68,167 +73,10 @@ export function buildSystemPrompt(options) {
68
73
  sections.push(`# Additional Rules\n${options.additionalRules.map((r) => `- ${r}`).join("\n")}`);
69
74
  }
70
75
  // ═══ END — reinforce + completion (second attention peak) ═══
71
- sections.push(REINFORCE_AND_COMPLETE);
76
+ sections.push(SYSTEM_REINFORCE);
72
77
  return sections.join("\n\n---\n\n").trim();
73
78
  }
74
79
  // ═══════════════════════════════════════════════════════════════════════════════
75
- // FRONT — Identity + Behavior + Tone (HIGHEST ATTENTION ZONE)
76
- // ═══════════════════════════════════════════════════════════════════════════════
77
- const CORE_IDENTITY = `# You are YUAN
78
-
79
- You are YUAN — a sharp, versatile AI engineer built by YUA. You handle everything: code, architecture, OS kernels, ML pipelines, analysis, conversation. You have direct project access through tools.
80
-
81
- ## Core operating rules
82
-
83
- - Execute immediately. Do not ask for permission to begin normal work.
84
- - Read before edit. Verify after change.
85
- - If you say you will act, perform the matching tool call.
86
- - Prefer direct progress over commentary.
87
-
88
- ## Behavior (CRITICAL — read this first)
89
-
90
- **Always attempt every task. 절대 멈추지 마.** Decompose large tasks into phases and start executing immediately. Whether it's "fix a typo" or "build an operating system," your response is the same: break it down, start building, keep going until done. "시작할까?", "계속할까?", "어떤 걸 먼저 할까?" 물어보지 마 — 바로 실행해.
91
-
92
- **Korean 반말 필수.** 유저가 한국어로 말하면 반말로 대답해:
93
- - 맞음: "이거 고쳤어", "빌드 돌려볼게", "됐어", "이렇게 하면 돼"
94
- - 틀림: "수정했습니다", "실행하겠습니다", "완료했습니다"
95
- - 나레이션도 반말: "파일 읽어볼게", "에러 찾았어"
96
-
97
- **Output style:**
98
- - For direct questions, answer first.
99
- - For execution tasks, act first and report only meaningful progress or results.
100
- - Narration is optional. Use it only when you are about to do real work or when a short progress hint helps.
101
- - Prefer one short line that previews the next concrete action or gives a useful intermediate finding.
102
- - Skip narration for obvious micro-steps, pure planning, or filler.
103
- - Silent success is fine when the result is visible from the tool output or completed change.
104
- - If something fails, say what failed and what you're doing next. No apologies.
105
-
106
- ## Evidence-based answers
107
-
108
- - If your answer depends on tool results, code inspection, or search output,
109
- adjust confidence based on the evidence available.
110
- - When evidence is strong and consistent → answer directly.
111
- - When evidence is partial → explain what is known and what is inferred.
112
- - Do not invent facts that tools or code did not show.
113
-
114
- **Banned patterns — use the positive alternative instead:**
115
- - ~~"이건 어려워"~~ → 분해해서 시작해
116
- - ~~"I can't"~~ → 시도하고 결과로 판단해
117
- - ~~"This might not work"~~ → 해보고 안 되면 전략 바꿔
118
- - ~~"Great!"/"Sure!"/"물론이죠!"~~ → 바로 실행해
119
- - ~~trailing summary~~ → 끝나면 task_complete 호출해
120
-
121
- ## Persistence (CRITICAL)
122
-
123
- Keep executing until the task is fully resolved. Do not stop mid-task to ask "계속할까?" or "shall I continue?" — just keep going. The only reasons to pause:
124
- - You need information only the user has
125
- - A destructive action requires explicit approval
126
- - task_complete has been called
127
-
128
- If the task has 10 steps, do all 10. Do not do 3 and ask permission for the rest.
129
-
130
- ## Deterministic execution
131
-
132
- - Prefer predictable, repeatable actions.
133
- - Avoid random exploration when a clear path exists.
134
- - If multiple solutions exist, choose the simplest working one first.
135
-
136
- ## Edit scope discipline
137
-
138
- - Prefer the smallest correct change that resolves the issue.
139
- - Preserve existing structure, naming, and file layout unless a broader change is clearly required.
140
- - Do not rename, move, or refactor unrelated code just because it could be cleaner.
141
- - Expand the scope only when the minimal fix would leave the system broken or inconsistent.
142
-
143
- ## Approach
144
-
145
- **Existing code:** read → understand patterns → minimal edit → verify (build/test)
146
- **New builds:** decompose into phases → execute phase by phase → each phase produces working output
147
- **Questions:** answer directly. Use tools only when the answer needs project context.
148
- **Ambiguity:** if missing details are non-critical, make the smallest reasonable assumption and proceed.
149
- **Errors:** read error → diagnose root cause → fix → verify. If stuck after 2 tries, switch strategy entirely.
150
-
151
- - If the same change fails repeatedly, step back and reconsider the architecture.
152
- - Prefer a new approach over repeating the same patch.
153
-
154
- ## Narration
155
-
156
- Narrate like pair programming, but only when it adds signal:
157
- - Use narration when you are about to read, edit, run, verify, or when you found something the user should track.
158
- - Keep it short — usually one line.
159
- - Make it feel like a hint, not a status feed.
160
- - Good: "auth 흐름 볼게", "원인 찾았어 — 이 파일 고칠게", "빌드 돌려서 확인할게", "3곳에서 같이 쓰네"
161
- - Bad: "iteration 1:", "[shadow]", "starting agent loop", "success: shell_exec" — 이런 시스템 로그 금지
162
- - Bad: 매 툴 호출마다 습관적으로 한 줄씩 붙이기
163
- - 같은 말 반복 금지. "파일 읽어볼게"를 여러 번 반복하지 말고, 필요할 때만 구체적으로 말해.
164
- - If no real action follows immediately, skip narration.
165
-
166
- ## Tool Usage (CRITICAL)
167
-
168
- **"읽어볼게" 하면 반드시 tool call을 실행해.** 텍스트로 "파일을 읽어볼게요" 쓰고 실제 file_read를 안 부르면 안 돼. 행동을 말했으면 반드시 해당 도구를 호출해. 나레이션만 하고 도구 안 부르는 건 금지.
169
-
170
- ### Tool input validation
171
-
172
- Before executing a tool call, quickly check:
173
- - file paths exist or are plausible within the project tree
174
- - glob patterns are valid and not overly broad
175
- - grep queries target likely identifiers or text
176
- - bash commands are syntactically correct
177
- - tool parameters match the tool schema
178
-
179
- If the input looks wrong, adjust it before executing the tool.
180
-
181
- ### Tool-calling accuracy rules
182
-
183
- - If the task requires external state (files, repo, logs, web), prefer a tool call over guessing.
184
- - If the answer depends on project code, read the file before explaining.
185
- - When multiple files are likely relevant, batch the reads in the same step.
186
- - Do not describe tool results before the tool has actually been executed.
187
- - Stop calling tools once sufficient evidence is gathered and proceed with the fix or answer.
188
-
189
- - Read before edit. Always.
190
- - Batch independent tool calls (read multiple files at once).
191
- - Plan tool usage before acting: identify which calls are independent and which depend on prior results.
192
- - Parallelize discovery and inspection whenever possible:
193
- - good: multiple file reads, grep searches, glob discovery, reading related configs together
194
- - good: gathering logs, stack traces, and call sites in one pass
195
- - Sequence dependent actions carefully:
196
- - read/search first → then edit
197
- - edit first → then build/test
198
- - do not edit before you understand the affected references
199
- - Prefer one broad discovery pass over many tiny sequential lookups when exploring unfamiliar code.
200
- - When several files are likely related, read them together before deciding the fix.
201
- - Use the minimum safe number of tool rounds: gather enough context first, then act decisively.
202
-
203
- - Use \`glob\` for file discovery (not \`find\` or \`ls -R\` — they freeze).
204
- - Do not add narration before every tool call. Narration is for meaningful actions only.
205
- - Use \`grep\` for content search.
206
- - Shell commands: use \`bash\` tool for commands that need pipes/redirects. Use \`shell_exec\` for simple executables.
207
- - After changes, verify with build/test when available.
208
- - Git: \`git_ops("status")\` before commit. Commit messages explain "why", not "what".
209
-
210
- ## Code quality rules (ABSOLUTE)
211
-
212
- - NEVER write TODO, FIXME, HACK, XXX comments in generated code.
213
- If you cannot implement something, either implement it fully or explicitly
214
- tell the user what is missing — do not leave placeholder comments.
215
- - NEVER generate stub implementations (empty function bodies, throw new Error("not implemented")).
216
- Write the real implementation or ask the user for clarification.
217
-
218
- ## Safety (essential only)
219
-
220
- - Ask approval before: deleting files, force-pushing, pushing to main.
221
- - Keep secrets out of responses (.env, API keys, credentials).
222
- - Stay within the project directory.
223
-
224
- ## Natural explanation flow
225
-
226
- - Avoid lecture-style formatting unless the task requires structured output.
227
- - Prefer natural explanation flow over rigid bullet lists.
228
- - Use sections only when they genuinely help clarity.
229
-
230
- `;
231
- // ═══════════════════════════════════════════════════════════════════════════════
232
80
  // DYNAMIC SECTION BUILDERS
233
81
  // ═══════════════════════════════════════════════════════════════════════════════
234
82
  function buildModeSection(mode) {
@@ -283,6 +131,7 @@ ${tree}
283
131
  }
284
132
  function buildToolSection(tools, activeToolNames) {
285
133
  const activeSet = new Set(activeToolNames ?? []);
134
+ const hasSubAgent = tools.some((t) => t.name === "spawn_sub_agent");
286
135
  const visibleTools = activeToolNames && activeToolNames.length > 0
287
136
  ? tools.filter((t) => activeSet.has(t.name))
288
137
  : tools;
@@ -318,16 +167,46 @@ Tool selection discipline:
318
167
  - After a tool result arrives, update the plan from the actual result rather than repeating the prior assumption.
319
168
  - Do not call the same tool with identical parameters repeatedly. If a result does not help, change the strategy.
320
169
 
321
- Key patterns:
322
- - file discovery: \`glob\` (never \`find\` or \`ls -R\`)
323
- - content search: \`grep\`
170
+ ## Available tools — full reference
171
+
172
+ **File operations:**
173
+ - \`file_read(file_path)\` — read file contents (also reads images for visual analysis)
174
+ - \`file_write(file_path, content)\` — create or overwrite a file
175
+ - \`file_edit(file_path, old_string, new_string)\` — precise string replacement in a file. old_string must be unique. Use for surgical edits.
176
+ - \`glob(pattern, path?)\` — find files by glob pattern (e.g. \`"src/**/*.ts"\`). NEVER use \`find\` or \`ls -R\`.
177
+ - \`grep(pattern, path?, include?)\` — search file contents with regex. Returns matching lines with context.
178
+ - \`code_search(query, path?)\` — semantic code search — finds functions, classes, symbols by name or description. Better than grep for "find the function that handles X".
179
+
180
+ **Shell & execution:**
181
+ - \`shell_exec(command, cwd?)\` — run a shell command. Use for simple commands (no pipes).
182
+ - \`bash(script)\` — run a bash script. Use when you need pipes, redirects, or multi-line scripts.
183
+ - \`test_run(command?, cwd?)\` — run test suite. Auto-detects test framework (jest, vitest, pytest, go test). Shows failures with context.
184
+
185
+ **Git:**
186
+ - \`git_ops(operation, ...args)\` — git operations: \`status\`, \`diff\`, \`log\`, \`add\`, \`commit\`, \`branch\`, \`checkout\`, \`stash\`.
187
+
188
+ **Web & search:**
189
+ - \`web_search(query)\` — search the web (Google via Gemini, DuckDuckGo fallback). Use for docs, error messages, API references.
190
+ - \`parallel_web_search(queries[])\` — run multiple web searches simultaneously. Use when you need to research several topics at once.
191
+
192
+ **Analysis & security:**
193
+ - \`security_scan(path?)\` — scan code for security vulnerabilities (secrets, injection, XSS, etc.).
194
+ - \`browser(url, action?)\` — navigate to URL, take screenshot, interact with web pages. Use for testing web apps or reading web documentation.
195
+
196
+ **Completion:**
197
+ - \`task_complete(summary)\` — mark the task as done. Always call when finished.
198
+
199
+ **Key patterns:**
200
+ - file discovery: \`glob\` first, if empty → \`shell_exec("ls -la {dir}")\` to verify
201
+ - content search: \`grep\` for text, \`code_search\` for symbols/functions
324
202
  - read before edit: \`file_read\` → \`file_edit\`
325
203
  - new files: \`file_write\`
326
- - shell with pipes/redirects: \`bash\` tool
327
- - images: \`file_read("image.png")\` returns visual input
328
- - web: \`web_search\` for docs, errors, APIs
329
- - parallel independent tasks: \`spawn_sub_agent\`
204
+ - testing: \`test_run\` (auto-detects framework)
205
+ - web research: \`web_search\` or \`parallel_web_search\` for multiple queries
206
+ - security: \`security_scan\` before committing sensitive code
207
+ ${hasSubAgent ? "- parallel independent tasks: `spawn_sub_agent`" : ""}
330
208
 
209
+ ${hasSubAgent ? `
331
210
  ## Sub-agent delegation (spawn_sub_agent)
332
211
 
333
212
  Use \`spawn_sub_agent\` when the task has **independent parallel work** — i.e., tasks that don't need each other's output to proceed.
@@ -350,57 +229,7 @@ Use \`spawn_sub_agent\` when the task has **independent parallel work** — i.e.
350
229
 
351
230
  **goal format:** Be specific. Include file paths, expected output, constraints.
352
231
  - ✓ "Write /src/api/users.ts — GET /users returns paginated list, POST /users creates user. Use existing db.ts patterns."
353
- - ✗ "Handle the user API"`;
232
+ - ✗ "Handle the user API"
233
+ ` : ""}`;
354
234
  }
355
- // ═══════════════════════════════════════════════════════════════════════════════
356
- // END — Reinforce + Completion (SECOND ATTENTION PEAK — Gemini U-curve)
357
- // ═══════════════════════════════════════════════════════════════════════════════
358
- const REINFORCE_AND_COMPLETE = `# AgentState
359
-
360
- You may receive an injected AgentState block each iteration:
361
- \`\`\`
362
- AgentState { iteration, hypothesis, failure_sig, verify_state, token_budget }
363
- \`\`\`
364
- - \`hypothesis\`: your current theory — read it before planning.
365
- - \`failure_sig\`: if set, resolve it first.
366
- - \`verify_state\`: if "fail", fix before proceeding.
367
- - \`token_budget\`: at 70% switch to shorter responses. At 85% stop optional context. At 95% save and stop.
368
-
369
- # Self-regulation
370
-
371
- - If you keep modifying the same lines without improving results, stop. Reason from scratch. Change strategy entirely.
372
- - If a command fails twice unchanged, do something different — do not retry.
373
- - Prefer reversible steps. Track what changed since last known-good state.
374
-
375
- # Remember
376
-
377
- ## Core checksum
378
-
379
- - Start working immediately.
380
- - Read before edit.
381
- - Verify after changing code.
382
- - If you say an action, execute the matching tool call.
383
- - Prefer the active tool subset for the current turn.
384
- - Keep narration sparse and action-bound.
385
- - Batch independent reads/searches; sequence dependent edits/tests.
386
- - Prefer the smallest correct change before escalating scope.
387
- - Do not stop with work remaining.
388
-
389
- These are reinforcements of the same core rules above.
390
- Do not reinterpret them. Follow them directly.
391
-
392
- You are YUAN. You attempt every task. You decompose and execute. You use 반말 in Korean.
393
- 절대 "시작할까?", "계속할까?", "어떤 걸 먼저?" 물어보지 마. 끝날 때까지 멈추지 말고 실행해.
394
- "읽어볼게", "실행할게" 말했으면 반드시 해당 tool call을 실행해. 말만 하고 도구 안 부르면 안 돼. 하지만 모든 행동 앞에 나레이션을 붙일 필요는 없어.
395
- 독립적인 탐색과 읽기는 최대한 병렬로 묶고, 수정과 검증은 의존성 순서대로 진행해.
396
-
397
- When done: call \`task_complete\` with a concise summary.
398
- - Always call task_complete when finished — do not end with only text.
399
- - Do not call task_complete with pending work remaining.
400
- - End only after execution is complete or blocked by required user input/approval.
401
-
402
- If a build/test fails, fix it before calling task_complete. Evidence over assumptions.
403
-
404
- Write complete, functional code. No stubs, no TODOs, no placeholders. Implement real logic.
405
- Follow existing project patterns. Read before writing. Verify after changing.`;
406
235
  //# sourceMappingURL=system-prompt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"system-prompt.js","sourceRoot":"","sources":["../src/system-prompt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * @module target-file-ranker
3
+ * @description Post-retrieval file candidate reranker.
4
+ * Scores and reranks file candidates from glob/grep/search results.
5
+ * Role: RERANKER only. Does NOT perform file search.
6
+ * Budget-aware: returns top-k within toolBudget.maxFileReads.
7
+ */
8
+ export interface FileCandidateScore {
9
+ path: string;
10
+ score: number;
11
+ reasons: string[];
12
+ }
13
+ export interface RankerInput {
14
+ candidates: string[];
15
+ userMessage: string;
16
+ errorStackFiles?: string[];
17
+ recentlyChangedFiles?: string[];
18
+ recentlyReadFiles?: string[];
19
+ maxResults: number;
20
+ }
21
+ /**
22
+ * Rank and rerank file candidates by relevance signals.
23
+ * Pure function, deterministic, no I/O.
24
+ *
25
+ * Scoring rubric (additive):
26
+ * +40 error stack trace match
27
+ * +30 filename mentioned in user message
28
+ * +20 recently changed file
29
+ * +10 test pair exists in candidate set
30
+ * +10 same package as a recently changed file
31
+ * +5 source file (not config/lock)
32
+ * +5 index/entry point file
33
+ * -15 already read this session (decay)
34
+ */
35
+ export declare function rankFileCandidates(input: RankerInput): FileCandidateScore[];
36
+ /** Format ranked results as a prompt hint string */
37
+ export declare function formatRankingHint(ranked: FileCandidateScore[]): string;
38
+ //# sourceMappingURL=target-file-ranker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"target-file-ranker.d.ts","sourceRoot":"","sources":["../src/target-file-ranker.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAChC,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,WAAW,GAAG,kBAAkB,EAAE,CAsE3E;AAED,oDAAoD;AACpD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAKtE"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * @module target-file-ranker
3
+ * @description Post-retrieval file candidate reranker.
4
+ * Scores and reranks file candidates from glob/grep/search results.
5
+ * Role: RERANKER only. Does NOT perform file search.
6
+ * Budget-aware: returns top-k within toolBudget.maxFileReads.
7
+ */
8
+ /**
9
+ * Rank and rerank file candidates by relevance signals.
10
+ * Pure function, deterministic, no I/O.
11
+ *
12
+ * Scoring rubric (additive):
13
+ * +40 error stack trace match
14
+ * +30 filename mentioned in user message
15
+ * +20 recently changed file
16
+ * +10 test pair exists in candidate set
17
+ * +10 same package as a recently changed file
18
+ * +5 source file (not config/lock)
19
+ * +5 index/entry point file
20
+ * -15 already read this session (decay)
21
+ */
22
+ export function rankFileCandidates(input) {
23
+ const { candidates, userMessage, errorStackFiles, recentlyChangedFiles, recentlyReadFiles, maxResults } = input;
24
+ const msg = userMessage.toLowerCase();
25
+ const scored = candidates.map(path => {
26
+ let score = 0;
27
+ const reasons = [];
28
+ const name = path.split("/").pop() ?? "";
29
+ const lower = path.toLowerCase();
30
+ // Error stack trace match (+40)
31
+ if (errorStackFiles?.some(f => path.includes(f) || f.includes(name))) {
32
+ score += 40;
33
+ reasons.push("error stack match");
34
+ }
35
+ // User message mentions filename (+30)
36
+ if (msg.includes(name.toLowerCase()) || msg.includes(lower)) {
37
+ score += 30;
38
+ reasons.push("mentioned in message");
39
+ }
40
+ // Recently changed file (+20)
41
+ if (recentlyChangedFiles?.includes(path)) {
42
+ score += 20;
43
+ reasons.push("recently changed");
44
+ }
45
+ // Test pair (+10) -- foo.ts <-> foo.test.ts
46
+ const testPair = path.replace(/\.(ts|js|tsx|jsx)$/, ".test.$1");
47
+ const srcPair = path.replace(/\.test\.(ts|js|tsx|jsx)$/, ".$1");
48
+ if (candidates.includes(testPair) || candidates.includes(srcPair)) {
49
+ score += 10;
50
+ reasons.push("test pair exists");
51
+ }
52
+ // Same package as changed files (+10)
53
+ if (recentlyChangedFiles?.some(cf => {
54
+ const cfPkg = cf.match(/^(?:packages|apps|libs)\/([^/]+)\//)?.[1];
55
+ const myPkg = path.match(/^(?:packages|apps|libs)\/([^/]+)\//)?.[1];
56
+ return cfPkg && myPkg && cfPkg === myPkg;
57
+ })) {
58
+ score += 10;
59
+ reasons.push("same package");
60
+ }
61
+ // Source file over config (+5)
62
+ if (/\.(ts|js|tsx|jsx|py|go|rs)$/.test(path)) {
63
+ score += 5;
64
+ reasons.push("source file");
65
+ }
66
+ // Already read decay (-15)
67
+ if (recentlyReadFiles?.includes(path)) {
68
+ score -= 15;
69
+ reasons.push("already read");
70
+ }
71
+ // Index/entry files boost (+5)
72
+ if (/index\.[jt]sx?$|main\.[jt]sx?$|app\.[jt]sx?$/.test(name)) {
73
+ score += 5;
74
+ reasons.push("entry point");
75
+ }
76
+ return { path, score: Math.max(0, score), reasons };
77
+ });
78
+ return scored
79
+ .sort((a, b) => b.score - a.score)
80
+ .slice(0, maxResults);
81
+ }
82
+ /** Format ranked results as a prompt hint string */
83
+ export function formatRankingHint(ranked) {
84
+ if (ranked.length === 0)
85
+ return "";
86
+ return "Suggested file reading order:\n" + ranked
87
+ .map((f, i) => `${i + 1}. ${f.path} (score: ${f.score}, ${f.reasons.join(", ")})`)
88
+ .join("\n");
89
+ }
90
+ //# sourceMappingURL=target-file-ranker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"target-file-ranker.js","sourceRoot":"","sources":["../src/target-file-ranker.ts"],"names":[],"mappings":"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"}
@@ -46,11 +46,17 @@ export interface TaskClassification {
46
46
  * 두 가지 모드:
47
47
  * 1. `classify()` — 키워드 기반 휴리스틱 (LLM 호출 없이 빠름)
48
48
  * 2. `classifyWithLLM()` — LLM 강화 분류 (모호한 경우)
49
+ *
50
+ * @deprecated Use agentReason() from agent-reasoning-engine.ts instead.
51
+ * AgentReasoningEngine provides the same intent/complexity classification
52
+ * with deterministic heuristics (NO LLM required).
53
+ * This classifier is kept for backward compatibility when Decision Engine is unavailable.
49
54
  */
50
55
  export declare class TaskClassifier {
51
56
  /**
52
57
  * 휴리스틱 기반 태스크 분류 (LLM 호출 없음, 빠름).
53
58
  *
59
+ * @deprecated Use agentReason() from agent-reasoning-engine.ts instead.
54
60
  * @param message - 사용자 입력 메시지
55
61
  * @param projectContext - 프로젝트 컨텍스트 (선택, 예: 파일 구조 요약)
56
62
  * @returns 태스크 분류 결과
@@ -1 +1 @@
1
- {"version":3,"file":"task-classifier.d.ts","sourceRoot":"","sources":["../src/task-classifier.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAIlD,aAAa;AACb,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,aAAa,kBAAkB;CAChC;AAID,gBAAgB;AAChB,MAAM,WAAW,kBAAkB;IACjC,iBAAiB;IACjB,IAAI,EAAE,QAAQ,CAAC;IACf,mBAAmB;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB;IAClB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,wBAAwB;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa;IACb,mBAAmB,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IACnE,2BAA2B;IAC3B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4CAA4C;IAC5C,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAoUD;;;;;;GAMG;AACH,qBAAa,cAAc;IACzB;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,kBAAkB;IAwFtE;;;;;;OAMG;IACG,eAAe,CACnB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,UAAU,GACpB,OAAO,CAAC,kBAAkB,CAAC;IAkD9B;;;;;OAKG;IACH,eAAe,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE;IAIzC;;;;;OAKG;IACH,qBAAqB,CAAC,cAAc,EAAE,kBAAkB,GAAG,MAAM;IA0CjE;;;;;OAKG;IACH,iBAAiB,CAAC,cAAc,EAAE,kBAAkB,GAAG,MAAM,GAAG,IAAI;IAsBpE;;;;;OAKG;IACH,oBAAoB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE;IAgB9C;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgCzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAe3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA0B1B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAwF5B;;OAEG;IACH,OAAO,CAAC,sBAAsB;CA0D/B"}
1
+ {"version":3,"file":"task-classifier.d.ts","sourceRoot":"","sources":["../src/task-classifier.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAIlD,aAAa;AACb,oBAAY,QAAQ;IAClB,KAAK,UAAU;IACf,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,WAAW,gBAAgB;IAC3B,SAAS,cAAc;IACvB,aAAa,kBAAkB;CAChC;AAID,gBAAgB;AAChB,MAAM,WAAW,kBAAkB;IACjC,iBAAiB;IACjB,IAAI,EAAE,QAAQ,CAAC;IACf,mBAAmB;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB;IAClB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,wBAAwB;IACxB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa;IACb,mBAAmB,EAAE,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IACnE,2BAA2B;IAC3B,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,4CAA4C;IAC5C,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAoUD;;;;;;;;;;;GAWG;AACH,qBAAa,cAAc;IACzB;;;;;;;OAOG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,MAAM,GAAG,kBAAkB;IAwFtE;;;;;;OAMG;IACG,eAAe,CACnB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,UAAU,GACpB,OAAO,CAAC,kBAAkB,CAAC;IAkD9B;;;;;OAKG;IACH,eAAe,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE;IAIzC;;;;;OAKG;IACH,qBAAqB,CAAC,cAAc,EAAE,kBAAkB,GAAG,MAAM;IA0CjE;;;;;OAKG;IACH,iBAAiB,CAAC,cAAc,EAAE,kBAAkB,GAAG,MAAM,GAAG,IAAI;IAsBpE;;;;;OAKG;IACH,oBAAoB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE;IAgB9C;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgCzB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAe3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IA0B1B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAwF5B;;OAEG;IACH,OAAO,CAAC,sBAAsB;CA0D/B"}
@@ -303,11 +303,17 @@ Respond with ONLY a JSON object (no markdown, no explanation):
303
303
  * 두 가지 모드:
304
304
  * 1. `classify()` — 키워드 기반 휴리스틱 (LLM 호출 없이 빠름)
305
305
  * 2. `classifyWithLLM()` — LLM 강화 분류 (모호한 경우)
306
+ *
307
+ * @deprecated Use agentReason() from agent-reasoning-engine.ts instead.
308
+ * AgentReasoningEngine provides the same intent/complexity classification
309
+ * with deterministic heuristics (NO LLM required).
310
+ * This classifier is kept for backward compatibility when Decision Engine is unavailable.
306
311
  */
307
312
  export class TaskClassifier {
308
313
  /**
309
314
  * 휴리스틱 기반 태스크 분류 (LLM 호출 없음, 빠름).
310
315
  *
316
+ * @deprecated Use agentReason() from agent-reasoning-engine.ts instead.
311
317
  * @param message - 사용자 입력 메시지
312
318
  * @param projectContext - 프로젝트 컨텍스트 (선택, 예: 파일 구조 요약)
313
319
  * @returns 태스크 분류 결과
@@ -1 +1 @@
1
- {"version":3,"file":"task-classifier.js","sourceRoot":"","sources":["../src/task-classifier.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,yBAAyB;AAEzB,aAAa;AACb,MAAM,CAAN,IAAY,QAeX;AAfD,WAAY,QAAQ;IAClB,2BAAe,CAAA;IACf,+BAAmB,CAAA;IACnB,iCAAqB,CAAA;IACrB,yBAAa,CAAA;IACb,+BAAmB,CAAA;IACnB,6BAAiB,CAAA;IACjB,6BAAiB,CAAA;IACjB,6BAAiB,CAAA;IACjB,6BAAiB,CAAA;IACjB,iCAAqB,CAAA;IACrB,2BAAe,CAAA;IACf,uCAA2B,CAAA;IAC3B,mCAAuB,CAAA;IACvB,2CAA+B,CAAA;AACjC,CAAC,EAfW,QAAQ,KAAR,QAAQ,QAenB;AAkCD,MAAM,aAAa,GAAkB;IACnC;QACE,IAAI,EAAE,QAAQ,CAAC,KAAK;QACpB,QAAQ,EAAE;YACR,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI;YAChD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW;YAChE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW;YAC3D,aAAa,EAAE,UAAU,EAAE,OAAO;SACnC;QACD,MAAM,EAAE,GAAG;KACZ;IACD;QACE,IAAI,EAAE,QAAQ,CAAC,OAAO;QACtB,QAAQ,EAAE;YACR,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,IAAI;YAC9C,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI;YAC5C,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,IAAI;SACtC;QACD,MAAM,EAAE,GAAG;KACZ;IACD;QACE,IAAI,EAAE,QAAQ,CAAC,QAAQ;QACvB,QAAQ,EAAE;YACR,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI;YACrC,aAAa,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS;YAC9D,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;YACxD,IAAI,EAAE,WAAW,EAAE,KAAK;SACzB;QACD,MAAM,EAAE,GAAG;KACZ;IACD;QACE,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,QAAQ,EAAE;YACR,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;YAC3B,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,KAAK;YAC1D,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS;SAC9C;QACD,MAAM,EAAE,GAAG;KACZ;IACD;QACE,IAAI,EAAE,QAAQ,CAAC,OAAO;QACtB,QAAQ,EAAE;YACR,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI;YACvC,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,EAAE,YAAY;YACtD,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI;SAC7C;QACD,MAAM,EAAE,GAAG;KACZ;IACD;QACE,IAAI,EAAE,QAAQ,CAAC,MAAM;QACrB,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;YACpC,QAAQ,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI;YACjD,MAAM,EAAE,MAAM;SACf;QACD,MAAM,EAAE,GAAG;KACZ;IACD;QACE,IAAI,EAAE,QAAQ,CAAC,MAAM;QACrB,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO;YAC7C,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,OAAO;YAChD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU;YACjD,cAAc,EAAE,MAAM;SACvB;QACD,MAAM,EAAE,GAAG;KACZ;IACD;QACE,IAAI,EAAE,QAAQ,CAAC,MAAM;QACrB,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS;YAClC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU;YACzC,QAAQ,EAAE,YAAY,EAAE,SAAS,EAAE,KAAK;SACzC;QACD,MAAM,EAAE,GAAG;KACZ;IACD;QACE,IAAI,EAAE,QAAQ,CAAC,MAAM;QACrB,QAAQ,EAAE;YACR,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ;YAC7C,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,SAAS;YAC5C,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO;YACjD,YAAY,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO;SAClD;QACD,MAAM,EAAE,GAAG;KACZ;IACD;QACE,IAAI,EAAE,QAAQ,CAAC,QAAQ;QACvB,QAAQ,EAAE;YACR,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM;YACvD,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,eAAe,EAAE,IAAI;YACrD,WAAW,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI;YAClD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK;YAC9C,kBAAkB,EAAE,QAAQ;SAC7B;QACD,MAAM,EAAE,GAAG;KACZ;IACD;QACE,IAAI,EAAE,QAAQ,CAAC,KAAK;QACpB,QAAQ,EAAE;YACR,KAAK,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,QAAQ;YAChD,YAAY,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO;YACvD,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,KAAK;YAC/C,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS;YAC3C,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO;SACnC;QACD,MAAM,EAAE,GAAG;KACZ;IACD;QACE,IAAI,EAAE,QAAQ,CAAC,WAAW;QAC1B,QAAQ,EAAE;YACR,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM;YACpD,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS;YAChD,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS;YAChD,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI;YAC1C,YAAY,EAAE,KAAK,EAAE,YAAY,EAAE,IAAI;SACxC;QACD,MAAM,EAAE,GAAG;KACZ;IACD;QACE,IAAI,EAAE,QAAQ,CAAC,SAAS;QACxB,QAAQ,EAAE;YACR,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,SAAS;YACzC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM;YAC9C,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,eAAe,EAAE,iBAAiB;YAC5D,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe;SACzD;QACD,MAAM,EAAE,GAAG;KACZ;IACD;QACE,IAAI,EAAE,QAAQ,CAAC,aAAa;QAC5B,QAAQ,EAAE;YACR,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO;YACzD,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU;YACrD,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU;YAChD,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS;SAChC;QACD,MAAM,EAAE,GAAG;KACZ;CACF,CAAC;AAEF,iCAAiC;AAEjC,MAAM,cAAc,GAA+B;IACjD,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,CAAC;IAC9E,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,CAAC;IAC3F,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,UAAU,CAAC;IAClF,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,CAAC;IACjF,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,aAAa,CAAC;IACxD,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,CAAC;IAC/D,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,CAAC;IAC3D,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,UAAU,CAAC;IACxD,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,CAAC;IACjF,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,CAAC;IACjF,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,CAAC;IACrE,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,CAAC;IACpF,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,CAAC;IAChG,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,CAAC;CAC3E,CAAC;AASF,MAAM,kBAAkB,GAAuB;IAC7C,wBAAwB;IACxB,EAAE,OAAO,EAAE,qCAAqC,EAAE,KAAK,EAAE,CAAC,EAAE;IAC5D,EAAE,OAAO,EAAE,0CAA0C,EAAE,KAAK,EAAE,CAAC,EAAE;IACjE,EAAE,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE;IAC1C,EAAE,OAAO,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,EAAE;IACzC,EAAE,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE;IAC1C,EAAE,OAAO,EAAE,0BAA0B,EAAE,KAAK,EAAE,CAAC,EAAE;IACjD,EAAE,OAAO,EAAE,yBAAyB,EAAE,KAAK,EAAE,CAAC,EAAE;IAChD,EAAE,OAAO,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE;IAC1C,sBAAsB;IACtB,EAAE,OAAO,EAAE,0BAA0B,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE;IAClD,EAAE,OAAO,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE;IAC5C,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE;IACrC,EAAE,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE;CACxC,CAAC;AAWF,MAAM,mBAAmB,GAAsB;IAC7C,EAAE,OAAO,EAAE,qBAAqB,EAAE,IAAI,EAAE,mDAAmD,EAAE;IAC7F,EAAE,OAAO,EAAE,0BAA0B,EAAE,IAAI,EAAE,sCAAsC,EAAE;IACrF,EAAE,OAAO,EAAE,sBAAsB,EAAE,IAAI,EAAE,oDAAoD,EAAE;IAC/F,EAAE,OAAO,EAAE,qBAAqB,EAAE,IAAI,EAAE,8CAA8C,EAAE;IACxF,EAAE,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,uCAAuC,EAAE;CAC3E,CAAC;AAEF,MAAM,qBAAqB,GAAsB;IAC/C,EAAE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,gDAAgD,EAAE;IACtF,EAAE,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,mDAAmD,EAAE;IAC3F,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,oDAAoD,EAAE;IAClF,EAAE,OAAO,EAAE,eAAe,EAAE,IAAI,EAAE,sDAAsD,EAAE;IAC1F,EAAE,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,yDAAyD,EAAE;CACnG,CAAC;AAEF,MAAM,sBAAsB,GAAsB;IAChD,EAAE,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,+CAA+C,EAAE;IAChF,EAAE,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,kDAAkD,EAAE;IAC1F,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,gDAAgD,EAAE;CACnF,CAAC;AAEF,kCAAkC;AAElC;;GAEG;AACH,SAAS,mBAAmB,CAAC,OAAe;IAC1C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,mEAAmE;IACnE,MAAM,aAAa,GAAG,kFAAkF,CAAC;IACzG,IAAI,KAA6B,CAAC;IAClC,OAAO,CAAC,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACtD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,oDAAoD;IACpD,MAAM,SAAS,GAAG,iCAAiC,CAAC;IACpD,OAAO,CAAC,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QAClD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACH,SAAS,qBAAqB,CAAC,OAAe,EAAE,IAAc;IAC5D,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,mDAAmD;IACnD,MAAM,WAAW,GAAG,sBAAsB,CAAC;IAC3C,IAAI,KAA6B,CAAC;IAClC,OAAO,CAAC,KAAK,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACpD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IAED,4EAA4E;IAC5E,MAAM,eAAe,GAAG,8DAA8D,CAAC;IACvF,OAAO,CAAC,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;QACxD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,+DAA+D;QAC/D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;YAC/D,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAED,mDAAmD;IACnD,IAAI,IAAI,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC5B,MAAM,UAAU,GAAG,4CAA4C,CAAC;QAChE,OAAO,CAAC,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACnD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACjC,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC;IAC3B,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAC9D,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO;IAC1D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ;IACtD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IACzD,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;CACvD,CAAC,CAAC;AAEH,oCAAoC;AAEpC,MAAM,yBAAyB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;EAyBhC,CAAC;AAEH,+BAA+B;AAE/B;;;;;;GAMG;AACH,MAAM,OAAO,cAAc;IACzB;;;;;;OAMG;IACH,QAAQ,CAAC,OAAe,EAAE,cAAuB;QAC/C,MAAM,iBAAiB,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAChD,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAC;QAE3C,oBAAoB;QACpB,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/C,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC1B,CAAC;QAED,gDAAgD;QAChD,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YACjC,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACpC,IAAI,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;oBACtD,UAAU,EAAE,CAAC;gBACf,CAAC;YACH,CAAC;YACD,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;gBACnB,MAAM,YAAY,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAChD,wDAAwD;gBACzD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;QAED,2CAA2C;QAC3C,IAAI,cAAc,EAAE,CAAC;YACnB,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,EAAE,cAAc,CAAC,CAAC;QACpE,CAAC;QAED,sBAAsB;QACtB,IAAI,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,CAAC,mBAAmB;QACpD,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,eAAe,GAAG,CAAC,CAAC;QAExB,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,EAAE,CAAC;YACnC,IAAI,KAAK,GAAG,SAAS,EAAE,CAAC;gBACtB,eAAe,GAAG,SAAS,CAAC;gBAC5B,SAAS,GAAG,KAAK,CAAC;gBAClB,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;iBAAM,IAAI,KAAK,GAAG,eAAe,EAAE,CAAC;gBACnC,eAAe,GAAG,KAAK,CAAC;YAC1B,CAAC;QACH,CAAC;QAED,uBAAuB;QACvB,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;QAExE,sBAAsB;QACtB,MAAM,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAE7D,yBAAyB;QACzB,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAElE,qCAAqC;QACrC,MAAM,YAAY,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5B,YAAY,CAAC,IAAI,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,CAAC;QACzE,CAAC;QAED,0BAA0B;QAC1B,MAAM,cAAc,GAAG,qBAAqB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAEhE,oBAAoB;QACpB,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAEpD,MAAM,cAAc,GAAuB;YACzC,IAAI,EAAE,QAAQ;YACd,UAAU;YACV,YAAY;YACZ,YAAY;YACZ,mBAAmB;YACnB,GAAG,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACzD,CAAC;QAEF,qCAAqC;QACrC,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,CAAC;QAChE,IAAI,gBAAgB,EAAE,CAAC;YACrB,cAAc,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACrD,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAC9D,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,cAAc,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;QACvD,CAAC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAED;;;;;;OAMG;IACH,KAAK,CAAC,eAAe,CACnB,OAAe,EACf,SAAqB;QAErB,kDAAkD;QAClD,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAEzC,kDAAkD;QAClD,IAAI,SAAS,CAAC,UAAU,IAAI,GAAG,EAAE,CAAC;YAChC,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC;gBACpC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,yBAAyB,EAAE;gBACtD,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE;aACnC,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YAC7D,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,wCAAwC;YACxC,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACvD,MAAM,WAAW,GAAG;gBAClB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,YAAY,EAAE,GAAG,SAAS,CAAC,YAAY,CAAC,CAAC;aAChE,CAAC;YACF,MAAM,cAAc,GAAG;gBACrB,GAAG,IAAI,GAAG,CAAC;oBACT,GAAG,CAAC,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC;oBAChC,GAAG,CAAC,SAAS,CAAC,cAAc,IAAI,EAAE,CAAC;iBACpC,CAAC;aACH,CAAC;YAEF,OAAO;gBACL,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,UAAU,EAAE,MAAM,CAAC,UAAU;gBAC7B,YAAY;gBACZ,YAAY,EAAE,WAAW;gBACzB,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;gBAC/C,GAAG,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACzE,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,2CAA2C;YAC3C,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED;;;;;OAKG;IACH,eAAe,CAAC,IAAc;QAC5B,OAAO,CAAC,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC;IACnC,CAAC;IAED;;;;;OAKG;IACH,qBAAqB,CAAC,cAAkC;QACtD,MAAM,KAAK,GAAa;YACtB,uBAAuB;YACvB,cAAc,cAAc,CAAC,IAAI,EAAE;YACnC,eAAe,CAAC,cAAc,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;YAC9D,eAAe,cAAc,CAAC,mBAAmB,EAAE;YACnD,EAAE;YACF,yBAAyB;YACzB,GAAG,cAAc,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;SACvE,CAAC;QAEF,IAAI,cAAc,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3C,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,gBAAgB,CAAC,CAAC;YACjC,KAAK,MAAM,IAAI,IAAI,cAAc,CAAC,YAAY,EAAE,CAAC;gBAC/C,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,IAAI,cAAc,CAAC,cAAc,IAAI,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9E,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,kBAAkB,CAAC,CAAC;YACnC,KAAK,MAAM,OAAO,IAAI,cAAc,CAAC,cAAc,EAAE,CAAC;gBACpD,KAAK,CAAC,IAAI,CAAC,OAAO,OAAO,EAAE,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QAED,IAAI,cAAc,CAAC,gBAAgB,EAAE,CAAC;YACpC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,sBAAsB,cAAc,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,cAAc,CAAC,iBAAiB,IAAI,cAAc,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpF,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,qBAAqB,CAAC,CAAC;YACtC,KAAK,MAAM,KAAK,IAAI,cAAc,CAAC,iBAAiB,EAAE,CAAC;gBACrD,KAAK,CAAC,IAAI,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACrC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,6BAA6B;IAE7B;;;;;OAKG;IACH,iBAAiB,CAAC,cAAkC;QAClD,MAAM,cAAc,GAAoC;YACtD,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,uBAAuB;YACzC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,uBAAuB;YAC3C,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,uBAAuB;YAC5C,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,oBAAoB;YACrC,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,qBAAqB;YAC1C,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAG,iCAAiC;YAC3D,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,kBAAkB;YACpC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,wBAAwB;YAChD,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,qBAAqB;YAC3C,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,EAAG,uBAAuB;YAClD,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI;YACvB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI;YACvB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,kBAAkB;YACrC,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,IAAI;SAC/B,CAAC;QAEF,IAAI,cAAc,CAAC,UAAU,GAAG,GAAG;YAAE,OAAO,IAAI,CAAC;QACjD,OAAO,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IACrD,CAAC;IAED;;;;;OAKG;IACH,oBAAoB,CAAC,IAAc;QACjC,MAAM,SAAS,GAAwC;YACrD,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,gBAAgB,EAAE,YAAY,EAAE,oBAAoB,CAAC;YACxE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,gBAAgB,CAAC;YAC1E,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,oBAAoB,EAAE,kBAAkB,EAAE,kBAAkB,CAAC;YACnF,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,eAAe,CAAC;YACxE,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC,eAAe,EAAE,0BAA0B,EAAE,UAAU,CAAC;YAC/E,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,aAAa,EAAE,oBAAoB,EAAE,qBAAqB,CAAC;YAC9E,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,qBAAqB,EAAE,kBAAkB,CAAC;SAC7E,CAAC;QAEF,OAAO,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC/B,CAAC;IAED,0BAA0B;IAE1B;;OAEG;IACK,iBAAiB,CACvB,MAA6B,EAC7B,OAAe,EACf,cAAsB;QAEtB,MAAM,GAAG,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;QAEzC,uEAAuE;QACvE,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACxD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/C,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,GAAG,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QAED,oCAAoC;QACpC,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7E,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;gBACtF,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACjD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,GAAG,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QAED,2CAA2C;QAC3C,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/E,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpF,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACjD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,GAAG,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;IACH,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,SAAiB,EAAE,eAAuB;QACpE,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;YACpB,8DAA8D;YAC9D,OAAO,GAAG,CAAC;QACb,CAAC;QAED,uBAAuB;QACvB,MAAM,GAAG,GAAG,SAAS,GAAG,eAAe,CAAC;QACxC,MAAM,KAAK,GAAG,GAAG,GAAG,SAAS,CAAC;QAE9B,2CAA2C;QAC3C,MAAM,UAAU,GAAG,GAAG,GAAG,KAAK,GAAG,GAAG,CAAC;QACrC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACK,kBAAkB,CACxB,OAAe;QAEf,IAAI,KAAK,GAAG,CAAC,CAAC;QAEd,iCAAiC;QACjC,IAAI,OAAO,CAAC,MAAM,GAAG,GAAG;YAAE,KAAK,IAAI,CAAC,CAAC;aAChC,IAAI,OAAO,CAAC,MAAM,GAAG,GAAG;YAAE,KAAK,IAAI,CAAC,CAAC;QAE1C,2BAA2B;QAC3B,KAAK,MAAM,MAAM,IAAI,kBAAkB,EAAE,CAAC;YACxC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBACjC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC;YACxB,CAAC;QACH,CAAC;QAED,oDAAoD;QACpD,MAAM,YAAY,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAClD,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAE1C,IAAI,KAAK,IAAI,CAAC,CAAC;YAAE,OAAO,SAAS,CAAC;QAClC,IAAI,KAAK,IAAI,CAAC;YAAE,OAAO,QAAQ,CAAC;QAChC,IAAI,KAAK,IAAI,CAAC;YAAE,OAAO,UAAU,CAAC;QAClC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,IAAc,EAAE,OAAe;QAC1D,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,KAAwB,CAAC;QAE7B,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,QAAQ,CAAC,KAAK;gBACjB,KAAK,GAAG,mBAAmB,CAAC;gBAC5B,MAAM;YACR,KAAK,QAAQ,CAAC,OAAO;gBACnB,KAAK,GAAG,qBAAqB,CAAC;gBAC9B,MAAM;YACR,KAAK,QAAQ,CAAC,QAAQ;gBACpB,KAAK,GAAG,sBAAsB,CAAC;gBAC/B,MAAM;YACR;gBACE,KAAK,GAAG,EAAE,CAAC;gBACX,MAAM;QACV,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC/B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;QAED,mCAAmC;QACnC,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,QAAQ,CAAC,KAAK;gBACjB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,KAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;oBACvD,KAAK,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAC;gBACnF,CAAC;gBACD,MAAM;YACR,KAAK,QAAQ,CAAC,OAAO;gBACnB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,KAAK,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;gBAClF,CAAC;gBACD,MAAM;YACR,KAAK,QAAQ,CAAC,IAAI;gBAChB,KAAK,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;gBAC3E,MAAM;YACR,KAAK,QAAQ,CAAC,MAAM;gBAClB,KAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC;gBACxD,MAAM;YACR,KAAK,QAAQ,CAAC,MAAM;gBAClB,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;gBACpD,KAAK,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;gBACvD,MAAM;YACR,KAAK,QAAQ,CAAC,MAAM;gBAClB,KAAK,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;gBACnE,MAAM;YACR,KAAK,QAAQ,CAAC,OAAO;gBACnB,KAAK,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;gBACjE,MAAM;YACR,KAAK,QAAQ,CAAC,QAAQ;gBACpB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,KAAK,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;gBAC9E,CAAC;gBACD,MAAM;YACR,KAAK,QAAQ,CAAC,MAAM;gBAClB,KAAK,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC;gBAC9D,KAAK,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;gBAC1E,MAAM;YACR,KAAK,QAAQ,CAAC,QAAQ;gBACpB,KAAK,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC;gBAC5D,KAAK,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;gBACpE,MAAM;YACR,KAAK,QAAQ,CAAC,KAAK;gBACjB,KAAK,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAC;gBAC5E,KAAK,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAC;gBACtD,MAAM;YACR,KAAK,QAAQ,CAAC,WAAW;gBACvB,KAAK,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;gBAC/D,KAAK,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;gBAC/D,MAAM;YACR,KAAK,QAAQ,CAAC,SAAS;gBACrB,KAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;gBAC7D,KAAK,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;gBACpD,MAAM;YACR,KAAK,QAAQ,CAAC,aAAa;gBACzB,KAAK,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;gBACrE,KAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;gBAC7D,MAAM;QACV,CAAC;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;OAEG;IACK,sBAAsB,CAC5B,GAAW;QAQX,IAAI,CAAC;YACH,uCAAuC;YACvC,IAAI,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;YACzB,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC3E,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAA4B,CAAC;YAE9D,gBAAgB;YAChB,MAAM,OAAO,GAAG,MAAM,CAAC,IAA0B,CAAC;YAClD,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAmB,CAAC,EAAE,CAAC;gBACvE,OAAO,IAAI,CAAC;YACd,CAAC;YAED,sBAAsB;YACtB,MAAM,UAAU,GAAG,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ;gBACtD,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;gBACjD,CAAC,CAAC,GAAG,CAAC;YAER,sBAAsB;YACtB,MAAM,iBAAiB,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,CAAU,CAAC;YAChF,MAAM,UAAU,GAAG,iBAAiB,CAAC,QAAQ,CAC3C,MAAM,CAAC,mBAAuD,CAC/D;gBACC,CAAC,CAAE,MAAM,CAAC,mBAAwD;gBAClE,CAAC,CAAC,UAAU,CAAC;YAEf,gBAAgB;YAChB,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,YAAY,CAAC;gBACrD,CAAC,CAAE,MAAM,CAAC,YAA0B,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;gBACtF,CAAC,CAAC,EAAE,CAAC;YAEP,0BAA0B;YAC1B,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;gBACzD,CAAC,CAAE,MAAM,CAAC,cAA4B,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;gBACxF,CAAC,CAAC,SAAS,CAAC;YAEd,OAAO;gBACL,IAAI,EAAE,OAAmB;gBACzB,UAAU;gBACV,mBAAmB,EAAE,UAAU;gBAC/B,YAAY;gBACZ,cAAc;aACf,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"task-classifier.js","sourceRoot":"","sources":["../src/task-classifier.ts"],"names":[],"mappings":"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"}