maestro-flow 0.5.34 → 0.5.36

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 (325) hide show
  1. package/.agents/agents/cli-explore-agent.md +71 -68
  2. package/.agents/agents/workflow-analyzer.md +1 -0
  3. package/.agents/agents/workflow-collab-planner.md +1 -0
  4. package/.agents/agents/workflow-debugger.md +1 -0
  5. package/.agents/agents/workflow-executor.md +1 -0
  6. package/.agents/agents/workflow-planner.md +2 -0
  7. package/.agents/skills/domain-add/SKILL.md +71 -0
  8. package/.agents/skills/maestro/SKILL.md +7 -6
  9. package/.agents/skills/maestro-amend/SKILL.md +0 -2
  10. package/.agents/skills/maestro-analyze/SKILL.md +9 -0
  11. package/.agents/skills/maestro-brainstorm/SKILL.md +10 -1
  12. package/.agents/skills/maestro-collab/SKILL.md +14 -1
  13. package/.agents/skills/maestro-help/SKILL.md +1 -1
  14. package/.agents/skills/maestro-help/index/catalog.json +0 -1
  15. package/.agents/skills/maestro-help/phases/01-parse-intent.md +1 -1
  16. package/.agents/skills/maestro-next/SKILL.md +15 -4
  17. package/.agents/skills/maestro-overlay/SKILL.md +4 -3
  18. package/.agents/skills/maestro-plan/SKILL.md +15 -4
  19. package/.agents/skills/maestro-ralph/SKILL.md +135 -31
  20. package/.agents/skills/maestro-ralph-execute/SKILL.md +51 -10
  21. package/.agents/skills/maestro-tools-register/SKILL.md +0 -6
  22. package/.agents/skills/maestro-ui-codify/SKILL.md +0 -2
  23. package/.agents/skills/manage-kg-extractors/SKILL.md +0 -2
  24. package/.agents/skills/quality-test/SKILL.md +25 -1
  25. package/.agents/skills/spec-load/SKILL.md +0 -1
  26. package/.agents/skills/spec-setup/SKILL.md +0 -1
  27. package/.agents/skills/team-lifecycle-v4/roles/analyst/role.md +13 -7
  28. package/.agents/skills/team-quality-assurance/roles/scout/role.md +15 -11
  29. package/.agents/skills/team-tech-debt/roles/scanner/role.md +1 -1
  30. package/.agents/skills/team-ultra-analyze/roles/explorer/role.md +23 -16
  31. package/.agy/agents/cli-explore-agent.md +71 -68
  32. package/.agy/agents/workflow-analyzer.md +1 -0
  33. package/.agy/agents/workflow-collab-planner.md +1 -0
  34. package/.agy/agents/workflow-debugger.md +1 -0
  35. package/.agy/agents/workflow-executor.md +1 -0
  36. package/.agy/agents/workflow-planner.md +2 -0
  37. package/.agy/skills/domain-add/SKILL.md +68 -0
  38. package/.agy/skills/maestro/SKILL.md +7 -6
  39. package/.agy/skills/maestro-amend/SKILL.md +0 -2
  40. package/.agy/skills/maestro-analyze/SKILL.md +9 -0
  41. package/.agy/skills/maestro-brainstorm/SKILL.md +10 -1
  42. package/.agy/skills/maestro-collab/SKILL.md +14 -1
  43. package/.agy/skills/maestro-help/SKILL.md +1 -1
  44. package/.agy/skills/maestro-help/index/catalog.json +0 -1
  45. package/.agy/skills/maestro-help/phases/01-parse-intent.md +1 -1
  46. package/.agy/skills/maestro-next/SKILL.md +15 -4
  47. package/.agy/skills/maestro-overlay/SKILL.md +4 -3
  48. package/.agy/skills/maestro-plan/SKILL.md +15 -4
  49. package/.agy/skills/maestro-ralph/SKILL.md +135 -31
  50. package/.agy/skills/maestro-ralph-execute/SKILL.md +51 -10
  51. package/.agy/skills/maestro-tools-register/SKILL.md +0 -6
  52. package/.agy/skills/maestro-ui-codify/SKILL.md +0 -2
  53. package/.agy/skills/manage-kg-extractors/SKILL.md +0 -2
  54. package/.agy/skills/quality-test/SKILL.md +25 -1
  55. package/.agy/skills/spec-load/SKILL.md +0 -1
  56. package/.agy/skills/spec-setup/SKILL.md +0 -1
  57. package/.agy/skills/team-lifecycle-v4/roles/analyst/role.md +13 -7
  58. package/.agy/skills/team-quality-assurance/roles/scout/role.md +15 -11
  59. package/.agy/skills/team-tech-debt/roles/scanner/role.md +1 -1
  60. package/.agy/skills/team-ultra-analyze/roles/explorer/role.md +23 -16
  61. package/.claude/agents/cli-explore-agent.md +71 -68
  62. package/.claude/agents/workflow-analyzer.md +1 -0
  63. package/.claude/agents/workflow-collab-planner.md +1 -0
  64. package/.claude/agents/workflow-debugger.md +1 -0
  65. package/.claude/agents/workflow-executor.md +1 -0
  66. package/.claude/agents/workflow-planner.md +2 -0
  67. package/.claude/commands/domain-add.md +69 -0
  68. package/.claude/commands/maestro-amend.md +0 -2
  69. package/.claude/commands/maestro-analyze.md +9 -0
  70. package/.claude/commands/maestro-brainstorm.md +10 -1
  71. package/.claude/commands/maestro-collab.md +14 -1
  72. package/.claude/commands/maestro-next.md +15 -4
  73. package/.claude/commands/maestro-overlay.md +4 -3
  74. package/.claude/commands/maestro-plan.md +15 -4
  75. package/.claude/commands/maestro-ralph-execute.md +51 -10
  76. package/.claude/commands/maestro-ralph.md +135 -31
  77. package/.claude/commands/maestro-tools-register.md +0 -6
  78. package/.claude/commands/maestro-ui-codify.md +0 -2
  79. package/.claude/commands/maestro.md +7 -6
  80. package/.claude/commands/manage-kg-extractors.md +0 -2
  81. package/.claude/commands/quality-test.md +25 -1
  82. package/.claude/commands/spec-load.md +0 -1
  83. package/.claude/commands/spec-setup.md +0 -1
  84. package/.claude/skills/maestro-help/SKILL.md +1 -1
  85. package/.claude/skills/maestro-help/index/catalog.json +0 -1
  86. package/.claude/skills/maestro-help/phases/01-parse-intent.md +1 -1
  87. package/.claude/skills/team-lifecycle-v4/roles/analyst/role.md +13 -7
  88. package/.claude/skills/team-quality-assurance/roles/scout/role.md +15 -11
  89. package/.claude/skills/team-tech-debt/roles/scanner/role.md +1 -1
  90. package/.claude/skills/team-ultra-analyze/roles/explorer/role.md +23 -16
  91. package/.codex/skills/domain-add/SKILL.md +79 -0
  92. package/.codex/skills/domain-discover/SKILL.md +43 -0
  93. package/.codex/skills/domain-list/SKILL.md +38 -0
  94. package/.codex/skills/learn-follow/SKILL.md +0 -3
  95. package/.codex/skills/learn-investigate/SKILL.md +0 -3
  96. package/.codex/skills/learn-retro/SKILL.md +0 -2
  97. package/.codex/skills/maestro/SKILL.md +34 -13
  98. package/.codex/skills/maestro-amend/SKILL.md +0 -2
  99. package/.codex/skills/maestro-analyze/SKILL.md +36 -6
  100. package/.codex/skills/maestro-blueprint/SKILL.md +0 -4
  101. package/.codex/skills/maestro-brainstorm/SKILL.md +46 -6
  102. package/.codex/skills/maestro-collab/SKILL.md +14 -1
  103. package/.codex/skills/maestro-companion/SKILL.md +0 -2
  104. package/.codex/skills/maestro-execute/SKILL.md +25 -3
  105. package/.codex/skills/maestro-fork/SKILL.md +0 -2
  106. package/.codex/skills/maestro-grill/SKILL.md +9 -1
  107. package/.codex/skills/maestro-next/SKILL.md +12 -5
  108. package/.codex/skills/maestro-plan/SKILL.md +43 -5
  109. package/.codex/skills/maestro-ralph/SKILL.md +10 -3
  110. package/.codex/skills/maestro-ralph-execute/SKILL.md +51 -10
  111. package/.codex/skills/maestro-roadmap/SKILL.md +30 -3
  112. package/.codex/skills/manage-wiki/SKILL.md +0 -2
  113. package/.codex/skills/odyssey-debug/SKILL.md +0 -2
  114. package/.codex/skills/odyssey-improve/SKILL.md +0 -6
  115. package/.codex/skills/odyssey-review-test-fix/SKILL.md +0 -3
  116. package/.codex/skills/odyssey-ui/SKILL.md +0 -3
  117. package/.codex/skills/quality-review/SKILL.md +9 -0
  118. package/.codex/skills/spec-setup/SKILL.md +0 -2
  119. package/.codex/skills/team-coordinate/SKILL.md +0 -3
  120. package/.codex/skills/team-lifecycle-v4/instructions/agent-instruction.md +0 -2
  121. package/README.md +28 -5
  122. package/README.zh-CN.md +28 -5
  123. package/chains/_intent-map.json +36 -0
  124. package/chains/blueprint-driven.json +49 -0
  125. package/chains/grill-driven.json +51 -0
  126. package/dashboard/dist-server/dashboard/src/server/agents/adapter-factory.js +4 -0
  127. package/dashboard/dist-server/dashboard/src/server/agents/adapter-factory.js.map +1 -1
  128. package/dashboard/dist-server/dashboard/src/server/agents/api-explore-adapter.d.ts +6 -0
  129. package/dashboard/dist-server/dashboard/src/server/agents/api-explore-adapter.js +36 -0
  130. package/dashboard/dist-server/dashboard/src/server/agents/api-explore-adapter.js.map +1 -0
  131. package/dashboard/dist-server/dashboard/src/server/agents/stream-json-adapter.d.ts +1 -1
  132. package/dashboard/dist-server/dashboard/src/server/agents/stream-json-adapter.js.map +1 -1
  133. package/dashboard/dist-server/dashboard/src/server/wiki/embedding.d.ts +82 -0
  134. package/dashboard/dist-server/dashboard/src/server/wiki/embedding.js +444 -0
  135. package/dashboard/dist-server/dashboard/src/server/wiki/embedding.js.map +1 -0
  136. package/dashboard/dist-server/dashboard/src/server/wiki/search.d.ts +47 -1
  137. package/dashboard/dist-server/dashboard/src/server/wiki/search.js +426 -19
  138. package/dashboard/dist-server/dashboard/src/server/wiki/search.js.map +1 -1
  139. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js +16 -0
  140. package/dashboard/dist-server/dashboard/src/server/wiki/stress.test.js.map +1 -1
  141. package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.d.ts +11 -0
  142. package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js +492 -1
  143. package/dashboard/dist-server/dashboard/src/server/wiki/virtual-wiki-adapters.js.map +1 -1
  144. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.d.ts +18 -0
  145. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js +192 -9
  146. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.js.map +1 -1
  147. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.test.js +42 -0
  148. package/dashboard/dist-server/dashboard/src/server/wiki/wiki-indexer.test.js.map +1 -1
  149. package/dashboard/dist-server/dashboard/src/shared/constants.js +2 -0
  150. package/dashboard/dist-server/dashboard/src/shared/constants.js.map +1 -1
  151. package/dashboard/dist-server/shared/agent-types.d.ts +1 -1
  152. package/dashboard/dist-server/src/commands/hooks.d.ts +3 -0
  153. package/dashboard/dist-server/src/commands/hooks.js +60 -9
  154. package/dashboard/dist-server/src/commands/hooks.js.map +1 -1
  155. package/dashboard/dist-server/src/graph/kg/extraction/code/code-extractor.js +1 -1
  156. package/dashboard/dist-server/src/graph/kg/extraction/code/code-extractor.js.map +1 -1
  157. package/dashboard/dist-server/src/graph/kg/extraction/knowledge/domain-extractor.js +4 -2
  158. package/dashboard/dist-server/src/graph/kg/extraction/knowledge/domain-extractor.js.map +1 -1
  159. package/dashboard/dist-server/src/graph/kg/extraction/knowledge-extractor-registry.js +6 -1
  160. package/dashboard/dist-server/src/graph/kg/extraction/knowledge-extractor-registry.js.map +1 -1
  161. package/dashboard/dist-server/src/graph/kg/extraction/orchestrator.js +2 -6
  162. package/dashboard/dist-server/src/graph/kg/extraction/orchestrator.js.map +1 -1
  163. package/dashboard/dist-server/src/hooks/session-context.js +37 -1
  164. package/dashboard/dist-server/src/hooks/session-context.js.map +1 -1
  165. package/dashboard/dist-server/src/search/daemon.d.ts +42 -0
  166. package/dashboard/dist-server/src/search/daemon.js +180 -0
  167. package/dashboard/dist-server/src/search/daemon.js.map +1 -0
  168. package/dashboard/dist-server/src/tools/domain-loader.d.ts +4 -1
  169. package/dashboard/dist-server/src/tools/domain-loader.js +56 -25
  170. package/dashboard/dist-server/src/tools/domain-loader.js.map +1 -1
  171. package/dashboard/dist-server/src/tools/domain-schema.d.ts +1 -1
  172. package/dashboard/dist-server/src/tools/domain-schema.js +1 -1
  173. package/dist/shared/agent-types.d.ts +1 -1
  174. package/dist/shared/agent-types.d.ts.map +1 -1
  175. package/dist/src/agents/api-explore/agent-loop.d.ts +14 -0
  176. package/dist/src/agents/api-explore/agent-loop.d.ts.map +1 -0
  177. package/dist/src/agents/api-explore/agent-loop.js +86 -0
  178. package/dist/src/agents/api-explore/agent-loop.js.map +1 -0
  179. package/dist/src/agents/api-explore/config.d.ts +42 -0
  180. package/dist/src/agents/api-explore/config.d.ts.map +1 -0
  181. package/dist/src/agents/api-explore/config.js +99 -0
  182. package/dist/src/agents/api-explore/config.js.map +1 -0
  183. package/dist/src/agents/api-explore/index.d.ts +2 -0
  184. package/dist/src/agents/api-explore/index.d.ts.map +1 -0
  185. package/dist/src/agents/api-explore/index.js +102 -0
  186. package/dist/src/agents/api-explore/index.js.map +1 -0
  187. package/dist/src/agents/api-explore/llm.d.ts +28 -0
  188. package/dist/src/agents/api-explore/llm.d.ts.map +1 -0
  189. package/dist/src/agents/api-explore/llm.js +48 -0
  190. package/dist/src/agents/api-explore/llm.js.map +1 -0
  191. package/dist/src/agents/api-explore/prompt-parser.d.ts +23 -0
  192. package/dist/src/agents/api-explore/prompt-parser.d.ts.map +1 -0
  193. package/dist/src/agents/api-explore/prompt-parser.js +73 -0
  194. package/dist/src/agents/api-explore/prompt-parser.js.map +1 -0
  195. package/dist/src/agents/api-explore/runner.d.ts +65 -0
  196. package/dist/src/agents/api-explore/runner.d.ts.map +1 -0
  197. package/dist/src/agents/api-explore/runner.js +196 -0
  198. package/dist/src/agents/api-explore/runner.js.map +1 -0
  199. package/dist/src/agents/api-explore/session.d.ts +23 -0
  200. package/dist/src/agents/api-explore/session.d.ts.map +1 -0
  201. package/dist/src/agents/api-explore/session.js +57 -0
  202. package/dist/src/agents/api-explore/session.js.map +1 -0
  203. package/dist/src/agents/api-explore/stream-json-emitter.d.ts +10 -0
  204. package/dist/src/agents/api-explore/stream-json-emitter.d.ts.map +1 -0
  205. package/dist/src/agents/api-explore/stream-json-emitter.js +19 -0
  206. package/dist/src/agents/api-explore/stream-json-emitter.js.map +1 -0
  207. package/dist/src/agents/api-explore/system-prompt.d.ts +2 -0
  208. package/dist/src/agents/api-explore/system-prompt.d.ts.map +1 -0
  209. package/dist/src/agents/api-explore/system-prompt.js +31 -0
  210. package/dist/src/agents/api-explore/system-prompt.js.map +1 -0
  211. package/dist/src/agents/api-explore/tools.d.ts +11 -0
  212. package/dist/src/agents/api-explore/tools.d.ts.map +1 -0
  213. package/dist/src/agents/api-explore/tools.js +168 -0
  214. package/dist/src/agents/api-explore/tools.js.map +1 -0
  215. package/dist/src/agents/cli-agent-runner.d.ts.map +1 -1
  216. package/dist/src/agents/cli-agent-runner.js +3 -0
  217. package/dist/src/agents/cli-agent-runner.js.map +1 -1
  218. package/dist/src/cli.js +4 -0
  219. package/dist/src/cli.js.map +1 -1
  220. package/dist/src/commands/domain.d.ts.map +1 -1
  221. package/dist/src/commands/domain.js +5 -4
  222. package/dist/src/commands/domain.js.map +1 -1
  223. package/dist/src/commands/explore.d.ts +7 -0
  224. package/dist/src/commands/explore.d.ts.map +1 -0
  225. package/dist/src/commands/explore.js +201 -0
  226. package/dist/src/commands/explore.js.map +1 -0
  227. package/dist/src/commands/hooks.d.ts +3 -0
  228. package/dist/src/commands/hooks.d.ts.map +1 -1
  229. package/dist/src/commands/hooks.js +60 -9
  230. package/dist/src/commands/hooks.js.map +1 -1
  231. package/dist/src/commands/install.d.ts.map +1 -1
  232. package/dist/src/commands/install.js +42 -9
  233. package/dist/src/commands/install.js.map +1 -1
  234. package/dist/src/commands/search.d.ts +26 -4
  235. package/dist/src/commands/search.d.ts.map +1 -1
  236. package/dist/src/commands/search.js +359 -93
  237. package/dist/src/commands/search.js.map +1 -1
  238. package/dist/src/commands/update.d.ts.map +1 -1
  239. package/dist/src/commands/update.js +37 -21
  240. package/dist/src/commands/update.js.map +1 -1
  241. package/dist/src/commands/workspace.d.ts.map +1 -1
  242. package/dist/src/commands/workspace.js +9 -3
  243. package/dist/src/commands/workspace.js.map +1 -1
  244. package/dist/src/config/cli-tools-defaults.json +2 -1
  245. package/dist/src/core/install-executor.d.ts.map +1 -1
  246. package/dist/src/core/install-executor.js +6 -3
  247. package/dist/src/core/install-executor.js.map +1 -1
  248. package/dist/src/graph/kg/extraction/code/code-extractor.js +1 -1
  249. package/dist/src/graph/kg/extraction/code/code-extractor.js.map +1 -1
  250. package/dist/src/graph/kg/extraction/knowledge/domain-extractor.d.ts.map +1 -1
  251. package/dist/src/graph/kg/extraction/knowledge/domain-extractor.js +4 -2
  252. package/dist/src/graph/kg/extraction/knowledge/domain-extractor.js.map +1 -1
  253. package/dist/src/graph/kg/extraction/knowledge-extractor-registry.d.ts.map +1 -1
  254. package/dist/src/graph/kg/extraction/knowledge-extractor-registry.js +6 -1
  255. package/dist/src/graph/kg/extraction/knowledge-extractor-registry.js.map +1 -1
  256. package/dist/src/graph/kg/extraction/orchestrator.d.ts.map +1 -1
  257. package/dist/src/graph/kg/extraction/orchestrator.js +2 -6
  258. package/dist/src/graph/kg/extraction/orchestrator.js.map +1 -1
  259. package/dist/src/graph/kg/surface/cli.d.ts.map +1 -1
  260. package/dist/src/graph/kg/surface/cli.js +5 -2
  261. package/dist/src/graph/kg/surface/cli.js.map +1 -1
  262. package/dist/src/hooks/session-context.d.ts.map +1 -1
  263. package/dist/src/hooks/session-context.js +37 -1
  264. package/dist/src/hooks/session-context.js.map +1 -1
  265. package/dist/src/ralph/cmd-next.d.ts.map +1 -1
  266. package/dist/src/ralph/cmd-next.js +66 -4
  267. package/dist/src/ralph/cmd-next.js.map +1 -1
  268. package/dist/src/ralph/status-schema.d.ts +1 -0
  269. package/dist/src/ralph/status-schema.d.ts.map +1 -1
  270. package/dist/src/search/daemon.d.ts +43 -0
  271. package/dist/src/search/daemon.d.ts.map +1 -0
  272. package/dist/src/search/daemon.js +180 -0
  273. package/dist/src/search/daemon.js.map +1 -0
  274. package/dist/src/tools/__tests__/domain-search-debug.js +3 -1
  275. package/dist/src/tools/__tests__/domain-search-debug.js.map +1 -1
  276. package/dist/src/tools/domain-loader.d.ts +4 -1
  277. package/dist/src/tools/domain-loader.d.ts.map +1 -1
  278. package/dist/src/tools/domain-loader.js +56 -25
  279. package/dist/src/tools/domain-loader.js.map +1 -1
  280. package/dist/src/tools/domain-schema.d.ts +1 -1
  281. package/dist/src/tools/domain-schema.js +1 -1
  282. package/dist/src/utils/update-notices.js +12 -0
  283. package/dist/src/utils/update-notices.js.map +1 -1
  284. package/package.json +5 -1
  285. package/shared/agent-types.ts +1 -1
  286. package/templates/search-tools.md +22 -6
  287. package/workflows/agy-instructions.md +0 -4
  288. package/workflows/analyze.md +2 -2
  289. package/workflows/boundary-grill.md +50 -0
  290. package/workflows/brainstorm.md +6 -5
  291. package/workflows/claude-instructions.md +29 -2
  292. package/workflows/codebase-rebuild.md +0 -1
  293. package/workflows/codex-instructions.md +97 -14
  294. package/workflows/command-authoring.md +1 -1
  295. package/workflows/debug.md +0 -4
  296. package/workflows/domain-add.md +115 -0
  297. package/workflows/execute.md +7 -0
  298. package/workflows/explore-usage.md +128 -0
  299. package/workflows/finish-work.md +2 -6
  300. package/workflows/fork.md +0 -4
  301. package/workflows/grill.md +14 -1
  302. package/workflows/harvest.md +0 -3
  303. package/workflows/impeccable/audit.md +0 -2
  304. package/workflows/impeccable/codex.md +0 -4
  305. package/workflows/init.md +9 -0
  306. package/workflows/interview-mechanics.md +3 -2
  307. package/workflows/issue-analyze.md +0 -5
  308. package/workflows/issue-gaps-analyze.codex.md +0 -6
  309. package/workflows/knowledge-audit.md +0 -4
  310. package/workflows/learn.md +0 -6
  311. package/workflows/maestro.codex.md +0 -4
  312. package/workflows/maestro.md +31 -18
  313. package/workflows/merge.md +0 -4
  314. package/workflows/milestone-complete.md +0 -4
  315. package/workflows/overlays.md +0 -10
  316. package/workflows/plan.md +2 -3
  317. package/workflows/roadmap-common.md +0 -4
  318. package/workflows/tdd.md +0 -2
  319. package/workflows/tools-spec.md +1 -7
  320. package/workflows/ui-codify-extract.md +0 -2
  321. package/workflows/ui-codify-package.md +0 -2
  322. package/.agents/skills/maestro-ralph-beta/SKILL.md +0 -882
  323. package/.agy/skills/maestro-ralph-beta/SKILL.md +0 -878
  324. package/.claude/commands/maestro-ralph-beta.md +0 -880
  325. package/.codex/skills/maestro-ralph-beta/SKILL.md +0 -883
