@mneme-ai/core 2.66.0 → 2.68.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/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/protoplasm/auto_wrap.d.ts +33 -0
- package/dist/protoplasm/auto_wrap.d.ts.map +1 -0
- package/dist/protoplasm/auto_wrap.js +72 -0
- package/dist/protoplasm/auto_wrap.js.map +1 -0
- package/dist/protoplasm/crawl_planner.d.ts +14 -0
- package/dist/protoplasm/crawl_planner.d.ts.map +1 -0
- package/dist/protoplasm/crawl_planner.js +50 -0
- package/dist/protoplasm/crawl_planner.js.map +1 -0
- package/dist/protoplasm/criu_pickle.d.ts +49 -0
- package/dist/protoplasm/criu_pickle.d.ts.map +1 -0
- package/dist/protoplasm/criu_pickle.js +73 -0
- package/dist/protoplasm/criu_pickle.js.map +1 -0
- package/dist/protoplasm/extensions.test.d.ts +8 -0
- package/dist/protoplasm/extensions.test.d.ts.map +1 -0
- package/dist/protoplasm/extensions.test.js +175 -0
- package/dist/protoplasm/extensions.test.js.map +1 -0
- package/dist/protoplasm/findings_ledger.d.ts +19 -0
- package/dist/protoplasm/findings_ledger.d.ts.map +1 -0
- package/dist/protoplasm/findings_ledger.js +81 -0
- package/dist/protoplasm/findings_ledger.js.map +1 -0
- package/dist/protoplasm/ghost_cell.d.ts +30 -0
- package/dist/protoplasm/ghost_cell.d.ts.map +1 -0
- package/dist/protoplasm/ghost_cell.js +95 -0
- package/dist/protoplasm/ghost_cell.js.map +1 -0
- package/dist/protoplasm/hydra_quorum.d.ts +43 -0
- package/dist/protoplasm/hydra_quorum.d.ts.map +1 -0
- package/dist/protoplasm/hydra_quorum.js +124 -0
- package/dist/protoplasm/hydra_quorum.js.map +1 -0
- package/dist/protoplasm/immortal.test.d.ts +12 -0
- package/dist/protoplasm/immortal.test.d.ts.map +1 -0
- package/dist/protoplasm/immortal.test.js +118 -0
- package/dist/protoplasm/immortal.test.js.map +1 -0
- package/dist/protoplasm/index.d.ts +52 -0
- package/dist/protoplasm/index.d.ts.map +1 -0
- package/dist/protoplasm/index.js +53 -0
- package/dist/protoplasm/index.js.map +1 -0
- package/dist/protoplasm/lan_gossip.d.ts +75 -0
- package/dist/protoplasm/lan_gossip.d.ts.map +1 -0
- package/dist/protoplasm/lan_gossip.js +140 -0
- package/dist/protoplasm/lan_gossip.js.map +1 -0
- package/dist/protoplasm/orchestrator.d.ts +29 -0
- package/dist/protoplasm/orchestrator.d.ts.map +1 -0
- package/dist/protoplasm/orchestrator.js +60 -0
- package/dist/protoplasm/orchestrator.js.map +1 -0
- package/dist/protoplasm/parasite.d.ts +42 -0
- package/dist/protoplasm/parasite.d.ts.map +1 -0
- package/dist/protoplasm/parasite.js +69 -0
- package/dist/protoplasm/parasite.js.map +1 -0
- package/dist/protoplasm/phoenix_hook.d.ts +49 -0
- package/dist/protoplasm/phoenix_hook.d.ts.map +1 -0
- package/dist/protoplasm/phoenix_hook.js +64 -0
- package/dist/protoplasm/phoenix_hook.js.map +1 -0
- package/dist/protoplasm/protoplasm.test.d.ts +13 -0
- package/dist/protoplasm/protoplasm.test.d.ts.map +1 -0
- package/dist/protoplasm/protoplasm.test.js +142 -0
- package/dist/protoplasm/protoplasm.test.js.map +1 -0
- package/dist/protoplasm/quantum_probe.d.ts +21 -0
- package/dist/protoplasm/quantum_probe.d.ts.map +1 -0
- package/dist/protoplasm/quantum_probe.js +118 -0
- package/dist/protoplasm/quantum_probe.js.map +1 -0
- package/dist/protoplasm/seamless_boot.d.ts +28 -0
- package/dist/protoplasm/seamless_boot.d.ts.map +1 -0
- package/dist/protoplasm/seamless_boot.js +106 -0
- package/dist/protoplasm/seamless_boot.js.map +1 -0
- package/dist/protoplasm/super_quan_probe.d.ts +24 -0
- package/dist/protoplasm/super_quan_probe.d.ts.map +1 -0
- package/dist/protoplasm/super_quan_probe.js +132 -0
- package/dist/protoplasm/super_quan_probe.js.map +1 -0
- package/dist/protoplasm/ts_auto_wrap.d.ts +53 -0
- package/dist/protoplasm/ts_auto_wrap.d.ts.map +1 -0
- package/dist/protoplasm/ts_auto_wrap.js +102 -0
- package/dist/protoplasm/ts_auto_wrap.js.map +1 -0
- package/dist/protoplasm/types.d.ts +84 -0
- package/dist/protoplasm/types.d.ts.map +1 -0
- package/dist/protoplasm/types.js +9 -0
- package/dist/protoplasm/types.js.map +1 -0
- package/dist/protoplasm/usb_soul.d.ts +35 -0
- package/dist/protoplasm/usb_soul.d.ts.map +1 -0
- package/dist/protoplasm/usb_soul.js +162 -0
- package/dist/protoplasm/usb_soul.js.map +1 -0
- package/dist/protoplasm/wal.d.ts +46 -0
- package/dist/protoplasm/wal.d.ts.map +1 -0
- package/dist/protoplasm/wal.js +145 -0
- package/dist/protoplasm/wal.js.map +1 -0
- package/dist/protoplasm/wisdom_space.d.ts +30 -0
- package/dist/protoplasm/wisdom_space.d.ts.map +1 -0
- package/dist/protoplasm/wisdom_space.js +77 -0
- package/dist/protoplasm/wisdom_space.js.map +1 -0
- package/dist/truth_gate/claims.d.ts.map +1 -1
- package/dist/truth_gate/claims.js +18 -0
- package/dist/truth_gate/claims.js.map +1 -1
- package/dist/truth_gate/probes.d.ts.map +1 -1
- package/dist/truth_gate/probes.js +42 -0
- package/dist/truth_gate/probes.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 🧬 PROTOPLASM — USB SOUL
|
|
3
|
+
*
|
|
4
|
+
* Write the WAL ledger + findings + HMAC key to a portable mount point
|
|
5
|
+
* (USB / SD card / network share). Plug into another machine → resume.
|
|
6
|
+
*
|
|
7
|
+
* Mount detection:
|
|
8
|
+
* - env MNEME_USB_SOUL_PATH=<path> (explicit override, recommended)
|
|
9
|
+
* - .mneme/usb_mount file (per-repo pinned mount)
|
|
10
|
+
* - autodetect: Windows D:/-Z:/ removable drives; macOS /Volumes; Linux /media+/mnt
|
|
11
|
+
*
|
|
12
|
+
* Sync:
|
|
13
|
+
* syncTo(path) — copy WAL + findings + (optionally encrypted) key
|
|
14
|
+
* syncFrom(path) — replay WAL from USB into local .mneme/protoplasm/
|
|
15
|
+
* verifyMount(p) — quick sanity (writable + has expected layout)
|
|
16
|
+
*
|
|
17
|
+
* Encryption: key file is HMAC-encrypted with passphrase when --encrypt flag.
|
|
18
|
+
* Without passphrase, key is stored plain (warning).
|
|
19
|
+
*/
|
|
20
|
+
import { existsSync, copyFileSync, mkdirSync, readdirSync, statSync, readFileSync, writeFileSync } from "node:fs";
|
|
21
|
+
import { join } from "node:path";
|
|
22
|
+
import { execSync } from "node:child_process";
|
|
23
|
+
import { createHmac } from "node:crypto";
|
|
24
|
+
const REQUIRED_FILES = ["wal.jsonl", "findings.jsonl", ".key"];
|
|
25
|
+
function detectMounts() {
|
|
26
|
+
const out = [];
|
|
27
|
+
const plat = process.platform;
|
|
28
|
+
try {
|
|
29
|
+
if (plat === "win32") {
|
|
30
|
+
// Use wmic to enumerate removable drives
|
|
31
|
+
const stdout = execSync("wmic logicaldisk where DriveType=2 get Caption /value", { encoding: "utf8", timeout: 3000 });
|
|
32
|
+
for (const m of stdout.matchAll(/Caption=([A-Z]:)/g))
|
|
33
|
+
out.push(m[1] + "\\");
|
|
34
|
+
}
|
|
35
|
+
else if (plat === "darwin") {
|
|
36
|
+
if (existsSync("/Volumes"))
|
|
37
|
+
for (const v of readdirSync("/Volumes")) {
|
|
38
|
+
if (v !== "Macintosh HD")
|
|
39
|
+
out.push("/Volumes/" + v);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
for (const root of ["/media", "/mnt", "/run/media"]) {
|
|
44
|
+
if (!existsSync(root))
|
|
45
|
+
continue;
|
|
46
|
+
for (const u of readdirSync(root)) {
|
|
47
|
+
const p = join(root, u);
|
|
48
|
+
try {
|
|
49
|
+
if (statSync(p).isDirectory())
|
|
50
|
+
out.push(p);
|
|
51
|
+
}
|
|
52
|
+
catch { /* */ }
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
catch { /* */ }
|
|
58
|
+
return out;
|
|
59
|
+
}
|
|
60
|
+
export function pickMount() {
|
|
61
|
+
const env = process.env.MNEME_USB_SOUL_PATH;
|
|
62
|
+
if (env && existsSync(env))
|
|
63
|
+
return env;
|
|
64
|
+
try {
|
|
65
|
+
if (existsSync(".mneme/usb_mount")) {
|
|
66
|
+
const p = readFileSync(".mneme/usb_mount", "utf8").trim();
|
|
67
|
+
if (existsSync(p))
|
|
68
|
+
return p;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
catch { /* */ }
|
|
72
|
+
const detected = detectMounts();
|
|
73
|
+
return detected[0] ?? null;
|
|
74
|
+
}
|
|
75
|
+
export function verifyMount(mount) {
|
|
76
|
+
if (!existsSync(mount))
|
|
77
|
+
return { ok: false, writable: false, hasLayout: false };
|
|
78
|
+
let writable = false;
|
|
79
|
+
try {
|
|
80
|
+
const test = join(mount, ".mneme-soul-write-test");
|
|
81
|
+
writeFileSync(test, String(Date.now()));
|
|
82
|
+
writable = true;
|
|
83
|
+
try {
|
|
84
|
+
require("node:fs").unlinkSync(test);
|
|
85
|
+
}
|
|
86
|
+
catch { /* */ }
|
|
87
|
+
}
|
|
88
|
+
catch {
|
|
89
|
+
writable = false;
|
|
90
|
+
}
|
|
91
|
+
const hasLayout = existsSync(join(mount, "mneme-soul"));
|
|
92
|
+
return { ok: writable, writable, hasLayout };
|
|
93
|
+
}
|
|
94
|
+
function obfuscateKey(plain, passphrase) {
|
|
95
|
+
return createHmac("sha256", passphrase).update(plain).digest("hex");
|
|
96
|
+
}
|
|
97
|
+
export function syncTo(mount, ledgerDir, encryptPassphrase) {
|
|
98
|
+
if (!existsSync(mount))
|
|
99
|
+
return { ok: false, mount, reason: "mount does not exist" };
|
|
100
|
+
const dst = join(mount, "mneme-soul");
|
|
101
|
+
try {
|
|
102
|
+
mkdirSync(dst, { recursive: true });
|
|
103
|
+
const copied = [];
|
|
104
|
+
let bytes = 0;
|
|
105
|
+
for (const f of REQUIRED_FILES) {
|
|
106
|
+
const src = join(ledgerDir, f);
|
|
107
|
+
if (!existsSync(src))
|
|
108
|
+
continue;
|
|
109
|
+
const dstFile = join(dst, f);
|
|
110
|
+
if (f === ".key" && encryptPassphrase) {
|
|
111
|
+
const raw = readFileSync(src, "utf8");
|
|
112
|
+
writeFileSync(dstFile + ".enc", obfuscateKey(raw, encryptPassphrase));
|
|
113
|
+
copied.push(f + ".enc");
|
|
114
|
+
bytes += dstFile.length;
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
copyFileSync(src, dstFile);
|
|
118
|
+
copied.push(f);
|
|
119
|
+
bytes += statSync(src).size;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
// marker for future syncFrom detection
|
|
123
|
+
writeFileSync(join(dst, "soul.manifest.json"), JSON.stringify({
|
|
124
|
+
syncedAt: new Date().toISOString(),
|
|
125
|
+
sourcePid: process.pid,
|
|
126
|
+
hostHint: process.env.COMPUTERNAME ?? process.env.HOSTNAME ?? "unknown",
|
|
127
|
+
files: copied,
|
|
128
|
+
encrypted: Boolean(encryptPassphrase),
|
|
129
|
+
}, null, 2));
|
|
130
|
+
return { ok: true, mount, copied, bytesWritten: bytes };
|
|
131
|
+
}
|
|
132
|
+
catch (e) {
|
|
133
|
+
return { ok: false, mount, reason: e.message };
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
export function syncFrom(mount, ledgerDir) {
|
|
137
|
+
const src = join(mount, "mneme-soul");
|
|
138
|
+
if (!existsSync(src))
|
|
139
|
+
return { ok: false, mount, reason: "no mneme-soul/ folder on mount" };
|
|
140
|
+
try {
|
|
141
|
+
mkdirSync(ledgerDir, { recursive: true });
|
|
142
|
+
const copied = [];
|
|
143
|
+
let bytes = 0;
|
|
144
|
+
for (const entry of readdirSync(src)) {
|
|
145
|
+
if (entry === "soul.manifest.json")
|
|
146
|
+
continue;
|
|
147
|
+
const srcFile = join(src, entry);
|
|
148
|
+
const dstFile = join(ledgerDir, entry.replace(/\.enc$/, ""));
|
|
149
|
+
try {
|
|
150
|
+
copyFileSync(srcFile, dstFile);
|
|
151
|
+
copied.push(entry);
|
|
152
|
+
bytes += statSync(srcFile).size;
|
|
153
|
+
}
|
|
154
|
+
catch { /* */ }
|
|
155
|
+
}
|
|
156
|
+
return { ok: true, mount, copied, bytesWritten: bytes };
|
|
157
|
+
}
|
|
158
|
+
catch (e) {
|
|
159
|
+
return { ok: false, mount, reason: e.message };
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
//# sourceMappingURL=usb_soul.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usb_soul.js","sourceRoot":"","sources":["../../src/protoplasm/usb_soul.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 🩸 PROTOPLASM — WAL (Write-Ahead Log)
|
|
3
|
+
*
|
|
4
|
+
* Survives uncatchable kills (SIGKILL, SIGSEGV, OS reboot).
|
|
5
|
+
*
|
|
6
|
+
* Strategy: every baseline mutation persists to disk BEFORE RAM update.
|
|
7
|
+
* Process death = baseline survives. Next start reads WAL → reconstructs.
|
|
8
|
+
*
|
|
9
|
+
* WAL format: append-only JSONL at .mneme/protoplasm/wal.jsonl
|
|
10
|
+
* Each row = { ts, fnId, op, payload, prevHmac, hmac }
|
|
11
|
+
*
|
|
12
|
+
* Compaction: when WAL exceeds 5MB, snapshot baselines to baselines.json
|
|
13
|
+
* + truncate WAL to entries since snapshot.
|
|
14
|
+
*/
|
|
15
|
+
import type { FunctionBaseline } from "./types.js";
|
|
16
|
+
export type WalOp = "baseline_set" | "buffer_evict" | "config_set";
|
|
17
|
+
export interface WalRow {
|
|
18
|
+
ts: string;
|
|
19
|
+
fnId: string;
|
|
20
|
+
op: WalOp;
|
|
21
|
+
payload: unknown;
|
|
22
|
+
prevHmac: string;
|
|
23
|
+
hmac: string;
|
|
24
|
+
}
|
|
25
|
+
export declare class Wal {
|
|
26
|
+
private path;
|
|
27
|
+
private secret;
|
|
28
|
+
private lastHmac;
|
|
29
|
+
private compactionThresholdBytes;
|
|
30
|
+
constructor(walDir: string, secret: string);
|
|
31
|
+
private computeLastHmac;
|
|
32
|
+
/** Append op to WAL. Synchronous + flush — survives unexpected death. */
|
|
33
|
+
append(op: WalOp, fnId: string, payload: unknown): WalRow;
|
|
34
|
+
/** Replay WAL → reconstruct baseline map. Idempotent. */
|
|
35
|
+
replay(): Map<string, FunctionBaseline>;
|
|
36
|
+
/** Verify chain integrity (chain HMAC continuity). */
|
|
37
|
+
verify(): {
|
|
38
|
+
ok: boolean;
|
|
39
|
+
rows: number;
|
|
40
|
+
brokenAt?: number;
|
|
41
|
+
};
|
|
42
|
+
/** Compact WAL → snapshot if file exceeds threshold. */
|
|
43
|
+
private maybeCompact;
|
|
44
|
+
path_for_test(): string;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=wal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wal.d.ts","sourceRoot":"","sources":["../../src/protoplasm/wal.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAEnD,MAAM,MAAM,KAAK,GAAG,cAAc,GAAG,cAAc,GAAG,YAAY,CAAC;AAEnE,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,KAAK,CAAC;IACV,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;CACd;AAmBD,qBAAa,GAAG;IACd,OAAO,CAAC,IAAI,CAAS;IACrB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,wBAAwB,CAAmB;gBAEvC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IAO1C,OAAO,CAAC,eAAe;IAWvB,yEAAyE;IACzE,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM;IAUzD,yDAAyD;IACzD,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC;IAsBvC,sDAAsD;IACtD,MAAM,IAAI;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE;IAiB1D,wDAAwD;IACxD,OAAO,CAAC,YAAY;IAiBpB,aAAa,IAAI,MAAM;CACxB"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 🩸 PROTOPLASM — WAL (Write-Ahead Log)
|
|
3
|
+
*
|
|
4
|
+
* Survives uncatchable kills (SIGKILL, SIGSEGV, OS reboot).
|
|
5
|
+
*
|
|
6
|
+
* Strategy: every baseline mutation persists to disk BEFORE RAM update.
|
|
7
|
+
* Process death = baseline survives. Next start reads WAL → reconstructs.
|
|
8
|
+
*
|
|
9
|
+
* WAL format: append-only JSONL at .mneme/protoplasm/wal.jsonl
|
|
10
|
+
* Each row = { ts, fnId, op, payload, prevHmac, hmac }
|
|
11
|
+
*
|
|
12
|
+
* Compaction: when WAL exceeds 5MB, snapshot baselines to baselines.json
|
|
13
|
+
* + truncate WAL to entries since snapshot.
|
|
14
|
+
*/
|
|
15
|
+
import { existsSync, statSync, readFileSync, appendFileSync, writeFileSync, mkdirSync, renameSync } from "node:fs";
|
|
16
|
+
import { join } from "node:path";
|
|
17
|
+
import { createHmac } from "node:crypto";
|
|
18
|
+
/** Recursive canonical JSON: sort all keys at every depth, drop undefined. */
|
|
19
|
+
function canonical(v) {
|
|
20
|
+
if (v === null || typeof v !== "object")
|
|
21
|
+
return v;
|
|
22
|
+
if (Array.isArray(v))
|
|
23
|
+
return v.map(canonical);
|
|
24
|
+
const out = {};
|
|
25
|
+
for (const k of Object.keys(v).sort()) {
|
|
26
|
+
const val = v[k];
|
|
27
|
+
if (val !== undefined)
|
|
28
|
+
out[k] = canonical(val);
|
|
29
|
+
}
|
|
30
|
+
return out;
|
|
31
|
+
}
|
|
32
|
+
function hmacRow(prev, body, secret) {
|
|
33
|
+
const canon = JSON.stringify(canonical(body));
|
|
34
|
+
return createHmac("sha256", secret).update(prev + "::" + canon).digest("hex").slice(0, 16);
|
|
35
|
+
}
|
|
36
|
+
export class Wal {
|
|
37
|
+
path;
|
|
38
|
+
secret;
|
|
39
|
+
lastHmac = "0".repeat(16);
|
|
40
|
+
compactionThresholdBytes = 5 * 1024 * 1024; // 5MB
|
|
41
|
+
constructor(walDir, secret) {
|
|
42
|
+
mkdirSync(walDir, { recursive: true });
|
|
43
|
+
this.path = join(walDir, "wal.jsonl");
|
|
44
|
+
this.secret = secret;
|
|
45
|
+
this.lastHmac = this.computeLastHmac();
|
|
46
|
+
}
|
|
47
|
+
computeLastHmac() {
|
|
48
|
+
if (!existsSync(this.path))
|
|
49
|
+
return "0".repeat(16);
|
|
50
|
+
try {
|
|
51
|
+
const content = readFileSync(this.path, "utf8").trim();
|
|
52
|
+
if (!content)
|
|
53
|
+
return "0".repeat(16);
|
|
54
|
+
const lines = content.split("\n");
|
|
55
|
+
const last = JSON.parse(lines[lines.length - 1]);
|
|
56
|
+
return last.hmac;
|
|
57
|
+
}
|
|
58
|
+
catch {
|
|
59
|
+
return "0".repeat(16);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
/** Append op to WAL. Synchronous + flush — survives unexpected death. */
|
|
63
|
+
append(op, fnId, payload) {
|
|
64
|
+
const body = { ts: new Date().toISOString(), fnId, op, payload, prevHmac: this.lastHmac };
|
|
65
|
+
const hmac = hmacRow(this.lastHmac, body, this.secret);
|
|
66
|
+
const row = { ...body, hmac };
|
|
67
|
+
appendFileSync(this.path, JSON.stringify(row) + "\n", { encoding: "utf8", flush: true });
|
|
68
|
+
this.lastHmac = hmac;
|
|
69
|
+
this.maybeCompact();
|
|
70
|
+
return row;
|
|
71
|
+
}
|
|
72
|
+
/** Replay WAL → reconstruct baseline map. Idempotent. */
|
|
73
|
+
replay() {
|
|
74
|
+
const baselines = new Map();
|
|
75
|
+
const snapshotPath = this.path.replace("wal.jsonl", "baselines.json");
|
|
76
|
+
// Load snapshot first (compaction product)
|
|
77
|
+
if (existsSync(snapshotPath)) {
|
|
78
|
+
try {
|
|
79
|
+
const snap = JSON.parse(readFileSync(snapshotPath, "utf8"));
|
|
80
|
+
for (const [k, v] of Object.entries(snap))
|
|
81
|
+
baselines.set(k, v);
|
|
82
|
+
}
|
|
83
|
+
catch { /* ignore corrupt snapshot — fall back to full WAL */ }
|
|
84
|
+
}
|
|
85
|
+
if (!existsSync(this.path))
|
|
86
|
+
return baselines;
|
|
87
|
+
const content = readFileSync(this.path, "utf8").trim();
|
|
88
|
+
if (!content)
|
|
89
|
+
return baselines;
|
|
90
|
+
for (const line of content.split("\n")) {
|
|
91
|
+
try {
|
|
92
|
+
const row = JSON.parse(line);
|
|
93
|
+
if (row.op === "baseline_set")
|
|
94
|
+
baselines.set(row.fnId, row.payload);
|
|
95
|
+
}
|
|
96
|
+
catch { /* skip malformed */ }
|
|
97
|
+
}
|
|
98
|
+
return baselines;
|
|
99
|
+
}
|
|
100
|
+
/** Verify chain integrity (chain HMAC continuity). */
|
|
101
|
+
verify() {
|
|
102
|
+
if (!existsSync(this.path))
|
|
103
|
+
return { ok: true, rows: 0 };
|
|
104
|
+
const lines = readFileSync(this.path, "utf8").trim().split("\n").filter(Boolean);
|
|
105
|
+
let prev = "0".repeat(16);
|
|
106
|
+
for (let i = 0; i < lines.length; i++) {
|
|
107
|
+
try {
|
|
108
|
+
const row = JSON.parse(lines[i]);
|
|
109
|
+
if (row.prevHmac !== prev)
|
|
110
|
+
return { ok: false, rows: lines.length, brokenAt: i };
|
|
111
|
+
const { hmac, ...body } = row;
|
|
112
|
+
const recomputed = hmacRow(prev, body, this.secret);
|
|
113
|
+
if (recomputed !== hmac)
|
|
114
|
+
return { ok: false, rows: lines.length, brokenAt: i };
|
|
115
|
+
prev = hmac;
|
|
116
|
+
}
|
|
117
|
+
catch {
|
|
118
|
+
return { ok: false, rows: lines.length, brokenAt: i };
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
return { ok: true, rows: lines.length };
|
|
122
|
+
}
|
|
123
|
+
/** Compact WAL → snapshot if file exceeds threshold. */
|
|
124
|
+
maybeCompact() {
|
|
125
|
+
try {
|
|
126
|
+
const sz = statSync(this.path).size;
|
|
127
|
+
if (sz < this.compactionThresholdBytes)
|
|
128
|
+
return;
|
|
129
|
+
const baselines = this.replay();
|
|
130
|
+
const snapshotPath = this.path.replace("wal.jsonl", "baselines.json");
|
|
131
|
+
const obj = {};
|
|
132
|
+
for (const [k, v] of baselines)
|
|
133
|
+
obj[k] = v;
|
|
134
|
+
writeFileSync(snapshotPath, JSON.stringify(obj), "utf8");
|
|
135
|
+
// Truncate WAL atomically: write empty + reset chain
|
|
136
|
+
const tmpPath = this.path + ".tmp";
|
|
137
|
+
writeFileSync(tmpPath, "", "utf8");
|
|
138
|
+
renameSync(tmpPath, this.path);
|
|
139
|
+
this.lastHmac = "0".repeat(16);
|
|
140
|
+
}
|
|
141
|
+
catch { /* compaction is best-effort */ }
|
|
142
|
+
}
|
|
143
|
+
path_for_test() { return this.path; }
|
|
144
|
+
}
|
|
145
|
+
//# sourceMappingURL=wal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wal.js","sourceRoot":"","sources":["../../src/protoplasm/wal.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 🦠 PROTOPLASM — wisdom_space
|
|
3
|
+
*
|
|
4
|
+
* When orchestrator marks a finding BROKEN → wisdom_space diagnoses root cause.
|
|
5
|
+
*
|
|
6
|
+
* Strategy:
|
|
7
|
+
* 1. Collect last N findings across ALL functions in same time window
|
|
8
|
+
* 2. Score upstream suspects by co-occurrence (broke around same time)
|
|
9
|
+
* 3. Detect "neighbor-broken-first" patterns (this fn broke 30s AFTER fnX broke)
|
|
10
|
+
* 4. Emit hypothesis + proposed heal actions
|
|
11
|
+
*
|
|
12
|
+
* The "wisdom" is the cross-function correlation — single-function metrics
|
|
13
|
+
* can't see "I broke because dep X broke 30 seconds ago".
|
|
14
|
+
*/
|
|
15
|
+
import type { SuperQuanFinding, WisdomRootCause } from "./types.js";
|
|
16
|
+
interface DiagnoseInput {
|
|
17
|
+
brokenFinding: SuperQuanFinding;
|
|
18
|
+
recentLedger: SuperQuanFinding[];
|
|
19
|
+
windowMs?: number;
|
|
20
|
+
}
|
|
21
|
+
export declare function diagnose(input: DiagnoseInput): WisdomRootCause;
|
|
22
|
+
/** Quick summary of recent ledger health. */
|
|
23
|
+
export declare function ledgerHealth(recent: SuperQuanFinding[]): {
|
|
24
|
+
broken: number;
|
|
25
|
+
warn: number;
|
|
26
|
+
healthy: number;
|
|
27
|
+
brokenRate: number;
|
|
28
|
+
};
|
|
29
|
+
export {};
|
|
30
|
+
//# sourceMappingURL=wisdom_space.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wisdom_space.d.ts","sourceRoot":"","sources":["../../src/protoplasm/wisdom_space.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAc,MAAM,YAAY,CAAC;AAEhF,UAAU,aAAa;IACrB,aAAa,EAAE,gBAAgB,CAAC;IAChC,YAAY,EAAE,gBAAgB,EAAE,CAAC;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,eAAe,CA0D9D;AAED,6CAA6C;AAC7C,wBAAgB,YAAY,CAAC,MAAM,EAAE,gBAAgB,EAAE,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,CAM9H"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 🦠 PROTOPLASM — wisdom_space
|
|
3
|
+
*
|
|
4
|
+
* When orchestrator marks a finding BROKEN → wisdom_space diagnoses root cause.
|
|
5
|
+
*
|
|
6
|
+
* Strategy:
|
|
7
|
+
* 1. Collect last N findings across ALL functions in same time window
|
|
8
|
+
* 2. Score upstream suspects by co-occurrence (broke around same time)
|
|
9
|
+
* 3. Detect "neighbor-broken-first" patterns (this fn broke 30s AFTER fnX broke)
|
|
10
|
+
* 4. Emit hypothesis + proposed heal actions
|
|
11
|
+
*
|
|
12
|
+
* The "wisdom" is the cross-function correlation — single-function metrics
|
|
13
|
+
* can't see "I broke because dep X broke 30 seconds ago".
|
|
14
|
+
*/
|
|
15
|
+
export function diagnose(input) {
|
|
16
|
+
const window = input.windowMs ?? 60_000;
|
|
17
|
+
const brokenAt = new Date(input.brokenFinding.at).getTime();
|
|
18
|
+
const inWindow = input.recentLedger.filter((f) => Math.abs(new Date(f.at).getTime() - brokenAt) <= window);
|
|
19
|
+
// Upstream suspects: other fns that turned broken WITHIN the window AND earlier
|
|
20
|
+
const earlierBroken = inWindow.filter((f) => f.fnId !== input.brokenFinding.fnId
|
|
21
|
+
&& f.outcome === "broken"
|
|
22
|
+
&& new Date(f.at).getTime() < brokenAt);
|
|
23
|
+
// Score by recency (earlier → higher suspect score)
|
|
24
|
+
const suspects = earlierBroken
|
|
25
|
+
.map((f) => ({ fnId: f.fnId, age: brokenAt - new Date(f.at).getTime(), reason: f.evidence }))
|
|
26
|
+
.sort((a, b) => b.age - a.age); // older = upstream
|
|
27
|
+
const upstreamSuspects = suspects.slice(0, 5).map((s) => s.fnId);
|
|
28
|
+
let hypothesis;
|
|
29
|
+
let confidence = 0.4;
|
|
30
|
+
const heals = [];
|
|
31
|
+
if (upstreamSuspects.length >= 2) {
|
|
32
|
+
hypothesis = `cascade failure from upstream: ${upstreamSuspects.join(" → ")}`;
|
|
33
|
+
confidence = 0.85;
|
|
34
|
+
heals.push({ kind: "request-supernova-restart", rationale: "multiple upstream functions broken — restart cycle to clear shared state" });
|
|
35
|
+
heals.push({ kind: "raise-truth-gate-block", rationale: "cascade detected — block any new release tag until heal verified" });
|
|
36
|
+
}
|
|
37
|
+
else if (upstreamSuspects.length === 1) {
|
|
38
|
+
hypothesis = `proximate cause: ${upstreamSuspects[0]} broke earlier in window`;
|
|
39
|
+
confidence = 0.7;
|
|
40
|
+
heals.push({ kind: "retry-with-backoff", rationale: "single upstream suspect — retry after upstream stabilizes" });
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
// No upstream suspects → check quantum signals
|
|
44
|
+
const qs = input.brokenFinding.quantumSignals;
|
|
45
|
+
if (qs.collapseStability < 0.5) {
|
|
46
|
+
hypothesis = "intrinsic instability — function throws on >50% of calls";
|
|
47
|
+
confidence = 0.6;
|
|
48
|
+
heals.push({ kind: "fallback-to-cached", rationale: "high throw rate — serve cached last-good response" });
|
|
49
|
+
}
|
|
50
|
+
else if (qs.chaosDivergence > 3) {
|
|
51
|
+
hypothesis = "duration variance spiking — likely external dep slowdown (network/disk/db)";
|
|
52
|
+
confidence = 0.55;
|
|
53
|
+
heals.push({ kind: "retry-with-backoff", rationale: "transient slowdown — backoff + retry" });
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
hypothesis = "unknown — z-score breach but no clear pattern";
|
|
57
|
+
confidence = 0.3;
|
|
58
|
+
heals.push({ kind: "noop", rationale: "insufficient signal — record + observe one more cycle before acting" });
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
return {
|
|
62
|
+
fnId: input.brokenFinding.fnId,
|
|
63
|
+
hypothesis,
|
|
64
|
+
upstreamSuspects,
|
|
65
|
+
confidence,
|
|
66
|
+
proposedHeal: heals,
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
/** Quick summary of recent ledger health. */
|
|
70
|
+
export function ledgerHealth(recent) {
|
|
71
|
+
const broken = recent.filter((f) => f.outcome === "broken").length;
|
|
72
|
+
const warn = recent.filter((f) => f.outcome === "warn").length;
|
|
73
|
+
const healthy = recent.filter((f) => f.outcome === "healthy").length;
|
|
74
|
+
const total = recent.length || 1;
|
|
75
|
+
return { broken, warn, healthy, brokenRate: broken / total };
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=wisdom_space.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wisdom_space.js","sourceRoot":"","sources":["../../src/protoplasm/wisdom_space.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claims.d.ts","sourceRoot":"","sources":["../../src/truth_gate/claims.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"claims.d.ts","sourceRoot":"","sources":["../../src/truth_gate/claims.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC,eAAO,MAAM,aAAa,EAAE,aAAa,CAAC,KAAK,CA8lB9C,CAAC"}
|
|
@@ -23,6 +23,24 @@
|
|
|
23
23
|
* are unmeasured.
|
|
24
24
|
*/
|
|
25
25
|
export const CLAIM_CATALOG = [
|
|
26
|
+
{
|
|
27
|
+
id: "claim.protoplasm.wal_survives_sigkill",
|
|
28
|
+
source: "v2.67.0 release notes",
|
|
29
|
+
text: "PROTOPLASM WAL ledger survives SIGKILL — state persists to disk before RAM update; new process can replay baselines from .mneme/protoplasm/wal.jsonl after uncatchable kill",
|
|
30
|
+
kind: "boolean",
|
|
31
|
+
asserted: { value: 1, op: "=", tolerance: 0 },
|
|
32
|
+
probeId: "probe.protoplasm.wal_chain_valid",
|
|
33
|
+
severity: "block",
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
id: "claim.protoplasm.seamless_boot_zero_config",
|
|
37
|
+
source: "v2.67.0 release notes",
|
|
38
|
+
text: "PROTOPLASM seamless boot — atom activates on any Mneme tool call without user config; heartbeat.json written automatically",
|
|
39
|
+
kind: "boolean",
|
|
40
|
+
asserted: { value: 1, op: "=", tolerance: 0 },
|
|
41
|
+
probeId: "probe.protoplasm.heartbeat_present_or_first_run",
|
|
42
|
+
severity: "warn",
|
|
43
|
+
},
|
|
26
44
|
{
|
|
27
45
|
id: "claim.tokens.capabilities_lt_25k",
|
|
28
46
|
source: "README · positioning",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claims.js","sourceRoot":"","sources":["../../src/truth_gate/claims.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"claims.js","sourceRoot":"","sources":["../../src/truth_gate/claims.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"probes.d.ts","sourceRoot":"","sources":["../../src/truth_gate/probes.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"probes.d.ts","sourceRoot":"","sources":["../../src/truth_gate/probes.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,KAAK,EAAE,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AA89DnE,eAAO,MAAM,UAAU,EAAE,aAAa,CAAC,KAAK,CAAU,CAAC;AAEvD,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,KAAK,GAAG,SAAS,CAEvD;AAED,wBAAsB,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAQlF"}
|