Matrix: the login form is drawn before the homeserver is asked what it takes #202

Closed
opened 2026-09-11 22:34:36 -04:00 by Salastil · 1 comment
Owner

matrixLoginFlows (nobilis/src/rpc/methods.rs:2987) asks a homeserver how it lets
people sign in. Nothing calls it.

Its own comment says what it is for: a server offering only SSO has no password to take,
and a form demanding one there is a form nobody can complete. That is the present
behaviour - the form is drawn blind.

Both destinations already exist, addMatrixAccount and addMatrixAccountSso, and both
are wired. The missing step is asking first and then showing the one that will work
(and, where a server offers both, showing both honestly).

Found by a September 2026 sweep of all 182 daemon RPC methods against every string
literal in src/. setKickChatMode was excluded on purpose: it is unreachable too, and
says so in its own comment (#167). The methods listed as superseded by that sweep -
uploadFile, listDiscordCommands, setMatrixIgnored, openIrcQuery,
setMatrixRoomState, unsubscribe - are fine and want nothing.

`matrixLoginFlows` (`nobilis/src/rpc/methods.rs:2987`) asks a homeserver how it lets people sign in. Nothing calls it. Its own comment says what it is for: a server offering only SSO has no password to take, and a form demanding one there is a form nobody can complete. That is the present behaviour - the form is drawn blind. Both destinations already exist, `addMatrixAccount` and `addMatrixAccountSso`, and both are wired. The missing step is asking first and then showing the one that will work (and, where a server offers both, showing both honestly). --- Found by a September 2026 sweep of all 182 daemon RPC methods against every string literal in `src/`. `setKickChatMode` was excluded on purpose: it is unreachable too, and says so in its own comment (#167). The methods listed as superseded by that sweep - `uploadFile`, `listDiscordCommands`, `setMatrixIgnored`, `openIrcQuery`, `setMatrixRoomState`, `unsubscribe` - are fine and want nothing.
Salastil added the feature label 2026-09-11 22:34:36 -04:00
Author
Owner

Finished — https://git.salastil.com/Salastil/moho/commit/15caf81

The form asks matrixLoginFlows 600ms after typing stops and draws what the answer allows. An unknown answer keeps both ways offered — a server that will not say is not a server with no doors. Verified against matrix.org, which answers m.login.password, m.login.sso and m.login.token.

Finished — https://git.salastil.com/Salastil/moho/commit/15caf81 The form asks `matrixLoginFlows` 600ms after typing stops and draws what the answer allows. An unknown answer keeps both ways offered — a server that will not say is not a server with no doors. Verified against matrix.org, which answers `m.login.password`, `m.login.sso` and `m.login.token`.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Salastil/moho#202