spectra-cli 4.1.1 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (682) hide show
  1. package/README.md +12 -5
  2. package/dist/.spectra-build-meta.json +9 -0
  3. package/dist/adapters/go-adapter.d.ts.map +1 -1
  4. package/dist/adapters/go-adapter.js +2 -0
  5. package/dist/adapters/go-adapter.js.map +1 -1
  6. package/dist/adapters/index.d.ts +1 -1
  7. package/dist/adapters/index.d.ts.map +1 -1
  8. package/dist/adapters/java-adapter.d.ts.map +1 -1
  9. package/dist/adapters/java-adapter.js +2 -0
  10. package/dist/adapters/java-adapter.js.map +1 -1
  11. package/dist/adapters/language-adapter.d.ts +42 -9
  12. package/dist/adapters/language-adapter.d.ts.map +1 -1
  13. package/dist/adapters/python-adapter.d.ts +34 -6
  14. package/dist/adapters/python-adapter.d.ts.map +1 -1
  15. package/dist/adapters/python-adapter.js +168 -61
  16. package/dist/adapters/python-adapter.js.map +1 -1
  17. package/dist/adapters/ts-js-adapter.d.ts +13 -5
  18. package/dist/adapters/ts-js-adapter.d.ts.map +1 -1
  19. package/dist/adapters/ts-js-adapter.js +55 -14
  20. package/dist/adapters/ts-js-adapter.js.map +1 -1
  21. package/dist/batch/batch-orchestrator.d.ts +74 -5
  22. package/dist/batch/batch-orchestrator.d.ts.map +1 -1
  23. package/dist/batch/batch-orchestrator.js +583 -70
  24. package/dist/batch/batch-orchestrator.js.map +1 -1
  25. package/dist/batch/delta-regenerator.d.ts +2 -2
  26. package/dist/batch/delta-regenerator.d.ts.map +1 -1
  27. package/dist/batch/delta-regenerator.js +21 -28
  28. package/dist/batch/delta-regenerator.js.map +1 -1
  29. package/dist/batch/module-grouper.d.ts +9 -2
  30. package/dist/batch/module-grouper.d.ts.map +1 -1
  31. package/dist/batch/module-grouper.js +3 -1
  32. package/dist/batch/module-grouper.js.map +1 -1
  33. package/dist/batch/regen-plan.d.ts +78 -0
  34. package/dist/batch/regen-plan.d.ts.map +1 -0
  35. package/dist/batch/regen-plan.js +93 -0
  36. package/dist/batch/regen-plan.js.map +1 -0
  37. package/dist/cli/commands/batch.d.ts.map +1 -1
  38. package/dist/cli/commands/batch.js +36 -8
  39. package/dist/cli/commands/batch.js.map +1 -1
  40. package/dist/cli/commands/graph.js +1 -1
  41. package/dist/cli/commands/graph.js.map +1 -1
  42. package/dist/cli/commands/index.d.ts +8 -0
  43. package/dist/cli/commands/index.d.ts.map +1 -0
  44. package/dist/cli/commands/index.js +274 -0
  45. package/dist/cli/commands/index.js.map +1 -0
  46. package/dist/cli/commands/query.d.ts.map +1 -1
  47. package/dist/cli/commands/query.js +3 -1
  48. package/dist/cli/commands/query.js.map +1 -1
  49. package/dist/cli/commands/scaffold-kb.d.ts +9 -0
  50. package/dist/cli/commands/scaffold-kb.d.ts.map +1 -0
  51. package/dist/cli/commands/scaffold-kb.js +179 -0
  52. package/dist/cli/commands/scaffold-kb.js.map +1 -0
  53. package/dist/cli/index.js +33 -14
  54. package/dist/cli/index.js.map +1 -1
  55. package/dist/cli/utils/error-handler.d.ts +0 -6
  56. package/dist/cli/utils/error-handler.d.ts.map +1 -1
  57. package/dist/cli/utils/error-handler.js +0 -13
  58. package/dist/cli/utils/error-handler.js.map +1 -1
  59. package/dist/cli/utils/parse-args.d.ts +55 -3
  60. package/dist/cli/utils/parse-args.d.ts.map +1 -1
  61. package/dist/cli/utils/parse-args.js +176 -13
  62. package/dist/cli/utils/parse-args.js.map +1 -1
  63. package/dist/cli/version-meta.d.ts +16 -0
  64. package/dist/cli/version-meta.d.ts.map +1 -0
  65. package/dist/cli/version-meta.js +28 -0
  66. package/dist/cli/version-meta.js.map +1 -0
  67. package/dist/core/ast-analyzer.d.ts.map +1 -1
  68. package/dist/core/ast-analyzer.js +75 -5
  69. package/dist/core/ast-analyzer.js.map +1 -1
  70. package/dist/core/import-resolver.d.ts +93 -0
  71. package/dist/core/import-resolver.d.ts.map +1 -0
  72. package/dist/core/import-resolver.js +414 -0
  73. package/dist/core/import-resolver.js.map +1 -0
  74. package/dist/core/query-mappers/base-mapper.d.ts +13 -0
  75. package/dist/core/query-mappers/base-mapper.d.ts.map +1 -1
  76. package/dist/core/query-mappers/go-mapper.d.ts +68 -0
  77. package/dist/core/query-mappers/go-mapper.d.ts.map +1 -1
  78. package/dist/core/query-mappers/go-mapper.js +421 -0
  79. package/dist/core/query-mappers/go-mapper.js.map +1 -1
  80. package/dist/core/query-mappers/java-mapper.d.ts +196 -0
  81. package/dist/core/query-mappers/java-mapper.d.ts.map +1 -1
  82. package/dist/core/query-mappers/java-mapper.js +600 -0
  83. package/dist/core/query-mappers/java-mapper.js.map +1 -1
  84. package/dist/core/query-mappers/python-mapper.d.ts +55 -0
  85. package/dist/core/query-mappers/python-mapper.d.ts.map +1 -1
  86. package/dist/core/query-mappers/python-mapper.js +273 -0
  87. package/dist/core/query-mappers/python-mapper.js.map +1 -1
  88. package/dist/core/query-mappers/typescript-mapper.d.ts +102 -0
  89. package/dist/core/query-mappers/typescript-mapper.d.ts.map +1 -1
  90. package/dist/core/query-mappers/typescript-mapper.js +470 -0
  91. package/dist/core/query-mappers/typescript-mapper.js.map +1 -1
  92. package/dist/core/single-spec-orchestrator.d.ts +21 -0
  93. package/dist/core/single-spec-orchestrator.d.ts.map +1 -1
  94. package/dist/core/single-spec-orchestrator.js +187 -23
  95. package/dist/core/single-spec-orchestrator.js.map +1 -1
  96. package/dist/core/skeleton-hash.d.ts +33 -0
  97. package/dist/core/skeleton-hash.d.ts.map +1 -0
  98. package/dist/core/skeleton-hash.js +76 -0
  99. package/dist/core/skeleton-hash.js.map +1 -0
  100. package/dist/core/tree-sitter-analyzer.d.ts +7 -0
  101. package/dist/core/tree-sitter-analyzer.d.ts.map +1 -1
  102. package/dist/core/tree-sitter-analyzer.js +32 -1
  103. package/dist/core/tree-sitter-analyzer.js.map +1 -1
  104. package/dist/core/tree-sitter-fallback.d.ts +12 -4
  105. package/dist/core/tree-sitter-fallback.d.ts.map +1 -1
  106. package/dist/core/tree-sitter-fallback.js +160 -12
  107. package/dist/core/tree-sitter-fallback.js.map +1 -1
  108. package/dist/extraction/extraction-types.d.ts +25 -25
  109. package/dist/extraction/image-extractor.d.ts.map +1 -1
  110. package/dist/extraction/image-extractor.js +3 -1
  111. package/dist/extraction/image-extractor.js.map +1 -1
  112. package/dist/extraction/markdown-extractor.d.ts.map +1 -1
  113. package/dist/extraction/markdown-extractor.js +3 -1
  114. package/dist/extraction/markdown-extractor.js.map +1 -1
  115. package/dist/generator/frontmatter.d.ts +5 -0
  116. package/dist/generator/frontmatter.d.ts.map +1 -1
  117. package/dist/generator/frontmatter.js +4 -0
  118. package/dist/generator/frontmatter.js.map +1 -1
  119. package/dist/generator/index-generator.d.ts +3 -3
  120. package/dist/generator/index-generator.d.ts.map +1 -1
  121. package/dist/generator/index-generator.js +1 -1
  122. package/dist/generator/index-generator.js.map +1 -1
  123. package/dist/graph/directory-graph.d.ts +14 -4
  124. package/dist/graph/directory-graph.d.ts.map +1 -1
  125. package/dist/graph/directory-graph.js +71 -128
  126. package/dist/graph/directory-graph.js.map +1 -1
  127. package/dist/graph/mermaid-renderer.d.ts +8 -5
  128. package/dist/graph/mermaid-renderer.d.ts.map +1 -1
  129. package/dist/graph/mermaid-renderer.js +3 -3
  130. package/dist/graph/mermaid-renderer.js.map +1 -1
  131. package/dist/graph/topological-sort.d.ts +13 -6
  132. package/dist/graph/topological-sort.d.ts.map +1 -1
  133. package/dist/graph/topological-sort.js +2 -2
  134. package/dist/graph/topological-sort.js.map +1 -1
  135. package/dist/kb-mcp/index.d.ts +14 -0
  136. package/dist/kb-mcp/index.d.ts.map +1 -0
  137. package/dist/kb-mcp/index.js +24 -0
  138. package/dist/kb-mcp/index.js.map +1 -0
  139. package/dist/kb-mcp/lib/kb-error.d.ts +21 -0
  140. package/dist/kb-mcp/lib/kb-error.d.ts.map +1 -0
  141. package/dist/kb-mcp/lib/kb-error.js +28 -0
  142. package/dist/kb-mcp/lib/kb-error.js.map +1 -0
  143. package/dist/kb-mcp/lib/kb-locator.d.ts +58 -0
  144. package/dist/kb-mcp/lib/kb-locator.d.ts.map +1 -0
  145. package/dist/kb-mcp/lib/kb-locator.js +85 -0
  146. package/dist/kb-mcp/lib/kb-locator.js.map +1 -0
  147. package/dist/kb-mcp/lib/result-merger.d.ts +35 -0
  148. package/dist/kb-mcp/lib/result-merger.d.ts.map +1 -0
  149. package/dist/kb-mcp/lib/result-merger.js +64 -0
  150. package/dist/kb-mcp/lib/result-merger.js.map +1 -0
  151. package/dist/kb-mcp/server.d.ts +12 -0
  152. package/dist/kb-mcp/server.d.ts.map +1 -0
  153. package/dist/kb-mcp/server.js +29 -0
  154. package/dist/kb-mcp/server.js.map +1 -0
  155. package/dist/kb-mcp/tools/kb-api-lookup.d.ts +28 -0
  156. package/dist/kb-mcp/tools/kb-api-lookup.d.ts.map +1 -0
  157. package/dist/kb-mcp/tools/kb-api-lookup.js +237 -0
  158. package/dist/kb-mcp/tools/kb-api-lookup.js.map +1 -0
  159. package/dist/kb-mcp/tools/kb-doc-lookup.d.ts +20 -0
  160. package/dist/kb-mcp/tools/kb-doc-lookup.d.ts.map +1 -0
  161. package/dist/kb-mcp/tools/kb-doc-lookup.js +92 -0
  162. package/dist/kb-mcp/tools/kb-doc-lookup.js.map +1 -0
  163. package/dist/kb-mcp/tools/kb-search.d.ts +23 -0
  164. package/dist/kb-mcp/tools/kb-search.d.ts.map +1 -0
  165. package/dist/kb-mcp/tools/kb-search.js +126 -0
  166. package/dist/kb-mcp/tools/kb-search.js.map +1 -0
  167. package/dist/knowledge-graph/call-resolver.d.ts +64 -0
  168. package/dist/knowledge-graph/call-resolver.d.ts.map +1 -0
  169. package/dist/knowledge-graph/call-resolver.js +323 -0
  170. package/dist/knowledge-graph/call-resolver.js.map +1 -0
  171. package/dist/knowledge-graph/import-resolver.d.ts +39 -0
  172. package/dist/knowledge-graph/import-resolver.d.ts.map +1 -0
  173. package/dist/knowledge-graph/import-resolver.js +214 -0
  174. package/dist/knowledge-graph/import-resolver.js.map +1 -0
  175. package/dist/knowledge-graph/incremental.d.ts +131 -0
  176. package/dist/knowledge-graph/incremental.d.ts.map +1 -0
  177. package/dist/knowledge-graph/incremental.js +432 -0
  178. package/dist/knowledge-graph/incremental.js.map +1 -0
  179. package/dist/knowledge-graph/index.d.ts +85 -0
  180. package/dist/knowledge-graph/index.d.ts.map +1 -0
  181. package/dist/knowledge-graph/index.js +198 -0
  182. package/dist/knowledge-graph/index.js.map +1 -0
  183. package/dist/knowledge-graph/module-derivation.d.ts +252 -0
  184. package/dist/knowledge-graph/module-derivation.d.ts.map +1 -0
  185. package/dist/knowledge-graph/module-derivation.js +418 -0
  186. package/dist/knowledge-graph/module-derivation.js.map +1 -0
  187. package/dist/knowledge-graph/persistence.d.ts +310 -0
  188. package/dist/knowledge-graph/persistence.d.ts.map +1 -0
  189. package/dist/knowledge-graph/persistence.js +280 -0
  190. package/dist/knowledge-graph/persistence.js.map +1 -0
  191. package/dist/knowledge-graph/query-helpers.d.ts +191 -0
  192. package/dist/knowledge-graph/query-helpers.d.ts.map +1 -0
  193. package/dist/knowledge-graph/query-helpers.js +559 -0
  194. package/dist/knowledge-graph/query-helpers.js.map +1 -0
  195. package/dist/knowledge-graph/relativize.d.ts +51 -0
  196. package/dist/knowledge-graph/relativize.d.ts.map +1 -0
  197. package/dist/knowledge-graph/relativize.js +104 -0
  198. package/dist/knowledge-graph/relativize.js.map +1 -0
  199. package/dist/knowledge-graph/unified-graph.d.ts +310 -0
  200. package/dist/knowledge-graph/unified-graph.d.ts.map +1 -0
  201. package/dist/knowledge-graph/unified-graph.js +182 -0
  202. package/dist/knowledge-graph/unified-graph.js.map +1 -0
  203. package/dist/mcp/agent-context-tools.d.ts +53 -0
  204. package/dist/mcp/agent-context-tools.d.ts.map +1 -0
  205. package/dist/mcp/agent-context-tools.js +806 -0
  206. package/dist/mcp/agent-context-tools.js.map +1 -0
  207. package/dist/mcp/file-nav-tools.d.ts +42 -0
  208. package/dist/mcp/file-nav-tools.d.ts.map +1 -0
  209. package/dist/mcp/file-nav-tools.js +318 -0
  210. package/dist/mcp/file-nav-tools.js.map +1 -0
  211. package/dist/mcp/graph-tools.d.ts +22 -0
  212. package/dist/mcp/graph-tools.d.ts.map +1 -1
  213. package/dist/mcp/graph-tools.js +204 -133
  214. package/dist/mcp/graph-tools.js.map +1 -1
  215. package/dist/mcp/lib/file-nav-helpers.d.ts +128 -0
  216. package/dist/mcp/lib/file-nav-helpers.d.ts.map +1 -0
  217. package/dist/mcp/lib/file-nav-helpers.js +305 -0
  218. package/dist/mcp/lib/file-nav-helpers.js.map +1 -0
  219. package/dist/mcp/lib/response-helpers.d.ts +67 -0
  220. package/dist/mcp/lib/response-helpers.d.ts.map +1 -0
  221. package/dist/mcp/lib/response-helpers.js +103 -0
  222. package/dist/mcp/lib/response-helpers.js.map +1 -0
  223. package/dist/mcp/lib/telemetry.d.ts +69 -0
  224. package/dist/mcp/lib/telemetry.d.ts.map +1 -0
  225. package/dist/mcp/lib/telemetry.js +113 -0
  226. package/dist/mcp/lib/telemetry.js.map +1 -0
  227. package/dist/mcp/lib/tool-response.d.ts +46 -0
  228. package/dist/mcp/lib/tool-response.d.ts.map +1 -0
  229. package/dist/mcp/lib/tool-response.js +83 -0
  230. package/dist/mcp/lib/tool-response.js.map +1 -0
  231. package/dist/mcp/server.d.ts +14 -1
  232. package/dist/mcp/server.d.ts.map +1 -1
  233. package/dist/mcp/server.js +216 -158
  234. package/dist/mcp/server.js.map +1 -1
  235. package/dist/models/call-site.d.ts +68 -0
  236. package/dist/models/call-site.d.ts.map +1 -0
  237. package/dist/models/call-site.js +60 -0
  238. package/dist/models/call-site.js.map +1 -0
  239. package/dist/models/code-skeleton.d.ts +80 -6
  240. package/dist/models/code-skeleton.d.ts.map +1 -1
  241. package/dist/models/code-skeleton.js +30 -0
  242. package/dist/models/code-skeleton.js.map +1 -1
  243. package/dist/models/drift-item.d.ts +4 -4
  244. package/dist/models/module-spec.d.ts +173 -94
  245. package/dist/models/module-spec.d.ts.map +1 -1
  246. package/dist/models/module-spec.js +6 -0
  247. package/dist/models/module-spec.js.map +1 -1
  248. package/dist/panoramic/adr-decision-pipeline.d.ts +53 -0
  249. package/dist/panoramic/adr-decision-pipeline.d.ts.map +1 -0
  250. package/dist/panoramic/adr-decision-pipeline.js +685 -0
  251. package/dist/panoramic/adr-decision-pipeline.js.map +1 -0
  252. package/dist/panoramic/api-surface-generator.d.ts +56 -0
  253. package/dist/panoramic/api-surface-generator.d.ts.map +1 -0
  254. package/dist/panoramic/api-surface-generator.js +1671 -0
  255. package/dist/panoramic/api-surface-generator.js.map +1 -0
  256. package/dist/panoramic/architecture-ir-builder.d.ts +19 -0
  257. package/dist/panoramic/architecture-ir-builder.d.ts.map +1 -0
  258. package/dist/panoramic/architecture-ir-builder.js +561 -0
  259. package/dist/panoramic/architecture-ir-builder.js.map +1 -0
  260. package/dist/panoramic/architecture-ir-exporters.d.ts +7 -0
  261. package/dist/panoramic/architecture-ir-exporters.d.ts.map +1 -0
  262. package/dist/panoramic/architecture-ir-exporters.js +183 -0
  263. package/dist/panoramic/architecture-ir-exporters.js.map +1 -0
  264. package/dist/panoramic/architecture-ir-generator.d.ts +36 -0
  265. package/dist/panoramic/architecture-ir-generator.d.ts.map +1 -0
  266. package/dist/panoramic/architecture-ir-generator.js +51 -0
  267. package/dist/panoramic/architecture-ir-generator.js.map +1 -0
  268. package/dist/panoramic/architecture-ir-mermaid-adapter.d.ts +6 -0
  269. package/dist/panoramic/architecture-ir-mermaid-adapter.d.ts.map +1 -0
  270. package/dist/panoramic/architecture-ir-mermaid-adapter.js +98 -0
  271. package/dist/panoramic/architecture-ir-mermaid-adapter.js.map +1 -0
  272. package/dist/panoramic/architecture-ir-model.d.ts +87 -0
  273. package/dist/panoramic/architecture-ir-model.d.ts.map +1 -0
  274. package/dist/panoramic/architecture-ir-model.js +20 -0
  275. package/dist/panoramic/architecture-ir-model.js.map +1 -0
  276. package/dist/panoramic/architecture-narrative.d.ts +68 -0
  277. package/dist/panoramic/architecture-narrative.d.ts.map +1 -0
  278. package/dist/panoramic/architecture-narrative.js +401 -0
  279. package/dist/panoramic/architecture-narrative.js.map +1 -0
  280. package/dist/panoramic/architecture-overview-generator.d.ts +31 -0
  281. package/dist/panoramic/architecture-overview-generator.d.ts.map +1 -0
  282. package/dist/panoramic/architecture-overview-generator.js +454 -0
  283. package/dist/panoramic/architecture-overview-generator.js.map +1 -0
  284. package/dist/panoramic/architecture-overview-model.d.ts +77 -0
  285. package/dist/panoramic/architecture-overview-model.d.ts.map +1 -0
  286. package/dist/panoramic/architecture-overview-model.js +31 -0
  287. package/dist/panoramic/architecture-overview-model.js.map +1 -0
  288. package/dist/panoramic/batch-project-docs.d.ts.map +1 -1
  289. package/dist/panoramic/batch-project-docs.js +4 -2
  290. package/dist/panoramic/batch-project-docs.js.map +1 -1
  291. package/dist/panoramic/builders/component-view-builder.d.ts +25 -1
  292. package/dist/panoramic/builders/component-view-builder.d.ts.map +1 -1
  293. package/dist/panoramic/builders/component-view-builder.js +83 -3
  294. package/dist/panoramic/builders/component-view-builder.js.map +1 -1
  295. package/dist/panoramic/builders/doc-graph-builder.d.ts +15 -2
  296. package/dist/panoramic/builders/doc-graph-builder.d.ts.map +1 -1
  297. package/dist/panoramic/builders/doc-graph-builder.js +20 -0
  298. package/dist/panoramic/builders/doc-graph-builder.js.map +1 -1
  299. package/dist/panoramic/component-view-builder.d.ts +17 -0
  300. package/dist/panoramic/component-view-builder.d.ts.map +1 -0
  301. package/dist/panoramic/component-view-builder.js +652 -0
  302. package/dist/panoramic/component-view-builder.js.map +1 -0
  303. package/dist/panoramic/component-view-model.d.ts +127 -0
  304. package/dist/panoramic/component-view-model.d.ts.map +1 -0
  305. package/dist/panoramic/component-view-model.js +65 -0
  306. package/dist/panoramic/component-view-model.js.map +1 -0
  307. package/dist/panoramic/config-reference-generator.d.ts +78 -0
  308. package/dist/panoramic/config-reference-generator.d.ts.map +1 -0
  309. package/dist/panoramic/config-reference-generator.js +199 -0
  310. package/dist/panoramic/config-reference-generator.js.map +1 -0
  311. package/dist/panoramic/coverage-auditor.d.ts +95 -0
  312. package/dist/panoramic/coverage-auditor.d.ts.map +1 -0
  313. package/dist/panoramic/coverage-auditor.js +290 -0
  314. package/dist/panoramic/coverage-auditor.js.map +1 -0
  315. package/dist/panoramic/cross-package-analyzer.d.ts +112 -0
  316. package/dist/panoramic/cross-package-analyzer.d.ts.map +1 -0
  317. package/dist/panoramic/cross-package-analyzer.js +258 -0
  318. package/dist/panoramic/cross-package-analyzer.js.map +1 -0
  319. package/dist/panoramic/data-model-generator.d.ts +528 -0
  320. package/dist/panoramic/data-model-generator.d.ts.map +1 -0
  321. package/dist/panoramic/data-model-generator.js +647 -0
  322. package/dist/panoramic/data-model-generator.js.map +1 -0
  323. package/dist/panoramic/doc-graph-builder.d.ts +80 -0
  324. package/dist/panoramic/doc-graph-builder.d.ts.map +1 -0
  325. package/dist/panoramic/doc-graph-builder.js +352 -0
  326. package/dist/panoramic/doc-graph-builder.js.map +1 -0
  327. package/dist/panoramic/docs-bundle-manifest-reader.d.ts +26 -0
  328. package/dist/panoramic/docs-bundle-manifest-reader.d.ts.map +1 -0
  329. package/dist/panoramic/docs-bundle-manifest-reader.js +106 -0
  330. package/dist/panoramic/docs-bundle-manifest-reader.js.map +1 -0
  331. package/dist/panoramic/docs-bundle-orchestrator.d.ts +14 -0
  332. package/dist/panoramic/docs-bundle-orchestrator.d.ts.map +1 -0
  333. package/dist/panoramic/docs-bundle-orchestrator.js +538 -0
  334. package/dist/panoramic/docs-bundle-orchestrator.js.map +1 -0
  335. package/dist/panoramic/docs-bundle-profiles.d.ts +4 -0
  336. package/dist/panoramic/docs-bundle-profiles.d.ts.map +1 -0
  337. package/dist/panoramic/docs-bundle-profiles.js +82 -0
  338. package/dist/panoramic/docs-bundle-profiles.js.map +1 -0
  339. package/dist/panoramic/docs-bundle-types.d.ts +94 -0
  340. package/dist/panoramic/docs-bundle-types.d.ts.map +1 -0
  341. package/dist/panoramic/docs-bundle-types.js +10 -0
  342. package/dist/panoramic/docs-bundle-types.js.map +1 -0
  343. package/dist/panoramic/docs-quality-evaluator.d.ts +31 -0
  344. package/dist/panoramic/docs-quality-evaluator.d.ts.map +1 -0
  345. package/dist/panoramic/docs-quality-evaluator.js +941 -0
  346. package/dist/panoramic/docs-quality-evaluator.js.map +1 -0
  347. package/dist/panoramic/docs-quality-model.d.ts +125 -0
  348. package/dist/panoramic/docs-quality-model.d.ts.map +1 -0
  349. package/dist/panoramic/docs-quality-model.js +166 -0
  350. package/dist/panoramic/docs-quality-model.js.map +1 -0
  351. package/dist/panoramic/dynamic-scenarios-builder.d.ts +18 -0
  352. package/dist/panoramic/dynamic-scenarios-builder.d.ts.map +1 -0
  353. package/dist/panoramic/dynamic-scenarios-builder.js +316 -0
  354. package/dist/panoramic/dynamic-scenarios-builder.js.map +1 -0
  355. package/dist/panoramic/event-surface-generator.d.ts +52 -0
  356. package/dist/panoramic/event-surface-generator.d.ts.map +1 -0
  357. package/dist/panoramic/event-surface-generator.js +507 -0
  358. package/dist/panoramic/event-surface-generator.js.map +1 -0
  359. package/dist/panoramic/generator-registry.d.ts +1 -1
  360. package/dist/panoramic/generator-registry.d.ts.map +1 -1
  361. package/dist/panoramic/generator-registry.js +5 -2
  362. package/dist/panoramic/generator-registry.js.map +1 -1
  363. package/dist/panoramic/generators/cross-package-analyzer.d.ts +5 -5
  364. package/dist/panoramic/generators/cross-package-analyzer.d.ts.map +1 -1
  365. package/dist/panoramic/generators/cross-package-analyzer.js +1 -1
  366. package/dist/panoramic/generators/cross-package-analyzer.js.map +1 -1
  367. package/dist/panoramic/generators/data-model-generator.d.ts +27 -27
  368. package/dist/panoramic/graph/confidence-mapper.d.ts +18 -0
  369. package/dist/panoramic/graph/confidence-mapper.d.ts.map +1 -1
  370. package/dist/panoramic/graph/confidence-mapper.js +26 -0
  371. package/dist/panoramic/graph/confidence-mapper.js.map +1 -1
  372. package/dist/panoramic/graph/graph-builder.d.ts +72 -2
  373. package/dist/panoramic/graph/graph-builder.d.ts.map +1 -1
  374. package/dist/panoramic/graph/graph-builder.js +330 -46
  375. package/dist/panoramic/graph/graph-builder.js.map +1 -1
  376. package/dist/panoramic/graph/graph-paths.d.ts +8 -0
  377. package/dist/panoramic/graph/graph-paths.d.ts.map +1 -1
  378. package/dist/panoramic/graph/graph-paths.js +10 -0
  379. package/dist/panoramic/graph/graph-paths.js.map +1 -1
  380. package/dist/panoramic/graph/graph-query.d.ts +49 -2
  381. package/dist/panoramic/graph/graph-query.d.ts.map +1 -1
  382. package/dist/panoramic/graph/graph-query.js +117 -19
  383. package/dist/panoramic/graph/graph-query.js.map +1 -1
  384. package/dist/panoramic/graph/graph-types.d.ts +32 -3
  385. package/dist/panoramic/graph/graph-types.d.ts.map +1 -1
  386. package/dist/panoramic/graph/index.d.ts +2 -1
  387. package/dist/panoramic/graph/index.d.ts.map +1 -1
  388. package/dist/panoramic/graph/index.js +1 -1
  389. package/dist/panoramic/graph/index.js.map +1 -1
  390. package/dist/panoramic/hyperedges/schema.d.ts +6 -6
  391. package/dist/panoramic/interface-surface-generator.d.ts +50 -0
  392. package/dist/panoramic/interface-surface-generator.d.ts.map +1 -0
  393. package/dist/panoramic/interface-surface-generator.js +388 -0
  394. package/dist/panoramic/interface-surface-generator.js.map +1 -0
  395. package/dist/panoramic/interfaces.d.ts +2 -2
  396. package/dist/panoramic/mock-readme-generator.d.ts +90 -0
  397. package/dist/panoramic/mock-readme-generator.d.ts.map +1 -0
  398. package/dist/panoramic/mock-readme-generator.js +111 -0
  399. package/dist/panoramic/mock-readme-generator.js.map +1 -0
  400. package/dist/panoramic/models/component-view-model.d.ts +1 -1
  401. package/dist/panoramic/models/component-view-model.d.ts.map +1 -1
  402. package/dist/panoramic/models/component-view-model.js.map +1 -1
  403. package/dist/panoramic/narrative-provenance-adapter.d.ts +8 -0
  404. package/dist/panoramic/narrative-provenance-adapter.d.ts.map +1 -0
  405. package/dist/panoramic/narrative-provenance-adapter.js +99 -0
  406. package/dist/panoramic/narrative-provenance-adapter.js.map +1 -0
  407. package/dist/panoramic/parser-registry.d.ts +1 -1
  408. package/dist/panoramic/parser-registry.js +1 -1
  409. package/dist/panoramic/parsers/types.d.ts +6 -6
  410. package/dist/panoramic/pattern-hints-generator.d.ts +28 -0
  411. package/dist/panoramic/pattern-hints-generator.d.ts.map +1 -0
  412. package/dist/panoramic/pattern-hints-generator.js +218 -0
  413. package/dist/panoramic/pattern-hints-generator.js.map +1 -0
  414. package/dist/panoramic/pattern-hints-model.d.ts +89 -0
  415. package/dist/panoramic/pattern-hints-model.d.ts.map +1 -0
  416. package/dist/panoramic/pattern-hints-model.js +61 -0
  417. package/dist/panoramic/pattern-hints-model.js.map +1 -0
  418. package/dist/panoramic/pattern-knowledge-base.d.ts +31 -0
  419. package/dist/panoramic/pattern-knowledge-base.d.ts.map +1 -0
  420. package/dist/panoramic/pattern-knowledge-base.js +407 -0
  421. package/dist/panoramic/pattern-knowledge-base.js.map +1 -0
  422. package/dist/panoramic/pipelines/adr-evidence-verifier.d.ts.map +1 -1
  423. package/dist/panoramic/pipelines/adr-evidence-verifier.js +1 -29
  424. package/dist/panoramic/pipelines/adr-evidence-verifier.js.map +1 -1
  425. package/dist/panoramic/pipelines/coverage-auditor.d.ts.map +1 -1
  426. package/dist/panoramic/pipelines/coverage-auditor.js +4 -2
  427. package/dist/panoramic/pipelines/coverage-auditor.js.map +1 -1
  428. package/dist/panoramic/pipelines/docs-bundle-orchestrator.js +13 -6
  429. package/dist/panoramic/pipelines/docs-bundle-orchestrator.js.map +1 -1
  430. package/dist/panoramic/pipelines/product-ux-docs.d.ts +5 -0
  431. package/dist/panoramic/pipelines/product-ux-docs.d.ts.map +1 -1
  432. package/dist/panoramic/pipelines/product-ux-docs.js +34 -6
  433. package/dist/panoramic/pipelines/product-ux-docs.js.map +1 -1
  434. package/dist/panoramic/product-ux-docs.d.ts +104 -0
  435. package/dist/panoramic/product-ux-docs.d.ts.map +1 -0
  436. package/dist/panoramic/product-ux-docs.js +817 -0
  437. package/dist/panoramic/product-ux-docs.js.map +1 -0
  438. package/dist/panoramic/qa/__tests__/citation.test.d.ts +2 -0
  439. package/dist/panoramic/qa/__tests__/citation.test.d.ts.map +1 -0
  440. package/dist/panoramic/qa/__tests__/citation.test.js +193 -0
  441. package/dist/panoramic/qa/__tests__/citation.test.js.map +1 -0
  442. package/dist/panoramic/qa/__tests__/debt-context.test.d.ts +2 -0
  443. package/dist/panoramic/qa/__tests__/debt-context.test.d.ts.map +1 -0
  444. package/dist/panoramic/qa/__tests__/debt-context.test.js +154 -0
  445. package/dist/panoramic/qa/__tests__/debt-context.test.js.map +1 -0
  446. package/dist/panoramic/qa/__tests__/graph-retriever.test.d.ts +2 -0
  447. package/dist/panoramic/qa/__tests__/graph-retriever.test.d.ts.map +1 -0
  448. package/dist/panoramic/qa/__tests__/graph-retriever.test.js +148 -0
  449. package/dist/panoramic/qa/__tests__/graph-retriever.test.js.map +1 -0
  450. package/dist/panoramic/qa/__tests__/index.test.d.ts +2 -0
  451. package/dist/panoramic/qa/__tests__/index.test.d.ts.map +1 -0
  452. package/dist/panoramic/qa/__tests__/index.test.js +246 -0
  453. package/dist/panoramic/qa/__tests__/index.test.js.map +1 -0
  454. package/dist/panoramic/qa/__tests__/llm-caller.test.d.ts +2 -0
  455. package/dist/panoramic/qa/__tests__/llm-caller.test.d.ts.map +1 -0
  456. package/dist/panoramic/qa/__tests__/llm-caller.test.js +168 -0
  457. package/dist/panoramic/qa/__tests__/llm-caller.test.js.map +1 -0
  458. package/dist/panoramic/qa/__tests__/prompt-builder.test.d.ts +2 -0
  459. package/dist/panoramic/qa/__tests__/prompt-builder.test.d.ts.map +1 -0
  460. package/dist/panoramic/qa/__tests__/prompt-builder.test.js +150 -0
  461. package/dist/panoramic/qa/__tests__/prompt-builder.test.js.map +1 -0
  462. package/dist/panoramic/qa/__tests__/qa-integration.test.d.ts +2 -0
  463. package/dist/panoramic/qa/__tests__/qa-integration.test.d.ts.map +1 -0
  464. package/dist/panoramic/qa/__tests__/qa-integration.test.js +296 -0
  465. package/dist/panoramic/qa/__tests__/qa-integration.test.js.map +1 -0
  466. package/dist/panoramic/qa/__tests__/rag-reranker.test.d.ts +2 -0
  467. package/dist/panoramic/qa/__tests__/rag-reranker.test.d.ts.map +1 -0
  468. package/dist/panoramic/qa/__tests__/rag-reranker.test.js +136 -0
  469. package/dist/panoramic/qa/__tests__/rag-reranker.test.js.map +1 -0
  470. package/dist/panoramic/qa/index.d.ts.map +1 -1
  471. package/dist/panoramic/qa/index.js +10 -3
  472. package/dist/panoramic/qa/index.js.map +1 -1
  473. package/dist/panoramic/query.d.ts +1 -0
  474. package/dist/panoramic/query.d.ts.map +1 -1
  475. package/dist/panoramic/query.js +5 -0
  476. package/dist/panoramic/query.js.map +1 -1
  477. package/dist/panoramic/runtime-topology-generator.d.ts +77 -0
  478. package/dist/panoramic/runtime-topology-generator.d.ts.map +1 -0
  479. package/dist/panoramic/runtime-topology-generator.js +676 -0
  480. package/dist/panoramic/runtime-topology-generator.js.map +1 -0
  481. package/dist/panoramic/runtime-topology-model.d.ts +145 -0
  482. package/dist/panoramic/runtime-topology-model.d.ts.map +1 -0
  483. package/dist/panoramic/runtime-topology-model.js +300 -0
  484. package/dist/panoramic/runtime-topology-model.js.map +1 -0
  485. package/dist/panoramic/troubleshooting-generator.d.ts +51 -0
  486. package/dist/panoramic/troubleshooting-generator.d.ts.map +1 -0
  487. package/dist/panoramic/troubleshooting-generator.js +451 -0
  488. package/dist/panoramic/troubleshooting-generator.js.map +1 -0
  489. package/dist/panoramic/utils/text-segmenter.d.ts +15 -0
  490. package/dist/panoramic/utils/text-segmenter.d.ts.map +1 -1
  491. package/dist/panoramic/utils/text-segmenter.js +38 -0
  492. package/dist/panoramic/utils/text-segmenter.js.map +1 -1
  493. package/dist/panoramic/workspace-index-generator.d.ts +148 -0
  494. package/dist/panoramic/workspace-index-generator.d.ts.map +1 -0
  495. package/dist/panoramic/workspace-index-generator.js +497 -0
  496. package/dist/panoramic/workspace-index-generator.js.map +1 -0
  497. package/dist/runtime-bootstrap.d.ts +9 -0
  498. package/dist/runtime-bootstrap.d.ts.map +1 -0
  499. package/dist/runtime-bootstrap.js +33 -0
  500. package/dist/runtime-bootstrap.js.map +1 -0
  501. package/dist/scaffold-kb/api-entities-serializer.d.ts +12 -0
  502. package/dist/scaffold-kb/api-entities-serializer.d.ts.map +1 -0
  503. package/dist/scaffold-kb/api-entities-serializer.js +144 -0
  504. package/dist/scaffold-kb/api-entities-serializer.js.map +1 -0
  505. package/dist/scaffold-kb/arbitration.d.ts +44 -0
  506. package/dist/scaffold-kb/arbitration.d.ts.map +1 -0
  507. package/dist/scaffold-kb/arbitration.js +144 -0
  508. package/dist/scaffold-kb/arbitration.js.map +1 -0
  509. package/dist/scaffold-kb/chunk-splitter.d.ts +20 -0
  510. package/dist/scaffold-kb/chunk-splitter.d.ts.map +1 -0
  511. package/dist/scaffold-kb/chunk-splitter.js +309 -0
  512. package/dist/scaffold-kb/chunk-splitter.js.map +1 -0
  513. package/dist/scaffold-kb/doc-graph-builder.d.ts +26 -0
  514. package/dist/scaffold-kb/doc-graph-builder.d.ts.map +1 -0
  515. package/dist/scaffold-kb/doc-graph-builder.js +72 -0
  516. package/dist/scaffold-kb/doc-graph-builder.js.map +1 -0
  517. package/dist/scaffold-kb/entity-extractor.d.ts +40 -0
  518. package/dist/scaffold-kb/entity-extractor.d.ts.map +1 -0
  519. package/dist/scaffold-kb/entity-extractor.js +0 -0
  520. package/dist/scaffold-kb/entity-extractor.js.map +1 -0
  521. package/dist/scaffold-kb/entity-heuristic.d.ts +14 -0
  522. package/dist/scaffold-kb/entity-heuristic.d.ts.map +1 -0
  523. package/dist/scaffold-kb/entity-heuristic.js +107 -0
  524. package/dist/scaffold-kb/entity-heuristic.js.map +1 -0
  525. package/dist/scaffold-kb/entity-matcher.d.ts +20 -0
  526. package/dist/scaffold-kb/entity-matcher.d.ts.map +1 -0
  527. package/dist/scaffold-kb/entity-matcher.js +53 -0
  528. package/dist/scaffold-kb/entity-matcher.js.map +1 -0
  529. package/dist/scaffold-kb/entity-util.d.ts +11 -0
  530. package/dist/scaffold-kb/entity-util.d.ts.map +1 -0
  531. package/dist/scaffold-kb/entity-util.js +23 -0
  532. package/dist/scaffold-kb/entity-util.js.map +1 -0
  533. package/dist/scaffold-kb/evidence-envelope.d.ts +17 -0
  534. package/dist/scaffold-kb/evidence-envelope.d.ts.map +1 -0
  535. package/dist/scaffold-kb/evidence-envelope.js +32 -0
  536. package/dist/scaffold-kb/evidence-envelope.js.map +1 -0
  537. package/dist/scaffold-kb/index.d.ts +20 -0
  538. package/dist/scaffold-kb/index.d.ts.map +1 -0
  539. package/dist/scaffold-kb/index.js +102 -0
  540. package/dist/scaffold-kb/index.js.map +1 -0
  541. package/dist/scaffold-kb/ingest/ingest-core.d.ts +47 -0
  542. package/dist/scaffold-kb/ingest/ingest-core.d.ts.map +1 -0
  543. package/dist/scaffold-kb/ingest/ingest-core.js +231 -0
  544. package/dist/scaffold-kb/ingest/ingest-core.js.map +1 -0
  545. package/dist/scaffold-kb/ingest/office-parser.d.ts +33 -0
  546. package/dist/scaffold-kb/ingest/office-parser.d.ts.map +1 -0
  547. package/dist/scaffold-kb/ingest/office-parser.js +187 -0
  548. package/dist/scaffold-kb/ingest/office-parser.js.map +1 -0
  549. package/dist/scaffold-kb/ingest/url-fetcher.d.ts +43 -0
  550. package/dist/scaffold-kb/ingest/url-fetcher.d.ts.map +1 -0
  551. package/dist/scaffold-kb/ingest/url-fetcher.js +245 -0
  552. package/dist/scaffold-kb/ingest/url-fetcher.js.map +1 -0
  553. package/dist/scaffold-kb/ingester.d.ts +38 -0
  554. package/dist/scaffold-kb/ingester.d.ts.map +1 -0
  555. package/dist/scaffold-kb/ingester.js +261 -0
  556. package/dist/scaffold-kb/ingester.js.map +1 -0
  557. package/dist/scaffold-kb/injection-format.d.ts +25 -0
  558. package/dist/scaffold-kb/injection-format.d.ts.map +1 -0
  559. package/dist/scaffold-kb/injection-format.js +55 -0
  560. package/dist/scaffold-kb/injection-format.js.map +1 -0
  561. package/dist/scaffold-kb/kb-writer.d.ts +13 -0
  562. package/dist/scaffold-kb/kb-writer.d.ts.map +1 -0
  563. package/dist/scaffold-kb/kb-writer.js +69 -0
  564. package/dist/scaffold-kb/kb-writer.js.map +1 -0
  565. package/dist/scaffold-kb/keyword-extract.d.ts +16 -0
  566. package/dist/scaffold-kb/keyword-extract.d.ts.map +1 -0
  567. package/dist/scaffold-kb/keyword-extract.js +49 -0
  568. package/dist/scaffold-kb/keyword-extract.js.map +1 -0
  569. package/dist/scaffold-kb/query-sanitizer.d.ts +28 -0
  570. package/dist/scaffold-kb/query-sanitizer.d.ts.map +1 -0
  571. package/dist/scaffold-kb/query-sanitizer.js +38 -0
  572. package/dist/scaffold-kb/query-sanitizer.js.map +1 -0
  573. package/dist/scaffold-kb/recall-eval.d.ts +48 -0
  574. package/dist/scaffold-kb/recall-eval.d.ts.map +1 -0
  575. package/dist/scaffold-kb/recall-eval.js +55 -0
  576. package/dist/scaffold-kb/recall-eval.js.map +1 -0
  577. package/dist/scaffold-kb/schema-compat.d.ts +22 -0
  578. package/dist/scaffold-kb/schema-compat.d.ts.map +1 -0
  579. package/dist/scaffold-kb/schema-compat.js +32 -0
  580. package/dist/scaffold-kb/schema-compat.js.map +1 -0
  581. package/dist/scaffold-kb/search-core.d.ts +42 -0
  582. package/dist/scaffold-kb/search-core.d.ts.map +1 -0
  583. package/dist/scaffold-kb/search-core.js +89 -0
  584. package/dist/scaffold-kb/search-core.js.map +1 -0
  585. package/dist/scaffold-kb/sqlite-engine.d.ts +58 -0
  586. package/dist/scaffold-kb/sqlite-engine.d.ts.map +1 -0
  587. package/dist/scaffold-kb/sqlite-engine.js +61 -0
  588. package/dist/scaffold-kb/sqlite-engine.js.map +1 -0
  589. package/dist/scaffold-kb/sqlite-writer.d.ts +18 -0
  590. package/dist/scaffold-kb/sqlite-writer.d.ts.map +1 -0
  591. package/dist/scaffold-kb/sqlite-writer.js +76 -0
  592. package/dist/scaffold-kb/sqlite-writer.js.map +1 -0
  593. package/dist/scaffold-kb/tokenizer.d.ts +26 -0
  594. package/dist/scaffold-kb/tokenizer.d.ts.map +1 -0
  595. package/dist/scaffold-kb/tokenizer.js +97 -0
  596. package/dist/scaffold-kb/tokenizer.js.map +1 -0
  597. package/dist/scaffold-kb/types.d.ts +157 -0
  598. package/dist/scaffold-kb/types.d.ts.map +1 -0
  599. package/dist/scaffold-kb/types.js +5 -0
  600. package/dist/scaffold-kb/types.js.map +1 -0
  601. package/dist/utils/file-scanner.d.ts +15 -0
  602. package/dist/utils/file-scanner.d.ts.map +1 -1
  603. package/dist/utils/file-scanner.js +18 -1
  604. package/dist/utils/file-scanner.js.map +1 -1
  605. package/dist/utils/string-distance.d.ts +20 -0
  606. package/dist/utils/string-distance.d.ts.map +1 -0
  607. package/dist/utils/string-distance.js +38 -0
  608. package/dist/utils/string-distance.js.map +1 -0
  609. package/package.json +22 -3
  610. package/plugins/demo-kb-en/.claude-plugin/plugin.json +11 -0
  611. package/plugins/demo-kb-en/.mcp.json +8 -0
  612. package/plugins/demo-kb-en/FIXTURE.json +23 -0
  613. package/plugins/demo-kb-en/FIXTURE.md +53 -0
  614. package/plugins/demo-kb-en/ingest-samples/meeting-notes.md +13 -0
  615. package/plugins/demo-kb-en/kb/api-entities.json +3445 -0
  616. package/plugins/demo-kb-en/kb/chunks.sqlite +0 -0
  617. package/plugins/demo-kb-en/kb/doc-graph.json +113 -0
  618. package/plugins/demo-kb-zh/.claude-plugin/plugin.json +11 -0
  619. package/plugins/demo-kb-zh/.mcp.json +8 -0
  620. package/plugins/demo-kb-zh/FIXTURE.json +23 -0
  621. package/plugins/demo-kb-zh/FIXTURE.md +63 -0
  622. package/plugins/demo-kb-zh/ingest-samples/meeting-notes.md +13 -0
  623. package/plugins/demo-kb-zh/kb/api-entities.json +990 -0
  624. package/plugins/demo-kb-zh/kb/chunks.sqlite +0 -0
  625. package/plugins/demo-kb-zh/kb/doc-graph.json +113 -0
  626. package/plugins/spec-driver/.claude-plugin/plugin.json +1 -1
  627. package/plugins/spec-driver/README.md +50 -1
  628. package/plugins/spec-driver/agents/implement.md +20 -1
  629. package/plugins/spec-driver/agents/plan.md +20 -1
  630. package/plugins/spec-driver/agents/quality-review.md +20 -1
  631. package/plugins/spec-driver/agents/spec-review.md +20 -1
  632. package/plugins/spec-driver/agents/verify.md +108 -1
  633. package/plugins/spec-driver/config/orchestration.yaml +39 -31
  634. package/plugins/spec-driver/contracts/orchestration-overrides-contract.yaml +27 -0
  635. package/plugins/spec-driver/contracts/orchestration-schema.mjs +272 -227
  636. package/plugins/spec-driver/contracts/wrapper-source-of-truth.yaml +3 -0
  637. package/plugins/spec-driver/docs/customization.md +134 -0
  638. package/plugins/spec-driver/docs/spectra-mcp-integration.md +165 -0
  639. package/plugins/spec-driver/hooks/hooks.json +9 -0
  640. package/plugins/spec-driver/hooks/stop-fix-compliance-check.sh +36 -0
  641. package/plugins/spec-driver/lib/delegation-contract.mjs +84 -0
  642. package/plugins/spec-driver/lib/orchestration-resolver.mjs +49 -0
  643. package/plugins/spec-driver/lib/orchestrator.mjs +29 -1
  644. package/plugins/spec-driver/lib/preference-rules.mjs +96 -0
  645. package/plugins/spec-driver/scripts/codex-skills.sh +28 -28
  646. package/plugins/spec-driver/scripts/dev/spike-fix-compliance-e2e.mjs +130 -0
  647. package/plugins/spec-driver/scripts/fix-compliance-judge.mjs +415 -0
  648. package/plugins/spec-driver/scripts/generate-adoption-insights.mjs +48 -1
  649. package/plugins/spec-driver/scripts/goal-loop-cli.mjs +307 -0
  650. package/plugins/spec-driver/scripts/init-project.sh +56 -0
  651. package/plugins/spec-driver/scripts/kb-prequery.mjs +125 -0
  652. package/plugins/spec-driver/scripts/lib/config-schema.mjs +200 -94
  653. package/plugins/spec-driver/scripts/lib/ensure-gitignore.sh +277 -0
  654. package/plugins/spec-driver/scripts/lib/extract-wrapper-body.mjs +136 -0
  655. package/plugins/spec-driver/scripts/lib/fix-compliance-core.mjs +434 -0
  656. package/plugins/spec-driver/scripts/lib/fix-compliance-io.mjs +335 -0
  657. package/plugins/spec-driver/scripts/lib/goal-loop-core.mjs +783 -0
  658. package/plugins/spec-driver/scripts/lib/init-project-output.sh +28 -0
  659. package/plugins/spec-driver/scripts/lib/load-zod.mjs +62 -0
  660. package/plugins/spec-driver/scripts/lib/project-profile-resolver.mjs +141 -49
  661. package/plugins/spec-driver/scripts/lib/project-profile-schema.mjs +88 -54
  662. package/plugins/spec-driver/scripts/postinstall.sh +13 -1
  663. package/plugins/spec-driver/scripts/record-workflow-run.mjs +75 -0
  664. package/plugins/spec-driver/scripts/sync-delegation-contract.mjs +187 -0
  665. package/plugins/spec-driver/scripts/sync-preference-rules.mjs +148 -0
  666. package/plugins/spec-driver/scripts/validate-orchestrator-models.mjs +156 -0
  667. package/plugins/spec-driver/scripts/validate-wrapper-sources.mjs +46 -1
  668. package/plugins/spec-driver/skills/spec-driver-feature/SKILL.md +302 -0
  669. package/plugins/spec-driver/skills/spec-driver-fix/SKILL.md +97 -8
  670. package/plugins/spec-driver/skills/spec-driver-implement/SKILL.md +18 -0
  671. package/plugins/spec-driver/skills/spec-driver-refactor/SKILL.md +10 -0
  672. package/plugins/spec-driver/skills/spec-driver-resume/SKILL.md +12 -1
  673. package/plugins/spec-driver/skills/spec-driver-story/SKILL.md +30 -0
  674. package/plugins/spec-driver/templates/delegation-contract.md +27 -0
  675. package/plugins/spec-driver/templates/goal-loop-override-template.yaml +284 -0
  676. package/plugins/spec-driver/templates/preference-rules.md +39 -0
  677. package/plugins/spec-driver/templates/specify-base/project-context-template.yaml +10 -0
  678. package/plugins/spectra/.claude-plugin/plugin.json +1 -1
  679. package/plugins/spectra/README.md +48 -1
  680. package/plugins/spectra/hooks/post-commit.sh +40 -0
  681. package/templates/module-spec.hbs +1 -0
  682. package/templates/product-overview.hbs +1 -1
@@ -0,0 +1,401 @@
1
+ /**
2
+ * Architecture narrative document builder
3
+ *
4
+ * 面向人类阅读的技术架构说明,不替代现有结构化 panoramic 文档,
5
+ * 而是聚合 module spec、baseline skeleton 与 architecture overview 的事实,
6
+ * 生成“先说结论 / 关键模块 / 关键类 / 关键方法”的叙事文档。
7
+ */
8
+ import * as path from 'node:path';
9
+ import { loadStoredModuleSpecs, summarizeStoredMarkdown, } from './stored-module-specs.js';
10
+ import { loadTemplate } from './utils/template-loader.js';
11
+ export function buildArchitectureNarrative(options) {
12
+ const modules = loadStoredNarrativeModules(options.outputDir, options.projectRoot);
13
+ const projectName = resolveProjectName(options.architectureOverview?.model.projectName, options.projectRoot);
14
+ const moduleInsights = modules
15
+ .map((module) => toNarrativeModuleInsight(module))
16
+ .sort((left, right) => compareModuleInsights(left, right));
17
+ const keyModules = moduleInsights.slice(0, 6);
18
+ const keySymbols = collectKeySymbols(moduleInsights).slice(0, 10);
19
+ const keyMethods = collectKeyMethods(moduleInsights).slice(0, 12);
20
+ const repositoryMap = buildRepositoryMap(moduleInsights, options.projectContext);
21
+ const supportingDocs = buildSupportingDocs(options.generatedDocs);
22
+ const executiveSummary = buildExecutiveSummary(projectName, moduleInsights, keyModules, options.projectContext, options.architectureOverview, supportingDocs);
23
+ const observations = buildObservations(moduleInsights, options.architectureOverview, supportingDocs);
24
+ return {
25
+ title: `技术架构说明: ${projectName}`,
26
+ generatedAt: new Date().toISOString().split('T')[0],
27
+ projectName,
28
+ executiveSummary,
29
+ repositoryMap,
30
+ keyModules,
31
+ keySymbols,
32
+ keyMethods,
33
+ observations,
34
+ supportingDocs,
35
+ };
36
+ }
37
+ export function renderArchitectureNarrative(output) {
38
+ const template = loadTemplate('architecture-narrative.hbs', import.meta.url);
39
+ return template(output);
40
+ }
41
+ export function loadStoredNarrativeModules(outputDir, projectRoot) {
42
+ return loadStoredModuleSpecs(outputDir, projectRoot);
43
+ }
44
+ function toNarrativeModuleInsight(module) {
45
+ const role = classifyModuleRole(module.sourceTarget);
46
+ const keySymbols = collectModuleSymbols(module).slice(0, symbolLimitForRole(role));
47
+ const keyMethods = collectModuleMethods(module).slice(0, methodLimitForRole(role));
48
+ const inferred = module.confidence === 'low' || !module.baselineSkeleton;
49
+ return {
50
+ sourceTarget: module.sourceTarget,
51
+ displayName: path.posix.basename(module.sourceTarget),
52
+ role,
53
+ relatedFiles: module.relatedFiles,
54
+ confidence: module.confidence,
55
+ intentSummary: module.intentSummary,
56
+ businessSummary: module.businessSummary,
57
+ dependencySummary: module.dependencySummary,
58
+ keySymbols,
59
+ keyMethods,
60
+ inferred,
61
+ };
62
+ }
63
+ function collectModuleSymbols(module) {
64
+ const exports = module.baselineSkeleton?.exports ?? [];
65
+ return exports
66
+ .filter((symbol) => isNarrativeSymbolKind(symbol.kind))
67
+ .map((symbol) => ({
68
+ moduleName: module.sourceTarget,
69
+ name: symbol.name,
70
+ kind: symbol.kind,
71
+ signature: symbol.signature,
72
+ note: summarizeSymbolNote(symbol, module.intentSummary),
73
+ inferred: module.confidence === 'low',
74
+ }))
75
+ .sort((left, right) => compareSymbolInsights(left, right));
76
+ }
77
+ function collectModuleMethods(module) {
78
+ const exports = module.baselineSkeleton?.exports ?? [];
79
+ const methods = [];
80
+ const role = classifyModuleRole(module.sourceTarget);
81
+ for (const symbol of exports) {
82
+ if (symbol.kind === 'function' && !isLowSignalNarrativeMethod(symbol.name, undefined, role)) {
83
+ methods.push({
84
+ moduleName: module.sourceTarget,
85
+ ownerName: undefined,
86
+ name: symbol.name,
87
+ kind: 'function',
88
+ signature: symbol.signature,
89
+ note: summarizeSymbolNote(symbol, module.businessSummary),
90
+ inferred: module.confidence === 'low',
91
+ });
92
+ }
93
+ for (const member of symbol.members ?? []) {
94
+ if (!isNarrativeMethodKind(member.kind)) {
95
+ continue;
96
+ }
97
+ if (isLowSignalNarrativeMethod(member.name, symbol.name, role)) {
98
+ continue;
99
+ }
100
+ methods.push({
101
+ moduleName: module.sourceTarget,
102
+ ownerName: symbol.name,
103
+ name: member.name,
104
+ kind: member.kind,
105
+ signature: member.signature,
106
+ note: summarizeMemberNote(member, symbol.name, module.businessSummary),
107
+ inferred: module.confidence === 'low',
108
+ });
109
+ }
110
+ }
111
+ return methods.sort((left, right) => compareMethodInsights(left, right));
112
+ }
113
+ function collectKeySymbols(modules) {
114
+ return collectPrioritizedNarrativeItems(modules, (module) => module.keySymbols, (item) => `${item.moduleName}:${item.kind}:${item.name}`, compareSymbolInsights, 10);
115
+ }
116
+ function collectKeyMethods(modules) {
117
+ return collectPrioritizedNarrativeItems(modules, (module) => module.keyMethods, (item) => `${item.moduleName}:${item.ownerName ?? 'module'}:${item.kind}:${item.name}`, compareMethodInsights, 12);
118
+ }
119
+ function buildRepositoryMap(modules, projectContext) {
120
+ const buckets = new Map();
121
+ const languages = projectContext.detectedLanguages.length > 0
122
+ ? projectContext.detectedLanguages.join(' / ')
123
+ : 'unknown';
124
+ for (const module of modules) {
125
+ const firstSegment = module.sourceTarget.includes('/')
126
+ ? module.sourceTarget.split('/')[0]
127
+ : module.sourceTarget;
128
+ const category = categorizePath(firstSegment);
129
+ if (!buckets.has(firstSegment)) {
130
+ buckets.set(firstSegment, {
131
+ path: firstSegment,
132
+ category,
133
+ moduleCount: 0,
134
+ fileCount: 0,
135
+ summary: '',
136
+ });
137
+ }
138
+ const entry = buckets.get(firstSegment);
139
+ entry.moduleCount += 1;
140
+ entry.fileCount += module.relatedFiles.length;
141
+ }
142
+ for (const entry of buckets.values()) {
143
+ entry.summary = `${entry.category},覆盖 ${entry.moduleCount} 个模块 / ${entry.fileCount} 个文件,主要语言 ${languages}`;
144
+ }
145
+ return [...buckets.values()].sort((left, right) => left.path.localeCompare(right.path));
146
+ }
147
+ function buildSupportingDocs(generatedDocs) {
148
+ return generatedDocs
149
+ .map((doc) => {
150
+ const markdownPath = doc.writtenFiles.find((filePath) => filePath.endsWith('.md'));
151
+ if (!markdownPath) {
152
+ return null;
153
+ }
154
+ return {
155
+ generatorId: doc.generatorId,
156
+ title: humanizeGeneratorId(doc.generatorId),
157
+ path: path.basename(markdownPath),
158
+ };
159
+ })
160
+ .filter((item) => item !== null)
161
+ .sort((left, right) => left.title.localeCompare(right.title));
162
+ }
163
+ function buildExecutiveSummary(projectName, modules, keyModules, projectContext, architectureOverview, supportingDocs) {
164
+ const lines = [];
165
+ const languages = projectContext.detectedLanguages.length > 0
166
+ ? projectContext.detectedLanguages.join(' / ')
167
+ : 'unknown';
168
+ lines.push(`${projectName} 当前以 ${modules.length} 个模块组织,主要语言为 ${languages},包管理器为 ${projectContext.packageManager}。`);
169
+ if (architectureOverview) {
170
+ lines.push(`结构化架构视图已覆盖 ${architectureOverview.model.stats.availableSections}/${architectureOverview.model.stats.totalSections} 个版块,可进一步下钻 system context / deployment / layered 视图。`);
171
+ }
172
+ else {
173
+ lines.push('当前项目缺少完整部署/monorepo 事实,系统级说明主要基于模块 spec 与源码骨架归纳。');
174
+ }
175
+ if (keyModules.length > 0) {
176
+ lines.push(`关键职责主要集中在 ${keyModules.slice(0, 3).map((item) => `\`${item.sourceTarget}\``).join('、')} 等模块。`);
177
+ }
178
+ if (supportingDocs.length > 0) {
179
+ lines.push(`本次 batch 还产出了 ${supportingDocs.length} 份项目级结构化文档,可与本叙事文档配合阅读。`);
180
+ }
181
+ return lines;
182
+ }
183
+ function buildObservations(modules, architectureOverview, supportingDocs) {
184
+ const observations = new Set();
185
+ const lowConfidenceCount = modules.filter((module) => module.confidence === 'low').length;
186
+ if (!architectureOverview) {
187
+ observations.add('未生成 architecture-overview;当前叙事以模块职责、导出符号与依赖摘要为主。');
188
+ }
189
+ else if (architectureOverview.warnings.length > 0) {
190
+ for (const warning of architectureOverview.warnings.slice(0, 4)) {
191
+ observations.add(warning);
192
+ }
193
+ }
194
+ if (lowConfidenceCount > 0) {
195
+ observations.add(`有 ${lowConfidenceCount} 个模块标记为 low confidence,叙事中的部分结论带有 [推断] 性质。`);
196
+ }
197
+ if (supportingDocs.length === 0) {
198
+ observations.add('当前批次未写出额外项目级结构化文档;如需更细粒度视图,需检查 generator 适用性。');
199
+ }
200
+ return [...observations];
201
+ }
202
+ function resolveProjectName(explicitName, projectRoot) {
203
+ return explicitName?.trim() || path.basename(projectRoot);
204
+ }
205
+ function compareModuleInsights(left, right) {
206
+ const scoreDiff = scoreModuleInsight(right) - scoreModuleInsight(left);
207
+ return scoreDiff !== 0 ? scoreDiff : left.sourceTarget.localeCompare(right.sourceTarget);
208
+ }
209
+ function scoreModuleInsight(module) {
210
+ let score = module.relatedFiles.length * 2 + module.keySymbols.length * 3 + module.keyMethods.length * 2;
211
+ if (module.role === 'core')
212
+ score += 10;
213
+ if (module.sourceTarget.includes('core'))
214
+ score += 4;
215
+ if (module.sourceTarget.includes('internal'))
216
+ score += 2;
217
+ if (module.role === 'support')
218
+ score -= 2;
219
+ if (module.role === 'validation')
220
+ score -= 8;
221
+ if (module.confidence === 'low')
222
+ score -= 2;
223
+ return score;
224
+ }
225
+ function compareSymbolInsights(left, right) {
226
+ const scoreDiff = scoreSymbolInsight(right) - scoreSymbolInsight(left);
227
+ if (scoreDiff !== 0) {
228
+ return scoreDiff;
229
+ }
230
+ return `${left.moduleName}:${left.name}`.localeCompare(`${right.moduleName}:${right.name}`);
231
+ }
232
+ function scoreSymbolInsight(item) {
233
+ let score = 0;
234
+ if (/(Client|Service|Manager|Parser|Session|Transport|Query|Config|Model|SDK|Server)/.test(item.name))
235
+ score += 5;
236
+ if (/(class|data_class|struct|protocol|interface)/.test(item.kind))
237
+ score += 4;
238
+ score += Math.min(item.signature.length / 40, 4);
239
+ if (classifyModuleRole(item.moduleName) === 'core')
240
+ score += 3;
241
+ if (classifyModuleRole(item.moduleName) === 'validation')
242
+ score -= 4;
243
+ if (item.inferred)
244
+ score -= 1;
245
+ return score;
246
+ }
247
+ function compareMethodInsights(left, right) {
248
+ const scoreDiff = scoreMethodInsight(right) - scoreMethodInsight(left);
249
+ if (scoreDiff !== 0) {
250
+ return scoreDiff;
251
+ }
252
+ return `${left.moduleName}:${left.ownerName ?? 'module'}:${left.name}`.localeCompare(`${right.moduleName}:${right.ownerName ?? 'module'}:${right.name}`);
253
+ }
254
+ function scoreMethodInsight(item) {
255
+ let score = 0;
256
+ if (/(create|connect|query|start|run|handle|parse|generate|initialize|send|receive|load|build|call|stream|execute|process|write|read|resolve)/i.test(item.name)) {
257
+ score += 6;
258
+ }
259
+ if (item.ownerName)
260
+ score += 2;
261
+ if (classifyModuleRole(item.moduleName) === 'core')
262
+ score += 4;
263
+ if (classifyModuleRole(item.moduleName) === 'support')
264
+ score -= 1;
265
+ if (classifyModuleRole(item.moduleName) === 'validation')
266
+ score -= 6;
267
+ score += Math.min(item.signature.length / 50, 4);
268
+ if (item.inferred)
269
+ score -= 1;
270
+ return score;
271
+ }
272
+ function collectPrioritizedNarrativeItems(modules, pick, keyOf, compare, limit) {
273
+ const orderedRoles = ['core', 'support', 'validation'];
274
+ const results = [];
275
+ const seen = new Set();
276
+ for (const role of orderedRoles) {
277
+ const ranked = modules
278
+ .filter((module) => module.role === role)
279
+ .flatMap((module) => pick(module))
280
+ .sort(compare);
281
+ for (const item of ranked) {
282
+ const key = keyOf(item);
283
+ if (seen.has(key)) {
284
+ continue;
285
+ }
286
+ seen.add(key);
287
+ results.push(item);
288
+ if (results.length >= limit) {
289
+ return results;
290
+ }
291
+ }
292
+ }
293
+ return results;
294
+ }
295
+ function summarizeSymbolNote(symbol, fallback) {
296
+ if (symbol.jsDoc?.trim()) {
297
+ return summarizeStoredMarkdown(symbol.jsDoc, fallback);
298
+ }
299
+ return fallback;
300
+ }
301
+ function summarizeMemberNote(member, ownerName, fallback) {
302
+ if (member.jsDoc?.trim()) {
303
+ return summarizeStoredMarkdown(member.jsDoc, fallback);
304
+ }
305
+ return `${ownerName} 的核心成员;${fallback}`;
306
+ }
307
+ function isNarrativeSymbolKind(kind) {
308
+ return kind === 'class'
309
+ || kind === 'interface'
310
+ || kind === 'type'
311
+ || kind === 'data_class'
312
+ || kind === 'struct'
313
+ || kind === 'protocol';
314
+ }
315
+ function isNarrativeMethodKind(kind) {
316
+ return kind === 'method'
317
+ || kind === 'constructor'
318
+ || kind === 'classmethod'
319
+ || kind === 'staticmethod'
320
+ || kind === 'associated_function'
321
+ || kind === 'getter'
322
+ || kind === 'setter';
323
+ }
324
+ function humanizeGeneratorId(generatorId) {
325
+ return generatorId
326
+ .split('-')
327
+ .map((part) => {
328
+ if (part === 'api')
329
+ return 'API';
330
+ return part.charAt(0).toUpperCase() + part.slice(1);
331
+ })
332
+ .join(' ');
333
+ }
334
+ function categorizePath(segment) {
335
+ if (segment === 'src')
336
+ return '核心实现目录';
337
+ if (segment === 'tests' || segment === 'e2e-tests')
338
+ return '测试与验收目录';
339
+ if (segment === 'examples')
340
+ return '示例与对外使用目录';
341
+ if (segment === 'scripts')
342
+ return '脚本与运维辅助目录';
343
+ return '项目子域目录';
344
+ }
345
+ function classifyModuleRole(sourceTarget) {
346
+ if (sourceTarget === 'tests'
347
+ || sourceTarget.startsWith('tests/')
348
+ || sourceTarget === 'e2e-tests'
349
+ || sourceTarget.startsWith('e2e-tests/')) {
350
+ return 'validation';
351
+ }
352
+ if (sourceTarget === 'examples'
353
+ || sourceTarget.startsWith('examples/')
354
+ || sourceTarget === 'scripts'
355
+ || sourceTarget.startsWith('scripts/')) {
356
+ return 'support';
357
+ }
358
+ return 'core';
359
+ }
360
+ function symbolLimitForRole(role) {
361
+ switch (role) {
362
+ case 'core':
363
+ return 6;
364
+ case 'support':
365
+ return 3;
366
+ case 'validation':
367
+ return 2;
368
+ }
369
+ }
370
+ function methodLimitForRole(role) {
371
+ switch (role) {
372
+ case 'core':
373
+ return 10;
374
+ case 'support':
375
+ return 4;
376
+ case 'validation':
377
+ return 2;
378
+ }
379
+ }
380
+ function isLowSignalNarrativeMethod(name, ownerName, role) {
381
+ if (role !== 'validation') {
382
+ return false;
383
+ }
384
+ return name.startsWith('test_')
385
+ || name.startsWith('test')
386
+ || ownerName?.startsWith('Test') === true;
387
+ }
388
+ function dedupeNarrativeItems(items, getKey) {
389
+ const seen = new Set();
390
+ const results = [];
391
+ for (const item of items) {
392
+ const key = getKey(item);
393
+ if (seen.has(key)) {
394
+ continue;
395
+ }
396
+ seen.add(key);
397
+ results.push(item);
398
+ }
399
+ return results;
400
+ }
401
+ //# sourceMappingURL=architecture-narrative.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"architecture-narrative.js","sourceRoot":"","sources":["../../src/panoramic/architecture-narrative.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import type { DocumentGenerator, GenerateOptions, ProjectContext } from './interfaces.js';
2
+ import { type CrossPackageOutput } from './cross-package-analyzer.js';
3
+ import { type RuntimeTopologyOutput } from './runtime-topology-generator.js';
4
+ import { type ArchitectureOverviewModel, type ArchitectureViewSection } from './architecture-overview-model.js';
5
+ import { type WorkspaceOutput } from './workspace-index-generator.js';
6
+ export interface ArchitectureOverviewInput {
7
+ projectName: string;
8
+ runtime?: RuntimeTopologyOutput;
9
+ workspace?: WorkspaceOutput;
10
+ crossPackage?: CrossPackageOutput;
11
+ warnings: string[];
12
+ }
13
+ export interface ArchitectureOverviewOutput {
14
+ title: string;
15
+ generatedAt: string;
16
+ model: ArchitectureOverviewModel;
17
+ warnings: string[];
18
+ systemContext?: ArchitectureViewSection;
19
+ deploymentView?: ArchitectureViewSection;
20
+ layeredView?: ArchitectureViewSection;
21
+ }
22
+ export declare class ArchitectureOverviewGenerator implements DocumentGenerator<ArchitectureOverviewInput, ArchitectureOverviewOutput> {
23
+ readonly id: "architecture-overview";
24
+ readonly name: "\u67B6\u6784\u6982\u89C8\u751F\u6210\u5668";
25
+ readonly description = "\u7EC4\u5408\u8FD0\u884C\u65F6\u62D3\u6251\u3001workspace \u548C\u8DE8\u5305\u4F9D\u8D56\u8F93\u51FA\uFF0C\u751F\u6210\u7CFB\u7EDF\u4E0A\u4E0B\u6587\u4E0E\u90E8\u7F72\u89C6\u56FE";
26
+ isApplicable(context: ProjectContext): boolean;
27
+ extract(context: ProjectContext): Promise<ArchitectureOverviewInput>;
28
+ generate(input: ArchitectureOverviewInput, _options?: GenerateOptions): Promise<ArchitectureOverviewOutput>;
29
+ render(output: ArchitectureOverviewOutput): string;
30
+ }
31
+ //# sourceMappingURL=architecture-overview-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"architecture-overview-generator.d.ts","sourceRoot":"","sources":["../../src/panoramic/architecture-overview-generator.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,iBAAiB,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC1F,OAAO,EAAwB,KAAK,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AAC5F,OAAO,EAA4B,KAAK,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACvG,OAAO,EAKL,KAAK,yBAAyB,EAI9B,KAAK,uBAAuB,EAE7B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAA2B,KAAK,eAAe,EAAE,MAAM,gCAAgC,CAAC;AAM/F,MAAM,WAAW,yBAAyB;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,yBAAyB,CAAC;IACjC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,aAAa,CAAC,EAAE,uBAAuB,CAAC;IACxC,cAAc,CAAC,EAAE,uBAAuB,CAAC;IACzC,WAAW,CAAC,EAAE,uBAAuB,CAAC;CACvC;AAED,qBAAa,6BACX,YAAW,iBAAiB,CAAC,yBAAyB,EAAE,0BAA0B,CAAC;IAEnF,QAAQ,CAAC,EAAE,EAAG,uBAAuB,CAAU;IAC/C,QAAQ,CAAC,IAAI,EAAG,4CAAS,CAAU;IACnC,QAAQ,CAAC,WAAW,wLAA4C;IAEhE,YAAY,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO;IAMxC,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,yBAAyB,CAAC;IAmDpE,QAAQ,CACZ,KAAK,EAAE,yBAAyB,EAChC,QAAQ,CAAC,EAAE,eAAe,GACzB,OAAO,CAAC,0BAA0B,CAAC;IA4CtC,MAAM,CAAC,MAAM,EAAE,0BAA0B,GAAG,MAAM;CAInD"}