Accepting a local invite seems to cause user to be in half-joined state for some clients #2038

Open
opened 2026-07-24 12:46:58 +00:00 by monospacedmagic · 5 comments

Continuwuity logs a warning when I try to join a space on my own homeserver via an invite sent by an Out Of Your Element bridge set up on that same homeserver:

WARN conduwuit_api::router::auth: Failed to extract authorization: no access token found, but this endpoint requires one

The join fails on Element X and Element Web, and on Sable (both nightly and 1.20.0) it half succeeds: It looks like I've joined the space, and the space shows "3 members" as opposed to the previous 2, but it only actually lists 2 members; I'm not among them. However, I can join the rooms that are part of the space. When checking on Element X and Element Web, the space that I've half-joined on Sable doesn't show up, but the rooms that I've subsequently joined on Sable do. Furthermore, closing Sable and reopening it leads to me not being part of the space on Sable anymore, and the invite that I've already half-accepted through Sable once again appears in my inbox. I can "half-accept" it again, but I continue having the same issues.

Seemingly relatedly, when creating DMs with other users on my homeserver, they are not actually invited to said DMs room; I always have to manually invite them to the room. This does not happen with users on other, federated homeservers; with those everything regarding DMs creation works as expected.

I suspect that this issue might be related to #1895.

My homeserver is running current continuwuity:main via Podman Quadlet, and I have Sliding Sync enabled on Sable (nightly and 1.20.0).

Continuwuity logs a warning when I try to join a space on my own homeserver via an invite sent by an Out Of Your Element bridge set up on that same homeserver: ``` WARN conduwuit_api::router::auth: Failed to extract authorization: no access token found, but this endpoint requires one ``` The join fails on Element X and Element Web, and on Sable (both nightly and 1.20.0) it half succeeds: It looks like I've joined the space, and the space shows "3 members" as opposed to the previous 2, but it only actually lists 2 members; I'm not among them. However, I can join the rooms that are part of the space. When checking on Element X and Element Web, the space that I've half-joined on Sable doesn't show up, but the rooms that I've subsequently joined on Sable do. Furthermore, closing Sable and reopening it leads to me not being part of the space on Sable anymore, and the invite that I've already half-accepted through Sable once again appears in my inbox. I can "half-accept" it again, but I continue having the same issues. Seemingly relatedly, when creating DMs with other users on my homeserver, they are not actually invited to said DMs room; I always have to manually invite them to the room. This does not happen with users on other, federated homeservers; with those everything regarding DMs creation works as expected. I suspect that this issue might be related to #1895. My homeserver is running current continuwuity:main via Podman Quadlet, and I have Sliding Sync enabled on Sable (nightly and 1.20.0).

I can no longer reproduce the issues described in this issue with other clients after leaving the spaces that I've "half-joined" with Sable previously, so I'm inclined to believe that this is an issue specific to Sable being used on a Continuwuity homeserver. I've therefore created an issue on Sable's repository. I wonder though, could this be a regression of Continuwuity related to Sliding Sync?

I can no longer reproduce the issues described in this issue with other clients after leaving the spaces that I've "half-joined" with Sable previously, so I'm inclined to believe that this is an issue specific to Sable being used on a Continuwuity homeserver. I've therefore created an [issue on Sable's repository](https://github.com/SableClient/Sable/issues/1283). I wonder though, could this be a regression of Continuwuity related to Sliding Sync?

I believe #2039 and the same author's PR for Sable would fix this. I'll report back once those are both merged.

I believe #2039 and the same author's [PR for Sable](https://github.com/SableClient/Sable/pull/1284) would fix this. I'll report back once those are both merged.

The PR for Sable did indeed fix this issue from affecting the client's usability too much, but there still needs to be a server-side fix. #2039 seems to provide that.

The PR for Sable did indeed fix this issue from affecting the client's usability too much, but there still needs to be a server-side fix. #2039 seems to provide that.
Owner

That log seems unrelated to the issue you're facing if the operation is still happening at all. The log indicates the client forgot to attach an Authorization header, which would reject the entire request, not allow it to "partially succeed" etc.

Does #2039 certainly fix the issue?

That log seems unrelated to the issue you're facing if the operation is still happening at all. The log indicates the client forgot to attach an `Authorization` header, which would reject the entire request, not allow it to "partially succeed" etc. Does #2039 certainly fix the issue?

I am no longer getting the log during testing with the Sable PR merged, but I still get the "half-joined" state described in #2039. I don't really have a way to test #2039 though, I'd love to test it if I can. (I'm using Podman Quadlets.)

I am no longer getting the log during testing with the Sable PR merged, but I still get the "half-joined" state described in #2039. I don't really have a way to test #2039 though, I'd love to test it if I can. (I'm using Podman Quadlets.)
monospacedmagic changed title from Local invite fails with "Failed to extract authorization" to Accepting a local invite seems to cause user to be in half-joined state for some clients 2026-07-25 20:32:49 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
continuwuation/continuwuity#2038
No description provided.