@mneme-ai/core 1.83.0 → 1.85.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 (59) hide show
  1. package/dist/agent_manifest.d.ts +1 -1
  2. package/dist/agent_manifest.d.ts.map +1 -1
  3. package/dist/agent_manifest.js +4 -1
  4. package/dist/agent_manifest.js.map +1 -1
  5. package/dist/diaspora/http_bridge.d.ts.map +1 -1
  6. package/dist/diaspora/http_bridge.js +12 -1
  7. package/dist/diaspora/http_bridge.js.map +1 -1
  8. package/dist/exodus/wanderer.d.ts +19 -3
  9. package/dist/exodus/wanderer.d.ts.map +1 -1
  10. package/dist/exodus/wanderer.js +71 -21
  11. package/dist/exodus/wanderer.js.map +1 -1
  12. package/dist/genesplice/gist_transmit.d.ts.map +1 -1
  13. package/dist/genesplice/gist_transmit.js +7 -0
  14. package/dist/genesplice/gist_transmit.js.map +1 -1
  15. package/dist/index.d.ts +1 -0
  16. package/dist/index.d.ts.map +1 -1
  17. package/dist/index.js +5 -0
  18. package/dist/index.js.map +1 -1
  19. package/dist/lattice/intent_atoms.d.ts.map +1 -1
  20. package/dist/lattice/intent_atoms.js +79 -0
  21. package/dist/lattice/intent_atoms.js.map +1 -1
  22. package/dist/lineage/spore.d.ts.map +1 -1
  23. package/dist/lineage/spore.js +15 -9
  24. package/dist/lineage/spore.js.map +1 -1
  25. package/dist/relay/encrypted_payload.d.ts +33 -0
  26. package/dist/relay/encrypted_payload.d.ts.map +1 -0
  27. package/dist/relay/encrypted_payload.js +65 -0
  28. package/dist/relay/encrypted_payload.js.map +1 -0
  29. package/dist/relay/index.d.ts +16 -0
  30. package/dist/relay/index.d.ts.map +1 -0
  31. package/dist/relay/index.js +16 -0
  32. package/dist/relay/index.js.map +1 -0
  33. package/dist/relay/mobile_recipe.d.ts +35 -0
  34. package/dist/relay/mobile_recipe.d.ts.map +1 -0
  35. package/dist/relay/mobile_recipe.js +35 -0
  36. package/dist/relay/mobile_recipe.js.map +1 -0
  37. package/dist/relay/paste_backend.d.ts +47 -0
  38. package/dist/relay/paste_backend.d.ts.map +1 -0
  39. package/dist/relay/paste_backend.js +94 -0
  40. package/dist/relay/paste_backend.js.map +1 -0
  41. package/dist/relay/relay.test.d.ts +2 -0
  42. package/dist/relay/relay.test.d.ts.map +1 -0
  43. package/dist/relay/relay.test.js +108 -0
  44. package/dist/relay/relay.test.js.map +1 -0
  45. package/dist/synapse/nexus_code.d.ts +30 -1
  46. package/dist/synapse/nexus_code.d.ts.map +1 -1
  47. package/dist/synapse/nexus_code.js +11 -1
  48. package/dist/synapse/nexus_code.js.map +1 -1
  49. package/dist/synapse/qr_anchor.d.ts.map +1 -1
  50. package/dist/synapse/qr_anchor.js +4 -2
  51. package/dist/synapse/qr_anchor.js.map +1 -1
  52. package/dist/synapse/token_compression.d.ts.map +1 -1
  53. package/dist/synapse/token_compression.js +26 -2
  54. package/dist/synapse/token_compression.js.map +1 -1
  55. package/dist/v1_84_regression.test.d.ts +6 -0
  56. package/dist/v1_84_regression.test.d.ts.map +1 -0
  57. package/dist/v1_84_regression.test.js +172 -0
  58. package/dist/v1_84_regression.test.js.map +1 -0
  59. package/package.json +1 -1
@@ -0,0 +1,94 @@
1
+ /**
2
+ * v1.85.0 -- RELAY: anonymous public paste backends.
3
+ *
4
+ * The pain user surfaced: NEXUS code 6 ตัว ทำงานเฉพาะ PC↔PC ที่มี Mneme
5
+ * ทั้งสองข้าง. Mobile AI apps (Gemini/Claude/ChatGPT) ไม่มี Mneme +
6
+ * resolve code ไม่ได้ → hallucinate.
7
+ *
8
+ * RELAY fixes this WITHOUT deploying any cloud infrastructure: upload
9
+ * the soul prompt to a PUBLIC ANONYMOUS paste service, return the
10
+ * short URL. Mobile AI apps can fetch URLs (they have web access).
11
+ *
12
+ * PC: AI mints soul → uploads to dpaste.com/<id> → returns URL
13
+ * PC: shows QR with the URL embedded
14
+ * Mobile: scans QR (or types URL) → AI fetches → reads soul → resumes
15
+ *
16
+ * Multiple backends so user has fallback:
17
+ * - dpaste.com (anonymous, 7-day default expiry, raw URL)
18
+ * - paste.rs (anonymous, 30-day, ultra-minimal)
19
+ * - 0x0.st (anonymous, expires by size, raw)
20
+ *
21
+ * Privacy: combine with encrypted_payload.ts -- the URL serves the
22
+ * ciphertext; only the user's NEXUS code (out-of-band) can decrypt.
23
+ * Strangers fetching the URL get garbage bytes.
24
+ */
25
+ /** Upload to dpaste.com. */
26
+ export async function uploadToDpaste(input) {
27
+ const fetchImpl = input.fetchImpl ?? fetch;
28
+ try {
29
+ const form = new URLSearchParams();
30
+ form.set("content", input.content);
31
+ form.set("syntax", "text");
32
+ form.set("expiry_days", "7");
33
+ const res = await fetchImpl("https://dpaste.com/api/v2/", {
34
+ method: "POST",
35
+ headers: { "Content-Type": "application/x-www-form-urlencoded" },
36
+ body: form.toString(),
37
+ });
38
+ if (!res.ok)
39
+ return { ok: false, url: null, backend: "dpaste", reason: `HTTP ${res.status}`, expiresIn: "7d" };
40
+ const url = (await res.text()).trim();
41
+ return { ok: true, url: url.endsWith(".txt") ? url : url + ".txt", backend: "dpaste", expiresIn: "7d" };
42
+ }
43
+ catch (e) {
44
+ return { ok: false, url: null, backend: "dpaste", reason: e.message, expiresIn: "7d" };
45
+ }
46
+ }
47
+ /** Upload to paste.rs (ultra-minimal, anonymous). */
48
+ export async function uploadToPasteRs(input) {
49
+ const fetchImpl = input.fetchImpl ?? fetch;
50
+ try {
51
+ const res = await fetchImpl("https://paste.rs/", {
52
+ method: "POST",
53
+ headers: { "Content-Type": "text/plain" },
54
+ body: input.content,
55
+ });
56
+ if (!res.ok)
57
+ return { ok: false, url: null, backend: "pasters", reason: `HTTP ${res.status}`, expiresIn: "30d" };
58
+ const url = (await res.text()).trim();
59
+ return { ok: true, url, backend: "pasters", expiresIn: "30d" };
60
+ }
61
+ catch (e) {
62
+ return { ok: false, url: null, backend: "pasters", reason: e.message, expiresIn: "30d" };
63
+ }
64
+ }
65
+ /** Upload to 0x0.st (anonymous file drop). */
66
+ export async function uploadToZeroXZero(input) {
67
+ const fetchImpl = input.fetchImpl ?? fetch;
68
+ try {
69
+ const form = new FormData();
70
+ form.set("file", new Blob([input.content], { type: "text/plain" }), "soul.txt");
71
+ const res = await fetchImpl("https://0x0.st/", { method: "POST", body: form });
72
+ if (!res.ok)
73
+ return { ok: false, url: null, backend: "zero-x-zero", reason: `HTTP ${res.status}`, expiresIn: "size-based" };
74
+ const url = (await res.text()).trim();
75
+ return { ok: true, url, backend: "zero-x-zero", expiresIn: "size-based" };
76
+ }
77
+ catch (e) {
78
+ return { ok: false, url: null, backend: "zero-x-zero", reason: e.message, expiresIn: "size-based" };
79
+ }
80
+ }
81
+ /** Try backends in order; return first success. Lets the user have a
82
+ * graceful fallback if any service is rate-limited or down. */
83
+ export async function uploadWithFallback(input, order = ["dpaste", "pasters", "zero-x-zero"]) {
84
+ const errors = [];
85
+ for (const id of order) {
86
+ const fn = id === "dpaste" ? uploadToDpaste : id === "pasters" ? uploadToPasteRs : uploadToZeroXZero;
87
+ const r = await fn(input);
88
+ if (r.ok)
89
+ return r;
90
+ errors.push(`${id}: ${r.reason ?? "unknown"}`);
91
+ }
92
+ return { ok: false, url: null, backend: order[order.length - 1], reason: `all backends failed: ${errors.join(" | ")}`, expiresIn: "n/a" };
93
+ }
94
+ //# sourceMappingURL=paste_backend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"paste_backend.js","sourceRoot":"","sources":["../../src/relay/paste_backend.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=relay.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relay.test.d.ts","sourceRoot":"","sources":["../../src/relay/relay.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,108 @@
1
+ import { describe, it, expect } from "vitest";
2
+ import { uploadToDpaste, uploadToPasteRs, uploadToZeroXZero, uploadWithFallback } from "./paste_backend.js";
3
+ import { encryptWithCode, decryptWithCode } from "./encrypted_payload.js";
4
+ import { renderMobileRecipe } from "./mobile_recipe.js";
5
+ function mockFetch(status, body) {
6
+ return (async () => new Response(body, { status }));
7
+ }
8
+ describe("v1.85 RELAY · paste backends (mocked)", () => {
9
+ it("dpaste upload returns URL on 200", async () => {
10
+ const r = await uploadToDpaste({ content: "soul", fetchImpl: mockFetch(200, "https://dpaste.com/AB12CD") });
11
+ expect(r.ok).toBe(true);
12
+ expect(r.url).toContain("dpaste.com");
13
+ expect(r.backend).toBe("dpaste");
14
+ });
15
+ it("dpaste failure returns ok=false with reason", async () => {
16
+ const r = await uploadToDpaste({ content: "soul", fetchImpl: mockFetch(500, "internal error") });
17
+ expect(r.ok).toBe(false);
18
+ expect(r.reason).toContain("500");
19
+ });
20
+ it("paste.rs upload returns URL on 200", async () => {
21
+ const r = await uploadToPasteRs({ content: "soul", fetchImpl: mockFetch(200, "https://paste.rs/aBcD") });
22
+ expect(r.ok).toBe(true);
23
+ expect(r.url).toBe("https://paste.rs/aBcD");
24
+ expect(r.backend).toBe("pasters");
25
+ });
26
+ it("0x0.st upload returns URL on 200", async () => {
27
+ const r = await uploadToZeroXZero({ content: "soul", fetchImpl: mockFetch(200, "https://0x0.st/abcd.txt") });
28
+ expect(r.ok).toBe(true);
29
+ expect(r.url).toContain("0x0.st");
30
+ });
31
+ it("uploadWithFallback tries each backend in order", async () => {
32
+ // First backend fails, second succeeds.
33
+ let attempt = 0;
34
+ const fetchImpl = (async () => {
35
+ attempt += 1;
36
+ if (attempt === 1)
37
+ return new Response("rate-limit", { status: 429 });
38
+ return new Response("https://paste.rs/AB", { status: 200 });
39
+ });
40
+ const r = await uploadWithFallback({ content: "soul", fetchImpl }, ["dpaste", "pasters"]);
41
+ expect(r.ok).toBe(true);
42
+ expect(r.backend).toBe("pasters");
43
+ });
44
+ it("uploadWithFallback returns combined errors when all fail", async () => {
45
+ const r = await uploadWithFallback({ content: "soul", fetchImpl: mockFetch(500, "err") }, ["dpaste", "pasters"]);
46
+ expect(r.ok).toBe(false);
47
+ expect(r.reason).toContain("all backends failed");
48
+ expect(r.reason).toContain("dpaste");
49
+ expect(r.reason).toContain("pasters");
50
+ });
51
+ });
52
+ describe("v1.85 RELAY · encrypted payload", () => {
53
+ it("encrypt + decrypt round-trip recovers the plaintext", () => {
54
+ const env = encryptWithCode("# SOUL\nbody body body", "K7M9X2");
55
+ const r = decryptWithCode(env.text, "K7M9X2");
56
+ expect(r.ok).toBe(true);
57
+ if (r.ok)
58
+ expect(r.plaintext).toBe("# SOUL\nbody body body");
59
+ });
60
+ it("wrong code fails decryption (auth tag mismatch)", () => {
61
+ const env = encryptWithCode("secret", "K7M9X2");
62
+ const r = decryptWithCode(env.text, "WRONGC");
63
+ expect(r.ok).toBe(false);
64
+ if (!r.ok)
65
+ expect(r.reason).toBe("wrong-code-or-tampered");
66
+ });
67
+ it("garbage envelope returns not-envelope", () => {
68
+ const r = decryptWithCode("not a real envelope", "ANY123");
69
+ expect(r.ok).toBe(false);
70
+ if (!r.ok)
71
+ expect(r.reason).toBe("not-envelope");
72
+ });
73
+ it("tampered ciphertext is detected by auth tag", () => {
74
+ const env = encryptWithCode("secret", "K7M9X2");
75
+ // Mutate one char in the base64url body
76
+ const head = env.text.slice(0, 30);
77
+ const tail = env.text.slice(31);
78
+ const tampered = head + (env.text[30] === "A" ? "B" : "A") + tail;
79
+ const r = decryptWithCode(tampered, "K7M9X2");
80
+ expect(r.ok).toBe(false);
81
+ });
82
+ it("envelope header is stable across encryptions", () => {
83
+ const a = encryptWithCode("x", "AAA111");
84
+ const b = encryptWithCode("x", "AAA111");
85
+ // Same prefix, different bodies (random salt+iv).
86
+ expect(a.text.split("\n")[0]).toBe(b.text.split("\n")[0]);
87
+ expect(a.text).not.toBe(b.text);
88
+ });
89
+ it("algorithm metadata is exposed for audit", () => {
90
+ const env = encryptWithCode("x", "Y");
91
+ expect(env.algorithm).toBe("aes-256-gcm");
92
+ expect(env.iterations).toBe(200_000);
93
+ });
94
+ });
95
+ describe("v1.85 RELAY · mobile recipe", () => {
96
+ it("renderMobileRecipe produces a one-line mobile prompt + 3 instructions", () => {
97
+ const r = renderMobileRecipe("https://paste.rs/aB", "K7M9X2");
98
+ expect(r.url).toBe("https://paste.rs/aB");
99
+ expect(r.code).toBe("K7M9X2");
100
+ expect(r.mobilePrompt).toContain("Fetch the URL https://paste.rs/aB");
101
+ expect(r.mobilePrompt).toContain("K7M9X2");
102
+ expect(r.qrPayload).toBe("mneme:K7M9X2|https://paste.rs/aB");
103
+ expect(r.instructions.mobileAiApp).toContain("Claude / Gemini / ChatGPT");
104
+ expect(r.instructions.mnemeAwareEditor).toContain("mneme.synapse.resolve_code");
105
+ expect(r.instructions.webAi).toContain("chatgpt.com / gemini.google.com");
106
+ });
107
+ });
108
+ //# sourceMappingURL=relay.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"relay.test.js","sourceRoot":"","sources":["../../src/relay/relay.test.ts"],"names":[],"mappings":"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"}
@@ -37,9 +37,38 @@ export interface MintInput {
37
37
  gistUrl?: string;
38
38
  ttlMs?: number;
39
39
  storeDir?: string;
40
+ /** Optional LAN URL for same-WiFi pairing (used with AURA payloads). */
41
+ lanUrl?: string;
40
42
  }
