diff --git a/docs/integrations/matrix.md b/docs/integrations/matrix.md index 3f530373..f94247a0 100644 --- a/docs/integrations/matrix.md +++ b/docs/integrations/matrix.md @@ -40,10 +40,7 @@ Two distinct hostnames: *irrevocably* in every `@user:` and `!room:` identifier minted on this homeserver. You can't change it later without abandoning every account and chat history. Defaults to the - bare `services.hyperhive.swarm.domain`. The gateway serves the - `.well-known/matrix/{client,server}` discovery routes on the matrix - host's **hive** domain, not the swarm domain - ([Discovery flow](../networking/gateway.md#discovery-flow-matrix)). + bare `services.hyperhive.swarm.domain`. - **`gatewayHost`** — the API listener hostname, where the gateway's matrix vhost proxies `/_matrix/*` to tuwunel. Defaults to `chat.`. Set to `null` to skip the @@ -65,9 +62,8 @@ longer answers.
Pinning serverName on a homeserver with existing ids `serverName` defaults to the bare `services.hyperhive.swarm.domain`. A -homeserver must set `serverName` to the value that minted its existing -ids — see above for why a different value strands existing users and -rooms: +homeserver that changes `serverName` after minting ids strands its +existing users and rooms — keep the value it minted them under: ```nix services.hyperhive.swarm.matrix = { diff --git a/docs/networking/gateway.md b/docs/networking/gateway.md index 6d3588d2..55adde6b 100644 --- a/docs/networking/gateway.md +++ b/docs/networking/gateway.md @@ -234,8 +234,6 @@ matrix-dart-sdk (FluffyChat and others) always fetches the well-known over `http Federation peers fetch `.well-known/matrix/server` → `{"m.server":"chat.:"}`. The port is always explicit, even 443: a delegated host without a port means the federation default 8448, not 443. Peers then reach `/_matrix/` on the chat vhost through the gateway, so the gateway must be reachable from them (`gateway.openFirewall`). -⚠️ The gateway serves both `.well-known` routes on the **hive** vhost only. Matrix looks them up at the `serverName`, which defaults to the bare swarm domain, so a lookup against the swarm domain reaches the swarm UI's apex vhost and finds nothing — pin `serverName` to the hive domain, or serve `.well-known` at the swarm domain yourself. - ## Sub-domain shape (rationale) Sub-domain for forge and matrix, sub-path for per-agent UIs: