@nxuss/lemma 1.38.0 → 1.39.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (271) hide show
  1. package/README.md +3 -4
  2. package/bin/brain-ingest.js +68 -31
  3. package/bin/init.js +25 -28
  4. package/dashboard/dist/assets/index-DNTQXLER.css +1 -0
  5. package/dashboard/dist/assets/index-DzL_Zu3m.js +452 -0
  6. package/dashboard/dist/index.html +2 -2
  7. package/dist/cjs/cli/gitHooks.d.ts +9 -2
  8. package/dist/cjs/cli/gitHooks.d.ts.map +1 -1
  9. package/dist/cjs/cli/gitHooks.js +31 -4
  10. package/dist/cjs/cli/gitHooks.js.map +1 -1
  11. package/dist/cjs/cli/lemma-proxy.d.ts.map +1 -1
  12. package/dist/cjs/cli/lemma-proxy.js +21 -1
  13. package/dist/cjs/cli/lemma-proxy.js.map +1 -1
  14. package/dist/cjs/infra/analyzers/index.d.ts +0 -2
  15. package/dist/cjs/infra/analyzers/index.d.ts.map +1 -1
  16. package/dist/cjs/infra/analyzers/index.js +1 -6
  17. package/dist/cjs/infra/analyzers/index.js.map +1 -1
  18. package/dist/cjs/infra/cli.d.ts +4 -0
  19. package/dist/cjs/infra/cli.d.ts.map +1 -1
  20. package/dist/cjs/infra/cli.js +6 -199
  21. package/dist/cjs/infra/cli.js.map +1 -1
  22. package/dist/cjs/infra/index.d.ts +1 -3
  23. package/dist/cjs/infra/index.d.ts.map +1 -1
  24. package/dist/cjs/infra/index.js +1 -16
  25. package/dist/cjs/infra/index.js.map +1 -1
  26. package/dist/cjs/infra/mcp-tools.d.ts.map +1 -1
  27. package/dist/cjs/infra/mcp-tools.js +8 -453
  28. package/dist/cjs/infra/mcp-tools.js.map +1 -1
  29. package/dist/cjs/infra/types.d.ts +0 -101
  30. package/dist/cjs/infra/types.d.ts.map +1 -1
  31. package/dist/cjs/infra/types.js +2 -1
  32. package/dist/cjs/infra/types.js.map +1 -1
  33. package/dist/cjs/mcp/prompts.d.ts +1 -1
  34. package/dist/cjs/mcp/prompts.d.ts.map +1 -1
  35. package/dist/cjs/mcp/prompts.js +8 -23
  36. package/dist/cjs/mcp/prompts.js.map +1 -1
  37. package/dist/cjs/mcp/tool-profiles.d.ts +8 -3
  38. package/dist/cjs/mcp/tool-profiles.d.ts.map +1 -1
  39. package/dist/cjs/mcp/tool-profiles.js +25 -54
  40. package/dist/cjs/mcp/tool-profiles.js.map +1 -1
  41. package/dist/cjs/mcp/tools/memory.d.ts +8 -0
  42. package/dist/cjs/mcp/tools/memory.d.ts.map +1 -1
  43. package/dist/cjs/mcp/tools/memory.js +154 -125
  44. package/dist/cjs/mcp/tools/memory.js.map +1 -1
  45. package/dist/cjs/mcp/tools.d.ts.map +1 -1
  46. package/dist/cjs/mcp/tools.js +11 -6
  47. package/dist/cjs/mcp/tools.js.map +1 -1
  48. package/dist/cjs/mcp/workspaceShared.d.ts.map +1 -1
  49. package/dist/cjs/mcp/workspaceShared.js +8 -4
  50. package/dist/cjs/mcp/workspaceShared.js.map +1 -1
  51. package/dist/cjs/proxy/ProjectRegistry.d.ts +20 -0
  52. package/dist/cjs/proxy/ProjectRegistry.d.ts.map +1 -1
  53. package/dist/cjs/proxy/ProjectRegistry.js +46 -4
  54. package/dist/cjs/proxy/ProjectRegistry.js.map +1 -1
  55. package/dist/cjs/subconscious/HostRecall.d.ts +26 -2
  56. package/dist/cjs/subconscious/HostRecall.d.ts.map +1 -1
  57. package/dist/cjs/subconscious/HostRecall.js +101 -36
  58. package/dist/cjs/subconscious/HostRecall.js.map +1 -1
  59. package/dist/cjs/subconscious/NarrowEvidence.d.ts +47 -0
  60. package/dist/cjs/subconscious/NarrowEvidence.d.ts.map +1 -0
  61. package/dist/cjs/subconscious/NarrowEvidence.js +252 -0
  62. package/dist/cjs/subconscious/NarrowEvidence.js.map +1 -0
  63. package/dist/cjs/subconscious/TheBrainV2.d.ts +37 -0
  64. package/dist/cjs/subconscious/TheBrainV2.d.ts.map +1 -1
  65. package/dist/cjs/subconscious/TheBrainV2.js +147 -15
  66. package/dist/cjs/subconscious/TheBrainV2.js.map +1 -1
  67. package/dist/cjs/subconscious/freshness/LocalFsResolver.d.ts.map +1 -1
  68. package/dist/cjs/subconscious/freshness/LocalFsResolver.js +17 -0
  69. package/dist/cjs/subconscious/freshness/LocalFsResolver.js.map +1 -1
  70. package/dist/cjs/subconscious/recallDigest.d.ts +8 -0
  71. package/dist/cjs/subconscious/recallDigest.d.ts.map +1 -1
  72. package/dist/cjs/subconscious/recallDigest.js +13 -1
  73. package/dist/cjs/subconscious/recallDigest.js.map +1 -1
  74. package/dist/cjs/utils/OtherLanguageSymbols.d.ts +31 -0
  75. package/dist/cjs/utils/OtherLanguageSymbols.d.ts.map +1 -0
  76. package/dist/cjs/utils/OtherLanguageSymbols.js +283 -0
  77. package/dist/cjs/utils/OtherLanguageSymbols.js.map +1 -0
  78. package/dist/cjs/utils/SavingsLedger.d.ts +27 -0
  79. package/dist/cjs/utils/SavingsLedger.d.ts.map +1 -1
  80. package/dist/cjs/utils/SavingsLedger.js +51 -0
  81. package/dist/cjs/utils/SavingsLedger.js.map +1 -1
  82. package/dist/cjs/utils/StoreDraft.d.ts +12 -0
  83. package/dist/cjs/utils/StoreDraft.d.ts.map +1 -1
  84. package/dist/cjs/utils/StoreDraft.js +53 -1
  85. package/dist/cjs/utils/StoreDraft.js.map +1 -1
  86. package/dist/cjs/utils/SymbolSurgicalContext.d.ts +2 -0
  87. package/dist/cjs/utils/SymbolSurgicalContext.d.ts.map +1 -1
  88. package/dist/cjs/utils/SymbolSurgicalContext.js +1 -0
  89. package/dist/cjs/utils/SymbolSurgicalContext.js.map +1 -1
  90. package/dist/cjs/utils/reportSavings.d.ts +17 -4
  91. package/dist/cjs/utils/reportSavings.d.ts.map +1 -1
  92. package/dist/cjs/utils/reportSavings.js +67 -22
  93. package/dist/cjs/utils/reportSavings.js.map +1 -1
  94. package/dist/esm/cli/gitHooks.d.ts +9 -2
  95. package/dist/esm/cli/gitHooks.d.ts.map +1 -1
  96. package/dist/esm/cli/gitHooks.js +31 -4
  97. package/dist/esm/cli/gitHooks.js.map +1 -1
  98. package/dist/esm/cli/lemma-proxy.d.ts.map +1 -1
  99. package/dist/esm/cli/lemma-proxy.js +21 -1
  100. package/dist/esm/cli/lemma-proxy.js.map +1 -1
  101. package/dist/esm/infra/analyzers/index.d.ts +0 -2
  102. package/dist/esm/infra/analyzers/index.d.ts.map +1 -1
  103. package/dist/esm/infra/analyzers/index.js +0 -2
  104. package/dist/esm/infra/analyzers/index.js.map +1 -1
  105. package/dist/esm/infra/cli.d.ts +4 -0
  106. package/dist/esm/infra/cli.d.ts.map +1 -1
  107. package/dist/esm/infra/cli.js +6 -199
  108. package/dist/esm/infra/cli.js.map +1 -1
  109. package/dist/esm/infra/index.d.ts +1 -3
  110. package/dist/esm/infra/index.d.ts.map +1 -1
  111. package/dist/esm/infra/index.js +1 -3
  112. package/dist/esm/infra/index.js.map +1 -1
  113. package/dist/esm/infra/mcp-tools.d.ts.map +1 -1
  114. package/dist/esm/infra/mcp-tools.js +9 -454
  115. package/dist/esm/infra/mcp-tools.js.map +1 -1
  116. package/dist/esm/infra/types.d.ts +0 -101
  117. package/dist/esm/infra/types.d.ts.map +1 -1
  118. package/dist/esm/infra/types.js +2 -1
  119. package/dist/esm/infra/types.js.map +1 -1
  120. package/dist/esm/mcp/prompts.d.ts +1 -1
  121. package/dist/esm/mcp/prompts.d.ts.map +1 -1
  122. package/dist/esm/mcp/prompts.js +8 -23
  123. package/dist/esm/mcp/prompts.js.map +1 -1
  124. package/dist/esm/mcp/tool-profiles.d.ts +8 -3
  125. package/dist/esm/mcp/tool-profiles.d.ts.map +1 -1
  126. package/dist/esm/mcp/tool-profiles.js +25 -54
  127. package/dist/esm/mcp/tool-profiles.js.map +1 -1
  128. package/dist/esm/mcp/tools/memory.d.ts +8 -0
  129. package/dist/esm/mcp/tools/memory.d.ts.map +1 -1
  130. package/dist/esm/mcp/tools/memory.js +156 -128
  131. package/dist/esm/mcp/tools/memory.js.map +1 -1
  132. package/dist/esm/mcp/tools.d.ts.map +1 -1
  133. package/dist/esm/mcp/tools.js +12 -7
  134. package/dist/esm/mcp/tools.js.map +1 -1
  135. package/dist/esm/mcp/workspaceShared.d.ts.map +1 -1
  136. package/dist/esm/mcp/workspaceShared.js +9 -5
  137. package/dist/esm/mcp/workspaceShared.js.map +1 -1
  138. package/dist/esm/proxy/ProjectRegistry.d.ts +20 -0
  139. package/dist/esm/proxy/ProjectRegistry.d.ts.map +1 -1
  140. package/dist/esm/proxy/ProjectRegistry.js +45 -3
  141. package/dist/esm/proxy/ProjectRegistry.js.map +1 -1
  142. package/dist/esm/subconscious/HostRecall.d.ts +26 -2
  143. package/dist/esm/subconscious/HostRecall.d.ts.map +1 -1
  144. package/dist/esm/subconscious/HostRecall.js +99 -37
  145. package/dist/esm/subconscious/HostRecall.js.map +1 -1
  146. package/dist/esm/subconscious/NarrowEvidence.d.ts +47 -0
  147. package/dist/esm/subconscious/NarrowEvidence.d.ts.map +1 -0
  148. package/dist/esm/subconscious/NarrowEvidence.js +211 -0
  149. package/dist/esm/subconscious/NarrowEvidence.js.map +1 -0
  150. package/dist/esm/subconscious/TheBrainV2.d.ts +37 -0
  151. package/dist/esm/subconscious/TheBrainV2.d.ts.map +1 -1
  152. package/dist/esm/subconscious/TheBrainV2.js +146 -14
  153. package/dist/esm/subconscious/TheBrainV2.js.map +1 -1
  154. package/dist/esm/subconscious/freshness/LocalFsResolver.d.ts.map +1 -1
  155. package/dist/esm/subconscious/freshness/LocalFsResolver.js +17 -0
  156. package/dist/esm/subconscious/freshness/LocalFsResolver.js.map +1 -1
  157. package/dist/esm/subconscious/recallDigest.d.ts +8 -0
  158. package/dist/esm/subconscious/recallDigest.d.ts.map +1 -1
  159. package/dist/esm/subconscious/recallDigest.js +12 -1
  160. package/dist/esm/subconscious/recallDigest.js.map +1 -1
  161. package/dist/esm/utils/OtherLanguageSymbols.d.ts +31 -0
  162. package/dist/esm/utils/OtherLanguageSymbols.d.ts.map +1 -0
  163. package/dist/esm/utils/OtherLanguageSymbols.js +275 -0
  164. package/dist/esm/utils/OtherLanguageSymbols.js.map +1 -0
  165. package/dist/esm/utils/SavingsLedger.d.ts +27 -0
  166. package/dist/esm/utils/SavingsLedger.d.ts.map +1 -1
  167. package/dist/esm/utils/SavingsLedger.js +51 -0
  168. package/dist/esm/utils/SavingsLedger.js.map +1 -1
  169. package/dist/esm/utils/StoreDraft.d.ts +12 -0
  170. package/dist/esm/utils/StoreDraft.d.ts.map +1 -1
  171. package/dist/esm/utils/StoreDraft.js +52 -1
  172. package/dist/esm/utils/StoreDraft.js.map +1 -1
  173. package/dist/esm/utils/SymbolSurgicalContext.d.ts +2 -0
  174. package/dist/esm/utils/SymbolSurgicalContext.d.ts.map +1 -1
  175. package/dist/esm/utils/SymbolSurgicalContext.js +1 -1
  176. package/dist/esm/utils/SymbolSurgicalContext.js.map +1 -1
  177. package/dist/esm/utils/reportSavings.d.ts +17 -4
  178. package/dist/esm/utils/reportSavings.d.ts.map +1 -1
  179. package/dist/esm/utils/reportSavings.js +65 -22
  180. package/dist/esm/utils/reportSavings.js.map +1 -1
  181. package/package.json +2 -1
  182. package/dashboard/dist/assets/index-CLXWgzTm.css +0 -1
  183. package/dashboard/dist/assets/index-CoMIMxyC.js +0 -451
  184. package/dist/cjs/infra/analyzers/DriftDetector.d.ts +0 -4
  185. package/dist/cjs/infra/analyzers/DriftDetector.d.ts.map +0 -1
  186. package/dist/cjs/infra/analyzers/DriftDetector.js +0 -88
  187. package/dist/cjs/infra/analyzers/DriftDetector.js.map +0 -1
  188. package/dist/cjs/infra/analyzers/InfraAnalyzer.d.ts +0 -3
  189. package/dist/cjs/infra/analyzers/InfraAnalyzer.d.ts.map +0 -1
  190. package/dist/cjs/infra/analyzers/InfraAnalyzer.js +0 -73
  191. package/dist/cjs/infra/analyzers/InfraAnalyzer.js.map +0 -1
  192. package/dist/cjs/infra/config.d.ts +0 -17
  193. package/dist/cjs/infra/config.d.ts.map +0 -1
  194. package/dist/cjs/infra/config.js +0 -111
  195. package/dist/cjs/infra/config.js.map +0 -1
  196. package/dist/cjs/infra/errorCause.d.ts +0 -36
  197. package/dist/cjs/infra/errorCause.d.ts.map +0 -1
  198. package/dist/cjs/infra/errorCause.js +0 -143
  199. package/dist/cjs/infra/errorCause.js.map +0 -1
  200. package/dist/cjs/infra/providers/InfraProvider.d.ts +0 -9
  201. package/dist/cjs/infra/providers/InfraProvider.d.ts.map +0 -1
  202. package/dist/cjs/infra/providers/InfraProvider.js +0 -3
  203. package/dist/cjs/infra/providers/InfraProvider.js.map +0 -1
  204. package/dist/cjs/infra/providers/JenkinsProvider.d.ts +0 -16
  205. package/dist/cjs/infra/providers/JenkinsProvider.d.ts.map +0 -1
  206. package/dist/cjs/infra/providers/JenkinsProvider.js +0 -193
  207. package/dist/cjs/infra/providers/JenkinsProvider.js.map +0 -1
  208. package/dist/cjs/infra/providers/OKDProvider.d.ts +0 -24
  209. package/dist/cjs/infra/providers/OKDProvider.d.ts.map +0 -1
  210. package/dist/cjs/infra/providers/OKDProvider.js +0 -296
  211. package/dist/cjs/infra/providers/OKDProvider.js.map +0 -1
  212. package/dist/cjs/infra/providers/TerraformProvider.d.ts +0 -17
  213. package/dist/cjs/infra/providers/TerraformProvider.d.ts.map +0 -1
  214. package/dist/cjs/infra/providers/TerraformProvider.js +0 -111
  215. package/dist/cjs/infra/providers/TerraformProvider.js.map +0 -1
  216. package/dist/cjs/infra/providers/index.d.ts +0 -9
  217. package/dist/cjs/infra/providers/index.d.ts.map +0 -1
  218. package/dist/cjs/infra/providers/index.js +0 -34
  219. package/dist/cjs/infra/providers/index.js.map +0 -1
  220. package/dist/cjs/infra/templates/jenkins/index.d.ts +0 -15
  221. package/dist/cjs/infra/templates/jenkins/index.d.ts.map +0 -1
  222. package/dist/cjs/infra/templates/jenkins/index.js +0 -128
  223. package/dist/cjs/infra/templates/jenkins/index.js.map +0 -1
  224. package/dist/cjs/infra/templates/okd/index.d.ts +0 -31
  225. package/dist/cjs/infra/templates/okd/index.d.ts.map +0 -1
  226. package/dist/cjs/infra/templates/okd/index.js +0 -149
  227. package/dist/cjs/infra/templates/okd/index.js.map +0 -1
  228. package/dist/esm/infra/analyzers/DriftDetector.d.ts +0 -4
  229. package/dist/esm/infra/analyzers/DriftDetector.d.ts.map +0 -1
  230. package/dist/esm/infra/analyzers/DriftDetector.js +0 -84
  231. package/dist/esm/infra/analyzers/DriftDetector.js.map +0 -1
  232. package/dist/esm/infra/analyzers/InfraAnalyzer.d.ts +0 -3
  233. package/dist/esm/infra/analyzers/InfraAnalyzer.d.ts.map +0 -1
  234. package/dist/esm/infra/analyzers/InfraAnalyzer.js +0 -70
  235. package/dist/esm/infra/analyzers/InfraAnalyzer.js.map +0 -1
  236. package/dist/esm/infra/config.d.ts +0 -17
  237. package/dist/esm/infra/config.d.ts.map +0 -1
  238. package/dist/esm/infra/config.js +0 -101
  239. package/dist/esm/infra/config.js.map +0 -1
  240. package/dist/esm/infra/errorCause.d.ts +0 -36
  241. package/dist/esm/infra/errorCause.d.ts.map +0 -1
  242. package/dist/esm/infra/errorCause.js +0 -138
  243. package/dist/esm/infra/errorCause.js.map +0 -1
  244. package/dist/esm/infra/providers/InfraProvider.d.ts +0 -9
  245. package/dist/esm/infra/providers/InfraProvider.d.ts.map +0 -1
  246. package/dist/esm/infra/providers/InfraProvider.js +0 -2
  247. package/dist/esm/infra/providers/InfraProvider.js.map +0 -1
  248. package/dist/esm/infra/providers/JenkinsProvider.d.ts +0 -16
  249. package/dist/esm/infra/providers/JenkinsProvider.d.ts.map +0 -1
  250. package/dist/esm/infra/providers/JenkinsProvider.js +0 -186
  251. package/dist/esm/infra/providers/JenkinsProvider.js.map +0 -1
  252. package/dist/esm/infra/providers/OKDProvider.d.ts +0 -24
  253. package/dist/esm/infra/providers/OKDProvider.d.ts.map +0 -1
  254. package/dist/esm/infra/providers/OKDProvider.js +0 -292
  255. package/dist/esm/infra/providers/OKDProvider.js.map +0 -1
  256. package/dist/esm/infra/providers/TerraformProvider.d.ts +0 -17
  257. package/dist/esm/infra/providers/TerraformProvider.d.ts.map +0 -1
  258. package/dist/esm/infra/providers/TerraformProvider.js +0 -107
  259. package/dist/esm/infra/providers/TerraformProvider.js.map +0 -1
  260. package/dist/esm/infra/providers/index.d.ts +0 -9
  261. package/dist/esm/infra/providers/index.d.ts.map +0 -1
  262. package/dist/esm/infra/providers/index.js +0 -27
  263. package/dist/esm/infra/providers/index.js.map +0 -1
  264. package/dist/esm/infra/templates/jenkins/index.d.ts +0 -15
  265. package/dist/esm/infra/templates/jenkins/index.d.ts.map +0 -1
  266. package/dist/esm/infra/templates/jenkins/index.js +0 -124
  267. package/dist/esm/infra/templates/jenkins/index.js.map +0 -1
  268. package/dist/esm/infra/templates/okd/index.d.ts +0 -31
  269. package/dist/esm/infra/templates/okd/index.d.ts.map +0 -1
  270. package/dist/esm/infra/templates/okd/index.js +0 -142
  271. package/dist/esm/infra/templates/okd/index.js.map +0 -1
@@ -0,0 +1,47 @@
1
+ /**
2
+ * NarrowEvidence — track the code a memory talks about, not the whole file it lives in.
3
+ *
4
+ * A memory anchored to a whole file goes stale on any edit anywhere in that file. On Lemma's
5
+ * own Brain that was 29 of 38 memories, most of them pointing at hub files (lemma-proxy.ts,
6
+ * init.js, tools.ts) that change daily — so STALE stopped meaning anything and an agent could
7
+ * no longer tell a memory whose subject changed from one whose file merely got longer. The
8
+ * Brain already tracks symbols precisely; callers almost never pass them. A memory usually
9
+ * names what it is about (`stripComments`, `safeResolvePath`, `TheBrainV2.search`), so those
10
+ * names are read out of its text and tracked instead of the file.
11
+ *
12
+ * Two uses:
13
+ * - narrowEvidence: at store/update time, swap a code file for the symbols the text names.
14
+ * - narrowStaleEntry: for a memory already stale on a whole file, prove from git that the
15
+ * named symbols are unchanged since it was stored, and only then re-point it at them.
16
+ */
17
+ import type { BrainEntry, SymbolRef } from './TheBrainV2.js';
18
+ /**
19
+ * Names in prose that look like code: camelCase, PascalCase with a second capital,
20
+ * snake_case, `Class.member`, or anything in backticks. A plain word ("search", "store") is
21
+ * left out even when a method has that name — prose uses it in its ordinary sense.
22
+ */
23
+ export declare function codeIdentifiers(text: string): string[];
24
+ export interface NarrowResult {
25
+ filePaths: string[];
26
+ symbols: SymbolRef[];
27
+ /** Files swapped for symbols, as "file → a, b". Empty when nothing was narrowed. */
28
+ narrowed: string[];
29
+ }
30
+ /**
31
+ * Swap each code file for the symbols `text` names in it. A file the text names nothing in
32
+ * (or that isn't code, or can't be read) stays tracked whole — narrowing only ever replaces
33
+ * a file with something the memory explicitly points at.
34
+ */
35
+ export declare function narrowEvidence(filePaths: string[], text: string, root?: string): NarrowResult;
36
+ /**
37
+ * For a memory stale on whole files: the narrower evidence it can be re-pointed at, or null.
38
+ *
39
+ * Only returned when it is provable that what the memory talks about did not change. For each
40
+ * tracked file that changed, the content the memory was anchored to is recovered from the
41
+ * commit it was stored on — and accepted only if it hashes to exactly the stored hash (an
42
+ * uncommitted edit at store time would make the commit the wrong baseline). Every symbol the
43
+ * memory names in that file must then be textually identical then and now. A file that is
44
+ * unchanged stays tracked whole; anything unprovable leaves the memory stale.
45
+ */
46
+ export declare function narrowStaleEntry(entry: Pick<BrainEntry, 'query' | 'response' | 'fileHashes' | 'symbolHashes' | 'claims' | 'gitCommit'>, root: string): NarrowResult | null;
47
+ //# sourceMappingURL=NarrowEvidence.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NarrowEvidence.d.ts","sourceRoot":"","sources":["../../../src/subconscious/NarrowEvidence.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAOH,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAQ1D;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAUtD;AAqDD,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,oFAAoF;IACpF,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,MAAsB,GAAG,YAAY,CAqB5G;AAkCD;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC9B,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,OAAO,GAAG,UAAU,GAAG,YAAY,GAAG,cAAc,GAAG,QAAQ,GAAG,WAAW,CAAC,EACtG,IAAI,EAAE,MAAM,GACX,YAAY,GAAG,IAAI,CAqCrB"}
@@ -0,0 +1,211 @@
1
+ /**
2
+ * NarrowEvidence — track the code a memory talks about, not the whole file it lives in.
3
+ *
4
+ * A memory anchored to a whole file goes stale on any edit anywhere in that file. On Lemma's
5
+ * own Brain that was 29 of 38 memories, most of them pointing at hub files (lemma-proxy.ts,
6
+ * init.js, tools.ts) that change daily — so STALE stopped meaning anything and an agent could
7
+ * no longer tell a memory whose subject changed from one whose file merely got longer. The
8
+ * Brain already tracks symbols precisely; callers almost never pass them. A memory usually
9
+ * names what it is about (`stripComments`, `safeResolvePath`, `TheBrainV2.search`), so those
10
+ * names are read out of its text and tracked instead of the file.
11
+ *
12
+ * Two uses:
13
+ * - narrowEvidence: at store/update time, swap a code file for the symbols the text names.
14
+ * - narrowStaleEntry: for a memory already stale on a whole file, prove from git that the
15
+ * named symbols are unchanged since it was stored, and only then re-point it at them.
16
+ */
17
+ import fs from 'fs';
18
+ import path from 'path';
19
+ import crypto from 'crypto';
20
+ import { execFileSync } from 'child_process';
21
+ import * as ts from 'typescript';
22
+ import { findOtherLanguageSymbol, supportsOtherLanguage } from '../utils/OtherLanguageSymbols.js';
23
+ const CODE_EXT = /\.(ts|tsx|js|jsx|mjs|cjs|mts|cts)$/i;
24
+ /** A symbol bigger than this share of its file is the file (a class wrapping everything). */
25
+ const MAX_SYMBOL_SHARE = 0.4;
26
+ const MAX_SYMBOLS_PER_FILE = 8;
27
+ /**
28
+ * Names in prose that look like code: camelCase, PascalCase with a second capital,
29
+ * snake_case, `Class.member`, or anything in backticks. A plain word ("search", "store") is
30
+ * left out even when a method has that name — prose uses it in its ordinary sense.
31
+ */
32
+ export function codeIdentifiers(text) {
33
+ const out = new Set();
34
+ for (const m of text.matchAll(/`([A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*)?)(?:\(\))?`/g))
35
+ out.add(m[1]);
36
+ for (const m of text.matchAll(/(?<![\w$.])([A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*)?)(?![\w$])/g)) {
37
+ const id = m[1];
38
+ if (id.length < 4)
39
+ continue;
40
+ const codeLike = id.includes('.') || id.includes('_') || /[a-z][A-Z]/.test(id) || /^[A-Z][a-z0-9]+[A-Z]/.test(id);
41
+ if (codeLike)
42
+ out.add(id);
43
+ }
44
+ return [...out];
45
+ }
46
+ function parse(fileName, content) {
47
+ return ts.createSourceFile(fileName, content, ts.ScriptTarget.Latest, true);
48
+ }
49
+ function declName(node) {
50
+ if ((ts.isFunctionDeclaration(node) || ts.isClassDeclaration(node) || ts.isInterfaceDeclaration(node) ||
51
+ ts.isTypeAliasDeclaration(node) || ts.isEnumDeclaration(node)) &&
52
+ node.name) {
53
+ return [node.name.text];
54
+ }
55
+ if (ts.isVariableStatement(node)) {
56
+ return node.declarationList.declarations.flatMap((d) => (ts.isIdentifier(d.name) ? [d.name.text] : []));
57
+ }
58
+ return [];
59
+ }
60
+ /**
61
+ * A declaration at the top of the file, or `Class.member`. Deliberately not the recursive
62
+ * lookup get_symbol_surgical_context uses: that one also finds locals and object properties
63
+ * (`filePath`, `loopId`), which prose names all the time and which are not what a memory is
64
+ * about. For these names both lookups land on the same node, so the hashes agree.
65
+ */
66
+ function findDeclaration(sf, name) {
67
+ const [owner, member] = name.split('.');
68
+ const top = sf.statements.find((st) => declName(st).includes(owner));
69
+ if (!top)
70
+ return null;
71
+ if (!member)
72
+ return top;
73
+ if (!ts.isClassDeclaration(top))
74
+ return null;
75
+ return top.members.find((m) => m.name && ts.isIdentifier(m.name) && m.name.text === member) ?? null;
76
+ }
77
+ /** Text of each named symbol found in `content`, skipping ones as big as the file. */
78
+ function symbolTexts(fileName, content, names) {
79
+ const other = supportsOtherLanguage(fileName);
80
+ const sf = other ? null : parse(fileName, content);
81
+ const found = new Map();
82
+ for (const name of names) {
83
+ const text = other ? findOtherLanguageSymbol(fileName, content, name) : (() => {
84
+ const node = findDeclaration(sf, name);
85
+ return node ? node.getText(sf) : null;
86
+ })();
87
+ if (text === null)
88
+ continue;
89
+ if (text.length > content.length * MAX_SYMBOL_SHARE)
90
+ continue;
91
+ found.set(name, text);
92
+ if (found.size >= MAX_SYMBOLS_PER_FILE)
93
+ break;
94
+ }
95
+ return found;
96
+ }
97
+ /**
98
+ * Swap each code file for the symbols `text` names in it. A file the text names nothing in
99
+ * (or that isn't code, or can't be read) stays tracked whole — narrowing only ever replaces
100
+ * a file with something the memory explicitly points at.
101
+ */
102
+ export function narrowEvidence(filePaths, text, root = process.cwd()) {
103
+ const ids = codeIdentifiers(text);
104
+ const result = { filePaths: [], symbols: [], narrowed: [] };
105
+ for (const fp of filePaths) {
106
+ const abs = path.resolve(root, fp);
107
+ let found = new Map();
108
+ if (ids.length > 0 && (CODE_EXT.test(abs) || supportsOtherLanguage(abs))) {
109
+ try {
110
+ found = symbolTexts(abs, fs.readFileSync(abs, 'utf8'), ids);
111
+ }
112
+ catch {
113
+ // Unreadable: keep the file, whose hash will say MISSING honestly.
114
+ }
115
+ }
116
+ if (found.size === 0) {
117
+ result.filePaths.push(fp);
118
+ continue;
119
+ }
120
+ for (const name of found.keys())
121
+ result.symbols.push({ filePath: fp, symbolName: name });
122
+ result.narrowed.push(`${fp} → ${[...found.keys()].join(', ')}`);
123
+ }
124
+ return result;
125
+ }
126
+ function git(root, args) {
127
+ try {
128
+ return execFileSync('git', ['-C', root, ...args], { encoding: 'utf8', stdio: ['ignore', 'pipe', 'ignore'], maxBuffer: 32 * 1024 * 1024 });
129
+ }
130
+ catch {
131
+ return null;
132
+ }
133
+ }
134
+ const sha256 = (s) => crypto.createHash('sha256').update(s).digest('hex');
135
+ /** Commits after the store commit searched for the anchored content. */
136
+ const MAX_BASELINE_COMMITS = 20;
137
+ /**
138
+ * The file as the memory was anchored to it. Usually that is the store commit, but a memory is
139
+ * often stored right after a fix and before it is committed — then the anchored content is in
140
+ * a later commit (the fix itself). Accepted only on an exact hash match either way.
141
+ */
142
+ function baselineContent(top, commit, rel, storedHash) {
143
+ const at = git(top, ['show', `${commit}:${rel}`]);
144
+ if (at !== null && sha256(at) === storedHash)
145
+ return at;
146
+ const later = (git(top, ['log', '--reverse', '--format=%H', `${commit}..HEAD`, '--', rel]) || '')
147
+ .split('\n')
148
+ .filter(Boolean)
149
+ .slice(0, MAX_BASELINE_COMMITS);
150
+ for (const c of later) {
151
+ const content = git(top, ['show', `${c}:${rel}`]);
152
+ if (content !== null && sha256(content) === storedHash)
153
+ return content;
154
+ }
155
+ return null;
156
+ }
157
+ /**
158
+ * For a memory stale on whole files: the narrower evidence it can be re-pointed at, or null.
159
+ *
160
+ * Only returned when it is provable that what the memory talks about did not change. For each
161
+ * tracked file that changed, the content the memory was anchored to is recovered from the
162
+ * commit it was stored on — and accepted only if it hashes to exactly the stored hash (an
163
+ * uncommitted edit at store time would make the commit the wrong baseline). Every symbol the
164
+ * memory names in that file must then be textually identical then and now. A file that is
165
+ * unchanged stays tracked whole; anything unprovable leaves the memory stale.
166
+ */
167
+ export function narrowStaleEntry(entry, root) {
168
+ if (!entry.fileHashes || !entry.gitCommit || (entry.claims && entry.claims.length > 0))
169
+ return null;
170
+ const top = git(root, ['rev-parse', '--show-toplevel'])?.trim();
171
+ if (!top)
172
+ return null;
173
+ const ids = codeIdentifiers(`${entry.query}\n${entry.response}`);
174
+ const rel = (abs) => path.relative(root, abs);
175
+ const result = { filePaths: [], symbols: [], narrowed: [] };
176
+ for (const [abs, storedHash] of Object.entries(entry.fileHashes)) {
177
+ let now;
178
+ try {
179
+ now = fs.readFileSync(abs, 'utf8');
180
+ }
181
+ catch {
182
+ return null;
183
+ }
184
+ if (sha256(now) === storedHash) {
185
+ result.filePaths.push(rel(abs));
186
+ continue;
187
+ }
188
+ if (!(CODE_EXT.test(abs) || supportsOtherLanguage(abs)) || ids.length === 0)
189
+ return null;
190
+ const then = baselineContent(top, entry.gitCommit, path.relative(top, abs), storedHash);
191
+ if (then === null)
192
+ return null;
193
+ const before = symbolTexts(abs, then, ids);
194
+ if (before.size === 0)
195
+ return null;
196
+ const after = symbolTexts(abs, now, [...before.keys()]);
197
+ for (const [name, text] of before)
198
+ if (after.get(name) !== text)
199
+ return null;
200
+ for (const name of before.keys())
201
+ result.symbols.push({ filePath: rel(abs), symbolName: name });
202
+ result.narrowed.push(`${rel(abs)} → ${[...before.keys()].join(', ')}`);
203
+ }
204
+ // Symbols it already tracked are kept as they are.
205
+ for (const key of Object.keys(entry.symbolHashes || {})) {
206
+ const sep = key.lastIndexOf('::');
207
+ result.symbols.push({ filePath: rel(key.substring(0, sep)), symbolName: key.substring(sep + 2) });
208
+ }
209
+ return result.narrowed.length > 0 ? result : null;
210
+ }
211
+ //# sourceMappingURL=NarrowEvidence.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NarrowEvidence.js","sourceRoot":"","sources":["../../../src/subconscious/NarrowEvidence.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,8 @@ export interface BrainEntry {
16
16
  id: string;
17
17
  query: string;
18
18
  response: string;
19
+ /** TOKENIZER_VERSION its terms were computed with; older entries are re-tokenized on load. */
20
+ tokv?: number;
19
21
  /**
20
22
  * Derived view of `termFreq` keys. Kept in memory for fast iteration but NOT persisted:
21
23
  * it was byte-for-byte identical to Object.keys(termFreq) and cost 38% of the entry file.
@@ -281,6 +283,13 @@ export interface BrainSearchResult {
281
283
  outcome?: 'confirmed' | 'failed';
282
284
  claims?: ClaimFreshness[];
283
285
  domain?: string;
286
+ /**
287
+ * Where the memory comes from relative to the project that searched. Absent means this
288
+ * project's own. 'unscoped': stored before memories carried a project, so it could belong to
289
+ * any. 'other-project': only returned when the caller asked for allProjects.
290
+ */
291
+ scope?: 'unscoped' | 'other-project';
292
+ ownerProject?: string;
284
293
  /** Lifetime tokens this memory's reuse has saved. Absent means never reused. */
285
294
  tokensSaved?: number;
286
295
  /** Times this memory was the top hit of a counted search. Absent means never. */
@@ -323,6 +332,13 @@ export interface BrainSearchOptions {
323
332
  * where another project's answer is not a match but a false duplicate.
324
333
  */
325
334
  strictProject?: boolean;
335
+ /**
336
+ * Search every project's memories, not only the caller's. Off by default: the Brain is one
337
+ * file shared by every project on the machine, and another project's memory is not just
338
+ * irrelevant but possibly confidential (a client's code, a private decision) — it must be
339
+ * asked for, and results from it are labelled as such.
340
+ */
341
+ allProjects?: boolean;
326
342
  /** Prefer memories tagged with this domain. Same soft-fallback rule as projectId. */
327
343
  domain?: string;
328
344
  /**
@@ -554,6 +570,13 @@ export declare function deriveProjectId(cwd?: string): string;
554
570
  * Handles: camelCase splitting, snake_case, stop-word removal, n-grams.
555
571
  */
556
572
  export declare function tokenize(text: string): string[];
573
+ /**
574
+ * Bump whenever tokenize() changes what it emits. Terms are computed once, at store time, and
575
+ * persisted, so a tokenizer improvement (stems, diacritics, synonym groups) used to reach new
576
+ * memories only — every memory already in the Brain kept the vocabulary it was stored with.
577
+ * rebuildIndex() re-tokenizes any entry indexed under another version.
578
+ */
579
+ export declare const TOKENIZER_VERSION = 6;
557
580
  /**
558
581
  * Compute term frequencies for a token list.
559
582
  */
@@ -805,6 +828,16 @@ export declare class TheBrainV2 {
805
828
  * because it happened to use different words — which is the entire point.
806
829
  */
807
830
  searchHybrid(query: string, limit?: number, minSimilarity?: number, options?: BrainSearchOptions): Promise<BrainSearchResult[]>;
831
+ /**
832
+ * Give memories stored before projects existed to the project their evidence lives in.
833
+ *
834
+ * An unscoped memory is visible to every project, so one project's notes surface in another's
835
+ * searches. When all the code it tracks sits inside `root`, there is no doubt whose it is, and
836
+ * it is stamped with `projectId`. A memory that tracks nothing, or tracks files outside `root`,
837
+ * is left alone: nothing proves who it belongs to, and guessing would hide it from the project
838
+ * that does own it. Returns how many were adopted.
839
+ */
840
+ adoptUnscopedByEvidence(projectId: string, root: string): number;
808
841
  private sidecar;
809
842
  private embeddingSidecar;
810
843
  getEntriesForProject(projectId: string): BrainEntry[];
@@ -863,6 +896,10 @@ export declare class TheBrainV2 {
863
896
  * whether a reuse happened. Unknown ids fail silently (a peer may have forgotten the
864
897
  * entry since the search ranked it); savings attribution must never break a search.
865
898
  */
899
+ /** Inverse document frequency of one index term over the whole corpus (BM25's formula). */
900
+ termIdf(term: string): number;
901
+ /** One reuse of a memory the agent chose and read (see search_memory's shortlist). */
902
+ recordReuse(id: string): void;
866
903
  creditSavings(id: string, tokens: number): void;
867
904
  /**
868
905
  * Archive one entry to the trash, drop it from the corpus, and tombstone the id so no
@@ -1 +1 @@
1
- {"version":3,"file":"TheBrainV2.d.ts","sourceRoot":"","sources":["../../../src/subconscious/TheBrainV2.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TheBrainV2.d.ts","sourceRoot":"","sources":["../../../src/subconscious/TheBrainV2.ts"],"names":[],"mappings":"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"}