@@ -1 +1 @@
1
- {"version":3,"file":"virtual-wiki-adapters.js","sourceRoot":"","sources":["../../../../../src/server/wiki/virtual-wiki-adapters.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"virtual-wiki-adapters.js","sourceRoot":"","sources":["../../../../../src/server/wiki/virtual-wiki-adapters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAKlD,SAAS,OAAO,CAAC,CAAS;IACxB,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED;;;;GAIG;AAEH,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;AACnC,SAAS,IAAI,CAAC,GAAW,EAAE,OAAe;IACxC,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;QAAE,OAAO;IAC9B,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClB,sCAAsC;IACtC,OAAO,CAAC,IAAI,CAAC,kBAAkB,OAAO,EAAE,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;AAChD,CAAC;AAED,SAAS,KAAK,CAAC,KAAc;IAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IAChE,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACxD,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;IACvC,CAAC;IACD,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;AACnC,CAAC;AAED,SAAS,cAAc,CAAC,GAAY;IAClC,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,UAAU,CAAC;QAChB,KAAK,QAAQ;YACX,OAAO,WAAW,CAAC;QACrB,KAAK,UAAU;YACb,OAAO,UAAU,CAAC;QACpB,KAAK,aAAa;YAChB,OAAO,QAAQ,CAAC;QAClB;YACE,OAAO,OAAO,CAAC;IACnB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,GAAY,EACZ,UAAkB,EAClB,IAAY;IAEZ,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACjD,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1B,IAAI,CAAC,EAAE,EAAE,CAAC;QACR,IAAI,CAAC,eAAe,UAAU,EAAE,EAAE,gBAAgB,UAAU,IAAI,IAAI,aAAa,CAAC,CAAC;QACnF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,SAAS,EAAE,EAAE,CAAC;IACjD,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IAC5C,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAEtC,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,IAAI,SAAS;QAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpC,IAAI,QAAQ;QAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAElC,OAAO;QACL,EAAE,EAAE,SAAS,EAAE,EAAE;QACjB,IAAI,EAAE,OAAO;QACb,KAAK;QACL,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;QAClC,IAAI;QACJ,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC;QAChC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;QAC5B,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC;QAC5B,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE;QACnD,IAAI,EAAE,EAAE;QACR,GAAG,EAAE,GAAG;QACR,GAAG,EAAE;YACH,SAAS;YACT,QAAQ;YACR,SAAS,EAAE,CAAC,CAAC,MAAM;YACnB,SAAS,EAAE,CAAC,CAAC,SAAS;SACvB;QACD,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,SAAS,IAAI,IAAI;QAC3B,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,IAAI;QACf,SAAS,EAAE,EAAE;QACb,MAAM,EAAE,IAAI;KAEb,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,OAAe,EACf,OAA6E,EAC7E,OAAe;IAEf,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,GAAG,GAAgB,EAAE,CAAC;IAC5B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,SAAS;QAC3B,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,YAAY,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,mBAAmB,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5E,SAAS;QACX,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,IAAI,KAAK;YAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,OAAe,EACf,OAA6D,EAC7D,OAAe;IAEf,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,CAAC,YAAY,OAAO,EAAE,EAAE,mBAAmB,OAAO,EAAE,CAAC,CAAC;QAC1D,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,CAAC;QACH,OAAO,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,gBAAgB,OAAO,EAAE,EAAE,qBAAqB,OAAO,KAAM,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3F,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAcD,MAAM,kBAAkB,GAAqB;IAC3C,iBAAiB,EAAE,EAAE;IACrB,gBAAgB,EAAE,GAAG;IACrB,OAAO,EAAE,EAAE;CACZ,CAAC;AAEF,MAAM,qBAAqB,GAA2B;IACpD,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,MAAM;IACf,SAAS,EAAE,MAAM;IACjB,SAAS,EAAE,MAAM;IACjB,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,QAAQ;IAClB,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,QAAQ;IACf,SAAS,EAAE,QAAQ;IACnB,IAAI,EAAE,QAAQ;IACd,IAAI,EAAE,QAAQ;IACd,QAAQ,EAAE,QAAQ;IAClB,QAAQ,EAAE,QAAQ;IAClB,SAAS,EAAE,QAAQ;IACnB,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,MAAM;IACf,OAAO,EAAE,MAAM;IACf,GAAG,EAAE,QAAQ;IACb,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF,SAAS,UAAU,CAAC,QAAgB;IAClC,OAAO,qBAAqB,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC;AACnD,CAAC;AAED,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AAC/E,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,MAAe,EACf,UAAkB,EAClB,OAAyB,kBAAkB;IAE3C,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IACrD,MAAM,KAAK,GAAG,MAAiC,CAAC;IAChD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;IAChC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;IAChC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC;IAClC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;IAC9B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAElC,MAAM,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IAC5C,MAAM,GAAG,GAAgB,EAAE,CAAC;IAE5B,qEAAqE;IACrE,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAuB,CAAC;IAChD,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,MAAM;YAAE,SAAS;QACrC,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACb,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC/B,CAAC;IAED,eAAe;IACf,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;QACtB,IAAI,CAAC,CAAC,EAAE,EAAE;YAAE,SAAS;QACrB,MAAM,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;QAC3C,MAAM,UAAU,GAAG,SAAS;aACzB,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC;aAChC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAE1C,GAAG,CAAC,IAAI,CAAC;YACP,EAAE,EAAE,MAAM,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;YAC5B,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE;YACrB,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC;YAC1D,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;YACtE,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,UAAU;YACnB,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;YAC7C,IAAI,EAAE,EAAE;YACR,GAAG,EAAE,CAAC;YACN,GAAG,EAAE;gBACH,WAAW,EAAE,SAAS;gBACtB,QAAQ,EAAE,CAAC,CAAC,EAAE;gBACd,QAAQ,EAAE,CAAC,CAAC,IAAI;gBAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,IAAI;gBAC5B,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,IAAI;gBAChC,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC3B,MAAM,EAAE,MAAM,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE;oBACpC,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC;oBACrB,SAAS,EAAE,CAAC,CAAC,SAAS;iBACvB,CAAC,CAAC;aACJ;YACD,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;YAC5B,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,yBAAyB;YACpC,SAAS,EAAE,CAAC,CAAC,EAAE;YACf,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;IACL,CAAC;IAED,gBAAgB;IAChB,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,EAAE,EAAE;YAAE,SAAS;QACrB,GAAG,CAAC,IAAI,CAAC;YACP,EAAE,EAAE,YAAY,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;YAClC,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE;YACrB,OAAO,EAAE,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC;YAC9D,IAAI,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC;YACxB,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;YAC7F,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;YAC7C,IAAI,EAAE,EAAE;YACR,GAAG,EAAE,CAAC;YACN,GAAG,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;YACjD,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,MAAM;YAChB,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,yBAAyB;YACpC,SAAS,EAAE,CAAC,CAAC,EAAE;YACf,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;IACL,CAAC;IAED,yCAAyC;IACzC,IAAI,UAAU,GAAkB,IAAI,CAAC;IACrC,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACxB,IAAI,CAAC,IAAI,EAAE,KAAK;YAAE,SAAS;QAC3B,MAAM,MAAM,GAAG,WAAW,IAAI,CAAC,KAAK,EAAE,CAAC;QACvC,GAAG,CAAC,IAAI,CAAC;YACP,EAAE,EAAE,MAAM;YACV,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,QAAQ,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK,EAAE;YAC1C,OAAO,EAAE,CAAC,IAAI,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC;YACjE,IAAI,EAAE,CAAC,IAAI,EAAE,SAAS,CAAC;YACvB,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC;YAChG,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;YAC7C,IAAI,EAAE,EAAE;YACR,GAAG,EAAE,IAAI;YACT,GAAG,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE;YACpG,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,MAAM;YAChB,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,yBAAyB;YACpC,SAAS,EAAE,aAAa,IAAI,CAAC,KAAK,EAAE;YACpC,MAAM,EAAE,UAAU;SACnB,CAAC,CAAC;QACH,UAAU,GAAG,MAAM,CAAC;IACtB,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,4BAA4B,CAC1C,SAAsB,EACtB,eAA4B;IAE5B,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC7C,KAAK,MAAM,CAAC,IAAI,eAAe,EAAE,CAAC;QAChC,IAAI,CAAC,CAAC,GAAG,CAAC,WAAW,KAAK,oBAAoB;YAAE,SAAS;QACzD,KAAK,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAa,EAAE,CAAC;YAC1D,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE,CAAC;QAC3B,IAAI,EAAE,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS;YAAE,SAAS;QAC/C,MAAM,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,QAAyB,CAAC;QAC5C,IAAI,CAAC,EAAE;YAAE,SAAS;QAClB,MAAM,IAAI,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;QAClE,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtD,EAAE,CAAC,GAAG,CAAC,mBAAmB,GAAG,IAAI,CAAC;QACpC,CAAC;IACH,CAAC;AACH,CAAC;AAoDD,SAAS,iBAAiB,CAAC,GAAuB;IAChD,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,QAAQ,CAAC,CAAC,OAAO,QAAQ,CAAC;QAC/B,KAAK,WAAW,CAAC,CAAC,OAAO,WAAW,CAAC;QACrC,KAAK,SAAS,CAAC;QACf,KAAK,aAAa;YAChB,OAAO,OAAO,CAAC;QACjB,KAAK,UAAU,CAAC,CAAC,OAAO,UAAU,CAAC;QACnC,OAAO,CAAC,CAAC,OAAO,QAAQ,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,MAAe,EAAE,UAAkB;IACvE,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IACrD,MAAM,GAAG,GAAG,MAA0B,CAAC;IACvC,MAAM,GAAG,GAAgB,EAAE,CAAC;IAC5B,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAEnC,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC;QACrC,IAAI,CAAC,CAAC,EAAE,EAAE;YAAE,SAAS;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;QACrC,MAAM,UAAU,GAAG,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC;QACvC,GAAG,CAAC,IAAI,CAAC;YACP,EAAE,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE;YACzC,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE;YACrB,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,WAAW,OAAO,CAAC,CAAC,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,EAAE;YAC1I,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,WAAW,EAAE,GAAG,UAAU,CAAC,CAAC,MAAM,CAAC,OAAO,CAAa;YACxE,MAAM,EAAE,QAAQ;YAChB,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,YAAY,IAAI,GAAG,CAAC,YAAY,CAAC;YAClD,OAAO,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YAChE,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,0BAA0B,IAAI,KAAK,EAAE;YACtE,IAAI,EAAE,EAAE;YACR,GAAG,EAAE,CAAC;YACN,GAAG,EAAE,EAAE,WAAW,EAAE,oBAAoB,EAAE,aAAa,EAAE,CAAC,CAAC,cAAc,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE;YACzH,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,MAAM;YAChB,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,yBAAyB;YACpC,SAAS,EAAE,CAAC,CAAC,EAAE;YACf,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;QACnC,IAAI,CAAC,CAAC,EAAE,EAAE;YAAE,SAAS;QACrB,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,CAAC,CAAC,aAAa,IAAI,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC;QACvC,GAAG,CAAC,IAAI,CAAC;YACP,EAAE,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE;YACzC,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE;YACrB,OAAO,EAAE,GAAG,OAAO,CAAC,MAAM,gBAAgB,MAAM,CAAC,MAAM,gBAAgB,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;YAC5G,IAAI,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAClD,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC;YACnC,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,EAAE;YACX,OAAO,EAAE;gBACP,GAAG,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;gBACzD,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;aACxD;YACD,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,yBAAyB,IAAI,KAAK,EAAE;YACrE,IAAI,EAAE,EAAE;YACR,GAAG,EAAE,CAAC;YACN,GAAG,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE;YAClF,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,MAAM;YAChB,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,yBAAyB;YACpC,SAAS,EAAE,CAAC,CAAC,EAAE;YACf,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC;QACvC,IAAI,CAAC,CAAC,EAAE,EAAE;YAAE,SAAS;QACrB,GAAG,CAAC,IAAI,CAAC;YACP,EAAE,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE;YACxC,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE;YACtB,OAAO,EAAE,CAAC,CAAC,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,QAAQ,IAAI,EAAE,cAAc,CAAC,IAAI,EAAE;YACvG,IAAI,EAAE,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAC3F,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,MAAM,CAAC;YACnC,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;YAC5E,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;YAC7C,IAAI,EAAE,EAAE;YACR,GAAG,EAAE,CAAC;YACN,GAAG,EAAE,EAAE,WAAW,EAAE,sBAAsB,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,kBAAkB,EAAE,CAAC,CAAC,mBAAmB,EAAE;YAC7G,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,QAAQ;YAClB,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,yBAAyB;YACpC,SAAS,EAAE,CAAC,CAAC,EAAE;YACf,MAAM,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;SAC5E,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,sBAAsB,IAAI,EAAE,EAAE,CAAC;QACjD,IAAI,CAAC,CAAC,EAAE,EAAE;YAAE,SAAS;QACrB,MAAM,OAAO,GAAG,CAAC,CAAC,aAAa,IAAI,EAAE,CAAC;QACtC,GAAG,CAAC,IAAI,CAAC;YACP,EAAE,EAAE,gBAAgB,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE;YACxC,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,EAAE;YACtB,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;YACzC,IAAI,EAAE,CAAC,KAAK,EAAE,GAAG,OAAO,CAAC;YACzB,MAAM,EAAE,WAAW;YACnB,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,EAAE;YACX,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;YAC/D,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;YAC7C,IAAI,EAAE,EAAE;YACR,GAAG,EAAE,CAAC;YACN,GAAG,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE;YAC5D,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,MAAM;YAChB,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,yBAAyB;YACpC,SAAS,EAAE,CAAC,CAAC,EAAE;YACf,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;IACL,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAqED,MAAM,qBAAqB,GAA2B;IACpD,UAAU,EAAE,MAAM;IAClB,SAAS,EAAE,MAAM;IACjB,OAAO,EAAE,MAAM;IACf,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF,SAAS,gBAAgB,CAAC,MAA8B;IACtD,OAAO,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC;AAC1D,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAoB,EAAE,IAA+B;IAChF,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,IAAI,EAAE,MAAM,EAAE,iBAAiB,CAAC;IAChD,IAAI,OAAO;QAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAC/C,MAAM,YAAY,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC,CAAC;IACjD,MAAM,eAAe,GAAG,IAAI,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC,CAAC;IACvD,MAAM,aAAa,GAAG,IAAI,EAAE,cAAc,EAAE,MAAM,IAAI,CAAC,CAAC;IACxD,IAAI,YAAY,IAAI,eAAe,IAAI,aAAa,EAAE,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,GAAG,YAAY,eAAe,eAAe,kBAAkB,aAAa,iBAAiB,CAAC,CAAC;IAC5G,CAAC;IACD,IAAI,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;QACxB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;QAC7B,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;QACvG,IAAI,KAAK,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC;IACtD,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;IAChD,IAAI,UAAU,IAAI,CAAC,OAAO;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IACjE,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC3B,CAAC;AAED,SAAS,gBAAgB,CACvB,WAAmB,EACnB,MAA8B,EAC9B,IAA+B;IAE/B,MAAM,IAAI,GAAa,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;IACxD,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,WAAW,IAAI,EAAE,EAAE,CAAC;QACxC,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,GAAG,EAAE;YAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAe,EACf,UAAkB,EAClB,OAAkC,IAAI;IAEtC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IACrD,MAAM,IAAI,GAAG,MAAwB,CAAC;IACtC,MAAM,MAAM,GAA2B,IAAI,CAAC,SAAS,EAAE,MAAM,IAAI,QAAQ,CAAC;IAC1E,IAAI,MAAM,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IAEnC,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,IAAI,SAAS,CAAC;IACnD,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,YAAY,IAAI,UAAU,CAAC;IACrE,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAC;IAErB,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,IAAI,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAEnF,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,IAAI,IAAI,CAAC,SAAS,EAAE,gBAAgB,EAAE,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC/D,CAAC;IACD,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC;QAC1C,IAAI,GAAG,EAAE,IAAI;YAAE,OAAO,CAAC,IAAI,CAAC,eAAe,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,CAAC;YACN,EAAE,EAAE,WAAW,WAAW,IAAI,IAAI,EAAE;YACpC,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,GAAG,WAAW,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,EAAE;YAClD,OAAO,EAAE,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC;YACxC,IAAI,EAAE,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC;YACjD,MAAM,EAAE,gBAAgB,CAAC,MAAM,CAAC;YAChC,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,UAAU;YACnB,OAAO;YACP,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;YAC7C,IAAI,EAAE,EAAE;YACR,GAAG,EAAE,IAAI;YACT,GAAG,EAAE;gBACH,WAAW,EAAE,SAAS;gBACtB,WAAW;gBACX,eAAe,EAAE,MAAM;gBACvB,UAAU;gBACV,eAAe,EAAE,IAAI,CAAC,SAAS,EAAE,gBAAgB,IAAI,IAAI;gBACzD,WAAW,EAAE,IAAI,CAAC,YAAY,IAAI,EAAE;gBACpC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI;gBAC3B,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;gBACzC,eAAe,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC;gBAC/C,iBAAiB,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,IAAI,CAAC;gBACpD,gBAAgB,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;aAClD;YACD,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,qBAAqB,CAAC,WAAW,CAAC,IAAI,IAAI;YACpD,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,WAAW;YACtB,SAAS,EAAE,IAAI,CAAC,UAAU,IAAI,IAAI;YAClC,MAAM,EAAE,IAAI;SACb,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,cAAsB,EACtB,cAAsB;IAEtB,IAAI,UAAkB,CAAC;IACvB,IAAI,CAAC;QACH,UAAU,GAAG,MAAM,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,IAAI,aAAsB,CAAC;IAC3B,IAAI,CAAC;QACH,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,IAAI,CAAC,YAAY,cAAc,EAAE,EAAE,mBAAmB,cAAc,EAAE,CAAC,CAAC;QACxE,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,wEAAwE;IACxE,IAAI,IAAI,GAA8B,IAAI,CAAC;IAC3C,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,CAAC,gBAAgB,EAAE,sBAAsB,CAAC,CAAC;IAClF,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACnC,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,IAAI,GAAG,MAA4B,CAAC;IAChF,CAAC;IAAC,MAAM,CAAC;QACP,sBAAsB;IACxB,CAAC;IAED,IAAI,CAAC;QACH,OAAO,mBAAmB,CAAC,aAAa,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,gBAAgB,cAAc,EAAE,EAAE,qBAAqB,cAAc,KAAM,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QACzG,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,4EAA4E;AAC5E,6EAA6E;AAC7E,oDAAoD;AAEpD,MAAM,sBAAsB,GAAG,GAAG,GAAG,IAAI,CAAC;AAC1C,MAAM,sBAAsB,GAAG,CAAC,GAAG,IAAI,CAAC;AACxC,MAAM,gBAAgB,GAAG,EAAE,CAAC;AAC5B,MAAM,gBAAgB,GAAG,GAAG,CAAC;AAE7B,KAAK,UAAU,eAAe,CAAC,OAAe,EAAE,QAAQ,GAAG,sBAAsB;IAC/E,IAAI,MAAM,CAAC;IACX,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;QAClC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC/D,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,SAAS,KAAK,QAAQ;YAAE,KAAK,CAAC,GAAG,EAAE,CAAC;QACxC,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,cAAc,CAAC,OAAe;IAC3C,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,OAAO,EAAE,sBAAsB,CAAC,CAAC;IACrE,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAC;YACxD,IAAI,GAAG,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBAChC,MAAM,CAAC,GAAG,GAAG,CAAC,OAAkC,CAAC;gBACjD,OAAQ,CAAC,EAAE,GAAc,IAAI,IAAI,CAAC;YACpC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YAAC,SAAS;QAAC,CAAC;IACvB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe;IACvC,OAAO,OAAO;SACX,OAAO,CAAC,4DAA4D,EAAE,EAAE,CAAC;SACzE,OAAO,CAAC,kDAAkD,EAAE,EAAE,CAAC;SAC/D,OAAO,CAAC,0CAA0C,EAAE,IAAI,CAAC;SACzD,OAAO,CAAC,wCAAwC,EAAE,KAAK,CAAC;SACxD,OAAO,CAAC,kDAAkD,EAAE,EAAE,CAAC;SAC/D,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,cAAc,GAAG,CAAC,SAAS,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,uBAAuB,CAAC,CAAC;AAC3G,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAE5F,SAAS,cAAc,CAAC,OAAe;IACrC,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IACzB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAChC,IAAI,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,KAAK,MAAM,CAAC,IAAI,cAAc,EAAE,CAAC;QAAC,IAAI,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,CAAC;IAAC,CAAC;IACrE,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,sBAAsB,GAAG,CAAC,0BAA0B,EAAE,uBAAuB,EAAE,UAAU,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,yBAAyB,CAAC,CAAC;AAEzK,SAAS,mBAAmB,CAAC,GAAW;IACtC,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QACrB,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAC/B,KAAK,MAAM,CAAC,IAAI,sBAAsB,EAAE,CAAC;YAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAAE,OAAO,IAAI,CAAC;QAAC,CAAC;IAChF,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI;QAAE,OAAO,IAAI,CAAC;IACnC,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACrB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAChC,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,eAAe,CAAC,OAAe;IACtC,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC3E,IAAI,SAAS;QAAE,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAChD,IAAI,UAAU,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1E,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,gBAAgB,CAAC,IAWzB;IACC,MAAM,KAAK,GAAa,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IAEhD,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClC,IAAI,IAAI,CAAC,WAAW;QAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzB,IAAI,IAAI,CAAC,MAAM;QAAE,SAAS,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACrD,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAChF,CAAC;IACD,SAAS,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;IACrC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAElC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QACvB,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO;YAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACrE,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS;IACzB,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED,4EAA4E;AAE5E,MAAM,UAAU,sBAAsB,CACpC,UAAoB,EACpB,UAAkB,EAClB,WAAmB;IAEnB,IAAI,SAAS,GAAkB,IAAI,CAAC;IACpC,IAAI,KAAK,GAAkB,IAAI,CAAC;IAChC,IAAI,GAAG,GAAkB,IAAI,CAAC;IAC9B,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,OAAO,GAAkB,IAAI,CAAC;IAClC,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IAErC,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,GAA4B,CAAC;QACjC,IAAI,CAAC;YAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,SAAS;QAAC,CAAC;QAEnD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAc,CAAC;QAEhC,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YACxB,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;YACvC,IAAI,CAAC,SAAS;gBAAE,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACtD,CAAC;QAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACpB,SAAS,EAAE,CAAC;YACZ,MAAM,GAAG,GAAG,GAAG,CAAC,OAA8C,CAAC;YAC/D,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YACvC,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAEnC,IAAI,CAAC,GAAG;gBAAE,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,CAAC,MAAM;gBAAE,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC;YACtD,IAAI,CAAC,SAAS;gBAAE,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACpD,IAAI,CAAC,OAAO,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;gBAAE,OAAO,GAAG,EAAE,CAAC;YACnD,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC;YAEhD,KAAK,MAAM,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC;gBAAE,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAEhE,IAAI,OAAO,CAAC,MAAM,GAAG,gBAAgB,IAAI,OAAO,EAAE,CAAC;gBACjD,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;gBACnE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC;oBAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtE,CAAC;QACH,CAAC;QAED,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACnC,IAAI,CAAC,MAAM,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;gBAAE,MAAM,GAAG,EAAE,CAAC;QAClD,CAAC;IACH,CAAC;IAED,IAAI,CAAC,SAAS,IAAI,SAAS,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE/C,MAAM,YAAY,GAAG,KAAK,IAAI,kBAAkB,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IACxE,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;IAEjC,MAAM,IAAI,GAAG,gBAAgB,CAAC;QAC5B,QAAQ,EAAE,aAAa;QACvB,KAAK,EAAE,YAAY;QACnB,WAAW;QACX,GAAG,EAAE,GAAG,IAAI,EAAE;QACd,MAAM;QACN,OAAO;QACP,MAAM;QACN,SAAS;QACT,OAAO;QACP,QAAQ,EAAE,CAAC,GAAG,UAAU,CAAC;KAC1B,CAAC,CAAC;IAEH,MAAM,cAAc,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3E,MAAM,IAAI,GAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC7C,IAAI,WAAW;QAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxC,IAAI,MAAM;QAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9B,KAAK,MAAM,GAAG,IAAI,cAAc;QAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEjD,OAAO;QACL,EAAE,EAAE,cAAc,IAAI,EAAE;QACxB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,YAAY;QACnB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,wBAAwB,SAAS,SAAS;QACpG,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QACvB,MAAM,EAAE,WAAW;QACnB,OAAO,EAAE,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC;QAC/B,OAAO,EAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC;QAC9B,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;QAC7C,IAAI;QACJ,GAAG,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC,GAAG,UAAU,CAAC,EAAE;QACxD,GAAG,EAAE;YACH,WAAW,EAAE,gBAAgB;YAC7B,SAAS;YACT,QAAQ,EAAE,QAAQ;YAClB,GAAG,EAAE,GAAG,IAAI,EAAE;YACd,SAAS,EAAE,MAAM;YACjB,SAAS;YACT,YAAY,EAAE,CAAC,GAAG,UAAU,CAAC;SAC9B;QACD,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,SAAS;QACnB,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,iBAAiB;QAC5B,SAAS,EAAE,SAAS;QACpB,MAAM,EAAE,IAAI;KACb,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,UAAkB,EAClB,WAAmB,EACnB,UAAkB,EAClB,QAAgB;IAEhB,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,GAAG,QAAQ,CAAC;IAClD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAG1D,MAAM,UAAU,GAAe,EAAE,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,GAAG,UAAU,IAAI,IAAI,EAAE,CAAC,CAAC;YAChD,IAAI,CAAC,CAAC,OAAO,IAAI,MAAM,IAAI,CAAC,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC;gBACxC,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YAAC,SAAS;QAAC,CAAC;IACvB,CAAC;IACD,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAE7C,MAAM,GAAG,GAAgB,EAAE,CAAC;IAC5B,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,GAAG,UAAU,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;QAC7C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QACjC,MAAM,KAAK,GAAG,sBAAsB,CAAC,KAAK,EAAE,sBAAsB,WAAW,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC;QACxG,IAAI,KAAK;YAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,4EAA4E;AAE5E,MAAM,UAAU,iBAAiB,CAC/B,UAAoB,EACpB,UAAkB,EAClB,UAAyB;IAEzB,IAAI,SAAS,GAAkB,IAAI,CAAC;IACpC,IAAI,GAAG,GAAkB,IAAI,CAAC;IAC9B,IAAI,UAAU,GAAkB,IAAI,CAAC;IACrC,IAAI,KAAK,GAAkB,IAAI,CAAC;IAChC,IAAI,OAAO,GAAkB,IAAI,CAAC;IAClC,IAAI,MAAM,GAAkB,IAAI,CAAC;IACjC,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,GAA4B,CAAC;QACjC,IAAI,CAAC;YAAC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,SAAS;QAAC,CAAC;QAEnD,MAAM,IAAI,GAAG,GAAG,CAAC,IAAc,CAAC;QAChC,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACnC,IAAI,EAAE,EAAE,CAAC;YACP,IAAI,CAAC,OAAO,IAAI,EAAE,GAAG,OAAO;gBAAE,OAAO,GAAG,EAAE,CAAC;YAC3C,IAAI,CAAC,MAAM,IAAI,EAAE,GAAG,MAAM;gBAAE,MAAM,GAAG,EAAE,CAAC;QAC1C,CAAC;QAED,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;YAC5B,MAAM,CAAC,GAAG,GAAG,CAAC,OAA8C,CAAC;YAC7D,IAAI,CAAC,EAAE,CAAC;gBACN,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,SAAS,CAAC;gBACxC,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC;gBAC7B,UAAU,GAAG,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,UAAU,CAAC;YACrD,CAAC;QACH,CAAC;QAED,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;YAC5B,MAAM,CAAC,GAAG,GAAG,CAAC,OAA8C,CAAC;YAC7D,IAAI,CAAC,EAAE,CAAC;gBACN,IAAI,CAAC,GAAG;oBAAE,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;gBACxC,IAAI,CAAC,KAAK;oBAAE,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;YAChD,CAAC;QACH,CAAC;QAED,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;YACzB,MAAM,CAAC,GAAG,GAAG,CAAC,OAA8C,CAAC;YAC7D,IAAI,CAAC,CAAC;gBAAE,SAAS;YACjB,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAEhC,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;gBAC9B,SAAS,EAAE,CAAC;gBACZ,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;gBAChC,IAAI,OAAO,CAAC,MAAM,GAAG,gBAAgB,IAAI,GAAG,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC1E,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;oBACzE,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE;wBAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAC7C,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,SAAS,IAAI,SAAS,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE/C,MAAM,YAAY,GAAG,UAAU,IAAI,iBAAiB,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAC5E,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;IAEjC,MAAM,IAAI,GAAG,gBAAgB,CAAC;QAC5B,QAAQ,EAAE,OAAO;QACjB,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,EAAE;QACf,GAAG,EAAE,GAAG,IAAI,EAAE;QACd,MAAM,EAAE,IAAI;QACZ,OAAO;QACP,MAAM;QACN,SAAS;QACT,OAAO;QACP,QAAQ,EAAE,EAAE;KACb,CAAC,CAAC;IAEH,MAAM,IAAI,GAAa,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC5C,IAAI,KAAK;QAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAE5B,OAAO;QACL,EAAE,EAAE,eAAe,IAAI,EAAE;QACzB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,YAAY;QACnB,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,kBAAkB,SAAS,SAAS;QAC9F,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;QACvB,MAAM,EAAE,WAAW;QACnB,OAAO,EAAE,OAAO,IAAI,KAAK,CAAC,IAAI,CAAC;QAC/B,OAAO,EAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC;QAC9B,OAAO,EAAE,EAAE;QACX,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;QAC7C,IAAI;QACJ,GAAG,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE;QAC7B,GAAG,EAAE;YACH,WAAW,EAAE,eAAe;YAC5B,SAAS;YACT,QAAQ,EAAE,OAAO;YACjB,GAAG,EAAE,GAAG,IAAI,EAAE;YACd,UAAU;YACV,KAAK;YACL,SAAS;SACV;QACD,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,SAAS;QACnB,YAAY,EAAE,IAAI;QAClB,SAAS,EAAE,iBAAiB;QAC5B,SAAS,EAAE,SAAS;QACpB,MAAM,EAAE,IAAI;KACb,CAAC;AACJ,CAAC;AAQD,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,SAAiB;IAC3D,MAAM,SAAS,GAAG,GAAG,SAAS,sBAAsB,CAAC;IACrD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC3C,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QAAC,GAAG,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,QAAQ,CAAC;IAAC,CAAC;IAC5E,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,SAAS;QAC3B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAC;YACxD,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YACvC,IAAI,EAAE,IAAI,IAAI;gBAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC;QAAC,MAAM,CAAC;YAAC,SAAS;QAAC,CAAC;IACvB,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,SAAiB,EACjB,UAAkB,EAClB,UAAkB,EAClB,QAAgB;IAEhB,MAAM,WAAW,GAAG,GAAG,SAAS,WAAW,CAAC;IAC5C,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,GAAG,QAAQ,CAAC;IAClD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAE1D,MAAM,QAAQ,GAAG,MAAM,uBAAuB,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAE/D,MAAM,UAAU,GAAe,EAAE,CAAC;IAClC,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAClC,IAAI,CAAC,CAAC,OAAO,IAAI,MAAM,IAAI,CAAC,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC;gBACxC,UAAU,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YAAC,SAAS;QAAC,CAAC;IACvB,CAAC;IACD,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAE7C,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1E,MAAM,GAAG,GAAgB,EAAE,CAAC;IAE5B,KAAK,MAAM,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;QAClD,IAAI,GAAG,CAAC,MAAM,IAAI,QAAQ;YAAE,MAAM;QAElC,8FAA8F;QAC9F,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,UAAU;YAAE,SAAS;QAC1B,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;QAC1E,IAAI,oBAAoB,KAAK,oBAAoB;YAAE,SAAS;QAE5D,gDAAgD;QAChD,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC/C,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAEjC,IAAI,SAAS,GAAkB,IAAI,CAAC;QACpC,KAAK,MAAM,IAAI,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAC;gBACxD,IAAI,GAAG,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;oBAChC,MAAM,CAAC,GAAG,GAAG,CAAC,OAAkC,CAAC;oBACjD,SAAS,GAAG,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC;oBACpC,MAAM;gBACR,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBAAC,SAAS;YAAC,CAAC;QACvB,CAAC;QAED,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACxE,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC,OAAO,EAAE,EAAE,UAAU,CAAC,CAAC;QAC5E,IAAI,KAAK;YAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,uBAAuB,CACpC,GAAW,EACX,QAAgB,EAChB,YAAY,GAAG,CAAC;IAEhB,IAAI,YAAY,GAAG,QAAQ;QAAE,OAAO,EAAE,CAAC;IACvC,MAAM,GAAG,GAAgD,EAAE,CAAC;IAC5D,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAC1C,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAE1D,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,CAAC;YAC7B,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;gBACpB,MAAM,GAAG,GAAG,MAAM,uBAAuB,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,GAAG,CAAC,CAAC,CAAC;gBAC5E,GAAG,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;YACnB,CAAC;iBAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACnC,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;gBACnE,MAAM,OAAO,GAAG,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;gBACxH,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YACvC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YAAC,SAAS;QAAC,CAAC;IACvB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,GAAW;IACzC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;IAChE,IAAI,CAAC;QAAC,OAAO,MAAM,SAAS,CAAC,GAAG,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC;IAAC,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,GAAW;IAChD,OAAO,GAAG;SACP,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;SACjB,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC;SACxB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AAC7B,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import type { WikiEntry, WikiFilters, WikiIndex, WikiNodeType } from './wiki-types.js';
2
2
  import { type WikiGraph } from './graph-analysis.js';
3
3
  import { type InvertedIndex } from './search.js';
4
+ import type { EmbeddingIndex } from './embedding.js';
4
5
  export interface LinkedWorkspaceConfig {
5
6
  name: string;
6
7
  workflowRoot: string;
@@ -27,6 +28,8 @@ export declare class WikiIndexer {
27
28
  private cache;
28
29
  private graphCache;
29
30
  private searchCache;
31
+ private embeddingCache;
32
+ private embeddingInflight;
30
33
  private inflight;
31
34
  private mtimeSnapshot;
32
35
  constructor(config: WikiIndexerConfig);
@@ -35,6 +38,8 @@ export declare class WikiIndexer {
35
38
  private getSourcePaths;
36
39
  private hasSourceChanges;
37
40
  private captureMtimeSnapshot;
41
+ private tryLoadSearchCache;
42
+ private persistSearchCache;
38
43
  rebuild(): Promise<WikiIndex>;
39
44
  invalidate(_changedAbsPath?: string): void;
40
45
  query(filters: WikiFilters): Promise<WikiEntry[]>;
@@ -45,6 +50,18 @@ export declare class WikiIndexer {
45
50
  entry: WikiEntry;
46
51
  score: number;
47
52
  }>>;
53
+ searchWithMeta(query: string, limit?: number, options?: {
54
+ skipEmbedding?: boolean;
55
+ }): Promise<{
56
+ results: Array<{
57
+ entry: WikiEntry;
58
+ score: number;
59
+ }>;
60
+ embeddingUsed: boolean;
61
+ embeddingDocs: number;
62
+ }>;
63
+ getEmbeddingIndex(): Promise<EmbeddingIndex | null>;
64
+ private loadOrBuildEmbeddings;
48
65
  search(query: string, limit?: number): Promise<WikiEntry[]>;
49
66
  private scanFiles;
50
67
  /**
@@ -67,6 +84,7 @@ export declare class WikiIndexer {
67
84
  */
68
85
  private resolveSpecScopes;
69
86
  private scanVirtual;
87
+ private scanCliSessions;
70
88
  private scanSessionArchives;
71
89
  private scanLinkedWorkspaces;
72
90
  private scanLinkedWorkspace;
@@ -3,11 +3,11 @@ import { basename, dirname, extname, join, relative, resolve, sep } from 'node:p
3
3
  import { toForwardSlash } from '../../shared/utils.js';
4
4
  import { parseFrontmatter } from './frontmatter-util.js';
5
5
  import { parseSpecEntries, parseKnowhowEntries } from './spec-entry-parser.js';
6
- import { adaptCodebaseDocIndex, adaptIssueRow, adaptKnowledgeGraph, crossReferenceKgWithDocIndex, loadSessionArchiveEntries, loadVirtualEntries, loadVirtualJsonEntries, } from './virtual-wiki-adapters.js';
6
+ import { adaptCodebaseDocIndex, adaptIssueRow, adaptKnowledgeGraph, crossReferenceKgWithDocIndex, loadSessionArchiveEntries, loadVirtualEntries, loadVirtualJsonEntries, loadClaudeCodeSessions, loadCodexSessions, cwdToClaudeProjectSlug, } from './virtual-wiki-adapters.js';
7
7
  import { homedir } from 'node:os';
8
- import { existsSync, readdirSync } from 'node:fs';
8
+ import { existsSync, readdirSync, readFileSync } from 'node:fs';
9
9
  import { buildGraph } from './graph-analysis.js';
10
- import { buildInvertedIndex, searchBM25 } from './search.js';
10
+ import { buildInvertedIndex, searchBM25, searchBM25Planned, rerankByPhraseProximity } from './search.js';
11
11
  /**
12
12
  * WikiIndexer: single source of truth for the unified wiki index.
13
13
  *
@@ -25,6 +25,8 @@ export class WikiIndexer {
25
25
  cache = null;
26
26
  graphCache = null;
27
27
  searchCache = null;
28
+ embeddingCache = null;
29
+ embeddingInflight = null;
28
30
  inflight = null;
29
31
  mtimeSnapshot = new Map();
30
32
  constructor(config) {
@@ -45,6 +47,10 @@ export class WikiIndexer {
45
47
  this.cache = null;
46
48
  this.graphCache = null;
47
49
  this.searchCache = null;
50
+ this.embeddingCache = null;
51
+ }
52
+ if (await this.tryLoadSearchCache()) {
53
+ return this.cache;
48
54
  }
49
55
  return this.rebuild();
50
56
  }
@@ -119,6 +125,59 @@ export class WikiIndexer {
119
125
  }
120
126
  return snap;
121
127
  }
128
+ async tryLoadSearchCache() {
129
+ const cachePath = join(this.workflowRoot, 'search-cache.json');
130
+ if (!existsSync(cachePath))
131
+ return false;
132
+ try {
133
+ const raw = readFileSync(cachePath, 'utf-8');
134
+ const cached = JSON.parse(raw);
135
+ if (cached.version !== 1 || !Array.isArray(cached.entries))
136
+ return false;
137
+ const snapshot = new Map(cached.mtimeSnapshot);
138
+ this.mtimeSnapshot = snapshot;
139
+ if (await this.hasSourceChanges()) {
140
+ this.mtimeSnapshot = new Map();
141
+ return false;
142
+ }
143
+ const entries = cached.entries;
144
+ const byId = {};
145
+ const byType = {
146
+ project: [], roadmap: [], spec: [], issue: [],
147
+ knowhow: [], note: [], domain: [],
148
+ };
149
+ for (const d of entries) {
150
+ byId[d.id] = d;
151
+ byType[d.type].push(d);
152
+ }
153
+ const backlinks = this.buildBacklinks(entries, byId);
154
+ this.cache = { entries, byId, byType, backlinks, generatedAt: cached.generatedAt };
155
+ return true;
156
+ }
157
+ catch {
158
+ return false;
159
+ }
160
+ }
161
+ persistSearchCache(index) {
162
+ const entries = index.entries.map(e => ({
163
+ id: e.id, type: e.type, title: e.title, summary: e.summary,
164
+ tags: e.tags, status: e.status, created: e.created, updated: e.updated,
165
+ related: e.related, source: e.source, body: e.body, ext: e.ext,
166
+ scope: e.scope, category: e.category, specCategory: e.specCategory,
167
+ createdBy: e.createdBy, sourceRef: e.sourceRef, parent: e.parent,
168
+ }));
169
+ try {
170
+ const target = join(this.workflowRoot, 'search-cache.json');
171
+ const data = JSON.stringify({
172
+ version: 1,
173
+ generatedAt: index.generatedAt,
174
+ mtimeSnapshot: [...this.mtimeSnapshot.entries()],
175
+ entries,
176
+ });
177
+ writeFile(target, data, 'utf-8').catch(() => { });
178
+ }
179
+ catch { /* best-effort */ }
180
+ }
122
181
  async rebuild() {
123
182
  if (this.inflight)
124
183
  return this.inflight;
@@ -180,6 +239,7 @@ export class WikiIndexer {
180
239
  this.mtimeSnapshot = await this.captureMtimeSnapshot();
181
240
  // Persist lightweight index to disk (fire-and-forget).
182
241
  this.persistIndex(index).catch(() => { });
242
+ this.persistSearchCache(index);
183
243
  return index;
184
244
  })();
185
245
  try {
@@ -241,16 +301,102 @@ export class WikiIndexer {
241
301
  return this.searchCache;
242
302
  }
243
303
  async searchWithScores(query, limit = 50) {
304
+ return (await this.searchWithMeta(query, limit)).results;
305
+ }
306
+ async searchWithMeta(query, limit = 50, options) {
244
307
  const index = await this.get();
245
308
  const bm25 = await this.getSearchIndex();
246
- const ranked = searchBM25(bm25, query, limit);
247
- const out = [];
248
- for (const r of ranked) {
309
+ const bm25Results = searchBM25Planned(bm25, query, limit * 2);
310
+ const embIdx = options?.skipEmbedding ? null : await this.getEmbeddingIndex();
311
+ if (embIdx && embIdx.docIds.length > 0) {
312
+ try {
313
+ const { embedQuery, vectorSearch, mergeHybrid } = await import('./embedding.js');
314
+ const qVec = await embedQuery(query);
315
+ const vecResults = vectorSearch(qVec, embIdx, limit * 2);
316
+ const merged = mergeHybrid(bm25Results, vecResults, limit * 3);
317
+ let out = [];
318
+ for (const r of merged) {
319
+ const entry = index.byId[r.docId];
320
+ if (entry)
321
+ out.push({ entry, score: r.score });
322
+ }
323
+ out = rerankByPhraseProximity(out, query);
324
+ return { results: out.slice(0, limit), embeddingUsed: true, embeddingDocs: embIdx.docIds.length };
325
+ }
326
+ catch (e) {
327
+ if (process.env.DEBUG || process.env.MAESTRO_DEBUG) {
328
+ console.error(`[embedding] query failed: ${e instanceof Error ? e.message : e}`);
329
+ }
330
+ }
331
+ }
332
+ let out = [];
333
+ for (const r of bm25Results.slice(0, limit * 3)) {
249
334
  const entry = index.byId[r.docId];
250
335
  if (entry)
251
336
  out.push({ entry, score: r.score });
252
337
  }
253
- return out;
338
+ out = rerankByPhraseProximity(out, query);
339
+ return { results: out.slice(0, limit), embeddingUsed: false, embeddingDocs: 0 };
340
+ }
341
+ async getEmbeddingIndex() {
342
+ if (this.embeddingCache)
343
+ return this.embeddingCache;
344
+ if (this.embeddingInflight)
345
+ return this.embeddingInflight;
346
+ this.embeddingInflight = this.loadOrBuildEmbeddings();
347
+ const result = await this.embeddingInflight;
348
+ this.embeddingInflight = null;
349
+ this.embeddingCache = result;
350
+ return result;
351
+ }
352
+ async loadOrBuildEmbeddings() {
353
+ try {
354
+ const { isAvailable, getUnavailableReason, loadEmbeddingIndex, buildEmbeddingIndex, saveEmbeddingIndex } = await import('./embedding.js');
355
+ if (!await isAvailable()) {
356
+ const reason = getUnavailableReason?.() ?? 'unknown';
357
+ if (process.env.DEBUG || process.env.MAESTRO_DEBUG) {
358
+ console.error(`[embedding] unavailable: ${reason}`);
359
+ }
360
+ return null;
361
+ }
362
+ const cached = loadEmbeddingIndex(this.workflowRoot);
363
+ const index = await this.get();
364
+ // Only embed knowledge docs — KG code nodes are noise for semantic search
365
+ const KG_VIRTUAL_KINDS = new Set(['kg-node', 'kg-layer', 'kg-tour-step']);
366
+ const docs = index.entries
367
+ .filter(e => !KG_VIRTUAL_KINDS.has(e.ext?.virtualKind))
368
+ .map(e => ({
369
+ id: e.id,
370
+ title: e.title,
371
+ summary: e.summary,
372
+ tags: e.tags,
373
+ body: e.body,
374
+ }));
375
+ const { DEFAULT_MODEL_ID, hashDocContent } = await import('./embedding.js');
376
+ const modelMatch = cached && cached.modelId === DEFAULT_MODEL_ID;
377
+ const currentHashes = docs.map(hashDocContent);
378
+ const cachedHashMap = new Map();
379
+ if (cached?.contentHashes) {
380
+ for (let i = 0; i < cached.docIds.length; i++) {
381
+ cachedHashMap.set(cached.docIds[i], cached.contentHashes[i] ?? '');
382
+ }
383
+ }
384
+ const unchanged = modelMatch
385
+ && cached.docIds.length === docs.length
386
+ && cachedHashMap.size > 0
387
+ && docs.every((d, i) => cachedHashMap.get(d.id) === currentHashes[i]);
388
+ if (cached && unchanged)
389
+ return cached;
390
+ const embIdx = await buildEmbeddingIndex(docs, cached);
391
+ saveEmbeddingIndex(embIdx, this.workflowRoot);
392
+ return embIdx;
393
+ }
394
+ catch (e) {
395
+ if (process.env.DEBUG || process.env.MAESTRO_DEBUG) {
396
+ console.error(`[embedding] build failed: ${e instanceof Error ? e.message : e}`);
397
+ }
398
+ return null;
399
+ }
254
400
  }
255
401
  async search(query, limit = 50) {
256
402
  return (await this.searchWithScores(query, limit)).map(r => r.entry);
@@ -294,7 +440,10 @@ export class WikiIndexer {
294
440
  const related = [];
295
441
  if (se.ref) {
296
442
  const refStem = se.ref.replace(/^knowhow\//, '').replace(/\.md$/, '');
297
- const refSlug = refStem.replace(/^(KNW|TIP|TPL|RCP|REF|DCS|AST|BLP|DOC)-/i, '').toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-|-$/g, '');
443
+ // Derive ref target the same way as the knowhow container id (parseFileEntry
444
+ // uses `knowhow-${slugify(stem)}`, which keeps the type prefix). Stripping the
445
+ // prefix here produced target ≠ id → broken links for RCP/REF/DCS/etc.
446
+ const refSlug = slugify(refStem);
298
447
  related.push(`knowhow-${refSlug}`);
299
448
  }
300
449
  out.push({
@@ -356,7 +505,10 @@ export class WikiIndexer {
356
505
  const related = [];
357
506
  if (se.ref) {
358
507
  const refStem = se.ref.replace(/^knowhow\//, '').replace(/\.md$/, '');
359
- const refSlug = refStem.replace(/^(KNW|TIP|TPL|RCP|REF|DCS|AST|BLP|DOC)-/i, '').toLowerCase().replace(/[^a-z0-9]+/g, '-').replace(/^-|-$/g, '');
508
+ // Derive ref target the same way as the knowhow container id (parseFileEntry
509
+ // uses `knowhow-${slugify(stem)}`, which keeps the type prefix). Stripping the
510
+ // prefix here produced target ≠ id → broken links for RCP/REF/DCS/etc.
511
+ const refSlug = slugify(refStem);
360
512
  related.push(`knowhow-${refSlug}`);
361
513
  }
362
514
  out.push({
@@ -627,6 +779,37 @@ export class WikiIndexer {
627
779
  out.push(...(await this.scanSessionArchives(artifactsDir)));
628
780
  }
629
781
  }
782
+ // CLI sessions: Claude Code (~/.claude/) and Codex (~/.codex/)
783
+ out.push(...(await this.scanCliSessions()));
784
+ return out;
785
+ }
786
+ async scanCliSessions() {
787
+ const out = [];
788
+ const projectCwd = dirname(this.workflowRoot);
789
+ const home = homedir();
790
+ const maxAgeDays = 90;
791
+ const maxFiles = 100;
792
+ // Claude Code: ~/.claude/projects/{project-slug}/*.jsonl
793
+ const projectSlug = cwdToClaudeProjectSlug(projectCwd);
794
+ const claudeProjectDir = join(home, '.claude', 'projects', projectSlug);
795
+ if (existsSync(claudeProjectDir)) {
796
+ try {
797
+ out.push(...(await loadClaudeCodeSessions(claudeProjectDir, projectSlug, maxAgeDays, maxFiles)));
798
+ }
799
+ catch {
800
+ // Best-effort — don't break the index if session scan fails
801
+ }
802
+ }
803
+ // Codex: ~/.codex/sessions/**/*.jsonl (filtered by project cwd)
804
+ const codexRoot = join(home, '.codex');
805
+ if (existsSync(join(codexRoot, 'sessions'))) {
806
+ try {
807
+ out.push(...(await loadCodexSessions(codexRoot, projectCwd, maxAgeDays, maxFiles)));
808
+ }
809
+ catch {
810
+ // Best-effort
811
+ }
812
+ }
630
813
  return out;
631
814
  }
632
815
  async scanSessionArchives(root) {