@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.
Files changed (99) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +5 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/protoplasm/auto_wrap.d.ts +33 -0
  6. package/dist/protoplasm/auto_wrap.d.ts.map +1 -0
  7. package/dist/protoplasm/auto_wrap.js +72 -0
  8. package/dist/protoplasm/auto_wrap.js.map +1 -0
  9. package/dist/protoplasm/crawl_planner.d.ts +14 -0
  10. package/dist/protoplasm/crawl_planner.d.ts.map +1 -0
  11. package/dist/protoplasm/crawl_planner.js +50 -0
  12. package/dist/protoplasm/crawl_planner.js.map +1 -0
  13. package/dist/protoplasm/criu_pickle.d.ts +49 -0
  14. package/dist/protoplasm/criu_pickle.d.ts.map +1 -0
  15. package/dist/protoplasm/criu_pickle.js +73 -0
  16. package/dist/protoplasm/criu_pickle.js.map +1 -0
  17. package/dist/protoplasm/extensions.test.d.ts +8 -0
  18. package/dist/protoplasm/extensions.test.d.ts.map +1 -0
  19. package/dist/protoplasm/extensions.test.js +175 -0
  20. package/dist/protoplasm/extensions.test.js.map +1 -0
  21. package/dist/protoplasm/findings_ledger.d.ts +19 -0
  22. package/dist/protoplasm/findings_ledger.d.ts.map +1 -0
  23. package/dist/protoplasm/findings_ledger.js +81 -0
  24. package/dist/protoplasm/findings_ledger.js.map +1 -0
  25. package/dist/protoplasm/ghost_cell.d.ts +30 -0
  26. package/dist/protoplasm/ghost_cell.d.ts.map +1 -0
  27. package/dist/protoplasm/ghost_cell.js +95 -0
  28. package/dist/protoplasm/ghost_cell.js.map +1 -0
  29. package/dist/protoplasm/hydra_quorum.d.ts +43 -0
  30. package/dist/protoplasm/hydra_quorum.d.ts.map +1 -0
  31. package/dist/protoplasm/hydra_quorum.js +124 -0
  32. package/dist/protoplasm/hydra_quorum.js.map +1 -0
  33. package/dist/protoplasm/immortal.test.d.ts +12 -0
  34. package/dist/protoplasm/immortal.test.d.ts.map +1 -0
  35. package/dist/protoplasm/immortal.test.js +118 -0
  36. package/dist/protoplasm/immortal.test.js.map +1 -0
  37. package/dist/protoplasm/index.d.ts +52 -0
  38. package/dist/protoplasm/index.d.ts.map +1 -0
  39. package/dist/protoplasm/index.js +53 -0
  40. package/dist/protoplasm/index.js.map +1 -0
  41. package/dist/protoplasm/lan_gossip.d.ts +75 -0
  42. package/dist/protoplasm/lan_gossip.d.ts.map +1 -0
  43. package/dist/protoplasm/lan_gossip.js +140 -0
  44. package/dist/protoplasm/lan_gossip.js.map +1 -0
  45. package/dist/protoplasm/orchestrator.d.ts +29 -0
  46. package/dist/protoplasm/orchestrator.d.ts.map +1 -0
  47. package/dist/protoplasm/orchestrator.js +60 -0
  48. package/dist/protoplasm/orchestrator.js.map +1 -0
  49. package/dist/protoplasm/parasite.d.ts +42 -0
  50. package/dist/protoplasm/parasite.d.ts.map +1 -0
  51. package/dist/protoplasm/parasite.js +69 -0
  52. package/dist/protoplasm/parasite.js.map +1 -0
  53. package/dist/protoplasm/phoenix_hook.d.ts +49 -0
  54. package/dist/protoplasm/phoenix_hook.d.ts.map +1 -0
  55. package/dist/protoplasm/phoenix_hook.js +64 -0
  56. package/dist/protoplasm/phoenix_hook.js.map +1 -0
  57. package/dist/protoplasm/protoplasm.test.d.ts +13 -0
  58. package/dist/protoplasm/protoplasm.test.d.ts.map +1 -0
  59. package/dist/protoplasm/protoplasm.test.js +142 -0
  60. package/dist/protoplasm/protoplasm.test.js.map +1 -0
  61. package/dist/protoplasm/quantum_probe.d.ts +21 -0
  62. package/dist/protoplasm/quantum_probe.d.ts.map +1 -0
  63. package/dist/protoplasm/quantum_probe.js +118 -0
  64. package/dist/protoplasm/quantum_probe.js.map +1 -0
  65. package/dist/protoplasm/seamless_boot.d.ts +28 -0
  66. package/dist/protoplasm/seamless_boot.d.ts.map +1 -0
  67. package/dist/protoplasm/seamless_boot.js +106 -0
  68. package/dist/protoplasm/seamless_boot.js.map +1 -0
  69. package/dist/protoplasm/super_quan_probe.d.ts +24 -0
  70. package/dist/protoplasm/super_quan_probe.d.ts.map +1 -0
  71. package/dist/protoplasm/super_quan_probe.js +132 -0
  72. package/dist/protoplasm/super_quan_probe.js.map +1 -0
  73. package/dist/protoplasm/ts_auto_wrap.d.ts +53 -0
  74. package/dist/protoplasm/ts_auto_wrap.d.ts.map +1 -0
  75. package/dist/protoplasm/ts_auto_wrap.js +102 -0
  76. package/dist/protoplasm/ts_auto_wrap.js.map +1 -0
  77. package/dist/protoplasm/types.d.ts +84 -0
  78. package/dist/protoplasm/types.d.ts.map +1 -0
  79. package/dist/protoplasm/types.js +9 -0
  80. package/dist/protoplasm/types.js.map +1 -0
  81. package/dist/protoplasm/usb_soul.d.ts +35 -0
  82. package/dist/protoplasm/usb_soul.d.ts.map +1 -0
  83. package/dist/protoplasm/usb_soul.js +162 -0
  84. package/dist/protoplasm/usb_soul.js.map +1 -0
  85. package/dist/protoplasm/wal.d.ts +46 -0
  86. package/dist/protoplasm/wal.d.ts.map +1 -0
  87. package/dist/protoplasm/wal.js +145 -0
  88. package/dist/protoplasm/wal.js.map +1 -0
  89. package/dist/protoplasm/wisdom_space.d.ts +30 -0
  90. package/dist/protoplasm/wisdom_space.d.ts.map +1 -0
  91. package/dist/protoplasm/wisdom_space.js +77 -0
  92. package/dist/protoplasm/wisdom_space.js.map +1 -0
  93. package/dist/truth_gate/claims.d.ts.map +1 -1
  94. package/dist/truth_gate/claims.js +18 -0
  95. package/dist/truth_gate/claims.js.map +1 -1
  96. package/dist/truth_gate/probes.d.ts.map +1 -1
  97. package/dist/truth_gate/probes.js +42 -0
  98. package/dist/truth_gate/probes.js.map +1 -1
  99. 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,CA4kB9C,CAAC"}
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;AAy7DnE,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"}
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"}