@enbox/agent 0.5.15 → 0.6.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 (47) hide show
  1. package/dist/browser.mjs +11 -11
  2. package/dist/browser.mjs.map +4 -4
  3. package/dist/esm/dwn-api.js +433 -33
  4. package/dist/esm/dwn-api.js.map +1 -1
  5. package/dist/esm/dwn-encryption.js +131 -12
  6. package/dist/esm/dwn-encryption.js.map +1 -1
  7. package/dist/esm/dwn-key-delivery.js +64 -47
  8. package/dist/esm/dwn-key-delivery.js.map +1 -1
  9. package/dist/esm/enbox-connect-protocol.js +400 -3
  10. package/dist/esm/enbox-connect-protocol.js.map +1 -1
  11. package/dist/esm/permissions-api.js +11 -1
  12. package/dist/esm/permissions-api.js.map +1 -1
  13. package/dist/esm/sync-closure-resolver.js +8 -1
  14. package/dist/esm/sync-closure-resolver.js.map +1 -1
  15. package/dist/esm/sync-engine-level.js +407 -6
  16. package/dist/esm/sync-engine-level.js.map +1 -1
  17. package/dist/esm/sync-messages.js +10 -3
  18. package/dist/esm/sync-messages.js.map +1 -1
  19. package/dist/types/dwn-api.d.ts +159 -0
  20. package/dist/types/dwn-api.d.ts.map +1 -1
  21. package/dist/types/dwn-encryption.d.ts +39 -2
  22. package/dist/types/dwn-encryption.d.ts.map +1 -1
  23. package/dist/types/dwn-key-delivery.d.ts +1 -9
  24. package/dist/types/dwn-key-delivery.d.ts.map +1 -1
  25. package/dist/types/enbox-connect-protocol.d.ts +166 -1
  26. package/dist/types/enbox-connect-protocol.d.ts.map +1 -1
  27. package/dist/types/permissions-api.d.ts.map +1 -1
  28. package/dist/types/sync-closure-resolver.d.ts.map +1 -1
  29. package/dist/types/sync-engine-level.d.ts +45 -1
  30. package/dist/types/sync-engine-level.d.ts.map +1 -1
  31. package/dist/types/sync-messages.d.ts +2 -2
  32. package/dist/types/sync-messages.d.ts.map +1 -1
  33. package/dist/types/types/permissions.d.ts +9 -0
  34. package/dist/types/types/permissions.d.ts.map +1 -1
  35. package/dist/types/types/sync.d.ts +70 -2
  36. package/dist/types/types/sync.d.ts.map +1 -1
  37. package/package.json +5 -4
  38. package/src/dwn-api.ts +494 -38
  39. package/src/dwn-encryption.ts +160 -11
  40. package/src/dwn-key-delivery.ts +73 -61
  41. package/src/enbox-connect-protocol.ts +575 -6
  42. package/src/permissions-api.ts +13 -1
  43. package/src/sync-closure-resolver.ts +7 -1
  44. package/src/sync-engine-level.ts +368 -4
  45. package/src/sync-messages.ts +14 -5
  46. package/src/types/permissions.ts +9 -0
  47. package/src/types/sync.ts +86 -2
@@ -1 +1 @@
1
- {"version":3,"file":"dwn-api.js","sourceRoot":"","sources":["../../src/dwn-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dwn-api.js","sourceRoot":"","sources":["../../src/dwn-api.ts"],"names":[],"mappings":"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"}
@@ -7,8 +7,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- import { X25519 } from '@enbox/crypto';
11
10
  import { Cid, ContentEncryptionAlgorithm, DataStream, Encoder, Encryption, KeyDerivationScheme, Records, } from '@enbox/dwn-sdk-js';
11
+ import { Ed25519, X25519 } from '@enbox/crypto';
12
12
  import { DwnInterface } from './types/dwn.js';
13
13
  import { isDwnRequest } from './dwn-type-guards.js';
14
14
  /**
@@ -91,18 +91,29 @@ export function getEncryptionKeyInfo(agent, didUri) {
91
91
  throw new Error(`AgentDwnApi: keyAgreement verification method for '${didUri}' ` +
92
92
  `does not contain a public key in JWK format.`);
93
93
  }
94
- // 4. Verify it's an X25519 key
95
- const publicKeyJwk = verificationMethod.publicKeyJwk;
96
- if (publicKeyJwk.crv !== 'X25519') {
94
+ // 4. Resolve or derive the X25519 key for encryption.
95
+ // Standard case: the keyAgreement VM already has an X25519 key.
96
+ // Delegate case: did:jwk with Ed25519 only — convert to X25519.
97
+ // The Ed25519→X25519 conversion is a standard cryptographic operation
98
+ // (RFC 8032 / libsodium). The converted X25519 key must already be
99
+ // present in the agent's KMS (imported via the delegate PortableDid).
100
+ let resolvedPublicKeyJwk = verificationMethod.publicKeyJwk;
101
+ if (resolvedPublicKeyJwk.crv === 'Ed25519') {
102
+ resolvedPublicKeyJwk = yield Ed25519.convertPublicKeyToX25519({
103
+ publicKey: resolvedPublicKeyJwk,
104
+ });
105
+ }
106
+ else if (resolvedPublicKeyJwk.crv !== 'X25519') {
97
107
  throw new Error(`AgentDwnApi: keyAgreement key for '${didUri}' uses curve ` +
98
- `'${publicKeyJwk.crv}', but DWN encryption requires 'X25519'.`);
108
+ `'${resolvedPublicKeyJwk.crv}', but DWN encryption requires ` +
109
+ `'X25519' (or 'Ed25519' which is auto-converted).`);
99
110
  }
100
111
  // 5. Compute the KMS key URI (does NOT export the key)
101
- const keyUri = yield agent.keyManager.getKeyUri({ key: publicKeyJwk });
112
+ const keyUri = yield agent.keyManager.getKeyUri({ key: resolvedPublicKeyJwk });
102
113
  return {
103
114
  keyId: verificationMethod.id,
104
115
  keyUri,
105
- publicKeyJwk: publicKeyJwk,
116
+ publicKeyJwk: resolvedPublicKeyJwk,
106
117
  };
107
118
  });
108
119
  }
@@ -211,11 +222,41 @@ export function buildContextKeyDecrypter(contextKey) {
211
222
  }),
212
223
  };
213
224
  }
225
+ /**
226
+ * Builds a KeyDecrypter for an exact-path delegate key that enforces the
227
+ * record's full derivation path matches the key's path exactly — siblings
228
+ * and descendants are NOT accessible.
229
+ */
230
+ export function buildExactProtocolPathDecrypter(key) {
231
+ return {
232
+ rootKeyId: key.rootKeyId,
233
+ derivationScheme: key.derivationScheme,
234
+ decrypt: (fullDerivationPath, jwePayload) => __awaiter(this, void 0, void 0, function* () {
235
+ var _a;
236
+ const keyPath = (_a = key.derivationPath) !== null && _a !== void 0 ? _a : [];
237
+ if (keyPath.length !== fullDerivationPath.length ||
238
+ !keyPath.every((seg, i) => seg === fullDerivationPath[i])) {
239
+ throw new Error('Delegate decryption key is out of scope for this protocol path. ' +
240
+ `Key path: [${keyPath.join(', ')}], ` +
241
+ `record path: [${fullDerivationPath.join(', ')}].`);
242
+ }
243
+ const leafPrivateKeyBytes = yield Records.derivePrivateKey(key, fullDerivationPath);
244
+ const leafPrivateKeyJwk = yield X25519.bytesToPrivateKey({ privateKeyBytes: leafPrivateKeyBytes });
245
+ return Encryption.ecdhEsUnwrapKey(leafPrivateKeyJwk, jwePayload.ephemeralPublicKey, jwePayload.encryptedKey);
246
+ }),
247
+ };
248
+ }
214
249
  /**
215
250
  * Resolves the appropriate KeyDecrypter for a record's encryption scheme.
216
251
  * Handles both single-party (ProtocolPath) and multi-party (ProtocolContext).
217
252
  *
253
+ * For ProtocolPath records:
254
+ * - Owner: derives key directly from KMS
255
+ * - Delegate with protocol-wide key: uses ancestor-prefix derivation
256
+ * - Delegate with exact-path key: enforces exact path match
257
+ *
218
258
  * For ProtocolContext records:
259
+ * - Delegate: uses delivered context key from the connect flow
219
260
  * - Context creator: derives key directly from KMS
220
261
  * - Participant: fetches contextKey via key-delivery protocol, caches it
221
262
  *
@@ -225,19 +266,96 @@ export function buildContextKeyDecrypter(contextKey) {
225
266
  * @param targetDid - The target DID (DWN owner), if known
226
267
  * @param contextDerivedKeyCache - Cache for context-derived private keys
227
268
  * @param fetchContextKeyRecordFn - Function to fetch context key records from key-delivery protocol
269
+ * @param delegateDecryptionKeyCache - Cache for scope-aware delegate decryption keys
270
+ * @param granteeDid - The delegate DID (if this is a delegated request)
228
271
  */
229
- export function resolveKeyDecrypter(agent, authorDid, recordsWrite, targetDid, contextDerivedKeyCache, fetchContextKeyRecordFn) {
272
+ export function resolveKeyDecrypter(agent, authorDid, recordsWrite, targetDid, contextDerivedKeyCache, fetchContextKeyRecordFn, delegateDecryptionKeyCache, granteeDid, delegateContextKeyCache) {
230
273
  return __awaiter(this, void 0, void 0, function* () {
231
274
  const { encryption } = recordsWrite;
232
275
  // Check if the record uses context-derived encryption
233
276
  const hasContextKey = encryption === null || encryption === void 0 ? void 0 : encryption.recipients.some((r) => r.header.derivationScheme === KeyDerivationScheme.ProtocolContext);
234
277
  if (!hasContextKey || !recordsWrite.contextId) {
235
- // Single-party protocol-path encryption
278
+ // Single-party protocol-path encryption.
279
+ // Check for scope-aware delegate decryption keys first — this enables
280
+ // delegates to decrypt without the owner's root X25519 private key.
281
+ if (delegateDecryptionKeyCache && granteeDid) {
282
+ const protocol = recordsWrite.descriptor.protocol;
283
+ const protocolPath = recordsWrite.descriptor.protocolPath;
284
+ if (protocol) {
285
+ const cacheKey = `ddk~${granteeDid}`;
286
+ const allKeys = delegateDecryptionKeyCache.get(cacheKey);
287
+ if (allKeys) {
288
+ const keysForProtocol = allKeys.filter((k) => k.protocol === protocol);
289
+ // Priority 1: exact-path key matching this record's protocolPath.
290
+ if (protocolPath) {
291
+ const exactKey = keysForProtocol.find((k) => k.scope.kind === 'protocolPath' && k.scope.protocolPath === protocolPath);
292
+ if (exactKey) {
293
+ return buildExactProtocolPathDecrypter(exactKey.derivedPrivateKey);
294
+ }
295
+ }
296
+ // Priority 2: protocol-wide key (ancestor-prefix derivation).
297
+ const wideKey = keysForProtocol.find((k) => k.scope.kind === 'protocol');
298
+ if (wideKey) {
299
+ return buildContextKeyDecrypter(wideKey.derivedPrivateKey);
300
+ }
301
+ }
302
+ }
303
+ }
236
304
  return getKeyDecrypter(agent, authorDid);
237
305
  }
238
306
  // --- Multi-party context encryption ---
239
307
  const contextKeyEntry = encryption.recipients.find((r) => r.header.derivationScheme === KeyDerivationScheme.ProtocolContext);
240
308
  const rootContextId = recordsWrite.contextId.split('/')[0];
309
+ // Case 0: Delegate with a delivered context key for this rootContextId.
310
+ // First check the in-memory cache (same-process delivery).
311
+ // On cache miss, try to fetch a contextKey record from the owner's DWN
312
+ // (cross-device delivery via the key-delivery protocol).
313
+ //
314
+ // IMPORTANT: If this is a delegated request (granteeDid is set), we must
315
+ // NOT fall through to Cases 1/2 which use authorDid (the owner). Delegates
316
+ // must decrypt via their own delivered context key — never via the owner's
317
+ // KMS. This is fail-closed by design.
318
+ if (delegateContextKeyCache && granteeDid) {
319
+ const protocol = recordsWrite.descriptor.protocol;
320
+ if (protocol) {
321
+ const ctxCacheKey = `dctx~${granteeDid}~${protocol}~${rootContextId}`;
322
+ const delegateCtxKey = delegateContextKeyCache.get(ctxCacheKey);
323
+ if (delegateCtxKey) {
324
+ return buildContextKeyDecrypter(delegateCtxKey);
325
+ }
326
+ // Cache miss — try fetching a delivered contextKey record.
327
+ // The owner may have written one addressed to this delegate
328
+ // after the initial connect (cross-device delivery).
329
+ //
330
+ // For cross-device (ownerDid !== requesterDid), fetchContextKeyRecord
331
+ // queries the owner's tenant on the delegate's local DWN via
332
+ // processRequest. The delegate identity's connectedDid metadata
333
+ // registers ownerDid as locally-managed, so the query routes locally
334
+ // (in-process node or local-server RPC) — not to the owner's remote
335
+ // endpoint. Sync must have brought the contextKey record locally.
336
+ try {
337
+ const fetchedKey = yield fetchContextKeyRecordFn({
338
+ ownerDid: authorDid,
339
+ requesterDid: granteeDid,
340
+ sourceProtocol: protocol,
341
+ sourceContextId: rootContextId,
342
+ });
343
+ if (fetchedKey) {
344
+ delegateContextKeyCache.set(ctxCacheKey, fetchedKey);
345
+ return buildContextKeyDecrypter(fetchedKey);
346
+ }
347
+ }
348
+ catch (_a) {
349
+ // Delegate fetch failed — fail closed below.
350
+ }
351
+ }
352
+ // Delegate path exhausted: no cached key, no delivered record.
353
+ // Fail closed — do NOT fall through to the owner KMS path.
354
+ throw new Error(`AgentDwnApi: Delegate '${granteeDid}' does not have a context key ` +
355
+ `for context '${rootContextId}'. No delivered contextKey record was ` +
356
+ `found via the key-delivery protocol. The delegate may need to ` +
357
+ `reconnect or wait for sync.`);
358
+ }
241
359
  // Case 1: I am the context creator — rootKeyId matches my encryption key
242
360
  const { keyId, keyUri } = yield getEncryptionKeyInfo(agent, authorDid);
243
361
  if (contextKeyEntry.header.kid === keyId) {
@@ -291,8 +409,9 @@ export function resolveKeyDecrypter(agent, authorDid, recordsWrite, targetDid, c
291
409
  * @param agent - The platform agent
292
410
  * @param contextDerivedKeyCache - Cache for context-derived private keys
293
411
  * @param fetchContextKeyRecordFn - Function to fetch context key records
412
+ * @param delegateDecryptionKeyCache - Cache for scope-aware delegate decryption keys
294
413
  */
295
- export function maybeDecryptReply(request, reply, agent, contextDerivedKeyCache, fetchContextKeyRecordFn) {
414
+ export function maybeDecryptReply(request, reply, agent, contextDerivedKeyCache, fetchContextKeyRecordFn, delegateDecryptionKeyCache, delegateContextKeyCache) {
296
415
  return __awaiter(this, void 0, void 0, function* () {
297
416
  var _a, _b, _c;
298
417
  if (!('encryption' in request) || !request.encryption) {
@@ -304,7 +423,7 @@ export function maybeDecryptReply(request, reply, agent, contextDerivedKeyCache,
304
423
  if (readReply.status.code === 200
305
424
  && ((_b = (_a = readReply.entry) === null || _a === void 0 ? void 0 : _a.recordsWrite) === null || _b === void 0 ? void 0 : _b.encryption)
306
425
  && ((_c = readReply.entry) === null || _c === void 0 ? void 0 : _c.data)) {
307
- const keyDecrypter = yield resolveKeyDecrypter(agent, request.author, readReply.entry.recordsWrite, request.target, contextDerivedKeyCache, fetchContextKeyRecordFn);
426
+ const keyDecrypter = yield resolveKeyDecrypter(agent, request.author, readReply.entry.recordsWrite, request.target, contextDerivedKeyCache, fetchContextKeyRecordFn, delegateDecryptionKeyCache, request.granteeDid, delegateContextKeyCache);
308
427
  try {
309
428
  readReply.entry.data = yield Records.decrypt(readReply.entry.recordsWrite, keyDecrypter, readReply.entry.data);
310
429
  }
@@ -321,7 +440,7 @@ export function maybeDecryptReply(request, reply, agent, contextDerivedKeyCache,
321
440
  if (queryReply.status.code === 200 && queryReply.entries) {
322
441
  for (const entry of queryReply.entries) {
323
442
  if (entry.encryption && entry.encodedData) {
324
- const keyDecrypter = yield resolveKeyDecrypter(agent, request.author, entry, request.target, contextDerivedKeyCache, fetchContextKeyRecordFn);
443
+ const keyDecrypter = yield resolveKeyDecrypter(agent, request.author, entry, request.target, contextDerivedKeyCache, fetchContextKeyRecordFn, delegateDecryptionKeyCache, request.granteeDid, delegateContextKeyCache);
325
444
  try {
326
445
  const cipherBytes = Encoder.base64UrlToBytes(entry.encodedData);
327
446
  const cipherStream = DataStream.fromBytes(cipherBytes);
@@ -1 +1 @@
1
- {"version":3,"file":"dwn-encryption.js","sourceRoot":"","sources":["../../src/dwn-encryption.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dwn-encryption.js","sourceRoot":"","sources":["../../src/dwn-encryption.ts"],"names":[],"mappings":";;;;;;;;;AAkBA,OAAO,EACL,GAAG,EACH,0BAA0B,EAC1B,UAAU,EACV,OAAO,EACP,UAAU,EACV,mBAAmB,EACnB,OAAO,GACR,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEhD,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,SAAqC;IAC5D,OAAO,SAAS,KAAK,0BAA0B,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAClE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAClC,GAAe,EACf,EAAc,EACd,WAAmB,EACnB,SAAuB,EACvB,gBAAsG;IAEtG,OAAO;QACL,oBAAoB,EAAG,EAAE;QACzB,GAAG,EAAoB,GAAG;QAC1B,mBAAmB,EAAI,CAAC;gBACtB,WAAW;gBACX,SAAS;gBACT,gBAAgB;aACjB,CAAC;KACH,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAgB,oBAAoB;yDACxC,cAA0B,EAC1B,GAAe,EACf,EAAc,EACd,YAAwC,0BAA0B,CAAC,OAAO;QAE1E,MAAM,EAAE,gBAAgB,EAAE,GAAG,EAAE,iBAAiB,EAAE,GAAG,MAAM,UAAU,CAAC,iBAAiB,CACrF,SAAS,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,CAAC,SAAS,CAAC,cAAc,CAAC,CACzD,CAAC;QACF,MAAM,cAAc,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAClE,MAAM,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,yBAAyB,CAAC,SAAS,CAAC,CAAC;QAC/D,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,cAAc,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC;IACzF,CAAC;CAAA;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAgB,oBAAoB,CACxC,KAAyB,EACzB,MAAc;;;QAMd,8BAA8B;QAC9B,MAAM,EAAE,WAAW,EAAE,qBAAqB,EAAE,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QAC/E,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CACb,uCAAuC,MAAM,KAAK;gBAClD,GAAG,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,EAAE,CAC3C,CAAC;QACJ,CAAC;QAED,+CAA+C;QAC/C,MAAM,gBAAgB,GAAG,WAAW,CAAC,YAAY,CAAC;QAClD,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvD,MAAM,IAAI,KAAK,CACb,qBAAqB,MAAM,iCAAiC;gBAC5D,8DAA8D;gBAC9D,uDAAuD,CACxD,CAAC;QACJ,CAAC;QAED,0EAA0E;QAC1E,MAAM,eAAe,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAC5C,IAAI,kBAAkB,CAAC;QACvB,IAAI,OAAO,eAAe,KAAK,QAAQ,EAAE,CAAC;YACxC,MAAM,QAAQ,GAAG,eAAe,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAC5C,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE;gBAClC,CAAC,CAAC,eAAe,CAAC;YACpB,kBAAkB,GAAG,MAAA,WAAW,CAAC,kBAAkB,0CAAE,IAAI,CACvD,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,QAAQ,EAAE,CAAC,CACrC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,kBAAkB,GAAG,eAAe,CAAC;QACvC,CAAC;QAED,IAAI,CAAC,CAAA,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,YAAY,CAAA,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CACb,sDAAsD,MAAM,IAAI;gBAChE,8CAA8C,CAC/C,CAAC;QACJ,CAAC;QAED,sDAAsD;QACtD,gEAAgE;QAChE,gEAAgE;QAChE,sEAAsE;QACtE,mEAAmE;QACnE,sEAAsE;QACtE,IAAI,oBAAoB,GAAG,kBAAkB,CAAC,YAAY,CAAC;QAE3D,IAAI,oBAAoB,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAC3C,oBAAoB,GAAG,MAAM,OAAO,CAAC,wBAAwB,CAAC;gBAC5D,SAAS,EAAE,oBAAoB;aAChC,CAAC,CAAC;QACL,CAAC;aAAM,IAAI,oBAAoB,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YACjD,MAAM,IAAI,KAAK,CACb,sCAAsC,MAAM,eAAe;gBAC3D,IAAI,oBAAoB,CAAC,GAAG,iCAAiC;gBAC7D,kDAAkD,CACnD,CAAC;QACJ,CAAC;QAED,uDAAuD;QACvD,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC;QAE/E,OAAO;YACL,KAAK,EAAU,kBAAkB,CAAC,EAAE;YACpC,MAAM;YACN,YAAY,EAAG,oBAAoC;SACpD,CAAC;IACJ,CAAC;CAAA;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAgB,4BAA4B,CAChD,KAAyB,EACzB,MAAc,EACd,SAAiB,EACjB,GAAe,EACf,EAAc;;QAOd,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACpE,MAAM,qBAAqB,GACzB,OAAO,CAAC,oDAAoD,CAAC,SAAS,CAAC,CAAC;QAC1E,MAAM,gBAAgB,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC;YAC9D,MAAM;YACN,cAAc,EAAE,qBAAqB;SACtC,CAAC,CAAC;QAEH,MAAM,eAAe,GAAG,oBAAoB,CAC1C,GAAG,EAAE,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,mBAAmB,CAAC,eAAe,CACtE,CAAC;QAEF,OAAO,EAAE,eAAe,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC;IACnE,CAAC;CAAA;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CACrC,KAAyB,EACzB,KAAa,EACb,MAAqB,EACrB,gBAAsG;IAEtG,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IACpC,OAAO;QACL,SAAS,EAAG,KAAK;QACjB,gBAAgB;QAChB,OAAO,EAAK,CAAO,kBAAkB,EAAE,UAAU,EAAuB,EAAE;YACxE,OAAO,UAAU,CAAC,YAAY,CAAC;gBAC7B,MAAM;gBACN,cAAc,EAAO,kBAAkB;gBACvC,YAAY,EAAS,UAAU,CAAC,YAAY;gBAC5C,kBAAkB,EAAG,UAAU,CAAC,kBAAkB;aACnD,CAAC,CAAC;QACL,CAAC,CAAA;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAgB,uBAAuB,CAC3C,KAAyB,EACzB,MAAc;;QAEd,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACpE,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;QAEpC,OAAO;YACL,SAAS,EAAU,KAAK;YACxB,gBAAgB,EAAG,mBAAmB,CAAC,YAAY;YACnD,eAAe,EAAI,CAAO,kBAA4B,EAAyB,EAAE;gBAC/E,OAAO,UAAU,CAAC,eAAe,CAAC;oBAChC,MAAM;oBACN,cAAc,EAAE,kBAAkB;iBACnC,CAAC,CAAC;YACL,CAAC,CAAA;SACF,CAAC;IACJ,CAAC;CAAA;AAED;;;;;;GAMG;AACH,MAAM,UAAgB,eAAe,CACnC,KAAyB,EACzB,MAAc;;QAEd,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACpE,OAAO,uBAAuB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,CAAC,YAAY,CAAC,CAAC;IACzF,CAAC;CAAA;AAED;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CACtC,UAA6B;IAE7B,OAAO;QACL,SAAS,EAAU,UAAU,CAAC,SAAS;QACvC,gBAAgB,EAAG,UAAU,CAAC,gBAAgB;QAC9C,OAAO,EAAY,CAAO,kBAAkB,EAAE,UAAU,EAAuB,EAAE;YAC/E,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC,gBAAgB,CACxD,UAAU,EAAE,kBAAkB,CAC/B,CAAC;YACF,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,EAAE,eAAe,EAAE,mBAAmB,EAAE,CAAC,CAAC;YACnG,OAAO,UAAU,CAAC,eAAe,CAAC,iBAAiB,EAAE,UAAU,CAAC,kBAAkB,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;QAC/G,CAAC,CAAA;KACF,CAAC;AACJ,CAAC;AASD;;;;GAIG;AACH,MAAM,UAAU,+BAA+B,CAC7C,GAAsB;IAEtB,OAAO;QACL,SAAS,EAAU,GAAG,CAAC,SAAS;QAChC,gBAAgB,EAAG,GAAG,CAAC,gBAAgB;QACvC,OAAO,EAAY,CACjB,kBAA4B,EAC5B,UAAiE,EAC5C,EAAE;;YACvB,MAAM,OAAO,GAAG,MAAA,GAAG,CAAC,cAAc,mCAAI,EAAE,CAAC;YACzC,IAAI,OAAO,CAAC,MAAM,KAAK,kBAAkB,CAAC,MAAM;gBAC5C,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAW,EAAE,CAAS,EAAE,EAAE,CAAC,GAAG,KAAK,kBAAkB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9E,MAAM,IAAI,KAAK,CACb,kEAAkE;oBAClE,cAAc,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK;oBACrC,iBAAiB,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CACnD,CAAC;YACJ,CAAC;YACD,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC,gBAAgB,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;YACpF,MAAM,iBAAiB,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,EAAE,eAAe,EAAE,mBAAmB,EAAE,CAAC,CAAC;YACnG,OAAO,UAAU,CAAC,eAAe,CAAC,iBAAiB,EAAE,UAAU,CAAC,kBAAkB,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;QAC/G,CAAC,CAAA;KACF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAgB,mBAAmB,CACvC,KAAyB,EACzB,SAAiB,EACjB,YAAiC,EACjC,SAA6B,EAC7B,sBAA6H,EAC7H,uBAK4C,EAC5C,0BAA2F,EAC3F,UAAmB,EACnB,uBAA+H;;QAE/H,MAAM,EAAE,UAAU,EAAE,GAAG,YAAY,CAAC;QAEpC,sDAAsD;QACtD,MAAM,aAAa,GAAG,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,UAAU,CAAC,IAAI,CAC/C,CAAC,CAA2C,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,KAAK,mBAAmB,CAAC,eAAe,CACnH,CAAC;QAEF,IAAI,CAAC,aAAa,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC;YAC9C,yCAAyC;YACzC,sEAAsE;YACtE,oEAAoE;YACpE,IAAI,0BAA0B,IAAI,UAAU,EAAE,CAAC;gBAC7C,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC;gBAClD,MAAM,YAAY,GAAG,YAAY,CAAC,UAAU,CAAC,YAAY,CAAC;gBAC1D,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,QAAQ,GAAG,OAAO,UAAU,EAAE,CAAC;oBACrC,MAAM,OAAO,GAAG,0BAA0B,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;oBACzD,IAAI,OAAO,EAAE,CAAC;wBACZ,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;wBAEvE,kEAAkE;wBAClE,IAAI,YAAY,EAAE,CAAC;4BACjB,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CACnC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,cAAc,IAAI,CAAC,CAAC,KAAK,CAAC,YAAY,KAAK,YAAY,CAChF,CAAC;4BACF,IAAI,QAAQ,EAAE,CAAC;gCACb,OAAO,+BAA+B,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;4BACrE,CAAC;wBACH,CAAC;wBAED,8DAA8D;wBAC9D,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;wBACzE,IAAI,OAAO,EAAE,CAAC;4BACZ,OAAO,wBAAwB,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;wBAC7D,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QAC3C,CAAC;QAED,yCAAyC;QACzC,MAAM,eAAe,GAAG,UAAW,CAAC,UAAU,CAAC,IAAI,CACjD,CAAC,CAA2C,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,KAAK,mBAAmB,CAAC,eAAe,CAClH,CAAC;QAEH,MAAM,aAAa,GAAG,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAE3D,wEAAwE;QACxE,2DAA2D;QAC3D,uEAAuE;QACvE,yDAAyD;QACzD,EAAE;QACF,yEAAyE;QACzE,2EAA2E;QAC3E,2EAA2E;QAC3E,sCAAsC;QACtC,IAAI,uBAAuB,IAAI,UAAU,EAAE,CAAC;YAC1C,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,QAAQ,CAAC;YAClD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,WAAW,GAAG,QAAQ,UAAU,IAAI,QAAQ,IAAI,aAAa,EAAE,CAAC;gBACtE,MAAM,cAAc,GAAG,uBAAuB,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAChE,IAAI,cAAc,EAAE,CAAC;oBACnB,OAAO,wBAAwB,CAAC,cAAc,CAAC,CAAC;gBAClD,CAAC;gBAED,2DAA2D;gBAC3D,4DAA4D;gBAC5D,qDAAqD;gBACrD,EAAE;gBACF,sEAAsE;gBACtE,6DAA6D;gBAC7D,gEAAgE;gBAChE,qEAAqE;gBACrE,oEAAoE;gBACpE,kEAAkE;gBAClE,IAAI,CAAC;oBACH,MAAM,UAAU,GAAG,MAAM,uBAAuB,CAAC;wBAC/C,QAAQ,EAAU,SAAS;wBAC3B,YAAY,EAAM,UAAU;wBAC5B,cAAc,EAAI,QAAQ;wBAC1B,eAAe,EAAG,aAAa;qBAChC,CAAC,CAAC;oBACH,IAAI,UAAU,EAAE,CAAC;wBACf,uBAAuB,CAAC,GAAG,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;wBACrD,OAAO,wBAAwB,CAAC,UAAU,CAAC,CAAC;oBAC9C,CAAC;gBACH,CAAC;gBAAC,WAAM,CAAC;oBACP,6CAA6C;gBAC/C,CAAC;YACH,CAAC;YAED,+DAA+D;YAC/D,2DAA2D;YAC3D,MAAM,IAAI,KAAK,CACb,0BAA0B,UAAU,gCAAgC;gBACpE,gBAAgB,aAAa,wCAAwC;gBACrE,gEAAgE;gBAChE,6BAA6B,CAC9B,CAAC;QACJ,CAAC;QAED,yEAAyE;QACzE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,oBAAoB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;QACvE,IAAI,eAAe,CAAC,MAAM,CAAC,GAAG,KAAK,KAAK,EAAE,CAAC;YACzC,OAAO,uBAAuB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,mBAAmB,CAAC,eAAe,CAAC,CAAC;QAC5F,CAAC;QAED,mFAAmF;QACnF,MAAM,QAAQ,GAAG,OAAO,SAAS,IAAI,aAAa,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,sBAAsB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACpD,IAAI,MAAM,EAAE,CAAC;YACX,OAAO,wBAAwB,CAAC,MAAM,CAAC,CAAC;QAC1C,CAAC;QAED,6EAA6E;QAC7E,MAAM,QAAQ,GAAG,YAAY,CAAC,UAAU,CAAC,QAAS,CAAC;QAEnD,0EAA0E;QAC1E,IAAI,wBAAwB,GAAG,MAAM,uBAAuB,CAAC;YAC3D,QAAQ,EAAU,SAAS;YAC3B,YAAY,EAAM,SAAS;YAC3B,cAAc,EAAI,QAAQ;YAC1B,eAAe,EAAG,aAAa;SAChC,CAAC,CAAC;QAEH,kEAAkE;QAClE,4EAA4E;QAC5E,0EAA0E;QAC1E,wBAAwB;QACxB,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC9B,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,MAAM,CAAC,mBAAmB,CAAC,CAAC;YAClD,MAAM,eAAe,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,GAAG,CAAC,YAAY,CACnD,YAAY,CAAC,aAAa,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CACnD,CAAC;YACF,wBAAwB,GAAG,MAAM,uBAAuB,CAAC;gBACvD,QAAQ,EAAU,eAAe;gBACjC,YAAY,EAAM,SAAS;gBAC3B,cAAc,EAAI,QAAQ;gBAC1B,eAAe,EAAG,aAAa;aAChC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,wBAAwB,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CACb,0CAA0C,YAAY,CAAC,QAAQ,KAAK;gBACpE,kEAAkE;gBAClE,+CAA+C,CAChD,CAAC;QACJ,CAAC;QAED,sBAAsB,CAAC,GAAG,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC;QAC/D,OAAO,wBAAwB,CAAC,wBAAwB,CAAC,CAAC;IAC5D,CAAC;CAAA;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAgB,iBAAiB,CACrC,OAAiD,EACjD,KAAyB,EACzB,KAAyB,EACzB,sBAA6H,EAC7H,uBAK4C,EAC5C,0BAA2F,EAC3F,uBAA+H;;;QAE/H,IAAI,CAAC,CAAC,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACtD,OAAO;QACT,CAAC;QAED,mCAAmC;QACnC,IAAI,YAAY,CAAC,OAA0C,EAAE,YAAY,CAAC,WAAW,CAAC,EAAE,CAAC;YACvF,MAAM,SAAS,GAAG,KAAyB,CAAC;YAC5C,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,KAAK,GAAG;oBAC1B,MAAA,MAAA,SAAS,CAAC,KAAK,0CAAE,YAAY,0CAAE,UAAU,CAAA;oBACzC,MAAA,SAAS,CAAC,KAAK,0CAAE,IAAI,CAAA,EAAE,CAAC;gBAC7B,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAC5C,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,KAAK,CAAC,YAAY,EAAE,OAAO,CAAC,MAAM,EACnE,sBAAsB,EAAE,uBAAuB,EAAE,0BAA0B,EAC1E,OAAe,CAAC,UAAU,EAAE,uBAAuB,CACrD,CAAC;gBAEF,IAAI,CAAC;oBACH,SAAS,CAAC,KAAK,CAAC,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,CAC1C,SAAS,CAAC,KAAK,CAAC,YAAY,EAC5B,YAAY,EACZ,SAAS,CAAC,KAAK,CAAC,IAAI,CACrB,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,MAAM,IAAI,KAAK,CACb,wCAAwC;wBACxC,IAAI,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,KAAK;wBAC9C,mBAAmB,KAAK,CAAC,OAAO,EAAE,CACnC,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,0EAA0E;QAC1E,IAAI,YAAY,CAAC,OAA0C,EAAE,YAAY,CAAC,YAAY,CAAC,EAAE,CAAC;YACxF,MAAM,UAAU,GAAG,KAA0B,CAAC;YAC9C,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,KAAK,GAAG,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACzD,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;oBACvC,IAAI,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;wBAC1C,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAC5C,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,KAA4B,EAAE,OAAO,CAAC,MAAM,EACnE,sBAAsB,EAAE,uBAAuB,EAAE,0BAA0B,EAC1E,OAAe,CAAC,UAAU,EAAE,uBAAuB,CACrD,CAAC;wBAEF,IAAI,CAAC;4BACH,MAAM,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;4BAChE,MAAM,YAAY,GAAG,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;4BACvD,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,OAAO,CACvC,KAA4B,EAAE,YAAY,EAAE,YAAY,CACzD,CAAC;4BACF,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;4BACzD,KAAK,CAAC,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;wBAC3D,CAAC;wBAAC,OAAO,KAAU,EAAE,CAAC;4BACpB,MAAM,IAAI,KAAK,CACb,wCAAwC;gCACxC,IAAI,KAAK,CAAC,QAAQ,sBAAsB,KAAK,CAAC,OAAO,EAAE,CACxD,CAAC;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;CAAA"}
@@ -7,10 +7,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
7
7
  step((generator = generator.apply(thisArg, _arguments || [])).next());
8
8
  });
9
9
  };
10
- import { ContentEncryptionAlgorithm, DataStream, KeyDerivationScheme, Message, Protocols, Records, } from '@enbox/dwn-sdk-js';
10
+ import { ContentEncryptionAlgorithm, DataStream, KeyDerivationScheme, Message, Protocols, } from '@enbox/dwn-sdk-js';
11
+ import { DwnInterface } from './types/dwn.js';
11
12
  import { KeyDeliveryProtocolDefinition } from './store-data-protocols.js';
12
- import { buildEncryptionInput, encryptAndComputeCid, getEncryptionKeyDeriver, getKeyDecrypter, ivLength } from './dwn-encryption.js';
13
- import { DwnInterface, dwnMessageConstructors } from './types/dwn.js';
13
+ import { buildEncryptionInput, encryptAndComputeCid, getEncryptionKeyDeriver, ivLength } from './dwn-encryption.js';
14
14
  /**
15
15
  * Ensures the key delivery protocol is installed on the given tenant's DWN,
16
16
  * with `$encryption` keys injected. Uses the same lazy initialization pattern
@@ -161,6 +161,52 @@ export function eagerSendContextKeyRecord(agent, tenantDid, contextKeyMessage, g
161
161
  });
162
162
  });
163
163
  }
164
+ /**
165
+ * Fetches a contextKey record from the owner's tenant via `processRequest`.
166
+ *
167
+ * This works in both agent modes:
168
+ * - In-process DWN node: `processRequest` routes locally via the DWN instance
169
+ * - Remote/local-server mode: `processRequest` routes via RPC to the local DWN server
170
+ *
171
+ * The delegate identity's `connectedDid` metadata registers `ownerDid` as a
172
+ * locally-managed DID, so `processRequest` routes to the local DWN (not the
173
+ * owner's remote endpoint).
174
+ *
175
+ * Requires sync to have brought the contextKey record to the owner's tenant
176
+ * on the delegate's DWN before this is called.
177
+ */
178
+ function fetchCrossDeviceContextKey(processRequest, requesterDid, ownerDid, contextKeyFilter, parsePayload) {
179
+ return __awaiter(this, void 0, void 0, function* () {
180
+ var _a, _b;
181
+ try {
182
+ const { reply } = yield processRequest({
183
+ author: requesterDid,
184
+ target: ownerDid,
185
+ messageType: DwnInterface.RecordsQuery,
186
+ messageParams: { filter: contextKeyFilter },
187
+ });
188
+ if (reply.status.code !== 200 || !((_a = reply.entries) === null || _a === void 0 ? void 0 : _a.length)) {
189
+ return undefined;
190
+ }
191
+ const recordId = reply.entries[0].recordId;
192
+ const { reply: readReply } = yield processRequest({
193
+ author: requesterDid,
194
+ target: ownerDid,
195
+ messageType: DwnInterface.RecordsRead,
196
+ messageParams: { filter: { recordId } },
197
+ encryption: true,
198
+ });
199
+ const readResult = readReply;
200
+ if (!((_b = readResult.entry) === null || _b === void 0 ? void 0 : _b.data)) {
201
+ return undefined;
202
+ }
203
+ return parsePayload(yield DataStream.toBytes(readResult.entry.data));
204
+ }
205
+ catch (_c) {
206
+ return undefined;
207
+ }
208
+ });
209
+ }
164
210
  /**
165
211
  * Fetches and decrypts a `contextKey` record from a DWN, returning the
166
212
  * `DerivedPrivateJwk` payload.
@@ -171,14 +217,11 @@ export function eagerSendContextKeyRecord(agent, tenantDid, contextKeyMessage, g
171
217
  * @param agent - The platform agent
172
218
  * @param params - The fetch parameters
173
219
  * @param processRequest - The agent's processRequest method (bound)
174
- * @param getSigner - Function to get a signer for a DID
175
- * @param sendDwnRpcRequest - Function to send a DWN RPC request
176
- * @param getDwnEndpointUrlsForTarget - Function to resolve DWN endpoint URLs (with local discovery)
177
220
  * @returns The decrypted `DerivedPrivateJwk`, or `undefined` if no matching record found
178
221
  */
179
- export function fetchContextKeyRecord(agent, params, processRequest, getSigner, sendDwnRpcRequest, getDwnEndpointUrlsForTarget) {
222
+ export function fetchContextKeyRecord(_agent, params, processRequest) {
180
223
  return __awaiter(this, void 0, void 0, function* () {
181
- var _a, _b, _c, _d, _e;
224
+ var _a, _b;
182
225
  const { ownerDid, requesterDid, sourceProtocol, sourceContextId } = params;
183
226
  const protocolUri = KeyDeliveryProtocolDefinition.protocol;
184
227
  const isLocal = ownerDid === requesterDid;
@@ -192,7 +235,7 @@ export function fetchContextKeyRecord(agent, params, processRequest, getSigner,
192
235
  /** Parse decrypted bytes into a DerivedPrivateJwk. */
193
236
  const parsePayload = (bytes) => JSON.parse(new TextDecoder().decode(bytes));
194
237
  if (isLocal) {
195
- // Local query: owner queries their own DWN
238
+ // Local query via processRequest: owner queries their own DWN.
196
239
  const { reply } = yield processRequest({
197
240
  author: requesterDid,
198
241
  target: ownerDid,
@@ -202,13 +245,12 @@ export function fetchContextKeyRecord(agent, params, processRequest, getSigner,
202
245
  if (reply.status.code !== 200 || !((_a = reply.entries) === null || _a === void 0 ? void 0 : _a.length)) {
203
246
  return undefined;
204
247
  }
205
- // Read the full record to get the data (auto-decrypted by processRequest)
206
- const recordId = reply.entries[0].recordId;
248
+ const localRecordId = reply.entries[0].recordId;
207
249
  const { reply: readReply } = yield processRequest({
208
250
  author: requesterDid,
209
251
  target: ownerDid,
210
252
  messageType: DwnInterface.RecordsRead,
211
- messageParams: { filter: { recordId } },
253
+ messageParams: { filter: { recordId: localRecordId } },
212
254
  encryption: true,
213
255
  });
214
256
  const readResult = readReply;
@@ -217,41 +259,16 @@ export function fetchContextKeyRecord(agent, params, processRequest, getSigner,
217
259
  }
218
260
  return parsePayload(yield DataStream.toBytes(readResult.entry.data));
219
261
  }
220
- else {
221
- // Remote query: participant queries the context owner's DWN
222
- const signer = yield getSigner(requesterDid);
223
- const dwnEndpointUrls = yield getDwnEndpointUrlsForTarget(ownerDid);
224
- const recordsQuery = yield dwnMessageConstructors[DwnInterface.RecordsQuery].create({
225
- signer,
226
- filter: contextKeyFilter,
227
- });
228
- const queryReply = yield sendDwnRpcRequest({
229
- targetDid: ownerDid,
230
- dwnEndpointUrls,
231
- message: recordsQuery.message,
232
- });
233
- if (queryReply.status.code !== 200 || !((_c = queryReply.entries) === null || _c === void 0 ? void 0 : _c.length)) {
234
- return undefined;
235
- }
236
- // Read the full record remotely
237
- const recordId = queryReply.entries[0].recordId;
238
- const recordsRead = yield dwnMessageConstructors[DwnInterface.RecordsRead].create({
239
- signer,
240
- filter: { recordId },
241
- });
242
- const readReply = yield sendDwnRpcRequest({
243
- targetDid: ownerDid,
244
- dwnEndpointUrls,
245
- message: recordsRead.message,
246
- });
247
- if (!((_d = readReply.entry) === null || _d === void 0 ? void 0 : _d.data) || !((_e = readReply.entry) === null || _e === void 0 ? void 0 : _e.recordsWrite)) {
248
- return undefined;
249
- }
250
- // Decrypt the contextKey payload using the requester's key-delivery protocol path key
251
- const keyDecrypter = yield getKeyDecrypter(agent, requesterDid);
252
- const decryptedStream = yield Records.decrypt(readReply.entry.recordsWrite, keyDecrypter, readReply.entry.data);
253
- return parsePayload(yield DataStream.toBytes(decryptedStream));
254
- }
262
+ // Cross-device path: the requester is NOT the owner.
263
+ // Query the owner's tenant on the delegate's DWN via processRequest.
264
+ // The delegate identity's connectedDid metadata registers ownerDid as
265
+ // locally-managed, so processRequest routes locally (in-process or
266
+ // local-server RPC) rather than to the owner's remote DWN endpoint.
267
+ //
268
+ // Sync must have brought the contextKey record to the owner's tenant
269
+ // on the delegate's DWN before this is called.
270
+ // If fetch fails, the caller's fail-closed guard will fire.
271
+ return fetchCrossDeviceContextKey(processRequest, requesterDid, ownerDid, contextKeyFilter, parsePayload);
255
272
  });
256
273
  }
257
274
  //# sourceMappingURL=dwn-key-delivery.js.map