From 977a67f4cd8423c96af9a4c5bc81126e40a5c01d Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Tue, 2 Dec 2025 13:42:06 -0500 Subject: [PATCH] fix: deep clone activity prop before execution; feps.announce --- src/activitypub/feps.js | 2 ++ test/activitypub/feps.js | 3 --- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/activitypub/feps.js b/src/activitypub/feps.js index 262010b7da..9d1f006905 100644 --- a/src/activitypub/feps.js +++ b/src/activitypub/feps.js @@ -10,6 +10,8 @@ const activitypub = module.parent.exports; const Feps = module.exports; Feps.announce = async function announce(id, activity) { + activity = structuredClone(activity); + let localId; if (String(id).startsWith(nconf.get('url'))) { ({ id: localId } = await activitypub.helpers.resolveLocalId(id)); diff --git a/test/activitypub/feps.js b/test/activitypub/feps.js index a33ebd597c..3e4b10f0b4 100644 --- a/test/activitypub/feps.js +++ b/test/activitypub/feps.js @@ -163,10 +163,8 @@ describe('FEPs', () => { cc: [`${nconf.get('url')}/category/${cid}`], }); pid = id; - console.log('note passed to mocks.create', note); ({ activity } = await helpers.mocks.create(note)); - console.log('activity passed to inbox.create', activity); await activitypub.inbox.create({ body: activity }); const activities = Array.from(activitypub._sent); @@ -183,7 +181,6 @@ describe('FEPs', () => { return activity.type === 'Announce' && activity.object && activity.object.type === 'Note'; }); - console.log('activities', JSON.stringify(activities, null, 2)); assert(test1 && test2); });