@mycodemap/mycodemap 0.5.0 → 0.5.2-beta.1

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 (254) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/README.md +77 -9
  3. package/dist/cli/commands/analyze.d.ts +18 -0
  4. package/dist/cli/commands/analyze.d.ts.map +1 -1
  5. package/dist/cli/commands/analyze.js +239 -6
  6. package/dist/cli/commands/analyze.js.map +1 -1
  7. package/dist/cli/commands/check.d.ts +22 -0
  8. package/dist/cli/commands/check.d.ts.map +1 -0
  9. package/dist/cli/commands/check.js +168 -0
  10. package/dist/cli/commands/check.js.map +1 -0
  11. package/dist/cli/commands/ci.d.ts +25 -0
  12. package/dist/cli/commands/ci.d.ts.map +1 -1
  13. package/dist/cli/commands/ci.js +139 -36
  14. package/dist/cli/commands/ci.js.map +1 -1
  15. package/dist/cli/commands/complexity.d.ts.map +1 -1
  16. package/dist/cli/commands/complexity.js +6 -0
  17. package/dist/cli/commands/complexity.js.map +1 -1
  18. package/dist/cli/commands/design.d.ts +5 -0
  19. package/dist/cli/commands/design.d.ts.map +1 -1
  20. package/dist/cli/commands/design.js +6 -0
  21. package/dist/cli/commands/design.js.map +1 -1
  22. package/dist/cli/commands/generate.d.ts +1 -0
  23. package/dist/cli/commands/generate.d.ts.map +1 -1
  24. package/dist/cli/commands/generate.js +121 -8
  25. package/dist/cli/commands/generate.js.map +1 -1
  26. package/dist/cli/commands/history.d.ts +26 -0
  27. package/dist/cli/commands/history.d.ts.map +1 -0
  28. package/dist/cli/commands/history.js +92 -0
  29. package/dist/cli/commands/history.js.map +1 -0
  30. package/dist/cli/commands/mcp.d.ts +13 -0
  31. package/dist/cli/commands/mcp.d.ts.map +1 -0
  32. package/dist/cli/commands/mcp.js +108 -0
  33. package/dist/cli/commands/mcp.js.map +1 -0
  34. package/dist/cli/commands/workflow.d.ts.map +1 -1
  35. package/dist/cli/commands/workflow.js +22 -2
  36. package/dist/cli/commands/workflow.js.map +1 -1
  37. package/dist/cli/config-loader.d.ts.map +1 -1
  38. package/dist/cli/config-loader.js +3 -2
  39. package/dist/cli/config-loader.js.map +1 -1
  40. package/dist/cli/contract-checker.d.ts +33 -0
  41. package/dist/cli/contract-checker.d.ts.map +1 -0
  42. package/dist/cli/contract-checker.js +719 -0
  43. package/dist/cli/contract-checker.js.map +1 -0
  44. package/dist/cli/contract-diff-scope.d.ts +14 -0
  45. package/dist/cli/contract-diff-scope.d.ts.map +1 -0
  46. package/dist/cli/contract-diff-scope.js +127 -0
  47. package/dist/cli/contract-diff-scope.js.map +1 -0
  48. package/dist/cli/contract-gate-thresholds.d.ts +14 -0
  49. package/dist/cli/contract-gate-thresholds.d.ts.map +1 -0
  50. package/dist/cli/contract-gate-thresholds.js +19 -0
  51. package/dist/cli/contract-gate-thresholds.js.map +1 -0
  52. package/dist/cli/design-contract-loader.d.ts.map +1 -1
  53. package/dist/cli/design-contract-loader.js +355 -3
  54. package/dist/cli/design-contract-loader.js.map +1 -1
  55. package/dist/cli/design-scope-resolver.d.ts.map +1 -1
  56. package/dist/cli/design-scope-resolver.js +89 -41
  57. package/dist/cli/design-scope-resolver.js.map +1 -1
  58. package/dist/cli/index.js +18 -6
  59. package/dist/cli/index.js.map +1 -1
  60. package/dist/cli/paths.d.ts.map +1 -1
  61. package/dist/cli/paths.js +30 -7
  62. package/dist/cli/paths.js.map +1 -1
  63. package/dist/core/analyzer.d.ts.map +1 -1
  64. package/dist/core/analyzer.js +16 -0
  65. package/dist/core/analyzer.js.map +1 -1
  66. package/dist/domain/entities/CodeGraph.d.ts +5 -1
  67. package/dist/domain/entities/CodeGraph.d.ts.map +1 -1
  68. package/dist/domain/entities/CodeGraph.js +29 -12
  69. package/dist/domain/entities/CodeGraph.js.map +1 -1
  70. package/dist/domain/entities/Dependency.d.ts +8 -1
  71. package/dist/domain/entities/Dependency.d.ts.map +1 -1
  72. package/dist/domain/entities/Dependency.js +19 -4
  73. package/dist/domain/entities/Dependency.js.map +1 -1
  74. package/dist/domain/entities/Symbol.d.ts +2 -1
  75. package/dist/domain/entities/Symbol.d.ts.map +1 -1
  76. package/dist/domain/entities/Symbol.js +6 -3
  77. package/dist/domain/entities/Symbol.js.map +1 -1
  78. package/dist/infrastructure/storage/StorageFactory.d.ts +1 -0
  79. package/dist/infrastructure/storage/StorageFactory.d.ts.map +1 -1
  80. package/dist/infrastructure/storage/StorageFactory.js +7 -2
  81. package/dist/infrastructure/storage/StorageFactory.js.map +1 -1
  82. package/dist/infrastructure/storage/adapters/FileSystemStorage.d.ts +3 -1
  83. package/dist/infrastructure/storage/adapters/FileSystemStorage.d.ts.map +1 -1
  84. package/dist/infrastructure/storage/adapters/FileSystemStorage.js +10 -2
  85. package/dist/infrastructure/storage/adapters/FileSystemStorage.js.map +1 -1
  86. package/dist/infrastructure/storage/adapters/KuzuDBStorage.d.ts +3 -1
  87. package/dist/infrastructure/storage/adapters/KuzuDBStorage.d.ts.map +1 -1
  88. package/dist/infrastructure/storage/adapters/KuzuDBStorage.js +9 -1
  89. package/dist/infrastructure/storage/adapters/KuzuDBStorage.js.map +1 -1
  90. package/dist/infrastructure/storage/adapters/MemoryStorage.d.ts +3 -1
  91. package/dist/infrastructure/storage/adapters/MemoryStorage.d.ts.map +1 -1
  92. package/dist/infrastructure/storage/adapters/MemoryStorage.js +9 -1
  93. package/dist/infrastructure/storage/adapters/MemoryStorage.js.map +1 -1
  94. package/dist/infrastructure/storage/adapters/SQLiteStorage.d.ts +53 -0
  95. package/dist/infrastructure/storage/adapters/SQLiteStorage.d.ts.map +1 -0
  96. package/dist/infrastructure/storage/adapters/SQLiteStorage.js +879 -0
  97. package/dist/infrastructure/storage/adapters/SQLiteStorage.js.map +1 -0
  98. package/dist/infrastructure/storage/graph-helpers.d.ts +3 -1
  99. package/dist/infrastructure/storage/graph-helpers.d.ts.map +1 -1
  100. package/dist/infrastructure/storage/graph-helpers.js +90 -0
  101. package/dist/infrastructure/storage/graph-helpers.js.map +1 -1
  102. package/dist/infrastructure/storage/index.d.ts +1 -1
  103. package/dist/infrastructure/storage/index.d.ts.map +1 -1
  104. package/dist/infrastructure/storage/interfaces/StorageBase.d.ts +3 -1
  105. package/dist/infrastructure/storage/interfaces/StorageBase.d.ts.map +1 -1
  106. package/dist/infrastructure/storage/interfaces/StorageBase.js.map +1 -1
  107. package/dist/infrastructure/storage/sqlite/GovernanceGraphCache.d.ts +27 -0
  108. package/dist/infrastructure/storage/sqlite/GovernanceGraphCache.d.ts.map +1 -0
  109. package/dist/infrastructure/storage/sqlite/GovernanceGraphCache.js +246 -0
  110. package/dist/infrastructure/storage/sqlite/GovernanceGraphCache.js.map +1 -0
  111. package/dist/infrastructure/storage/sqlite/perf-thresholds.d.ts +25 -0
  112. package/dist/infrastructure/storage/sqlite/perf-thresholds.d.ts.map +1 -0
  113. package/dist/infrastructure/storage/sqlite/perf-thresholds.js +25 -0
  114. package/dist/infrastructure/storage/sqlite/perf-thresholds.js.map +1 -0
  115. package/dist/infrastructure/storage/sqlite/schema.d.ts +4 -0
  116. package/dist/infrastructure/storage/sqlite/schema.d.ts.map +1 -0
  117. package/dist/infrastructure/storage/sqlite/schema.js +111 -0
  118. package/dist/infrastructure/storage/sqlite/schema.js.map +1 -0
  119. package/dist/interface/types/design-check.d.ts +73 -0
  120. package/dist/interface/types/design-check.d.ts.map +1 -0
  121. package/dist/interface/types/design-check.js +4 -0
  122. package/dist/interface/types/design-check.js.map +1 -0
  123. package/dist/interface/types/design-contract.d.ts +56 -1
  124. package/dist/interface/types/design-contract.d.ts.map +1 -1
  125. package/dist/interface/types/history-risk.d.ts +90 -0
  126. package/dist/interface/types/history-risk.d.ts.map +1 -0
  127. package/dist/interface/types/history-risk.js +4 -0
  128. package/dist/interface/types/history-risk.js.map +1 -0
  129. package/dist/interface/types/index.d.ts +17 -2
  130. package/dist/interface/types/index.d.ts.map +1 -1
  131. package/dist/interface/types/storage.d.ts +28 -1
  132. package/dist/interface/types/storage.d.ts.map +1 -1
  133. package/dist/orchestrator/adapters/ast-grep-adapter.d.ts +10 -0
  134. package/dist/orchestrator/adapters/ast-grep-adapter.d.ts.map +1 -1
  135. package/dist/orchestrator/adapters/ast-grep-adapter.js +46 -17
  136. package/dist/orchestrator/adapters/ast-grep-adapter.js.map +1 -1
  137. package/dist/orchestrator/adapters/codemap-adapter.d.ts.map +1 -1
  138. package/dist/orchestrator/adapters/codemap-adapter.js +2 -22
  139. package/dist/orchestrator/adapters/codemap-adapter.js.map +1 -1
  140. package/dist/orchestrator/history-risk-service.d.ts +55 -0
  141. package/dist/orchestrator/history-risk-service.d.ts.map +1 -0
  142. package/dist/orchestrator/history-risk-service.js +680 -0
  143. package/dist/orchestrator/history-risk-service.js.map +1 -0
  144. package/dist/orchestrator/types.d.ts +19 -1
  145. package/dist/orchestrator/types.d.ts.map +1 -1
  146. package/dist/orchestrator/types.js +19 -0
  147. package/dist/orchestrator/types.js.map +1 -1
  148. package/dist/server/mcp/index.d.ts +4 -0
  149. package/dist/server/mcp/index.d.ts.map +1 -0
  150. package/dist/server/mcp/index.js +5 -0
  151. package/dist/server/mcp/index.js.map +1 -0
  152. package/dist/server/mcp/server.d.ts +17 -0
  153. package/dist/server/mcp/server.d.ts.map +1 -0
  154. package/dist/server/mcp/server.js +84 -0
  155. package/dist/server/mcp/server.js.map +1 -0
  156. package/dist/server/mcp/service.d.ts +22 -0
  157. package/dist/server/mcp/service.d.ts.map +1 -0
  158. package/dist/server/mcp/service.js +177 -0
  159. package/dist/server/mcp/service.js.map +1 -0
  160. package/dist/server/mcp/types.d.ts +56 -0
  161. package/dist/server/mcp/types.d.ts.map +1 -0
  162. package/dist/server/mcp/types.js +4 -0
  163. package/dist/server/mcp/types.js.map +1 -0
  164. package/docs/AI_ASSISTANT_SETUP.md +1 -1
  165. package/docs/PUBLISHING.md +41 -12
  166. package/docs/SETUP_GUIDE.md +6 -6
  167. package/docs/ai-guide/COMMANDS.md +98 -4
  168. package/docs/ai-guide/INTEGRATION.md +137 -433
  169. package/docs/ai-guide/OUTPUT.md +476 -6
  170. package/docs/ai-guide/PATTERNS.md +41 -11
  171. package/docs/ai-guide/PROMPTS.md +11 -6
  172. package/docs/backlog.md +177 -0
  173. package/docs/eatdogfood-reports/2026-04-17-eatdogfood-agent-experience.md +231 -0
  174. package/docs/exec-plans/completed/2026-04-17-eatdogfood-codemap-cli.md +103 -0
  175. package/docs/ideation/2026-04-15-executable-architecture-constitution-ideation.md +102 -0
  176. package/docs/product-specs/DESIGN_CONTRACT_TEMPLATE.md +47 -0
  177. package/docs/product-specs/MVP3-ARCHITECTURE-COMPARISON.md +11 -10
  178. package/docs/product-specs/MVP3-ARCHITECTURE-REDESIGN-PRD.md +10 -10
  179. package/docs/product-specs/MVP3-ARCHITECTURE-REDESIGN-TECH-PRD.md +17 -12
  180. package/docs/rules/README.md +16 -11
  181. package/docs/rules/architecture-guardrails.md +24 -336
  182. package/docs/rules/code-quality-redlines.md +25 -311
  183. package/docs/rules/engineering-with-codex-openai.md +14 -1
  184. package/docs/rules/pre-release-checklist.md +9 -4
  185. package/docs/rules/validation.md +91 -40
  186. package/mycodemap.config.schema.json +3 -3
  187. package/package.json +7 -2
  188. package/scripts/benchmark-governance-graph.mjs +132 -0
  189. package/scripts/calibrate-contract-gate.mjs +221 -0
  190. package/scripts/capability-report.py +255 -0
  191. package/scripts/pre-release-check.js +2 -2
  192. package/scripts/qa-rule-control.sh +254 -0
  193. package/scripts/report-high-risk-files.mjs +395 -0
  194. package/scripts/rule-context.mjs +155 -0
  195. package/scripts/smoke-sqlite-impact.mjs +85 -0
  196. package/scripts/sync-analyze-docs.js +1 -0
  197. package/scripts/tests/test_capability_report.py +89 -0
  198. package/scripts/tests/test_rule_control_workflow.py +51 -0
  199. package/scripts/tests/test_validate_rules.py +81 -0
  200. package/scripts/validate-ai-docs.js +283 -1
  201. package/scripts/validate-docs.js +249 -42
  202. package/scripts/validate-rules.py +254 -0
  203. package/dist/ai/claude.d.ts +0 -38
  204. package/dist/ai/claude.d.ts.map +0 -1
  205. package/dist/ai/claude.js +0 -169
  206. package/dist/ai/claude.js.map +0 -1
  207. package/dist/ai/codex.d.ts +0 -38
  208. package/dist/ai/codex.d.ts.map +0 -1
  209. package/dist/ai/codex.js +0 -169
  210. package/dist/ai/codex.js.map +0 -1
  211. package/dist/ai/factory.d.ts +0 -48
  212. package/dist/ai/factory.d.ts.map +0 -1
  213. package/dist/ai/factory.js +0 -95
  214. package/dist/ai/factory.js.map +0 -1
  215. package/dist/ai/index.d.ts +0 -12
  216. package/dist/ai/index.d.ts.map +0 -1
  217. package/dist/ai/index.js +0 -29
  218. package/dist/ai/index.js.map +0 -1
  219. package/dist/ai/provider.d.ts +0 -70
  220. package/dist/ai/provider.d.ts.map +0 -1
  221. package/dist/ai/provider.js +0 -31
  222. package/dist/ai/provider.js.map +0 -1
  223. package/dist/ai/subagent-caller.d.ts +0 -90
  224. package/dist/ai/subagent-caller.d.ts.map +0 -1
  225. package/dist/ai/subagent-caller.js +0 -280
  226. package/dist/ai/subagent-caller.js.map +0 -1
  227. package/dist/ai/types.d.ts +0 -70
  228. package/dist/ai/types.d.ts.map +0 -1
  229. package/dist/ai/types.js +0 -5
  230. package/dist/ai/types.js.map +0 -1
  231. package/dist/cli/commands/server.d.ts +0 -9
  232. package/dist/cli/commands/server.d.ts.map +0 -1
  233. package/dist/cli/commands/server.js +0 -65
  234. package/dist/cli/commands/server.js.map +0 -1
  235. package/dist/cli-new/commands/server.d.ts +0 -13
  236. package/dist/cli-new/commands/server.d.ts.map +0 -1
  237. package/dist/cli-new/commands/server.js +0 -90
  238. package/dist/cli-new/commands/server.js.map +0 -1
  239. package/dist/generator/ai-overview.d.ts +0 -51
  240. package/dist/generator/ai-overview.d.ts.map +0 -1
  241. package/dist/generator/ai-overview.js +0 -160
  242. package/dist/generator/ai-overview.js.map +0 -1
  243. package/dist/infrastructure/storage/adapters/Neo4jStorage.d.ts +0 -41
  244. package/dist/infrastructure/storage/adapters/Neo4jStorage.d.ts.map +0 -1
  245. package/dist/infrastructure/storage/adapters/Neo4jStorage.js +0 -162
  246. package/dist/infrastructure/storage/adapters/Neo4jStorage.js.map +0 -1
  247. package/dist/orchestrator/ai-feed-generator.d.ts +0 -210
  248. package/dist/orchestrator/ai-feed-generator.d.ts.map +0 -1
  249. package/dist/orchestrator/ai-feed-generator.js +0 -377
  250. package/dist/orchestrator/ai-feed-generator.js.map +0 -1
  251. package/docs/archive/test-report-symbol-search.md +0 -384
  252. package/docs/archive/test-scenario-4-complexity-analysis.md +0 -460
  253. package/docs/archive/test_report_scenario5.md +0 -615
  254. package/docs/archive/test_scenario_3_impact_analysis_report.md +0 -520
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history-risk-service.js","sourceRoot":"","sources":["../../src/orchestrator/history-risk-service.ts"],"names":[],"mappings":"AAAA,mEAAmE;AACnE,sHAAsH;AAGtH,OAAO,IAAI,MAAM,WAAW,CAAC;AAkB7B,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAE7D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAgDjE,MAAM,mBAAmB,GAAG,EAAE,CAAC;AAC/B,MAAM,6BAA6B,GAAG,CAAC,CAAC;AACxC,MAAM,4BAA4B,GAAG,EAAE,CAAC;AACxC,MAAM,yBAAyB,GAAG,EAAE,CAAC;AACrC,MAAM,2BAA2B,GAAG,EAAE,GAAG,CAAC,CAAC;AAC3C,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAE/B,SAAS,2BAA2B,CAAC,OAAiB;IACpD,MAAM,SAAS,GAAG,OAA6C,CAAC;IAChE,OAAO,OAAO,SAAS,CAAC,uBAAuB,KAAK,UAAU;WACzD,OAAO,SAAS,CAAC,2BAA2B,KAAK,UAAU;WAC3D,OAAO,SAAS,CAAC,6BAA6B,KAAK,UAAU,CAAC;AACrE,CAAC;AAED,SAAS,YAAY,CAAC,MAAyB;IAC7C,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3F,CAAC;AAED,SAAS,4BAA4B,CAAC,QAAgB,EAAE,WAAmB;IACzE,MAAM,cAAc,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAEpD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC9E,OAAO,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,cAAc,CAAC;AACjE,CAAC;AAED,SAAS,WAAW,CAAC,KAAuC;IAC1D,IAAI,KAAK,YAAY,IAAI,EAAE,CAAC;QAC1B,OAAO,KAAK,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QAC/B,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;IACtE,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,0BAA0B,CAAC,MAAe;IACjD,OAAO;QACL,KAAK,EAAE,aAAa;QACpB,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,IAAI;QACZ,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;KACpC,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAAC,UAA6B;IACxD,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC1B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;QAC5B,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAuB,EAAE,KAAwB;IAC7E,MAAM,IAAI,GAAsC;QAC9C,WAAW,EAAE,CAAC;QACd,GAAG,EAAE,CAAC;QACN,MAAM,EAAE,CAAC;QACT,IAAI,EAAE,CAAC;KACR,CAAC;IAEF,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;AAClD,CAAC;AAED,SAAS,kBAAkB,CACzB,UAAyB,EACzB,GAAS,EACT,eAAuB,EACvB,iBAAyB;IAEzB,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC;IACpC,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;QACnC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IACvE,IAAI,QAAQ,IAAI,eAAe,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,IAAI,QAAQ,IAAI,iBAAiB,EAAE,CAAC;QAClC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,kBAAkB,CACzB,WAAqC,EACrC,GAAS,EACT,eAAuB,EACvB,iBAAyB;IAEzB,MAAM,SAAS,GAAG,kBAAkB,CAClC,WAAW,CAAC,UAAU,EACtB,GAAG,EACH,eAAe,EACf,iBAAiB,CAClB,CAAC;IACF,IAAI,UAAU,GAAG,WAAW,CAAC,UAAU,CAAC;IACxC,MAAM,OAAO,GAAG,CAAC,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAEzC,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;QAC1B,UAAU,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAC7C,OAAO,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAChD,CAAC;SAAM,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QACnC,UAAU,GAAG,KAAK,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;IAClD,CAAC;IAED,OAAO;QACL,GAAG,WAAW;QACd,SAAS;QACT,UAAU;QACV,MAAM,EAAE,WAAW,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc;QAC7E,OAAO,EAAE,YAAY,CAAC,OAAO,CAAC;KAC/B,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,IAAuB;IAC9C,OAAO;QACL,OAAO,EAAE,IAAI,EAAE,OAAO,IAAI,CAAC;QAC3B,QAAQ,EAAE,CAAC,IAAI,EAAE,QAAQ,IAAI,KAAK,CAAkC;QACpE,QAAQ,EAAE,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC;QACrC,SAAS,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI;KACnC,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAuB,EAAE,QAAgC;IACnF,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC;AAC3E,CAAC;AAED,SAAS,iBAAiB,CAAC,MAU1B;IACC,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,SAAS,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;QAClD,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC;QACrC,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,cAAc,EAAE,MAAM,CAAC,cAAc;QACrC,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,IAAI,KAAK;KACvD,CAAC;AACJ,CAAC;AAED,SAAS,2BAA2B,CAClC,IAAY,EACZ,MAAc,EACd,UAAyB,EACzB,MAA0C,EAC1C,SAA8B,aAAa;IAE3C,OAAO;QACL,IAAI;QACJ,IAAI,EAAE,0BAA0B,CAAC,MAAM,CAAC;QACxC,QAAQ,EAAE,EAAE;QACZ,WAAW,EAAE,iBAAiB,CAAC;YAC7B,MAAM;YACN,UAAU,EAAE,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa;YAC1D,MAAM;YACN,OAAO,EAAE,CAAC,MAAM,CAAC;YACjB,UAAU;YACV,SAAS,EAAE,SAAS;YACpB,cAAc,EAAE,CAAC;YACjB,aAAa,EAAE,CAAC;SACjB,CAAC;KACH,CAAC;AACJ,CAAC;AAED,SAAS,6BAA6B,CACpC,KAAa,EACb,MAAc,EACd,SAA8B,aAAa,EAC3C,aAAuC,EAAE;IAEzC,OAAO;QACL,KAAK;QACL,UAAU;QACV,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,EAAE;QACT,QAAQ,EAAE,EAAE;QACZ,IAAI,EAAE,0BAA0B,CAAC,MAAM,CAAC;QACxC,WAAW,EAAE,iBAAiB,CAAC;YAC7B,MAAM;YACN,UAAU,EAAE,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa;YACpF,MAAM,EAAE,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU;YAC7D,OAAO,EAAE,CAAC,MAAM,CAAC;YACjB,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,SAAS;YACpB,cAAc,EAAE,CAAC;YACjB,aAAa,EAAE,CAAC;SACjB,CAAC;KACH,CAAC;AACJ,CAAC;AAED,SAAS,8BAA8B,CAAC,IAAY;IAClD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,OAAO;QACL,EAAE,EAAE,sBAAsB;QAC1B,IAAI;QACJ,YAAY,EAAE,MAAM;QACpB,WAAW,EAAE,SAAS;QACtB,SAAS,EAAE,IAAI,GAAG,EAAE;QACpB,aAAa,EAAE,EAAE;QACjB,aAAa,EAAE,IAAI,GAAG,EAAE;QACxB,SAAS,EAAE,GAAG;QACd,SAAS,EAAE,GAAG;KACf,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAwB,EAAE,MAAsC;IACzF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC5B,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,EAAE,IAAI,IAAI,SAAS,CAAC;QAE9C,OAAO;YACL,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE;YAC3D,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,OAAO;YACP,QAAQ,EAAE,MAAM,CAAC,GAAG,EAAE,KAAK,IAAI,SAAS;YACxC,OAAO,EAAE,MAAM,CAAC,GAAG,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO;YAC9C,UAAU,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC,OAAO;YACvD,MAAM;SACP,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAwB,EAAE,IAAY;IAClE,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;AAC9F,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAwB,EAAE,SAAiC;IACzF,OAAO,OAAO,CAAC,MAAM,CACnB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAC7F,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,MAAkB,EAAE,KAAa;IACvD,OAAO;QACL,QAAQ,EAAE,MAAM,CAAC,EAAE;QACnB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;QAC1B,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI;QAC1B,cAAc,EAAE,MAAM,CAAC,IAAI,KAAK,KAAK;KACtC,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,iBAAiB;IACX,WAAW,CAAS;IACpB,OAAO,CAAW;IAClB,WAAW,CAAqB;IAChC,mBAAmB,CAAuB;IAC1C,GAAG,CAAa;IAChB,UAAU,CAAS;IACnB,kBAAkB,CAAS;IAC3B,mBAAmB,CAAS;IAC5B,eAAe,CAAS;IACxB,iBAAiB,CAAS;IAC1B,WAAW,CAAS;IAErC,YAAY,OAAiC;QAC3C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,WAAW,EAAE,CAAC;QAC5D,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,IAAI,IAAI,mBAAmB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QACvG,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,mBAAmB,CAAC;QAC5D,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,kBAAkB,IAAI,6BAA6B,CAAC;QACtF,IAAI,CAAC,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,IAAI,4BAA4B,CAAC;QACvF,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,IAAI,yBAAyB,CAAC;QAC5E,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,IAAI,2BAA2B,CAAC;QAClF,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,oBAAoB,CAAC;IACjE,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,KAAwB,EACxB,UAAsC,EAAE;QAExC,MAAM,cAAc,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChC,OAAO;gBACL,cAAc,EAAE,EAAE;gBAClB,KAAK,EAAE,EAAE;gBACT,cAAc,EAAE,0BAA0B,CAAC,0BAA0B,CAAC;gBACtE,WAAW,EAAE,iBAAiB,CAAC;oBAC7B,MAAM,EAAE,aAAa;oBACrB,UAAU,EAAE,aAAa;oBACzB,MAAM,EAAE,aAAa;oBACrB,OAAO,EAAE,CAAC,0BAA0B,CAAC;oBACrC,UAAU,EAAE,IAAI;oBAChB,SAAS,EAAE,SAAS;oBACpB,cAAc,EAAE,CAAC;oBACjB,aAAa,EAAE,CAAC;iBACjB,CAAC;aACH,CAAC;QACJ,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,sBAAsB,CACjD,cAAc,EACd,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC,kBAAkB,CAC5C,CAAC;QACF,MAAM,cAAc,GAAG,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAC3D,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAE9E,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC,yBAAyB,CAAC,cAAc,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;QACnF,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,eAAe,CACrE,MAAM,EACN,SAAS,CAAC,aAAa,EACvB,8BAA8B,CAAC,mBAAmB,CAAC,CACpD,CAAC;QACF,MAAM,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;QACpD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,EAAE,EAAE,SAAS,CAAC,aAAa,EAAE;YACrF,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU;YACjD,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YACvD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,CAAC;YAChF,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,eAAe,EAAE,CAAC;YACpD,MAAM,OAAO,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI;gBACnD,IAAI;gBACJ,SAAS,EAAE,EAAE;gBACb,aAAa,EAAE,EAAE;gBACjB,YAAY,EAAE,EAAE;gBAChB,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,CAAC;aACV,CAAC;YAEF,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;gBACxC,OAAO;oBACL,IAAI;oBACJ,IAAI,EAAE,0BAA0B,CAAC,kCAAkC,CAAC;oBACpE,QAAQ,EAAE,EAAE;oBACZ,WAAW,EAAE,iBAAiB,CAAC;wBAC7B,MAAM,EAAE,WAAW;wBACnB,UAAU,EAAE,SAAS,CAAC,YAAY,IAAI,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ;wBACrF,MAAM,EAAE,UAAU;wBAClB,OAAO,EAAE,CAAC,kCAAkC,CAAC;wBAC7C,UAAU;wBACV,SAAS,EAAE,SAAS,CAAC,SAAS;wBAC9B,cAAc,EAAE,CAAC;wBACjB,aAAa,EAAE,CAAC;wBAChB,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;qBACjD,CAAC;iBACyB,CAAC;YAChC,CAAC;YAED,IAAI,UAAU,GAAsB,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC7F,IAAI,SAAS,CAAC,YAAY,IAAI,SAAS,CAAC,kBAAkB,EAAE,CAAC;gBAC3D,UAAU,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;YAC/C,CAAC;YAED,OAAO;gBACL,IAAI;gBACJ,IAAI,EAAE,IAAI,CAAC,qBAAqB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC;gBAC9D,QAAQ;gBACR,WAAW,EAAE,iBAAiB,CAAC;oBAC7B,MAAM,EAAE,IAAI;oBACZ,UAAU;oBACV,MAAM,EAAE,UAAU;oBAClB,OAAO,EAAE,CAAC,+CAA+C,CAAC;oBAC1D,UAAU;oBACV,SAAS,EAAE,SAAS,CAAC,SAAS;oBAC9B,cAAc,EAAE,CAAC;oBACjB,aAAa,EAAE,CAAC;oBAChB,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;iBACjD,CAAC;aACyB,CAAC;QAChC,CAAC,CAAC,CAAC;QAEH,IAAI,UAA8B,CAAC;QACnC,IAAI,cAAc,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAChD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,uBAAuB,CAAC;gBAC5D,UAAU,EAAE,UAAU;gBACtB,MAAM,EAAE,UAAU;gBAClB,WAAW;aACZ,CAAC,CAAC;YACH,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;QACnC,CAAC;QAED,MAAM,gBAAgB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;QACpF,MAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM,GAAG,CAAC;YAChD,CAAC,CAAC,IAAI,CAAC,2BAA2B,CAAC,gBAAgB,EAAE,OAAO,EAAE,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC;YAC/F,CAAC,CAAC,0BAA0B,CAAC,0CAA0C,CAAC,CAAC;QAC3E,MAAM,iBAAiB,GAAG,IAAI,CAAC,0BAA0B,CACvD,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,EAC1D,SAAS,CAAC,YAAY,IAAI,SAAS,CAAC,kBAAkB,CACvD,CAAC;QAEF,OAAO;YACL,cAAc;YACd,KAAK,EAAE,WAAW;YAClB,cAAc;YACd,WAAW,EAAE,iBAAiB,CAAC;gBAC7B,MAAM,EAAE,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW;gBACxD,UAAU,EAAE,iBAAiB;gBAC7B,MAAM,EAAE,UAAU;gBAClB,OAAO,EAAE,CAAC,GAAG,SAAS,CAAC,OAAO,EAAE,+DAA+D,CAAC;gBAChG,UAAU;gBACV,SAAS,EAAE,SAAS,CAAC,SAAS;gBAC9B,cAAc,EAAE,cAAc,CAAC,MAAM;gBACrC,aAAa,EAAE,SAAS,CAAC,aAAa,CAAC,MAAM;gBAC7C,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;aACjD,CAAC;YACF,UAAU;SACX,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,uBAAuB,CAAC,KAAa;QACzC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC3D,OAAO,OAAO;aACX,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;aAC9C,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YACpB,IAAI,IAAI,CAAC,cAAc,KAAK,KAAK,CAAC,cAAc,EAAE,CAAC;gBACjD,OAAO,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACtC,CAAC;YAED,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC3C,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;YAC9C,CAAC;YAED,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,KAAa,EACb,UAAsC,EAAE;QAExC,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAClC,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO,6BAA6B,CAAC,KAAK,EAAE,8BAA8B,CAAC,CAAC;QAC9E,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;QACrE,MAAM,UAAU,GAAG,YAAY;YAC7B,CAAC,CAAC,CAAC,cAAc,CAAC,YAAY,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;YACnD,CAAC,CAAC,MAAM,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAC;QAErD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO,6BAA6B,CAAC,YAAY,EAAE,6BAA6B,EAAE,WAAW,CAAC,CAAC;QACjG,CAAC;QAED,MAAM,eAAe,GAAG,YAAY;YAClC,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAC/D,MAAM,WAAW,GAAG,CAAC,YAAY;eAC5B,CAAC,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QAE/F,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,6BAA6B,CAClC,YAAY,EACZ,8CAA8C,EAC9C,WAAW,EACX,UAAU,CACX,CAAC;QACJ,CAAC;QAED,MAAM,QAAQ,GAAG,YAAY;YAC3B,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;YACf,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;QAElD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,6BAA6B,CAAC,YAAY,EAAE,iCAAiC,EAAE,WAAW,CAAC,CAAC;QACrG,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,4BAA4B,EAAE,CAAC;QAC3D,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC;QAC5C,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAE9E,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,IAAI,cAAc,EAAE,CAAC;gBACnB,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,6BAA6B,CAAC,QAAQ,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;gBACnG,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,KAAK,aAAa,EAAE,CAAC;oBAChD,OAAO;wBACL,GAAG,MAAM;wBACT,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU;wBACzE,WAAW,EAAE,kBAAkB,CAC7B,MAAM,CAAC,WAAW,EAClB,IAAI,CAAC,GAAG,EAAE,EACV,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,iBAAiB,CACvB;qBACF,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,OAAO,6BAA6B,CAClC,YAAY,EACZ,qEAAqE,CACtE,CAAC;QACJ,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,eAAe,CACrE,MAAM,EACN,CAAC,QAAQ,CAAC,IAAI,CAAC,EACf,8BAA8B,CAAC,uBAAuB,YAAY,EAAE,CAAC,CACtE,CAAC;QACF,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,eAAe,EAAE,CAAC;QACzF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YAC1F,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI,CAAC,UAAU;YACjD,WAAW,EAAE,IAAI,CAAC,WAAW;SAC9B,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,iBAAiB,CAAC,sBAAsB,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;QAExF,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;YACxC,OAAO;gBACL,KAAK,EAAE,YAAY;gBACnB,UAAU;gBACV,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;gBACtB,QAAQ,EAAE,EAAE;gBACZ,IAAI,EAAE,0BAA0B,CAAC,oCAAoC,CAAC;gBACtE,WAAW,EAAE,iBAAiB,CAAC;oBAC7B,MAAM,EAAE,WAAW;oBACnB,UAAU,EAAE,KAAK;oBACjB,MAAM,EAAE,UAAU;oBAClB,OAAO,EAAE,CAAC,oCAAoC,CAAC;oBAC/C,UAAU;oBACV,SAAS,EAAE,MAAM;oBACjB,cAAc,EAAE,CAAC;oBACjB,aAAa,EAAE,CAAC;iBACjB,CAAC;aACH,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,qBAAqB,CACrC,QAAQ,CAAC,IAAI,EACb,OAAO,EACP,IAAI,EACJ;YACE,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,SAAS,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;YAC9B,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CACF,CAAC;QAEF,MAAM,MAAM,GAAwB;YAClC,KAAK,EAAE,YAAY;YACnB,UAAU;YACV,MAAM,EAAE,QAAQ;YAChB,KAAK,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC;YACtB,QAAQ;YACR,IAAI;YACJ,WAAW,EAAE,iBAAiB,CAAC;gBAC7B,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ;gBACvD,MAAM,EAAE,UAAU;gBAClB,OAAO,EAAE,CAAC,+CAA+C,CAAC;gBAC1D,UAAU;gBACV,SAAS,EAAE,MAAM;gBACjB,cAAc,EAAE,CAAC;gBACjB,aAAa,EAAE,CAAC;aACjB,CAAC;SACH,CAAC;QAEF,IAAI,cAAc,IAAI,OAAO,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAChD,MAAM,QAAQ,GAAG,MAAM,cAAc,CAAC,uBAAuB,CAAC;gBAC5D,UAAU,EAAE,UAAU;gBACtB,MAAM,EAAE,UAAU;gBAClB,aAAa,EAAE,CAAC,MAAM,CAAC;aACxB,CAAC,CAAC;YACH,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,UAAU,CAAC;QAC1C,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACrC,cAAwB,EACxB,SAOC,EACD,cAAgD;QAEhD,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,OAAO;gBACL,cAAc;gBACd,KAAK,EAAE,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,2BAA2B,CACtE,IAAI,EACJ,iFAAiF,EACjF,IAAI,EACJ,aAAa,CACd,CAAC;gBACF,cAAc,EAAE,0BAA0B,CAAC,yDAAyD,CAAC;gBACrG,WAAW,EAAE,iBAAiB,CAAC;oBAC7B,MAAM,EAAE,aAAa;oBACrB,UAAU,EAAE,aAAa;oBACzB,MAAM,EAAE,aAAa;oBACrB,OAAO,EAAE,CAAC,GAAG,SAAS,CAAC,OAAO,EAAE,yDAAyD,CAAC;oBAC1F,UAAU,EAAE,IAAI;oBAChB,SAAS,EAAE,SAAS,CAAC,SAAS;oBAC9B,cAAc,EAAE,cAAc,CAAC,MAAM;oBACrC,aAAa,EAAE,CAAC;oBAChB,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;iBACjD,CAAC;aACH,CAAC;QACJ,CAAC;QAED,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,GAAG,CACrC,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;YACzC,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;YACtE,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,2BAA2B,CAChC,IAAI,EACJ,iDAAiD,EACjD,IAAI,EACJ,aAAa,CACd,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,GAAG,MAAM;gBACT,WAAW,EAAE,kBAAkB,CAC7B,MAAM,CAAC,WAAW,EAClB,IAAI,CAAC,GAAG,EAAE,EACV,IAAI,CAAC,eAAe,EACpB,IAAI,CAAC,iBAAiB,CACvB;aACF,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;QAEF,MAAM,gBAAgB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;QACtF,MAAM,cAAc,GAAG,aAAa,CAAC,MAAM,CACzC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,EAAE,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,EACjF,aAAa,CACd,CAAC;QAEF,OAAO;YACL,cAAc;YACd,KAAK,EAAE,aAAa;YACpB,cAAc,EAAE,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC;YACxD,WAAW,EAAE,iBAAiB,CAAC;gBAC7B,MAAM,EAAE,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa;gBAC1D,UAAU,EAAE,SAAS,CAAC,YAAY,IAAI,SAAS,CAAC,kBAAkB;oBAChE,CAAC,CAAC,mBAAmB,CAAC,cAAc,CAAC;oBACrC,CAAC,CAAC,cAAc;gBAClB,MAAM,EAAE,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa;gBACpE,OAAO,EAAE,CAAC,GAAG,SAAS,CAAC,OAAO,EAAE,+CAA+C,CAAC;gBAChF,UAAU,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,UAAU,IAAI,IAAI;gBAC/D,SAAS,EAAE,SAAS,CAAC,SAAS;gBAC9B,cAAc,EAAE,cAAc,CAAC,MAAM;gBACrC,aAAa,EAAE,gBAAgB,CAAC,MAAM;gBACtC,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;aACjD,CAAC;SACH,CAAC;IACJ,CAAC;IAEO,2BAA2B,CACjC,WAAgC,EAChC,OAAwB,EACxB,aAAiD,EACjD,OAAuC;QAEvC,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAa,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACpD,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI;gBAChD,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,SAAS,EAAE,EAAE;gBACb,aAAa,EAAE,EAAE;gBACjB,YAAY,EAAE,EAAE;gBAChB,OAAO,EAAE,CAAC;gBACV,MAAM,EAAE,CAAC;aACV,CAAC;YACF,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,eAAe,EAAE,CAAC;YAC3D,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,eAAe,CACzB,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,CAAC,EACnE,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAClC,CAAC;IACJ,CAAC;IAEO,qBAAqB,CAC3B,IAAY,EACZ,OAAwB,EACxB,IAAuB,EACvB,OAA8B;QAE9B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,kBAAkB,CAC9C,CAAC,IAAI,CAAC,EACN,OAAO,EACP,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CACvC,CAAC;QACF,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1C,CAAC;IAEO,eAAe,CACrB,IAA0D,EAC1D,IAAmC;QAEnC,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,IAAI,EAAE,IAAI,IAAI;gBACZ,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;gBAC1B,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAyC;gBAC7D,QAAQ,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ;gBAC5B,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS;aAC/B;YACD,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC;SACnC,CAAC;IACJ,CAAC;IAEO,UAAU,CAAC,IAAY,EAAE,IAAuB,EAAE,OAA8B;QACtF,OAAO;YACL,IAAI;YACJ,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE;gBACJ,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,SAAS,EAAE,IAAI,CAAC,SAAS;aAC1B;YACD,IAAI,EAAE;gBACJ,MAAM,EAAE,IAAI,CAAC,SAAS;aACvB;YACD,IAAI,EAAE,OAAO,CAAC,aAAa;YAC3B,UAAU,EAAE,OAAO,CAAC,YAAY;SACjC,CAAC;IACJ,CAAC;IAEO,YAAY,CAAC,MAAyB;QAC5C,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6B,CAAC;QACrD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAClC,cAAwB,EACxB,QAAgB;QAShB,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,GAAG,CACtC,cAAc,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAC5D,CAAC;QACF,cAAc,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;YAClC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;YAC7C,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC;YAChD,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;gBAC7B,OAAO,UAAU,GAAG,SAAS,CAAC;YAChC,CAAC;YAED,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,MAAM,eAAe,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;QACvE,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QAClF,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,CAAC;QACpE,MAAM,kBAAkB,GAAG,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC,mBAAmB,CAAC;QAC5E,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,CAAC,IAAI,CAAC,uBAAuB,eAAe,CAAC,MAAM,iBAAiB,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC;QACtG,CAAC;QAED,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAO,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC;QAC7E,CAAC;QAED,OAAO;YACL,aAAa,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC;YACzD,aAAa;YACb,YAAY;YACZ,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,MAAM;YACnD,kBAAkB;YAClB,OAAO;SACR,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,IAAY;QAC3C,MAAM,cAAc,GAAG,4BAA4B,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5E,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;aACzD,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,4BAA4B,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,cAAc,CAAC,CAAC;QACtG,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;QACxC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;QAEvC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,KAAK,MAAM,UAAU,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;gBACxE,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACzC,CAAC;YAED,KAAK,MAAM,UAAU,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;gBACtE,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACxC,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YAC/E,KAAK,MAAM,cAAc,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;gBACpD,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QAED,OAAO;YACL,IAAI;YACJ,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7C,aAAa,EAAE,CAAC,GAAG,aAAa,CAAC;YACjC,YAAY,EAAE,CAAC,GAAG,YAAY,CAAC;YAC/B,OAAO,EAAE,aAAa,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI;YAC/C,MAAM,EAAE,YAAY,CAAC,IAAI;SAC1B,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,SAAiC;QAClE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAClE,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QACzD,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAEvD,KAAK,MAAM,MAAM,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxE,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/B,CAAC;QAED,KAAK,MAAM,MAAM,IAAI,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxE,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC;QAED,OAAO;YACL,aAAa,EAAE,CAAC,GAAG,aAAa,CAAC;YACjC,YAAY,EAAE,CAAC,GAAG,YAAY,CAAC;YAC/B,OAAO,EAAE,aAAa,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI;YAC/C,MAAM,EAAE,YAAY,CAAC,IAAI;SAC1B,CAAC;IACJ,CAAC;IAEO,0BAA0B,CAChC,WAAgC,EAChC,iBAA0B;QAE1B,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAC7B,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC,oBAAoB,CAAC,OAAO,EAAE,UAAU,CAAC,EAClE,aAAa,CACd,CAAC;QACF,OAAO,iBAAiB,CAAC,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9D,CAAC;IAEO,oBAAoB,CAAC,OAA4B;QACvD,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;QAChF,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAClC,OAAO,0BAA0B,CAAC,qCAAqC,CAAC,CAAC;QAC3E,CAAC;QAED,MAAM,SAAS,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,CAC7D,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAC1E,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,YAAY,CAC9B,gBAAgB,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAC9D,CAAC;QAEF,OAAO;YACL,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,KAAK;YAC3B,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;YAC5E,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;YAChF,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI;YACzB,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;YAC9E,WAAW;SACZ,CAAC;IACJ,CAAC;IAEO,4BAA4B;QAClC,OAAO,2BAA2B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC;IACzE,CAAC;CACF"}
@@ -18,7 +18,7 @@ export interface UnifiedResult {
18
18
  /** 唯一标识 */
19
19
  id: string;
20
20
  /** 来源工具 */
21
- source: 'codemap' | 'ast-grep' | 'rg-internal' | 'ai-feed';
21
+ source: 'codemap' | 'ast-grep' | 'rg-internal' | 'ai-feed' | 'codemap-fallback';
22
22
  /** 工具返回的原始分数(0-1) */
23
23
  toolScore: number;
24
24
  /** 结果类型 */
@@ -122,6 +122,22 @@ export interface AnalyzeWarning {
122
122
  replacementIntent: IntentType;
123
123
  sunsetPolicy: '2-minor-window';
124
124
  }
125
+ export type AnalyzeDiagnosticStatus = 'success' | 'partialFailure' | 'failure';
126
+ export type AnalyzeDiagnosticSeverity = 'info' | 'warning' | 'error';
127
+ export interface AnalyzeDiagnostic {
128
+ code: string;
129
+ severity: AnalyzeDiagnosticSeverity;
130
+ message: string;
131
+ source: string;
132
+ recoverable: boolean;
133
+ details?: Record<string, unknown>;
134
+ }
135
+ export interface AnalyzeDiagnostics {
136
+ status: AnalyzeDiagnosticStatus;
137
+ items: AnalyzeDiagnostic[];
138
+ failedTools?: string[];
139
+ degradedTools?: string[];
140
+ }
125
141
  export interface ReadImpactAnalysisItem {
126
142
  file: string;
127
143
  location?: SourceLocation;
@@ -248,6 +264,8 @@ export interface CodemapOutput {
248
264
  results: UnifiedResult[];
249
265
  /** 结构化 warning(兼容期弃用提示等) */
250
266
  warnings?: AnalyzeWarning[];
267
+ /** 机器可读诊断,区分成功、降级和失败 */
268
+ diagnostics?: AnalyzeDiagnostics;
251
269
  /** intent 特定的 machine-readable 聚合分析 */
252
270
  analysis?: CodemapAnalysis;
253
271
  /** 可选的元数据 */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/orchestrator/types.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,WAAW;IACX,EAAE,EAAE,MAAM,CAAC;IACX,WAAW;IACX,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,aAAa,GAAG,SAAS,CAAC;IAC3D,qBAAqB;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW;IACX,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,eAAe,GAAG,iBAAiB,CAAC;IACvE,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,mCAAmC;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kBAAkB;IAClB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,aAAa;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa;IACb,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,cAAc;IACd,QAAQ,CAAC,EAAE;QACT,WAAW;QACX,UAAU,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC;QAC7D,aAAa;QACb,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;QACxB,cAAc;QACd,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW;QACX,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,cAAc;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,aAAa;QACb,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,YAAY;QACZ,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW;QACX,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,WAAW;QACX,SAAS,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;QACtC,YAAY;QACZ,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;KACvC,CAAC;CACH;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,cAAc;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,wBAAwB;IACxB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,wBAAwB;IACxB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,eAAe;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa;IACb,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,2CAA4C,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,cAAc,iHASjB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,yBAAyB,qGAQ5B,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AACzD,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAC/D,MAAM,MAAM,0BAA0B,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAC;AACpF,MAAM,MAAM,mBAAmB,GAAG,0BAA0B,CAAC;AAE7D;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,iBAAiB;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,YAAY;IACZ,cAAc,CAAC,EAAE,0BAA0B,CAAC;CAC7C;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,mBAAmB,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,iBAAiB,EAAE,UAAU,CAAC;IAC9B,YAAY,EAAE,gBAAgB,CAAC;CAChC;AAED,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;CACjC;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;CACjC;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,sBAAsB,EAAE,CAAC;IAClC,UAAU,CAAC,EAAE,0BAA0B,EAAE,CAAC;CAC3C;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,kBAAkB,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,yBAAyB,EAAE,CAAC;IACxC,UAAU,CAAC,EAAE,0BAA0B,EAAE,CAAC;CAC3C;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACjC,aAAa,CAAC,EAAE,wBAAwB,EAAE,CAAC;CAC5C;AAED,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG,YAAY,GAAG,YAAY,CAAC;AAEzE;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,UAAU,CAAC;IACnB,8BAA8B;IAC9B,eAAe,CAAC,EAAE,mBAAmB,CAAC;IACtC,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,KAAK,EAAE,QAAQ,GAAG,YAAY,CAAC;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,mBAAmB,CAAC;CACrC;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,QAAQ,GAAG,YAAY,CAAC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,gCAAgC;IAChC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,kBAAkB;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY;IACZ,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;CAClC;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,kBAAkB;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY;IACZ,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACjC,cAAc;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,6BAA6B;IAC7B,aAAa,EAAE,MAAM,CAAC;IACtB,oBAAoB;IACpB,MAAM,EAAE,UAAU,CAAC;IACnB,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,YAAY;IACZ,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW;IACX,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,cAAc,EAAE,CAAC;IAC5B,uCAAuC;IACvC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,aAAa;IACb,QAAQ,CAAC,EAAE;QACT,eAAe;QACf,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW;QACX,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,gBAAgB;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS;QACT,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACH;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,aAAa,CAoBlE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAIjF"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/orchestrator/types.ts"],"names":[],"mappings":"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"}
@@ -53,6 +53,25 @@ export function isCodemapOutput(obj) {
53
53
  return false;
54
54
  if (!Array.isArray(output.results))
55
55
  return false;
56
+ if (output.diagnostics !== undefined) {
57
+ if (typeof output.diagnostics !== 'object' || output.diagnostics === null)
58
+ return false;
59
+ const diagnostics = output.diagnostics;
60
+ if (!['success', 'partialFailure', 'failure'].includes(diagnostics.status))
61
+ return false;
62
+ if (!Array.isArray(diagnostics.items))
63
+ return false;
64
+ if (diagnostics.failedTools !== undefined &&
65
+ !(Array.isArray(diagnostics.failedTools) &&
66
+ diagnostics.failedTools.every(item => typeof item === 'string'))) {
67
+ return false;
68
+ }
69
+ if (diagnostics.degradedTools !== undefined &&
70
+ !(Array.isArray(diagnostics.degradedTools) &&
71
+ diagnostics.degradedTools.every(item => typeof item === 'string'))) {
72
+ return false;
73
+ }
74
+ }
56
75
  return true;
57
76
  }
58
77
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/orchestrator/types.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,gFAAgF;AA+FhF;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAExE;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,QAAQ;IACR,YAAY;IACZ,QAAQ;IACR,eAAe;IACf,YAAY;IACZ,UAAU;IACV,UAAU;IACV,WAAW;CACH,CAAC;AAEX;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,QAAQ;IACR,YAAY;IACZ,QAAQ;IACR,eAAe;IACf,YAAY;IACZ,UAAU;IACV,WAAW;CACH,CAAC;AAyLX;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,GAAY;IAC1C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QAC5C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,MAAM,GAAG,GAA8B,CAAC;IAE9C,SAAS;IACT,IAAI,OAAO,MAAM,CAAC,aAAa,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC3D,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACpD,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAClD,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAEtF,MAAM,UAAU,GAAG,MAAM,CAAC,UAAqC,CAAC;IAChE,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACvD,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAe,CAAC;QAAE,OAAO,KAAK,CAAC;IAElF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;QAAE,OAAO,KAAK,CAAC;IAEjD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,KAAa;IACpD,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,MAAM,CAAC;IAChC,IAAI,KAAK,IAAI,GAAG;QAAE,OAAO,QAAQ,CAAC;IAClC,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/orchestrator/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export { createCodeMapMcpServer, startCodeMapMcpServer } from './server.js';
2
+ export { CodeMapMcpService } from './service.js';
3
+ export type { McpGraphStatus, McpImpactNode, McpImpactResult, McpQueryResult, McpSymbolRef, McpToolConfidence, McpToolError, McpToolStatus, } from './types.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/server/mcp/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,YAAY,EACV,cAAc,EACd,aAAa,EACb,eAAe,EACf,cAAc,EACd,YAAY,EACZ,iBAAiB,EACjB,YAAY,EACZ,aAAa,GACd,MAAM,YAAY,CAAC"}
@@ -0,0 +1,5 @@
1
+ // [META] since:2026-04-19 | owner:server-team | stable:false
2
+ // [WHY] Public entry for the experimental MCP stdio thin slice
3
+ export { createCodeMapMcpServer, startCodeMapMcpServer } from './server.js';
4
+ export { CodeMapMcpService } from './service.js';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/server/mcp/index.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,+DAA+D;AAE/D,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
3
+ import type { Readable, Writable } from 'node:stream';
4
+ import type { IStorage } from '../../interface/types/storage.js';
5
+ export interface StartCodeMapMcpServerOptions {
6
+ rootDir?: string;
7
+ stdin?: Readable;
8
+ stdout?: Writable;
9
+ }
10
+ export declare function createCodeMapMcpServer(storage: IStorage): McpServer;
11
+ export declare function startCodeMapMcpServer(options?: StartCodeMapMcpServerOptions): Promise<{
12
+ server: McpServer;
13
+ storage: IStorage;
14
+ transport: StdioServerTransport;
15
+ close: () => Promise<void>;
16
+ }>;
17
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/server/mcp/server.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAOjE,MAAM,WAAW,4BAA4B;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,CAAC;IACjB,MAAM,CAAC,EAAE,QAAQ,CAAC;CACnB;AAuDD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,QAAQ,GAAG,SAAS,CAUnE;AAED,wBAAsB,qBAAqB,CACzC,OAAO,GAAE,4BAAiC,GACzC,OAAO,CAAC;IACT,MAAM,EAAE,SAAS,CAAC;IAClB,OAAO,EAAE,QAAQ,CAAC;IAClB,SAAS,EAAE,oBAAoB,CAAC;IAChC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5B,CAAC,CAiBD"}
@@ -0,0 +1,84 @@
1
+ // [META] since:2026-04-19 | owner:server-team | stable:false
2
+ // [WHY] Provide the experimental local-only MCP stdio server for symbol query and impact thin slice
3
+ import { cwd } from 'node:process';
4
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
5
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
6
+ import { z } from 'zod';
7
+ import { createConfiguredStorage } from '../../cli/storage-runtime.js';
8
+ import { CodeMapMcpService } from './service.js';
9
+ const MCP_SERVER_NAME = 'mycodemap-experimental';
10
+ const MCP_SERVER_VERSION = process.env.npm_package_version ?? '0.5.0';
11
+ function renderStructuredContent(result) {
12
+ return JSON.stringify(result, null, 2);
13
+ }
14
+ function registerTools(server, service) {
15
+ server.registerTool('codemap_query', {
16
+ title: 'CodeMap Query',
17
+ description: 'Experimental: query a symbol definition plus callers and callees from the local CodeMap graph.',
18
+ inputSchema: {
19
+ symbol: z.string().min(1).describe('Exact symbol name to resolve'),
20
+ filePath: z.string().min(1).optional().describe('Optional file path to disambiguate same-name symbols'),
21
+ },
22
+ }, async ({ symbol, filePath }) => {
23
+ const structuredContent = await service.querySymbol({ symbol, filePath });
24
+ return {
25
+ content: [{
26
+ type: 'text',
27
+ text: renderStructuredContent(structuredContent),
28
+ }],
29
+ structuredContent,
30
+ isError: structuredContent.status !== 'ok',
31
+ };
32
+ });
33
+ server.registerTool('codemap_impact', {
34
+ title: 'CodeMap Impact',
35
+ description: 'Experimental: query symbol-level caller impact from the local CodeMap graph.',
36
+ inputSchema: {
37
+ symbol: z.string().min(1).describe('Exact symbol name to resolve'),
38
+ filePath: z.string().min(1).optional().describe('Optional file path to disambiguate same-name symbols'),
39
+ depth: z.number().int().min(1).max(20).optional().describe('Requested caller traversal depth'),
40
+ limit: z.number().int().min(1).max(200).optional().describe('Requested maximum affected symbols'),
41
+ },
42
+ }, async ({ symbol, filePath, depth, limit }) => {
43
+ const structuredContent = await service.impactSymbol({
44
+ symbol,
45
+ filePath,
46
+ depth,
47
+ limit,
48
+ });
49
+ return {
50
+ content: [{
51
+ type: 'text',
52
+ text: renderStructuredContent(structuredContent),
53
+ }],
54
+ structuredContent,
55
+ isError: structuredContent.status !== 'ok',
56
+ };
57
+ });
58
+ }
59
+ export function createCodeMapMcpServer(storage) {
60
+ const server = new McpServer({
61
+ name: MCP_SERVER_NAME,
62
+ version: MCP_SERVER_VERSION,
63
+ });
64
+ const service = new CodeMapMcpService(storage);
65
+ registerTools(server, service);
66
+ return server;
67
+ }
68
+ export async function startCodeMapMcpServer(options = {}) {
69
+ const rootDir = options.rootDir ?? cwd();
70
+ const { storage } = await createConfiguredStorage(rootDir);
71
+ const server = createCodeMapMcpServer(storage);
72
+ const transport = new StdioServerTransport(options.stdin, options.stdout);
73
+ await server.connect(transport);
74
+ return {
75
+ server,
76
+ storage,
77
+ transport,
78
+ close: async () => {
79
+ await server.close();
80
+ await storage.close();
81
+ },
82
+ };
83
+ }
84
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/server/mcp/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ import type { IStorage } from '../../interface/types/storage.js';
2
+ import type { McpImpactResult, McpQueryResult } from './types.js';
3
+ export declare const MAX_MCP_SYMBOL_IMPACT_DEPTH = 5;
4
+ export declare const MAX_MCP_SYMBOL_IMPACT_LIMIT = 50;
5
+ export declare const DEFAULT_MCP_SYMBOL_IMPACT_DEPTH = 3;
6
+ export declare const DEFAULT_MCP_SYMBOL_IMPACT_LIMIT = 20;
7
+ export interface QuerySymbolInput {
8
+ symbol: string;
9
+ filePath?: string;
10
+ }
11
+ export interface ImpactSymbolInput extends QuerySymbolInput {
12
+ depth?: number;
13
+ limit?: number;
14
+ }
15
+ export declare class CodeMapMcpService {
16
+ private readonly storage;
17
+ constructor(storage: IStorage);
18
+ querySymbol(input: QuerySymbolInput): Promise<McpQueryResult>;
19
+ impactSymbol(input: ImpactSymbolInput): Promise<McpImpactResult>;
20
+ private resolveSymbol;
21
+ }
22
+ //# sourceMappingURL=service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../../../src/server/mcp/service.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAiB,MAAM,kCAAkC,CAAC;AAChF,OAAO,KAAK,EAEV,eAAe,EACf,cAAc,EAKf,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAC7C,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,eAAO,MAAM,+BAA+B,IAAI,CAAC;AACjD,eAAO,MAAM,+BAA+B,KAAK,CAAC;AAElD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,iBAAkB,SAAQ,gBAAgB;IACzD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAwFD,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBAAP,OAAO,EAAE,QAAQ;IAExC,WAAW,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,cAAc,CAAC;IA6C7D,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;YA6DxD,aAAa;CAiD5B"}
@@ -0,0 +1,177 @@
1
+ // [META] since:2026-04-19 | owner:server-team | stable:false
2
+ // [WHY] Reuse storage truth to power experimental MCP symbol query and impact tools without duplicating graph logic
3
+ export const MAX_MCP_SYMBOL_IMPACT_DEPTH = 5;
4
+ export const MAX_MCP_SYMBOL_IMPACT_LIMIT = 50;
5
+ export const DEFAULT_MCP_SYMBOL_IMPACT_DEPTH = 3;
6
+ export const DEFAULT_MCP_SYMBOL_IMPACT_LIMIT = 20;
7
+ function normalizePath(value) {
8
+ return value.replace(/\\/gu, '/');
9
+ }
10
+ function matchesFilePath(candidatePath, requestedPath) {
11
+ const normalizedCandidate = normalizePath(candidatePath);
12
+ const normalizedRequested = normalizePath(requestedPath);
13
+ return normalizedCandidate === normalizedRequested
14
+ || normalizedCandidate.endsWith(`/${normalizedRequested}`)
15
+ || normalizedRequested.endsWith(`/${normalizedCandidate}`);
16
+ }
17
+ function toGraphStatus(metadata) {
18
+ return metadata.generatedAt ? metadata.graphStatus : 'missing';
19
+ }
20
+ function buildGraphEnvelope(metadata) {
21
+ return {
22
+ graph_status: toGraphStatus(metadata),
23
+ generated_at: metadata.generatedAt,
24
+ failed_file_count: metadata.failedFileCount,
25
+ parse_failure_files: [...metadata.parseFailureFiles],
26
+ };
27
+ }
28
+ function createErrorResult(metadata, status, confidence, error, base) {
29
+ return {
30
+ status,
31
+ confidence,
32
+ error,
33
+ ...buildGraphEnvelope(metadata),
34
+ ...base,
35
+ };
36
+ }
37
+ function toSymbolRef(symbol) {
38
+ return {
39
+ id: symbol.id,
40
+ module_id: symbol.moduleId,
41
+ name: symbol.name,
42
+ kind: symbol.kind,
43
+ visibility: symbol.visibility,
44
+ file_path: symbol.location.file,
45
+ line: symbol.location.line,
46
+ column: symbol.location.column,
47
+ signature: symbol.signature,
48
+ };
49
+ }
50
+ function clampImpactDepth(depth) {
51
+ if (!Number.isFinite(depth ?? NaN)) {
52
+ return DEFAULT_MCP_SYMBOL_IMPACT_DEPTH;
53
+ }
54
+ return Math.min(Math.max(Math.trunc(depth ?? DEFAULT_MCP_SYMBOL_IMPACT_DEPTH), 1), MAX_MCP_SYMBOL_IMPACT_DEPTH);
55
+ }
56
+ function clampImpactLimit(limit) {
57
+ if (!Number.isFinite(limit ?? NaN)) {
58
+ return DEFAULT_MCP_SYMBOL_IMPACT_LIMIT;
59
+ }
60
+ return Math.min(Math.max(Math.trunc(limit ?? DEFAULT_MCP_SYMBOL_IMPACT_LIMIT), 1), MAX_MCP_SYMBOL_IMPACT_LIMIT);
61
+ }
62
+ export class CodeMapMcpService {
63
+ storage;
64
+ constructor(storage) {
65
+ this.storage = storage;
66
+ }
67
+ async querySymbol(input) {
68
+ const metadata = await this.storage.loadGraphMetadata();
69
+ if (toGraphStatus(metadata) === 'missing') {
70
+ return createErrorResult(metadata, 'unavailable', 'unavailable', {
71
+ code: 'GRAPH_NOT_FOUND',
72
+ message: 'Code graph not found. Run `mycodemap generate --symbol-level` first.',
73
+ }, {
74
+ callers: [],
75
+ callees: [],
76
+ });
77
+ }
78
+ const resolved = await this.resolveSymbol(input, metadata);
79
+ if ('error' in resolved) {
80
+ return createErrorResult(metadata, resolved.status, resolved.confidence, resolved.error, {
81
+ callers: [],
82
+ callees: [],
83
+ });
84
+ }
85
+ const callers = await this.storage.findCallers(resolved.symbol.id);
86
+ const callees = await this.storage.findCallees(resolved.symbol.id);
87
+ return {
88
+ status: 'ok',
89
+ confidence: resolved.confidence,
90
+ ...buildGraphEnvelope(metadata),
91
+ symbol: toSymbolRef(resolved.symbol),
92
+ callers: callers.map(toSymbolRef),
93
+ callees: callees.map(toSymbolRef),
94
+ };
95
+ }
96
+ async impactSymbol(input) {
97
+ const metadata = await this.storage.loadGraphMetadata();
98
+ if (toGraphStatus(metadata) === 'missing') {
99
+ return createErrorResult(metadata, 'unavailable', 'unavailable', {
100
+ code: 'GRAPH_NOT_FOUND',
101
+ message: 'Code graph not found. Run `mycodemap generate --symbol-level` first.',
102
+ }, {
103
+ affected_symbols: [],
104
+ depth: clampImpactDepth(input.depth),
105
+ limit: clampImpactLimit(input.limit),
106
+ truncated: false,
107
+ });
108
+ }
109
+ const resolved = await this.resolveSymbol(input, metadata);
110
+ const depth = clampImpactDepth(input.depth);
111
+ const limit = clampImpactLimit(input.limit);
112
+ if ('error' in resolved) {
113
+ return createErrorResult(metadata, resolved.status, resolved.confidence, resolved.error, {
114
+ affected_symbols: [],
115
+ depth,
116
+ limit,
117
+ truncated: false,
118
+ });
119
+ }
120
+ const impact = await this.storage.calculateSymbolImpact(resolved.symbol.id, depth, limit);
121
+ return {
122
+ status: 'ok',
123
+ confidence: resolved.confidence,
124
+ ...buildGraphEnvelope(metadata),
125
+ root_symbol: toSymbolRef(impact.rootSymbol),
126
+ affected_symbols: impact.affectedSymbols.map(node => ({
127
+ symbol: toSymbolRef(node.symbol),
128
+ depth: node.depth,
129
+ path: [...node.path],
130
+ })),
131
+ depth: impact.depth,
132
+ limit: impact.limit,
133
+ truncated: impact.truncated,
134
+ };
135
+ }
136
+ async resolveSymbol(input, metadata) {
137
+ const matchedByName = (await this.storage.findSymbolByName(input.symbol))
138
+ .filter(symbol => symbol.name === input.symbol);
139
+ const scopedMatches = input.filePath
140
+ ? matchedByName.filter(symbol => matchesFilePath(symbol.location.file, input.filePath ?? ''))
141
+ : matchedByName;
142
+ if (scopedMatches.length === 1) {
143
+ return {
144
+ symbol: scopedMatches[0],
145
+ confidence: metadata.graphStatus === 'partial' ? 'high' : 'high',
146
+ };
147
+ }
148
+ if (scopedMatches.length > 1) {
149
+ return {
150
+ status: 'ambiguous',
151
+ confidence: 'ambiguous',
152
+ error: {
153
+ code: 'AMBIGUOUS_EDGE',
154
+ message: `Symbol "${input.symbol}" resolves to multiple candidates.`,
155
+ details: {
156
+ candidates: scopedMatches.map(symbol => ({
157
+ id: symbol.id,
158
+ file_path: symbol.location.file,
159
+ line: symbol.location.line,
160
+ })),
161
+ },
162
+ },
163
+ };
164
+ }
165
+ return {
166
+ status: 'not_found',
167
+ confidence: 'unavailable',
168
+ error: {
169
+ code: 'SYMBOL_NOT_FOUND',
170
+ message: input.filePath
171
+ ? `Symbol "${input.symbol}" not found in "${input.filePath}".`
172
+ : `Symbol "${input.symbol}" not found.`,
173
+ },
174
+ };
175
+ }
176
+ }
177
+ //# sourceMappingURL=service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../../../src/server/mcp/service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import type { Symbol } from '../../interface/types/index.js';
2
+ import type { GraphMetadata } from '../../interface/types/storage.js';
3
+ export type McpToolStatus = 'ok' | 'not_found' | 'ambiguous' | 'unavailable';
4
+ export type McpToolConfidence = 'high' | 'ambiguous' | 'unavailable';
5
+ export type McpGraphStatus = GraphMetadata['graphStatus'] | 'missing';
6
+ export type McpErrorCode = 'GRAPH_NOT_FOUND' | 'SYMBOL_NOT_FOUND' | 'AMBIGUOUS_EDGE';
7
+ export interface McpToolError {
8
+ code: McpErrorCode;
9
+ message: string;
10
+ details?: Record<string, unknown>;
11
+ }
12
+ export interface McpSymbolRef {
13
+ id: string;
14
+ module_id: string;
15
+ name: string;
16
+ kind: Symbol['kind'];
17
+ visibility: Symbol['visibility'];
18
+ file_path: string;
19
+ line: number;
20
+ column: number;
21
+ signature?: string;
22
+ }
23
+ export interface McpQueryResult {
24
+ [key: string]: unknown;
25
+ status: McpToolStatus;
26
+ confidence: McpToolConfidence;
27
+ graph_status: McpGraphStatus;
28
+ generated_at: string | null;
29
+ failed_file_count: number;
30
+ parse_failure_files: string[];
31
+ symbol?: McpSymbolRef;
32
+ callers: McpSymbolRef[];
33
+ callees: McpSymbolRef[];
34
+ error?: McpToolError;
35
+ }
36
+ export interface McpImpactNode {
37
+ symbol: McpSymbolRef;
38
+ depth: number;
39
+ path: string[];
40
+ }
41
+ export interface McpImpactResult {
42
+ [key: string]: unknown;
43
+ status: McpToolStatus;
44
+ confidence: McpToolConfidence;
45
+ graph_status: McpGraphStatus;
46
+ generated_at: string | null;
47
+ failed_file_count: number;
48
+ parse_failure_files: string[];
49
+ root_symbol?: McpSymbolRef;
50
+ affected_symbols: McpImpactNode[];
51
+ depth: number;
52
+ limit: number;
53
+ truncated: boolean;
54
+ error?: McpToolError;
55
+ }
56
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/server/mcp/types.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAEtE,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,WAAW,GAAG,WAAW,GAAG,aAAa,CAAC;AAC7E,MAAM,MAAM,iBAAiB,GAAG,MAAM,GAAG,WAAW,GAAG,aAAa,CAAC;AACrE,MAAM,MAAM,cAAc,GAAG,aAAa,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC;AACtE,MAAM,MAAM,YAAY,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,gBAAgB,CAAC;AAErF,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,YAAY,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,YAAY,EAAE,cAAc,CAAC;IAC7B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,YAAY,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,EAAE,iBAAiB,CAAC;IAC9B,YAAY,EAAE,cAAc,CAAC;IAC7B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,WAAW,CAAC,EAAE,YAAY,CAAC;IAC3B,gBAAgB,EAAE,aAAa,EAAE,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,YAAY,CAAC;CACtB"}
@@ -0,0 +1,4 @@
1
+ // [META] since:2026-04-19 | owner:server-team | stable:false
2
+ // [WHY] Experimental MCP contract types for the Phase 26 symbol-query thin slice
3
+ export {};
4
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/server/mcp/types.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,iFAAiF"}
@@ -53,7 +53,7 @@ MyCodeMap 可以与多种 AI 编程助手集成,让 AI 能够:
53
53
  - 也可以通过 `mycodemap ci check-docs-sync` 走统一的 CI 子命令入口
54
54
  - 当前仓库的 agent 工程规则以 `docs/rules/engineering-with-codex-openai.md` 为准
55
55
  - 若文档或提示词仍把 `server`、`watch`、`report`、`logs` 当成当前 public CLI,必须同步改成 removed-command 迁移说明
56
- - 若项目启用了 `mycodemap.config.json.storage` 的 `kuzudb`,先确认可选依赖可用;若仍看到 `neo4j` 配置,应先迁移再让 AI 判断 graph backend 失败原因
56
+ - 若项目启用了 `mycodemap.config.json.storage` 的 `sqlite`,先确认 `better-sqlite3` 已安装且 Node.js `>=20`;若仍看到 `kuzudb` / `neo4j` 配置,应先迁移再让 AI 判断 graph backend 失败原因
57
57
 
58
58
  ---
59
59