Julian Lam
d4e3b42369
Merge branch 'master' into develop
2025-11-19 15:17:08 -05:00
Julian Lam
76a07d5941
fix: missing logic in mocks.notes.private that precluded the use of emoji
2025-11-19 15:16:51 -05:00
Barış Soner Uşaklı
50951d5db5
Merge branch 'master' into develop
2025-11-13 12:25:24 -05:00
Barış Soner Uşaklı
9900171f24
fix: crash in resolveInboxes
...
2025-11-13T12:38:44.161Z [4568/2508892] - [31merror[39m: uncaughtException: Invalid URL
TypeError: Invalid URL
at new URL (node:internal/url:818:25)
at /home/saas/nodebb/src/activitypub/index.js:123:25
at Array.filter (<anonymous>)
at ActivityPub.resolveInboxes (/home/saas/nodebb/src/activitypub/index.js:122:13)
at ActivityPub.send (/home/saas/nodebb/src/activitypub/index.js:424:36)
at Object.announce (/home/saas/nodebb/src/activitypub/feps.js:72:20)
2025-11-13 12:25:16 -05:00
Julian Lam
9bb8a955cf
fix: rename activitypub.out.announce.category, federate out Delete on topic move to cid -1
2025-11-06 11:59:56 -05:00
Julian Lam
ed83bc5b83
revert: remove federatedDescription category field, closes #13757
2025-11-05 12:55:08 -05:00
Julian Lam
7fb9bb2f15
Merge remote-tracking branch 'origin/master' into develop
2025-11-04 11:32:55 -05:00
Julian Lam
be4d0e811e
fix: wrong auto-categorization if group actor is explicitly included in audience
2025-11-04 11:09:15 -05:00
Julian Lam
4858abe149
fix: add replies in parallel during note assertion
2025-10-29 15:18:19 -04:00
Julian Lam
524df6e548
fix: update category mock to save full handle
2025-10-29 12:32:24 -04:00
Julian Lam
ab9154aa49
fix: logic error in out.remove.context
2025-10-24 13:32:04 -04:00
Julian Lam
8ca52c7e78
feat: handle Move(Context) activity
2025-10-23 12:15:36 -04:00
Julian Lam
194cedb4d7
fix: cross-check remove(context) target prop against cid
2025-10-23 12:03:04 -04:00
Julian Lam
4f2f872bf9
fix: update logic re: federating out topic moves
2025-10-22 15:15:19 -04:00
Julian Lam
22868d3f97
fix: bad var
2025-10-22 15:05:06 -04:00
Julian Lam
d02e188a5f
feat: update Remove(Context) to use target instead of origin, federate out Move(Context) on topic move between local cids
2025-10-22 15:04:47 -04:00
Julian Lam
3ede64d8a1
refactor: move all methods in src/api/activitypub.js to src/activitypub.out.js
2025-10-22 14:41:56 -04:00
Julian Lam
3df4970ce1
fix: call api.topics method on topic move during note assertion, have category announce new topic on note assertion
2025-10-21 12:16:20 -04:00
Julian Lam
34e95e6d46
feat: context removal logic (aka moving topics to uncategorized, and federating this to other NodeBBs)
...
Squashed commit of the following:
commit 3309117eb1
Author: Julian Lam <julian@nodebb.org >
Date: Tue Oct 21 11:48:12 2025 -0400
fix: activitypubApi.remove.context to use oldCid instead of cid
commit e90c5f79eb
Author: Julian Lam <julian@nodebb.org >
Date: Tue Oct 21 11:41:05 2025 -0400
fix: parseInt cid in cid detection for api.topics.move
commit ab6561e60f
Author: Julian Lam <julian@nodebb.org >
Date: Mon Oct 20 14:03:45 2025 -0400
feat: inbox handler for Remove(Context)
commit 30dc527cc0
Author: Julian Lam <julian@nodebb.org >
Date: Mon Oct 20 12:17:23 2025 -0400
feat: unwind announce(delete), federate out Remove(Context) on delete, but not on purge
2025-10-21 12:00:01 -04:00
Julian Lam
ecf95d1898
fix: do not include image or icon props if they are falsy values
2025-10-17 11:13:13 -04:00
Julian Lam
603068aebb
fix: do not include image or icon props if they are falsy values
2025-10-17 11:11:04 -04:00
Julian Lam
f98a7216a3
feat: handle Delete(Context) as a move to cid -1 if the remote context still exists
2025-10-16 16:23:27 -04:00
Julian Lam
1d529473b4
fix: rebroadcasting logic should only execute for local tids if the remote cid is not addressed already
2025-10-16 12:17:52 -04:00
Julian Lam
2b2028e446
refactor: inbox announce(delete) handling to also handle context deletion, #13712
2025-10-16 11:27:51 -04:00
Julian Lam
4d5005b972
feat: handle incoming Announce(Delete), closes #13712
2025-10-16 11:12:00 -04:00
Julian Lam
3fa74d4cec
fix: do not include actor from reflected activity when rebroadcasting remote cid
2025-10-15 12:33:57 -04:00
Julian Lam
d4695f1085
fix: broken category urls in to, cc
2025-10-15 12:31:55 -04:00
Julian Lam
a45f6f9c4c
fix: update getPrivateKey to send application actor key when cid 0
2025-10-15 12:24:42 -04:00
Julian Lam
58a9e1c4f9
fix: update targets in 1b12 rebroadcast when cid is remote
2025-10-15 12:21:44 -04:00
Julian Lam
79d088536a
fix: update 1b12 rebroadcast logic to send as application actor if post is in remote cid
2025-10-15 12:03:26 -04:00
Julian Lam
9583f0d49b
feat: execute 1b12 rebroadcast logic on all tids even if not posted to a local cid
2025-10-15 11:24:12 -04:00
Barış Soner Uşaklı
c80cb51065
Merge branch 'master' into develop
2025-10-13 13:45:21 -04:00
Julian Lam
d3b3720915
refactor: move post attachment handling directly into posts.create
2025-10-09 13:58:08 -04:00
Julian Lam
623cec9d91
fix: logic error in image mime type checking
2025-10-08 11:07:43 -04:00
Julian Lam
ec3998974c
fix: omg what.
2025-10-06 22:17:35 -04:00
Julian Lam
189fcfa694
Merge branch 'master' into develop
2025-10-01 12:52:17 -04:00
Julian Lam
675178aca4
fix: allow quote-inline class in mocks sanitizer so quote-post fallback elements can be detected and removed during title generation, fixes #13688
2025-10-01 12:13:57 -04:00
Julian Lam
4776d01281
sec: disallow checkHeader from returning a URL from a different origin than the passed-in URL
2025-10-01 11:00:03 -04:00
Julian Lam
7184507be2
fix : #13667 , record to instances:lastSeen instead of domains:lastSeen
2025-09-25 15:12:52 -04:00
Barış Soner Uşaklı
c7e84b8d92
Merge branch 'master' into develop
2025-09-25 12:38:02 -04:00
Julian Lam
7abdfd86ac
fix: skip header checking during note assertion if test runner is active
2025-09-25 11:56:38 -04:00
Julian Lam
33b56e810c
Merge branch 'master' into develop
2025-09-22 12:15:30 -04:00
Julian Lam
d0c058263f
fix: update note assertion topic members check to simpler posts.exists check
...
The original logic checked that each member of the resolved chain was part of the resolved topic.
That isn't always the case, especially when topics splinter due to network timeouts/unavailability.
This ended up causing issues where already asserted posts were re-asserted but failed because they no longer served an _activitypub object since it was already asserted and the data was just pulled from the db.
2025-09-22 12:14:20 -04:00
Julian Lam
be098e1207
Merge branch 'master' into develop
2025-09-22 11:57:05 -04:00
Julian Lam
4d68e3fe14
fix: re-jig handling of ap tag values so that only hashtags are considered (not Piefed community tags, etc.)
2025-09-22 11:56:55 -04:00
Julian Lam
9deb576d1e
Merge branch 'master' into develop
2025-09-19 14:43:13 -04:00
Julian Lam
f9edb13f62
fix: missing actor assertion on 1b12 announced upboat
2025-09-19 14:43:04 -04:00
Julian Lam
d122bf4a98
fix: update logic as to whether a post is served as an article or not
...
Now, if OP is less than 500 characters, it is just federated out as a Note instead.
2025-09-19 12:43:13 -04:00
Julian Lam
be9212b59f
fix: update activitypubFilterList logic so that it is also checked on resolveInbox and ActivityPub.get methods, updated instances.isAllowed to no longer return a promise
2025-09-19 10:56:35 -04:00
Julian Lam
559155da63
refactor: notes.assert to add finally block, update assertPayload to update instances:lastSeen via method instead of direct db call
2025-09-19 10:34:57 -04:00