@fedify/fedify 1.9.0-dev.1335 → 1.9.0-pr.355.1353

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 (79) hide show
  1. package/README.md +1 -0
  2. package/dist/{actor-DuIRj9Ja.js → actor-C0tyMvUr.js} +1 -1
  3. package/dist/{actor-CdYKu-iJ.js → actor-CP7_pEJH.js} +179 -179
  4. package/dist/{authdocloader-B1CXd67u.js → authdocloader-BQ0mqUse.js} +3 -3
  5. package/dist/{authdocloader-QTqZD6fG.js → authdocloader-DTA-rSpf.js} +3 -3
  6. package/dist/{builder-Bd_dCIbb.js → builder-IzUuZPAd.js} +4 -4
  7. package/dist/{client-C_T9sPPU.js → client-2c6NBte7.js} +1 -1
  8. package/dist/compat/transformers.test.js +16 -16
  9. package/dist/{docloader-B09P0pZn.js → docloader-DjRia5xM.js} +1 -1
  10. package/dist/{esm-hJi1yR2j.js → esm-DsSDqZTD.js} +1 -1
  11. package/dist/federation/builder.test.js +5 -5
  12. package/dist/federation/collection.test.js +3 -3
  13. package/dist/federation/handler.test.js +75 -17
  14. package/dist/federation/inbox.test.js +4 -4
  15. package/dist/federation/keycache.test.js +4 -4
  16. package/dist/federation/kv.test.js +3 -3
  17. package/dist/federation/middleware.test.js +18 -18
  18. package/dist/federation/mod.js +10 -10
  19. package/dist/federation/mq.test.js +3 -3
  20. package/dist/federation/retry.test.js +3 -3
  21. package/dist/federation/router.test.js +3 -3
  22. package/dist/federation/send.test.js +10 -10
  23. package/dist/{http-DVxdBAv_.js → http-BLOA8sDv.js} +2 -2
  24. package/dist/{http-DPRVpNlM.js → http-QmdFgNbX.js} +3 -3
  25. package/dist/{inbox-ByGY80zQ.js → inbox-C9ak6cGh.js} +1 -1
  26. package/dist/{key-QyEMlbZC.js → key-57BdewPY.js} +4 -4
  27. package/dist/{key-BunxB4Ol.js → key-B1cGTZ6q.js} +3 -3
  28. package/dist/{key-CsxUrye1.js → key-DXQWweSA.js} +2 -2
  29. package/dist/{key-CCDfOhd7.js → key-ESVstwMe.js} +2 -2
  30. package/dist/{keycache-B9iqnCTy.js → keycache-BzuzrDe4.js} +1 -1
  31. package/dist/{keys-MUxlZ2xL.js → keys-CH6q1aiE.js} +1 -1
  32. package/dist/{ld-CgtsBH79.js → ld-K9TRwSK3.js} +2 -2
  33. package/dist/{lookup-DAuJOWW8.js → lookup-BrMD0LGa.js} +1 -1
  34. package/dist/{lookup-DMHuC__o.js → lookup-CIXgYa0O.js} +1 -1
  35. package/dist/{middleware-iFOYmGjC.js → middleware-BVDOu9ri.js} +24 -24
  36. package/dist/middleware-BbT-ekcC.js +26 -0
  37. package/dist/middleware-CKF7IDwc.js +17 -0
  38. package/dist/{middleware-9SXRMaPR.js → middleware-CRJIVnYV.js} +27 -27
  39. package/dist/mod.js +10 -10
  40. package/dist/nodeinfo/client.test.js +5 -5
  41. package/dist/nodeinfo/handler.test.js +16 -16
  42. package/dist/nodeinfo/mod.js +2 -2
  43. package/dist/nodeinfo/semver.test.js +3 -3
  44. package/dist/nodeinfo/types.test.js +3 -3
  45. package/dist/{owner-fu4S1Klo.js → owner-BMjNOLvk.js} +2 -2
  46. package/dist/{proof-BYiavaj1.js → proof-B7LhNAta.js} +2 -2
  47. package/dist/{proof-SFarlULW.js → proof-DqViqBY7.js} +3 -3
  48. package/dist/runtime/authdocloader.test.js +9 -9
  49. package/dist/runtime/docloader.test.js +4 -4
  50. package/dist/runtime/key.test.js +5 -5
  51. package/dist/runtime/langstr.test.js +3 -3
  52. package/dist/runtime/mod.js +6 -6
  53. package/dist/runtime/multibase/multibase.test.js +3 -3
  54. package/dist/runtime/url.test.js +3 -3
  55. package/dist/{send-DFiXRj0X.js → send-Bywt-sMB.js} +2 -2
  56. package/dist/sig/http.test.js +8 -8
  57. package/dist/sig/key.test.js +6 -6
  58. package/dist/sig/ld.test.js +7 -7
  59. package/dist/sig/mod.js +6 -6
  60. package/dist/sig/owner.test.js +7 -7
  61. package/dist/sig/proof.test.js +7 -7
  62. package/dist/testing/docloader.test.js +3 -3
  63. package/dist/testing/mod.js +3 -3
  64. package/dist/{testing-Bd2uoF8G.js → testing-CvKfJgtz.js} +2 -2
  65. package/dist/{type-C8uR3h6d.js → type-CEUJQGF0.js} +178 -178
  66. package/dist/{types-BXKE0ad8.js → types-CB66h6P0.js} +1 -1
  67. package/dist/vocab/actor.test.js +5 -5
  68. package/dist/vocab/lookup.test.js +4 -4
  69. package/dist/vocab/mod.js +4 -4
  70. package/dist/vocab/type.test.js +3 -3
  71. package/dist/vocab/vocab.test.js +4 -4
  72. package/dist/{vocab-BL1hbMev.js → vocab-BY5Y7O6P.js} +3 -3
  73. package/dist/webfinger/handler.test.js +16 -16
  74. package/dist/webfinger/lookup.test.js +4 -4
  75. package/dist/webfinger/mod.js +2 -2
  76. package/dist/x/cfworkers.test.js +3 -3
  77. package/package.json +1 -1
  78. package/dist/middleware-B3xyGGVZ.js +0 -17
  79. package/dist/middleware-C6UM95m6.js +0 -26
