Commit Graph

116 Commits

Author SHA1 Message Date
Julian Lam
b82e20dfc7 feat: handle incoming non-public activities as chat message, #12834 2024-10-08 14:26:55 -04:00
Julian Lam
15f60b2497 fix: logic tweak 2024-10-01 10:17:08 -04:00
Julian Lam
903d038919 fix: fall back to inReplyTo traversal on context resolution failure 2024-10-01 10:08:19 -04:00
Julian Lam
f481cde1a8 fix: #12729, replies to existing topics from Pixelfed not asserting properly due to incorrect toPid
Pixelfed supplies an object _url_ instead of the expected _id_ in the `inReplyTo` field, and that tripped up NodeBB because we don't store a backreference for those.

The ideal solution here would be to set up a backreference for urls to pids, but in the meantime, this shortcut will function (it assumes that the object that it is in reply to is in the chain/context).
2024-08-13 11:12:48 -04:00
Julian Lam
95e6d2b43c fix: move topic reply call in notes.assert to its own line 2024-08-13 10:52:27 -04:00
Julian Lam
2ced350250 fix: bug that caused remote replies to other remote content to not always assert 2024-07-29 16:03:58 -04:00
Julian Lam
39f92eac16 refactor: store local follow backreferences for remote users (both followers and following), update actor pruning to take local follow counts into consideration, fixes #12701 2024-07-19 14:37:32 -04:00
Julian Lam
f9937a84c4 feat: additional logic to handle special case where a queried object id reports a context, but it is not actually contained in the resolved context's collection 2024-07-19 11:06:19 -04:00
Julian Lam
60408f2307 fix: incorrect parsing of context items during note assertion, logic error with slicing 2024-07-19 10:50:14 -04:00
Julian Lam
ff0c289e1d feat: #12695 Topic Synchronization via resolvable context
- Generation of a context collection digest via object ids
- Sending of said digest in ETag header
- Parsing of digests via If-None-Match header
- Update note assertion logic to handle 304 response
2024-07-16 11:37:38 -04:00
Julian Lam
46341673b3 fix: removal of topics from applicable user inboxes when synced
re: #12642
2024-07-05 12:00:23 -04:00
Julian Lam
2cbd63dc31 docs: update comment to reflect new behaviour 2024-07-05 11:09:42 -04:00
Julian Lam
cc0bbcb7bf fix: push instead of unshift, now that order is reversed 2024-06-28 16:28:34 -04:00
Julian Lam
e75ec39b70 feat: topic backfill logic via resolvable context #12647 2024-06-28 12:54:41 -04:00
Julian Lam
4dbb73a433 fix: remove duplicate 1b12 announce in notes.assert (already handled in inbox) 2024-06-26 14:32:48 -04:00
Julian Lam
a371c9fceb fix: regression that caused new notes to have undefined cid and fail privilege check 2024-06-25 11:04:45 -04:00
Julian Lam
89dd2fb04a fix: move call to retrieve cid followers out of loop 2024-06-25 11:04:45 -04:00
Barış Soner Uşaklı
c021e7e80f refactor: announces
store number of announces on post hash, show announces like votes, with tooltip and a way to see all, remove them from topic.events so they dont load all tid:<tid>:posts everytime topic is loaded
2024-06-17 11:18:48 -04:00
Julian Lam
6069bee019 chore: make getParentChain logging verbose 2024-06-14 13:26:56 -04:00
Julian Lam
1219d7d3b8 fix: minor adjustment in logic to work around relation logic 2024-06-14 10:20:53 -04:00
Barış Soner Uşaklı
839928b390 another one 2024-06-14 07:44:10 -04:00
Julian Lam
b6ffc47c5d feat: check to/cc/audience for local category and put topic there instead (overrides passed-in cid)
closes #12634
2024-06-13 17:06:58 -04:00
Julian Lam
acd1630b9f fix: move logic to move topic on note assertion earlier in the flow so it actually runs 2024-06-13 14:02:26 -04:00
Barış Soner Uşaklı
b2d03da96d refactor: dont need exist check, if post doesnt exist getPostData returns null 2024-06-12 16:04:14 -04:00
Opliko
42f514b793 feat: add timestamp to most activity ids 2024-06-11 22:55:45 +02:00
Julian Lam
bcfac00bec fix: unintentional parseInt during post purge 2024-06-10 12:30:48 -04:00
Julian Lam
6ecc791db9 fix: missing await on topic purge 2024-06-07 16:48:05 -04:00
Barış Soner Uşaklı
d1625d5fd2 refactor: change to info 2024-06-07 12:54:11 -04:00
Barış Soner Uşaklı
ba2d18418a refactor: comment out verbose logs 2024-06-07 11:56:58 -04:00
Julian Lam
709c91329a feat: pruning of stale notes older than 30 days with no engagement 2024-06-04 14:18:22 -04:00
Julian Lam
b5b89038ac fix: Notes.delete to delete announcer zsets too 2024-05-10 14:40:04 -04:00
Julian Lam
ccd187e000 feat: Note deletion logic and refactoring, #12551 2024-05-09 15:49:03 -04:00
Opliko
a7aeabc80d fix: ensure consistent return type from notes.assert
For fully cached topics it returned bare tid instead of a { tid, count } object.

Typescript would fix this btw :)
2024-05-07 10:40:47 +02:00
Julian Lam
4e7b12b925 fix: if an unknown post is navigated to by a logged-in user, automatically assert the post and add it to their inbox 2024-05-06 15:54:45 -04:00
Opliko
0336e8f0ad fix: send id for category announces 2024-05-03 17:15:55 +02:00
Julian Lam
119800d936 refactor: post announce logic to save to separate zset instead of to topic events, closes #12536 2024-05-01 14:44:29 -04:00
Julian Lam
b9d6aa4639 feat: slightly better title generation 2024-04-29 16:16:07 -04:00
Julian Lam
6964b1fd56 fix: update hasRelation condition to be true if cid is passed in in options 2024-04-25 11:20:34 -04:00
Julian Lam
dce334461a fix: use system pseudo-user for topic move call 2024-04-16 14:27:21 -04:00
Julian Lam
49a64dc7a7 fix: if the topic already existed in -1, move it to another category if one was passed in options 2024-04-16 14:17:47 -04:00
Julian Lam
452cb0a9aa feat: utility functions to get local followers/counts given a remote actor uri, plumb cid into notes.assert via inbox.announce if a local cid is following the sending actor 2024-04-16 14:00:01 -04:00
Julian Lam
1253ded7d5 chore: minor cleanup 2024-04-16 13:38:05 -04:00
Julian Lam
6fc6cc33cd feat: note attachments via link preview plugin 2024-04-10 22:01:50 -04:00
Julian Lam
59709a3cb2 fix: tests, save actor URL into userRemote hash 2024-04-03 13:49:27 -04:00
Julian Lam
a38d0c14ab Revert "refactor: use getSortedSetUnion in syncUserInboxes instead"
This reverts commit 6c1a0fb1dc.
2024-03-26 16:41:51 -04:00
Julian Lam
f078e1e267 fix: lint 2024-03-26 13:44:23 -04:00
Julian Lam
6c1a0fb1dc refactor: use getSortedSetUnion in syncUserInboxes instead 2024-03-26 13:39:34 -04:00
Julian Lam
5efe8abd15 Revert "add 1 ||"
This reverts commit c2890a3e74.
2024-03-26 13:20:12 -04:00
Barış Soner Uşaklı
c2890a3e74 add 1 || 2024-03-26 10:41:29 -04:00
Julian Lam
55e947a01d feat: add checks to only continue with topic assertion if there is a relation to existing content, #12442 2024-03-26 10:22:17 -04:00