@nxuss/lemma 1.22.1 → 1.23.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 +33 -7
- package/dist/cjs/cloud/store/FileBrainStore.d.ts.map +1 -1
- package/dist/cjs/cloud/store/FileBrainStore.js +5 -2
- package/dist/cjs/cloud/store/FileBrainStore.js.map +1 -1
- package/dist/cjs/mcp/tool-profiles.d.ts.map +1 -1
- package/dist/cjs/mcp/tool-profiles.js +3 -0
- package/dist/cjs/mcp/tool-profiles.js.map +1 -1
- package/dist/cjs/mcp/tools/memory.d.ts.map +1 -1
- package/dist/cjs/mcp/tools/memory.js +212 -7
- package/dist/cjs/mcp/tools/memory.js.map +1 -1
- package/dist/cjs/mcp/tools.d.ts +9 -0
- package/dist/cjs/mcp/tools.d.ts.map +1 -1
- package/dist/cjs/mcp/tools.js +25 -4
- package/dist/cjs/mcp/tools.js.map +1 -1
- package/dist/cjs/security/scrubForStorage.d.ts +16 -0
- package/dist/cjs/security/scrubForStorage.d.ts.map +1 -0
- package/dist/cjs/security/scrubForStorage.js +35 -0
- package/dist/cjs/security/scrubForStorage.js.map +1 -0
- package/dist/cjs/subconscious/BrainEncryption.d.ts +38 -0
- package/dist/cjs/subconscious/BrainEncryption.d.ts.map +1 -0
- package/dist/cjs/subconscious/BrainEncryption.js +137 -0
- package/dist/cjs/subconscious/BrainEncryption.js.map +1 -0
- package/dist/cjs/subconscious/TheBrainV2.d.ts +294 -0
- package/dist/cjs/subconscious/TheBrainV2.d.ts.map +1 -1
- package/dist/cjs/subconscious/TheBrainV2.js +1070 -111
- package/dist/cjs/subconscious/TheBrainV2.js.map +1 -1
- package/dist/esm/cloud/store/FileBrainStore.d.ts.map +1 -1
- package/dist/esm/cloud/store/FileBrainStore.js +5 -2
- package/dist/esm/cloud/store/FileBrainStore.js.map +1 -1
- package/dist/esm/mcp/tool-profiles.d.ts.map +1 -1
- package/dist/esm/mcp/tool-profiles.js +3 -0
- package/dist/esm/mcp/tool-profiles.js.map +1 -1
- package/dist/esm/mcp/tools/memory.d.ts.map +1 -1
- package/dist/esm/mcp/tools/memory.js +212 -7
- package/dist/esm/mcp/tools/memory.js.map +1 -1
- package/dist/esm/mcp/tools.d.ts +9 -0
- package/dist/esm/mcp/tools.d.ts.map +1 -1
- package/dist/esm/mcp/tools.js +25 -5
- package/dist/esm/mcp/tools.js.map +1 -1
- package/dist/esm/security/scrubForStorage.d.ts +16 -0
- package/dist/esm/security/scrubForStorage.d.ts.map +1 -0
- package/dist/esm/security/scrubForStorage.js +32 -0
- package/dist/esm/security/scrubForStorage.js.map +1 -0
- package/dist/esm/subconscious/BrainEncryption.d.ts +38 -0
- package/dist/esm/subconscious/BrainEncryption.d.ts.map +1 -0
- package/dist/esm/subconscious/BrainEncryption.js +126 -0
- package/dist/esm/subconscious/BrainEncryption.js.map +1 -0
- package/dist/esm/subconscious/TheBrainV2.d.ts +294 -0
- package/dist/esm/subconscious/TheBrainV2.d.ts.map +1 -1
- package/dist/esm/subconscious/TheBrainV2.js +1068 -111
- package/dist/esm/subconscious/TheBrainV2.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* At-rest encryption for the Brain corpus (AES-256-GCM).
|
|
4
|
+
*
|
|
5
|
+
* Threat model, honestly stated: the key lives next to the data (`.brain.key`, mode
|
|
6
|
+
* 0600), so this does NOT protect against an attacker with your uid — it protects the
|
|
7
|
+
* corpus at rest against everything else: backups, dotfile sync, disk disposal, a
|
|
8
|
+
* teammate peeking at a shared machine, a stolen laptop with full-disk encryption off.
|
|
9
|
+
* Combined with scrub-on-store (no live secrets ever reach the corpus), the NDJSON on
|
|
10
|
+
* disk holds redacted, encrypted text.
|
|
11
|
+
*
|
|
12
|
+
* Key resolution, in order: LEMMA_BRAIN_KEY env (64-char hex or base64 of 32 bytes, so
|
|
13
|
+
* teams can share one key out-of-band) → `<brainDir>/.brain.key` → generate-and-store
|
|
14
|
+
* (0600) when LEMMA_BRAIN_ENCRYPT=1. No env and no key file means disabled: plaintext,
|
|
15
|
+
* exactly as before, byte for byte.
|
|
16
|
+
*
|
|
17
|
+
* Failure contract: key CONFIGURATION errors (malformed env key, corrupt key file)
|
|
18
|
+
* throw loud — silently storing plaintext while the operator believes otherwise is the
|
|
19
|
+
* one unacceptable outcome. DECRYPTION failures (wrong key, tampered bytes) return null
|
|
20
|
+
* and flow into the corpus integrity fallback (backup → quarantine → fresh start),
|
|
21
|
+
* never an exception, never half a corpus.
|
|
22
|
+
*/
|
|
23
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
24
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
25
|
+
};
|
|
26
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
|
+
exports.BRAIN_ENC_MAGIC = void 0;
|
|
28
|
+
exports.brainKeyFile = brainKeyFile;
|
|
29
|
+
exports.resolveBrainKey = resolveBrainKey;
|
|
30
|
+
exports.encryptionActive = encryptionActive;
|
|
31
|
+
exports.encryptEnvelope = encryptEnvelope;
|
|
32
|
+
exports.decryptEnvelope = decryptEnvelope;
|
|
33
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
34
|
+
const fs_1 = __importDefault(require("fs"));
|
|
35
|
+
const path_1 = __importDefault(require("path"));
|
|
36
|
+
exports.BRAIN_ENC_MAGIC = 'LEMMA-ENC-V1:';
|
|
37
|
+
const KEY_BYTES = 32;
|
|
38
|
+
function brainKeyFile(brainDir) {
|
|
39
|
+
return path_1.default.join(brainDir, '.brain.key');
|
|
40
|
+
}
|
|
41
|
+
function parseEnvKey(raw) {
|
|
42
|
+
const trimmed = raw.trim();
|
|
43
|
+
let key = null;
|
|
44
|
+
if (/^[0-9a-fA-F]{64}$/.test(trimmed))
|
|
45
|
+
key = Buffer.from(trimmed, 'hex');
|
|
46
|
+
else {
|
|
47
|
+
try {
|
|
48
|
+
const decoded = Buffer.from(trimmed, 'base64');
|
|
49
|
+
if (decoded.length === KEY_BYTES)
|
|
50
|
+
key = decoded;
|
|
51
|
+
}
|
|
52
|
+
catch { /* fall through to the loud error below */ }
|
|
53
|
+
}
|
|
54
|
+
if (!key) {
|
|
55
|
+
throw new Error('LEMMA_BRAIN_KEY must be 64 hex chars or base64 of 32 bytes. Unset it to use the local key file, or fix its format — refusing to guess.');
|
|
56
|
+
}
|
|
57
|
+
return key;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Resolve the data key, or null when encryption is off. Throws on malformed key
|
|
61
|
+
* configuration (see module contract). Callers cache the result per process (see
|
|
62
|
+
* TheBrainV2): rotating the key requires a restart, which is the safe direction —
|
|
63
|
+
* a mid-process key change must never split one corpus across two keys.
|
|
64
|
+
*/
|
|
65
|
+
function resolveBrainKey(brainDir) {
|
|
66
|
+
if (process.env.LEMMA_BRAIN_KEY)
|
|
67
|
+
return parseEnvKey(process.env.LEMMA_BRAIN_KEY);
|
|
68
|
+
try {
|
|
69
|
+
const raw = fs_1.default.readFileSync(brainKeyFile(brainDir), 'utf8').trim();
|
|
70
|
+
if (!/^[0-9a-fA-F]{64}$/.test(raw)) {
|
|
71
|
+
throw new Error(`Brain key file ${brainKeyFile(brainDir)} is corrupt (not 64 hex chars). ` +
|
|
72
|
+
`Back it up, delete it, and re-run with LEMMA_BRAIN_ENCRYPT=1 to generate a fresh key — ` +
|
|
73
|
+
`refusing to store anything under a key I cannot read back.`);
|
|
74
|
+
}
|
|
75
|
+
return Buffer.from(raw, 'hex');
|
|
76
|
+
}
|
|
77
|
+
catch (err) {
|
|
78
|
+
if (err && err.code !== 'ENOENT')
|
|
79
|
+
throw err;
|
|
80
|
+
}
|
|
81
|
+
if (process.env.LEMMA_BRAIN_ENCRYPT === '1') {
|
|
82
|
+
const key = crypto_1.default.randomBytes(KEY_BYTES);
|
|
83
|
+
fs_1.default.mkdirSync(brainDir, { recursive: true });
|
|
84
|
+
fs_1.default.writeFileSync(brainKeyFile(brainDir), key.toString('hex'), { mode: 0o600 });
|
|
85
|
+
try {
|
|
86
|
+
fs_1.default.chmodSync(brainKeyFile(brainDir), 0o600);
|
|
87
|
+
}
|
|
88
|
+
catch { /* mode option above already applied on most platforms */ }
|
|
89
|
+
return key;
|
|
90
|
+
}
|
|
91
|
+
return null;
|
|
92
|
+
}
|
|
93
|
+
function encryptionActive(brainDir) {
|
|
94
|
+
if (process.env.LEMMA_BRAIN_KEY)
|
|
95
|
+
return { enabled: true, keySource: 'env' };
|
|
96
|
+
try {
|
|
97
|
+
if (fs_1.default.statSync(brainKeyFile(brainDir)).isFile())
|
|
98
|
+
return { enabled: true, keySource: 'file' };
|
|
99
|
+
}
|
|
100
|
+
catch { /* no key file */ }
|
|
101
|
+
if (process.env.LEMMA_BRAIN_ENCRYPT === '1')
|
|
102
|
+
return { enabled: true, keySource: 'file' };
|
|
103
|
+
return { enabled: false, keySource: null };
|
|
104
|
+
}
|
|
105
|
+
function encryptEnvelope(key, plain) {
|
|
106
|
+
const iv = crypto_1.default.randomBytes(12);
|
|
107
|
+
const cipher = crypto_1.default.createCipheriv('aes-256-gcm', key, iv);
|
|
108
|
+
const data = Buffer.concat([cipher.update(plain, 'utf8'), cipher.final()]);
|
|
109
|
+
const tag = cipher.getAuthTag();
|
|
110
|
+
const envelope = JSON.stringify({
|
|
111
|
+
v: 1,
|
|
112
|
+
iv: iv.toString('base64'),
|
|
113
|
+
tag: tag.toString('base64'),
|
|
114
|
+
data: data.toString('base64'),
|
|
115
|
+
});
|
|
116
|
+
return exports.BRAIN_ENC_MAGIC + Buffer.from(envelope, 'utf8').toString('base64');
|
|
117
|
+
}
|
|
118
|
+
/** Null on wrong key, tampered bytes, or malformed envelope — never throws. */
|
|
119
|
+
function decryptEnvelope(key, stored) {
|
|
120
|
+
try {
|
|
121
|
+
if (!stored.startsWith(exports.BRAIN_ENC_MAGIC))
|
|
122
|
+
return null;
|
|
123
|
+
const envelope = JSON.parse(Buffer.from(stored.slice(exports.BRAIN_ENC_MAGIC.length), 'base64').toString('utf8'));
|
|
124
|
+
if (!envelope || envelope.v !== 1)
|
|
125
|
+
return null;
|
|
126
|
+
const decipher = crypto_1.default.createDecipheriv('aes-256-gcm', key, Buffer.from(envelope.iv, 'base64'));
|
|
127
|
+
decipher.setAuthTag(Buffer.from(envelope.tag, 'base64'));
|
|
128
|
+
return Buffer.concat([
|
|
129
|
+
decipher.update(Buffer.from(envelope.data, 'base64')),
|
|
130
|
+
decipher.final(),
|
|
131
|
+
]).toString('utf8');
|
|
132
|
+
}
|
|
133
|
+
catch {
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
//# sourceMappingURL=BrainEncryption.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BrainEncryption.js","sourceRoot":"","sources":["../../../src/subconscious/BrainEncryption.ts"],"names":[],"mappings":"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"}
|
|
@@ -78,6 +78,20 @@ export interface BrainEntry {
|
|
|
78
78
|
* "reuse turned out to be wrong." Absent/0 means never downvoted.
|
|
79
79
|
*/
|
|
80
80
|
demerits?: number;
|
|
81
|
+
/**
|
|
82
|
+
* Secrets/credentials redacted from this entry at store time (scrub-on-store). Absent
|
|
83
|
+
* means the text arrived clean. Kept so audits can prove PII never persisted, and so a
|
|
84
|
+
* `[NAME_n]` placeholder in a response is explainable rather than mysterious.
|
|
85
|
+
*/
|
|
86
|
+
redactions?: number;
|
|
87
|
+
/**
|
|
88
|
+
* Cumulative tokens this memory's reuse has saved, booked by search_memory on every
|
|
89
|
+
* fresh hit (response length/4, floor 100 — the same heuristic as the savings ledger).
|
|
90
|
+
* Absent means never reused. This is the per-memory ROI ledger: it survives restarts
|
|
91
|
+
* (persisted), merges (max, like hits), and imports, so brain_stats can name which
|
|
92
|
+
* memories actually pay for the Brain.
|
|
93
|
+
*/
|
|
94
|
+
tokensSaved?: number;
|
|
81
95
|
/**
|
|
82
96
|
* Ids of other entries/claims this memory's conclusion was built on top of (the agent
|
|
83
97
|
* read memory A, then stored B as a conclusion derived from it). Absent means B's
|
|
@@ -88,6 +102,13 @@ export interface BrainEntry {
|
|
|
88
102
|
* current state, only inherited.
|
|
89
103
|
*/
|
|
90
104
|
derivedFrom?: string[];
|
|
105
|
+
/**
|
|
106
|
+
* Ids folded into this entry by mergeEntries(). Informational only — deliberately NEVER
|
|
107
|
+
* consulted by freshness: a folded id is tombstoned, and walking it would poison the
|
|
108
|
+
* keeper the merge just created. Tells the reader "this canonical memory absorbed
|
|
109
|
+
* these fragments" without inheriting their staleness.
|
|
110
|
+
*/
|
|
111
|
+
mergedFrom?: string[];
|
|
91
112
|
/**
|
|
92
113
|
* Normalized record of what wrote this memory, as opposed to `provider` — a free-text
|
|
93
114
|
* model/provider label that several auto-capture paths have been overloading to mean
|
|
@@ -219,6 +240,14 @@ export interface BrainSearchResult {
|
|
|
219
240
|
outcome?: 'confirmed' | 'failed';
|
|
220
241
|
claims?: ClaimFreshness[];
|
|
221
242
|
domain?: string;
|
|
243
|
+
/** Lifetime tokens this memory's reuse has saved. Absent means never reused. */
|
|
244
|
+
tokensSaved?: number;
|
|
245
|
+
/** Times this memory was the top hit of a counted search. Absent means never. */
|
|
246
|
+
hits?: number;
|
|
247
|
+
/** Which ranking signals fired for this result — popularity, penalties, re-verification. */
|
|
248
|
+
whyShown?: string[];
|
|
249
|
+
/** Absolute tracked paths / path::symbol keys the freshness verdict was judged against. */
|
|
250
|
+
evidence?: string[];
|
|
222
251
|
/** Fase D, only set under semanticDiff: symbols whose raw hash changed but only cosmetically. */
|
|
223
252
|
cosmeticChanges?: string[];
|
|
224
253
|
/**
|
|
@@ -300,7 +329,101 @@ export interface BrainStats {
|
|
|
300
329
|
* (no hashing), so it is always computed, unlike staleEntries.
|
|
301
330
|
*/
|
|
302
331
|
untrackedEntries?: number;
|
|
332
|
+
/** Sum of per-memory lifetime savings across the corpus. Always computed (in-memory). */
|
|
333
|
+
totalTokensSaved?: number;
|
|
334
|
+
/**
|
|
335
|
+
* Top 5 memories by lifetime savings — the entries that pay for the Brain. Queries
|
|
336
|
+
* truncated to 80 chars to keep stats output bounded.
|
|
337
|
+
*/
|
|
338
|
+
topSavers?: Array<{
|
|
339
|
+
id: string;
|
|
340
|
+
query: string;
|
|
341
|
+
tokensSaved: number;
|
|
342
|
+
hits: number;
|
|
343
|
+
}>;
|
|
344
|
+
/**
|
|
345
|
+
* Integrity + rollback posture. Present on every call (cheap: no hashing, one dir
|
|
346
|
+
* listing) so a silently-degraded Brain never reports itself as healthy.
|
|
347
|
+
*/
|
|
348
|
+
integrity?: {
|
|
349
|
+
ok: boolean;
|
|
350
|
+
lastIssue: IntegrityIssue | null;
|
|
351
|
+
snapshots: number;
|
|
352
|
+
backups: boolean;
|
|
353
|
+
encrypted: boolean;
|
|
354
|
+
};
|
|
303
355
|
}
|
|
356
|
+
/** Read-only upkeep pass over the corpus — see upkeep(). Every finding carries its fix. */
|
|
357
|
+
export interface BrainUpkeepReport {
|
|
358
|
+
checkedAt: string;
|
|
359
|
+
totalEntries: number;
|
|
360
|
+
revalidated: {
|
|
361
|
+
checked: number;
|
|
362
|
+
fresh: string[];
|
|
363
|
+
stale: Array<{
|
|
364
|
+
id: string;
|
|
365
|
+
query: string;
|
|
366
|
+
staleFiles: string[];
|
|
367
|
+
action: string;
|
|
368
|
+
}>;
|
|
369
|
+
untracked: Array<{
|
|
370
|
+
id: string;
|
|
371
|
+
query: string;
|
|
372
|
+
action: string;
|
|
373
|
+
}>;
|
|
374
|
+
unverified: Array<{
|
|
375
|
+
id: string;
|
|
376
|
+
query: string;
|
|
377
|
+
action: string;
|
|
378
|
+
}>;
|
|
379
|
+
};
|
|
380
|
+
duplicatePairs: Array<{
|
|
381
|
+
ids: [string, string];
|
|
382
|
+
similarity: number;
|
|
383
|
+
queries: [string, string];
|
|
384
|
+
action: string;
|
|
385
|
+
}>;
|
|
386
|
+
mergeCandidates: Array<{
|
|
387
|
+
ids: [string, string];
|
|
388
|
+
similarity: number;
|
|
389
|
+
queries: [string, string];
|
|
390
|
+
action: string;
|
|
391
|
+
}>;
|
|
392
|
+
deadWeight: {
|
|
393
|
+
neverHit: number;
|
|
394
|
+
neverHitSample: string[];
|
|
395
|
+
downvoted: Array<{
|
|
396
|
+
id: string;
|
|
397
|
+
demerits: number;
|
|
398
|
+
}>;
|
|
399
|
+
action: string;
|
|
400
|
+
};
|
|
401
|
+
savings: {
|
|
402
|
+
totalTokensSaved: number;
|
|
403
|
+
topSavers: Array<{
|
|
404
|
+
id: string;
|
|
405
|
+
query: string;
|
|
406
|
+
tokensSaved: number;
|
|
407
|
+
hits: number;
|
|
408
|
+
}>;
|
|
409
|
+
};
|
|
410
|
+
deep?: {
|
|
411
|
+
staleEntries: number;
|
|
412
|
+
staleRatio: number;
|
|
413
|
+
action: string;
|
|
414
|
+
};
|
|
415
|
+
}
|
|
416
|
+
/** Test seam: drop the cached key so a test can rotate env/key-file mid-process. */
|
|
417
|
+
export declare function resetBrainKeyCache(): void;
|
|
418
|
+
/** What the checked loader reports when the corpus file on disk isn't trustworthy. */
|
|
419
|
+
export interface IntegrityIssue {
|
|
420
|
+
at: string;
|
|
421
|
+
file: string;
|
|
422
|
+
action: 'fallback-to-backup' | 'fresh-start' | 'sync-skipped' | 'partial-corpus';
|
|
423
|
+
detail: string;
|
|
424
|
+
}
|
|
425
|
+
/** Names of rollback snapshots on disk, newest last. */
|
|
426
|
+
export declare function listSnapshotNames(): string[];
|
|
304
427
|
/**
|
|
305
428
|
* Union two views of the corpus. Never subtracts: an id present in either side survives
|
|
306
429
|
* unless it is tombstoned, because "absent from my copy" and "deleted" are indistinguishable
|
|
@@ -464,6 +587,13 @@ export declare class TheBrainV2 {
|
|
|
464
587
|
private diskStamp;
|
|
465
588
|
/** id -> ISO deletion time, for ids that must not come back through a merge. */
|
|
466
589
|
private tombstones;
|
|
590
|
+
/**
|
|
591
|
+
* Last integrity incident on the corpus files (corrupt main file, undecryptable
|
|
592
|
+
* envelope, skipped sync). Set by load()/save()/syncIfChanged(), never cleared
|
|
593
|
+
* except by a clean verified read — health() and brain_stats surface it so a silent
|
|
594
|
+
* fallback never looks like a healthy Brain.
|
|
595
|
+
*/
|
|
596
|
+
private integrityIssue;
|
|
467
597
|
/**
|
|
468
598
|
* id -> terms of that entry's own `query` field. Derived state, never persisted: `terms`
|
|
469
599
|
* covers query+response together, so scoring the query field on its own (see the
|
|
@@ -527,6 +657,8 @@ export declare class TheBrainV2 {
|
|
|
527
657
|
query: string;
|
|
528
658
|
outcome: 'confirmed' | 'failed';
|
|
529
659
|
}>;
|
|
660
|
+
/** Secrets/credentials redacted from query+response before anything was persisted. */
|
|
661
|
+
redactions: number;
|
|
530
662
|
};
|
|
531
663
|
/**
|
|
532
664
|
* Hard cap on entry count. Past this, the inverted index keeps growing and old, unused
|
|
@@ -570,6 +702,12 @@ export declare class TheBrainV2 {
|
|
|
570
702
|
private sidecar;
|
|
571
703
|
private embeddingSidecar;
|
|
572
704
|
getEntriesForProject(projectId: string): BrainEntry[];
|
|
705
|
+
/**
|
|
706
|
+
* Opposite-outcome entries tracking any of these symbols. Shared by store() (warn before
|
|
707
|
+
* writing) and previewImport() (warn before importing): two memories about one function
|
|
708
|
+
* disagreeing on whether an approach works is a trap for whoever searches next.
|
|
709
|
+
*/
|
|
710
|
+
private findOutcomeConflicts;
|
|
573
711
|
/**
|
|
574
712
|
* Check if a query is likely a duplicate before storing.
|
|
575
713
|
* Uses bloom filter for O(1) fast-path.
|
|
@@ -613,6 +751,20 @@ export declare class TheBrainV2 {
|
|
|
613
751
|
ok: boolean;
|
|
614
752
|
message: string;
|
|
615
753
|
};
|
|
754
|
+
/**
|
|
755
|
+
* Book tokens saved by reusing a memory, called by search_memory on a fresh hit — the
|
|
756
|
+
* same event that books the savings ledger, so the two can never disagree about
|
|
757
|
+
* whether a reuse happened. Unknown ids fail silently (a peer may have forgotten the
|
|
758
|
+
* entry since the search ranked it); savings attribution must never break a search.
|
|
759
|
+
*/
|
|
760
|
+
creditSavings(id: string, tokens: number): void;
|
|
761
|
+
/**
|
|
762
|
+
* Archive one entry to the trash, drop it from the corpus, and tombstone the id so no
|
|
763
|
+
* merge resurrects it. Shared by forget() (one memory) and mergeEntries() (folded
|
|
764
|
+
* fragments). Returns whether the archive write succeeded — a failure never blocks the
|
|
765
|
+
* removal itself, it only narrows the restore paths.
|
|
766
|
+
*/
|
|
767
|
+
private dropWithArchive;
|
|
616
768
|
/**
|
|
617
769
|
* Permanently remove one memory.
|
|
618
770
|
*
|
|
@@ -639,6 +791,70 @@ export declare class TheBrainV2 {
|
|
|
639
791
|
};
|
|
640
792
|
archivePath?: string;
|
|
641
793
|
};
|
|
794
|
+
/**
|
|
795
|
+
* Fold entries into a keeper. All-or-nothing on validation (unknown keeper, unknown or
|
|
796
|
+
* repeated fragment, keeper listed as its own fragment all fail before anything
|
|
797
|
+
* changes), then one snapshot covers the whole operation.
|
|
798
|
+
*/
|
|
799
|
+
mergeEntries(keepId: string, foldIds: string[]): {
|
|
800
|
+
ok: boolean;
|
|
801
|
+
message: string;
|
|
802
|
+
kept?: string;
|
|
803
|
+
folded?: string[];
|
|
804
|
+
claimsAdded?: number;
|
|
805
|
+
};
|
|
806
|
+
/**
|
|
807
|
+
* Persist the current in-memory corpus as a timestamped snapshot. Best-effort and
|
|
808
|
+
* synchronous like save(): a failed snapshot must never block the operation it
|
|
809
|
+
* protects. Returns the snapshot name, or null when nothing was written.
|
|
810
|
+
*/
|
|
811
|
+
snapshotCorpus(reason: string): string | null;
|
|
812
|
+
/** Rollback points on disk, newest last: name, size, and modification time. */
|
|
813
|
+
listSnapshots(): Array<{
|
|
814
|
+
name: string;
|
|
815
|
+
bytes: number;
|
|
816
|
+
mtime: string;
|
|
817
|
+
}>;
|
|
818
|
+
/**
|
|
819
|
+
* Replace the corpus with a snapshot. The current state is snapshotted first
|
|
820
|
+
* (`pre-restore`), so a restore is itself undoable. Deliberately does NOT tombstone
|
|
821
|
+
* the ids that vanish: a peer session holding unflushed memories would lose them on
|
|
822
|
+
* its next read, and "restore never destroys" beats "restore is total" — whatever a
|
|
823
|
+
* peer still holds comes back on its next flush, honestly, through the normal merge.
|
|
824
|
+
*/
|
|
825
|
+
restoreSnapshot(name: string): {
|
|
826
|
+
ok: boolean;
|
|
827
|
+
message: string;
|
|
828
|
+
restored?: number;
|
|
829
|
+
};
|
|
830
|
+
/** What the trash holds: one row per archived deletion, newest last. */
|
|
831
|
+
listForgotten(): Array<{
|
|
832
|
+
id: string;
|
|
833
|
+
query: string;
|
|
834
|
+
timestamp: string;
|
|
835
|
+
hits: number;
|
|
836
|
+
forgottenAt: string;
|
|
837
|
+
}>;
|
|
838
|
+
/**
|
|
839
|
+
* Bring a forgotten memory back. The archived copy becomes a live entry again under its
|
|
840
|
+
* original id (so any external reference to the id keeps working), its old tombstone is
|
|
841
|
+
* lifted, and freshness is re-judged on the next search like any other entry. The
|
|
842
|
+
* archive line stays as history — the trash is append-only, restore doesn't rewrite it.
|
|
843
|
+
*/
|
|
844
|
+
restoreForgotten(id: string): {
|
|
845
|
+
ok: boolean;
|
|
846
|
+
message: string;
|
|
847
|
+
};
|
|
848
|
+
/**
|
|
849
|
+
* Permanently drop archived deletions. Without a filter this empties the whole trash;
|
|
850
|
+
* with olderThanDays it keeps recent deletions restorable. Tombstones are untouched —
|
|
851
|
+
* purging the archive removes the restore path, not the deletion itself, so purged ids
|
|
852
|
+
* still cannot come back through a merge or an import.
|
|
853
|
+
*/
|
|
854
|
+
purgeForgotten(olderThanDays?: number): {
|
|
855
|
+
purged: number;
|
|
856
|
+
remaining: number;
|
|
857
|
+
};
|
|
642
858
|
/**
|
|
643
859
|
* Re-verify a memory against the code as it stands now, keeping its identity.
|
|
644
860
|
*
|
|
@@ -726,6 +942,32 @@ export declare class TheBrainV2 {
|
|
|
726
942
|
* next search) — see findBlastRadius for the algorithm and cost.
|
|
727
943
|
*/
|
|
728
944
|
findBlastRadius(filePath: string, symbolName?: string): BlastRadiusResult;
|
|
945
|
+
/**
|
|
946
|
+
* Near-duplicate entry pairs worth consolidating with brain_merge (see Fase E). Pairs
|
|
947
|
+
* at or above `hi` are excluded: those should have been refused at store time, so a
|
|
948
|
+
* surviving one is a `forget one of them` case, not a merge — report those separately
|
|
949
|
+
* via the same call with lo=hi. Bounded: at most `sample` entries each issue one
|
|
950
|
+
* search, and at most 20 pairs come back.
|
|
951
|
+
*/
|
|
952
|
+
findMergeCandidates(opts?: {
|
|
953
|
+
sample?: number;
|
|
954
|
+
lo?: number;
|
|
955
|
+
hi?: number;
|
|
956
|
+
}): Array<{
|
|
957
|
+
ids: [string, string];
|
|
958
|
+
similarity: number;
|
|
959
|
+
queries: [string, string];
|
|
960
|
+
}>;
|
|
961
|
+
/**
|
|
962
|
+
* Full upkeep pass. Read-only over the corpus: revalidates the top-N most-reused
|
|
963
|
+
* memories by hash-compare, lists exact duplicates and merge candidates, dead weight,
|
|
964
|
+
* and the savings ledger — with a concrete suggested action per finding.
|
|
965
|
+
*/
|
|
966
|
+
upkeep(opts?: {
|
|
967
|
+
topN?: number;
|
|
968
|
+
sample?: number;
|
|
969
|
+
deep?: boolean;
|
|
970
|
+
}): BrainUpkeepReport;
|
|
729
971
|
/**
|
|
730
972
|
* Serialize memories to a portable NDJSON bundle: a header line, then one entry per line.
|
|
731
973
|
*
|
|
@@ -743,6 +985,46 @@ export declare class TheBrainV2 {
|
|
|
743
985
|
count: number;
|
|
744
986
|
skippedStale: number;
|
|
745
987
|
};
|
|
988
|
+
/**
|
|
989
|
+
* Classify one bundle line without touching the corpus. The single planning step behind
|
|
990
|
+
* both importBundle() (which then applies the plan) and previewImport() (which only
|
|
991
|
+
* reports it) — one classifier means a dry run can never disagree with the real thing
|
|
992
|
+
* about what would happen. Scrubbing the freshly-parsed object is safe: it is not
|
|
993
|
+
* corpus state yet.
|
|
994
|
+
*/
|
|
995
|
+
private planImportLine;
|
|
996
|
+
/** Fold the other side's counters into ours without losing feedback either side collected. */
|
|
997
|
+
private absorbImportCounters;
|
|
998
|
+
/** Split a bundle into candidate lines. No header means raw entries — see below. */
|
|
999
|
+
private static splitBundleLines;
|
|
1000
|
+
/**
|
|
1001
|
+
* What importBundle() WOULD do, without writing anything: counts, the first 50 items,
|
|
1002
|
+
* and opposite-outcome conflicts against the live corpus. Run this before importing a
|
|
1003
|
+
* bundle from a teammate or another machine — especially a large one — so a flood of
|
|
1004
|
+
* stale, wrong-project memories is a preview, not a surprise.
|
|
1005
|
+
*/
|
|
1006
|
+
previewImport(text: string, opts?: {
|
|
1007
|
+
markSource?: boolean;
|
|
1008
|
+
}): {
|
|
1009
|
+
ok: boolean;
|
|
1010
|
+
wouldImport: number;
|
|
1011
|
+
wouldUpdate: number;
|
|
1012
|
+
wouldSkip: number;
|
|
1013
|
+
items: Array<{
|
|
1014
|
+
id: string;
|
|
1015
|
+
query: string;
|
|
1016
|
+
action: 'import' | 'update' | 'skip';
|
|
1017
|
+
reason: string;
|
|
1018
|
+
}>;
|
|
1019
|
+
truncated: boolean;
|
|
1020
|
+
conflicts: Array<{
|
|
1021
|
+
id: string;
|
|
1022
|
+
query: string;
|
|
1023
|
+
outcome: 'confirmed' | 'failed';
|
|
1024
|
+
against: string;
|
|
1025
|
+
}>;
|
|
1026
|
+
message: string;
|
|
1027
|
+
};
|
|
746
1028
|
/**
|
|
747
1029
|
* Merge a bundle produced by exportBundle into this Brain.
|
|
748
1030
|
*
|
|
@@ -776,6 +1058,18 @@ export declare class TheBrainV2 {
|
|
|
776
1058
|
getStats(options?: {
|
|
777
1059
|
deep?: boolean;
|
|
778
1060
|
}): BrainStats;
|
|
1061
|
+
/**
|
|
1062
|
+
* Integrity + rollback posture in one cheap call (no hashing, no disk reads beyond a
|
|
1063
|
+
* directory listing). `ok` is false while an unverified read, a backup fallback, or an
|
|
1064
|
+
* undecryptable envelope is the reason this process is serving what it serves.
|
|
1065
|
+
*/
|
|
1066
|
+
health(): {
|
|
1067
|
+
ok: boolean;
|
|
1068
|
+
lastIssue: IntegrityIssue | null;
|
|
1069
|
+
snapshots: number;
|
|
1070
|
+
backups: boolean;
|
|
1071
|
+
encrypted: boolean;
|
|
1072
|
+
};
|
|
779
1073
|
clear(): void;
|
|
780
1074
|
}
|
|
781
1075
|
export declare function getBrain(): TheBrainV2;
|
|
@@ -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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"}
|