@mycodemap/mycodemap 0.4.1 → 0.5.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 (309) hide show
  1. package/CHANGELOG.md +100 -0
  2. package/README.md +307 -243
  3. package/dist/ai/claude.d.ts +38 -0
  4. package/dist/ai/claude.d.ts.map +1 -0
  5. package/dist/ai/claude.js +169 -0
  6. package/dist/ai/claude.js.map +1 -0
  7. package/dist/ai/codex.d.ts +38 -0
  8. package/dist/ai/codex.d.ts.map +1 -0
  9. package/dist/ai/codex.js +169 -0
  10. package/dist/ai/codex.js.map +1 -0
  11. package/dist/ai/factory.d.ts +48 -0
  12. package/dist/ai/factory.d.ts.map +1 -0
  13. package/dist/ai/factory.js +95 -0
  14. package/dist/ai/factory.js.map +1 -0
  15. package/dist/ai/index.d.ts +12 -0
  16. package/dist/ai/index.d.ts.map +1 -0
  17. package/dist/ai/index.js +29 -0
  18. package/dist/ai/index.js.map +1 -0
  19. package/dist/ai/provider.d.ts +70 -0
  20. package/dist/ai/provider.d.ts.map +1 -0
  21. package/dist/ai/provider.js +31 -0
  22. package/dist/ai/provider.js.map +1 -0
  23. package/dist/ai/subagent-caller.d.ts +90 -0
  24. package/dist/ai/subagent-caller.d.ts.map +1 -0
  25. package/dist/ai/subagent-caller.js +280 -0
  26. package/dist/ai/subagent-caller.js.map +1 -0
  27. package/dist/ai/types.d.ts +70 -0
  28. package/dist/ai/types.d.ts.map +1 -0
  29. package/dist/ai/types.js +5 -0
  30. package/dist/ai/types.js.map +1 -0
  31. package/dist/cli/commands/analyze-options.d.ts +36 -0
  32. package/dist/cli/commands/analyze-options.d.ts.map +1 -0
  33. package/dist/cli/commands/analyze-options.js +147 -0
  34. package/dist/cli/commands/analyze-options.js.map +1 -0
  35. package/dist/cli/commands/analyze.d.ts +93 -4
  36. package/dist/cli/commands/analyze.d.ts.map +1 -1
  37. package/dist/cli/commands/analyze.js +592 -176
  38. package/dist/cli/commands/analyze.js.map +1 -1
  39. package/dist/cli/commands/ci.d.ts +47 -1
  40. package/dist/cli/commands/ci.d.ts.map +1 -1
  41. package/dist/cli/commands/ci.js +208 -1
  42. package/dist/cli/commands/ci.js.map +1 -1
  43. package/dist/cli/commands/design.d.ts +47 -0
  44. package/dist/cli/commands/design.d.ts.map +1 -0
  45. package/dist/cli/commands/design.js +268 -0
  46. package/dist/cli/commands/design.js.map +1 -0
  47. package/dist/cli/commands/export.d.ts.map +1 -1
  48. package/dist/cli/commands/export.js +2 -2
  49. package/dist/cli/commands/export.js.map +1 -1
  50. package/dist/cli/commands/generate.d.ts +8 -2
  51. package/dist/cli/commands/generate.d.ts.map +1 -1
  52. package/dist/cli/commands/generate.js +151 -22
  53. package/dist/cli/commands/generate.js.map +1 -1
  54. package/dist/cli/commands/init.d.ts.map +1 -1
  55. package/dist/cli/commands/init.js +2 -13
  56. package/dist/cli/commands/init.js.map +1 -1
  57. package/dist/cli/commands/server.d.ts.map +1 -1
  58. package/dist/cli/commands/server.js +2 -5
  59. package/dist/cli/commands/server.js.map +1 -1
  60. package/dist/cli/commands/ship/checker.d.ts.map +1 -1
  61. package/dist/cli/commands/ship/checker.js +0 -3
  62. package/dist/cli/commands/ship/checker.js.map +1 -1
  63. package/dist/cli/commands/ship/pipeline.d.ts.map +1 -1
  64. package/dist/cli/commands/ship/pipeline.js +8 -1
  65. package/dist/cli/commands/ship/pipeline.js.map +1 -1
  66. package/dist/cli/commands/ship/publisher.d.ts +9 -1
  67. package/dist/cli/commands/ship/publisher.d.ts.map +1 -1
  68. package/dist/cli/commands/ship/publisher.js +149 -6
  69. package/dist/cli/commands/ship/publisher.js.map +1 -1
  70. package/dist/cli/commands/ship/rules/quality-rules.d.ts +0 -1
  71. package/dist/cli/commands/ship/rules/quality-rules.d.ts.map +1 -1
  72. package/dist/cli/commands/ship/rules/quality-rules.js +4 -76
  73. package/dist/cli/commands/ship/rules/quality-rules.js.map +1 -1
  74. package/dist/cli/commands/workflow.js +4 -4
  75. package/dist/cli/commands/workflow.js.map +1 -1
  76. package/dist/cli/config-loader.d.ts +31 -0
  77. package/dist/cli/config-loader.d.ts.map +1 -0
  78. package/dist/cli/config-loader.js +235 -0
  79. package/dist/cli/config-loader.js.map +1 -0
  80. package/dist/cli/design-contract-loader.d.ts +15 -0
  81. package/dist/cli/design-contract-loader.d.ts.map +1 -0
  82. package/dist/cli/design-contract-loader.js +175 -0
  83. package/dist/cli/design-contract-loader.js.map +1 -0
  84. package/dist/cli/design-contract-schema.d.ts +11 -0
  85. package/dist/cli/design-contract-schema.d.ts.map +1 -0
  86. package/dist/cli/design-contract-schema.js +75 -0
  87. package/dist/cli/design-contract-schema.js.map +1 -0
  88. package/dist/cli/design-handoff-builder.d.ts +15 -0
  89. package/dist/cli/design-handoff-builder.d.ts.map +1 -0
  90. package/dist/cli/design-handoff-builder.js +345 -0
  91. package/dist/cli/design-handoff-builder.js.map +1 -0
  92. package/dist/cli/design-scope-resolver.d.ts +8 -0
  93. package/dist/cli/design-scope-resolver.d.ts.map +1 -0
  94. package/dist/cli/design-scope-resolver.js +712 -0
  95. package/dist/cli/design-scope-resolver.js.map +1 -0
  96. package/dist/cli/design-verification-builder.d.ts +8 -0
  97. package/dist/cli/design-verification-builder.d.ts.map +1 -0
  98. package/dist/cli/design-verification-builder.js +369 -0
  99. package/dist/cli/design-verification-builder.js.map +1 -0
  100. package/dist/cli/index.js +20 -63
  101. package/dist/cli/index.js.map +1 -1
  102. package/dist/cli/removed-commands.d.ts +9 -0
  103. package/dist/cli/removed-commands.d.ts.map +1 -0
  104. package/dist/cli/removed-commands.js +48 -0
  105. package/dist/cli/removed-commands.js.map +1 -0
  106. package/dist/cli/storage-runtime.d.ts +8 -0
  107. package/dist/cli/storage-runtime.d.ts.map +1 -0
  108. package/dist/cli/storage-runtime.js +14 -0
  109. package/dist/cli/storage-runtime.js.map +1 -0
  110. package/dist/cli/tree-sitter-check.d.ts.map +1 -1
  111. package/dist/cli/tree-sitter-check.js +0 -1
  112. package/dist/cli/tree-sitter-check.js.map +1 -1
  113. package/dist/cli-new/commands/export.d.ts.map +1 -1
  114. package/dist/cli-new/commands/export.js +2 -2
  115. package/dist/cli-new/commands/export.js.map +1 -1
  116. package/dist/cli-new/commands/query.d.ts.map +1 -1
  117. package/dist/cli-new/commands/query.js +5 -4
  118. package/dist/cli-new/commands/query.js.map +1 -1
  119. package/dist/cli-new/commands/server.d.ts.map +1 -1
  120. package/dist/cli-new/commands/server.js +2 -6
  121. package/dist/cli-new/commands/server.js.map +1 -1
  122. package/dist/cli-new/index.d.ts.map +1 -1
  123. package/dist/cli-new/index.js +0 -2
  124. package/dist/cli-new/index.js.map +1 -1
  125. package/dist/core/analyzer.d.ts.map +1 -1
  126. package/dist/core/analyzer.js +7 -39
  127. package/dist/core/analyzer.js.map +1 -1
  128. package/dist/core/file-discovery.d.ts +17 -0
  129. package/dist/core/file-discovery.d.ts.map +1 -0
  130. package/dist/core/file-discovery.js +75 -0
  131. package/dist/core/file-discovery.js.map +1 -0
  132. package/dist/core/global-index.d.ts +5 -0
  133. package/dist/core/global-index.d.ts.map +1 -1
  134. package/dist/core/global-index.js +71 -21
  135. package/dist/core/global-index.js.map +1 -1
  136. package/dist/generator/ai-overview.d.ts +51 -0
  137. package/dist/generator/ai-overview.d.ts.map +1 -0
  138. package/dist/generator/ai-overview.js +160 -0
  139. package/dist/generator/ai-overview.js.map +1 -0
  140. package/dist/generator/index.d.ts.map +1 -1
  141. package/dist/generator/index.js +8 -0
  142. package/dist/generator/index.js.map +1 -1
  143. package/dist/infrastructure/parser/implementations/GoParser.d.ts +2 -5
  144. package/dist/infrastructure/parser/implementations/GoParser.d.ts.map +1 -1
  145. package/dist/infrastructure/parser/implementations/GoParser.js +2 -5
  146. package/dist/infrastructure/parser/implementations/GoParser.js.map +1 -1
  147. package/dist/infrastructure/parser/implementations/PythonParser.d.ts +1 -5
  148. package/dist/infrastructure/parser/implementations/PythonParser.d.ts.map +1 -1
  149. package/dist/infrastructure/parser/implementations/PythonParser.js +1 -5
  150. package/dist/infrastructure/parser/implementations/PythonParser.js.map +1 -1
  151. package/dist/infrastructure/parser/implementations/TypeScriptParser.d.ts +1 -5
  152. package/dist/infrastructure/parser/implementations/TypeScriptParser.d.ts.map +1 -1
  153. package/dist/infrastructure/parser/implementations/TypeScriptParser.js +1 -5
  154. package/dist/infrastructure/parser/implementations/TypeScriptParser.js.map +1 -1
  155. package/dist/infrastructure/storage/StorageFactory.d.ts +12 -6
  156. package/dist/infrastructure/storage/StorageFactory.d.ts.map +1 -1
  157. package/dist/infrastructure/storage/StorageFactory.js +59 -43
  158. package/dist/infrastructure/storage/StorageFactory.js.map +1 -1
  159. package/dist/infrastructure/storage/adapters/FileSystemStorage.d.ts.map +1 -1
  160. package/dist/infrastructure/storage/adapters/FileSystemStorage.js +24 -137
  161. package/dist/infrastructure/storage/adapters/FileSystemStorage.js.map +1 -1
  162. package/dist/infrastructure/storage/adapters/KuzuDBStorage.d.ts +10 -18
  163. package/dist/infrastructure/storage/adapters/KuzuDBStorage.d.ts.map +1 -1
  164. package/dist/infrastructure/storage/adapters/KuzuDBStorage.js +103 -146
  165. package/dist/infrastructure/storage/adapters/KuzuDBStorage.js.map +1 -1
  166. package/dist/infrastructure/storage/adapters/MemoryStorage.d.ts +0 -1
  167. package/dist/infrastructure/storage/adapters/MemoryStorage.d.ts.map +1 -1
  168. package/dist/infrastructure/storage/adapters/MemoryStorage.js +16 -136
  169. package/dist/infrastructure/storage/adapters/MemoryStorage.js.map +1 -1
  170. package/dist/infrastructure/storage/adapters/Neo4jStorage.d.ts +9 -17
  171. package/dist/infrastructure/storage/adapters/Neo4jStorage.d.ts.map +1 -1
  172. package/dist/infrastructure/storage/adapters/Neo4jStorage.js +78 -138
  173. package/dist/infrastructure/storage/adapters/Neo4jStorage.js.map +1 -1
  174. package/dist/infrastructure/storage/graph-helpers.d.ts +16 -0
  175. package/dist/infrastructure/storage/graph-helpers.d.ts.map +1 -0
  176. package/dist/infrastructure/storage/graph-helpers.js +161 -0
  177. package/dist/infrastructure/storage/graph-helpers.js.map +1 -0
  178. package/dist/infrastructure/storage/index.d.ts.map +1 -1
  179. package/dist/interface/config/index.d.ts +10 -1
  180. package/dist/interface/config/index.d.ts.map +1 -1
  181. package/dist/interface/types/design-contract.d.ts +68 -0
  182. package/dist/interface/types/design-contract.d.ts.map +1 -0
  183. package/dist/interface/types/design-contract.js +7 -0
  184. package/dist/interface/types/design-contract.js.map +1 -0
  185. package/dist/interface/types/design-handoff.d.ts +68 -0
  186. package/dist/interface/types/design-handoff.d.ts.map +1 -0
  187. package/dist/interface/types/design-handoff.js +4 -0
  188. package/dist/interface/types/design-handoff.js.map +1 -0
  189. package/dist/interface/types/design-mapping.d.ts +51 -0
  190. package/dist/interface/types/design-mapping.d.ts.map +1 -0
  191. package/dist/interface/types/design-mapping.js +4 -0
  192. package/dist/interface/types/design-mapping.js.map +1 -0
  193. package/dist/interface/types/design-verification.d.ts +49 -0
  194. package/dist/interface/types/design-verification.d.ts.map +1 -0
  195. package/dist/interface/types/design-verification.js +4 -0
  196. package/dist/interface/types/design-verification.js.map +1 -0
  197. package/dist/interface/types/index.d.ts +17 -0
  198. package/dist/interface/types/index.d.ts.map +1 -1
  199. package/dist/interface/types/storage.d.ts +1 -4
  200. package/dist/interface/types/storage.d.ts.map +1 -1
  201. package/dist/orchestrator/ai-feed-generator.d.ts +210 -0
  202. package/dist/orchestrator/ai-feed-generator.d.ts.map +1 -0
  203. package/dist/orchestrator/ai-feed-generator.js +377 -0
  204. package/dist/orchestrator/ai-feed-generator.js.map +1 -0
  205. package/dist/orchestrator/confidence.d.ts +9 -9
  206. package/dist/orchestrator/confidence.d.ts.map +1 -1
  207. package/dist/orchestrator/confidence.js +44 -67
  208. package/dist/orchestrator/confidence.js.map +1 -1
  209. package/dist/orchestrator/file-header-scanner.d.ts.map +1 -1
  210. package/dist/orchestrator/file-header-scanner.js +22 -31
  211. package/dist/orchestrator/file-header-scanner.js.map +1 -1
  212. package/dist/orchestrator/intent-router.d.ts +2 -11
  213. package/dist/orchestrator/intent-router.d.ts.map +1 -1
  214. package/dist/orchestrator/intent-router.js +58 -49
  215. package/dist/orchestrator/intent-router.js.map +1 -1
  216. package/dist/orchestrator/tool-orchestrator.d.ts.map +1 -1
  217. package/dist/orchestrator/tool-orchestrator.js +6 -4
  218. package/dist/orchestrator/tool-orchestrator.js.map +1 -1
  219. package/dist/orchestrator/types.d.ts +113 -2
  220. package/dist/orchestrator/types.d.ts.map +1 -1
  221. package/dist/orchestrator/types.js +29 -0
  222. package/dist/orchestrator/types.js.map +1 -1
  223. package/dist/orchestrator/workflow/config.d.ts +4 -12
  224. package/dist/orchestrator/workflow/config.d.ts.map +1 -1
  225. package/dist/orchestrator/workflow/config.js +4 -6
  226. package/dist/orchestrator/workflow/config.js.map +1 -1
  227. package/dist/orchestrator/workflow/git-analyzer.d.ts.map +1 -1
  228. package/dist/orchestrator/workflow/git-analyzer.js +9 -19
  229. package/dist/orchestrator/workflow/git-analyzer.js.map +1 -1
  230. package/dist/orchestrator/workflow/phase-inheritance.d.ts.map +1 -1
  231. package/dist/orchestrator/workflow/phase-inheritance.js +14 -23
  232. package/dist/orchestrator/workflow/phase-inheritance.js.map +1 -1
  233. package/dist/orchestrator/workflow/result-fusion.d.ts.map +1 -1
  234. package/dist/orchestrator/workflow/result-fusion.js +9 -11
  235. package/dist/orchestrator/workflow/result-fusion.js.map +1 -1
  236. package/dist/orchestrator/workflow/templates.d.ts +4 -1
  237. package/dist/orchestrator/workflow/templates.d.ts.map +1 -1
  238. package/dist/orchestrator/workflow/templates.js +49 -207
  239. package/dist/orchestrator/workflow/templates.js.map +1 -1
  240. package/dist/orchestrator/workflow/test-linker.d.ts.map +1 -1
  241. package/dist/orchestrator/workflow/test-linker.js +12 -24
  242. package/dist/orchestrator/workflow/test-linker.js.map +1 -1
  243. package/dist/orchestrator/workflow/types.d.ts +11 -8
  244. package/dist/orchestrator/workflow/types.d.ts.map +1 -1
  245. package/dist/orchestrator/workflow/types.js +8 -1
  246. package/dist/orchestrator/workflow/types.js.map +1 -1
  247. package/dist/orchestrator/workflow/visualizer.d.ts.map +1 -1
  248. package/dist/orchestrator/workflow/visualizer.js +7 -9
  249. package/dist/orchestrator/workflow/visualizer.js.map +1 -1
  250. package/dist/orchestrator/workflow/workflow-context.d.ts.map +1 -1
  251. package/dist/orchestrator/workflow/workflow-context.js +3 -5
  252. package/dist/orchestrator/workflow/workflow-context.js.map +1 -1
  253. package/dist/orchestrator/workflow/workflow-orchestrator.d.ts +0 -4
  254. package/dist/orchestrator/workflow/workflow-orchestrator.d.ts.map +1 -1
  255. package/dist/orchestrator/workflow/workflow-orchestrator.js +7 -99
  256. package/dist/orchestrator/workflow/workflow-orchestrator.js.map +1 -1
  257. package/dist/parser/index.d.ts.map +1 -1
  258. package/dist/parser/index.js +2 -2
  259. package/dist/parser/index.js.map +1 -1
  260. package/dist/plugins/index.d.ts +5 -3
  261. package/dist/plugins/index.d.ts.map +1 -1
  262. package/dist/plugins/index.js +19 -8
  263. package/dist/plugins/index.js.map +1 -1
  264. package/dist/plugins/plugin-loader.d.ts +21 -6
  265. package/dist/plugins/plugin-loader.d.ts.map +1 -1
  266. package/dist/plugins/plugin-loader.js +170 -54
  267. package/dist/plugins/plugin-loader.js.map +1 -1
  268. package/dist/plugins/plugin-registry.d.ts +7 -4
  269. package/dist/plugins/plugin-registry.d.ts.map +1 -1
  270. package/dist/plugins/plugin-registry.js +62 -14
  271. package/dist/plugins/plugin-registry.js.map +1 -1
  272. package/dist/plugins/types.d.ts +16 -6
  273. package/dist/plugins/types.d.ts.map +1 -1
  274. package/dist/plugins/types.js +2 -0
  275. package/dist/plugins/types.js.map +1 -1
  276. package/dist/server/handlers/AnalysisHandler.d.ts +16 -2
  277. package/dist/server/handlers/AnalysisHandler.d.ts.map +1 -1
  278. package/dist/server/handlers/AnalysisHandler.js +31 -47
  279. package/dist/server/handlers/AnalysisHandler.js.map +1 -1
  280. package/dist/server/routes/api.d.ts.map +1 -1
  281. package/dist/server/routes/api.js +31 -12
  282. package/dist/server/routes/api.js.map +1 -1
  283. package/docs/AI_ASSISTANT_SETUP.md +3 -1
  284. package/docs/SETUP_GUIDE.md +41 -17
  285. package/docs/ai-guide/COMMANDS.md +179 -102
  286. package/docs/ai-guide/INTEGRATION.md +23 -21
  287. package/docs/ai-guide/OUTPUT.md +621 -10
  288. package/docs/ai-guide/PATTERNS.md +77 -18
  289. package/docs/ai-guide/PROMPTS.md +24 -18
  290. package/docs/ai-guide/QUICKSTART.md +35 -19
  291. package/docs/ai-guide/README.md +22 -4
  292. package/docs/archive/test-report-symbol-search.md +384 -0
  293. package/docs/archive/test-scenario-4-complexity-analysis.md +460 -0
  294. package/docs/archive/test_report_scenario5.md +615 -0
  295. package/docs/archive/test_scenario_3_impact_analysis_report.md +520 -0
  296. package/docs/product-specs/DESIGN_CONTRACT_TEMPLATE.md +79 -0
  297. package/docs/product-specs/MVP3-ARCHITECTURE-COMPARISON.md +159 -434
  298. package/docs/product-specs/MVP3-ARCHITECTURE-REDESIGN-PRD.md +169 -261
  299. package/docs/product-specs/MVP3-ARCHITECTURE-REDESIGN-TECH-PRD.md +201 -1259
  300. package/docs/product-specs/README.md +9 -1
  301. package/docs/rules/architecture-guardrails.md +1 -2
  302. package/docs/rules/engineering-with-codex-openai.md +20 -10
  303. package/docs/rules/validation.md +29 -4
  304. package/mycodemap.config.schema.json +76 -5
  305. package/package.json +1 -1
  306. package/scripts/experiments/arcadedb-http-smoke.mjs +90 -0
  307. package/scripts/sync-analyze-docs.js +500 -0
  308. package/scripts/validate-ai-docs.js +54 -1
  309. package/scripts/validate-docs.js +992 -25
@@ -1,5 +1,5 @@
1
1
  // [META] since:2026-03-02 | owner:orchestrator-team | stable:true
2
- // [WHY] Workflow CLI commands for managing refactoring workflows with error code support
2
+ // [WHY] Workflow CLI commands for managing analysis-only workflows with error code support
3
3
  /**
4
4
  * Workflow CLI 命令
5
5
  * 工作流管理命令:start, status, proceed, resume, checkpoint, visualize, template
@@ -43,12 +43,12 @@ function createError(code, message) {
43
43
  return error;
44
44
  }
45
45
  const workflow = new Command('workflow');
46
- workflow.description('Workflow management - manage development workflow across multiple phases');
46
+ workflow.description('Workflow management - analysis-only workflow across find/read/link/show');
47
47
  /**
48
48
  * 启动新工作流
49
49
  */
50
50
  workflow.command('start')
51
- .description('Start a new development workflow')
51
+ .description('Start a new analysis workflow')
52
52
  .argument('<task>', 'Task description')
53
53
  .option('-t, --template <name>', 'Use workflow template (refactoring|bugfix|feature|hotfix)')
54
54
  .action(async (task, options) => {
@@ -89,7 +89,7 @@ Phase: ${context.currentPhase}${templateNote}
89
89
  Next steps:
90
90
  1. codemap workflow status # 查看当前状态
91
91
  2. codemap workflow visualize # 可视化工作流
92
- 3. codemap analyze --intent reference --keywords ...
92
+ 3. codemap analyze --intent find --keywords ...
93
93
  4. codemap workflow proceed # 进入下一阶段
94
94
  `);
95
95
  }
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../../src/cli/commands/workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../../src/cli/commands/workflow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import type { CodemapConfig, CodemapPluginConfig } from '../interface/config/index.js';
2
+ import type { StorageConfig } from '../interface/types/storage.js';
3
+ export interface NormalizedPluginConfig {
4
+ builtInPlugins: boolean;
5
+ pluginDir?: string;
6
+ plugins: string[];
7
+ debug: boolean;
8
+ }
9
+ export interface NormalizedStorageConfig extends StorageConfig {
10
+ }
11
+ export interface NormalizedCodemapConfig extends Omit<CodemapConfig, 'plugins' | 'storage'> {
12
+ storage: NormalizedStorageConfig;
13
+ plugins: NormalizedPluginConfig;
14
+ }
15
+ export interface CodemapConfigFile extends Omit<CodemapConfig, 'plugins' | 'storage'> {
16
+ $schema: string;
17
+ storage: StorageConfig;
18
+ plugins: CodemapPluginConfig;
19
+ }
20
+ export interface LoadedCodemapConfig {
21
+ config: NormalizedCodemapConfig;
22
+ configPath: string;
23
+ exists: boolean;
24
+ isLegacy: boolean;
25
+ hasExplicitPluginConfig: boolean;
26
+ }
27
+ export declare function createDefaultStorageConfig(): NormalizedStorageConfig;
28
+ export declare function createDefaultCodemapConfig(): NormalizedCodemapConfig;
29
+ export declare function createDefaultCodemapConfigFile(): CodemapConfigFile;
30
+ export declare function loadCodemapConfig(rootDir?: string): Promise<LoadedCodemapConfig>;
31
+ //# sourceMappingURL=config-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-loader.d.ts","sourceRoot":"","sources":["../../src/cli/config-loader.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACvF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAGnE,MAAM,WAAW,sBAAsB;IACrC,cAAc,EAAE,OAAO,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,uBAAwB,SAAQ,aAAa;CAAG;AAEjE,MAAM,WAAW,uBAAwB,SAAQ,IAAI,CAAC,aAAa,EAAE,SAAS,GAAG,SAAS,CAAC;IACzF,OAAO,EAAE,uBAAuB,CAAC;IACjC,OAAO,EAAE,sBAAsB,CAAC;CACjC;AAED,MAAM,WAAW,iBAAkB,SAAQ,IAAI,CAAC,aAAa,EAAE,SAAS,GAAG,SAAS,CAAC;IACnF,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,aAAa,CAAC;IACvB,OAAO,EAAE,mBAAmB,CAAC;CAC9B;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,uBAAuB,CAAC;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,uBAAuB,EAAE,OAAO,CAAC;CAClC;AAgID,wBAAgB,0BAA0B,IAAI,uBAAuB,CAKpE;AAED,wBAAgB,0BAA0B,IAAI,uBAAuB,CAUpE;AAED,wBAAgB,8BAA8B,IAAI,iBAAiB,CAiBlE;AAkGD,wBAAsB,iBAAiB,CAAC,OAAO,GAAE,MAAc,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAwB7F"}
@@ -0,0 +1,235 @@
1
+ // [META] since:2026-03-24 | owner:cli-team | stable:false
2
+ // [WHY] Provide a single CLI-owned config loading and normalization seam for generate/plugin integration
3
+ import { existsSync } from 'node:fs';
4
+ import { readFile } from 'node:fs/promises';
5
+ import path from 'node:path';
6
+ import { cwd } from 'node:process';
7
+ import { DEFAULT_DISCOVERY_EXCLUDES } from '../core/file-discovery.js';
8
+ import { resolveConfigPath } from './paths.js';
9
+ const DEFAULT_CONFIG_MODE = 'hybrid';
10
+ const DEFAULT_CONFIG_INCLUDE = ['src/**/*.ts'];
11
+ const DEFAULT_CONFIG_OUTPUT = '.mycodemap';
12
+ const DEFAULT_CONFIG_SCHEMA_URL = 'https://mycodemap.dev/schema/config.json';
13
+ const VALID_MODES = new Set(['fast', 'smart', 'hybrid']);
14
+ const VALID_STORAGE_TYPES = new Set([
15
+ 'filesystem',
16
+ 'kuzudb',
17
+ 'memory',
18
+ 'auto',
19
+ ]);
20
+ const ALLOWED_CONFIG_KEYS = new Set(['$schema', 'mode', 'include', 'exclude', 'output', 'watch', 'storage', 'plugins']);
21
+ const ALLOWED_PLUGIN_KEYS = new Set(['builtInPlugins', 'pluginDir', 'plugins', 'debug']);
22
+ const ALLOWED_STORAGE_KEYS = new Set([
23
+ 'type',
24
+ 'outputPath',
25
+ 'databasePath',
26
+ 'autoThresholds',
27
+ ]);
28
+ const ALLOWED_AUTO_THRESHOLD_KEYS = new Set([
29
+ 'useGraphDBWhenFileCount',
30
+ 'useGraphDBWhenNodeCount',
31
+ ]);
32
+ function isRecord(value) {
33
+ return typeof value === 'object' && value !== null && !Array.isArray(value);
34
+ }
35
+ function assertConfigObject(value, label) {
36
+ if (!isRecord(value)) {
37
+ throw new Error(`配置文件中的 "${label}" 必须是对象`);
38
+ }
39
+ return value;
40
+ }
41
+ function assertAllowedKeys(value, allowedKeys, label) {
42
+ for (const key of Object.keys(value)) {
43
+ if (!allowedKeys.has(key)) {
44
+ throw new Error(`配置文件中的 "${label}.${key}" 不是受支持的字段`);
45
+ }
46
+ }
47
+ }
48
+ function normalizeString(value, label) {
49
+ if (typeof value !== 'string') {
50
+ throw new Error(`配置文件中的 "${label}" 必须是字符串`);
51
+ }
52
+ const trimmed = value.trim();
53
+ if (trimmed.length === 0) {
54
+ throw new Error(`配置文件中的 "${label}" 不能为空字符串`);
55
+ }
56
+ return trimmed;
57
+ }
58
+ function normalizeStringArray(value, label) {
59
+ if (!Array.isArray(value)) {
60
+ throw new Error(`配置文件中的 "${label}" 必须是字符串数组`);
61
+ }
62
+ return value.map((item, index) => normalizeString(item, `${label}[${index}]`));
63
+ }
64
+ function normalizeBoolean(value, label) {
65
+ if (typeof value !== 'boolean') {
66
+ throw new Error(`配置文件中的 "${label}" 必须是布尔值`);
67
+ }
68
+ return value;
69
+ }
70
+ function normalizeNumber(value, label) {
71
+ if (typeof value !== 'number' || Number.isNaN(value)) {
72
+ throw new Error(`配置文件中的 "${label}" 必须是数字`);
73
+ }
74
+ return value;
75
+ }
76
+ function normalizeMode(value) {
77
+ const mode = normalizeString(value, 'mode');
78
+ if (!VALID_MODES.has(mode)) {
79
+ throw new Error('配置文件中的 "mode" 仅支持 fast、smart、hybrid');
80
+ }
81
+ return mode;
82
+ }
83
+ function normalizeStorageType(value) {
84
+ const storageType = normalizeString(value, 'storage.type');
85
+ if (!VALID_STORAGE_TYPES.has(storageType)) {
86
+ throw new Error('配置文件中的 "storage.type" 仅支持 filesystem、kuzudb、memory、auto');
87
+ }
88
+ return storageType;
89
+ }
90
+ function assertNoDeprecatedNeo4jConfig(rawStorageConfig) {
91
+ const containsLegacyNeo4jFields = rawStorageConfig.type === 'neo4j'
92
+ || rawStorageConfig.uri !== undefined
93
+ || rawStorageConfig.username !== undefined
94
+ || rawStorageConfig.password !== undefined;
95
+ if (containsLegacyNeo4jFields) {
96
+ throw new Error('配置文件中的 Neo4j storage 已不再受支持;请改用 filesystem、kuzudb、memory 或 auto,并移除 storage.uri / storage.username / storage.password');
97
+ }
98
+ }
99
+ function createDefaultPluginConfig() {
100
+ return {
101
+ builtInPlugins: true,
102
+ plugins: [],
103
+ debug: false,
104
+ };
105
+ }
106
+ export function createDefaultStorageConfig() {
107
+ return {
108
+ type: 'filesystem',
109
+ outputPath: '.codemap/storage',
110
+ };
111
+ }
112
+ export function createDefaultCodemapConfig() {
113
+ return {
114
+ mode: DEFAULT_CONFIG_MODE,
115
+ include: [...DEFAULT_CONFIG_INCLUDE],
116
+ exclude: [...DEFAULT_DISCOVERY_EXCLUDES],
117
+ output: DEFAULT_CONFIG_OUTPUT,
118
+ watch: false,
119
+ storage: createDefaultStorageConfig(),
120
+ plugins: createDefaultPluginConfig(),
121
+ };
122
+ }
123
+ export function createDefaultCodemapConfigFile() {
124
+ const defaults = createDefaultCodemapConfig();
125
+ return {
126
+ $schema: DEFAULT_CONFIG_SCHEMA_URL,
127
+ mode: defaults.mode,
128
+ include: defaults.include,
129
+ exclude: defaults.exclude,
130
+ output: defaults.output,
131
+ watch: defaults.watch,
132
+ storage: defaults.storage,
133
+ plugins: {
134
+ builtInPlugins: defaults.plugins.builtInPlugins,
135
+ plugins: defaults.plugins.plugins,
136
+ debug: defaults.plugins.debug,
137
+ },
138
+ };
139
+ }
140
+ function normalizeAutoThresholds(value) {
141
+ const rawThresholds = assertConfigObject(value, 'storage.autoThresholds');
142
+ assertAllowedKeys(rawThresholds, ALLOWED_AUTO_THRESHOLD_KEYS, 'storage.autoThresholds');
143
+ return {
144
+ useGraphDBWhenFileCount: normalizeNumber(rawThresholds.useGraphDBWhenFileCount, 'storage.autoThresholds.useGraphDBWhenFileCount'),
145
+ useGraphDBWhenNodeCount: normalizeNumber(rawThresholds.useGraphDBWhenNodeCount, 'storage.autoThresholds.useGraphDBWhenNodeCount'),
146
+ };
147
+ }
148
+ function normalizeStorageConfig(value) {
149
+ if (value === undefined) {
150
+ return createDefaultStorageConfig();
151
+ }
152
+ const defaults = createDefaultStorageConfig();
153
+ const rawStorageConfig = assertConfigObject(value, 'storage');
154
+ assertNoDeprecatedNeo4jConfig(rawStorageConfig);
155
+ assertAllowedKeys(rawStorageConfig, ALLOWED_STORAGE_KEYS, 'storage');
156
+ return {
157
+ type: rawStorageConfig.type === undefined ? defaults.type : normalizeStorageType(rawStorageConfig.type),
158
+ outputPath: rawStorageConfig.outputPath === undefined
159
+ ? defaults.outputPath
160
+ : normalizeString(rawStorageConfig.outputPath, 'storage.outputPath'),
161
+ databasePath: rawStorageConfig.databasePath === undefined
162
+ ? undefined
163
+ : normalizeString(rawStorageConfig.databasePath, 'storage.databasePath'),
164
+ autoThresholds: rawStorageConfig.autoThresholds === undefined
165
+ ? undefined
166
+ : normalizeAutoThresholds(rawStorageConfig.autoThresholds),
167
+ };
168
+ }
169
+ function normalizePluginConfig(value, rootDir) {
170
+ if (value === undefined) {
171
+ return createDefaultPluginConfig();
172
+ }
173
+ const rawPluginConfig = assertConfigObject(value, 'plugins');
174
+ assertAllowedKeys(rawPluginConfig, ALLOWED_PLUGIN_KEYS, 'plugins');
175
+ return {
176
+ builtInPlugins: rawPluginConfig.builtInPlugins === undefined
177
+ ? true
178
+ : normalizeBoolean(rawPluginConfig.builtInPlugins, 'plugins.builtInPlugins'),
179
+ pluginDir: rawPluginConfig.pluginDir === undefined
180
+ ? undefined
181
+ : path.resolve(rootDir, normalizeString(rawPluginConfig.pluginDir, 'plugins.pluginDir')),
182
+ plugins: rawPluginConfig.plugins === undefined
183
+ ? []
184
+ : normalizeStringArray(rawPluginConfig.plugins, 'plugins.plugins'),
185
+ debug: rawPluginConfig.debug === undefined
186
+ ? false
187
+ : normalizeBoolean(rawPluginConfig.debug, 'plugins.debug'),
188
+ };
189
+ }
190
+ function normalizeCodemapConfig(value, rootDir) {
191
+ const defaults = createDefaultCodemapConfig();
192
+ const rawConfig = assertConfigObject(value, 'root');
193
+ assertAllowedKeys(rawConfig, ALLOWED_CONFIG_KEYS, 'root');
194
+ return {
195
+ mode: rawConfig.mode === undefined ? defaults.mode : normalizeMode(rawConfig.mode),
196
+ include: rawConfig.include === undefined ? defaults.include : normalizeStringArray(rawConfig.include, 'include'),
197
+ exclude: rawConfig.exclude === undefined ? defaults.exclude : normalizeStringArray(rawConfig.exclude, 'exclude'),
198
+ output: rawConfig.output === undefined ? defaults.output : normalizeString(rawConfig.output, 'output'),
199
+ watch: rawConfig.watch === undefined ? defaults.watch : normalizeBoolean(rawConfig.watch, 'watch'),
200
+ storage: normalizeStorageConfig(rawConfig.storage),
201
+ plugins: normalizePluginConfig(rawConfig.plugins, rootDir),
202
+ };
203
+ }
204
+ function parseConfigText(text, configPath) {
205
+ try {
206
+ return JSON.parse(text);
207
+ }
208
+ catch (error) {
209
+ const reason = error instanceof Error ? error.message : String(error);
210
+ throw new Error(`无法解析配置文件 ${configPath}: ${reason}`);
211
+ }
212
+ }
213
+ export async function loadCodemapConfig(rootDir = cwd()) {
214
+ const { path: configPath, isLegacy } = resolveConfigPath(rootDir);
215
+ if (!existsSync(configPath)) {
216
+ return {
217
+ config: createDefaultCodemapConfig(),
218
+ configPath,
219
+ exists: false,
220
+ isLegacy,
221
+ hasExplicitPluginConfig: false,
222
+ };
223
+ }
224
+ const configText = await readFile(configPath, 'utf8');
225
+ const parsedConfig = parseConfigText(configText, configPath);
226
+ const hasExplicitPluginConfig = isRecord(parsedConfig) && Object.prototype.hasOwnProperty.call(parsedConfig, 'plugins');
227
+ return {
228
+ config: normalizeCodemapConfig(parsedConfig, rootDir),
229
+ configPath,
230
+ exists: true,
231
+ isLegacy,
232
+ hasExplicitPluginConfig,
233
+ };
234
+ }
235
+ //# sourceMappingURL=config-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-loader.js","sourceRoot":"","sources":["../../src/cli/config-loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { DesignContractDiagnostic, NormalizedDesignContract } from '../interface/types/design-contract.js';
2
+ export interface LoadDesignContractOptions {
3
+ filePath?: string;
4
+ rootDir?: string;
5
+ }
6
+ export interface LoadedDesignContract {
7
+ ok: boolean;
8
+ exists: boolean;
9
+ filePath: string;
10
+ contract: NormalizedDesignContract;
11
+ diagnostics: DesignContractDiagnostic[];
12
+ }
13
+ export declare function hasBlockingDesignContractDiagnostics(diagnostics: readonly DesignContractDiagnostic[]): boolean;
14
+ export declare function loadDesignContract(options?: LoadDesignContractOptions): Promise<LoadedDesignContract>;
15
+ //# sourceMappingURL=design-contract-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"design-contract-loader.d.ts","sourceRoot":"","sources":["../../src/cli/design-contract-loader.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACV,wBAAwB,EAMxB,wBAAwB,EACzB,MAAM,uCAAuC,CAAC;AAS/C,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,OAAO,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,wBAAwB,CAAC;IACnC,WAAW,EAAE,wBAAwB,EAAE,CAAC;CACzC;AAyID,wBAAgB,oCAAoC,CAClD,WAAW,EAAE,SAAS,wBAAwB,EAAE,GAC/C,OAAO,CAET;AAED,wBAAsB,kBAAkB,CACtC,OAAO,GAAE,yBAA8B,GACtC,OAAO,CAAC,oBAAoB,CAAC,CAyH/B"}
@@ -0,0 +1,175 @@
1
+ // [META] since:2026-03-25 | owner:cli-team | stable:false
2
+ // [WHY] Provide a CLI-owned loader and validator seam for human-authored design contract markdown files
3
+ import { existsSync } from 'node:fs';
4
+ import { readFile } from 'node:fs/promises';
5
+ import path from 'node:path';
6
+ import { cwd } from 'node:process';
7
+ import { DEFAULT_DESIGN_CONTRACT_PATH, getCanonicalDesignContractHeading, isRequiredDesignContractSection, normalizeDesignContractHeading, REQUIRED_DESIGN_CONTRACT_SECTIONS, } from './design-contract-schema.js';
8
+ function resolveDesignContractPath(filePath, rootDir = cwd()) {
9
+ if (!filePath) {
10
+ return path.join(rootDir, DEFAULT_DESIGN_CONTRACT_PATH);
11
+ }
12
+ return path.isAbsolute(filePath) ? filePath : path.join(rootDir, filePath);
13
+ }
14
+ function createMetadata(sourcePath, title) {
15
+ return {
16
+ version: 'v1',
17
+ sourcePath,
18
+ title,
19
+ };
20
+ }
21
+ function createDiagnostic(code, message, severity, details = {}) {
22
+ return {
23
+ code,
24
+ message,
25
+ severity,
26
+ ...details,
27
+ };
28
+ }
29
+ function createEmptyContract(sourcePath) {
30
+ return {
31
+ metadata: createMetadata(sourcePath),
32
+ sections: {},
33
+ orderedSections: [],
34
+ missingRequiredSections: [...REQUIRED_DESIGN_CONTRACT_SECTIONS],
35
+ diagnostics: [],
36
+ };
37
+ }
38
+ function trimSectionContent(lines) {
39
+ let start = 0;
40
+ let end = lines.length;
41
+ while (start < end && lines[start]?.trim() === '') {
42
+ start += 1;
43
+ }
44
+ while (end > start && lines[end - 1]?.trim() === '') {
45
+ end -= 1;
46
+ }
47
+ return lines.slice(start, end);
48
+ }
49
+ function getSectionSeverity(sectionId) {
50
+ return isRequiredDesignContractSection(sectionId) ? 'error' : 'warning';
51
+ }
52
+ function finalizeSection(pendingSection, sections, orderedSections, diagnostics) {
53
+ if (!pendingSection) {
54
+ return;
55
+ }
56
+ if (sections[pendingSection.id]) {
57
+ diagnostics.push(createDiagnostic('duplicate-section', `重复的 section: ${getCanonicalDesignContractHeading(pendingSection.id)}`, 'error', {
58
+ section: pendingSection.id,
59
+ heading: pendingSection.rawHeading,
60
+ line: pendingSection.line,
61
+ }));
62
+ return;
63
+ }
64
+ const content = trimSectionContent(pendingSection.content);
65
+ const section = {
66
+ id: pendingSection.id,
67
+ title: pendingSection.title,
68
+ rawHeading: pendingSection.rawHeading,
69
+ content,
70
+ line: pendingSection.line,
71
+ };
72
+ sections[pendingSection.id] = section;
73
+ orderedSections.push(section);
74
+ if (content.length === 0) {
75
+ diagnostics.push(createDiagnostic('empty-section', `空的 section: ${getCanonicalDesignContractHeading(pendingSection.id)}`, getSectionSeverity(pendingSection.id), {
76
+ section: pendingSection.id,
77
+ heading: pendingSection.rawHeading,
78
+ line: pendingSection.line,
79
+ }));
80
+ }
81
+ }
82
+ function extractDocumentTitle(lines) {
83
+ for (const rawLine of lines) {
84
+ const line = rawLine.trim();
85
+ if (line.startsWith('# ')) {
86
+ return line.slice(2).trim();
87
+ }
88
+ }
89
+ return undefined;
90
+ }
91
+ export function hasBlockingDesignContractDiagnostics(diagnostics) {
92
+ return diagnostics.some((diagnostic) => diagnostic.severity === 'error');
93
+ }
94
+ export async function loadDesignContract(options = {}) {
95
+ const rootDir = options.rootDir ?? cwd();
96
+ const filePath = resolveDesignContractPath(options.filePath, rootDir);
97
+ const initialContract = createEmptyContract(filePath);
98
+ if (!existsSync(filePath)) {
99
+ const diagnostics = [
100
+ createDiagnostic('file-not-found', `未找到 design contract 文件: ${filePath}`, 'error', {
101
+ suggestion: `请创建 ${DEFAULT_DESIGN_CONTRACT_PATH},或显式传入文件路径`,
102
+ }),
103
+ ...REQUIRED_DESIGN_CONTRACT_SECTIONS.map((sectionId) => createDiagnostic('missing-section', `缺少必填 section: ${getCanonicalDesignContractHeading(sectionId)}`, 'error', {
104
+ section: sectionId,
105
+ })),
106
+ ];
107
+ return {
108
+ ok: false,
109
+ exists: false,
110
+ filePath,
111
+ contract: {
112
+ ...initialContract,
113
+ diagnostics,
114
+ },
115
+ diagnostics,
116
+ };
117
+ }
118
+ const sourceText = await readFile(filePath, 'utf8');
119
+ const lines = sourceText.split(/\r?\n/u);
120
+ const metadata = createMetadata(filePath, extractDocumentTitle(lines));
121
+ const sections = {};
122
+ const orderedSections = [];
123
+ const diagnostics = [];
124
+ let pendingSection;
125
+ lines.forEach((rawLine, index) => {
126
+ const lineNumber = index + 1;
127
+ const headingMatch = rawLine.match(/^##\s+(.+?)\s*$/u);
128
+ if (!headingMatch) {
129
+ if (pendingSection) {
130
+ pendingSection.content.push(rawLine);
131
+ }
132
+ return;
133
+ }
134
+ finalizeSection(pendingSection, sections, orderedSections, diagnostics);
135
+ pendingSection = undefined;
136
+ const heading = headingMatch[1]?.trim() ?? '';
137
+ const sectionId = normalizeDesignContractHeading(heading);
138
+ if (!sectionId) {
139
+ diagnostics.push(createDiagnostic('unknown-section', `未知的 section heading: ${heading}`, 'warning', {
140
+ heading,
141
+ line: lineNumber,
142
+ }));
143
+ return;
144
+ }
145
+ pendingSection = {
146
+ id: sectionId,
147
+ title: getCanonicalDesignContractHeading(sectionId),
148
+ rawHeading: heading,
149
+ line: lineNumber,
150
+ content: [],
151
+ };
152
+ });
153
+ finalizeSection(pendingSection, sections, orderedSections, diagnostics);
154
+ const missingRequiredSections = REQUIRED_DESIGN_CONTRACT_SECTIONS.filter((sectionId) => !sections[sectionId]);
155
+ for (const sectionId of missingRequiredSections) {
156
+ diagnostics.push(createDiagnostic('missing-section', `缺少必填 section: ${getCanonicalDesignContractHeading(sectionId)}`, 'error', {
157
+ section: sectionId,
158
+ }));
159
+ }
160
+ const contract = {
161
+ metadata,
162
+ sections,
163
+ orderedSections,
164
+ missingRequiredSections,
165
+ diagnostics,
166
+ };
167
+ return {
168
+ ok: !hasBlockingDesignContractDiagnostics(diagnostics),
169
+ exists: true,
170
+ filePath,
171
+ contract,
172
+ diagnostics,
173
+ };
174
+ }
175
+ //# sourceMappingURL=design-contract-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"design-contract-loader.js","sourceRoot":"","sources":["../../src/cli/design-contract-loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { DesignContractRequiredSectionId, DesignContractSectionId } from '../interface/types/design-contract.js';
2
+ export declare const DEFAULT_DESIGN_CONTRACT_PATH = "mycodemap.design.md";
3
+ export declare const REQUIRED_DESIGN_CONTRACT_SECTIONS: readonly DesignContractRequiredSectionId[];
4
+ export declare const OPTIONAL_DESIGN_CONTRACT_SECTIONS: readonly Exclude<DesignContractSectionId, DesignContractRequiredSectionId>[];
5
+ export declare const DESIGN_CONTRACT_SECTION_IDS: readonly DesignContractSectionId[];
6
+ export declare const DESIGN_CONTRACT_SECTION_LABELS: Readonly<Record<DesignContractSectionId, string>>;
7
+ export declare const DESIGN_CONTRACT_SECTION_ALIASES: Readonly<Record<DesignContractSectionId, readonly string[]>>;
8
+ export declare function isRequiredDesignContractSection(sectionId: DesignContractSectionId): sectionId is DesignContractRequiredSectionId;
9
+ export declare function normalizeDesignContractHeading(heading: string): DesignContractSectionId | undefined;
10
+ export declare function getCanonicalDesignContractHeading(sectionId: DesignContractSectionId): string;
11
+ //# sourceMappingURL=design-contract-schema.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"design-contract-schema.d.ts","sourceRoot":"","sources":["../../src/cli/design-contract-schema.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EACV,+BAA+B,EAC/B,uBAAuB,EACxB,MAAM,uCAAuC,CAAC;AAE/C,eAAO,MAAM,4BAA4B,wBAAwB,CAAC;AAElE,eAAO,MAAM,iCAAiC,EAAE,SAAS,+BAA+B,EAKvF,CAAC;AAEF,eAAO,MAAM,iCAAiC,EAAE,SAAS,OAAO,CAC9D,uBAAuB,EACvB,+BAA+B,CAChC,EAIA,CAAC;AAEF,eAAO,MAAM,2BAA2B,EAAE,SAAS,uBAAuB,EAGzE,CAAC;AAEF,eAAO,MAAM,8BAA8B,EAAE,QAAQ,CAAC,MAAM,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAQ5F,CAAC;AAEF,eAAO,MAAM,+BAA+B,EAAE,QAAQ,CAAC,MAAM,CAAC,uBAAuB,EAAE,SAAS,MAAM,EAAE,CAAC,CAqBxG,CAAC;AAeF,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,uBAAuB,GACjC,SAAS,IAAI,+BAA+B,CAE9C;AAED,wBAAgB,8BAA8B,CAC5C,OAAO,EAAE,MAAM,GACd,uBAAuB,GAAG,SAAS,CAWrC;AAED,wBAAgB,iCAAiC,CAC/C,SAAS,EAAE,uBAAuB,GACjC,MAAM,CAER"}