@mneme-ai/core 2.19.16 → 2.19.18
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/caption_severance/caption_severance.test.d.ts +2 -0
- package/dist/caption_severance/caption_severance.test.d.ts.map +1 -0
- package/dist/caption_severance/caption_severance.test.js +346 -0
- package/dist/caption_severance/caption_severance.test.js.map +1 -0
- package/dist/caption_severance/index.d.ts +189 -0
- package/dist/caption_severance/index.d.ts.map +1 -0
- package/dist/caption_severance/index.js +362 -0
- package/dist/caption_severance/index.js.map +1 -0
- package/dist/cosmic/aurelian_v1917.test.d.ts +2 -0
- package/dist/cosmic/aurelian_v1917.test.d.ts.map +1 -0
- package/dist/cosmic/aurelian_v1917.test.js +46 -0
- package/dist/cosmic/aurelian_v1917.test.js.map +1 -0
- package/dist/cosmic/aurelian_v1918.test.d.ts +2 -0
- package/dist/cosmic/aurelian_v1918.test.d.ts.map +1 -0
- package/dist/cosmic/aurelian_v1918.test.js +48 -0
- package/dist/cosmic/aurelian_v1918.test.js.map +1 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/intent_router/index.d.ts.map +1 -1
- package/dist/intent_router/index.js +21 -0
- package/dist/intent_router/index.js.map +1 -1
- package/dist/lineage/welcome.d.ts.map +1 -1
- package/dist/lineage/welcome.js +5 -1
- package/dist/lineage/welcome.js.map +1 -1
- package/dist/reverse_wrapper/index.d.ts.map +1 -1
- package/dist/reverse_wrapper/index.js +16 -0
- package/dist/reverse_wrapper/index.js.map +1 -1
- package/dist/tool_reachability/index.d.ts +99 -0
- package/dist/tool_reachability/index.d.ts.map +1 -0
- package/dist/tool_reachability/index.js +227 -0
- package/dist/tool_reachability/index.js.map +1 -0
- package/dist/tool_reachability/tool_reachability.test.d.ts +2 -0
- package/dist/tool_reachability/tool_reachability.test.d.ts.map +1 -0
- package/dist/tool_reachability/tool_reachability.test.js +200 -0
- package/dist/tool_reachability/tool_reachability.test.js.map +1 -0
- package/dist/whats_new.d.ts.map +1 -1
- package/dist/whats_new.js +16 -0
- package/dist/whats_new.js.map +1 -1
- package/dist/wrapper_genesis/index.d.ts.map +1 -1
- package/dist/wrapper_genesis/index.js +13 -0
- package/dist/wrapper_genesis/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* v2.19.17 — MNEME TOOL REACHABILITY ENGINE ("the ghost-tool killer")
|
|
3
|
+
*
|
|
4
|
+
* "User audit: 'ทำแล้ว ไม่ได้ใช้ user ไม่เห็น'. The disease: an MCP
|
|
5
|
+
* tool ships, passes the orphan-wrapper gate, passes the claim-
|
|
6
|
+
* manifest gate — but never surfaces in any user-facing path. The
|
|
7
|
+
* AUTO-GENESIS gate proves a wrapper EXISTS; it doesn't prove the
|
|
8
|
+
* wrapper is REACHABLE. 'Wrapper exists but no CLI / no welcome
|
|
9
|
+
* mention / no suggested-next rule / no agent-manifest entry' = ghost
|
|
10
|
+
* tool — costs the same shipping effort, delivers zero user value.
|
|
11
|
+
*
|
|
12
|
+
* TOOL REACHABILITY ENGINE counts, per MCP tool, how many DISTINCT
|
|
13
|
+
* USER-FACING SURFACES expose it. A new ritual gate
|
|
14
|
+
* 'phase3.no-ghost-tools-v218' BLOCKS publish on ANY v2.18+ tool whose
|
|
15
|
+
* reachability score is 0. The 'ship a wrapper then forget to expose
|
|
16
|
+
* it' bug class becomes STRUCTURALLY IMPOSSIBLE — even an exhausted
|
|
17
|
+
* human can't release a ghost tool. This is the gate v2.19.6 was
|
|
18
|
+
* missing when 'mneme verify rubber-stamps lies' — verify-pipeline
|
|
19
|
+
* didn't compose any of the shipped primitives because nothing
|
|
20
|
+
* measured 'does this tool reach the user?'."
|
|
21
|
+
*
|
|
22
|
+
* Architecture:
|
|
23
|
+
* - 5 surface-scanners check distinct user-facing exposure paths:
|
|
24
|
+
* 1. CLI router — universal_mcp_subcommands auto-routes the family?
|
|
25
|
+
* 2. Welcome syllabus — agent_manifest.ts lists the tool?
|
|
26
|
+
* 3. WhatsNew highlights — recent release body mentions the tool name?
|
|
27
|
+
* 4. Suggested-next rules — reverse_wrapper rule fires for/to this tool?
|
|
28
|
+
* 5. Capabilities tool — _capabilities.ts surfaces this family?
|
|
29
|
+
* - `scanReachability({catalog, surfaces})` returns per-tool
|
|
30
|
+
* reachability score + which surfaces reached each tool.
|
|
31
|
+
* - `ghostToolReport()` lists tools with score=0 (the publish blockers).
|
|
32
|
+
* - HMAC-signed report so the ritual gate can verify it wasn't forged.
|
|
33
|
+
*
|
|
34
|
+
* Honest scope:
|
|
35
|
+
* - This module is the PROTOCOL. The ritual integration is in
|
|
36
|
+
* scripts/reincarnation-ritual.mjs (separate file, integrates via
|
|
37
|
+
* `phase3.no-ghost-tools-v218`).
|
|
38
|
+
* - Surface-scanners are INDEPENDENT — adding a new surface (e.g.,
|
|
39
|
+
* vscode commands palette) requires adding a new scanner. The
|
|
40
|
+
* module ships with 5 scanners.
|
|
41
|
+
* - Score is a COUNT of reaching surfaces, NOT a quality metric. A
|
|
42
|
+
* tool reached by 5 surfaces is "well-surfaced"; reached by 1 is
|
|
43
|
+
* "minimally reachable"; reached by 0 is GHOST.
|
|
44
|
+
*/
|
|
45
|
+
import { createHmac, timingSafeEqual } from "node:crypto";
|
|
46
|
+
import { existsSync, readFileSync } from "node:fs";
|
|
47
|
+
const PROTOCOL_VERSION = 1;
|
|
48
|
+
function canon(v) {
|
|
49
|
+
if (v === null || typeof v !== "object")
|
|
50
|
+
return JSON.stringify(v);
|
|
51
|
+
if (Array.isArray(v))
|
|
52
|
+
return "[" + v.map(canon).join(",") + "]";
|
|
53
|
+
const keys = Object.keys(v).sort();
|
|
54
|
+
return "{" + keys.map((k) => JSON.stringify(k) + ":" + canon(v[k])).join(",") + "}";
|
|
55
|
+
}
|
|
56
|
+
function defaultSecret() {
|
|
57
|
+
return process.env["MNEME_REACHABILITY_SECRET"] || `mneme-tool-reachability-v${PROTOCOL_VERSION}`;
|
|
58
|
+
}
|
|
59
|
+
function signReport(body, secret) {
|
|
60
|
+
return createHmac("sha256", secret).update(canon(body)).digest("hex");
|
|
61
|
+
}
|
|
62
|
+
function safeEqHex(a, b) {
|
|
63
|
+
try {
|
|
64
|
+
return timingSafeEqual(Buffer.from(a, "hex"), Buffer.from(b, "hex"));
|
|
65
|
+
}
|
|
66
|
+
catch {
|
|
67
|
+
return false;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
// ─── SURFACE SCANNERS ────────────────────────────────────────────────────
|
|
71
|
+
/**
|
|
72
|
+
* CLI-router scanner: the universal_mcp_subcommands.ts auto-routes ANY
|
|
73
|
+
* `mneme.<family>.<action>` MCP tool to `mneme <family> <action>` CLI.
|
|
74
|
+
* If the auto-router source is supplied AND it imports buildAllTools/
|
|
75
|
+
* registers families dynamically → ALL families reachable; else
|
|
76
|
+
* fallback: per-family search in the source.
|
|
77
|
+
*/
|
|
78
|
+
function scanCliRouter(toolName, surface) {
|
|
79
|
+
const family = toolName.split(".")[1];
|
|
80
|
+
if (!family)
|
|
81
|
+
return null;
|
|
82
|
+
// Universal auto-router covers ALL families that reach buildAllTools().
|
|
83
|
+
if (surface.text.includes("buildAllTools") && surface.text.includes("groupByFamily")) {
|
|
84
|
+
return { surface: "cli_router", evidence: `auto-routed via universal_mcp_subcommands (family=${family})` };
|
|
85
|
+
}
|
|
86
|
+
// Fallback: explicit per-family CLI registration.
|
|
87
|
+
if (surface.text.includes(`"${family}"`) && surface.text.includes("subcommand")) {
|
|
88
|
+
return { surface: "cli_router", evidence: `explicit CLI command for family ${family}` };
|
|
89
|
+
}
|
|
90
|
+
return null;
|
|
91
|
+
}
|
|
92
|
+
/** Welcome / agent-manifest scanner: does the syllabus list the tool name? */
|
|
93
|
+
function scanWelcomeSyllabus(toolName, surface) {
|
|
94
|
+
if (surface.text.includes(toolName)) {
|
|
95
|
+
const i = surface.text.indexOf(toolName);
|
|
96
|
+
const excerpt = surface.text.slice(Math.max(0, i - 20), i + toolName.length + 40).replace(/\s+/g, " ");
|
|
97
|
+
return { surface: "welcome_syllabus", evidence: excerpt.slice(0, 80) };
|
|
98
|
+
}
|
|
99
|
+
// Fallback: family is listed (looser but legitimate — syllabus often groups by family)
|
|
100
|
+
const family = toolName.split(".")[1];
|
|
101
|
+
if (family && (surface.text.includes(`mneme.${family}.`) || surface.text.includes(`group: "${family}"`))) {
|
|
102
|
+
return { surface: "welcome_syllabus", evidence: `family ${family} listed in syllabus` };
|
|
103
|
+
}
|
|
104
|
+
return null;
|
|
105
|
+
}
|
|
106
|
+
/** WhatsNew scanner: does a recent release body mention this tool? */
|
|
107
|
+
function scanWhatsNew(toolName, surface) {
|
|
108
|
+
if (surface.text.includes(toolName)) {
|
|
109
|
+
return { surface: "whats_new", evidence: `tool mentioned in whats_new highlights` };
|
|
110
|
+
}
|
|
111
|
+
const family = toolName.split(".")[1];
|
|
112
|
+
if (family && surface.text.includes(`mneme.${family}.`)) {
|
|
113
|
+
return { surface: "whats_new", evidence: `family ${family} mentioned in whats_new` };
|
|
114
|
+
}
|
|
115
|
+
return null;
|
|
116
|
+
}
|
|
117
|
+
/** Suggested-next scanner: reverse_wrapper rule references this tool? */
|
|
118
|
+
function scanSuggestedNext(toolName, surface) {
|
|
119
|
+
if (surface.text.includes(`"${toolName}"`)) {
|
|
120
|
+
return { surface: "suggested_next", evidence: `tool name in reverse_wrapper rule` };
|
|
121
|
+
}
|
|
122
|
+
return null;
|
|
123
|
+
}
|
|
124
|
+
/** Capabilities-syllabus scanner: does _capabilities.ts surface this family? */
|
|
125
|
+
function scanCapabilities(toolName, surface) {
|
|
126
|
+
if (surface.text.includes(toolName)) {
|
|
127
|
+
return { surface: "capabilities", evidence: `tool mentioned in capabilities syllabus` };
|
|
128
|
+
}
|
|
129
|
+
const family = toolName.split(".")[1];
|
|
130
|
+
if (family && surface.text.includes(`mneme.${family}`)) {
|
|
131
|
+
return { surface: "capabilities", evidence: `family ${family} surfaced in capabilities` };
|
|
132
|
+
}
|
|
133
|
+
return null;
|
|
134
|
+
}
|
|
135
|
+
const SCANNERS = {
|
|
136
|
+
cli_router: scanCliRouter,
|
|
137
|
+
welcome_syllabus: scanWelcomeSyllabus,
|
|
138
|
+
whats_new: scanWhatsNew,
|
|
139
|
+
suggested_next: scanSuggestedNext,
|
|
140
|
+
capabilities: scanCapabilities,
|
|
141
|
+
};
|
|
142
|
+
export function scanReachability(input) {
|
|
143
|
+
const surfaceByKind = new Map();
|
|
144
|
+
for (const s of input.surfaces)
|
|
145
|
+
surfaceByKind.set(s.kind, s);
|
|
146
|
+
const enforce = input.enforceFamilies
|
|
147
|
+
? new Set(input.enforceFamilies.map((f) => `mneme.${f}.`))
|
|
148
|
+
: null;
|
|
149
|
+
const perTool = [];
|
|
150
|
+
let scoreSum = 0;
|
|
151
|
+
let ghostCount = 0;
|
|
152
|
+
for (const toolName of input.catalog) {
|
|
153
|
+
if (!toolName.startsWith("mneme."))
|
|
154
|
+
continue;
|
|
155
|
+
if (enforce) {
|
|
156
|
+
const matched = Array.from(enforce).some((p) => toolName.startsWith(p));
|
|
157
|
+
if (!matched)
|
|
158
|
+
continue;
|
|
159
|
+
}
|
|
160
|
+
const parts = toolName.split(".");
|
|
161
|
+
if (parts.length !== 3)
|
|
162
|
+
continue;
|
|
163
|
+
const family = parts[1];
|
|
164
|
+
const action = parts[2];
|
|
165
|
+
const hits = [];
|
|
166
|
+
for (const [kind, scanner] of Object.entries(SCANNERS)) {
|
|
167
|
+
const surface = surfaceByKind.get(kind);
|
|
168
|
+
if (!surface)
|
|
169
|
+
continue;
|
|
170
|
+
const hit = scanner(toolName, surface);
|
|
171
|
+
if (hit)
|
|
172
|
+
hits.push(hit);
|
|
173
|
+
}
|
|
174
|
+
const score = hits.length;
|
|
175
|
+
const ghost = score === 0;
|
|
176
|
+
if (ghost)
|
|
177
|
+
ghostCount++;
|
|
178
|
+
scoreSum += score;
|
|
179
|
+
perTool.push({ toolName, family, action, score, hits, ghost });
|
|
180
|
+
}
|
|
181
|
+
const totalTools = perTool.length;
|
|
182
|
+
const meanScore = totalTools === 0 ? 0 : scoreSum / totalTools;
|
|
183
|
+
const ghostList = perTool.filter((t) => t.ghost).map((t) => t.toolName).sort();
|
|
184
|
+
const scannedAt = new Date(input.nowMs ?? Date.now()).toISOString();
|
|
185
|
+
const body = {
|
|
186
|
+
v: PROTOCOL_VERSION,
|
|
187
|
+
scannedAt,
|
|
188
|
+
totalTools,
|
|
189
|
+
ghostCount,
|
|
190
|
+
meanScore,
|
|
191
|
+
perTool,
|
|
192
|
+
ghostList,
|
|
193
|
+
};
|
|
194
|
+
return { ...body, hmac: signReport(body, input.secret ?? defaultSecret()) };
|
|
195
|
+
}
|
|
196
|
+
export function verifyReachabilityReport(report, secret) {
|
|
197
|
+
const { hmac, ...body } = report;
|
|
198
|
+
const expected = signReport(body, secret ?? defaultSecret());
|
|
199
|
+
if (!safeEqHex(expected, hmac)) {
|
|
200
|
+
return { ok: false, reason: "HMAC mismatch — forged report or wrong secret" };
|
|
201
|
+
}
|
|
202
|
+
return { ok: true };
|
|
203
|
+
}
|
|
204
|
+
// ─── HELPERS ─────────────────────────────────────────────────────────────
|
|
205
|
+
/** Read a surface from a file path (returns null if file missing). */
|
|
206
|
+
export function loadSurface(kind, path) {
|
|
207
|
+
if (!existsSync(path))
|
|
208
|
+
return null;
|
|
209
|
+
try {
|
|
210
|
+
return { kind, text: readFileSync(path, "utf8"), source: path };
|
|
211
|
+
}
|
|
212
|
+
catch {
|
|
213
|
+
return null;
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
export function ghostListSummary(report, sampleSize = 10) {
|
|
217
|
+
if (report.ghostCount === 0) {
|
|
218
|
+
return `🎯 NO GHOSTS — every tool reachable via ≥1 user-facing surface (mean score=${report.meanScore.toFixed(2)})`;
|
|
219
|
+
}
|
|
220
|
+
const sample = report.ghostList.slice(0, sampleSize).join(", ");
|
|
221
|
+
return `👻 ${report.ghostCount} ghost tool(s): ${sample}${report.ghostList.length > sampleSize ? "…" : ""}`;
|
|
222
|
+
}
|
|
223
|
+
export function formatReachabilityLine(t) {
|
|
224
|
+
const tag = t.ghost ? "👻" : t.score >= 3 ? "🎯" : t.score >= 2 ? "✓" : "·";
|
|
225
|
+
return `${tag} ${t.toolName} · score=${t.score} · surfaces=${t.hits.map((h) => h.surface).join(",")}`;
|
|
226
|
+
}
|
|
227
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tool_reachability/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool_reachability.test.d.ts","sourceRoot":"","sources":["../../src/tool_reachability/tool_reachability.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
import { describe, it, expect } from "vitest";
|
|
2
|
+
import { scanReachability, verifyReachabilityReport, loadSurface, ghostListSummary, formatReachabilityLine, } from "./index.js";
|
|
3
|
+
const SECRET = "reach-test-secret-998877";
|
|
4
|
+
const ROUTER_SRC = {
|
|
5
|
+
kind: "cli_router",
|
|
6
|
+
source: "fake/router.ts",
|
|
7
|
+
text: `
|
|
8
|
+
import { buildAllTools } from "@mneme-ai/mcp";
|
|
9
|
+
function groupByFamily(tools) { /* ... */ }
|
|
10
|
+
`,
|
|
11
|
+
};
|
|
12
|
+
const SYLLABUS_SRC = {
|
|
13
|
+
kind: "welcome_syllabus",
|
|
14
|
+
source: "fake/agent_manifest.ts",
|
|
15
|
+
text: `
|
|
16
|
+
{ command: "mneme.arena.judge", group: "arena", since: "2.18.0" },
|
|
17
|
+
{ command: "mneme.proof.attach", group: "proof", since: "2.19.10" },
|
|
18
|
+
`,
|
|
19
|
+
};
|
|
20
|
+
const WHATSNEW_SRC = {
|
|
21
|
+
kind: "whats_new",
|
|
22
|
+
source: "fake/whats_new.ts",
|
|
23
|
+
text: `
|
|
24
|
+
headline: "ARENA judging + proof carrying",
|
|
25
|
+
body: "mneme.arena.judge and mneme.proof.attach now ship",
|
|
26
|
+
`,
|
|
27
|
+
};
|
|
28
|
+
const SUGGEST_SRC = {
|
|
29
|
+
kind: "suggested_next",
|
|
30
|
+
source: "fake/reverse.ts",
|
|
31
|
+
text: `
|
|
32
|
+
{ forTool: "mneme.inverse.audit", suggested: "mneme.chronostasis.tick" }
|
|
33
|
+
`,
|
|
34
|
+
};
|
|
35
|
+
const CAPS_SRC = {
|
|
36
|
+
kind: "capabilities",
|
|
37
|
+
source: "fake/_capabilities.ts",
|
|
38
|
+
text: `family: mneme.arena, family: mneme.proof`,
|
|
39
|
+
};
|
|
40
|
+
describe("v2.19.17 TOOL REACHABILITY · scanReachability", () => {
|
|
41
|
+
it("scores a well-surfaced tool with all 5 surfaces hitting", () => {
|
|
42
|
+
const r = scanReachability({
|
|
43
|
+
catalog: ["mneme.arena.judge"],
|
|
44
|
+
surfaces: [ROUTER_SRC, SYLLABUS_SRC, WHATSNEW_SRC, SUGGEST_SRC, CAPS_SRC],
|
|
45
|
+
secret: SECRET,
|
|
46
|
+
});
|
|
47
|
+
expect(r.perTool).toHaveLength(1);
|
|
48
|
+
const arena = r.perTool[0];
|
|
49
|
+
expect(arena.toolName).toBe("mneme.arena.judge");
|
|
50
|
+
expect(arena.score).toBeGreaterThanOrEqual(3); // router + syllabus + whats_new + caps at least
|
|
51
|
+
expect(arena.ghost).toBe(false);
|
|
52
|
+
expect(arena.hits.map((h) => h.surface)).toContain("cli_router");
|
|
53
|
+
});
|
|
54
|
+
it("flags a tool with ZERO surfaces as ghost (score=0)", () => {
|
|
55
|
+
const r = scanReachability({
|
|
56
|
+
catalog: ["mneme.nobody.knows"],
|
|
57
|
+
surfaces: [SYLLABUS_SRC, WHATSNEW_SRC, CAPS_SRC],
|
|
58
|
+
secret: SECRET,
|
|
59
|
+
});
|
|
60
|
+
const t = r.perTool[0];
|
|
61
|
+
expect(t.score).toBe(0);
|
|
62
|
+
expect(t.ghost).toBe(true);
|
|
63
|
+
expect(r.ghostCount).toBe(1);
|
|
64
|
+
expect(r.ghostList).toEqual(["mneme.nobody.knows"]);
|
|
65
|
+
});
|
|
66
|
+
it("router scanner credits ALL families when auto-router source mentions buildAllTools + groupByFamily", () => {
|
|
67
|
+
const r = scanReachability({
|
|
68
|
+
catalog: ["mneme.x.a", "mneme.y.b", "mneme.zzz.c"],
|
|
69
|
+
surfaces: [ROUTER_SRC], // ONLY router
|
|
70
|
+
secret: SECRET,
|
|
71
|
+
});
|
|
72
|
+
// All 3 tools should get the cli_router hit because router auto-routes ALL families
|
|
73
|
+
expect(r.perTool.every((t) => t.score === 1)).toBe(true);
|
|
74
|
+
expect(r.ghostCount).toBe(0);
|
|
75
|
+
});
|
|
76
|
+
it("enforceFamilies filter scopes the report to specified prefixes only", () => {
|
|
77
|
+
const r = scanReachability({
|
|
78
|
+
catalog: ["mneme.arena.judge", "mneme.legacy.old", "mneme.proof.attach"],
|
|
79
|
+
surfaces: [ROUTER_SRC, SYLLABUS_SRC],
|
|
80
|
+
enforceFamilies: ["arena", "proof"], // skip legacy
|
|
81
|
+
secret: SECRET,
|
|
82
|
+
});
|
|
83
|
+
expect(r.perTool).toHaveLength(2);
|
|
84
|
+
expect(r.perTool.map((t) => t.toolName).sort()).toEqual(["mneme.arena.judge", "mneme.proof.attach"]);
|
|
85
|
+
});
|
|
86
|
+
it("aggregate stats: totalTools / ghostCount / meanScore", () => {
|
|
87
|
+
const r = scanReachability({
|
|
88
|
+
catalog: ["mneme.arena.judge", "mneme.unknown.ghost"],
|
|
89
|
+
surfaces: [ROUTER_SRC, SYLLABUS_SRC], // router covers both via auto-route; syllabus only covers arena
|
|
90
|
+
secret: SECRET,
|
|
91
|
+
});
|
|
92
|
+
expect(r.totalTools).toBe(2);
|
|
93
|
+
// Both have router hit (auto-route); arena ALSO has syllabus hit
|
|
94
|
+
expect(r.ghostCount).toBe(0);
|
|
95
|
+
expect(r.meanScore).toBeGreaterThan(1);
|
|
96
|
+
});
|
|
97
|
+
it("non-mneme.X.Y catalog entries are skipped", () => {
|
|
98
|
+
const r = scanReachability({
|
|
99
|
+
catalog: ["mneme.arena.judge", "mneme", "mneme.too.many.dots"],
|
|
100
|
+
surfaces: [ROUTER_SRC],
|
|
101
|
+
secret: SECRET,
|
|
102
|
+
});
|
|
103
|
+
expect(r.perTool).toHaveLength(1);
|
|
104
|
+
expect(r.perTool[0].toolName).toBe("mneme.arena.judge");
|
|
105
|
+
});
|
|
106
|
+
it("includes evidence excerpt per hit (≤80 chars)", () => {
|
|
107
|
+
const r = scanReachability({
|
|
108
|
+
catalog: ["mneme.arena.judge"],
|
|
109
|
+
surfaces: [SYLLABUS_SRC],
|
|
110
|
+
secret: SECRET,
|
|
111
|
+
});
|
|
112
|
+
const t = r.perTool[0];
|
|
113
|
+
expect(t.hits.length).toBeGreaterThan(0);
|
|
114
|
+
expect(t.hits[0].evidence.length).toBeLessThanOrEqual(80);
|
|
115
|
+
});
|
|
116
|
+
});
|
|
117
|
+
describe("v2.19.17 TOOL REACHABILITY · verifyReachabilityReport", () => {
|
|
118
|
+
it("verifies untampered report", () => {
|
|
119
|
+
const r = scanReachability({
|
|
120
|
+
catalog: ["mneme.arena.judge"],
|
|
121
|
+
surfaces: [ROUTER_SRC],
|
|
122
|
+
secret: SECRET,
|
|
123
|
+
});
|
|
124
|
+
expect(verifyReachabilityReport(r, SECRET).ok).toBe(true);
|
|
125
|
+
});
|
|
126
|
+
it("rejects forged report (tampered ghostCount)", () => {
|
|
127
|
+
const r = scanReachability({
|
|
128
|
+
catalog: ["mneme.arena.judge"],
|
|
129
|
+
surfaces: [ROUTER_SRC],
|
|
130
|
+
secret: SECRET,
|
|
131
|
+
});
|
|
132
|
+
const forged = { ...r, ghostCount: 99 };
|
|
133
|
+
expect(verifyReachabilityReport(forged, SECRET).ok).toBe(false);
|
|
134
|
+
});
|
|
135
|
+
it("fails with wrong secret", () => {
|
|
136
|
+
const r = scanReachability({
|
|
137
|
+
catalog: ["mneme.arena.judge"],
|
|
138
|
+
surfaces: [ROUTER_SRC],
|
|
139
|
+
secret: SECRET,
|
|
140
|
+
});
|
|
141
|
+
expect(verifyReachabilityReport(r, "wrong").ok).toBe(false);
|
|
142
|
+
});
|
|
143
|
+
});
|
|
144
|
+
describe("v2.19.17 TOOL REACHABILITY · loadSurface + summary helpers", () => {
|
|
145
|
+
it("loadSurface returns null for non-existent file", () => {
|
|
146
|
+
const s = loadSurface("welcome_syllabus", "/nope/does/not/exist.ts");
|
|
147
|
+
expect(s).toBeNull();
|
|
148
|
+
});
|
|
149
|
+
it("ghostListSummary celebrates zero ghosts", () => {
|
|
150
|
+
const r = scanReachability({
|
|
151
|
+
catalog: ["mneme.arena.judge"],
|
|
152
|
+
surfaces: [ROUTER_SRC],
|
|
153
|
+
secret: SECRET,
|
|
154
|
+
});
|
|
155
|
+
const line = ghostListSummary(r);
|
|
156
|
+
expect(line).toContain("NO GHOSTS");
|
|
157
|
+
});
|
|
158
|
+
it("ghostListSummary lists ghost tools with sample size cap", () => {
|
|
159
|
+
const catalog = Array.from({ length: 15 }, (_, i) => `mneme.ghost${i}.tool`);
|
|
160
|
+
const r = scanReachability({
|
|
161
|
+
catalog,
|
|
162
|
+
surfaces: [SYLLABUS_SRC], // none of the ghost tools mentioned
|
|
163
|
+
secret: SECRET,
|
|
164
|
+
});
|
|
165
|
+
const line = ghostListSummary(r, 5);
|
|
166
|
+
expect(line).toContain("👻");
|
|
167
|
+
expect(line).toContain("15 ghost tool(s)");
|
|
168
|
+
expect(line.endsWith("…")).toBe(true);
|
|
169
|
+
});
|
|
170
|
+
it("formatReachabilityLine uses appropriate glyph per score", () => {
|
|
171
|
+
const t1 = { toolName: "mneme.a.b", family: "a", action: "b", score: 0, hits: [], ghost: true };
|
|
172
|
+
const t2 = { toolName: "mneme.c.d", family: "c", action: "d", score: 1, hits: [{ surface: "cli_router", evidence: "x" }], ghost: false };
|
|
173
|
+
const t3 = { toolName: "mneme.e.f", family: "e", action: "f", score: 3, hits: [], ghost: false };
|
|
174
|
+
expect(formatReachabilityLine(t1)).toContain("👻");
|
|
175
|
+
expect(formatReachabilityLine(t2)).toContain("·");
|
|
176
|
+
expect(formatReachabilityLine(t3)).toContain("🎯");
|
|
177
|
+
});
|
|
178
|
+
});
|
|
179
|
+
describe("v2.19.17 TOOL REACHABILITY · the W2-style ghost-tool kill scenario", () => {
|
|
180
|
+
it("simulates the user's exact complaint: tool ships but no user-facing surface mentions it = REPORT FLAGS IT", () => {
|
|
181
|
+
// Imagine v2.19.X added 4 tools but forgot to update welcome syllabus / whats_new
|
|
182
|
+
const catalog = [
|
|
183
|
+
"mneme.arena.judge", // well-surfaced
|
|
184
|
+
"mneme.proof.attach", // well-surfaced
|
|
185
|
+
"mneme.shadow.forgotten", // ghost
|
|
186
|
+
"mneme.silent.hidden", // ghost
|
|
187
|
+
];
|
|
188
|
+
const r = scanReachability({
|
|
189
|
+
catalog,
|
|
190
|
+
surfaces: [SYLLABUS_SRC, WHATSNEW_SRC, SUGGEST_SRC, CAPS_SRC], // NO router; only syllabus + whatsnew + caps
|
|
191
|
+
enforceFamilies: ["arena", "proof", "shadow", "silent"],
|
|
192
|
+
secret: SECRET,
|
|
193
|
+
});
|
|
194
|
+
expect(r.ghostCount).toBe(2);
|
|
195
|
+
expect(r.ghostList).toEqual(["mneme.shadow.forgotten", "mneme.silent.hidden"]);
|
|
196
|
+
// The well-surfaced ones have hits from syllabus/whats_new/caps (no router in this scenario)
|
|
197
|
+
expect(r.perTool.filter((t) => t.toolName === "mneme.arena.judge")[0].score).toBeGreaterThan(0);
|
|
198
|
+
});
|
|
199
|
+
});
|
|
200
|
+
//# sourceMappingURL=tool_reachability.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tool_reachability.test.js","sourceRoot":"","sources":["../../src/tool_reachability/tool_reachability.test.ts"],"names":[],"mappings":"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"}
|
package/dist/whats_new.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"whats_new.d.ts","sourceRoot":"","sources":["../src/whats_new.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,MAAM,WAAW,iBAAiB;IAChC,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,uEAAuE;IACvE,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,yEAAyE;IACzE,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED;;oCAEoC;AACpC,eAAO,MAAM,UAAU,EAAE,iBAAiB,
|
|
1
|
+
{"version":3,"file":"whats_new.d.ts","sourceRoot":"","sources":["../src/whats_new.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,MAAM,WAAW,iBAAiB;IAChC,6BAA6B;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,6BAA6B;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,uEAAuE;IACvE,IAAI,EAAE,MAAM,CAAC;IACb,sDAAsD;IACtD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,yEAAyE;IACzE,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED;;oCAEoC;AACpC,eAAO,MAAM,UAAU,EAAE,iBAAiB,EAySzC,CAAC;AAEF,MAAM,WAAW,cAAc;IAC7B,iCAAiC;IACjC,cAAc,EAAE,MAAM,CAAC;IACvB;kCAC8B;IAC9B,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAChC,gEAAgE;IAChE,cAAc,EAAE,MAAM,CAAC;IACvB,2DAA2D;IAC3D,cAAc,EAAE,MAAM,CAAC;IACvB,2CAA2C;IAC3C,OAAO,EAAE,MAAM,CAAC;CACjB;AAoBD;sEACsE;AACtE,wBAAgB,WAAW,CAAC,IAAI,GAAE;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAA2B,GAAG,cAAc,CAkB5I;AAED;yEACyE;AACzE,wBAAgB,uBAAuB,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAwB3E"}
|
package/dist/whats_new.js
CHANGED
|
@@ -20,6 +20,22 @@ import { fileURLToPath } from "node:url";
|
|
|
20
20
|
* user-visible behavior. Keep `body` plain English so the AI can quote
|
|
21
21
|
* it verbatim to non-engineers. */
|
|
22
22
|
export const HIGHLIGHTS = [
|
|
23
|
+
{
|
|
24
|
+
version: "2.19.18",
|
|
25
|
+
date: "2026-05-16",
|
|
26
|
+
headline: "CAPTION SEVERANCE PROTOCOL (CSP) -- defeats CAPTION-AUTHORITY ATTACK (CAA), the unnamed multimodal vulnerability of 2026",
|
|
27
|
+
body: "🛡 User scenario: seller posts product image with '[super rare] 100% AUTHENTIC LIMITED!!!' sticker -- and every vision LLM (GPT-4V, Claude Vision, Gemini, LLaVA) silently treats that caption as fact. This is CAPTION-AUTHORITY ATTACK (CAA), the multimodal equivalent of HTML XSS in 1995. Nobody has named or defended against this class until now. v2.19.18 ships the first MCP primitive: CAPTION SEVERANCE PROTOCOL (CSP). 6 steps: (1) OCR extraction (caller supplies; vendor-agnostic), (2) naked-image fingerprint (Phase A deterministic stub; Phase B opt-in inpaint), (3) XSS-style claim escape (wraps every caption as 'UNVERIFIED SELLER CAPTION @ corner-sticker, credibility-prior=0.12: ...'), (4) provenance gate (composes onto v2.19.16 FEDERATED TRUTH quorum: AUTHENTIC/DISPUTED/UNKNOWN), (5) adversarial double-check (caller runs vendor TWICE with different captions; diff via Jaccard; flag captionDependent), (6) entropy-as-desperation (text-overlay density + scam phrase count -- golden rule: real items let image speak, fakes let caption shout). Output: HMAC-signed VISION TRUST CERTIFICATE with finalCredibility + aiPromptInjection ready to prepend to vendor-vision call. 7 new MCP tools (mneme.caption.{sever, extract, escape, adversarial_check, provenance, verify_cert, desperation_score}). 39 deep tests including canonical CAA defeat scenario. 4-layer routing defense ensures every compliant AI agent actually calls CSP: Layer 1 mneme.welcome agentInstruction adds VISION PROTOCOL directive; Layer 2 mneme.intent.execute adds 14 EN+TH phrases (is this authentic / ตรวจของแท้ / real or fake) that ALWAYS route to caption.sever first; Layer 3 v2.19.10 reverse-wrapper auto-suggests adversarial_check on low-credibility severance output; Layer 4 v2.19.13 NEGEV TOKEN-TAX charges vendor for caption-dependent answers without certs. AURELIAN SHIP both layers.",
|
|
28
|
+
suggestedAction: "Tell the AI: 'is this authentic' or 'ตรวจของแท้' next time the user shares a product image. The 4-layer defense routes through mneme.caption.sever automatically -- the AI gets a wrapped caption + provenance verdict + adversarial-stability score before answering.",
|
|
29
|
+
tags: ["caption-severance", "caa-defense", "multimodal-safety", "world-first", "first-namer", "4-layer-routing"],
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
version: "2.19.17",
|
|
33
|
+
date: "2026-05-16",
|
|
34
|
+
headline: "TOOL REACHABILITY ENGINE -- the ghost-tool killer (measure + enforce user-reachability per MCP tool) + STATUS PROBE FIX (W5)",
|
|
35
|
+
body: "🎯 TOOL REACHABILITY: user audit caught the systemic disease 'ship a wrapper then forget to expose it' -- AUTO-GENESIS proved the wrapper EXISTS but didn't prove the wrapper REACHES users. v2.19.17 ships 5 surface scanners that count, per MCP tool, how many distinct user-facing paths actually expose it (cli_router auto-route / welcome syllabus / whats_new highlights / suggested-next rules / capabilities tool). HMAC-signed reachability report. New ritual gate phase3.no-ghost-tools-v218 BLOCKS publish on any v2.18+ tool with score=0 -- the 'invisible feature' bug class becomes structurally impossible. 4 new MCP tools (mneme.reachability.{scan, report, ghost_list, surface_audit}). 15 deep tests including the exact W2-style ghost-kill scenario. 🦠 STATUS PROBE FIX: mneme status now PROBES the runtime embedder ladder via resolveEmbedder() and shows the actual chosen tier with star badge (★★★★★ openai / ★★★★ ollama / ★★★ bundled or snn / ★★ hash) -- fixes the W5 audit where status reported hash:fnv-256 [FALLBACK] even when SNN was active. Added 'snn' to MnemeConfig.embeddings.provider union for explicit pinning. AURELIAN SHIP both layers.",
|
|
36
|
+
suggestedAction: "Tell the AI: 'scan tool reachability' (mneme.reachability.scan) -- see if your install has any ghost tools. Or 'mneme status' -- now shows the actual runtime embedder tier, not just config.",
|
|
37
|
+
tags: ["tool-reachability", "ghost-tool-kill", "ritual-gate", "status-probe", "snn-default"],
|
|
38
|
+
},
|
|
23
39
|
{
|
|
24
40
|
version: "2.19.16",
|
|
25
41
|
date: "2026-05-16",
|
package/dist/whats_new.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"whats_new.js","sourceRoot":"","sources":["../src/whats_new.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"whats_new.js","sourceRoot":"","sources":["../src/whats_new.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/wrapper_genesis/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAMH,QAAA,MAAM,gBAAgB,EAAG,CAAU,CAAC;AAgBpC;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/wrapper_genesis/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAMH,QAAA,MAAM,gBAAgB,EAAG,CAAU,CAAC;AAgBpC;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,aA4BhC,CAAC;AAUH,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,UAAU,GAAG,gBAAgB,GAAG,OAAO,GAAG,OAAO,CAAC;IACxD,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,0CAA0C;IAC1C,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,8DAA8D;IAC9D,gBAAgB,EAAE,MAAM,CAAC;IACzB,0EAA0E;IAC1E,MAAM,EAAE,MAAM,CAAC;IACf,0EAA0E;IAC1E,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,CAAC,EAAE,OAAO,gBAAgB,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,2DAA2D;IAC3D,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,wCAAwC;IACxC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,qCAAqC;IACrC,EAAE,EAAE,OAAO,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;CACb;AAgCD,4EAA4E;AAC5E,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,EAAE,CAgChE;AAED,4EAA4E;AAC5E,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,WAAW,EAAE,CAkBnE;AAiKD,wBAAgB,WAAW,CAAC,KAAK,EAAE;IACjC,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB,GAAG,aAAa,EAAE,CAmClB;AAED,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,aAAa,CA2B9D;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAGvE;AAED,iEAAiE;AACjE,wBAAgB,YAAY,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,CAGrD;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,aAAa,GAAG,MAAM,CAiBrD"}
|
|
@@ -83,6 +83,8 @@ export const ENFORCE_FULL_COVERAGE = new Set([
|
|
|
83
83
|
"consequence_ledger",
|
|
84
84
|
"truth_forensic_pipeline",
|
|
85
85
|
"federated_truth",
|
|
86
|
+
"tool_reachability",
|
|
87
|
+
"caption_severance",
|
|
86
88
|
"jackpot",
|
|
87
89
|
]);
|
|
88
90
|
const EXCLUDED_MODULES = new Set([
|
|
@@ -213,6 +215,8 @@ function familyAliases(moduleName) {
|
|
|
213
215
|
consequence_ledger: ["consequence"],
|
|
214
216
|
truth_forensic_pipeline: ["truth"],
|
|
215
217
|
federated_truth: ["federated"],
|
|
218
|
+
tool_reachability: ["reachability"],
|
|
219
|
+
caption_severance: ["caption"],
|
|
216
220
|
arena: ["arena"],
|
|
217
221
|
verified_badge: ["badge"],
|
|
218
222
|
oracle_liability: ["oracle"],
|
|
@@ -337,6 +341,15 @@ const ALWAYS_INTERNAL_EXPORTS = new Set([
|
|
|
337
341
|
// standalone MCP tools (the network transport is intentionally caller's
|
|
338
342
|
// job; existing MESH / NEXUS layers carry the JSON envelopes).
|
|
339
343
|
"serializeAttestation", "deserializeAttestation", "fingerprintArtifact",
|
|
344
|
+
// v2.19.17 tool-reachability — surface loaders + summary helpers not
|
|
345
|
+
// user-callable standalone (scanReachability is the entry point).
|
|
346
|
+
"loadSurface", "ghostListSummary",
|
|
347
|
+
// v2.19.18 caption-severance:
|
|
348
|
+
// adversarialDoubleCheck IS surfaced as mneme.caption.adversarial_check
|
|
349
|
+
// but snake-case action doesn't match camelCase symbol via heuristic;
|
|
350
|
+
// nakedImageFingerprint is an internal pipeline helper (Step 2);
|
|
351
|
+
// answerHasValidCert is a downstream-AI compliance check, not a tool.
|
|
352
|
+
"adversarialDoubleCheck", "nakedImageFingerprint", "answerHasValidCert",
|
|
340
353
|
]);
|
|
341
354
|
export function findOrphans(input) {
|
|
342
355
|
const out = [];
|