43
+ /** v1.84 ARCHITECTURAL FIX: NEXUS code → portable URL for mobile apps.
44
+ * Root problem the user surfaced: mobile AI apps (Claude/Gemini/ChatGPT
45
+ * on phone) cannot resolve a bare 6-char code -- they have no Mneme +
46
+ * no MCP. They hallucinate something completely unrelated.
47
+ *
48
+ * Solution: every NEXUS code is ALSO published as a portable URL the
49
+ * mobile AI can fetch. The "code" stays for Mneme-aware destinations;
50
+ * the URL is for everyone else. User shares whichever the destination
51
+ * can use:
52
+ * - Mneme-aware destination (Cursor laptop) -> short code "K7M9X2"
53
+ * - Mobile app / web AI -> portable URL
54
+ */
55
+ export interface NexusPortable {
56
+ /** The 6-char code (Mneme-aware destinations). */
57
+ code: string;
58
+ /** A user-shareable URL the mobile AI can fetch.
59
+ * Prefers gistUrl > lanUrl > null. */
60
+ url: string | null;
61
+ /** Human-readable instruction the SOURCE AI can read aloud to the user. */
62
+ instruction: string;
63
+ /** A QR-friendly payload combining code + URL on one line.
64
+ * Format: "mneme:K7M9X2|<url>" -- short, scannable, deterministic. */
65
+ qrPayload: string;
66
+ }
67
+ export declare function portableFor(entry: NexusCode): NexusPortable;
41
68
  /** Mint a NEXUS code for a soul prompt. Returns the code + persists. */
