@egentica/codemap 0.1.5

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 (527) hide show
  1. package/LICENSE.md +165 -0
  2. package/README.md +479 -0
  3. package/dist/adapters/EgenticaMcpAdapter.d.ts +128 -0
  4. package/dist/adapters/EgenticaMcpAdapter.d.ts.map +1 -0
  5. package/dist/adapters/EgenticaMcpAdapter.js +218 -0
  6. package/dist/adapters/EgenticaMcpAdapter.js.map +1 -0
  7. package/dist/assist/AssistEngine.d.ts +107 -0
  8. package/dist/assist/AssistEngine.d.ts.map +1 -0
  9. package/dist/assist/AssistEngine.js +188 -0
  10. package/dist/assist/AssistEngine.js.map +1 -0
  11. package/dist/assist/AssistScorer.d.ts +91 -0
  12. package/dist/assist/AssistScorer.d.ts.map +1 -0
  13. package/dist/assist/AssistScorer.js +254 -0
  14. package/dist/assist/AssistScorer.js.map +1 -0
  15. package/dist/assist/PatternAggregator.d.ts +116 -0
  16. package/dist/assist/PatternAggregator.d.ts.map +1 -0
  17. package/dist/assist/PatternAggregator.js +311 -0
  18. package/dist/assist/PatternAggregator.js.map +1 -0
  19. package/dist/assist/RelevanceScorer.d.ts +104 -0
  20. package/dist/assist/RelevanceScorer.d.ts.map +1 -0
  21. package/dist/assist/RelevanceScorer.js +240 -0
  22. package/dist/assist/RelevanceScorer.js.map +1 -0
  23. package/dist/assist/index.d.ts +6 -0
  24. package/dist/assist/index.d.ts.map +1 -0
  25. package/dist/assist/index.js +9 -0
  26. package/dist/assist/index.js.map +1 -0
  27. package/dist/core/AnnotationStore.d.ts +101 -0
  28. package/dist/core/AnnotationStore.d.ts.map +1 -0
  29. package/dist/core/AnnotationStore.js +236 -0
  30. package/dist/core/AnnotationStore.js.map +1 -0
  31. package/dist/core/BackupManager.d.ts +92 -0
  32. package/dist/core/BackupManager.d.ts.map +1 -0
  33. package/dist/core/BackupManager.js +311 -0
  34. package/dist/core/BackupManager.js.map +1 -0
  35. package/dist/core/ChecklistStore.d.ts +66 -0
  36. package/dist/core/ChecklistStore.d.ts.map +1 -0
  37. package/dist/core/ChecklistStore.js +199 -0
  38. package/dist/core/ChecklistStore.js.map +1 -0
  39. package/dist/core/CodeMap.d.ts +614 -0
  40. package/dist/core/CodeMap.d.ts.map +1 -0
  41. package/dist/core/CodeMap.js +880 -0
  42. package/dist/core/CodeMap.js.map +1 -0
  43. package/dist/core/DisplayFilter.d.ts +83 -0
  44. package/dist/core/DisplayFilter.d.ts.map +1 -0
  45. package/dist/core/DisplayFilter.js +228 -0
  46. package/dist/core/DisplayFilter.js.map +1 -0
  47. package/dist/core/EventBus.d.ts +114 -0
  48. package/dist/core/EventBus.d.ts.map +1 -0
  49. package/dist/core/EventBus.js +192 -0
  50. package/dist/core/EventBus.js.map +1 -0
  51. package/dist/core/ExperienceStore.d.ts +170 -0
  52. package/dist/core/ExperienceStore.d.ts.map +1 -0
  53. package/dist/core/ExperienceStore.js +292 -0
  54. package/dist/core/ExperienceStore.js.map +1 -0
  55. package/dist/core/ExperienceTracker.d.ts +110 -0
  56. package/dist/core/ExperienceTracker.d.ts.map +1 -0
  57. package/dist/core/ExperienceTracker.js +291 -0
  58. package/dist/core/ExperienceTracker.js.map +1 -0
  59. package/dist/core/FileSystemGraph.d.ts +157 -0
  60. package/dist/core/FileSystemGraph.d.ts.map +1 -0
  61. package/dist/core/FileSystemGraph.js +316 -0
  62. package/dist/core/FileSystemGraph.js.map +1 -0
  63. package/dist/core/FileSystemIO.d.ts +222 -0
  64. package/dist/core/FileSystemIO.d.ts.map +1 -0
  65. package/dist/core/FileSystemIO.js +403 -0
  66. package/dist/core/FileSystemIO.js.map +1 -0
  67. package/dist/core/FuzzyMatcher.d.ts +51 -0
  68. package/dist/core/FuzzyMatcher.d.ts.map +1 -0
  69. package/dist/core/FuzzyMatcher.js +280 -0
  70. package/dist/core/FuzzyMatcher.js.map +1 -0
  71. package/dist/core/GroupStore.d.ts +114 -0
  72. package/dist/core/GroupStore.d.ts.map +1 -0
  73. package/dist/core/GroupStore.js +246 -0
  74. package/dist/core/GroupStore.js.map +1 -0
  75. package/dist/core/HelpRegistry.d.ts +116 -0
  76. package/dist/core/HelpRegistry.d.ts.map +1 -0
  77. package/dist/core/HelpRegistry.js +160 -0
  78. package/dist/core/HelpRegistry.js.map +1 -0
  79. package/dist/core/HintRegistry.d.ts +49 -0
  80. package/dist/core/HintRegistry.d.ts.map +1 -0
  81. package/dist/core/HintRegistry.js +81 -0
  82. package/dist/core/HintRegistry.js.map +1 -0
  83. package/dist/core/LabelStore.d.ts +88 -0
  84. package/dist/core/LabelStore.d.ts.map +1 -0
  85. package/dist/core/LabelStore.js +520 -0
  86. package/dist/core/LabelStore.js.map +1 -0
  87. package/dist/core/LineRangeWriter.d.ts +63 -0
  88. package/dist/core/LineRangeWriter.d.ts.map +1 -0
  89. package/dist/core/LineRangeWriter.js +179 -0
  90. package/dist/core/LineRangeWriter.js.map +1 -0
  91. package/dist/core/ParserRegistry.d.ts +70 -0
  92. package/dist/core/ParserRegistry.d.ts.map +1 -0
  93. package/dist/core/ParserRegistry.js +109 -0
  94. package/dist/core/ParserRegistry.js.map +1 -0
  95. package/dist/core/PluginRegistry.d.ts +120 -0
  96. package/dist/core/PluginRegistry.d.ts.map +1 -0
  97. package/dist/core/PluginRegistry.js +230 -0
  98. package/dist/core/PluginRegistry.js.map +1 -0
  99. package/dist/core/QueryEngine.d.ts +134 -0
  100. package/dist/core/QueryEngine.d.ts.map +1 -0
  101. package/dist/core/QueryEngine.js +211 -0
  102. package/dist/core/QueryEngine.js.map +1 -0
  103. package/dist/core/Scanner.d.ts +84 -0
  104. package/dist/core/Scanner.d.ts.map +1 -0
  105. package/dist/core/Scanner.js +184 -0
  106. package/dist/core/Scanner.js.map +1 -0
  107. package/dist/core/SessionTransactionLog.d.ts +138 -0
  108. package/dist/core/SessionTransactionLog.d.ts.map +1 -0
  109. package/dist/core/SessionTransactionLog.js +397 -0
  110. package/dist/core/SessionTransactionLog.js.map +1 -0
  111. package/dist/core/TargetParser.d.ts +85 -0
  112. package/dist/core/TargetParser.d.ts.map +1 -0
  113. package/dist/core/TargetParser.js +167 -0
  114. package/dist/core/TargetParser.js.map +1 -0
  115. package/dist/core/TargetResolver.d.ts +115 -0
  116. package/dist/core/TargetResolver.d.ts.map +1 -0
  117. package/dist/core/TargetResolver.js +237 -0
  118. package/dist/core/TargetResolver.js.map +1 -0
  119. package/dist/core/WriteSafetyGuard.d.ts +101 -0
  120. package/dist/core/WriteSafetyGuard.d.ts.map +1 -0
  121. package/dist/core/WriteSafetyGuard.js +265 -0
  122. package/dist/core/WriteSafetyGuard.js.map +1 -0
  123. package/dist/core/index.d.ts +38 -0
  124. package/dist/core/index.d.ts.map +1 -0
  125. package/dist/core/index.js +51 -0
  126. package/dist/core/index.js.map +1 -0
  127. package/dist/core/query/DependencyTraversal.d.ts +23 -0
  128. package/dist/core/query/DependencyTraversal.d.ts.map +1 -0
  129. package/dist/core/query/DependencyTraversal.js +55 -0
  130. package/dist/core/query/DependencyTraversal.js.map +1 -0
  131. package/dist/core/query/ResultProcessor.d.ts +20 -0
  132. package/dist/core/query/ResultProcessor.d.ts.map +1 -0
  133. package/dist/core/query/ResultProcessor.js +99 -0
  134. package/dist/core/query/ResultProcessor.js.map +1 -0
  135. package/dist/core/query/SymbolSearchEngine.d.ts +20 -0
  136. package/dist/core/query/SymbolSearchEngine.d.ts.map +1 -0
  137. package/dist/core/query/SymbolSearchEngine.js +109 -0
  138. package/dist/core/query/SymbolSearchEngine.js.map +1 -0
  139. package/dist/core/query/TextSearchEngine.d.ts +23 -0
  140. package/dist/core/query/TextSearchEngine.d.ts.map +1 -0
  141. package/dist/core/query/TextSearchEngine.js +69 -0
  142. package/dist/core/query/TextSearchEngine.js.map +1 -0
  143. package/dist/core/query/index.d.ts +11 -0
  144. package/dist/core/query/index.d.ts.map +1 -0
  145. package/dist/core/query/index.js +18 -0
  146. package/dist/core/query/index.js.map +1 -0
  147. package/dist/core/scan/DependencyResolver.d.ts +26 -0
  148. package/dist/core/scan/DependencyResolver.d.ts.map +1 -0
  149. package/dist/core/scan/DependencyResolver.js +81 -0
  150. package/dist/core/scan/DependencyResolver.js.map +1 -0
  151. package/dist/core/scan/DirectoryWalker.d.ts +39 -0
  152. package/dist/core/scan/DirectoryWalker.d.ts.map +1 -0
  153. package/dist/core/scan/DirectoryWalker.js +136 -0
  154. package/dist/core/scan/DirectoryWalker.js.map +1 -0
  155. package/dist/core/scan/IgnorePatternMatcher.d.ts +32 -0
  156. package/dist/core/scan/IgnorePatternMatcher.d.ts.map +1 -0
  157. package/dist/core/scan/IgnorePatternMatcher.js +120 -0
  158. package/dist/core/scan/IgnorePatternMatcher.js.map +1 -0
  159. package/dist/core/scan/index.d.ts +10 -0
  160. package/dist/core/scan/index.d.ts.map +1 -0
  161. package/dist/core/scan/index.js +16 -0
  162. package/dist/core/scan/index.js.map +1 -0
  163. package/dist/core/utils/packageDiscovery.d.ts +24 -0
  164. package/dist/core/utils/packageDiscovery.d.ts.map +1 -0
  165. package/dist/core/utils/packageDiscovery.js +37 -0
  166. package/dist/core/utils/packageDiscovery.js.map +1 -0
  167. package/dist/index.d.ts +18 -0
  168. package/dist/index.d.ts.map +1 -0
  169. package/dist/index.js +37 -0
  170. package/dist/index.js.map +1 -0
  171. package/dist/mcp/operations/annotations.d.ts +9 -0
  172. package/dist/mcp/operations/annotations.d.ts.map +1 -0
  173. package/dist/mcp/operations/annotations.js +66 -0
  174. package/dist/mcp/operations/annotations.js.map +1 -0
  175. package/dist/mcp/operations/files.d.ts +13 -0
  176. package/dist/mcp/operations/files.d.ts.map +1 -0
  177. package/dist/mcp/operations/files.js +173 -0
  178. package/dist/mcp/operations/files.js.map +1 -0
  179. package/dist/mcp/operations/graph.d.ts +10 -0
  180. package/dist/mcp/operations/graph.d.ts.map +1 -0
  181. package/dist/mcp/operations/graph.js +69 -0
  182. package/dist/mcp/operations/graph.js.map +1 -0
  183. package/dist/mcp/operations/groups.d.ts +55 -0
  184. package/dist/mcp/operations/groups.d.ts.map +1 -0
  185. package/dist/mcp/operations/groups.js +233 -0
  186. package/dist/mcp/operations/groups.js.map +1 -0
  187. package/dist/mcp/operations/help.d.ts +36 -0
  188. package/dist/mcp/operations/help.d.ts.map +1 -0
  189. package/dist/mcp/operations/help.js +322 -0
  190. package/dist/mcp/operations/help.js.map +1 -0
  191. package/dist/mcp/operations/session.d.ts +13 -0
  192. package/dist/mcp/operations/session.d.ts.map +1 -0
  193. package/dist/mcp/operations/session.js +169 -0
  194. package/dist/mcp/operations/session.js.map +1 -0
  195. package/dist/mcp/operations/writes.d.ts +14 -0
  196. package/dist/mcp/operations/writes.d.ts.map +1 -0
  197. package/dist/mcp/operations/writes.js +287 -0
  198. package/dist/mcp/operations/writes.js.map +1 -0
  199. package/dist/mcp/registry/ToolRegistry.d.ts +54 -0
  200. package/dist/mcp/registry/ToolRegistry.d.ts.map +1 -0
  201. package/dist/mcp/registry/ToolRegistry.js +219 -0
  202. package/dist/mcp/registry/ToolRegistry.js.map +1 -0
  203. package/dist/mcp/registry/context-guard.d.ts +13 -0
  204. package/dist/mcp/registry/context-guard.d.ts.map +1 -0
  205. package/dist/mcp/registry/context-guard.js +19 -0
  206. package/dist/mcp/registry/context-guard.js.map +1 -0
  207. package/dist/mcp/registry/schemas.d.ts +221 -0
  208. package/dist/mcp/registry/schemas.d.ts.map +1 -0
  209. package/dist/mcp/registry/schemas.js +217 -0
  210. package/dist/mcp/registry/schemas.js.map +1 -0
  211. package/dist/mcp/registry/types.d.ts +50 -0
  212. package/dist/mcp/registry/types.d.ts.map +1 -0
  213. package/dist/mcp/registry/types.js +5 -0
  214. package/dist/mcp/registry/types.js.map +1 -0
  215. package/dist/mcp/server.d.ts +35 -0
  216. package/dist/mcp/server.d.ts.map +1 -0
  217. package/dist/mcp/server.js +264 -0
  218. package/dist/mcp/server.js.map +1 -0
  219. package/dist/mcp/tools/annotations/add.tool.d.ts +10 -0
  220. package/dist/mcp/tools/annotations/add.tool.d.ts.map +1 -0
  221. package/dist/mcp/tools/annotations/add.tool.js +88 -0
  222. package/dist/mcp/tools/annotations/add.tool.js.map +1 -0
  223. package/dist/mcp/tools/annotations/edit.tool.d.ts +10 -0
  224. package/dist/mcp/tools/annotations/edit.tool.d.ts.map +1 -0
  225. package/dist/mcp/tools/annotations/edit.tool.js +92 -0
  226. package/dist/mcp/tools/annotations/edit.tool.js.map +1 -0
  227. package/dist/mcp/tools/annotations/remove.tool.d.ts +9 -0
  228. package/dist/mcp/tools/annotations/remove.tool.d.ts.map +1 -0
  229. package/dist/mcp/tools/annotations/remove.tool.js +87 -0
  230. package/dist/mcp/tools/annotations/remove.tool.js.map +1 -0
  231. package/dist/mcp/tools/annotations/search-annotations.tool.d.ts +11 -0
  232. package/dist/mcp/tools/annotations/search-annotations.tool.d.ts.map +1 -0
  233. package/dist/mcp/tools/annotations/search-annotations.tool.js +91 -0
  234. package/dist/mcp/tools/annotations/search-annotations.tool.js.map +1 -0
  235. package/dist/mcp/tools/backup/list.tool.d.ts +16 -0
  236. package/dist/mcp/tools/backup/list.tool.d.ts.map +1 -0
  237. package/dist/mcp/tools/backup/list.tool.js +48 -0
  238. package/dist/mcp/tools/backup/list.tool.js.map +1 -0
  239. package/dist/mcp/tools/backup/restore.tool.d.ts +15 -0
  240. package/dist/mcp/tools/backup/restore.tool.d.ts.map +1 -0
  241. package/dist/mcp/tools/backup/restore.tool.js +138 -0
  242. package/dist/mcp/tools/backup/restore.tool.js.map +1 -0
  243. package/dist/mcp/tools/checklist/add.tool.d.ts +17 -0
  244. package/dist/mcp/tools/checklist/add.tool.d.ts.map +1 -0
  245. package/dist/mcp/tools/checklist/add.tool.js +53 -0
  246. package/dist/mcp/tools/checklist/add.tool.js.map +1 -0
  247. package/dist/mcp/tools/checklist/list.tool.d.ts +11 -0
  248. package/dist/mcp/tools/checklist/list.tool.d.ts.map +1 -0
  249. package/dist/mcp/tools/checklist/list.tool.js +53 -0
  250. package/dist/mcp/tools/checklist/list.tool.js.map +1 -0
  251. package/dist/mcp/tools/checklist/remove.tool.d.ts +9 -0
  252. package/dist/mcp/tools/checklist/remove.tool.d.ts.map +1 -0
  253. package/dist/mcp/tools/checklist/remove.tool.js +63 -0
  254. package/dist/mcp/tools/checklist/remove.tool.js.map +1 -0
  255. package/dist/mcp/tools/graph/get-dependencies.tool.d.ts +8 -0
  256. package/dist/mcp/tools/graph/get-dependencies.tool.d.ts.map +1 -0
  257. package/dist/mcp/tools/graph/get-dependencies.tool.js +58 -0
  258. package/dist/mcp/tools/graph/get-dependencies.tool.js.map +1 -0
  259. package/dist/mcp/tools/graph/get-related.tool.d.ts +9 -0
  260. package/dist/mcp/tools/graph/get-related.tool.d.ts.map +1 -0
  261. package/dist/mcp/tools/graph/get-related.tool.js +63 -0
  262. package/dist/mcp/tools/graph/get-related.tool.js.map +1 -0
  263. package/dist/mcp/tools/graph/impact-analysis.tool.d.ts +9 -0
  264. package/dist/mcp/tools/graph/impact-analysis.tool.d.ts.map +1 -0
  265. package/dist/mcp/tools/graph/impact-analysis.tool.js +61 -0
  266. package/dist/mcp/tools/graph/impact-analysis.tool.js.map +1 -0
  267. package/dist/mcp/tools/graph/traverse.tool.d.ts +13 -0
  268. package/dist/mcp/tools/graph/traverse.tool.d.ts.map +1 -0
  269. package/dist/mcp/tools/graph/traverse.tool.js +59 -0
  270. package/dist/mcp/tools/graph/traverse.tool.js.map +1 -0
  271. package/dist/mcp/tools/groups/add.tool.d.ts +10 -0
  272. package/dist/mcp/tools/groups/add.tool.d.ts.map +1 -0
  273. package/dist/mcp/tools/groups/add.tool.js +85 -0
  274. package/dist/mcp/tools/groups/add.tool.js.map +1 -0
  275. package/dist/mcp/tools/groups/notate.tool.d.ts +11 -0
  276. package/dist/mcp/tools/groups/notate.tool.d.ts.map +1 -0
  277. package/dist/mcp/tools/groups/notate.tool.js +86 -0
  278. package/dist/mcp/tools/groups/notate.tool.js.map +1 -0
  279. package/dist/mcp/tools/groups/search.tool.d.ts +8 -0
  280. package/dist/mcp/tools/groups/search.tool.d.ts.map +1 -0
  281. package/dist/mcp/tools/groups/search.tool.js +81 -0
  282. package/dist/mcp/tools/groups/search.tool.js.map +1 -0
  283. package/dist/mcp/tools/io/append.tool.d.ts +10 -0
  284. package/dist/mcp/tools/io/append.tool.d.ts.map +1 -0
  285. package/dist/mcp/tools/io/append.tool.js +103 -0
  286. package/dist/mcp/tools/io/append.tool.js.map +1 -0
  287. package/dist/mcp/tools/io/create.tool.d.ts +11 -0
  288. package/dist/mcp/tools/io/create.tool.d.ts.map +1 -0
  289. package/dist/mcp/tools/io/create.tool.js +119 -0
  290. package/dist/mcp/tools/io/create.tool.js.map +1 -0
  291. package/dist/mcp/tools/io/delete.tool.d.ts +9 -0
  292. package/dist/mcp/tools/io/delete.tool.d.ts.map +1 -0
  293. package/dist/mcp/tools/io/delete.tool.js +129 -0
  294. package/dist/mcp/tools/io/delete.tool.js.map +1 -0
  295. package/dist/mcp/tools/io/get-annotations.tool.d.ts +10 -0
  296. package/dist/mcp/tools/io/get-annotations.tool.d.ts.map +1 -0
  297. package/dist/mcp/tools/io/get-annotations.tool.js +97 -0
  298. package/dist/mcp/tools/io/get-annotations.tool.js.map +1 -0
  299. package/dist/mcp/tools/io/get-symbols.tool.d.ts +9 -0
  300. package/dist/mcp/tools/io/get-symbols.tool.d.ts.map +1 -0
  301. package/dist/mcp/tools/io/get-symbols.tool.js +63 -0
  302. package/dist/mcp/tools/io/get-symbols.tool.js.map +1 -0
  303. package/dist/mcp/tools/io/list.tool.d.ts +8 -0
  304. package/dist/mcp/tools/io/list.tool.d.ts.map +1 -0
  305. package/dist/mcp/tools/io/list.tool.js +68 -0
  306. package/dist/mcp/tools/io/list.tool.js.map +1 -0
  307. package/dist/mcp/tools/io/peek.tool.d.ts +11 -0
  308. package/dist/mcp/tools/io/peek.tool.d.ts.map +1 -0
  309. package/dist/mcp/tools/io/peek.tool.js +74 -0
  310. package/dist/mcp/tools/io/peek.tool.js.map +1 -0
  311. package/dist/mcp/tools/io/read-multiple.tool.d.ts +9 -0
  312. package/dist/mcp/tools/io/read-multiple.tool.d.ts.map +1 -0
  313. package/dist/mcp/tools/io/read-multiple.tool.js +72 -0
  314. package/dist/mcp/tools/io/read-multiple.tool.js.map +1 -0
  315. package/dist/mcp/tools/io/read.tool.d.ts +13 -0
  316. package/dist/mcp/tools/io/read.tool.d.ts.map +1 -0
  317. package/dist/mcp/tools/io/read.tool.js +132 -0
  318. package/dist/mcp/tools/io/read.tool.js.map +1 -0
  319. package/dist/mcp/tools/io/rename.tool.d.ts +9 -0
  320. package/dist/mcp/tools/io/rename.tool.d.ts.map +1 -0
  321. package/dist/mcp/tools/io/rename.tool.js +101 -0
  322. package/dist/mcp/tools/io/rename.tool.js.map +1 -0
  323. package/dist/mcp/tools/io/replace-many.tool.d.ts +10 -0
  324. package/dist/mcp/tools/io/replace-many.tool.d.ts.map +1 -0
  325. package/dist/mcp/tools/io/replace-many.tool.js +114 -0
  326. package/dist/mcp/tools/io/replace-many.tool.js.map +1 -0
  327. package/dist/mcp/tools/io/replace-text.tool.d.ts +12 -0
  328. package/dist/mcp/tools/io/replace-text.tool.d.ts.map +1 -0
  329. package/dist/mcp/tools/io/replace-text.tool.js +213 -0
  330. package/dist/mcp/tools/io/replace-text.tool.js.map +1 -0
  331. package/dist/mcp/tools/io/write.tool.d.ts +10 -0
  332. package/dist/mcp/tools/io/write.tool.d.ts.map +1 -0
  333. package/dist/mcp/tools/io/write.tool.js +103 -0
  334. package/dist/mcp/tools/io/write.tool.js.map +1 -0
  335. package/dist/mcp/tools/labels/assign.tool.d.ts +16 -0
  336. package/dist/mcp/tools/labels/assign.tool.d.ts.map +1 -0
  337. package/dist/mcp/tools/labels/assign.tool.js +52 -0
  338. package/dist/mcp/tools/labels/assign.tool.js.map +1 -0
  339. package/dist/mcp/tools/labels/create.tool.d.ts +12 -0
  340. package/dist/mcp/tools/labels/create.tool.d.ts.map +1 -0
  341. package/dist/mcp/tools/labels/create.tool.js +51 -0
  342. package/dist/mcp/tools/labels/create.tool.js.map +1 -0
  343. package/dist/mcp/tools/labels/delete.tool.d.ts +9 -0
  344. package/dist/mcp/tools/labels/delete.tool.d.ts.map +1 -0
  345. package/dist/mcp/tools/labels/delete.tool.js +48 -0
  346. package/dist/mcp/tools/labels/delete.tool.js.map +1 -0
  347. package/dist/mcp/tools/labels/edit.tool.d.ts +13 -0
  348. package/dist/mcp/tools/labels/edit.tool.d.ts.map +1 -0
  349. package/dist/mcp/tools/labels/edit.tool.js +58 -0
  350. package/dist/mcp/tools/labels/edit.tool.js.map +1 -0
  351. package/dist/mcp/tools/labels/list.tool.d.ts +11 -0
  352. package/dist/mcp/tools/labels/list.tool.d.ts.map +1 -0
  353. package/dist/mcp/tools/labels/list.tool.js +47 -0
  354. package/dist/mcp/tools/labels/list.tool.js.map +1 -0
  355. package/dist/mcp/tools/labels/migrate.tool.d.ts +10 -0
  356. package/dist/mcp/tools/labels/migrate.tool.d.ts.map +1 -0
  357. package/dist/mcp/tools/labels/migrate.tool.js +50 -0
  358. package/dist/mcp/tools/labels/migrate.tool.js.map +1 -0
  359. package/dist/mcp/tools/labels/search.tool.d.ts +16 -0
  360. package/dist/mcp/tools/labels/search.tool.d.ts.map +1 -0
  361. package/dist/mcp/tools/labels/search.tool.js +55 -0
  362. package/dist/mcp/tools/labels/search.tool.js.map +1 -0
  363. package/dist/mcp/tools/labels/unassign.tool.d.ts +9 -0
  364. package/dist/mcp/tools/labels/unassign.tool.d.ts.map +1 -0
  365. package/dist/mcp/tools/labels/unassign.tool.js +49 -0
  366. package/dist/mcp/tools/labels/unassign.tool.js.map +1 -0
  367. package/dist/mcp/tools/search/find-by-name.tool.d.ts +8 -0
  368. package/dist/mcp/tools/search/find-by-name.tool.d.ts.map +1 -0
  369. package/dist/mcp/tools/search/find-by-name.tool.js +57 -0
  370. package/dist/mcp/tools/search/find-by-name.tool.js.map +1 -0
  371. package/dist/mcp/tools/search/find-relevant.tool.d.ts +9 -0
  372. package/dist/mcp/tools/search/find-relevant.tool.d.ts.map +1 -0
  373. package/dist/mcp/tools/search/find-relevant.tool.js +71 -0
  374. package/dist/mcp/tools/search/find-relevant.tool.js.map +1 -0
  375. package/dist/mcp/tools/search/scan.tool.d.ts +8 -0
  376. package/dist/mcp/tools/search/scan.tool.d.ts.map +1 -0
  377. package/dist/mcp/tools/search/scan.tool.js +103 -0
  378. package/dist/mcp/tools/search/scan.tool.js.map +1 -0
  379. package/dist/mcp/tools/search/search-elements.tool.d.ts +11 -0
  380. package/dist/mcp/tools/search/search-elements.tool.d.ts.map +1 -0
  381. package/dist/mcp/tools/search/search-elements.tool.js +71 -0
  382. package/dist/mcp/tools/search/search-elements.tool.js.map +1 -0
  383. package/dist/mcp/tools/search/search-in-files.tool.d.ts +14 -0
  384. package/dist/mcp/tools/search/search-in-files.tool.d.ts.map +1 -0
  385. package/dist/mcp/tools/search/search-in-files.tool.js +204 -0
  386. package/dist/mcp/tools/search/search-in-files.tool.js.map +1 -0
  387. package/dist/mcp/tools/search/search.tool.d.ts +25 -0
  388. package/dist/mcp/tools/search/search.tool.d.ts.map +1 -0
  389. package/dist/mcp/tools/search/search.tool.js +109 -0
  390. package/dist/mcp/tools/search/search.tool.js.map +1 -0
  391. package/dist/mcp/tools/session/audit.tool.d.ts +6 -0
  392. package/dist/mcp/tools/session/audit.tool.d.ts.map +1 -0
  393. package/dist/mcp/tools/session/audit.tool.js +64 -0
  394. package/dist/mcp/tools/session/audit.tool.js.map +1 -0
  395. package/dist/mcp/tools/session/close.tool.d.ts +11 -0
  396. package/dist/mcp/tools/session/close.tool.d.ts.map +1 -0
  397. package/dist/mcp/tools/session/close.tool.js +79 -0
  398. package/dist/mcp/tools/session/close.tool.js.map +1 -0
  399. package/dist/mcp/tools/session/execute-shell.tool.d.ts +11 -0
  400. package/dist/mcp/tools/session/execute-shell.tool.d.ts.map +1 -0
  401. package/dist/mcp/tools/session/execute-shell.tool.js +87 -0
  402. package/dist/mcp/tools/session/execute-shell.tool.js.map +1 -0
  403. package/dist/mcp/tools/session/help.tool.d.ts +8 -0
  404. package/dist/mcp/tools/session/help.tool.d.ts.map +1 -0
  405. package/dist/mcp/tools/session/help.tool.js +84 -0
  406. package/dist/mcp/tools/session/help.tool.js.map +1 -0
  407. package/dist/mcp/tools/session/list.tool.d.ts +9 -0
  408. package/dist/mcp/tools/session/list.tool.d.ts.map +1 -0
  409. package/dist/mcp/tools/session/list.tool.js +49 -0
  410. package/dist/mcp/tools/session/list.tool.js.map +1 -0
  411. package/dist/mcp/tools/session/next-session.tool.d.ts +8 -0
  412. package/dist/mcp/tools/session/next-session.tool.d.ts.map +1 -0
  413. package/dist/mcp/tools/session/next-session.tool.js +87 -0
  414. package/dist/mcp/tools/session/next-session.tool.js.map +1 -0
  415. package/dist/mcp/tools/session/orient.tool.d.ts +11 -0
  416. package/dist/mcp/tools/session/orient.tool.d.ts.map +1 -0
  417. package/dist/mcp/tools/session/orient.tool.js +239 -0
  418. package/dist/mcp/tools/session/orient.tool.js.map +1 -0
  419. package/dist/mcp/tools/session/read.tool.d.ts +8 -0
  420. package/dist/mcp/tools/session/read.tool.d.ts.map +1 -0
  421. package/dist/mcp/tools/session/read.tool.js +63 -0
  422. package/dist/mcp/tools/session/read.tool.js.map +1 -0
  423. package/dist/mcp/tools/session/reindex.tool.d.ts +6 -0
  424. package/dist/mcp/tools/session/reindex.tool.d.ts.map +1 -0
  425. package/dist/mcp/tools/session/reindex.tool.js +59 -0
  426. package/dist/mcp/tools/session/reindex.tool.js.map +1 -0
  427. package/dist/mcp/tools/session/start.tool.d.ts +8 -0
  428. package/dist/mcp/tools/session/start.tool.d.ts.map +1 -0
  429. package/dist/mcp/tools/session/start.tool.js +170 -0
  430. package/dist/mcp/tools/session/start.tool.js.map +1 -0
  431. package/dist/mcp/tools/session/stats.tool.d.ts +6 -0
  432. package/dist/mcp/tools/session/stats.tool.d.ts.map +1 -0
  433. package/dist/mcp/tools/session/stats.tool.js +46 -0
  434. package/dist/mcp/tools/session/stats.tool.js.map +1 -0
  435. package/dist/plugins/parser-typescript/index.d.ts +80 -0
  436. package/dist/plugins/parser-typescript/index.d.ts.map +1 -0
  437. package/dist/plugins/parser-typescript/index.js +467 -0
  438. package/dist/plugins/parser-typescript/index.js.map +1 -0
  439. package/dist/plugins/parser-vue/index.d.ts +20 -0
  440. package/dist/plugins/parser-vue/index.d.ts.map +1 -0
  441. package/dist/plugins/parser-vue/index.js +88 -0
  442. package/dist/plugins/parser-vue/index.js.map +1 -0
  443. package/dist/plugins/parser-vue/script-parser.d.ts +18 -0
  444. package/dist/plugins/parser-vue/script-parser.d.ts.map +1 -0
  445. package/dist/plugins/parser-vue/script-parser.js +100 -0
  446. package/dist/plugins/parser-vue/script-parser.js.map +1 -0
  447. package/dist/plugins/parser-vue/template-parser.d.ts +14 -0
  448. package/dist/plugins/parser-vue/template-parser.d.ts.map +1 -0
  449. package/dist/plugins/parser-vue/template-parser.js +95 -0
  450. package/dist/plugins/parser-vue/template-parser.js.map +1 -0
  451. package/dist/query/SymbolSearch.d.ts +56 -0
  452. package/dist/query/SymbolSearch.d.ts.map +1 -0
  453. package/dist/query/SymbolSearch.js +132 -0
  454. package/dist/query/SymbolSearch.js.map +1 -0
  455. package/dist/query/TextSearch.d.ts +47 -0
  456. package/dist/query/TextSearch.d.ts.map +1 -0
  457. package/dist/query/TextSearch.js +110 -0
  458. package/dist/query/TextSearch.js.map +1 -0
  459. package/dist/storage/NodeFsProvider.d.ts +148 -0
  460. package/dist/storage/NodeFsProvider.d.ts.map +1 -0
  461. package/dist/storage/NodeFsProvider.js +264 -0
  462. package/dist/storage/NodeFsProvider.js.map +1 -0
  463. package/dist/types/annotation.d.ts +79 -0
  464. package/dist/types/annotation.d.ts.map +1 -0
  465. package/dist/types/annotation.js +10 -0
  466. package/dist/types/annotation.js.map +1 -0
  467. package/dist/types/assist.d.ts +147 -0
  468. package/dist/types/assist.d.ts.map +1 -0
  469. package/dist/types/assist.js +12 -0
  470. package/dist/types/assist.js.map +1 -0
  471. package/dist/types/contracts/FileSystemProvider.d.ts +24 -0
  472. package/dist/types/contracts/FileSystemProvider.d.ts.map +1 -0
  473. package/dist/types/contracts/FileSystemProvider.js +9 -0
  474. package/dist/types/contracts/FileSystemProvider.js.map +1 -0
  475. package/dist/types/contracts/LanguageParser.d.ts +146 -0
  476. package/dist/types/contracts/LanguageParser.d.ts.map +1 -0
  477. package/dist/types/contracts/LanguageParser.js +43 -0
  478. package/dist/types/contracts/LanguageParser.js.map +1 -0
  479. package/dist/types/contracts/Plugin.d.ts +226 -0
  480. package/dist/types/contracts/Plugin.d.ts.map +1 -0
  481. package/dist/types/contracts/Plugin.js +21 -0
  482. package/dist/types/contracts/Plugin.js.map +1 -0
  483. package/dist/types/contracts/index.d.ts +10 -0
  484. package/dist/types/contracts/index.d.ts.map +1 -0
  485. package/dist/types/contracts/index.js +26 -0
  486. package/dist/types/contracts/index.js.map +1 -0
  487. package/dist/types/core.d.ts +170 -0
  488. package/dist/types/core.d.ts.map +1 -0
  489. package/dist/types/core.js +10 -0
  490. package/dist/types/core.js.map +1 -0
  491. package/dist/types/events.d.ts +29 -0
  492. package/dist/types/events.d.ts.map +1 -0
  493. package/dist/types/events.js +18 -0
  494. package/dist/types/events.js.map +1 -0
  495. package/dist/types/experience.d.ts +153 -0
  496. package/dist/types/experience.d.ts.map +1 -0
  497. package/dist/types/experience.js +9 -0
  498. package/dist/types/experience.js.map +1 -0
  499. package/dist/types/graph.d.ts +35 -0
  500. package/dist/types/graph.d.ts.map +1 -0
  501. package/dist/types/graph.js +8 -0
  502. package/dist/types/graph.js.map +1 -0
  503. package/dist/types/index.d.ts +17 -0
  504. package/dist/types/index.d.ts.map +1 -0
  505. package/dist/types/index.js +33 -0
  506. package/dist/types/index.js.map +1 -0
  507. package/dist/types/label.d.ts +150 -0
  508. package/dist/types/label.d.ts.map +1 -0
  509. package/dist/types/label.js +9 -0
  510. package/dist/types/label.js.map +1 -0
  511. package/dist/types/query.d.ts +104 -0
  512. package/dist/types/query.d.ts.map +1 -0
  513. package/dist/types/query.js +11 -0
  514. package/dist/types/query.js.map +1 -0
  515. package/dist/types/response.d.ts +133 -0
  516. package/dist/types/response.d.ts.map +1 -0
  517. package/dist/types/response.js +60 -0
  518. package/dist/types/response.js.map +1 -0
  519. package/dist/types/target.d.ts +68 -0
  520. package/dist/types/target.d.ts.map +1 -0
  521. package/dist/types/target.js +11 -0
  522. package/dist/types/target.js.map +1 -0
  523. package/dist/utils/version.d.ts +9 -0
  524. package/dist/utils/version.d.ts.map +1 -0
  525. package/dist/utils/version.js +30 -0
  526. package/dist/utils/version.js.map +1 -0
  527. package/package.json +53 -0
