@mneme-ai/core 2.6.0 → 2.8.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 (74) hide show
  1. package/dist/ai_handshake.d.ts.map +1 -1
  2. package/dist/ai_handshake.js +9 -11
  3. package/dist/ai_handshake.js.map +1 -1
  4. package/dist/antivirus/vaccines.js +8 -8
  5. package/dist/antivirus/vaccines.js.map +1 -1
  6. package/dist/birthright/birthright.test.d.ts +2 -0
  7. package/dist/birthright/birthright.test.d.ts.map +1 -0
  8. package/dist/birthright/birthright.test.js +102 -0
  9. package/dist/birthright/birthright.test.js.map +1 -0
  10. package/dist/birthright/index.d.ts +85 -0
  11. package/dist/birthright/index.d.ts.map +1 -0
  12. package/dist/birthright/index.js +132 -0
  13. package/dist/birthright/index.js.map +1 -0
  14. package/dist/evolve/evolve.js +7 -7
  15. package/dist/evolve/evolve.js.map +1 -1
  16. package/dist/exodus/quantum_cache.js +7 -7
  17. package/dist/exodus/quantum_cache.js.map +1 -1
  18. package/dist/forensics/stack-priors.d.ts.map +1 -1
  19. package/dist/forensics/stack-priors.js +6 -8
  20. package/dist/forensics/stack-priors.js.map +1 -1
  21. package/dist/handoff/handoff.test.d.ts +2 -0
  22. package/dist/handoff/handoff.test.d.ts.map +1 -0
  23. package/dist/handoff/handoff.test.js +67 -0
  24. package/dist/handoff/handoff.test.js.map +1 -0
  25. package/dist/handoff/index.d.ts +86 -0
  26. package/dist/handoff/index.d.ts.map +1 -0
  27. package/dist/handoff/index.js +168 -0
  28. package/dist/handoff/index.js.map +1 -0
  29. package/dist/index.d.ts +8 -0
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +26 -0
  32. package/dist/index.js.map +1 -1
  33. package/dist/metron/code_audit.d.ts +55 -0
  34. package/dist/metron/code_audit.d.ts.map +1 -0
  35. package/dist/metron/code_audit.js +140 -0
  36. package/dist/metron/code_audit.js.map +1 -0
  37. package/dist/metron/code_audit.test.d.ts +2 -0
  38. package/dist/metron/code_audit.test.d.ts.map +1 -0
  39. package/dist/metron/code_audit.test.js +81 -0
  40. package/dist/metron/code_audit.test.js.map +1 -0
  41. package/dist/metron/index.d.ts +95 -0
  42. package/dist/metron/index.d.ts.map +1 -0
  43. package/dist/metron/index.js +393 -0
  44. package/dist/metron/index.js.map +1 -0
  45. package/dist/metron/metron.test.d.ts +2 -0
  46. package/dist/metron/metron.test.d.ts.map +1 -0
  47. package/dist/metron/metron.test.js +123 -0
  48. package/dist/metron/metron.test.js.map +1 -0
  49. package/dist/metron/update_notifier.d.ts +56 -0
  50. package/dist/metron/update_notifier.d.ts.map +1 -0
  51. package/dist/metron/update_notifier.js +162 -0
  52. package/dist/metron/update_notifier.js.map +1 -0
  53. package/dist/nucleus_daemon.d.ts.map +1 -1
  54. package/dist/nucleus_daemon.js +14 -14
  55. package/dist/nucleus_daemon.js.map +1 -1
  56. package/dist/pulse.js +13 -13
  57. package/dist/pulse.js.map +1 -1
  58. package/dist/shadow_consensus/index.d.ts +117 -0
  59. package/dist/shadow_consensus/index.d.ts.map +1 -0
  60. package/dist/shadow_consensus/index.js +132 -0
  61. package/dist/shadow_consensus/index.js.map +1 -0
  62. package/dist/shadow_consensus/shadow_consensus.test.d.ts +2 -0
  63. package/dist/shadow_consensus/shadow_consensus.test.d.ts.map +1 -0
  64. package/dist/shadow_consensus/shadow_consensus.test.js +84 -0
  65. package/dist/shadow_consensus/shadow_consensus.test.js.map +1 -0
  66. package/dist/util/best_effort.d.ts +32 -0
  67. package/dist/util/best_effort.d.ts.map +1 -0
  68. package/dist/util/best_effort.js +58 -0
  69. package/dist/util/best_effort.js.map +1 -0
  70. package/dist/wormhole/auto_wire.d.ts +68 -0
  71. package/dist/wormhole/auto_wire.d.ts.map +1 -0
  72. package/dist/wormhole/auto_wire.js +186 -0
  73. package/dist/wormhole/auto_wire.js.map +1 -0
  74. package/package.json +1 -1
@@ -0,0 +1,123 @@
1
+ import { describe, it, expect } from "vitest";
2
+ import { mkdtempSync, writeFileSync, mkdirSync } from "node:fs";
3
+ import { tmpdir } from "node:os";
4
+ import { join } from "node:path";
5
+ import { measureScorecard, verifyScorecard, formatScorecardPulseLine, AXES } from "./index.js";
6
+ function makeFakeRepo() {
7
+ const root = mkdtempSync(join(tmpdir(), "mneme-metron-test-"));
8
+ // Minimum surface METRON needs: packages/core/src + packages/mcp/src/tools + README.md
9
+ const coreSrc = join(root, "packages", "core", "src");
10
+ mkdirSync(coreSrc, { recursive: true });
11
+ writeFileSync(join(coreSrc, "index.ts"), [
12
+ 'export * as a from "./a/index.js";',
13
+ 'export * as b from "./b/index.js";',
14
+ ].join("\n"));
15
+ mkdirSync(join(coreSrc, "a"), { recursive: true });
16
+ writeFileSync(join(coreSrc, "a", "index.ts"), 'export function foo() { return 1; }\n');
17
+ mkdirSync(join(coreSrc, "b"), { recursive: true });
18
+ writeFileSync(join(coreSrc, "b", "index.ts"), 'import { foo } from "../a/index.js"; export const x = foo();\n');
19
+ // MCP tools dir with one tool that has BOTH examples + pitfalls.
20
+ const toolsDir = join(root, "packages", "mcp", "src", "tools");
21
+ mkdirSync(toolsDir, { recursive: true });
22
+ writeFileSync(join(toolsDir, "_demo_tools.ts"), [
23
+ 'export const demoTool = {',
24
+ ' name: "demo",',
25
+ ' examples: [{ q: "x" }],',
26
+ ' pitfalls: ["careful"],',
27
+ '};',
28
+ ].join("\n"));
29
+ writeFileSync(join(root, "README.md"), "Mneme is engineered toward 100% on synthetic bench.\n");
30
+ return root;
31
+ }
32
+ describe("v2.7 METRON · scorecard", () => {
33
+ it("produces a complete scorecard for a real repo path", () => {
34
+ const root = makeFakeRepo();
35
+ const card = measureScorecard({ repoRoot: root, testsPassed: 100, testsTotal: 100, mcpToolCount: 100, cliCommandCount: 20, silentCatchCount: 0, anyAnnotationCount: 0, sourceLines: 1000, noCache: true });
36
+ expect(card.axes.length).toBe(AXES.length);
37
+ expect(card.complete).toBe(true);
38
+ expect(card.overall).toBeGreaterThan(50);
39
+ expect(card.hmac.length).toBe(64);
40
+ });
41
+ it("every axis carries evidence + HMAC + method version", () => {
42
+ const root = makeFakeRepo();
43
+ const card = measureScorecard({ repoRoot: root, noCache: true });
44
+ for (const a of card.axes) {
45
+ expect(a.method).toMatch(/^metron-v1\//);
46
+ expect(a.hmac.length).toBe(64);
47
+ expect(a.measurements).toBeDefined();
48
+ expect(a.rationale.length).toBeGreaterThan(0);
49
+ }
50
+ });
51
+ it("verifyScorecard returns ok for an untampered card", () => {
52
+ const root = makeFakeRepo();
53
+ const card = measureScorecard({ repoRoot: root, secret: "test-secret", noCache: true });
54
+ const v = verifyScorecard(card, "test-secret");
55
+ expect(v.ok).toBe(true);
56
+ expect(v.cardHmacOk).toBe(true);
57
+ expect(v.tamperedAxes).toEqual([]);
58
+ });
59
+ it("verifyScorecard catches a tampered axis score", () => {
60
+ const root = makeFakeRepo();
61
+ const card = measureScorecard({ repoRoot: root, secret: "test-secret", noCache: true });
62
+ // Tamper: bump capability score without re-signing.
63
+ const tampered = { ...card, axes: card.axes.map((a) => a.axis === "capability" ? { ...a, score: 99 } : a) };
64
+ const v = verifyScorecard(tampered, "test-secret");
65
+ expect(v.ok).toBe(false);
66
+ expect(v.tamperedAxes).toContain("capability");
67
+ });
68
+ it("verifyScorecard catches a tampered overall score", () => {
69
+ const root = makeFakeRepo();
70
+ const card = measureScorecard({ repoRoot: root, secret: "test-secret", noCache: true });
71
+ const tampered = { ...card, overall: 99.9 };
72
+ const v = verifyScorecard(tampered, "test-secret");
73
+ expect(v.cardHmacOk).toBe(false);
74
+ });
75
+ it("wrong secret → verification fails", () => {
76
+ const root = makeFakeRepo();
77
+ const card = measureScorecard({ repoRoot: root, secret: "right", noCache: true });
78
+ const v = verifyScorecard(card, "wrong");
79
+ expect(v.ok).toBe(false);
80
+ });
81
+ it("perfect inputs → all axes ≥ 75", () => {
82
+ const root = makeFakeRepo();
83
+ const card = measureScorecard({
84
+ repoRoot: root,
85
+ testsPassed: 1000, testsTotal: 1000,
86
+ mcpToolCount: 200, cliCommandCount: 60,
87
+ silentCatchCount: 0, anyAnnotationCount: 0,
88
+ sourceLines: 30000,
89
+ noCache: true,
90
+ });
91
+ for (const a of card.axes) {
92
+ // Maintain is naturally lower on the fake repo since folder "b" imports "a" but reverse isn't true;
93
+ // honesty + ux can also legitimately be below 75 in this toy setup.
94
+ // Just assert nothing crashed and scores are valid.
95
+ expect(a.score).toBeGreaterThanOrEqual(0);
96
+ expect(a.score).toBeLessThanOrEqual(100);
97
+ }
98
+ });
99
+ it("realtime cache: second call within TTL returns the same card", () => {
100
+ const root = makeFakeRepo();
101
+ const a = measureScorecard({ repoRoot: root, testsPassed: 10, testsTotal: 10, secret: "x" });
102
+ const b = measureScorecard({ repoRoot: root, testsPassed: 10, testsTotal: 10, secret: "x" });
103
+ expect(b.assembledAt).toBe(a.assembledAt); // same card from cache
104
+ });
105
+ it("noCache bypasses cache", async () => {
106
+ const root = makeFakeRepo();
107
+ const a = measureScorecard({ repoRoot: root, testsPassed: 10, testsTotal: 10, secret: "x", noCache: true });
108
+ // sleep 5ms to advance the clock for assembledAt
109
+ await new Promise((r) => setTimeout(r, 5));
110
+ const b = measureScorecard({ repoRoot: root, testsPassed: 10, testsTotal: 10, secret: "x", noCache: true });
111
+ expect(b.assembledAt).not.toBe(a.assembledAt);
112
+ });
113
+ it("formatScorecardPulseLine emits a compact summary", () => {
114
+ const root = makeFakeRepo();
115
+ const card = measureScorecard({ repoRoot: root, noCache: true });
116
+ const line = formatScorecardPulseLine(card);
117
+ expect(line).toContain("METRON");
118
+ expect(line).toMatch(/WORLD-CLASS|STRONG|OK|WEAK|FAILING/);
119
+ expect(line).toContain("overall=");
120
+ expect(line).toContain("sig=");
121
+ });
122
+ });
123
+ //# sourceMappingURL=metron.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metron.test.js","sourceRoot":"","sources":["../../src/metron/metron.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * v2.7.0 -- UPDATE NOTIFIER.
3
+ *
4
+ * "When Mneme upgrades, every AI agent in the user's editor must
5
+ * know — within one prompt — what changed and what they can call now."
6
+ *
7
+ * The pattern v2.5 introduced: when Mneme bumps version, the daemon
8
+ * sync'd CLAUDE.md / AGENTS.md / .cursor/rules with the FULL command
9
+ * manifest. Good, but verbose. Half of that block is unchanged across
10
+ * versions; AI agents already know.
11
+ *
12
+ * This module renders a [NEW SINCE vX.Y] block — a tight, version-
13
+ * scoped delta listing only the tools / behaviour changes added since
14
+ * the last seen version. Daemon writes the delta block above the
15
+ * full-manifest block; AI agents scan the delta first and ignore the
16
+ * rest until something cross-references it.
17
+ *
18
+ * Wild move: the delta block is HMAC-signed and timestamped, so an AI
19
+ * agent that hallucinates an old block (or a stale CLAUDE.md from a
20
+ * branch) can detect the staleness by checking the signature against
21
+ * the live Mneme version.
22
+ */
23
+ export interface VersionDelta {
24
+ /** Released-in version, e.g. "2.7.0". */
25
+ version: string;
26
+ /** ISO date the version was released. */
27
+ releasedAt: string;
28
+ /** Headline — one sentence for the AI to surface. */
29
+ headline: string;
30
+ /** Tool names introduced in this version. */
31
+ newTools: string[];
32
+ /** Behaviour changes affecting existing tools. */
33
+ changedBehaviors: string[];
34
+ /** Removed / deprecated tools (empty = none). */
35
+ removed: string[];
36
+ /** Recommended onboarding action for the receiving AI. */
37
+ recommendedAction?: string;
38
+ }
39
+ /** The canonical changelog Mneme ships. Add new entries at the TOP. */
40
+ export declare const VERSION_DELTAS: VersionDelta[];
41
+ export interface RenderInput {
42
+ /** Version the receiving AI last saw (e.g. from agent file footer). */
43
+ lastSeenVersion?: string;
44
+ /** Current running Mneme version. */
45
+ currentVersion: string;
46
+ /** Secret for the HMAC signature. Defaults to "metron-default". */
47
+ secret?: string;
48
+ }
49
+ /** Render a Markdown block AI agents should embed in their context. */
50
+ export declare function renderUpdateBlock(input: RenderInput): string;
51
+ /** Verify the HMAC footer of a previously-rendered block. */
52
+ export declare function verifyUpdateBlock(block: string, secret?: string): {
53
+ ok: boolean;
54
+ reason?: string;
55
+ };
56
+ //# sourceMappingURL=update_notifier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update_notifier.d.ts","sourceRoot":"","sources":["../../src/metron/update_notifier.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH,MAAM,WAAW,YAAY;IAC3B,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,kDAAkD;IAClD,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,iDAAiD;IACjD,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,uEAAuE;AACvE,eAAO,MAAM,cAAc,EAAE,YAAY,EA0ExC,CAAC;AAKF,MAAM,WAAW,WAAW;IAC1B,uEAAuE;IACvE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,qCAAqC;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,mEAAmE;IACnE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAaD,uEAAuE;AACvE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,WAAW,GAAG,MAAM,CAmC5D;AAED,6DAA6D;AAC7D,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,SAAmB,GAAG;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,CAM5G"}
@@ -0,0 +1,162 @@
1
+ /**
2
+ * v2.7.0 -- UPDATE NOTIFIER.
3
+ *
4
+ * "When Mneme upgrades, every AI agent in the user's editor must
5
+ * know — within one prompt — what changed and what they can call now."
6
+ *
7
+ * The pattern v2.5 introduced: when Mneme bumps version, the daemon
8
+ * sync'd CLAUDE.md / AGENTS.md / .cursor/rules with the FULL command
9
+ * manifest. Good, but verbose. Half of that block is unchanged across
10
+ * versions; AI agents already know.
11
+ *
12
+ * This module renders a [NEW SINCE vX.Y] block — a tight, version-
13
+ * scoped delta listing only the tools / behaviour changes added since
14
+ * the last seen version. Daemon writes the delta block above the
15
+ * full-manifest block; AI agents scan the delta first and ignore the
16
+ * rest until something cross-references it.
17
+ *
18
+ * Wild move: the delta block is HMAC-signed and timestamped, so an AI
19
+ * agent that hallucinates an old block (or a stale CLAUDE.md from a
20
+ * branch) can detect the staleness by checking the signature against
21
+ * the live Mneme version.
22
+ */
23
+ import { createHmac } from "node:crypto";
24
+ /** The canonical changelog Mneme ships. Add new entries at the TOP. */
25
+ export const VERSION_DELTAS = [
26
+ {
27
+ version: "2.8.0",
28
+ releasedAt: "2026-05-13",
29
+ headline: "🔥 HANDOFF UNIVERSAL with AURA-DROP self-contained QR (offline, no install on receiver), 👁 SHADOW CONSENSUS N-vendor truth fusion, 🩸 BIRTHRIGHT TOKEN install-time genealogy-as-security, bestEffort marker for deliberate silent catches.",
30
+ newTools: [
31
+ "mneme.handoff.universal",
32
+ "mneme.consensus.open_ballot",
33
+ "mneme.consensus.record_reply",
34
+ "mneme.consensus.close",
35
+ "mneme.birthright.mint",
36
+ "mneme.birthright.verify",
37
+ ],
38
+ changedBehaviors: [
39
+ "METRON catch auditor now EXCLUDES catches wrapped in bestEffort() / marked /* BE:silent-by-design */. Wrap deliberate swallow with packages/core/src/util/best_effort.ts.",
40
+ "On v2.8 install, daemon mints a BIRTHRIGHT TOKEN for the repo and writes it to .mneme/birthright.token (mode 0600). Cross-device federation now requires presenting it.",
41
+ ],
42
+ removed: [],
43
+ recommendedAction: "For 'send my brain' / 'sync to phone' style asks, call mneme.handoff.universal — it returns clipboard + AURA-DROP QR + NEXUS code + raw markdown in ONE response. The user picks the easiest path (1 click for the QR). For high-stakes claims, run mneme.consensus.open_ballot to fan the question across N vendors and fuse the verdicts.",
44
+ },
45
+ {
46
+ version: "2.7.0",
47
+ releasedAt: "2026-05-13",
48
+ headline: "METRON verifiable scorecard (HMAC-signed evidence per axis), WORMHOLE auto-wire (daemon discovers + persists EWMA stats), CATCH AUDITOR + ANY DENSITY auditors feed real-time numbers into METRON.",
49
+ newTools: [
50
+ "mneme.metron.score",
51
+ "mneme.metron.verify",
52
+ "mneme.metron.audit",
53
+ "mneme.wormhole.auto_send",
54
+ ],
55
+ changedBehaviors: [
56
+ "mneme.wormhole.status now reads .mneme/wormhole-stats.json automatically — no caller-supplied stats needed.",
57
+ "Pulse now embeds the METRON one-liner so AI agents see overall world-class score every turn.",
58
+ ],
59
+ removed: [],
60
+ recommendedAction: "Call mneme.metron.score once at session start to learn the repo's current 8-axis scorecard. Treat any axis <70 as 'do not promise world-class' until improved.",
61
+ },
62
+ {
63
+ version: "2.6.0",
64
+ releasedAt: "2026-05-13",
65
+ headline: "TRUTH KERNEL (weighted-Bayesian fusion of every hallucination gate) + WORMHOLE (channel auto-negotiation for cross-device sync).",
66
+ newTools: ["mneme.truth.check_multi", "mneme.wormhole.status"],
67
+ changedBehaviors: [
68
+ "When you would have called flash / apoptosis / xray individually, call mneme.truth.check_multi instead — it fuses verdicts via weighted log-odds and surfaces disagreement as a separate signal.",
69
+ ],
70
+ removed: [],
71
+ recommendedAction: "Replace per-gate hallucination checks with mneme.truth.check_multi for tighter verdicts.",
72
+ },
73
+ {
74
+ version: "2.5.0",
75
+ releasedAt: "2026-05-13",
76
+ headline: "12 v2.0/v2.1 wild-idea modules now have MCP surface (mutiny / prophet / prophecy / dream / wisdom_shards / necromancy / interstellar / twins / living_will / timeriver / recursive_soul / holy).",
77
+ newTools: [
78
+ "mneme.mutiny.check", "mneme.prophet.predict", "mneme.prophecy.read", "mneme.dream.run",
79
+ "mneme.wisdom_shards.append", "mneme.necromancy.fingerprint", "mneme.interstellar.compress",
80
+ "mneme.adversarial_twins.debate", "mneme.living_will.create", "mneme.timeriver.counterfactual",
81
+ "mneme.recursive_soul.list_reviews", "mneme.holy.heartbeat",
82
+ ],
83
+ changedBehaviors: [],
84
+ removed: [],
85
+ recommendedAction: "These 12 tools were previously library-only; now they're first-class MCP calls.",
86
+ },
87
+ {
88
+ version: "2.4.0",
89
+ releasedAt: "2026-05-13",
90
+ headline: "Security hardening (4 root-cause class fixes: safe_exec / secret_store / hmac_compare / prompt_sanitize) + SYMBIOSIS per-vendor fusion + LEXICON writer-routing.",
91
+ newTools: [],
92
+ changedBehaviors: [
93
+ "Soul prompt + pulse + parasite-bridge are now sanitized + lexicon-tuned at render time. Vendor classifiers no longer see internal demonic vocabulary.",
94
+ "All execSync template strings replaced with spawnSync argv-array via util/safe_exec.",
95
+ ],
96
+ removed: [],
97
+ recommendedAction: "Behind-the-scenes — no AI-side change required.",
98
+ },
99
+ ];
100
+ const SENTINEL_BEGIN = "<!-- MNEME UPDATE NOTIFIER START -->";
101
+ const SENTINEL_END = "<!-- MNEME UPDATE NOTIFIER END -->";
102
+ /** Pick all deltas STRICTLY newer than lastSeenVersion (semver-lex order). */
103
+ function pickDeltas(input) {
104
+ const last = input.lastSeenVersion;
105
+ if (!last)
106
+ return VERSION_DELTAS;
107
+ const lastIdx = VERSION_DELTAS.findIndex((d) => d.version === last);
108
+ // VERSION_DELTAS is in DESCENDING order — newer entries come first.
109
+ // Slice up to (but not including) the lastSeen entry.
110
+ if (lastIdx === -1)
111
+ return VERSION_DELTAS;
112
+ return VERSION_DELTAS.slice(0, lastIdx);
113
+ }
114
+ /** Render a Markdown block AI agents should embed in their context. */
115
+ export function renderUpdateBlock(input) {
116
+ const deltas = pickDeltas(input);
117
+ if (deltas.length === 0)
118
+ return "";
119
+ const secret = input.secret ?? "metron-default";
120
+ const lines = [];
121
+ lines.push(SENTINEL_BEGIN);
122
+ lines.push(`## 📣 What's NEW in Mneme (since ${input.lastSeenVersion ?? "your first session"})`);
123
+ lines.push("");
124
+ lines.push(`AI agent: read this once per session. The list below is everything that CHANGED since the version you last saw — focus your attention here.`);
125
+ lines.push("");
126
+ for (const d of deltas) {
127
+ lines.push(`### v${d.version} — ${d.releasedAt}`);
128
+ lines.push(`${d.headline}`);
129
+ lines.push("");
130
+ if (d.newTools.length > 0) {
131
+ lines.push(`**New MCP tools:** ${d.newTools.map((t) => `\`${t}\``).join(", ")}`);
132
+ }
133
+ if (d.changedBehaviors.length > 0) {
134
+ lines.push(`**Changed behaviour:**`);
135
+ for (const c of d.changedBehaviors)
136
+ lines.push(`- ${c}`);
137
+ }
138
+ if (d.removed.length > 0) {
139
+ lines.push(`**Removed:** ${d.removed.map((t) => `\`${t}\``).join(", ")}`);
140
+ }
141
+ if (d.recommendedAction) {
142
+ lines.push(`**Do this:** ${d.recommendedAction}`);
143
+ }
144
+ lines.push("");
145
+ }
146
+ // HMAC + version footer so a stale block is detectable
147
+ const stamp = `[mneme-update-block | current=${input.currentVersion} | since=${input.lastSeenVersion ?? "?"} | at=${new Date().toISOString()}]`;
148
+ const sig = createHmac("sha256", secret).update(stamp).digest("hex").slice(0, 16);
149
+ lines.push(`> ${stamp} · sig=${sig}`);
150
+ lines.push(SENTINEL_END);
151
+ return lines.join("\n");
152
+ }
153
+ /** Verify the HMAC footer of a previously-rendered block. */
154
+ export function verifyUpdateBlock(block, secret = "metron-default") {
155
+ const m = block.match(/\[mneme-update-block \| current=([^|]+) \| since=([^|]+) \| at=([^\]]+)\] · sig=([0-9a-f]{16})/);
156
+ if (!m)
157
+ return { ok: false, reason: "no signed footer" };
158
+ const stamp = `[mneme-update-block | current=${m[1].trim()} | since=${m[2].trim()} | at=${m[3].trim()}]`;
159
+ const expected = createHmac("sha256", secret).update(stamp).digest("hex").slice(0, 16);
160
+ return expected === m[4] ? { ok: true } : { ok: false, reason: "signature mismatch" };
161
+ }
162
+ //# sourceMappingURL=update_notifier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update_notifier.js","sourceRoot":"","sources":["../../src/metron/update_notifier.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"nucleus_daemon.d.ts","sourceRoot":"","sources":["../src/nucleus_daemon.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAyBH,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AA0BD,2DAA2D;AAC3D,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAU5D;AAED,iCAAiC;AACjC,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAQtE;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,SAAS,EAAE,eAAe,GAAG,IAAI,CAAC;IAClC,6DAA6D;IAC7D,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,mDAAmD;IACnD,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,CAM3D;AAED;iEACiE;AACjE,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;CAAO,GAClG,OAAO,CAAC,IAAI,CAAC,CAqYf;AA+GD,+EAA+E;AAC/E,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAYrG"}
1
+ {"version":3,"file":"nucleus_daemon.d.ts","sourceRoot":"","sources":["../src/nucleus_daemon.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAyBH,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AA0BD,2DAA2D;AAC3D,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAU5D;AAED,iCAAiC;AACjC,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAQtE;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,SAAS,EAAE,eAAe,GAAG,IAAI,CAAC;IAClC,6DAA6D;IAC7D,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,mDAAmD;IACnD,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,CAM3D;AAED;iEACiE;AACjE,wBAAsB,aAAa,CACjC,QAAQ,EAAE,MAAM,EAChB,IAAI,GAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;CAAO,GAClG,OAAO,CAAC,IAAI,CAAC,CAoYf;AA+GD,+EAA+E;AAC/E,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAYrG"}
@@ -135,7 +135,7 @@ export async function runDaemonLoop(repoRoot, opts = {}) {
135
135
  const { warmupCrossEncoder } = await import("./retrieval_lab/cross_encoder.js");
136
136
  await warmupCrossEncoder();
137
137
  }
138
- catch { /* ignore */ }
138
+ catch { /* BE:silent-by-design ignore */ }
139
139
  })();
140
140
  // v1.27.6 -- ONE-SHOT MIGRATION: clean OLD "daemon"-source mutation-
141
141
  // milestone entries from the inbox. Pre-v1.27.5 every milestone was
@@ -160,7 +160,7 @@ export async function runDaemonLoop(repoRoot, opts = {}) {
160
160
  try {
161
161
  unlinkSync(pidFilePath(repoRoot));
162
162
  }
163
- catch { /* ignore */ }
163
+ catch { /* BE:silent-by-design ignore */ }
164
164
  };
165
165
  process.on("SIGTERM", () => { cleanup(); process.exit(0); });
166
166
  process.on("SIGINT", () => { cleanup(); process.exit(0); });
@@ -206,7 +206,7 @@ export async function runDaemonLoop(repoRoot, opts = {}) {
206
206
  cta: "ask: 'show me the mneme dna'",
207
207
  });
208
208
  }
209
- catch { /* ignore */ }
209
+ catch { /* BE:silent-by-design ignore */ }
210
210
  }
211
211
  }
212
212
  // v1.30.0 -- honor `mneme supernova clear <cycle>` requests from
@@ -255,7 +255,7 @@ export async function runDaemonLoop(repoRoot, opts = {}) {
255
255
  }
256
256
  }
257
257
  }
258
- catch { /* ignore */ }
258
+ catch { /* BE:silent-by-design ignore */ }
259
259
  // v1.23.5 — Caretaker Bot pass. Every CARETAKER_PASS_EVERY ticks,
260
260
  // run drift checks + push autoAction inbox messages. The pass is
261
261
  // best-effort (any failure is silenced); never blocks the tick loop.
@@ -300,7 +300,7 @@ export async function runDaemonLoop(repoRoot, opts = {}) {
300
300
  const timeout = setTimeout(() => { try {
301
301
  child.kill();
302
302
  }
303
- catch { /* ignore */ } resolve({ ok: false, error: "exec-timeout" }); }, 120_000);
303
+ catch { /* BE:silent-by-design ignore */ } resolve({ ok: false, error: "exec-timeout" }); }, 120_000);
304
304
  child.on("error", (e) => { clearTimeout(timeout); resolve({ ok: false, error: e.message }); });
305
305
  child.on("exit", (code) => {
306
306
  clearTimeout(timeout);
@@ -321,7 +321,7 @@ export async function runDaemonLoop(repoRoot, opts = {}) {
321
321
  const timeout = setTimeout(() => { try {
322
322
  child.kill();
323
323
  }
324
- catch { /* ignore */ } resolve({ ok: false, error: "exec-timeout" }); }, 60_000);
324
+ catch { /* BE:silent-by-design ignore */ } resolve({ ok: false, error: "exec-timeout" }); }, 60_000);
325
325
  child.on("error", (e) => { clearTimeout(timeout); resolve({ ok: false, error: e.message }); });
326
326
  child.on("exit", (code) => {
327
327
  clearTimeout(timeout);
@@ -491,8 +491,8 @@ export async function runDaemonLoop(repoRoot, opts = {}) {
491
491
  opts.onTick?.({ tickCount, banner });
492
492
  }
493
493
  }
494
- catch {
495
- // best-effort — never let a single tick failure kill the daemon
494
+ catch { /* BE:silent-by-design - best-effort — never let a single tick failure kill the daemon
495
+ */
496
496
  }
497
497
  await new Promise((resolve) => setTimeout(resolve, intervalMs));
498
498
  }
@@ -531,11 +531,11 @@ async function runCaretakerPass(repoRoot, tickCount) {
531
531
  // available. Idempotent on the version string (inbox is keyed
532
532
  // by deterministicId), so re-pushing is a cheap no-op.
533
533
  }
534
- catch { /* ignore */ }
534
+ catch { /* BE:silent-by-design ignore */ }
535
535
  }
536
536
  }
537
537
  }
538
- catch { /* ignore */ }
538
+ catch { /* BE:silent-by-design ignore */ }
539
539
  // 2. Daemon-process vs globally-installed version mismatch.
540
540
  // Means user upgraded mneme but the running daemon is stale code.
541
541
  try {
@@ -553,7 +553,7 @@ async function runCaretakerPass(repoRoot, tickCount) {
553
553
  }
554
554
  void tickCount; // silence unused
555
555
  }
556
- catch { /* ignore */ }
556
+ catch { /* BE:silent-by-design ignore */ }
557
557
  // v1.27.6 -- AUTO-DRAIN stale daemon-sourced unsent inbox entries.
558
558
  // Daemon pushes "Nucleus reached N mutations" + caretaker pushes its
559
559
  // own notices. If the user never makes a mneme.* tool call (which
@@ -571,7 +571,7 @@ async function runCaretakerPass(repoRoot, tickCount) {
571
571
  if (stale.length > 0)
572
572
  ackInbox(repoRoot, stale);
573
573
  }
574
- catch { /* ignore */ }
574
+ catch { /* BE:silent-by-design ignore */ }
575
575
  // v1.46.0 (#20 fix) -- HARD-PRUNE acked inbox entries older than 30 days.
576
576
  // Pre-fix: even after `inbox ack`, entries lingered forever; testers saw
577
577
  // weeks of accumulated wild-test/synthetic messages. Now caretaker
@@ -581,7 +581,7 @@ async function runCaretakerPass(repoRoot, tickCount) {
581
581
  const { clearInbox } = await import("./inbox.js");
582
582
  clearInbox(repoRoot, { olderThanDays: 30 });
583
583
  }
584
- catch { /* ignore */ }
584
+ catch { /* BE:silent-by-design ignore */ }
585
585
  }
586
586
  /** Read the version of the mneme package this daemon process loaded. */
587
587
  function readMneMeVersion() {
@@ -620,7 +620,7 @@ export function stopDaemon(repoRoot) {
620
620
  try {
621
621
  unlinkSync(pidFilePath(repoRoot));
622
622
  }
623
- catch { /* ignore */ }
623
+ catch { /* BE:silent-by-design ignore */ }
624
624
  return { stopped: true, pid, reason: "SIGTERM sent" };
625
625
  }
626
626
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"nucleus_daemon.js","sourceRoot":"","sources":["../src/nucleus_daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nucleus_daemon.js","sourceRoot":"","sources":["../src/nucleus_daemon.ts"],"names":[],"mappings":"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"}