backpack-ontology 0.7.0 → 0.7.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"share-tools.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/share-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AASvD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,QAAQ,GACjB,IAAI,CA6HN"}
1
+ {"version":3,"file":"share-tools.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/share-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAUvD,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,QAAQ,GACjB,IAAI,CA8HN"}
@@ -1,6 +1,6 @@
1
1
  import { z } from "zod";
2
2
  import { writeFile } from "node:fs/promises";
3
- import { createEnvelope, generateKeyPair, encrypt, encodeKeyForFragment, uploadToRelay, } from "../../sharing/index.js";
3
+ import { createEnvelope, generateKeyPair, encrypt, encodeKeyForFragment, syncToRelay, createShareLink, } from "../../sharing/index.js";
4
4
  export function registerShareTools(server, backpack) {
5
5
  // backpack_share — encrypt and upload to a relay
6
6
  server.registerTool("backpack_share", {
@@ -21,14 +21,15 @@ export function registerShareTools(server, backpack) {
21
21
  .boolean()
22
22
  .default(true)
23
23
  .describe("Encrypt the backpack before sharing (default: true)"),
24
- passphrase: z
25
- .string()
26
- .optional()
27
- .describe("Optional passphrase for additional protection"),
28
24
  },
29
- }, async ({ name, relayUrl, relayToken, encrypted, passphrase }) => {
25
+ }, async ({ name, relayUrl, relayToken, encrypted }) => {
30
26
  const data = await backpack.loadOntology(name);
31
27
  const plaintext = new TextEncoder().encode(JSON.stringify(data));
28
+ const stats = {
29
+ node_count: data.nodes.length,
30
+ edge_count: data.edges.length,
31
+ node_types: [...new Set(data.nodes.map((n) => n.type))],
32
+ };
32
33
  let payload;
33
34
  let format;
34
35
  let fragmentKey = "";
@@ -43,12 +44,15 @@ export function registerShareTools(server, backpack) {
43
44
  format = "plaintext";
44
45
  }
45
46
  const graphCount = 1;
46
- const envelope = await createEnvelope(name, payload, format, graphCount);
47
- const result = await uploadToRelay({ url: relayUrl, token: relayToken }, envelope, passphrase);
47
+ const envelope = await createEnvelope(name, payload, format, graphCount, stats);
48
+ const relayConfig = { url: relayUrl, token: relayToken };
49
+ await syncToRelay(relayConfig, name, envelope);
50
+ const result = await createShareLink(relayConfig, name);
48
51
  const shareLink = fragmentKey
49
52
  ? `${result.url}#k=${fragmentKey}`
50
53
  : result.url;
51
54
  let text = `Shared "${name}" successfully.\n\nShare link: ${shareLink}`;
55
+ text += `\nGraph stats: ${stats.node_count} nodes, ${stats.edge_count} edges, ${stats.node_types.length} types`;
52
56
  if (result.expiresAt) {
53
57
  text += `\nExpires: ${result.expiresAt}`;
54
58
  }
@@ -1 +1 @@
1
- {"version":3,"file":"share-tools.js","sourceRoot":"","sources":["../../../src/mcp/tools/share-tools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"share-tools.js","sourceRoot":"","sources":["../../../src/mcp/tools/share-tools.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,9 @@ export interface EnvelopeHeader {
11
11
  created_at: string;
12
12
  backpack_name: string;
13
13
  graph_count?: number;
14
+ node_count?: number;
15
+ edge_count?: number;
16
+ node_types?: string[];
14
17
  checksum: string;
15
18
  }
16
19
  export interface Envelope {
@@ -18,7 +21,11 @@ export interface Envelope {
18
21
  payload: Uint8Array;
19
22
  }
20
23
  /** Create a BPAK envelope from a header and payload. */
21
- export declare function createEnvelope(backpackName: string, payload: Uint8Array, format: "plaintext" | "age-v1", graphCount?: number): Promise<Uint8Array>;
24
+ export declare function createEnvelope(backpackName: string, payload: Uint8Array, format: "plaintext" | "age-v1", graphCount?: number, stats?: {
25
+ node_count?: number;
26
+ edge_count?: number;
27
+ node_types?: string[];
28
+ }): Promise<Uint8Array>;
22
29
  /** Parse and verify a BPAK envelope. Throws on invalid format or checksum mismatch. */
23
30
  export declare function parseEnvelope(data: Uint8Array): Promise<Envelope>;
24
31
  //# sourceMappingURL=envelope.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"envelope.d.ts","sourceRoot":"","sources":["../../src/sharing/envelope.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,WAAW,GAAG,QAAQ,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,UAAU,CAAC;CACrB;AAYD,wDAAwD;AACxD,wBAAsB,cAAc,CAClC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,WAAW,GAAG,QAAQ,EAC9B,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,UAAU,CAAC,CA8BrB;AAED,uFAAuF;AACvF,wBAAsB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,CAiDvE"}
1
+ {"version":3,"file":"envelope.d.ts","sourceRoot":"","sources":["../../src/sharing/envelope.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,WAAW,GAAG,QAAQ,CAAC;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,UAAU,CAAC;CACrB;AAYD,wDAAwD;AACxD,wBAAsB,cAAc,CAClC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,WAAW,GAAG,QAAQ,EAC9B,UAAU,CAAC,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE;IAAE,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GAC1E,OAAO,CAAC,UAAU,CAAC,CAiCrB;AAED,uFAAuF;AACvF,wBAAsB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,CAiDvE"}
@@ -18,13 +18,16 @@ async function sha256hex(data) {
18
18
  .join("");
19
19
  }
20
20
  /** Create a BPAK envelope from a header and payload. */
21
- export async function createEnvelope(backpackName, payload, format, graphCount) {
21
+ export async function createEnvelope(backpackName, payload, format, graphCount, stats) {
22
22
  const checksum = await sha256hex(payload);
23
23
  const header = {
24
24
  format,
25
25
  created_at: new Date().toISOString(),
26
26
  backpack_name: backpackName,
27
27
  graph_count: graphCount,
28
+ node_count: stats?.node_count,
29
+ edge_count: stats?.edge_count,
30
+ node_types: stats?.node_types,
28
31
  checksum: `sha256:${checksum}`,
29
32
  };
30
33
  const headerBytes = new TextEncoder().encode(JSON.stringify(header));
@@ -1 +1 @@
1
- {"version":3,"file":"envelope.js","sourceRoot":"","sources":["../../src/sharing/envelope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"envelope.js","sourceRoot":"","sources":["../../src/sharing/envelope.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;AACjE,MAAM,OAAO,GAAG,IAAI,CAAC;AAkBrB,0CAA0C;AAC1C,KAAK,UAAU,SAAS,CAAC,IAAgB;IACvC,MAAM,GAAG,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7C,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IACxD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;SACpC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SAC3C,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAED,wDAAwD;AACxD,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,YAAoB,EACpB,OAAmB,EACnB,MAA8B,EAC9B,UAAmB,EACnB,KAA2E;IAE3E,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;IAE1C,MAAM,MAAM,GAAmB;QAC7B,MAAM;QACN,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACpC,aAAa,EAAE,YAAY;QAC3B,WAAW,EAAE,UAAU;QACvB,UAAU,EAAE,KAAK,EAAE,UAAU;QAC7B,UAAU,EAAE,KAAK,EAAE,UAAU;QAC7B,UAAU,EAAE,KAAK,EAAE,UAAU;QAC7B,QAAQ,EAAE,UAAU,QAAQ,EAAE;KAC/B,CAAC;IAEF,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;IACrE,MAAM,SAAS,GAAG,IAAI,QAAQ,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IACnD,SAAS,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,aAAa;IAEhE,MAAM,MAAM,GAAG,IAAI,UAAU,CAC3B,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAC3D,CAAC;IACF,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAC1B,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;IACvB,MAAM,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC;IACzB,MAAM,IAAI,CAAC,CAAC;IACZ,MAAM,CAAC,GAAG,CAAC,IAAI,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;IACrD,MAAM,IAAI,CAAC,CAAC;IACZ,MAAM,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IAChC,MAAM,IAAI,WAAW,CAAC,MAAM,CAAC;IAC7B,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAE5B,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAgB;IAClD,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACxC,CAAC;IAED,IACE,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC;QACpB,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC;QACpB,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC;QACpB,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,EACpB,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACxB,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,iCAAiC,OAAO,EAAE,CAAC,CAAC;IAC9D,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IACzE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,aAAa;IAEzD,IAAI,CAAC,GAAG,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,CAAC;IACjD,MAAM,MAAM,GAAmB,IAAI,CAAC,KAAK,CACvC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CACtC,CAAC;IAEF,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACtD,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IAE1C,kBAAkB;IAClB,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpB,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;QACxC,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,+DAA+D,CAChE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;AAC7B,CAAC"}
@@ -2,6 +2,6 @@ export { createEnvelope, parseEnvelope } from "./envelope.js";
2
2
  export type { EnvelopeHeader, Envelope } from "./envelope.js";
3
3
  export { generateKeyPair, encrypt, decrypt, encodeKeyForFragment, decodeKeyFromFragment, } from "./crypto.js";
4
4
  export type { KeyPair } from "./crypto.js";
5
- export { uploadToRelay, downloadFromRelay, getShareMeta } from "./relay.js";
5
+ export { syncToRelay, createShareLink, uploadToRelay, downloadFromRelay, getShareMeta } from "./relay.js";
6
6
  export type { ShareResult, RelayConfig } from "./relay.js";
7
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sharing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9D,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EACL,eAAe,EACf,OAAO,EACP,OAAO,EACP,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC5E,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sharing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9D,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9D,OAAO,EACL,eAAe,EACf,OAAO,EACP,OAAO,EACP,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AACrB,YAAY,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1G,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC"}
@@ -1,4 +1,4 @@
1
1
  export { createEnvelope, parseEnvelope } from "./envelope.js";
2
2
  export { generateKeyPair, encrypt, decrypt, encodeKeyForFragment, decodeKeyFromFragment, } from "./crypto.js";
3
- export { uploadToRelay, downloadFromRelay, getShareMeta } from "./relay.js";
3
+ export { syncToRelay, createShareLink, uploadToRelay, downloadFromRelay, getShareMeta } from "./relay.js";
4
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sharing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9D,OAAO,EACL,eAAe,EACf,OAAO,EACP,OAAO,EACP,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/sharing/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9D,OAAO,EACL,eAAe,EACf,OAAO,EACP,OAAO,EACP,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,aAAa,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC"}
@@ -18,6 +18,19 @@ export interface RelayConfig {
18
18
  token: string | (() => Promise<string>);
19
19
  }
20
20
  /**
21
+ * Sync a BPAK envelope to the relay. The relay stores the latest version.
22
+ */
23
+ export declare function syncToRelay(config: RelayConfig, name: string, envelope: Uint8Array): Promise<void>;
24
+ /**
25
+ * Create a share link for a synced graph. Returns the share URL and token.
26
+ */
27
+ export declare function createShareLink(config: RelayConfig, name: string): Promise<{
28
+ token: string;
29
+ url: string;
30
+ expiresAt?: string;
31
+ }>;
32
+ /**
33
+ * @deprecated Use syncToRelay() + createShareLink() instead.
21
34
  * Upload an envelope to the relay. Returns the share token and URL.
22
35
  * For encrypted envelopes, the caller appends #k={key} to the URL.
23
36
  */
@@ -1 +1 @@
1
- {"version":3,"file":"relay.d.ts","sourceRoot":"","sources":["../../src/sharing/relay.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,8DAA8D;IAC9D,GAAG,EAAE,MAAM,CAAC;IACZ,qEAAqE;IACrE,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;CACzC;AAED;;;GAGG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,WAAW,EACnB,QAAQ,EAAE,UAAU,EACpB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAgC7D;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,UAAU,CAAC,CAsBrB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAMlC"}
1
+ {"version":3,"file":"relay.d.ts","sourceRoot":"","sources":["../../src/sharing/relay.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gEAAgE;IAChE,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,8DAA8D;IAC9D,GAAG,EAAE,MAAM,CAAC;IACZ,qEAAqE;IACrE,KAAK,EAAE,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;CACzC;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,UAAU,GACnB,OAAO,CAAC,IAAI,CAAC,CAmBf;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,MAAM,GACX,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAuB7D;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,WAAW,EACnB,QAAQ,EAAE,UAAU,EACpB,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAgC7D;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,UAAU,CAAC,CAsBrB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAMlC"}
@@ -5,6 +5,46 @@
5
5
  * The decryption key never leaves the client.
6
6
  */
7
7
  /**
8
+ * Sync a BPAK envelope to the relay. The relay stores the latest version.
9
+ */
10
+ export async function syncToRelay(config, name, envelope) {
11
+ const accessToken = typeof config.token === "function"
12
+ ? await config.token()
13
+ : config.token;
14
+ const res = await fetch(`${config.url}/api/graphs/${encodeURIComponent(name)}/sync`, {
15
+ method: "PUT",
16
+ headers: {
17
+ "Content-Type": "application/octet-stream",
18
+ Authorization: `Bearer ${accessToken}`,
19
+ },
20
+ body: envelope,
21
+ });
22
+ if (!res.ok) {
23
+ const body = await res.text().catch(() => "");
24
+ throw new Error(`Relay sync failed (${res.status}): ${body}`);
25
+ }
26
+ }
27
+ /**
28
+ * Create a share link for a synced graph. Returns the share URL and token.
29
+ */
30
+ export async function createShareLink(config, name) {
31
+ const accessToken = typeof config.token === "function"
32
+ ? await config.token()
33
+ : config.token;
34
+ const res = await fetch(`${config.url}/api/graphs/${encodeURIComponent(name)}/share`, {
35
+ method: "POST",
36
+ headers: {
37
+ Authorization: `Bearer ${accessToken}`,
38
+ },
39
+ });
40
+ if (!res.ok) {
41
+ const body = await res.text().catch(() => "");
42
+ throw new Error(`Relay share failed (${res.status}): ${body}`);
43
+ }
44
+ return (await res.json());
45
+ }
46
+ /**
47
+ * @deprecated Use syncToRelay() + createShareLink() instead.
8
48
  * Upload an envelope to the relay. Returns the share token and URL.
9
49
  * For encrypted envelopes, the caller appends #k={key} to the URL.
10
50
  */
@@ -1 +1 @@
1
- {"version":3,"file":"relay.js","sourceRoot":"","sources":["../../src/sharing/relay.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAiBH;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAAmB,EACnB,QAAoB,EACpB,UAAmB;IAEnB,MAAM,WAAW,GACf,OAAO,MAAM,CAAC,KAAK,KAAK,UAAU;QAChC,CAAC,CAAC,MAAM,MAAM,CAAC,KAAK,EAAE;QACtB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;IAEnB,MAAM,SAAS,GAAG,GAAG,MAAM,CAAC,GAAG,WAAW,CAAC;IAE3C,MAAM,OAAO,GAA2B;QACtC,cAAc,EAAE,0BAA0B;QAC1C,aAAa,EAAE,UAAU,WAAW,EAAE;KACvC,CAAC;IACF,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CAAC,cAAc,CAAC,GAAG,UAAU,CAAC;IACvC,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE;QACjC,MAAM,EAAE,MAAM;QACd,OAAO;QACP,IAAI,EAAE,QAA+B;KACtC,CAAC,CAAC;IAEH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,wBAAwB,GAAG,CAAC,MAAM,MAAM,IAAI,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAIvB,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAAgB,EAChB,KAAa,EACb,UAAmB;IAEnB,MAAM,OAAO,GAA2B,EAAE,CAAC;IAC3C,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,CAAC,cAAc,CAAC,GAAG,UAAU,CAAC;IACvC,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,QAAQ,aAAa,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;IAEtE,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAChD,IAAI,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;QACzC,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,CAAC,MAAM,MAAM,IAAI,EAAE,CAAC,CAAC;IACpE,CAAC;IAED,OAAO,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,QAAgB,EAChB,KAAa;IAEb,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,GAAG,QAAQ,aAAa,KAAK,OAAO,CAAC,CAAC;IAC9D,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CAAC,sBAAsB,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA4B,CAAC;AACvD,CAAC"}
1
+ {"version":3,"file":"relay.js","sourceRoot":"","sources":["../../src/sharing/relay.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "backpack-ontology",
3
- "version": "0.7.0",
3
+ "version": "0.7.1",
4
4
  "description": "A persistent learning graph engine for Claude Code via MCP — structured knowledge that carries forward across sessions",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Noah Irzinger",