@@ -0,0 +1,316 @@
1
+ "use strict";
2
+ /**
3
+ * FileSystemGraph — The Foundation Layer
4
+ *
5
+ * Passive knowledge base for files, directories, symbols, and import dependencies.
6
+ * Pure in-memory graph operations — no I/O, no side effects.
7
+ *
8
+ * @codemap.domain.name Dependency Graph
9
+ * @codemap.usage Add new query methods for graph traversal (find related files, traverse dependencies)
10
+ * @codemap.usage Modify symbol or dependency storage structures
11
+ * @codemap.usage Implement new graph algorithms (shortest path, connected components, etc)
12
+ * @codemap.usage Add caching or indexing optimizations for queries
13
+ * @codemap.usage Fix bugs in dependency tracking or symbol lookups
14
+ * @codemap.policy This is a pure data structure. No file operations, no event emission.
15
+ * @codemap.policy All I/O happens in FileSystemIO (the gateway). Graph is read-only to plugins.
16
+ */
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.FileSystemGraph = void 0;
19
+ /**
20
+ * FileSystemGraph stores the complete project knowledge graph.
21
+ *
22
+ * Data structures:
23
+ * - files: Map<relativePath, FileEntry>
24
+ * - directories: Map<relativePath, DirEntry>
25
+ * - dependencies: Set<DependencyEdge> (import edges)
26
+ *
27
+ * Query methods:
28
+ * - getFile, getDirectory, getSymbol
29
+ * - findImporters, findImports (dependency traversal)
30
+ * - traverse (BFS/DFS graph traversal)
31
+ */
32
+ class FileSystemGraph {
33
+ files;
34
+ directories;
35
+ dependencies; // Stored as "from->to" strings for deduplication
36
+ /**
37
+ * Root path of the project this graph represents.
38
+ */
39
+ rootPath;
40
+ /**
41
+ * Timestamp of last full scan.
42
+ */
43
+ lastFullScan;
44
+ constructor(rootPath) {
45
+ this.rootPath = rootPath;
46
+ this.files = new Map();
47
+ this.directories = new Map();
48
+ this.dependencies = new Set();
49
+ this.lastFullScan = 0;
50
+ }
51
+ // ── File Operations ────────────────────────────────────────────────────────
52
+ /**
53
+ * Add or update a file in the graph.
54
+ */
55
+ addFile(file) {
56
+ this.files.set(file.relativePath, file);
57
+ }
58
+ /**
59
+ * Get a file by relative path.
60
+ */
61
+ getFile(relativePath) {
62
+ return this.files.get(relativePath);
63
+ }
64
+ /**
65
+ * Remove a file from the graph.
66
+ */
67
+ removeFile(relativePath) {
68
+ return this.files.delete(relativePath);
69
+ }
70
+ /**
71
+ * Get all files in the graph.
72
+ */
73
+ getAllFiles() {
74
+ return Array.from(this.files.values());
75
+ }
76
+ /**
77
+ * Get file count.
78
+ */
79
+ getFileCount() {
80
+ return this.files.size;
81
+ }
82
+ // ── Directory Operations ───────────────────────────────────────────────────
83
+ /**
84
+ * Add or update a directory in the graph.
85
+ */
86
+ addDirectory(dir) {
87
+ this.directories.set(dir.relativePath, dir);
88
+ }
89
+ /**
90
+ * Get a directory by relative path.
91
+ */
92
+ getDirectory(relativePath) {
93
+ return this.directories.get(relativePath);
94
+ }
95
+ /**
96
+ * Remove a directory from the graph.
97
+ */
98
+ removeDirectory(relativePath) {
99
+ return this.directories.delete(relativePath);
100
+ }
101
+ /**
102
+ * Get all directories in the graph.
103
+ */
104
+ getAllDirectories() {
105
+ return Array.from(this.directories.values());
106
+ }
107
+ /**
108
+ * Get directory count.
109
+ */
110
+ getDirectoryCount() {
111
+ return this.directories.size;
112
+ }
113
+ /**
114
+ * Get dependency count.
115
+ */
116
+ getDependencyCount() {
117
+ return this.dependencies.size;
118
+ }
119
+ // ── Symbol Operations ──────────────────────────────────────────────────────
120
+ /**
121
+ * Get a symbol by searching all files.
122
+ * Returns first match (symbols should be unique per file, not globally).
123
+ *
124
+ * @param symbolName - Name of the symbol to find
125
+ * @param kind - Optional: filter by symbol kind
126
+ */
127
+ getSymbol(symbolName, kind) {
128
+ for (const file of this.files.values()) {
129
+ if (!file.symbols)
130
+ continue;
131
+ for (const symbol of file.symbols) {
132
+ if (symbol.name === symbolName && (!kind || symbol.kind === kind)) {
133
+ return { file, symbol };
134
+ }
135
+ }
136
+ }
137
+ return undefined;
138
+ }
139
+ /**
140
+ * Find all symbols matching a predicate.
141
+ */
142
+ findSymbols(predicate) {
143
+ const results = [];
144
+ for (const file of this.files.values()) {
145
+ if (!file.symbols)
146
+ continue;
147
+ for (const symbol of file.symbols) {
148
+ if (predicate(symbol, file)) {
149
+ results.push({ file, symbol });
150
+ }
151
+ }
152
+ }
153
+ return results;
154
+ }
155
+ // ── Dependency Operations ──────────────────────────────────────────────────
156
+ /**
157
+ * Add a dependency edge (import relationship).
158
+ *
159
+ * @param from - Source file relativePath
160
+ * @param to - Imported file relativePath
161
+ */
162
+ addDependency(from, to) {
163
+ this.dependencies.add(`${from}->${to}`);
164
+ // Also update FileEntry.references and FileEntry.referencedBy
165
+ const fromFile = this.files.get(from);
166
+ const toFile = this.files.get(to);
167
+ if (fromFile && !fromFile.references.includes(to)) {
168
+ fromFile.references.push(to);
169
+ }
170
+ if (toFile && !toFile.referencedBy.includes(from)) {
171
+ toFile.referencedBy.push(from);
172
+ }
173
+ }
174
+ /**
175
+ * Remove a dependency edge.
176
+ */
177
+ removeDependency(from, to) {
178
+ const key = `${from}->${to}`;
179
+ const deleted = this.dependencies.delete(key);
180
+ if (deleted) {
181
+ // Also update FileEntry arrays
182
+ const fromFile = this.files.get(from);
183
+ const toFile = this.files.get(to);
184
+ if (fromFile) {
185
+ fromFile.references = fromFile.references.filter(r => r !== to);
186
+ }
187
+ if (toFile) {
188
+ toFile.referencedBy = toFile.referencedBy.filter(r => r !== from);
189
+ }
190
+ }
191
+ return deleted;
192
+ }
193
+ /**
194
+ * Find all files that import the given file.
195
+ *
196
+ * @param relativePath - File to find importers for
197
+ * @returns Array of files that import this file
198
+ */
199
+ findImporters(relativePath) {
200
+ const file = this.files.get(relativePath);
201
+ if (!file)
202
+ return [];
203
+ return file.referencedBy
204
+ .map(path => this.files.get(path))
205
+ .filter((f) => f !== undefined);
206
+ }
207
+ /**
208
+ * Find all files imported by the given file.
209
+ *
210
+ * @param relativePath - File to find imports for
211
+ * @returns Array of files imported by this file
212
+ */
213
+ findImports(relativePath) {
214
+ const file = this.files.get(relativePath);
215
+ if (!file)
216
+ return [];
217
+ return file.references
218
+ .map(path => this.files.get(path))
219
+ .filter((f) => f !== undefined);
220
+ }
221
+ /**
222
+ * Get related files (both importers and imports).
223
+ */
224
+ getRelated(relativePath) {
225
+ return {
226
+ references: this.findImports(relativePath),
227
+ referencedBy: this.findImporters(relativePath),
228
+ };
229
+ }
230
+ // ── Traversal ──────────────────────────────────────────────────────────────
231
+ /**
232
+ * Traverse the dependency graph starting from a file.
233
+ *
234
+ * @param startPath - Starting file relativePath
235
+ * @param direction - 'imports' (follow references) or 'importers' (follow referencedBy)
236
+ * @param maxDepth - Maximum depth to traverse (default: 3)
237
+ * @returns Array of files visited during traversal (BFS order)
238
+ */
239
+ traverse(startPath, direction, maxDepth = 3) {
240
+ const visited = new Set();
241
+ const result = [];
242
+ const queue = [{ path: startPath, depth: 0 }];
243
+ while (queue.length > 0) {
244
+ const { path, depth } = queue.shift();
245
+ if (visited.has(path) || depth > maxDepth)
246
+ continue;
247
+ const file = this.files.get(path);
248
+ if (!file)
249
+ continue;
250
+ visited.add(path);
251
+ result.push(file);
252
+ // Get next level based on direction
253
+ const nextPaths = direction === 'imports' ? file.references : file.referencedBy;
254
+ for (const nextPath of nextPaths) {
255
+ if (!visited.has(nextPath)) {
256
+ queue.push({ path: nextPath, depth: depth + 1 });
257
+ }
258
+ }
259
+ }
260
+ return result;
261
+ }
262
+ // ── Export / Import ────────────────────────────────────────────────────────
263
+ /**
264
+ * Export the entire graph as ProjectMapData (for persistence).
265
+ */
266
+ toJSON() {
267
+ const filesObj = {};
268
+ const dirsObj = {};
269
+ for (const [path, file] of this.files) {
270
+ filesObj[path] = file;
271
+ }
272
+ for (const [path, dir] of this.directories) {
273
+ dirsObj[path] = dir;
274
+ }
275
+ return {
276
+ rootPath: this.rootPath,
277
+ lastFullScan: this.lastFullScan,
278
+ files: filesObj,
279
+ directories: dirsObj,
280
+ };
281
+ }
282
+ /**
283
+ * Import graph data from ProjectMapData (load from persistence).
284
+ */
285
+ fromJSON(data) {
286
+ this.files.clear();
287
+ this.directories.clear();
288
+ this.dependencies.clear();
289
+ this.lastFullScan = data.lastFullScan;
290
+ // Load files
291
+ for (const [path, file] of Object.entries(data.files)) {
292
+ this.files.set(path, file);
293
+ }
294
+ // Load directories
295
+ for (const [path, dir] of Object.entries(data.directories)) {
296
+ this.directories.set(path, dir);
297
+ }
298
+ // Rebuild dependencies from FileEntry.references
299
+ for (const file of this.files.values()) {
300
+ for (const ref of file.references) {
301
+ this.dependencies.add(`${file.relativePath}->${ref}`);
302
+ }
303
+ }
304
+ }
305
+ /**
306
+ * Clear all data from the graph.
307
+ */
308
+ clear() {
309
+ this.files.clear();
310
+ this.directories.clear();
311
+ this.dependencies.clear();
312
+ this.lastFullScan = 0;
313
+ }
314
+ }
315
+ exports.FileSystemGraph = FileSystemGraph;
316
+ //# sourceMappingURL=FileSystemGraph.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileSystemGraph.js","sourceRoot":"","sources":["../../src/core/FileSystemGraph.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,222 @@
1
+ /**
2
+ * FileSystemIO — The Controlled Gateway
3
+ *
4
+ * All file operations in CodeMap flow through this gateway.
5
+ * Wraps FileSystemProvider and emits lifecycle events for plugins.
6
+ *
7
+ * NEW FEATURES:
8
+ * - Line range writes via LineRangeWriter
9
+ * - Target parsing with wildcards and line ranges
10
+ * - Annotation metadata via AnnotationStore
11
+ *
12
+ * This is where TimeWarp hooks into file:write:before to capture snapshots.
13
+ * Plugins CANNOT bypass this gateway — no direct FS access allowed.
14
+ *
15
+ * @codemap.domain.name File System Gateway
16
+ * @codemap.usage Add new file operation types (copy, move, chmod, etc)
17
+ * @codemap.usage Modify event emission logic for lifecycle hooks (file:write:before, file:write:after)
18
+ * @codemap.usage Integrate new features (line range operations, wildcards, safety guards)
19
+ * @codemap.usage Fix file operation bugs or add validation/safety checks
20
+ * @codemap.usage Change how FileSystemProvider is wrapped or called
21
+ * @codemap.policy This is the ONLY place in CodeMap that touches FileSystemProvider.
22
+ * @codemap.policy All plugins must use codemap.fs — no bypass, no history gaps.
23
+ * @codemap.warning Event handlers are async. await emit() before continuing.
24
+ */
25
+ import type { FileSystemProvider } from '../types/contracts/FileSystemProvider';
26
+ import type { EventHandler } from '../types/contracts/Plugin';
27
+ import type { CodeMapEvent } from '../types/events';
28
+ import type { ParsedTarget, LineRangeWriteResult } from '../types';
29
+ import { AnnotationStore } from './AnnotationStore';
30
+ import { WriteSafetyGuard } from './WriteSafetyGuard';
31
+ import type { SafeWriteResult } from './WriteSafetyGuard';
32
+ /**
33
+ * Write operation parameters.
34
+ */
35
+ interface WriteOptions {
36
+ /** If true, interpret content as line range replacement */
37
+ lineRange?: {
38
+ start: number;
39
+ end: number;
40
+ };
41
+ /** Emit events (default: true) */
42
+ emitEvents?: boolean;
43
+ /** Skip syntax validation (default: false) */
44
+ skipValidation?: boolean;
45
+ }
46
+ /**
47
+ * FileSystemIO wraps a storage provider and emits lifecycle events.
48
+ *
49
+ * Lifecycle flow:
50
+ * 1. Plugin registers handler via codemap.on('file:write:before', handler)
51
+ * 2. User calls codemap.fs.write(path, content)
52
+ * 3. FileSystemIO emits 'file:write:before' → handlers run (TimeWarp captures)
53
+ * 4. FileSystemIO calls provider.write(path, content)
54
+ * 5. FileSystemIO emits 'file:write:after' → handlers run (graph updates)
55
+ *
56
+ * Result: No writes can bypass history tracking.
57
+ */
58
+ export declare class FileSystemIO {
59
+ private provider;
60
+ private eventHandlers;
61
+ private targetParser;
62
+ private lineRangeWriter;
63
+ private annotationStore;
64
+ private safetyGuard;
65
+ private codemap;
66
+ constructor(provider: FileSystemProvider, codemapRoot?: string);
67
+ /**
68
+ * Set CodeMap reference for parser access.
69
+ * Called during CodeMap initialization.
70
+ *
71
+ * @param codemap - CodeMap instance
72
+ */
73
+ setCodeMap(codemap: any): void;
74
+ /**
75
+ * Register an event handler.
76
+ * Used internally by CodeMap to wire up plugin hooks.
77
+ */
78
+ on(event: CodeMapEvent, handler: EventHandler): void;
79
+ /**
80
+ * Emit an event to all registered handlers.
81
+ * Handlers run sequentially (await each before next).
82
+ */
83
+ private emit;
84
+ /**
85
+ * Parse a target string (supports wildcards and line ranges).
86
+ *
87
+ * @param target - Target string (e.g., "file.ts:10-20" or "src/*.vue")
88
+ * @returns Parsed target structure
89
+ */
90
+ parseTarget(target: string): ParsedTarget;
91
+ /**
92
+ * Resolve wildcards to concrete file paths.
93
+ *
94
+ * @param _pattern - Wildcard pattern (e.g., "src/components/*.vue")
95
+ * @returns Array of matching file paths
96
+ */
97
+ resolveWildcard(_pattern: string): Promise<string[]>;
98
+ /**
99
+ * Read file content.
100
+ * Supports line range extraction via target parsing.
101
+ *
102
+ * @param target - File path or "file.ts:10-20" for line range
103
+ * @returns File content (full or line range)
104
+ */
105
+ read(target: string): Promise<string>;
106
+ /**
107
+ * Check if file/directory exists.
108
+ * No lifecycle events — read is passive.
109
+ */
110
+ exists(path: string): Promise<boolean>;
111
+ /**
112
+ * Read directory contents.
113
+ * No lifecycle events — read is passive.
114
+ */
115
+ readdir(path: string): Promise<string[]>;
116
+ /**
117
+ * Get file/directory stats.
118
+ * No lifecycle events — read is passive.
119
+ */
120
+ stat(path: string): Promise<{
121
+ isDirectory: boolean;
122
+ size: number;
123
+ mtime: number;
124
+ }>;
125
+ /**
126
+ * Write file content.
127
+ * Supports line range replacement via target parsing.
128
+ *
129
+ * @param target - File path or "file.ts:10-20" for line range replacement
130
+ * @param content - Content to write
131
+ * @param options - Write options
132
+ * @returns Line range result if applicable, otherwise void
133
+ *
134
+ * @example
135
+ * // Full file write
136
+ * await fs.write("file.ts", "content")
137
+ *
138
+ * // Line range replacement
139
+ * await fs.write("file.ts:10-15", "new content")
140
+ * // → Replaces lines 10-15 with new content
141
+ */
142
+ write(target: string, content: string, options?: WriteOptions): Promise<void | LineRangeWriteResult>;
143
+ /**
144
+ * Append content to file.
145
+ *
146
+ * @param path - File path
147
+ * @param content - Content to append
148
+ * @param options - Write options (including skipValidation)
149
+ */
150
+ append(path: string, content: string, options?: WriteOptions): Promise<void>;
151
+ /**
152
+ * Remove file.
153
+ * Emits: file:delete
154
+ *
155
+ * TimeWarp can hook into this for deletion tracking.
156
+ */
157
+ remove(path: string): Promise<void>;
158
+ /**
159
+ * Create directory.
160
+ * No lifecycle events — directory creation is structural.
161
+ */
162
+ mkdir(path: string): Promise<void>;
163
+ /**
164
+ * Remove directory.
165
+ * No lifecycle events for now — can add if needed.
166
+ */
167
+ rmdir(path: string, options?: {
168
+ recursive?: boolean;
169
+ }): Promise<void>;
170
+ /**
171
+ * Rename/move file.
172
+ * Emits: file:rename
173
+ *
174
+ * TimeWarp can hook into this for history continuity across renames.
175
+ */
176
+ rename(oldPath: string, newPath: string): Promise<void>;
177
+ /**
178
+ * Get annotation store for direct access.
179
+ * Used by higher-level operations that manage annotations.
180
+ */
181
+ getAnnotationStore(): AnnotationStore;
182
+ /**
183
+ * Attach annotations to a file (convenience method).
184
+ *
185
+ * @param target - File path
186
+ * @param annotations - Array of annotation strings
187
+ * @returns Attachment result
188
+ */
189
+ attachAnnotations(target: string, annotations: string[]): Promise<import("../types").AttachAnnotationsResult>;
190
+ /**
191
+ * Get annotations for a file (convenience method).
192
+ *
193
+ * @param target - File path
194
+ * @returns Annotation set (inline + meta)
195
+ */
196
+ getAnnotations(target: string): Promise<import("../types").AnnotationSet>;
197
+ /**
198
+ * Verify a replace operation before executing.
199
+ * Returns context around matches for user confirmation.
200
+ *
201
+ * @param path - File path
202
+ * @param oldString - String to find
203
+ * @returns Verification result
204
+ */
205
+ verifyReplace(path: string, oldString: string): Promise<import("./WriteSafetyGuard").ReplaceVerification>;
206
+ /**
207
+ * Safely replace text in file.
208
+ * Uses all write safety guarantees.
209
+ *
210
+ * @param path - File path
211
+ * @param oldString - Text to find (must be unique)
212
+ * @param newString - Replacement text
213
+ * @returns Write result
214
+ */
215
+ safeReplace(path: string, oldString: string, newString: string): Promise<SafeWriteResult>;
216
+ /**
217
+ * Get the safety guard instance for advanced operations.
218
+ */
219
+ getSafetyGuard(): WriteSafetyGuard;
220
+ }
221
+ export {};
222
+ //# sourceMappingURL=FileSystemIO.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileSystemIO.d.ts","sourceRoot":"","sources":["../../src/core/FileSystemIO.ts"],"names":[],"mappings":"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"}