@nxuss/lemma 1.40.0 → 1.42.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.
- package/README.md +63 -14
- package/bin/brain-ingest.js +83 -6
- package/bin/doctor.js +2 -1
- package/bin/init.js +92 -92
- package/bin/postinstall.js +58 -4
- package/dashboard/dist/assets/index-Ca05LJvs.js +453 -0
- package/dashboard/dist/assets/{index-DNTQXLER.css → index-DdEVyDRj.css} +1 -1
- package/dashboard/dist/index.html +2 -2
- package/dist/cjs/cli/hostHooks.d.ts +27 -2
- package/dist/cjs/cli/hostHooks.d.ts.map +1 -1
- package/dist/cjs/cli/hostHooks.js +74 -7
- package/dist/cjs/cli/hostHooks.js.map +1 -1
- package/dist/cjs/cli/lemma-proxy.d.ts.map +1 -1
- package/dist/cjs/cli/lemma-proxy.js +29 -10
- package/dist/cjs/cli/lemma-proxy.js.map +1 -1
- package/dist/cjs/contracts/evidence.d.ts +8 -1
- package/dist/cjs/contracts/evidence.d.ts.map +1 -1
- package/dist/cjs/mcp/index.js +19 -0
- package/dist/cjs/mcp/index.js.map +1 -1
- package/dist/cjs/mcp/prompts.d.ts +1 -1
- package/dist/cjs/mcp/prompts.d.ts.map +1 -1
- package/dist/cjs/mcp/prompts.js +6 -16
- package/dist/cjs/mcp/prompts.js.map +1 -1
- package/dist/cjs/mcp/tool-profiles.d.ts.map +1 -1
- package/dist/cjs/mcp/tool-profiles.js +8 -4
- package/dist/cjs/mcp/tool-profiles.js.map +1 -1
- package/dist/cjs/mcp/tools/context-tools.d.ts.map +1 -1
- package/dist/cjs/mcp/tools/context-tools.js +21 -17
- package/dist/cjs/mcp/tools/context-tools.js.map +1 -1
- package/dist/cjs/mcp/tools/memory.d.ts.map +1 -1
- package/dist/cjs/mcp/tools/memory.js +25 -4
- package/dist/cjs/mcp/tools/memory.js.map +1 -1
- package/dist/cjs/mcp/tools/workspace.d.ts.map +1 -1
- package/dist/cjs/mcp/tools/workspace.js +97 -54
- package/dist/cjs/mcp/tools/workspace.js.map +1 -1
- package/dist/cjs/mcp/tools.d.ts.map +1 -1
- package/dist/cjs/mcp/tools.js +95 -34
- package/dist/cjs/mcp/tools.js.map +1 -1
- package/dist/cjs/mcp/utils.d.ts.map +1 -1
- package/dist/cjs/mcp/utils.js +6 -1
- package/dist/cjs/mcp/utils.js.map +1 -1
- package/dist/cjs/mcp/workspaceShared.d.ts.map +1 -1
- package/dist/cjs/mcp/workspaceShared.js +14 -9
- package/dist/cjs/mcp/workspaceShared.js.map +1 -1
- package/dist/cjs/proxy/KeyManager.d.ts +10 -0
- package/dist/cjs/proxy/KeyManager.d.ts.map +1 -1
- package/dist/cjs/proxy/KeyManager.js +45 -8
- package/dist/cjs/proxy/KeyManager.js.map +1 -1
- package/dist/cjs/security/SemanticScrubber.d.ts +6 -0
- package/dist/cjs/security/SemanticScrubber.d.ts.map +1 -1
- package/dist/cjs/security/SemanticScrubber.js +39 -13
- package/dist/cjs/security/SemanticScrubber.js.map +1 -1
- package/dist/cjs/subconscious/HostRecall.d.ts +21 -5
- package/dist/cjs/subconscious/HostRecall.d.ts.map +1 -1
- package/dist/cjs/subconscious/HostRecall.js +147 -13
- package/dist/cjs/subconscious/HostRecall.js.map +1 -1
- package/dist/cjs/subconscious/LeakWatch.d.ts +21 -0
- package/dist/cjs/subconscious/LeakWatch.d.ts.map +1 -0
- package/dist/cjs/subconscious/LeakWatch.js +93 -0
- package/dist/cjs/subconscious/LeakWatch.js.map +1 -0
- package/dist/cjs/subconscious/TheBrainV2.d.ts +6 -1
- package/dist/cjs/subconscious/TheBrainV2.d.ts.map +1 -1
- package/dist/cjs/subconscious/TheBrainV2.js +21 -9
- package/dist/cjs/subconscious/TheBrainV2.js.map +1 -1
- package/dist/cjs/subconscious/freshness/LocalFsResolver.d.ts +3 -0
- package/dist/cjs/subconscious/freshness/LocalFsResolver.d.ts.map +1 -1
- package/dist/cjs/subconscious/freshness/LocalFsResolver.js +32 -14
- package/dist/cjs/subconscious/freshness/LocalFsResolver.js.map +1 -1
- package/dist/cjs/utils/CommandOutputDistiller.d.ts +10 -0
- package/dist/cjs/utils/CommandOutputDistiller.d.ts.map +1 -1
- package/dist/cjs/utils/CommandOutputDistiller.js +40 -2
- package/dist/cjs/utils/CommandOutputDistiller.js.map +1 -1
- package/dist/cjs/utils/ContextSqueezer.d.ts +13 -1
- package/dist/cjs/utils/ContextSqueezer.d.ts.map +1 -1
- package/dist/cjs/utils/ContextSqueezer.js +176 -3
- package/dist/cjs/utils/ContextSqueezer.js.map +1 -1
- package/dist/cjs/utils/FixCapture.d.ts.map +1 -1
- package/dist/cjs/utils/FixCapture.js +56 -0
- package/dist/cjs/utils/FixCapture.js.map +1 -1
- package/dist/cjs/utils/LineNumberMap.d.ts.map +1 -1
- package/dist/cjs/utils/LineNumberMap.js +27 -0
- package/dist/cjs/utils/LineNumberMap.js.map +1 -1
- package/dist/cjs/utils/PatchMatcher.d.ts.map +1 -1
- package/dist/cjs/utils/PatchMatcher.js +26 -0
- package/dist/cjs/utils/PatchMatcher.js.map +1 -1
- package/dist/cjs/utils/ProLicense.d.ts +2 -0
- package/dist/cjs/utils/ProLicense.d.ts.map +1 -0
- package/dist/cjs/utils/ProLicense.js +31 -0
- package/dist/cjs/utils/ProLicense.js.map +1 -0
- package/dist/cjs/utils/RevivalThrottle.d.ts +9 -0
- package/dist/cjs/utils/RevivalThrottle.d.ts.map +1 -0
- package/dist/cjs/utils/RevivalThrottle.js +25 -0
- package/dist/cjs/utils/RevivalThrottle.js.map +1 -0
- package/dist/cjs/utils/SavingsLedger.d.ts +58 -18
- package/dist/cjs/utils/SavingsLedger.d.ts.map +1 -1
- package/dist/cjs/utils/SavingsLedger.js +332 -179
- package/dist/cjs/utils/SavingsLedger.js.map +1 -1
- package/dist/cjs/utils/SearchCache.d.ts +2 -2
- package/dist/cjs/utils/SearchCache.d.ts.map +1 -1
- package/dist/cjs/utils/SearchCache.js +8 -6
- package/dist/cjs/utils/SearchCache.js.map +1 -1
- package/dist/cjs/utils/SessionCapture.d.ts +76 -0
- package/dist/cjs/utils/SessionCapture.d.ts.map +1 -0
- package/dist/cjs/utils/SessionCapture.js +400 -0
- package/dist/cjs/utils/SessionCapture.js.map +1 -0
- package/dist/cjs/utils/StaleDelta.d.ts +2 -0
- package/dist/cjs/utils/StaleDelta.d.ts.map +1 -0
- package/dist/cjs/utils/StaleDelta.js +60 -0
- package/dist/cjs/utils/StaleDelta.js.map +1 -0
- package/dist/cjs/utils/TokenBudgetedReader.d.ts.map +1 -1
- package/dist/cjs/utils/TokenBudgetedReader.js +56 -15
- package/dist/cjs/utils/TokenBudgetedReader.js.map +1 -1
- package/dist/cjs/utils/WorkspaceSearch.d.ts +8 -1
- package/dist/cjs/utils/WorkspaceSearch.d.ts.map +1 -1
- package/dist/cjs/utils/WorkspaceSearch.js +75 -5
- package/dist/cjs/utils/WorkspaceSearch.js.map +1 -1
- package/dist/cjs/utils/reportSavings.d.ts +3 -0
- package/dist/cjs/utils/reportSavings.d.ts.map +1 -1
- package/dist/cjs/utils/reportSavings.js +44 -5
- package/dist/cjs/utils/reportSavings.js.map +1 -1
- package/dist/esm/cli/hostHooks.d.ts +27 -2
- package/dist/esm/cli/hostHooks.d.ts.map +1 -1
- package/dist/esm/cli/hostHooks.js +73 -6
- package/dist/esm/cli/hostHooks.js.map +1 -1
- package/dist/esm/cli/lemma-proxy.d.ts.map +1 -1
- package/dist/esm/cli/lemma-proxy.js +30 -11
- package/dist/esm/cli/lemma-proxy.js.map +1 -1
- package/dist/esm/contracts/evidence.d.ts +8 -1
- package/dist/esm/contracts/evidence.d.ts.map +1 -1
- package/dist/esm/mcp/index.js +20 -1
- package/dist/esm/mcp/index.js.map +1 -1
- package/dist/esm/mcp/prompts.d.ts +1 -1
- package/dist/esm/mcp/prompts.d.ts.map +1 -1
- package/dist/esm/mcp/prompts.js +6 -16
- package/dist/esm/mcp/prompts.js.map +1 -1
- package/dist/esm/mcp/tool-profiles.d.ts.map +1 -1
- package/dist/esm/mcp/tool-profiles.js +8 -4
- package/dist/esm/mcp/tool-profiles.js.map +1 -1
- package/dist/esm/mcp/tools/context-tools.d.ts.map +1 -1
- package/dist/esm/mcp/tools/context-tools.js +21 -17
- package/dist/esm/mcp/tools/context-tools.js.map +1 -1
- package/dist/esm/mcp/tools/memory.d.ts.map +1 -1
- package/dist/esm/mcp/tools/memory.js +26 -5
- package/dist/esm/mcp/tools/memory.js.map +1 -1
- package/dist/esm/mcp/tools/workspace.d.ts.map +1 -1
- package/dist/esm/mcp/tools/workspace.js +98 -55
- package/dist/esm/mcp/tools/workspace.js.map +1 -1
- package/dist/esm/mcp/tools.d.ts.map +1 -1
- package/dist/esm/mcp/tools.js +94 -33
- package/dist/esm/mcp/tools.js.map +1 -1
- package/dist/esm/mcp/utils.d.ts.map +1 -1
- package/dist/esm/mcp/utils.js +6 -1
- package/dist/esm/mcp/utils.js.map +1 -1
- package/dist/esm/mcp/workspaceShared.d.ts.map +1 -1
- package/dist/esm/mcp/workspaceShared.js +14 -9
- package/dist/esm/mcp/workspaceShared.js.map +1 -1
- package/dist/esm/proxy/KeyManager.d.ts +10 -0
- package/dist/esm/proxy/KeyManager.d.ts.map +1 -1
- package/dist/esm/proxy/KeyManager.js +43 -6
- package/dist/esm/proxy/KeyManager.js.map +1 -1
- package/dist/esm/security/SemanticScrubber.d.ts +6 -0
- package/dist/esm/security/SemanticScrubber.d.ts.map +1 -1
- package/dist/esm/security/SemanticScrubber.js +38 -12
- package/dist/esm/security/SemanticScrubber.js.map +1 -1
- package/dist/esm/subconscious/HostRecall.d.ts +21 -5
- package/dist/esm/subconscious/HostRecall.d.ts.map +1 -1
- package/dist/esm/subconscious/HostRecall.js +146 -16
- package/dist/esm/subconscious/HostRecall.js.map +1 -1
- package/dist/esm/subconscious/LeakWatch.d.ts +21 -0
- package/dist/esm/subconscious/LeakWatch.d.ts.map +1 -0
- package/dist/esm/subconscious/LeakWatch.js +86 -0
- package/dist/esm/subconscious/LeakWatch.js.map +1 -0
- package/dist/esm/subconscious/TheBrainV2.d.ts +6 -1
- package/dist/esm/subconscious/TheBrainV2.d.ts.map +1 -1
- package/dist/esm/subconscious/TheBrainV2.js +21 -9
- package/dist/esm/subconscious/TheBrainV2.js.map +1 -1
- package/dist/esm/subconscious/freshness/LocalFsResolver.d.ts +3 -0
- package/dist/esm/subconscious/freshness/LocalFsResolver.d.ts.map +1 -1
- package/dist/esm/subconscious/freshness/LocalFsResolver.js +32 -14
- package/dist/esm/subconscious/freshness/LocalFsResolver.js.map +1 -1
- package/dist/esm/utils/CommandOutputDistiller.d.ts +10 -0
- package/dist/esm/utils/CommandOutputDistiller.d.ts.map +1 -1
- package/dist/esm/utils/CommandOutputDistiller.js +39 -2
- package/dist/esm/utils/CommandOutputDistiller.js.map +1 -1
- package/dist/esm/utils/ContextSqueezer.d.ts +13 -1
- package/dist/esm/utils/ContextSqueezer.d.ts.map +1 -1
- package/dist/esm/utils/ContextSqueezer.js +175 -3
- package/dist/esm/utils/ContextSqueezer.js.map +1 -1
- package/dist/esm/utils/FixCapture.d.ts.map +1 -1
- package/dist/esm/utils/FixCapture.js +56 -0
- package/dist/esm/utils/FixCapture.js.map +1 -1
- package/dist/esm/utils/LineNumberMap.d.ts.map +1 -1
- package/dist/esm/utils/LineNumberMap.js +27 -0
- package/dist/esm/utils/LineNumberMap.js.map +1 -1
- package/dist/esm/utils/PatchMatcher.d.ts.map +1 -1
- package/dist/esm/utils/PatchMatcher.js +26 -0
- package/dist/esm/utils/PatchMatcher.js.map +1 -1
- package/dist/esm/utils/ProLicense.d.ts +2 -0
- package/dist/esm/utils/ProLicense.d.ts.map +1 -0
- package/dist/esm/utils/ProLicense.js +25 -0
- package/dist/esm/utils/ProLicense.js.map +1 -0
- package/dist/esm/utils/RevivalThrottle.d.ts +9 -0
- package/dist/esm/utils/RevivalThrottle.d.ts.map +1 -0
- package/dist/esm/utils/RevivalThrottle.js +22 -0
- package/dist/esm/utils/RevivalThrottle.js.map +1 -0
- package/dist/esm/utils/SavingsLedger.d.ts +58 -18
- package/dist/esm/utils/SavingsLedger.d.ts.map +1 -1
- package/dist/esm/utils/SavingsLedger.js +332 -179
- package/dist/esm/utils/SavingsLedger.js.map +1 -1
- package/dist/esm/utils/SearchCache.d.ts +2 -2
- package/dist/esm/utils/SearchCache.d.ts.map +1 -1
- package/dist/esm/utils/SearchCache.js +8 -6
- package/dist/esm/utils/SearchCache.js.map +1 -1
- package/dist/esm/utils/SessionCapture.d.ts +76 -0
- package/dist/esm/utils/SessionCapture.d.ts.map +1 -0
- package/dist/esm/utils/SessionCapture.js +388 -0
- package/dist/esm/utils/SessionCapture.js.map +1 -0
- package/dist/esm/utils/StaleDelta.d.ts +2 -0
- package/dist/esm/utils/StaleDelta.d.ts.map +1 -0
- package/dist/esm/utils/StaleDelta.js +54 -0
- package/dist/esm/utils/StaleDelta.js.map +1 -0
- package/dist/esm/utils/TokenBudgetedReader.d.ts.map +1 -1
- package/dist/esm/utils/TokenBudgetedReader.js +56 -15
- package/dist/esm/utils/TokenBudgetedReader.js.map +1 -1
- package/dist/esm/utils/WorkspaceSearch.d.ts +8 -1
- package/dist/esm/utils/WorkspaceSearch.d.ts.map +1 -1
- package/dist/esm/utils/WorkspaceSearch.js +74 -5
- package/dist/esm/utils/WorkspaceSearch.js.map +1 -1
- package/dist/esm/utils/reportSavings.d.ts +3 -0
- package/dist/esm/utils/reportSavings.d.ts.map +1 -1
- package/dist/esm/utils/reportSavings.js +42 -5
- package/dist/esm/utils/reportSavings.js.map +1 -1
- package/package.json +4 -4
- package/dashboard/dist/assets/index-DzL_Zu3m.js +0 -452
- package/dist/cjs/examples/basic-usage.d.ts +0 -12
- package/dist/cjs/examples/basic-usage.d.ts.map +0 -1
- package/dist/cjs/examples/basic-usage.js +0 -128
- package/dist/cjs/examples/basic-usage.js.map +0 -1
- package/dist/esm/examples/basic-usage.d.ts +0 -12
- package/dist/esm/examples/basic-usage.d.ts.map +0 -1
- package/dist/esm/examples/basic-usage.js +0 -126
- package/dist/esm/examples/basic-usage.js.map +0 -1
|
@@ -1173,7 +1173,7 @@ function checkEntryFreshness(entry, resolver, resolveNode, depth = 0, visited =
|
|
|
1173
1173
|
unverifiedFiles.push(relLabel(abs)); // fail-closed: cannot verify ⇒ not fresh
|
|
1174
1174
|
continue;
|
|
1175
1175
|
}
|
|
1176
|
-
if (currentHash !== storedHash)
|
|
1176
|
+
if (currentHash !== storedHash && resolver.hashFileLegacy?.(abs) !== storedHash)
|
|
1177
1177
|
staleFiles.push(relLabel(abs));
|
|
1178
1178
|
}
|
|
1179
1179
|
}
|
|
@@ -1188,7 +1188,7 @@ function checkEntryFreshness(entry, resolver, resolveNode, depth = 0, visited =
|
|
|
1188
1188
|
unverifiedFiles.push(label); // fail-closed: cannot verify ⇒ not fresh
|
|
1189
1189
|
continue;
|
|
1190
1190
|
}
|
|
1191
|
-
if (currentPair.raw === storedHash)
|
|
1191
|
+
if (currentPair.raw === storedHash || currentPair.rawLegacy === storedHash)
|
|
1192
1192
|
continue;
|
|
1193
1193
|
if (semanticDiff) {
|
|
1194
1194
|
const storedNormalized = entry.symbolNormalizedHashes?.[key];
|
|
@@ -1311,7 +1311,7 @@ function checkClaimFreshness(claim, resolver, semanticDiff = false) {
|
|
|
1311
1311
|
unverifiedFiles.push(relLabel(abs));
|
|
1312
1312
|
continue;
|
|
1313
1313
|
}
|
|
1314
|
-
if (currentHash !== storedHash)
|
|
1314
|
+
if (currentHash !== storedHash && resolver.hashFileLegacy?.(abs) !== storedHash)
|
|
1315
1315
|
staleFiles.push(relLabel(abs));
|
|
1316
1316
|
}
|
|
1317
1317
|
}
|
|
@@ -1326,7 +1326,7 @@ function checkClaimFreshness(claim, resolver, semanticDiff = false) {
|
|
|
1326
1326
|
unverifiedFiles.push(label);
|
|
1327
1327
|
continue;
|
|
1328
1328
|
}
|
|
1329
|
-
if (currentPair.raw === storedHash)
|
|
1329
|
+
if (currentPair.raw === storedHash || currentPair.rawLegacy === storedHash)
|
|
1330
1330
|
continue;
|
|
1331
1331
|
if (semanticDiff) {
|
|
1332
1332
|
const storedNormalized = claim.symbolNormalizedHashes?.[key];
|
|
@@ -3449,6 +3449,11 @@ class TheBrainV2 {
|
|
|
3449
3449
|
*/
|
|
3450
3450
|
getStats(options = {}) {
|
|
3451
3451
|
this.syncIfChanged();
|
|
3452
|
+
// With projectId, every per-memory figure covers that project's memories only. Corpus-wide
|
|
3453
|
+
// ones (term index, bloom filter, file size, snapshots, tombstones) stay what they are, and
|
|
3454
|
+
// `unscopedEntries` still counts the memories that predate scoping, which belong to no project.
|
|
3455
|
+
const scopeId = options.projectId;
|
|
3456
|
+
let inScope = 0;
|
|
3452
3457
|
const base = {
|
|
3453
3458
|
totalEntries: this.entries.size,
|
|
3454
3459
|
totalTerms: this.invertedIndex.size,
|
|
@@ -3474,14 +3479,17 @@ class TheBrainV2 {
|
|
|
3474
3479
|
const reuseBySource = {};
|
|
3475
3480
|
const projects = new Set();
|
|
3476
3481
|
for (const entry of this.entries.values()) {
|
|
3477
|
-
if (!entry.hits)
|
|
3478
|
-
neverHit++;
|
|
3479
|
-
if (entry.demerits)
|
|
3480
|
-
downvoted++;
|
|
3481
3482
|
if (entry.projectId === undefined)
|
|
3482
3483
|
unscoped++;
|
|
3483
3484
|
else
|
|
3484
3485
|
projects.add(entry.projectId);
|
|
3486
|
+
if (scopeId !== undefined && entry.projectId !== scopeId)
|
|
3487
|
+
continue;
|
|
3488
|
+
inScope++;
|
|
3489
|
+
if (!entry.hits)
|
|
3490
|
+
neverHit++;
|
|
3491
|
+
if (entry.demerits)
|
|
3492
|
+
downvoted++;
|
|
3485
3493
|
if (trackedArtifactCount(entry) === 0)
|
|
3486
3494
|
untracked++;
|
|
3487
3495
|
else if (entry.filePaths !== undefined || entry.symbols !== undefined ||
|
|
@@ -3522,7 +3530,11 @@ class TheBrainV2 {
|
|
|
3522
3530
|
base.downvoted = downvoted;
|
|
3523
3531
|
base.bySource = bySource;
|
|
3524
3532
|
base.reuseBySource = reuseBySource;
|
|
3525
|
-
|
|
3533
|
+
if (scopeId !== undefined) {
|
|
3534
|
+
base.totalEntries = inScope;
|
|
3535
|
+
base.scopedTo = scopeId;
|
|
3536
|
+
}
|
|
3537
|
+
base.projects = scopeId !== undefined ? (projects.has(scopeId) ? 1 : 0) : projects.size;
|
|
3526
3538
|
base.unscopedEntries = unscoped;
|
|
3527
3539
|
base.untrackedEntries = untracked;
|
|
3528
3540
|
base.withClearPaths = withClearPaths;
|