@commonpub/server 1.0.2 → 2.0.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 (49) hide show
  1. package/dist/content/content.d.ts +13 -2
  2. package/dist/content/content.d.ts.map +1 -1
  3. package/dist/content/content.js +41 -15
  4. package/dist/content/content.js.map +1 -1
  5. package/dist/content/index.d.ts +1 -1
  6. package/dist/content/index.d.ts.map +1 -1
  7. package/dist/content/index.js +1 -1
  8. package/dist/content/index.js.map +1 -1
  9. package/dist/federation/backfill.d.ts +11 -7
  10. package/dist/federation/backfill.d.ts.map +1 -1
  11. package/dist/federation/backfill.js +58 -23
  12. package/dist/federation/backfill.js.map +1 -1
  13. package/dist/federation/circuitBreaker.d.ts +30 -0
  14. package/dist/federation/circuitBreaker.d.ts.map +1 -0
  15. package/dist/federation/circuitBreaker.js +116 -0
  16. package/dist/federation/circuitBreaker.js.map +1 -0
  17. package/dist/federation/delivery.d.ts +12 -6
  18. package/dist/federation/delivery.d.ts.map +1 -1
  19. package/dist/federation/delivery.js +78 -20
  20. package/dist/federation/delivery.js.map +1 -1
  21. package/dist/federation/inboxHandlers.d.ts +6 -1
  22. package/dist/federation/inboxHandlers.d.ts.map +1 -1
  23. package/dist/federation/inboxHandlers.js +33 -4
  24. package/dist/federation/inboxHandlers.js.map +1 -1
  25. package/dist/federation/index.d.ts +4 -2
  26. package/dist/federation/index.d.ts.map +1 -1
  27. package/dist/federation/index.js +3 -1
  28. package/dist/federation/index.js.map +1 -1
  29. package/dist/federation/mirroring.d.ts +9 -4
  30. package/dist/federation/mirroring.d.ts.map +1 -1
  31. package/dist/federation/mirroring.js +31 -8
  32. package/dist/federation/mirroring.js.map +1 -1
  33. package/dist/federation/outboxQueries.d.ts +21 -0
  34. package/dist/federation/outboxQueries.d.ts.map +1 -0
  35. package/dist/federation/outboxQueries.js +59 -0
  36. package/dist/federation/outboxQueries.js.map +1 -0
  37. package/dist/index.d.ts +3 -3
  38. package/dist/index.d.ts.map +1 -1
  39. package/dist/index.js +3 -3
  40. package/dist/index.js.map +1 -1
  41. package/dist/social/index.d.ts +1 -1
  42. package/dist/social/index.d.ts.map +1 -1
  43. package/dist/social/index.js +1 -1
  44. package/dist/social/index.js.map +1 -1
  45. package/dist/social/social.d.ts +1 -0
  46. package/dist/social/social.d.ts.map +1 -1
  47. package/dist/social/social.js +8 -0
  48. package/dist/social/social.js.map +1 -1
  49. package/package.json +5 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"circuitBreaker.js","sourceRoot":"","sources":["../../src/federation/circuitBreaker.ts"],"names":[],"mappings":"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"}
@@ -4,13 +4,19 @@ export interface DeliveryResult {
4
4
  failed: number;
5
5
  errors: string[];
6
6
  }
7
+ export interface DeliveryOptions {
8
+ batchSize?: number;
9
+ maxRetries?: number;
10
+ }
7
11
  /**
8
12
  * Process and deliver pending outbound activities.
9
- * Call this from a background worker or cron job.
10
- *
11
- * @param db - Database connection
12
- * @param domain - The local instance domain
13
- * @param batchSize - Max activities to process per run (default 20)
13
+ * Uses claim-based locking for multi-worker safety:
14
+ * each worker claims activities by setting lockedAt, preventing duplicates.
15
+ */
16
+ export declare function deliverPendingActivities(db: DB, domain: string, batchSizeOrOpts?: number | DeliveryOptions): Promise<DeliveryResult>;
17
+ /**
18
+ * Delete delivered activities older than the specified retention period.
19
+ * Call from a scheduled job (e.g., daily via the delivery worker plugin).
14
20
  */
15
- export declare function deliverPendingActivities(db: DB, domain: string, batchSize?: number): Promise<DeliveryResult>;
21
+ export declare function cleanupDeliveredActivities(db: DB, retentionDays: number): Promise<number>;
16
22
  //# sourceMappingURL=delivery.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../src/federation/delivery.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAsBtC,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;;;;;GAOG;AACH,wBAAsB,wBAAwB,CAC5C,EAAE,EAAE,EAAE,EACN,MAAM,EAAE,MAAM,EACd,SAAS,SAAK,GACb,OAAO,CAAC,cAAc,CAAC,CAoCzB"}
1
+ {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../src/federation/delivery.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAwBtC,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;GAIG;AACH,wBAAsB,wBAAwB,CAC5C,EAAE,EAAE,EAAE,EACN,MAAM,EAAE,MAAM,EACd,eAAe,CAAC,EAAE,MAAM,GAAG,eAAe,GACzC,OAAO,CAAC,cAAc,CAAC,CA6DzB;AAmXD;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,EAAE,EAAE,EAAE,EACN,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,CAAC,CAYjB"}
@@ -2,10 +2,12 @@
2
2
  * Activity delivery — sends pending outbound AP activities to remote inboxes.
3
3
  * Signs requests with HTTP Signatures and updates delivery status.
4
4
  */
5
- import { eq, and, sql, lte } from 'drizzle-orm';
5
+ import { eq, and, sql, lte, isNull, or } from 'drizzle-orm';
6
6
  import { activities, remoteActors, followRelationships, users, hubs, hubFollowers } from '@commonpub/schema';
7
7
  import { signRequest } from '@commonpub/protocol';
8
- const MAX_ATTEMPTS = 6;
8
+ const DEFAULT_MAX_ATTEMPTS = 6;
9
+ /** Lock expiry: if a worker crashes, its locks expire after 5 minutes */
10
+ const LOCK_EXPIRY_MS = 5 * 60 * 1000;
9
11
  const CONTENT_TYPE_AP = 'application/activity+json';
10
12
  /** Exponential backoff delays in milliseconds: 1m, 5m, 30m, 2h, 12h, 48h */
11
13
  const BACKOFF_DELAYS_MS = [
@@ -25,24 +27,40 @@ function isReadyForRetry(attempts, updatedAt) {
25
27
  }
26
28
  /**
27
29
  * Process and deliver pending outbound activities.
28
- * Call this from a background worker or cron job.
29
- *
30
- * @param db - Database connection
31
- * @param domain - The local instance domain
32
- * @param batchSize - Max activities to process per run (default 20)
30
+ * Uses claim-based locking for multi-worker safety:
31
+ * each worker claims activities by setting lockedAt, preventing duplicates.
33
32
  */
34
- export async function deliverPendingActivities(db, domain, batchSize = 20) {
33
+ export async function deliverPendingActivities(db, domain, batchSizeOrOpts) {
34
+ const opts = typeof batchSizeOrOpts === 'number'
35
+ ? { batchSize: batchSizeOrOpts }
36
+ : batchSizeOrOpts ?? {};
37
+ const batchSize = opts.batchSize ?? 20;
38
+ const maxRetries = opts.maxRetries ?? DEFAULT_MAX_ATTEMPTS;
35
39
  const result = { delivered: 0, failed: 0, errors: [] };
36
- // Fetch pending outbound activities (with backoff check applied in-memory)
40
+ const now = new Date();
41
+ const lockExpiry = new Date(now.getTime() - LOCK_EXPIRY_MS);
42
+ // Fetch pending outbound activities — only unlocked (lockedAt IS NULL or lock expired)
37
43
  const candidates = await db
38
44
  .select()
39
45
  .from(activities)
40
- .where(and(eq(activities.direction, 'outbound'), eq(activities.status, 'pending'), lte(activities.attempts, MAX_ATTEMPTS)))
46
+ .where(and(eq(activities.direction, 'outbound'), eq(activities.status, 'pending'), lte(activities.attempts, maxRetries), isNull(activities.deadLetteredAt), or(isNull(activities.lockedAt), lte(activities.lockedAt, lockExpiry))))
41
47
  .orderBy(activities.createdAt)
42
- .limit(batchSize * 2); // Fetch extra to account for backoff filtering
48
+ .limit(batchSize * 2);
43
49
  // Apply exponential backoff filter in-memory
44
50
  const pending = candidates.filter((a) => isReadyForRetry(a.attempts, a.updatedAt)).slice(0, batchSize);
51
+ // Claim activities by setting lockedAt (prevents other workers from picking them up)
52
+ const claimedIds = [];
45
53
  for (const activity of pending) {
54
+ const claimed = await db.update(activities)
55
+ .set({ lockedAt: now })
56
+ .where(and(eq(activities.id, activity.id), or(isNull(activities.lockedAt), lte(activities.lockedAt, lockExpiry))))
57
+ .returning({ id: activities.id });
58
+ if (claimed.length > 0)
59
+ claimedIds.push(activity.id);
60
+ }
61
+ // Only process activities we successfully claimed
62
+ const toClaim = pending.filter((a) => claimedIds.includes(a.id));
63
+ for (const activity of toClaim) {
46
64
  try {
47
65
  await deliverActivity(db, activity, domain);
48
66
  result.delivered++;
@@ -53,10 +71,6 @@ export async function deliverPendingActivities(db, domain, batchSize = 20) {
53
71
  result.failed++;
54
72
  }
55
73
  }
56
- // NOTE: For production with multiple delivery workers, add SELECT ... FOR UPDATE SKIP LOCKED
57
- // to the pending activities query to prevent duplicate processing. PGlite (test DB) doesn't
58
- // support this, so it's omitted from the query builder. The Nitro plugin should ensure
59
- // only one worker runs at a time via setInterval (not parallel invocations).
60
74
  return result;
61
75
  }
62
76
  async function deliverActivity(db, activity, domain) {
@@ -79,9 +93,26 @@ async function deliverActivity(db, activity, domain) {
79
93
  }
80
94
  const keyId = `${activity.actorUri}#main-key`;
81
95
  const body = JSON.stringify(payload);
82
- // Deliver to each inbox
96
+ // Deliver to each inbox (with circuit breaker checks)
97
+ const { isCircuitOpen, recordDeliverySuccess, recordDeliveryFailure } = await import('./circuitBreaker.js');
83
98
  const errors = [];
99
+ let skippedCircuitOpen = 0;
84
100
  for (const inbox of targetInboxes) {
101
+ // Extract domain from inbox URL for circuit breaker
102
+ let inboxDomain;
103
+ try {
104
+ inboxDomain = new URL(inbox).hostname;
105
+ }
106
+ catch {
107
+ inboxDomain = inbox;
108
+ }
109
+ // Check circuit breaker — skip if circuit is open for this domain
110
+ const circuitOpen = await isCircuitOpen(db, inboxDomain);
111
+ if (circuitOpen) {
112
+ skippedCircuitOpen++;
113
+ errors.push(`${inbox}: circuit open (skipped)`);
114
+ continue;
115
+ }
85
116
  try {
86
117
  const request = new Request(inbox, {
87
118
  method: 'POST',
@@ -99,6 +130,10 @@ async function deliverActivity(db, activity, domain) {
99
130
  const response = await fetch(signed, { signal: controller.signal });
100
131
  if (!response.ok && response.status !== 202) {
101
132
  errors.push(`${inbox}: ${response.status} ${response.statusText}`);
133
+ await recordDeliveryFailure(db, inboxDomain).catch(() => { });
134
+ }
135
+ else {
136
+ await recordDeliverySuccess(db, inboxDomain).catch(() => { });
102
137
  }
103
138
  }
104
139
  finally {
@@ -107,14 +142,18 @@ async function deliverActivity(db, activity, domain) {
107
142
  }
108
143
  catch (err) {
109
144
  errors.push(`${inbox}: ${err instanceof Error ? err.message : String(err)}`);
145
+ await recordDeliveryFailure(db, inboxDomain).catch(() => { });
110
146
  }
111
147
  }
148
+ // If all inboxes were skipped due to circuit breaker, don't count as attempt
149
+ if (skippedCircuitOpen === targetInboxes.length) {
150
+ // All skipped — leave as pending, don't increment attempts
151
+ return;
152
+ }
112
153
  if (errors.length === 0) {
113
154
  await markDelivered(db, activity.id);
114
155
  }
115
156
  else {
116
- // Any failures (partial or total) → retry the whole activity.
117
- // AP servers handle duplicate deliveries idempotently (objectUri is unique).
118
157
  await incrementAttempts(db, activity.id, errors.join('; '));
119
158
  }
120
159
  }
@@ -325,6 +364,7 @@ async function markDelivered(db, activityId, error) {
325
364
  status: 'delivered',
326
365
  error: error ?? null,
327
366
  attempts: sql `${activities.attempts} + 1`,
367
+ lockedAt: null, // Release lock
328
368
  })
329
369
  .where(eq(activities.id, activityId));
330
370
  }
@@ -335,17 +375,20 @@ async function markFailed(db, activityId, error) {
335
375
  status: 'failed',
336
376
  error,
337
377
  attempts: sql `${activities.attempts} + 1`,
378
+ lockedAt: null,
379
+ deadLetteredAt: new Date(), // Mark as dead-lettered
338
380
  })
339
381
  .where(eq(activities.id, activityId));
340
382
  }
341
- async function incrementAttempts(db, activityId, error) {
383
+ async function incrementAttempts(db, activityId, error, maxRetries = DEFAULT_MAX_ATTEMPTS) {
342
384
  const [row] = await db
343
385
  .select({ attempts: activities.attempts })
344
386
  .from(activities)
345
387
  .where(eq(activities.id, activityId))
346
388
  .limit(1);
347
389
  const newAttempts = (row?.attempts ?? 0) + 1;
348
- const newStatus = newAttempts >= MAX_ATTEMPTS ? 'failed' : 'pending';
390
+ const isDead = newAttempts >= maxRetries;
391
+ const newStatus = isDead ? 'failed' : 'pending';
349
392
  await db
350
393
  .update(activities)
351
394
  .set({
@@ -353,7 +396,22 @@ async function incrementAttempts(db, activityId, error) {
353
396
  error,
354
397
  attempts: newAttempts,
355
398
  updatedAt: new Date(),
399
+ lockedAt: null, // Release lock
400
+ ...(isDead ? { deadLetteredAt: new Date() } : {}),
356
401
  })
357
402
  .where(eq(activities.id, activityId));
358
403
  }
404
+ // --- Activity Cleanup ---
405
+ /**
406
+ * Delete delivered activities older than the specified retention period.
407
+ * Call from a scheduled job (e.g., daily via the delivery worker plugin).
408
+ */
409
+ export async function cleanupDeliveredActivities(db, retentionDays) {
410
+ const cutoff = new Date(Date.now() - retentionDays * 24 * 60 * 60 * 1000);
411
+ const deleted = await db
412
+ .delete(activities)
413
+ .where(and(eq(activities.status, 'delivered'), lte(activities.createdAt, cutoff)))
414
+ .returning({ id: activities.id });
415
+ return deleted.length;
416
+ }
359
417
  //# sourceMappingURL=delivery.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"delivery.js","sourceRoot":"","sources":["../../src/federation/delivery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delivery.js","sourceRoot":"","sources":["../../src/federation/delivery.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,13 @@ import type { DB } from '../types.js';
3
3
  export interface InboxHandlerOptions {
4
4
  db: DB;
5
5
  domain: string;
6
- /** Auto-accept follow requests (default: true) */
6
+ /** Auto-accept follow requests (default: true). Set to false for 'manual' policy. */
7
7
  autoAcceptFollows?: boolean;
8
+ /** Config for federation behavior */
9
+ federationConfig?: {
10
+ backfillOnMirrorAccept?: boolean;
11
+ mirrorMaxItems?: number;
12
+ };
8
13
  }
9
14
  /**
10
15
  * Create inbox callbacks wired to database operations.
@@ -1 +1 @@
1
- {"version":3,"file":"inboxHandlers.d.ts","sourceRoot":"","sources":["../../src/federation/inboxHandlers.ts"],"names":[],"mappings":"AAaA,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAoBtC,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,EAAE,CAAC;IACP,MAAM,EAAE,MAAM,CAAC;IACf,kDAAkD;IAClD,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,GAAG,cAAc,CAkmB7E"}
1
+ {"version":3,"file":"inboxHandlers.d.ts","sourceRoot":"","sources":["../../src/federation/inboxHandlers.ts"],"names":[],"mappings":"AAaA,OAAO,EAGL,KAAK,cAAc,EACpB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAoBtC,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,EAAE,CAAC;IACP,MAAM,EAAE,MAAM,CAAC;IACf,qFAAqF;IACrF,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,qCAAqC;IACrC,gBAAgB,CAAC,EAAE;QACjB,sBAAsB,CAAC,EAAE,OAAO,CAAC;QACjC,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;CACH;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,GAAG,cAAc,CAgoB7E"}
@@ -20,7 +20,7 @@ async function notifyRemoteInteraction(db, localUserId, type, actorUri, title, m
20
20
  */
21
21
  export function createInboxHandlers(opts) {
22
22
  const { db, domain, autoAcceptFollows = true } = opts;
23
- return {
23
+ const handlers = {
24
24
  /**
25
25
  * Remote user wants to follow a local user.
26
26
  * Creates a follow relationship and optionally auto-accepts.
@@ -96,6 +96,20 @@ export function createInboxHandlers(opts) {
96
96
  .update(followRelationships)
97
97
  .set({ status: 'accepted', updatedAt: new Date() })
98
98
  .where(eq(followRelationships.id, pending[0].id));
99
+ // Auto-backfill: if this Accept is for an instance mirror and config says to backfill
100
+ if (opts.federationConfig?.backfillOnMirrorAccept) {
101
+ try {
102
+ const { getMirror, listMirrors } = await import('./mirroring.js');
103
+ const mirrors = await listMirrors(db);
104
+ const mirror = mirrors.find((m) => m.remoteActorUri === actorUri && m.direction === 'pull');
105
+ if (mirror) {
106
+ const { backfillFromOutbox } = await import('./backfill.js');
107
+ // Fire and forget — don't block the Accept processing
108
+ backfillFromOutbox(db, actorUri, domain, opts.federationConfig?.mirrorMaxItems).catch((err) => console.error('[federation] auto-backfill failed:', err instanceof Error ? err.message : err));
109
+ }
110
+ }
111
+ catch { /* non-critical */ }
112
+ }
99
113
  }
100
114
  await db.insert(activities).values({
101
115
  type: 'Accept',
@@ -322,7 +336,13 @@ export function createInboxHandlers(opts) {
322
336
  const cpubType = typeof object['cpub:type'] === 'string' ? object['cpub:type'] : null;
323
337
  const cpubMetadata = object['cpub:metadata'] ?? null;
324
338
  // Check if this content matches an active mirror config
325
- const mirrorId = await matchMirrorForContent(db, originDomain, objectType, cpubType, tags);
339
+ // Extract sender domain from actorUri for re-broadcast matching
340
+ let senderDomain;
341
+ try {
342
+ senderDomain = new URL(actorUri).hostname;
343
+ }
344
+ catch { /* ignore */ }
345
+ const mirrorId = await matchMirrorForContent(db, originDomain, objectType, cpubType, tags, senderDomain);
326
346
  // Upsert federated content (objectUri is unique — prevents duplicates)
327
347
  if (objectUri) {
328
348
  await db
@@ -420,10 +440,18 @@ export function createInboxHandlers(opts) {
420
440
  updates.summary = sanitizeHtml(object.summary);
421
441
  if (typeof object.url === 'string')
422
442
  updates.url = object.url;
423
- await db
443
+ const updateResult = await db
424
444
  .update(federatedContent)
425
445
  .set(updates)
426
- .where(and(eq(federatedContent.objectUri, objectUri), eq(federatedContent.actorUri, actorUri)));
446
+ .where(and(eq(federatedContent.objectUri, objectUri), eq(federatedContent.actorUri, actorUri)))
447
+ .returning({ id: federatedContent.id });
448
+ // If no rows updated, content doesn't exist locally — treat as new content
449
+ // This handles the case where an Update arrives before a Create (e.g., missed during backfill)
450
+ if (updateResult.length === 0) {
451
+ // Delegate to onCreate to store the content
452
+ await handlers.onCreate(actorUri, object);
453
+ return;
454
+ }
427
455
  }
428
456
  await db.insert(activities).values({
429
457
  type: 'Update',
@@ -550,5 +578,6 @@ export function createInboxHandlers(opts) {
550
578
  });
551
579
  },
552
580
  };
581
+ return handlers;
553
582
  }
554
583
  //# sourceMappingURL=inboxHandlers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"inboxHandlers.js","sourceRoot":"","sources":["../../src/federation/inboxHandlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inboxHandlers.js","sourceRoot":"","sources":["../../src/federation/inboxHandlers.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,12 @@
1
1
  export { getOrCreateActorKeypair, getOrCreateInstanceKeypair, buildInstanceActor, resolveRemoteActor, searchRemoteActor, getRemoteActorProfile, sendFollow, acceptFollow, rejectFollow, unfollowRemote, federateContent, federateUpdate, federateDelete, federateLike, federateUnlike, buildContentUri, getContentSlugById, getFollowers, getFollowing, listFederationActivity, type RemoteActorProfile, } from './federation.js';
2
2
  export { createInboxHandlers, type InboxHandlerOptions } from './inboxHandlers.js';
3
- export { deliverPendingActivities, type DeliveryResult } from './delivery.js';
3
+ export { deliverPendingActivities, cleanupDeliveredActivities, type DeliveryResult, type DeliveryOptions } from './delivery.js';
4
4
  export { listFederatedTimeline, getFederatedContent, likeRemoteContent, boostRemoteContent, federateReply, listRemoteReplies, searchFederatedContent, type FederatedContentItem, type FederatedTimelineOptions, } from './timeline.js';
5
5
  export { createMirror, activateMirror, pauseMirror, resumeMirror, cancelMirror, listMirrors, getMirror, matchMirrorForContent, type MirrorConfig, } from './mirroring.js';
6
6
  export { getHubActorUri, getOrCreateHubKeypair, buildHubGroupActor, handleHubFollow, handleHubUnfollow, getHubFederatedFollowers, federateHubPost, federateHubShare, } from './hubFederation.js';
7
7
  export { resolveRemoteHandle, federateDirectMessage, isFederatedHandle, } from './messaging.js';
8
- export { backfillFromOutbox, type BackfillResult, } from './backfill.js';
8
+ export { isCircuitOpen, recordDeliverySuccess, recordDeliveryFailure, getDeliveryHealth, } from './circuitBreaker.js';
9
+ export { backfillFromOutbox, type BackfillResult, type BackfillOptions, } from './backfill.js';
10
+ export { countOutboxItems, countInstanceOutboxItems, getOutboxPage, getInstanceOutboxPage, } from './outboxQueries.js';
9
11
  export { processAuthorize, processTokenExchange, registerOAuthClient, linkFederatedAccount, findUserByFederatedAccount, listOAuthClients, processDynamicRegistration, storeOAuthState, consumeOAuthState, exchangeCodeForToken, type AuthorizeResult, type TokenResult, type RegisteredClient, type OAuthLoginState, } from './oauth.js';
10
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/federation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,eAAe,EACf,cAAc,EACd,cAAc,EACd,YAAY,EACZ,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,sBAAsB,EACtB,KAAK,kBAAkB,GACxB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,mBAAmB,EAAE,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,wBAAwB,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAC;AAC9E,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,sBAAsB,EACtB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,EACZ,cAAc,EACd,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,SAAS,EACT,qBAAqB,EACrB,KAAK,YAAY,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,wBAAwB,EACxB,eAAe,EACf,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,kBAAkB,EAClB,KAAK,cAAc,GACpB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,0BAA0B,EAC1B,gBAAgB,EAChB,0BAA0B,EAC1B,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,eAAe,GACrB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/federation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,eAAe,EACf,cAAc,EACd,cAAc,EACd,YAAY,EACZ,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,sBAAsB,EACtB,KAAK,kBAAkB,GACxB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,mBAAmB,EAAE,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,KAAK,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AAChI,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,sBAAsB,EACtB,KAAK,oBAAoB,EACzB,KAAK,wBAAwB,GAC9B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,EACZ,cAAc,EACd,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,SAAS,EACT,qBAAqB,EACrB,KAAK,YAAY,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,wBAAwB,EACxB,eAAe,EACf,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,kBAAkB,EAClB,KAAK,cAAc,EACnB,KAAK,eAAe,GACrB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,aAAa,EACb,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,0BAA0B,EAC1B,gBAAgB,EAChB,0BAA0B,EAC1B,eAAe,EACf,iBAAiB,EACjB,oBAAoB,EACpB,KAAK,eAAe,EACpB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,eAAe,GACrB,MAAM,YAAY,CAAC"}
@@ -1,10 +1,12 @@
1
1
  export { getOrCreateActorKeypair, getOrCreateInstanceKeypair, buildInstanceActor, resolveRemoteActor, searchRemoteActor, getRemoteActorProfile, sendFollow, acceptFollow, rejectFollow, unfollowRemote, federateContent, federateUpdate, federateDelete, federateLike, federateUnlike, buildContentUri, getContentSlugById, getFollowers, getFollowing, listFederationActivity, } from './federation.js';
2
2
  export { createInboxHandlers } from './inboxHandlers.js';
3
- export { deliverPendingActivities } from './delivery.js';
3
+ export { deliverPendingActivities, cleanupDeliveredActivities } from './delivery.js';
4
4
  export { listFederatedTimeline, getFederatedContent, likeRemoteContent, boostRemoteContent, federateReply, listRemoteReplies, searchFederatedContent, } from './timeline.js';
5
5
  export { createMirror, activateMirror, pauseMirror, resumeMirror, cancelMirror, listMirrors, getMirror, matchMirrorForContent, } from './mirroring.js';
6
6
  export { getHubActorUri, getOrCreateHubKeypair, buildHubGroupActor, handleHubFollow, handleHubUnfollow, getHubFederatedFollowers, federateHubPost, federateHubShare, } from './hubFederation.js';
7
7
  export { resolveRemoteHandle, federateDirectMessage, isFederatedHandle, } from './messaging.js';
8
+ export { isCircuitOpen, recordDeliverySuccess, recordDeliveryFailure, getDeliveryHealth, } from './circuitBreaker.js';
8
9
  export { backfillFromOutbox, } from './backfill.js';
10
+ export { countOutboxItems, countInstanceOutboxItems, getOutboxPage, getInstanceOutboxPage, } from './outboxQueries.js';
9
11
  export { processAuthorize, processTokenExchange, registerOAuthClient, linkFederatedAccount, findUserByFederatedAccount, listOAuthClients, processDynamicRegistration, storeOAuthState, consumeOAuthState, exchangeCodeForToken, } from './oauth.js';
10
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/federation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,eAAe,EACf,cAAc,EACd,cAAc,EACd,YAAY,EACZ,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,sBAAsB,GAEvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,mBAAmB,EAA4B,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,wBAAwB,EAAuB,MAAM,eAAe,CAAC;AAC9E,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,sBAAsB,GAGvB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,EACZ,cAAc,EACd,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,SAAS,EACT,qBAAqB,GAEtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,wBAAwB,EACxB,eAAe,EACf,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,kBAAkB,GAEnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,0BAA0B,EAC1B,gBAAgB,EAChB,0BAA0B,EAC1B,eAAe,EACf,iBAAiB,EACjB,oBAAoB,GAKrB,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/federation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,0BAA0B,EAC1B,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,qBAAqB,EACrB,UAAU,EACV,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,eAAe,EACf,cAAc,EACd,cAAc,EACd,YAAY,EACZ,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,YAAY,EACZ,YAAY,EACZ,sBAAsB,GAEvB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,mBAAmB,EAA4B,MAAM,oBAAoB,CAAC;AACnF,OAAO,EAAE,wBAAwB,EAAE,0BAA0B,EAA6C,MAAM,eAAe,CAAC;AAChI,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EACjB,sBAAsB,GAGvB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,YAAY,EACZ,cAAc,EACd,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,SAAS,EACT,qBAAqB,GAEtB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,wBAAwB,EACxB,eAAe,EACf,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,aAAa,EACb,qBAAqB,EACrB,qBAAqB,EACrB,iBAAiB,GAClB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,kBAAkB,GAGnB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,aAAa,EACb,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,oBAAoB,EACpB,0BAA0B,EAC1B,gBAAgB,EAChB,0BAA0B,EAC1B,eAAe,EACf,iBAAiB,EACjB,oBAAoB,GAKrB,MAAM,YAAY,CAAC"}
@@ -27,15 +27,18 @@ export declare function createMirror(db: DB, remoteDomain: string, remoteActorUr
27
27
  export declare function activateMirror(db: DB, mirrorId: string): Promise<void>;
28
28
  /**
29
29
  * Pause a mirror — stops content ingestion but keeps the follow active.
30
+ * Records pausedAt for gap-fill on resume.
30
31
  */
31
32
  export declare function pauseMirror(db: DB, mirrorId: string): Promise<void>;
32
33
  /**
33
- * Resume a paused mirror.
34
+ * Resume a paused mirror. Clears pausedAt.
35
+ * Caller should consider triggering backfill from pausedAt to fill the gap.
34
36
  */
35
37
  export declare function resumeMirror(db: DB, mirrorId: string): Promise<void>;
36
38
  /**
37
- * Cancel a mirror — removes the subscription entirely.
38
- * Content already received is NOT deleted (can be cleaned up separately).
39
+ * Cancel a mirror — hides associated content and removes the subscription.
40
+ * Content is soft-hidden (isHidden=true) rather than deleted, preserving
41
+ * local engagement data (likes, comments, bookmarks).
39
42
  */
40
43
  export declare function cancelMirror(db: DB, mirrorId: string): Promise<void>;
41
44
  /**
@@ -57,7 +60,9 @@ export declare function getMirror(db: DB, mirrorId: string): Promise<MirrorConfi
57
60
  */
58
61
  export declare function matchMirrorForContent(db: DB, originDomain: string, apType: string, cpubType: string | null, tags: Array<{
59
62
  name: string;
60
- }>): Promise<string | null>;
63
+ }>,
64
+ /** Domain of the actor who sent the activity (may differ from originDomain for re-broadcasts) */
65
+ senderDomain?: string): Promise<string | null>;
61
66
  /**
62
67
  * Record a mirror error (for admin visibility).
63
68
  */
@@ -1 +1 @@
1
- {"version":3,"file":"mirroring.d.ts","sourceRoot":"","sources":["../../src/federation/mirroring.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACpC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAChC,EAAE,EAAE,EAAE,EACN,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,GAAG,MAAM,EAC1B,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GACrD,OAAO,CAAC,YAAY,CAAC,CA6CvB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK5E;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKzE;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK1E;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE1E;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAGjE;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAOtF;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CACzC,EAAE,EAAE,EAAE,EACN,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,IAAI,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,GAC5B,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CA4CxB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CASf"}
1
+ {"version":3,"file":"mirroring.d.ts","sourceRoot":"","sources":["../../src/federation/mirroring.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AAEtC,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IACpC,UAAU,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAChC,EAAE,EAAE,EAAE,EACN,YAAY,EAAE,MAAM,EACpB,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,GAAG,MAAM,EAC1B,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,GACrD,OAAO,CAAC,YAAY,CAAC,CA6CvB;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK5E;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKzE;AAED;;;GAGG;AACH,wBAAsB,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK1E;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAS1E;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAGjE;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAOtF;AAED;;;;;;;;GAQG;AACH,wBAAsB,qBAAqB,CACzC,EAAE,EAAE,EAAE,EACN,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,MAAM,GAAG,IAAI,EACvB,IAAI,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAC7B,iGAAiG;AACjG,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAgExB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GACZ,OAAO,CAAC,IAAI,CAAC,CASf"}