42
- export declare function mintNexusCode(repoRoot: string, input: MintInput): NexusCode;
69
+ export declare function mintNexusCode(repoRoot: string, input: MintInput): NexusCode & {
70
+ portable: NexusPortable;
71
+ };
43
72
  /** Resolve a NEXUS code back to its entry. Returns null if expired or
44
73
  * unknown. Bumps `resolveCount` on success. */
45
74
  export declare function resolveNexusCode(repoRoot: string, code: string, storeDir?: string): NexusCode | null;
@@ -1 +1 @@
1
- {"version":3,"file":"nexus_code.d.ts","sourceRoot":"","sources":["../../src/synapse/nexus_code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAYH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,QAAQ,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kDAAkD;IAClD,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAqBD,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,SAAS,CAgB3E;AAED;gDACgD;AAChD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAiCpG;AAED,6CAA6C;AAC7C,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,CAgB/E"}
1
+ {"version":3,"file":"nexus_code.d.ts","sourceRoot":"","sources":["../../src/synapse/nexus_code.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAYH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,iCAAiC;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,qDAAqD;IACrD,SAAS,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,QAAQ,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kDAAkD;IAClD,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,aAAa;IAC5B,kDAAkD;IAClD,IAAI,EAAE,MAAM,CAAC;IACb;2CACuC;IACvC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,2EAA2E;IAC3E,WAAW,EAAE,MAAM,CAAC;IACpB;2EACuE;IACvE,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,aAAa,CAO3D;AAqBD,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,SAAS,GAAG;IAAE,QAAQ,EAAE,aAAa,CAAA;CAAE,CAkBzG;AAED;gDACgD;AAChD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAiCpG;AAED,6CAA6C;AAC7C,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,EAAE,CAgB/E"}
@@ -25,6 +25,14 @@ const CODE_LENGTH = 6;
25
25
  const DEFAULT_TTL_MS = 24 * 60 * 60 * 1000;
26
26
  const STORE_DIR = ".mneme/synapse";
27
27
  const STORE_FILE = "codes.jsonl";
28
+ export function portableFor(entry) {
29
+ const url = entry.gistUrl ?? null;
30
+ const qrPayload = url ? `mneme:${entry.code}|${url}` : `mneme:${entry.code}`;
31
+ const instruction = url
32
+ ? `On the other device, either type code "${entry.code}" (if it has Mneme) OR paste this URL into the chat and say "fetch this brain": ${url}`
33
+ : `On the other device with Mneme, type code "${entry.code}". (For a phone app WITHOUT Mneme, ask source AI to mint a code WITH a Gist URL.)`;
34
+ return { code: entry.code, url, instruction, qrPayload };
35
+ }
28
36
  function ensureStoreDir(repoRoot, override) {
29
37
  const dir = override ?? join(repoRoot, STORE_DIR);
30
38
  if (!existsSync(dir))
@@ -58,7 +66,9 @@ export function mintNexusCode(repoRoot, input) {
58
66
  resolveCount: 0,
59
67
  };
60
68
  appendFileSync(join(dir, STORE_FILE), JSON.stringify(entry) + "\n", "utf8");
61
- return entry;
69
+ // v1.84: bundle the portable representation alongside so source AI
70
+ // can directly hand the user a mobile-friendly URL + instruction.
71
+ return { ...entry, portable: portableFor(entry) };
62
72
  }
63
73
  /** Resolve a NEXUS code back to its entry. Returns null if expired or
64
74
  * unknown. Bumps `resolveCount` on success. */
@@ -1 +1 @@
1
- {"version":3,"file":"nexus_code.js","sourceRoot":"","sources":["../../src/synapse/nexus_code.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nexus_code.js","sourceRoot":"","sources":["../../src/synapse/nexus_code.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"qr_anchor.d.ts","sourceRoot":"","sources":["../../src/synapse/qr_anchor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,WAAW,eAAe;IAC9B,sDAAsD;IACtD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAKD;;;;;;;;6CAQ6C;AAC7C,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,eAAoB,GAAG,gBAAgB,CAmE5F"}
1
+ {"version":3,"file":"qr_anchor.d.ts","sourceRoot":"","sources":["../../src/synapse/qr_anchor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,MAAM,WAAW,eAAe;IAC9B,sDAAsD;IACtD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,uCAAuC;IACvC,IAAI,EAAE,MAAM,CAAC;IACb,6DAA6D;IAC7D,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAKD;;;;;;;;6CAQ6C;AAC7C,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,eAAoB,GAAG,gBAAgB,CAoE5F"}
@@ -11,6 +11,7 @@
11
11
  * longer payloads (full soul prompt), we error out and tell the
12
12
  * user to share the NEXUS code or Gist URL instead.
13
13
  */
14
+ import { createHash } from "node:crypto";
14
15
  const MAX_ALPHANUM = 50;
15
16
  const MAX_BYTES = 100;
16
17
  /** Build a deterministic stipple-art QR-style anchor.
@@ -52,8 +53,9 @@ export function encodeQRAnchor(payload, opts = {}) {
52
53
  drawFinder(0, gridSize - 7);
53
54
  drawFinder(gridSize - 7, 0);
54
55
  // Fill the data region from a hash of payload.
55
- const crypto = require("node:crypto");
56
- const seed = crypto.createHash("sha256").update(payload).digest();
56
+ // v1.84 Bug R4-1: top-level ESM import instead of require() which
57
+ // throws "Cannot determine intended module format" in pure-ESM build.
58
+ const seed = createHash("sha256").update(payload).digest();
57
59
  let cursor = 0;
58
60
  for (let r = 0; r < gridSize; r++) {
59
61
  for (let c = 0; c < gridSize; c++) {
@@ -1 +1 @@
1
- {"version":3,"file":"qr_anchor.js","sourceRoot":"","sources":["../../src/synapse/qr_anchor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qr_anchor.js","sourceRoot":"","sources":["../../src/synapse/qr_anchor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"token_compression.d.ts","sourceRoot":"","sources":["../../src/synapse/token_compression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,MAAM,WAAW,wBAAwB;IACvC,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,oBAAoB,EAAE,SAAS,wBAAwB,EAoBnE,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,sEAAsE;AACtE,wBAAgB,oBAAoB,IAAI,MAAM,CAG7C;AAED;;sEAEsE;AACtE,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,iBAAiB,CAoBpG;AAED;;0CAE0C;AAC1C,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAYnD"}
1
+ {"version":3,"file":"token_compression.d.ts","sourceRoot":"","sources":["../../src/synapse/token_compression.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,MAAM,WAAW,wBAAwB;IACvC,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,oBAAoB,EAAE,SAAS,wBAAwB,EA6CnE,CAAC;AAEF,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,0EAA0E;IAC1E,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,sEAAsE;AACtE,wBAAgB,oBAAoB,IAAI,MAAM,CAG7C;AAED;;sEAEsE;AACtE,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE;IAAE,aAAa,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,iBAAiB,CAoBpG;AAED;;0CAE0C;AAC1C,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAYnD"}
@@ -23,7 +23,7 @@
23
23
  * Token savings on a typical soul prompt: ~35-50% reduction.
24
24
  */
25
25
  export const COMPRESSION_CODEBOOK = [
26
- // Section headers (largest savings)
26
+ // Section headers (largest savings).
27
27
  { code: "@@V", expansion: "## VOICE DIRECTIVE (read FIRST -- governs every user-facing reply)" },
28
28
  { code: "@@D", expansion: "## Mneme dictionary (read this BEFORE interpreting any Mneme keyword)" },
29
29
  { code: "@@C", expansion: "## CONDUIT relay protocol (paste-only AIs read this carefully)" },
@@ -34,13 +34,37 @@ export const COMPRESSION_CODEBOOK = [
34
34
  { code: "@@M", expansion: "## Decisions made" },
35
35
  { code: "@@T", expansion: "## Recent turns" },
36
36
  { code: "@@R", expansion: "## Reasoning highlights (5th strand)" },
37
- // High-frequency phrases
37
+ // v1.84 R4-2: full directive body fragments (the bulk of soul-prompt tokens).
38
+ { code: "@@v1", expansion: "Never speak Mneme codenames out loud" },
39
+ { code: "@@v2", expansion: "No mode narration" },
40
+ { code: "@@v3", expansion: "Stop offering menus" },
41
+ { code: "@@v4", expansion: "No unsolicited version chatter" },
42
+ { code: "@@v5", expansion: "One hedge per reply, max" },
43
+ { code: "@@v6", expansion: "Match the previous turn's voice" },
44
+ { code: "@@in", expansion: "Internal codenames (never say these to the user)" },
45
+ { code: "@@gv", expansion: "Compute age = now - createdAt and act:" },
46
+ { code: "@@cr", expansion: "# CONDUIT RETURN" },
47
+ { code: "@@hb", expansion: "What this means (receiving AI, READ THIS):" },
48
+ { code: "@@dx", expansion: "user-facing reply" },
49
+ { code: "@@rc", expansion: "receiving AI" },
50
+ { code: "@@sa", expansion: "source AI" },
51
+ { code: "@@oa", expansion: "originating session" },
52
+ { code: "@@np", expansion: "no Mneme installed locally" },
53
+ { code: "@@cp", expansion: "cross-vendor" },
54
+ { code: "@@hh", expansion: "handover" },
55
+ { code: "@@nm", expansion: "the npm package mneme-ai" },
56
+ { code: "@@cp2", expansion: "cross-machine" },
57
+ // Common Mneme phrases (1-3 chars).
38
58
  { code: "@u", expansion: "the user" },
39
59
  { code: "@a", expansion: "the AI" },
40
60
  { code: "@s", expansion: "soul prompt" },
41
61
  { code: "@m", expansion: "Mneme" },
42
62
  { code: "@e", expansion: "MCP tool" },
43
63
  { code: "@p", expansion: "paste-only" },
64
+ { code: "@nx", expansion: "NEXUS code" },
65
+ { code: "@gx", expansion: "Gist URL" },
66
+ { code: "@lb", expansion: "LAN bridge" },
67
+ { code: "@vd", expansion: "voice directive" },
44
68
  ];
45
69
  /** Render a one-line codebook header that decompressors can parse. */
46
70
  export function renderCodebookHeader() {
@@ -1 +1 @@
1
- {"version":3,"file":"token_compression.js","sourceRoot":"","sources":["../../src/synapse/token_compression.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"token_compression.js","sourceRoot":"","sources":["../../src/synapse/token_compression.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * v1.84.0 -- regression suite covering Round 4 + Round 5 user findings.
3
+ * One file, all bugs, all fixed.
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=v1_84_regression.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v1_84_regression.test.d.ts","sourceRoot":"","sources":["../src/v1_84_regression.test.ts"],"names":[],"mappings":"AAAA;;;GAGG"}