-
-
Notifications
You must be signed in to change notification settings - Fork 360
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[bug] [federation] honk (tedu) #2527
Comments
Weird, this bug looks just like #2514 Just like in that issue, I can't recreate the bug from my instance(s). Lookup works fine. But clearly there really is a bug there. For the record, I don't believe this is a federation bug per se, it looks more like a bug in the typeutils, though when and how we managed to introduce it is a mystery to me. I'll investigate. To help me narrow it down, would you mind temporarily redeploying v0.13.0 and trying the lookup? There are no database migrations or config file changes between that and v0.13.0, so it's safe to step down to it temporarily. |
Sure, will have a look in a bit |
This was when searching for the status. However, searching for the user yields: But:
|
OK, so more or less the same result then. Thanks! |
OK, I have a guess what's going on here. Could you help narrow it down by doing: SELECT username FROM accounts WHERE locked IS NULL; Ideally there should be no entries. My suspicion is that there will be entries, which will help me identify the bug. |
|
Curiouser and curiouser. Alright, thanks! I'll keep looking then. |
I'm still trying to hunt this one down. @mirabilos could you try searching for the statuses / accounts mentioned again, restarting your instance, and then doing the searches once again, and see if you get the same result? I'd like to know if it's a caching issue. |
@mirabilos if this issue does persist, could you let us know what values of |
I basically did that when I was doing the downgrade / upgrade dance, and it didn’t change anything.
Sure. Have that info and a bit more:
|
Could you please try searching for the user |
Both show up with the usual “not yet known profile” properties: name, profile picture, etc. but no posts yet. No errors either. Logs (grepping for the instance name):
And:
I have to say I totally don’t envy you, given the Catodon request unexpectedly did not error out for me, debugging this must be hell. |
Thanks, this helps! So they both work, basically, right? |
I’d say so, yes. Things I could still try:
What do you think? |
Blocking and unblocking the instance could be interesting. I don't think it will fix it but you never know. I already have an inkling of what the issue might be though, still going through it. |
Blocking and unblocking did not fix it.
|
Alright, all expected. Though please stop manually hacking around in the database like that. Would you be willing to run a debug build of GoToSocial and make a few API calls? My current line of thinking is that |
If I can go back from the debug build to the last release, or the debug build is known to not introduce any regressions (does not contain experimental/WIP code), then yes I’m willing. |
OK great, thank you! I uploaded a bunch of builds here: https://minio.s3.superseriousbusiness.org/browser/gotosocial-snapshots/MC4xMy4xLURFQlVHLw== Despite the name, these are exactly the same as the 0.13.1 release, only built with the DEBUG flag set to 1 / true. So it's perfectly fine to use this and then switch back. Once you've deployed the appropriate build for your architecture, you can use the debug curl -H 'Authorization: Bearer INSERT_BEARER_TOKEN_HERE' 'https://your_instance.tld/api/v1/admin/debug/apurl?url=https://honk.tedunangst.com/u/tedu' For Once you've done that, could you paste the output here, minus any sensitive information? Thank you! |
Hmmhmm…
|
Oh, I'm sorry, I forgot to mention, you have to also run GoToSocial with the environment variable DEBUG=1, so |
Same result õÕ |
and yes, |
Ah right sorry, my bad, I checked out the 0.13.1 tag to do those builds, but I forgot we only added code to parse the DEBUG=1 flag into I uploaded |
|
Aha! Well, that confirms my thinking that the instance was returning a 4xx code in response to dereference requests. I can do the very same request and get a 200 ActivityPub JSON response though: {
"request_url": "https://honk.tedunangst.com/u/tedu",
"request_headers": {
"Accept": [
"application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\",application/activity+json"
],
"Accept-Charset": [
"utf-8"
],
"Date": [
"Sun, 21 Jan 2024 22:41:00 GMT"
],
"Host": [
"honk.tedunangst.com"
],
"Signature": [
"keyId=\"https://goblin.technology/users/tobi/main-key\",algorithm=\"hs2019\",headers=\"(request-target) host date\",signature=\".......\""
],
"User-Agent": [
"gotosocial (+https://goblin.technology) gotosocial/0.13.1-SNAPSHOT git-238cc19"
]
},
"response_headers": {
"Content-Security-Policy": [
"default-src 'none'; script-src 'self'; connect-src 'self'; style-src 'self'; img-src 'self'; media-src 'self'"
],
"Content-Type": [
"application/ld+json; profile=\"https://www.w3.org/ns/activitystreams\""
],
"Date": [
"Sun, 21 Jan 2024 22:41:01 GMT"
],
"Strict-Transport-Security": [
"max-age=7776000"
]
},
"response_code": 200,
"response_body": "{\n \"@context\": \"https://www.w3.org/ns/activitystreams\",\n \"chatKeyV0\": \"vIT5wj9bJqGkvwBxhmaz4Lh4eZIeOKnsSIQifShmJUY=\",\n \"followers\": \"https://honk.tedunangst.com/u/tedu/followers\",\n \"following\": \"https://honk.tedunangst.com/u/tedu/following\",\n \"icon\": {\n \"mediaType\": \"image/png\",\n \"type\": \"Image\",\n \"url\": \"https://honk.tedunangst.com/a?a=https%3A%2F%2Fhonk.tedunangst.com%2Fu%2Ftedu\"\n },\n \"id\": \"https://honk.tedunangst.com/u/tedu\",\n \"inbox\": \"https://honk.tedunangst.com/u/tedu/inbox\",\n \"name\": \"tedu\",\n \"outbox\": \"https://honk.tedunangst.com/u/tedu/outbox\",\n \"preferredUsername\": \"tedu\",\n \"publicKey\": {\n \"id\": \"https://honk.tedunangst.com/u/tedu#key\",\n \"owner\": \"https://honk.tedunangst.com/u/tedu\",\n \"publicKeyPem\": \"-----BEGIN PUBLIC KEY-----\\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA593GZ9TYrvWgMaMKQ6k6\\ngkItUapUgNnNXzU9J63GRtYZ7CE/Zi39Kgpsxu77hHBj34vwjr1Oc9AMrVDIMfu9\\nEirW1RWxPvrjThBU56VgkpkAXVsieaffJo80BA00QzV4x69Jgat6OT7ox/HMvMxR\\nyZ6CXNCPKQALYqQF6v1fX1kO9lhIA+mPd0JN/qMKvZfd1NXABEk9nORUneH7Audt\\nIHNdJzKMHC6wPSQWC7SmXT0/nq6o5mR2SgvwTI/JUx6T5r8NDrwSaqB69e+EMJqR\\nxKOh9N4A1ba/AQOQZbO/YkFyYY2VE4HWbvS9XpYL74yT9D6Fp4cUovJiXC+ziam0\\nNwIDAQAB\\n-----END PUBLIC KEY-----\\n\"\n },\n \"summary\": \"<p>Purveyor of modest software.\",\n \"type\": \"Person\",\n \"url\": \"https://honk.tedunangst.com/u/tedu\"\n}\n"
} If you were blocked/defederated from that instance, I would expect it to return a code 403, so 404 is quite surprising, but there you go. So I think the resolution here is probably to just update the GtS dereferencing logic to handle those 4xx codes a bit better (which I already have on a branch right now). |
Oh hmm… that’s annoying. Thanks for the debugging! |
No problem, thanks for running the debug build! |
Describe the bug with a clear and concise description of what the bug is.
After benjojo, I now have federation issues with tedu’s honk instance.
Searching for
https://honk.tedunangst.com/u/tedu/h/189775FqjZ7tN7qz6F
gives “The datacouldn’t be read because it isn’t in the correct format.” in FediText, and is probably connected to the following log line:
Searching for
https://honk.tedunangst.com/u/tedu
gives me an… empty profile with one toot? Screenshot follows, it better describes this issue.Of course, I cannot follow him, etc. from here.
What's your GoToSocial Version?
0.13.1 git-ccecf5a
GoToSocial Arch
amd64 binary
What happened?
No response
What you expected to happen?
I was under the impression that it was possible to interact with those honks as Fedi instances, and I searched the bugtracker and found no open bug mentioning honk, so I thought it would be possible.
If it is out of scope, that’s okay as well.
How to reproduce it?
No response
Anything else we need to know?
No response
The text was updated successfully, but these errors were encountered: