Sharkey cannot receive or fetch a note that is `inReplyTo` another, inaccessible note
What happened? (Please give us a brief description of what happened.)
I sent a post from my NodeBB account to @jdp23@blahaj.zone, with strict visibility (to
in activity and object contained only jdp23's actor uri). It was inReplyTo
another post with the same visibility that Sharkey did not know about.
Sharkey did not process the post or notify jdp23.
However, if my post is inReplyTo
a Sharkey post id, then the post is properly processed and jdp23 is notified.
What did you expect to happen? (Please give us a brief description of what you expected to happen.)
The post was accepted and jdp23 was notified.
Version (What version of Sharkey is your instance running? You can find this by clicking your instance's logo at the top left and then clicking instance information.)
Instance (What instance of Sharkey are you using?)
2024.8.2
What type of issue is this? (If this happens on your device and has to do with the user interface, it's client-side. If this happens on either with the API or the backend, or you got a server-side error in the client, it's server-side.)
Server-side
How do you deploy Sharkey on your server? (Server-side issues only)
N/A
What operating system are you using? (Server-side issues only)
Ubuntu
Relevant log output (Please copy and paste any relevant log output. You can find your log by inspecting the page, and going to the "console" tab. This will be automatically formatted into code, so no need for backticks.)
- NodeBB receives a request for the
inReplyTo
object id. - NodeBB checks the HTTP signature to resolve the sending actor. The sending actor is the Sharkey instance actor
- NodeBB rejects the request and sends an HTTP 400
Contribution Guidelines By submitting this issue, you agree to follow our Contribution Guidelines
- I agree to follow this project's Contribution Guidelines
- I have searched the issue tracker for similar issues, and this is not a duplicate.
The issue is that the instance actor is not allowed to request that object because that specific actor is not scoped to access it. I would recommend that one of the addressed recipients make the call to retrieve the object.
Secondly, Sharkey should still process the object even if it cannot resolve inReplyTo
.