@@ -3,9 +3,9 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { UrlError, createRequest, getRemoteDocument, logRequest, validatePublicUrl } from "./type-C8uR3h6d.js";
7
- import { validateCryptoKey } from "./key-CCDfOhd7.js";
8
- import { doubleKnock } from "./http-DVxdBAv_.js";
6
+ import { UrlError, createRequest, getRemoteDocument, logRequest, validatePublicUrl } from "./type-CEUJQGF0.js";
7
+ import { validateCryptoKey } from "./key-ESVstwMe.js";
8
+ import { doubleKnock } from "./http-BLOA8sDv.js";
9
9
  import { getLogger } from "@logtape/logtape";
10
10
 
11
11
  //#region src/runtime/authdocloader.ts
@@ -2,9 +2,9 @@
2
2
  import { Temporal } from "@js-temporal/polyfill";
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
 
5
- import { UrlError, createRequest, getRemoteDocument, logRequest, validatePublicUrl } from "./docloader-B09P0pZn.js";
6
- import { validateCryptoKey } from "./key-CsxUrye1.js";
7
- import { doubleKnock } from "./http-DPRVpNlM.js";
5
+ import { UrlError, createRequest, getRemoteDocument, logRequest, validatePublicUrl } from "./docloader-DjRia5xM.js";
6
+ import { validateCryptoKey } from "./key-DXQWweSA.js";
7
+ import { doubleKnock } from "./http-QmdFgNbX.js";
8
8
  import { getLogger } from "@logtape/logtape";
9
9
 
10
10
  //#region src/runtime/authdocloader.ts
@@ -3,9 +3,9 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { deno_default, getTypeId } from "./type-C8uR3h6d.js";
7
- import { Router, RouterError } from "./lookup-DAuJOWW8.js";
8
- import { InboxListenerSet } from "./inbox-ByGY80zQ.js";
6
+ import { deno_default, getTypeId } from "./type-CEUJQGF0.js";
7
+ import { Router, RouterError } from "./lookup-BrMD0LGa.js";
8
+ import { InboxListenerSet } from "./inbox-C9ak6cGh.js";
9
9
  import { getLogger } from "@logtape/logtape";
10
10
  import { SpanKind, SpanStatusCode, trace } from "@opentelemetry/api";
11
11
 
@@ -41,7 +41,7 @@ var FederationBuilderImpl = class {
41
41
  this.collectionTypeIds = {};
42
42
  }
