From e27c30599542ef6d033fc33136b7ed2220b2d59b Mon Sep 17 00:00:00 2001 From: atlas Date: Fri, 2 Oct 2026 17:25:22 +0200 Subject: [PATCH] docs(matrix): fix the bug-as-behaviour and must wording mara flagged MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit matrix.md no longer documents the .well-known/discovery domain mismatch as a fact to work around (that's #4878's fix to make); same fix applied to gateway.md's Discovery flow section, which stated the identical bug and told the operator how to route around it. The serverName-pinning note no longer says the module requires pinning it (nothing enforces that) — it states the consequence of not pinning it instead. Refs #3902 --- docs/integrations/matrix.md | 10 +++------- docs/networking/gateway.md | 2 -- 2 files changed, 3 insertions(+), 9 deletions(-) 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: