If this is a code change, please include a summary of what you've coded, and link to the issue(s) it closes/implements.
If this is a documentation change, please briefly describe what you've changed and why.
This pull request updates our permissivity checks in the dereferencer to store a pre-rejected interaction request for rejected replies, and to check if a status tries to reply to a previously-rejected reply. This should help to avoid situations where someone replies to a status, their reply is rejected, and then they reply to their own reply, which is allowed through, causing all sorts of mess.
Description
This pull request updates our permissivity checks in the dereferencer to store a pre-rejected interaction request for rejected replies, and to check if a status tries to reply to a previously-rejected reply. This should help to avoid situations where someone replies to a status, their reply is rejected, and then they reply to their own reply, which is allowed through, causing all sorts of mess.
Closes https://github.com/superseriousbusiness/gotosocial/issues/3057 as this is the last part.
Checklist
Please put an x inside each checkbox to indicate that you've read and followed it:
[ ]
->[x]
If this is a documentation change, only the first checkbox must be filled (you can delete the others if you want).
go fmt ./...
andgolangci-lint run
.