Index: src/services/ActivityPubService.js
===================================================================
--- src/services/ActivityPubService.js	(revision be5d86caaf66458e2775c9abc28272988f49406a)
+++ src/services/ActivityPubService.js	(revision 74c5abc44729a4a61634ec8789305135c65b2cf9)
@@ -60,5 +60,5 @@
   if (!addrs.length || addrs.some((a) => isBlockedIp(a.address))) throw new Error('ssrf-blocked-host');
 }
-async function safeFetch(url, opts = {}, maxRedirects = 3) {
+export async function safeFetch(url, opts = {}, maxRedirects = 3) {
   let target = url;
   for (let hop = 0; ; hop++) {