43
43
  async build(options) {
44
- const { FederationImpl } = await import("./middleware-C6UM95m6.js");
44
+ const { FederationImpl } = await import("./middleware-BbT-ekcC.js");
45
45
  const f = new FederationImpl(options);
46
46
  const trailingSlashInsensitiveValue = f.router.trailingSlashInsensitive;
47
47
  f.router = this.router.clone();
@@ -3,7 +3,7 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { getUserAgent } from "./type-C8uR3h6d.js";
6
+ import { getUserAgent } from "./type-CEUJQGF0.js";
7
7
  import { parseSemVer } from "./semver-dArNLkR9.js";
8
8
  import { getLogger } from "@logtape/logtape";
9
9
 
@@ -3,30 +3,30 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { Follow, Person } from "../type-C8uR3h6d.js";
6
+ import { Follow, Person } from "../type-CEUJQGF0.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import { assert } from "../assert-MZs1qjMx.js";
9
9
  import { assertInstanceOf } from "../assert_instance_of-DHz7EHNU.js";
10
10
  import { MemoryKvStore } from "../kv-CRZrzyXm.js";
11
- import { FederationImpl, actorDehydrator, autoIdAssigner } from "../middleware-9SXRMaPR.js";
11
+ import { FederationImpl, actorDehydrator, autoIdAssigner } from "../middleware-CRJIVnYV.js";
12
12
  import "../semver-dArNLkR9.js";
13
- import "../client-C_T9sPPU.js";
14
- import "../lookup-DAuJOWW8.js";
13
+ import "../client-2c6NBte7.js";
14
+ import "../lookup-BrMD0LGa.js";
15
15
  import "../types-BIgY6c-l.js";
16
- import "../actor-DuIRj9Ja.js";
17
- import "../key-CCDfOhd7.js";
18
- import "../http-DVxdBAv_.js";
19
- import "../authdocloader-B1CXd67u.js";
20
- import "../ld-CgtsBH79.js";
21
- import "../owner-fu4S1Klo.js";
22
- import "../proof-BYiavaj1.js";
23
- import "../inbox-ByGY80zQ.js";
24
- import "../builder-Bd_dCIbb.js";
16
+ import "../actor-C0tyMvUr.js";
17
+ import "../key-ESVstwMe.js";
18
+ import "../http-BLOA8sDv.js";
19
+ import "../authdocloader-BQ0mqUse.js";
20
+ import "../ld-K9TRwSK3.js";
21
+ import "../owner-BMjNOLvk.js";
22
+ import "../proof-B7LhNAta.js";
23
+ import "../inbox-C9ak6cGh.js";
24
+ import "../builder-IzUuZPAd.js";
25
25
  import "../collection-CSzG2j1P.js";
26
- import "../keycache-B9iqnCTy.js";
26
+ import "../keycache-BzuzrDe4.js";
27
27
  import "../retry-D4GJ670a.js";
28
- import "../send-DFiXRj0X.js";
29
- import { test } from "../testing-Bd2uoF8G.js";
28
+ import "../send-Bywt-sMB.js";
29
+ import { test } from "../testing-CvKfJgtz.js";
30
30
 
31
31
  //#region src/compat/transformers.test.ts
32
32
  const federation = new FederationImpl({ kv: new MemoryKvStore() });
@@ -10,7 +10,7 @@ import { isIP } from "node:net";
10
10
 
11
11
  //#region deno.json
12
12
  var name = "@fedify/fedify";
13
- var version = "1.9.0-dev.1335+6690c81e";
13
+ var version = "1.9.0-pr.355.1353+2b6be9b6";
14
14
  var license = "MIT";
15
15
  var exports = {
16
16
  ".": "./src/mod.ts",
@@ -3,7 +3,7 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { __commonJS, __toESM } from "./type-C8uR3h6d.js";
6
+ import { __commonJS, __toESM } from "./type-CEUJQGF0.js";
7
7
 
8
8
  //#region ../../node_modules/.pnpm/glob-to-regexp@0.4.1/node_modules/glob-to-regexp/index.js
9
9
  var require_glob_to_regexp = __commonJS({ "../../node_modules/.pnpm/glob-to-regexp@0.4.1/node_modules/glob-to-regexp/index.js"(exports, module) {
@@ -3,16 +3,16 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { Activity, Note, Person } from "../type-C8uR3h6d.js";
6
+ import { Activity, Note, Person } from "../type-CEUJQGF0.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import "../assert-MZs1qjMx.js";
9
9
  import "../assert_instance_of-DHz7EHNU.js";
10
10
  import { MemoryKvStore } from "../kv-CRZrzyXm.js";
11
11
  import { parseSemVer } from "../semver-dArNLkR9.js";
12
- import "../lookup-DAuJOWW8.js";
13
- import "../inbox-ByGY80zQ.js";
14
- import { createFederationBuilder } from "../builder-Bd_dCIbb.js";
15
- import { test } from "../testing-Bd2uoF8G.js";
12
+ import "../lookup-BrMD0LGa.js";
13
+ import "../inbox-C9ak6cGh.js";
14
+ import { createFederationBuilder } from "../builder-IzUuZPAd.js";
15
+ import { test } from "../testing-CvKfJgtz.js";
16
16
  import { assertExists } from "../std__assert-X-_kMxKM.js";
17
17
  import "../assert_rejects-DiIiJbZn.js";
18
18
  import "../assert_is_error-BPGph1Jx.js";
@@ -3,13 +3,13 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import "../type-C8uR3h6d.js";
6
+ import "../type-CEUJQGF0.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import "../assert-MZs1qjMx.js";
9
9
  import "../assert_instance_of-DHz7EHNU.js";
10
- import "../lookup-DAuJOWW8.js";
10
+ import "../lookup-BrMD0LGa.js";
11
11
  import { buildCollectionSynchronizationHeader, digest } from "../collection-CSzG2j1P.js";
12
- import { test } from "../testing-Bd2uoF8G.js";
12
+ import { test } from "../testing-CvKfJgtz.js";
13
13
  import "../std__assert-X-_kMxKM.js";
14
14
  import "../assert_rejects-DiIiJbZn.js";
15
15
  import "../assert_is_error-BPGph1Jx.js";
@@ -3,36 +3,36 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { Create, Note, Person } from "../type-C8uR3h6d.js";
6
+ import { Create, Note, Person } from "../type-CEUJQGF0.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import { assert } from "../assert-MZs1qjMx.js";
9
9
  import "../assert_instance_of-DHz7EHNU.js";
10
10
  import { MemoryKvStore } from "../kv-CRZrzyXm.js";
11
- import { acceptsJsonLd, createFederation, handleActor, handleCollection, handleCustomCollection, handleInbox, handleObject, respondWithObject, respondWithObjectIfAcceptable } from "../middleware-9SXRMaPR.js";
11
+ import { acceptsJsonLd, createFederation, handleActor, handleCollection, handleCustomCollection, handleInbox, handleObject, respondWithObject, respondWithObjectIfAcceptable } from "../middleware-CRJIVnYV.js";
12
12
  import "../semver-dArNLkR9.js";
13
- import "../client-C_T9sPPU.js";
14
- import "../lookup-DAuJOWW8.js";
13
+ import "../client-2c6NBte7.js";
14
+ import "../lookup-BrMD0LGa.js";
15
15
  import "../types-BIgY6c-l.js";
16
- import "../actor-DuIRj9Ja.js";
17
- import "../key-CCDfOhd7.js";
18
- import { signRequest } from "../http-DVxdBAv_.js";
19
- import "../authdocloader-B1CXd67u.js";
20
- import "../ld-CgtsBH79.js";
21
- import "../owner-fu4S1Klo.js";
22
- import "../proof-BYiavaj1.js";
23
- import "../inbox-ByGY80zQ.js";
24
- import "../builder-Bd_dCIbb.js";
16
+ import "../actor-C0tyMvUr.js";
17
+ import "../key-ESVstwMe.js";
18
+ import { signRequest } from "../http-BLOA8sDv.js";
19
+ import "../authdocloader-BQ0mqUse.js";
20
+ import "../ld-K9TRwSK3.js";
21
+ import "../owner-BMjNOLvk.js";
22
+ import "../proof-B7LhNAta.js";
23
+ import { InboxListenerSet } from "../inbox-C9ak6cGh.js";
24
+ import "../builder-IzUuZPAd.js";
25
25
  import "../collection-CSzG2j1P.js";
26
- import "../keycache-B9iqnCTy.js";
26
+ import "../keycache-BzuzrDe4.js";
27
27
  import "../retry-D4GJ670a.js";
28
- import "../send-DFiXRj0X.js";
29
- import { createInboxContext, createRequestContext, mockDocumentLoader, test } from "../testing-Bd2uoF8G.js";
28
+ import "../send-Bywt-sMB.js";
29
+ import { createInboxContext, createRequestContext, mockDocumentLoader, test } from "../testing-CvKfJgtz.js";
30
30
  import "../std__assert-X-_kMxKM.js";
31
31
  import { assertFalse } from "../assert_rejects-DiIiJbZn.js";
32
32
  import "../assert_is_error-BPGph1Jx.js";
33
33
  import "../assert_not_equals-f3m3epl3.js";
34
34
  import "../assert_throws-BOO88avQ.js";
35
- import { rsaPrivateKey3, rsaPublicKey2, rsaPublicKey3 } from "../keys-MUxlZ2xL.js";
35
+ import { rsaPrivateKey3, rsaPublicKey2, rsaPublicKey3 } from "../keys-CH6q1aiE.js";
36
36
 
37
37
  //#region src/federation/handler.test.ts
38
38
  test("acceptsJsonLd()", () => {
@@ -1194,6 +1194,64 @@ test("respondWithObject()", async () => {
1194
1194
  content: "Hello, world!"
1195
1195
  });
1196
1196
  });
1197
+ test("handleInbox() - authentication bypass vulnerability", async () => {
1198
+ const federation = createFederation({ kv: new MemoryKvStore() });
1199
+ let processedActivity;
1200
+ const inboxListeners = new InboxListenerSet();
1201
+ inboxListeners.add(Create, (_ctx, activity) => {
1202
+ processedActivity = activity;
1203
+ });
1204
+ const maliciousActivity = new Create({
1205
+ id: new URL("https://attacker.example.com/activities/malicious"),
1206
+ actor: new URL("https://victim.example.com/users/alice"),
1207
+ object: new Note({
1208
+ id: new URL("https://attacker.example.com/notes/forged"),
1209
+ attribution: new URL("https://victim.example.com/users/alice"),
1210
+ content: "This is a forged message from the victim!"
1211
+ })
1212
+ });
1213
+ const maliciousRequest = await signRequest(new Request("https://example.com/", {
1214
+ method: "POST",
1215
+ body: JSON.stringify(await maliciousActivity.toJsonLd())
1216
+ }), rsaPrivateKey3, rsaPublicKey3.id);
1217
+ const maliciousContext = createRequestContext({
1218
+ request: maliciousRequest,
1219
+ url: new URL(maliciousRequest.url),
1220
+ data: void 0,
1221
+ documentLoader: mockDocumentLoader,
1222
+ federation
1223
+ });
1224
+ const actorDispatcher = (_ctx, identifier) => {
1225
+ if (identifier !== "someone") return null;
1226
+ return new Person({ name: "Someone" });
1227
+ };
1228
+ const response = await handleInbox(maliciousRequest, {
1229
+ recipient: "someone",
1230
+ context: maliciousContext,
1231
+ inboxContextFactory(_activity) {
1232
+ return createInboxContext({
1233
+ url: new URL(maliciousRequest.url),
1234
+ data: void 0,
1235
+ documentLoader: mockDocumentLoader,
1236
+ federation,
1237
+ recipient: "someone"
1238
+ });
1239
+ },
1240
+ kv: new MemoryKvStore(),
1241
+ kvPrefixes: {
1242
+ activityIdempotence: ["_fedify", "activityIdempotence"],
1243
+ publicKey: ["_fedify", "publicKey"]
1244
+ },
1245
+ actorDispatcher,
1246
+ inboxListeners,
1247
+ onNotFound: () => new Response("Not found", { status: 404 }),
1248
+ signatureTimeWindow: { minutes: 5 },
1249
+ skipSignatureVerification: false
1250
+ });
1251
+ assertEquals(response.status, 401);
1252
+ assertEquals(await response.text(), "The signer and the actor do not match.");
1253
+ assertEquals(processedActivity, void 0, `SECURITY VULNERABILITY: Malicious activity with mismatched signature was processed! Activity ID: ${processedActivity?.id?.href}, Claimed actor: ${processedActivity?.actorId?.href}`);
1254
+ });
1197
1255
  test("respondWithObjectIfAcceptable", async () => {
1198
1256
  let request = new Request("https://example.com/", { headers: { Accept: "application/activity+json" } });
1199
1257
  let response = await respondWithObjectIfAcceptable(new Note({
@@ -3,11 +3,11 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { Activity, Create, Invite, Offer, Update } from "../type-C8uR3h6d.js";
6
+ import { Activity, Create, Invite, Offer, Update } from "../type-CEUJQGF0.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
- import "../lookup-DAuJOWW8.js";
9
- import { InboxListenerSet } from "../inbox-ByGY80zQ.js";
10
- import { test } from "../testing-Bd2uoF8G.js";
8
+ import "../lookup-BrMD0LGa.js";
9
+ import { InboxListenerSet } from "../inbox-C9ak6cGh.js";
10
+ import { test } from "../testing-CvKfJgtz.js";
11
11
  import "../assert_is_error-BPGph1Jx.js";
12
12
  import { assertThrows } from "../assert_throws-BOO88avQ.js";
13
13
 
@@ -3,14 +3,14 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { CryptographicKey, Multikey } from "../type-C8uR3h6d.js";
6
+ import { CryptographicKey, Multikey } from "../type-CEUJQGF0.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import { assert } from "../assert-MZs1qjMx.js";
9
9
  import { assertInstanceOf } from "../assert_instance_of-DHz7EHNU.js";
10
10
  import { MemoryKvStore } from "../kv-CRZrzyXm.js";
11
- import "../lookup-DAuJOWW8.js";
12
- import { KvKeyCache } from "../keycache-B9iqnCTy.js";
13
- import { test } from "../testing-Bd2uoF8G.js";
11
+ import "../lookup-BrMD0LGa.js";
12
+ import { KvKeyCache } from "../keycache-BzuzrDe4.js";
13
+ import { test } from "../testing-CvKfJgtz.js";
14
14
 
15
15
  //#region src/federation/keycache.test.ts
16
16
  test("KvKeyCache.set()", async () => {
@@ -3,13 +3,13 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import "../type-C8uR3h6d.js";
6
+ import "../type-CEUJQGF0.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import "../assert-MZs1qjMx.js";
9
9
  import "../assert_instance_of-DHz7EHNU.js";
10
10
  import { MemoryKvStore } from "../kv-CRZrzyXm.js";
11
- import "../lookup-DAuJOWW8.js";
12
- import { test } from "../testing-Bd2uoF8G.js";
11
+ import "../lookup-BrMD0LGa.js";
12
+ import { test } from "../testing-CvKfJgtz.js";
13
13
  import "../std__assert-X-_kMxKM.js";
14
14
  import "../assert_rejects-DiIiJbZn.js";
15
15
  import "../assert_is_error-BPGph1Jx.js";
@@ -3,37 +3,37 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { Activity, Announce, Create, FetchError, Invite, Multikey, Note, Object as Object$1, Offer, Person, fetchDocumentLoader, getTypeId } from "../type-C8uR3h6d.js";
6
+ import { Activity, Announce, Create, FetchError, Invite, Multikey, Note, Object as Object$1, Offer, Person, fetchDocumentLoader, getTypeId } from "../type-CEUJQGF0.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import { assert } from "../assert-MZs1qjMx.js";
9
9
  import { assertInstanceOf } from "../assert_instance_of-DHz7EHNU.js";
10
10
  import { MemoryKvStore } from "../kv-CRZrzyXm.js";
11
- import { ContextImpl, FederationImpl, InboxContextImpl, KvSpecDeterminer, createFederation } from "../middleware-9SXRMaPR.js";
11
+ import { ContextImpl, FederationImpl, InboxContextImpl, KvSpecDeterminer, createFederation } from "../middleware-CRJIVnYV.js";
12
12
  import "../semver-dArNLkR9.js";
13
- import "../client-C_T9sPPU.js";
14
- import { RouterError, lookupObject } from "../lookup-DAuJOWW8.js";
13
+ import "../client-2c6NBte7.js";
14
+ import { RouterError, lookupObject } from "../lookup-BrMD0LGa.js";
15
15
  import "../types-BIgY6c-l.js";
16
- import "../actor-DuIRj9Ja.js";
17
- import "../key-CCDfOhd7.js";
18
- import { signRequest, verifyRequest } from "../http-DVxdBAv_.js";
19
- import { getAuthenticatedDocumentLoader } from "../authdocloader-B1CXd67u.js";
20
- import { detachSignature, signJsonLd, verifyJsonLd } from "../ld-CgtsBH79.js";
21
- import { doesActorOwnKey } from "../owner-fu4S1Klo.js";
22
- import { signObject, verifyObject } from "../proof-BYiavaj1.js";
23
- import "../inbox-ByGY80zQ.js";
24
- import "../builder-Bd_dCIbb.js";
16
+ import "../actor-C0tyMvUr.js";
17
+ import "../key-ESVstwMe.js";
18
+ import { signRequest, verifyRequest } from "../http-BLOA8sDv.js";
19
+ import { getAuthenticatedDocumentLoader } from "../authdocloader-BQ0mqUse.js";
20
+ import { detachSignature, signJsonLd, verifyJsonLd } from "../ld-K9TRwSK3.js";
21
+ import { doesActorOwnKey } from "../owner-BMjNOLvk.js";
22
+ import { signObject, verifyObject } from "../proof-B7LhNAta.js";
23
+ import "../inbox-C9ak6cGh.js";
24
+ import "../builder-IzUuZPAd.js";
25
25
  import "../collection-CSzG2j1P.js";
26
- import "../keycache-B9iqnCTy.js";
26
+ import "../keycache-BzuzrDe4.js";
27
27
  import "../retry-D4GJ670a.js";
28
- import "../send-DFiXRj0X.js";
29
- import { mockDocumentLoader, test } from "../testing-Bd2uoF8G.js";
28
+ import "../send-Bywt-sMB.js";
29
+ import { mockDocumentLoader, test } from "../testing-CvKfJgtz.js";
30
30
  import { assertStrictEquals } from "../std__assert-X-_kMxKM.js";
31
31
  import { assertFalse, assertRejects } from "../assert_rejects-DiIiJbZn.js";
32
32
  import "../assert_is_error-BPGph1Jx.js";
33
33
  import { assertNotEquals } from "../assert_not_equals-f3m3epl3.js";
34
34
  import { assertThrows } from "../assert_throws-BOO88avQ.js";
35
- import { ed25519Multikey, ed25519PrivateKey, ed25519PublicKey, rsaPrivateKey2, rsaPrivateKey3, rsaPublicKey2, rsaPublicKey3 } from "../keys-MUxlZ2xL.js";
36
- import { esm_default } from "../esm-hJi1yR2j.js";
35
+ import { ed25519Multikey, ed25519PrivateKey, ed25519PublicKey, rsaPrivateKey2, rsaPrivateKey3, rsaPublicKey2, rsaPublicKey3 } from "../keys-CH6q1aiE.js";
36
+ import { esm_default } from "../esm-DsSDqZTD.js";
37
37
 
38
38
  //#region src/testing/fixtures/example.com/person.json
39
39
  var __context$1 = ["https://www.w3.org/ns/activitystreams", "https://w3id.org/security/v1"];
@@ -3,16 +3,16 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
 
5
5
  import "../transformers-Dna8Fg7k.js";
6
- import "../docloader-B09P0pZn.js";
7
- import "../actor-CdYKu-iJ.js";
8
- import { Router, RouterError, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, digest, respondWithObject, respondWithObjectIfAcceptable } from "../middleware-iFOYmGjC.js";
9
- import "../lookup-DMHuC__o.js";
10
- import "../key-CsxUrye1.js";
11
- import "../http-DPRVpNlM.js";
12
- import "../proof-SFarlULW.js";
6
+ import "../docloader-DjRia5xM.js";
7
+ import "../actor-CP7_pEJH.js";
8
+ import { Router, RouterError, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, digest, respondWithObject, respondWithObjectIfAcceptable } from "../middleware-BVDOu9ri.js";
9
+ import "../lookup-CIXgYa0O.js";
10
+ import "../key-DXQWweSA.js";
11
+ import "../http-QmdFgNbX.js";
12
+ import "../proof-DqViqBY7.js";
13
13
  import { InProcessMessageQueue, MemoryKvStore, ParallelMessageQueue } from "../federation-CMX7WzeL.js";
14
- import "../types-BXKE0ad8.js";
15
- import "../authdocloader-QTqZD6fG.js";
16
- import "../vocab-BL1hbMev.js";
14
+ import "../types-CB66h6P0.js";
15
+ import "../authdocloader-DTA-rSpf.js";
16
+ import "../vocab-BY5Y7O6P.js";
17
17
 
18
18
  export { InProcessMessageQueue, MemoryKvStore, ParallelMessageQueue, Router, RouterError, buildCollectionSynchronizationHeader, createExponentialBackoffPolicy, createFederation, createFederationBuilder, digest, respondWithObject, respondWithObjectIfAcceptable };
@@ -3,12 +3,12 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import "../type-C8uR3h6d.js";
6
+ import "../type-CEUJQGF0.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import { assert } from "../assert-MZs1qjMx.js";
9
9
  import "../assert_instance_of-DHz7EHNU.js";
10
- import "../lookup-DAuJOWW8.js";
11
- import { test } from "../testing-Bd2uoF8G.js";
10
+ import "../lookup-BrMD0LGa.js";
11
+ import { test } from "../testing-CvKfJgtz.js";
12
12
  import { assertGreater, assertGreaterOrEqual } from "../std__assert-X-_kMxKM.js";
13
13
  import { assertFalse } from "../assert_rejects-DiIiJbZn.js";
14
14
  import "../assert_is_error-BPGph1Jx.js";
@@ -3,11 +3,11 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import "../type-C8uR3h6d.js";
6
+ import "../type-CEUJQGF0.js";
7
7
  import { AssertionError, assertEquals } from "../assert_equals-DSbWqCm3.js";
8
- import "../lookup-DAuJOWW8.js";
8
+ import "../lookup-BrMD0LGa.js";
9
9
  import { createExponentialBackoffPolicy } from "../retry-D4GJ670a.js";
10
- import { test } from "../testing-Bd2uoF8G.js";
10
+ import { test } from "../testing-CvKfJgtz.js";
11
11
  import { assertNotEquals } from "../assert_not_equals-f3m3epl3.js";
12
12
 
13
13
  //#region src/federation/retry.test.ts
@@ -3,12 +3,12 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import "../type-C8uR3h6d.js";
6
+ import "../type-CEUJQGF0.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import { assert } from "../assert-MZs1qjMx.js";
9
9
  import "../assert_instance_of-DHz7EHNU.js";
10
- import { Router, RouterError } from "../lookup-DAuJOWW8.js";
11
- import { test } from "../testing-Bd2uoF8G.js";
10
+ import { Router, RouterError } from "../lookup-BrMD0LGa.js";
11
+ import { test } from "../testing-CvKfJgtz.js";
12
12
  import "../std__assert-X-_kMxKM.js";
13
13
  import { assertFalse } from "../assert_rejects-DiIiJbZn.js";
14
14
  import "../assert_is_error-BPGph1Jx.js";
@@ -3,24 +3,24 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { Activity, Application, Endpoints, Group, Person, Service } from "../type-C8uR3h6d.js";
6
+ import { Activity, Application, Endpoints, Group, Person, Service } from "../type-CEUJQGF0.js";
7
7
  import { assertEquals } from "../assert_equals-DSbWqCm3.js";
8
8
  import { assert } from "../assert-MZs1qjMx.js";
9
9
  import "../assert_instance_of-DHz7EHNU.js";
10
- import "../lookup-DAuJOWW8.js";
11
- import "../actor-DuIRj9Ja.js";
12
- import "../key-CCDfOhd7.js";
13
- import { verifyRequest } from "../http-DVxdBAv_.js";
14
- import { doesActorOwnKey } from "../owner-fu4S1Klo.js";
15
- import { extractInboxes, sendActivity } from "../send-DFiXRj0X.js";
16
- import { mockDocumentLoader, test } from "../testing-Bd2uoF8G.js";
10
+ import "../lookup-BrMD0LGa.js";
11
+ import "../actor-C0tyMvUr.js";
12
+ import "../key-ESVstwMe.js";
13
+ import { verifyRequest } from "../http-BLOA8sDv.js";
14
+ import { doesActorOwnKey } from "../owner-BMjNOLvk.js";
15
+ import { extractInboxes, sendActivity } from "../send-Bywt-sMB.js";
16
+ import { mockDocumentLoader, test } from "../testing-CvKfJgtz.js";
17
17
  import "../std__assert-X-_kMxKM.js";
18
18
  import { assertFalse, assertRejects } from "../assert_rejects-DiIiJbZn.js";
19
19
  import "../assert_is_error-BPGph1Jx.js";
20
20
  import { assertNotEquals } from "../assert_not_equals-f3m3epl3.js";
21
21
  import "../assert_throws-BOO88avQ.js";
22
- import { ed25519Multikey, ed25519PrivateKey, rsaPrivateKey2, rsaPublicKey2 } from "../keys-MUxlZ2xL.js";
23
- import { esm_default } from "../esm-hJi1yR2j.js";
22
+ import { ed25519Multikey, ed25519PrivateKey, rsaPrivateKey2, rsaPublicKey2 } from "../keys-CH6q1aiE.js";
23
+ import { esm_default } from "../esm-DsSDqZTD.js";
24
24
 
25
25
  //#region src/federation/send.test.ts
26
26
  test("extractInboxes()", () => {
@@ -3,8 +3,8 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { CryptographicKey, deno_default } from "./type-C8uR3h6d.js";
7
- import { fetchKey, validateCryptoKey } from "./key-CCDfOhd7.js";
6
+ import { CryptographicKey, deno_default } from "./type-CEUJQGF0.js";
7
+ import { fetchKey, validateCryptoKey } from "./key-ESVstwMe.js";
8
8
  import { getLogger } from "@logtape/logtape";
9
9
  import { SpanStatusCode, trace } from "@opentelemetry/api";
10
10
  import { ATTR_HTTP_REQUEST_HEADER, ATTR_HTTP_REQUEST_METHOD, ATTR_URL_FULL } from "@opentelemetry/semantic-conventions";
@@ -2,9 +2,9 @@
2
2
  import { Temporal } from "@js-temporal/polyfill";
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
 
5
- import { deno_default } from "./docloader-B09P0pZn.js";
6
- import { CryptographicKey } from "./actor-CdYKu-iJ.js";
7
- import { fetchKey, validateCryptoKey } from "./key-CsxUrye1.js";
5
+ import { deno_default } from "./docloader-DjRia5xM.js";
6
+ import { CryptographicKey } from "./actor-CP7_pEJH.js";
7
+ import { fetchKey, validateCryptoKey } from "./key-DXQWweSA.js";
8
8
  import { getLogger } from "@logtape/logtape";
9
9
  import { SpanStatusCode, trace } from "@opentelemetry/api";
10
10
  import { decodeBase64, encodeBase64 } from "byte-encodings/base64";
@@ -3,7 +3,7 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { Activity, deno_default, getTypeId } from "./type-C8uR3h6d.js";
6
+ import { Activity, deno_default, getTypeId } from "./type-CEUJQGF0.js";
7
7
  import { getLogger } from "@logtape/logtape";
8
8
  import { SpanKind, SpanStatusCode, context, propagation, trace } from "@opentelemetry/api";
9
9
 
@@ -2,9 +2,9 @@
2
2
  import { Temporal } from "@js-temporal/polyfill";
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
 
5
- import "./docloader-B09P0pZn.js";
6
- import "./actor-CdYKu-iJ.js";
7
- import "./lookup-DMHuC__o.js";
8
- import { exportJwk, fetchKey, generateCryptoKeyPair, importJwk, validateCryptoKey } from "./key-CsxUrye1.js";
5
+ import "./docloader-DjRia5xM.js";
6
+ import "./actor-CP7_pEJH.js";
7
+ import "./lookup-CIXgYa0O.js";
8
+ import { exportJwk, fetchKey, generateCryptoKeyPair, importJwk, validateCryptoKey } from "./key-DXQWweSA.js";
9
9
 
10
10
  export { validateCryptoKey };
@@ -3,8 +3,8 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import "./type-C8uR3h6d.js";
7
- import "./actor-DuIRj9Ja.js";
8
- import { exportJwk, fetchKey, generateCryptoKeyPair, importJwk, validateCryptoKey } from "./key-CCDfOhd7.js";
6
+ import "./type-CEUJQGF0.js";
7
+ import "./actor-C0tyMvUr.js";
8
+ import { exportJwk, fetchKey, generateCryptoKeyPair, importJwk, validateCryptoKey } from "./key-ESVstwMe.js";
9
9
 
10
10
  export { validateCryptoKey };
@@ -2,8 +2,8 @@
2
2
  import { Temporal } from "@js-temporal/polyfill";
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
 
5
- import { deno_default, getDocumentLoader } from "./docloader-B09P0pZn.js";
6
- import { CryptographicKey, Object as Object$1, isActor } from "./actor-CdYKu-iJ.js";
5
+ import { deno_default, getDocumentLoader } from "./docloader-DjRia5xM.js";
6
+ import { CryptographicKey, Object as Object$1, isActor } from "./actor-CP7_pEJH.js";
7
7
  import { getLogger } from "@logtape/logtape";
8
8
  import { SpanKind, SpanStatusCode, trace } from "@opentelemetry/api";
9
9
 
@@ -3,8 +3,8 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { CryptographicKey, Object as Object$1, deno_default, getDocumentLoader } from "./type-C8uR3h6d.js";
7
- import { isActor } from "./actor-DuIRj9Ja.js";
6
+ import { CryptographicKey, Object as Object$1, deno_default, getDocumentLoader } from "./type-CEUJQGF0.js";
7
+ import { isActor } from "./actor-C0tyMvUr.js";
8
8
  import { getLogger } from "@logtape/logtape";
9
9
  import { SpanKind, SpanStatusCode, trace } from "@opentelemetry/api";
10
10
 
@@ -3,7 +3,7 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { CryptographicKey, Multikey } from "./type-C8uR3h6d.js";
6
+ import { CryptographicKey, Multikey } from "./type-CEUJQGF0.js";
7
7
 
8
8
  //#region src/federation/keycache.ts
9
9
  var KvKeyCache = class {
@@ -3,7 +3,7 @@
3
3
  import { URLPattern } from "urlpattern-polyfill";
4
4
  globalThis.addEventListener = () => {};
5
5
 
6
- import { CryptographicKey, Multikey, importSpki } from "./type-C8uR3h6d.js";
6
+ import { CryptographicKey, Multikey, importSpki } from "./type-CEUJQGF0.js";
7
7
 
8
8
  //#region src/testing/keys.ts
9
9
  const rsaPublicKey1 = new CryptographicKey({