@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,170 @@
1
+ /**
2
+ * ExperienceStore - Persistence layer for experience data.
3
+ *
4
+ * Stores experience events, search journeys, anti-results, and usage metadata
5
+ * in JSONL format for easy append and query operations.
6
+ *
7
+ * Storage structure:
8
+ * .codemap/experience/
9
+ * ├── events/
10
+ * │ └── sess_<sessionId>.jsonl # Experience events per session
11
+ * ├── search-journeys.jsonl # Search journey records
12
+ * ├── anti-results.jsonl # Anti-result entries
13
+ * └── usage-metadata.jsonl # Usage metadata per file
14
+ *
15
+ * @example
16
+ * ```typescript
17
+ * const store = new ExperienceStore(fsProvider, '.codemap/experience');
18
+ *
19
+ * // Append experience event
20
+ * await store.appendEvent({
21
+ * id: 'evt_123',
22
+ * tool: 'codemap_read',
23
+ * operation: 'content',
24
+ * target: 'file.ts',
25
+ * outcome: 'success',
26
+ * sessionId: 'sess_456',
27
+ * timestamp: new Date().toISOString()
28
+ * });
29
+ *
30
+ * // Record search journey
31
+ * await store.recordJourney(journey);
32
+ *
33
+ * // Get usage metadata
34
+ * const metadata = await store.getUsageMetadata('file.ts');
35
+ * ```
36
+ */
37
+ import type { ExperienceEvent, SearchJourney, AntiResultEntry, UsageMetadata } from '../types';
38
+ /**
39
+ * Minimal file system provider for experience storage.
40
+ */
41
+ export interface FileSystemProvider {
42
+ read(path: string): Promise<string>;
43
+ write(path: string, content: string): Promise<void>;
44
+ exists(path: string): Promise<boolean>;
45
+ mkdir(path: string): Promise<void>;
46
+ }
47
+ export declare class ExperienceStore {
48
+ private storage;
49
+ private storageRoot;
50
+ private currentSessionId;
51
+ constructor(storage: FileSystemProvider, storageRoot?: string);
52
+ /**
53
+ * Set current session ID.
54
+ * Called at session start to scope events to this session.
55
+ */
56
+ setSessionId(sessionId: string): void;
57
+ /**
58
+ * Get current session ID.
59
+ */
60
+ getSessionId(): string;
61
+ /**
62
+ * Append an experience event.
63
+ * Events are stored in session-specific JSONL files.
64
+ *
65
+ * @param event - Experience event to append
66
+ */
67
+ appendEvent(event: ExperienceEvent): Promise<void>;
68
+ /**
69
+ * Get events for a specific session.
70
+ *
71
+ * @param sessionId - Session ID
72
+ * @returns Array of events
73
+ */
74
+ getSessionEvents(sessionId: string): Promise<ExperienceEvent[]>;
75
+ /**
76
+ * Get events for the current session.
77
+ */
78
+ getCurrentSessionEvents(): Promise<ExperienceEvent[]>;
79
+ /**
80
+ * Record a search journey.
81
+ *
82
+ * @param journey - Search journey to record
83
+ */
84
+ recordJourney(journey: SearchJourney): Promise<void>;
85
+ /**
86
+ * Get all search journeys.
87
+ *
88
+ * @returns Array of journeys
89
+ */
90
+ getAllJourneys(): Promise<SearchJourney[]>;
91
+ /**
92
+ * Get search journeys for a specific file.
93
+ *
94
+ * @param filePath - Target file path
95
+ * @returns Array of journeys that ended with this file
96
+ */
97
+ getJourneysForFile(filePath: string): Promise<SearchJourney[]>;
98
+ /**
99
+ * Record an anti-result entry.
100
+ *
101
+ * @param entry - Anti-result entry
102
+ */
103
+ recordAntiResult(entry: AntiResultEntry): Promise<void>;
104
+ /**
105
+ * Get anti-results for a specific file.
106
+ *
107
+ * @param filePath - The incorrect file path
108
+ * @returns Array of anti-result entries where this file was wrong
109
+ */
110
+ getAntiResults(filePath: string): Promise<AntiResultEntry[]>;
111
+ /**
112
+ * Set usage metadata for a file.
113
+ *
114
+ * @param metadata - Usage metadata
115
+ */
116
+ setUsageMetadata(metadata: UsageMetadata): Promise<void>;
117
+ /**
118
+ * Get usage metadata for a specific file.
119
+ *
120
+ * @param target - File path
121
+ * @returns Usage metadata or null if not found
122
+ */
123
+ getUsageMetadata(target: string): Promise<UsageMetadata | null>;
124
+ /**
125
+ * Get all usage metadata.
126
+ *
127
+ * @returns Array of all usage metadata entries
128
+ */
129
+ getAllUsageMetadata(): Promise<UsageMetadata[]>;
130
+ /**
131
+ * Add usage phrases to existing metadata.
132
+ *
133
+ * @param target - File path
134
+ * @param usages - New usage phrases to add
135
+ * @returns Updated metadata
136
+ */
137
+ addUsages(target: string, usages: string[]): Promise<UsageMetadata>;
138
+ /**
139
+ * Ensure storage directories exist.
140
+ */
141
+ private ensureDirectories;
142
+ /**
143
+ * Read JSONL file and parse to array of objects.
144
+ *
145
+ * @param path - File path
146
+ * @returns Array of parsed objects
147
+ */
148
+ private readJsonl;
149
+ /**
150
+ * Write array of objects to JSONL file.
151
+ *
152
+ * @param path - File path
153
+ * @param data - Array of objects to write
154
+ */
155
+ private writeJsonl;
156
+ /**
157
+ * Append content to a file (create if doesn't exist).
158
+ *
159
+ * @param path - File path
160
+ * @param content - Content to append
161
+ */
162
+ private appendToFile;
163
+ /**
164
+ * Generate a unique session ID.
165
+ *
166
+ * @returns Session ID string
167
+ */
168
+ private generateSessionId;
169
+ }
170
+ //# sourceMappingURL=ExperienceStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExperienceStore.d.ts","sourceRoot":"","sources":["../../src/core/ExperienceStore.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,aAAa,EACb,eAAe,EACf,aAAa,EACd,MAAM,UAAU,CAAC;AAElB;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACpC,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACvC,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpC;AAED,qBAAa,eAAe;IAKxB,OAAO,CAAC,OAAO;IAJjB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,gBAAgB,CAAS;gBAGvB,OAAO,EAAE,kBAAkB,EACnC,WAAW,GAAE,MAA8B;IAM7C;;;OAGG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAIrC;;OAEG;IACH,YAAY,IAAI,MAAM;IAMtB;;;;;OAKG;IACG,WAAW,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAiBxD;;;;;OAKG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAKrE;;OAEG;IACG,uBAAuB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAM3D;;;;OAIG;IACG,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ1D;;;;OAIG;IACG,cAAc,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAKhD;;;;;OAKG;IACG,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IASpE;;;;OAIG;IACG,gBAAgB,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ7D;;;;;OAKG;IACG,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAQlE;;;;OAIG;IACG,gBAAgB,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB9D;;;;;OAKG;IACG,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAMrE;;;;OAIG;IACG,mBAAmB,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAKrD;;;;;;OAMG;IACG,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IA4BzE;;OAEG;YACW,iBAAiB;IAO/B;;;;;OAKG;YACW,SAAS;IAgBvB;;;;;OAKG;YACW,UAAU;IAMxB;;;;;OAKG;YACW,YAAY;IAW1B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;CAK1B"}
@@ -0,0 +1,292 @@
1
+ "use strict";
2
+ /**
3
+ * ExperienceStore - Persistence layer for experience data.
4
+ *
5
+ * Stores experience events, search journeys, anti-results, and usage metadata
6
+ * in JSONL format for easy append and query operations.
7
+ *
8
+ * Storage structure:
9
+ * .codemap/experience/
10
+ * ├── events/
11
+ * │ └── sess_<sessionId>.jsonl # Experience events per session
12
+ * ├── search-journeys.jsonl # Search journey records
13
+ * ├── anti-results.jsonl # Anti-result entries
14
+ * └── usage-metadata.jsonl # Usage metadata per file
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * const store = new ExperienceStore(fsProvider, '.codemap/experience');
19
+ *
20
+ * // Append experience event
21
+ * await store.appendEvent({
22
+ * id: 'evt_123',
23
+ * tool: 'codemap_read',
24
+ * operation: 'content',
25
+ * target: 'file.ts',
26
+ * outcome: 'success',
27
+ * sessionId: 'sess_456',
28
+ * timestamp: new Date().toISOString()
29
+ * });
30
+ *
31
+ * // Record search journey
32
+ * await store.recordJourney(journey);
33
+ *
34
+ * // Get usage metadata
35
+ * const metadata = await store.getUsageMetadata('file.ts');
36
+ * ```
37
+ */
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.ExperienceStore = void 0;
40
+ class ExperienceStore {
41
+ storage;
42
+ storageRoot;
43
+ currentSessionId;
44
+ constructor(storage, storageRoot = '.codemap/experience') {
45
+ this.storage = storage;
46
+ this.storageRoot = storageRoot;
47
+ this.currentSessionId = this.generateSessionId();
48
+ }
49
+ /**
50
+ * Set current session ID.
51
+ * Called at session start to scope events to this session.
52
+ */
53
+ setSessionId(sessionId) {
54
+ this.currentSessionId = sessionId;
55
+ }
56
+ /**
57
+ * Get current session ID.
58
+ */
59
+ getSessionId() {
60
+ return this.currentSessionId;
61
+ }
62
+ // ── Event Operations ───────────────────────────────────────────────────────
63
+ /**
64
+ * Append an experience event.
65
+ * Events are stored in session-specific JSONL files.
66
+ *
67
+ * @param event - Experience event to append
68
+ */
69
+ async appendEvent(event) {
70
+ await this.ensureDirectories();
71
+ const eventsDir = `${this.storageRoot}/events`;
72
+ const sessionFile = `${eventsDir}/sess_${event.sessionId}.jsonl`;
73
+ // Ensure events directory exists
74
+ const eventsDirExists = await this.storage.exists(eventsDir);
75
+ if (!eventsDirExists) {
76
+ await this.storage.mkdir(eventsDir);
77
+ }
78
+ // Append event as JSONL
79
+ const line = JSON.stringify(event) + '\n';
80
+ await this.appendToFile(sessionFile, line);
81
+ }
82
+ /**
83
+ * Get events for a specific session.
84
+ *
85
+ * @param sessionId - Session ID
86
+ * @returns Array of events
87
+ */
88
+ async getSessionEvents(sessionId) {
89
+ const sessionFile = `${this.storageRoot}/events/sess_${sessionId}.jsonl`;
90
+ return this.readJsonl(sessionFile);
91
+ }
92
+ /**
93
+ * Get events for the current session.
94
+ */
95
+ async getCurrentSessionEvents() {
96
+ return this.getSessionEvents(this.currentSessionId);
97
+ }
98
+ // ── Search Journey Operations ──────────────────────────────────────────────
99
+ /**
100
+ * Record a search journey.
101
+ *
102
+ * @param journey - Search journey to record
103
+ */
104
+ async recordJourney(journey) {
105
+ await this.ensureDirectories();
106
+ const journeyFile = `${this.storageRoot}/search-journeys.jsonl`;
107
+ const line = JSON.stringify(journey) + '\n';
108
+ await this.appendToFile(journeyFile, line);
109
+ }
110
+ /**
111
+ * Get all search journeys.
112
+ *
113
+ * @returns Array of journeys
114
+ */
115
+ async getAllJourneys() {
116
+ const journeyFile = `${this.storageRoot}/search-journeys.jsonl`;
117
+ return this.readJsonl(journeyFile);
118
+ }
119
+ /**
120
+ * Get search journeys for a specific file.
121
+ *
122
+ * @param filePath - Target file path
123
+ * @returns Array of journeys that ended with this file
124
+ */
125
+ async getJourneysForFile(filePath) {
126
+ const allJourneys = await this.getAllJourneys();
127
+ return allJourneys.filter(j => j.finalTarget?.path === filePath && j.finalTarget.success);
128
+ }
129
+ // ── Anti-Result Operations ─────────────────────────────────────────────────
130
+ /**
131
+ * Record an anti-result entry.
132
+ *
133
+ * @param entry - Anti-result entry
134
+ */
135
+ async recordAntiResult(entry) {
136
+ await this.ensureDirectories();
137
+ const antiResultFile = `${this.storageRoot}/anti-results.jsonl`;
138
+ const line = JSON.stringify(entry) + '\n';
139
+ await this.appendToFile(antiResultFile, line);
140
+ }
141
+ /**
142
+ * Get anti-results for a specific file.
143
+ *
144
+ * @param filePath - The incorrect file path
145
+ * @returns Array of anti-result entries where this file was wrong
146
+ */
147
+ async getAntiResults(filePath) {
148
+ const antiResultFile = `${this.storageRoot}/anti-results.jsonl`;
149
+ const allEntries = await this.readJsonl(antiResultFile);
150
+ return allEntries.filter(e => e.incorrectFile === filePath);
151
+ }
152
+ // ── Usage Metadata Operations ──────────────────────────────────────────────
153
+ /**
154
+ * Set usage metadata for a file.
155
+ *
156
+ * @param metadata - Usage metadata
157
+ */
158
+ async setUsageMetadata(metadata) {
159
+ await this.ensureDirectories();
160
+ const metadataFile = `${this.storageRoot}/usage-metadata.jsonl`;
161
+ // Read existing metadata
162
+ const allMetadata = await this.readJsonl(metadataFile);
163
+ // Remove existing entry for this target (if any)
164
+ const filtered = allMetadata.filter(m => m.target !== metadata.target);
165
+ // Add new entry
166
+ filtered.push(metadata);
167
+ // Write back
168
+ await this.writeJsonl(metadataFile, filtered);
169
+ }
170
+ /**
171
+ * Get usage metadata for a specific file.
172
+ *
173
+ * @param target - File path
174
+ * @returns Usage metadata or null if not found
175
+ */
176
+ async getUsageMetadata(target) {
177
+ const metadataFile = `${this.storageRoot}/usage-metadata.jsonl`;
178
+ const allMetadata = await this.readJsonl(metadataFile);
179
+ return allMetadata.find(m => m.target === target) || null;
180
+ }
181
+ /**
182
+ * Get all usage metadata.
183
+ *
184
+ * @returns Array of all usage metadata entries
185
+ */
186
+ async getAllUsageMetadata() {
187
+ const metadataFile = `${this.storageRoot}/usage-metadata.jsonl`;
188
+ return this.readJsonl(metadataFile);
189
+ }
190
+ /**
191
+ * Add usage phrases to existing metadata.
192
+ *
193
+ * @param target - File path
194
+ * @param usages - New usage phrases to add
195
+ * @returns Updated metadata
196
+ */
197
+ async addUsages(target, usages) {
198
+ const existing = await this.getUsageMetadata(target);
199
+ if (existing) {
200
+ // Merge with existing
201
+ const combined = [...new Set([...existing.usages, ...usages])];
202
+ const updated = {
203
+ ...existing,
204
+ usages: combined,
205
+ updatedAt: new Date().toISOString()
206
+ };
207
+ await this.setUsageMetadata(updated);
208
+ return updated;
209
+ }
210
+ else {
211
+ // Create new
212
+ const metadata = {
213
+ target,
214
+ usages,
215
+ registeredAt: new Date().toISOString(),
216
+ updatedAt: new Date().toISOString()
217
+ };
218
+ await this.setUsageMetadata(metadata);
219
+ return metadata;
220
+ }
221
+ }
222
+ // ── Utilities ──────────────────────────────────────────────────────────────
223
+ /**
224
+ * Ensure storage directories exist.
225
+ */
226
+ async ensureDirectories() {
227
+ const exists = await this.storage.exists(this.storageRoot);
228
+ if (!exists) {
229
+ await this.storage.mkdir(this.storageRoot);
230
+ }
231
+ }
232
+ /**
233
+ * Read JSONL file and parse to array of objects.
234
+ *
235
+ * @param path - File path
236
+ * @returns Array of parsed objects
237
+ */
238
+ async readJsonl(path) {
239
+ const exists = await this.storage.exists(path);
240
+ if (!exists) {
241
+ return [];
242
+ }
243
+ try {
244
+ const content = await this.storage.read(path);
245
+ const lines = content.split('\n').filter(line => line.trim());
246
+ return lines.map(line => JSON.parse(line));
247
+ }
248
+ catch (error) {
249
+ console.error(`Failed to read JSONL file ${path}:`, error);
250
+ return [];
251
+ }
252
+ }
253
+ /**
254
+ * Write array of objects to JSONL file.
255
+ *
256
+ * @param path - File path
257
+ * @param data - Array of objects to write
258
+ */
259
+ async writeJsonl(path, data) {
260
+ const lines = data.map(item => JSON.stringify(item));
261
+ const content = lines.join('\n') + '\n';
262
+ await this.storage.write(path, content);
263
+ }
264
+ /**
265
+ * Append content to a file (create if doesn't exist).
266
+ *
267
+ * @param path - File path
268
+ * @param content - Content to append
269
+ */
270
+ async appendToFile(path, content) {
271
+ const exists = await this.storage.exists(path);
272
+ if (exists) {
273
+ const existing = await this.storage.read(path);
274
+ await this.storage.write(path, existing + content);
275
+ }
276
+ else {
277
+ await this.storage.write(path, content);
278
+ }
279
+ }
280
+ /**
281
+ * Generate a unique session ID.
282
+ *
283
+ * @returns Session ID string
284
+ */
285
+ generateSessionId() {
286
+ const timestamp = Date.now();
287
+ const random = Math.random().toString(36).substring(2, 9);
288
+ return `sess_${timestamp}_${random}`;
289
+ }
290
+ }
291
+ exports.ExperienceStore = ExperienceStore;
292
+ //# sourceMappingURL=ExperienceStore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExperienceStore.js","sourceRoot":"","sources":["../../src/core/ExperienceStore.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * ExperienceTracker - Records all CodeMap operations for self-improving discovery.
3
+ *
4
+ * Subscribes to FileSystemIO events and records:
5
+ * - Operation outcomes (success/failure)
6
+ * - Search journeys (query → read → write paths)
7
+ * - Anti-results (dead ends, abandoned paths)
8
+ *
9
+ * This data powers AssistMap's experience-weighted scoring.
10
+ *
11
+ * @example
12
+ * ```typescript
13
+ * const tracker = new ExperienceTracker(store, eventBus);
14
+ *
15
+ * // Tracker automatically subscribes to events:
16
+ * // - file:write:before/after → Records writes
17
+ * // - file:read → Tracks reads in current journey
18
+ * // - search:executed → Records search steps
19
+ *
20
+ * // Manual journey tracking
21
+ * tracker.startJourney('find TaskCard component');
22
+ * tracker.recordSearch('assist', 'TaskCard', ['TaskCard.vue', 'TaskList.vue']);
23
+ * tracker.recordRead('TaskCard.vue');
24
+ * await tracker.recordSuccessfulWrite('TaskCard.vue', 'edit');
25
+ * // → Completes journey, records anti-results, updates patterns
26
+ * ```
27
+ */
28
+ import type { ExperienceOutcome } from '../types';
29
+ import { ExperienceStore } from './ExperienceStore';
30
+ import { EventBus } from './EventBus';
31
+ export declare class ExperienceTracker {
32
+ private store;
33
+ private eventBus;
34
+ private currentJourney;
35
+ private operationContexts;
36
+ private lastAssistQuery;
37
+ constructor(store: ExperienceStore, eventBus: EventBus, enabled?: boolean);
38
+ /**
39
+ * Wire up event handlers to track all operations.
40
+ */
41
+ private wireEventHandlers;
42
+ /**
43
+ * Record operation start.
44
+ *
45
+ * @param tool - Tool name (e.g., 'codemap_read')
46
+ * @param operation - Operation name (e.g., 'content')
47
+ * @param target - Target file/directory
48
+ */
49
+ recordOperationStart(tool: string, operation: string, target?: string): void;
50
+ /**
51
+ * Record operation completion.
52
+ *
53
+ * @param tool - Tool name
54
+ * @param operation - Operation name
55
+ * @param target - Target file/directory
56
+ * @param outcome - Operation outcome
57
+ */
58
+ recordOperationComplete(tool: string, operation: string, target: string | undefined, outcome: ExperienceOutcome): Promise<void>;
59
+ /**
60
+ * Start a new search journey.
61
+ * Called when user initiates a search or assist operation.
62
+ *
63
+ * @param initialQuery - The query that started the journey
64
+ */
65
+ startJourney(initialQuery: string): void;
66
+ /**
67
+ * Record a search step in the current journey.
68
+ *
69
+ * @param operation - Search operation type
70
+ * @param query - Search query
71
+ * @param results - Results returned
72
+ */
73
+ recordSearch(operation: string, query: string, results: string[]): void;
74
+ /**
75
+ * Record that user read a file (from search results).
76
+ *
77
+ * @param filePath - File path that was read
78
+ */
79
+ recordRead(filePath: string): void;
80
+ /**
81
+ * Record successful write - completes the journey.
82
+ *
83
+ * @param filePath - File that was successfully written
84
+ * @param operation - Write operation type
85
+ */
86
+ recordSuccessfulWrite(filePath: string, operation: string): Promise<void>;
87
+ /**
88
+ * Extract anti-results from the current journey.
89
+ *
90
+ * @returns Array of anti-result entries
91
+ */
92
+ private extractAntiResults;
93
+ /**
94
+ * Generate a unique event ID.
95
+ */
96
+ private generateEventId;
97
+ /**
98
+ * Generate a unique journey ID.
99
+ */
100
+ private generateJourneyId;
101
+ /**
102
+ * Get the experience store.
103
+ */
104
+ getStore(): ExperienceStore;
105
+ /**
106
+ * Set the last assist query (used for attribution).
107
+ */
108
+ setLastAssistQuery(query: string): void;
109
+ }
110
+ //# sourceMappingURL=ExperienceTracker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExperienceTracker.d.ts","sourceRoot":"","sources":["../../src/core/ExperienceTracker.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAEV,iBAAiB,EAIlB,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAYtC,qBAAa,iBAAiB;IAM1B,OAAO,CAAC,KAAK;IACb,OAAO,CAAC,QAAQ;IANlB,OAAO,CAAC,cAAc,CAA8B;IACpD,OAAO,CAAC,iBAAiB,CAAgC;IACzD,OAAO,CAAC,eAAe,CAAuB;gBAGpC,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,QAAQ,EAC1B,OAAO,GAAE,OAAc;IASzB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAgCzB;;;;;;OAMG;IACH,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI;IAW5E;;;;;;;OAOG;IACG,uBAAuB,CAC3B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,IAAI,CAAC;IAwChB;;;;;OAKG;IACH,YAAY,CAAC,YAAY,EAAE,MAAM,GAAG,IAAI;IAWxC;;;;;;OAMG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,IAAI;IAkBvE;;;;OAIG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAuBlC;;;;;OAKG;IACG,qBAAqB,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA4B/E;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IA2C1B;;OAEG;IACH,OAAO,CAAC,eAAe;IAMvB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAMzB;;OAEG;IACH,QAAQ,IAAI,eAAe;IAI3B;;OAEG;IACH,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;CAGxC"}