docs(matrix): document trustedServers and maxRequestSize options

The matrix.md provisioning section mentioned trustedServers in passing
("wired up later by extending trustedServers") but never explained it
as a configurable option, and maxRequestSize was undocumented entirely.

Add a "Configuration tuning" subsection before "Assertion rationale":
- trustedServers (default []) — list of peer homeserver names to trust;
  federation is protocol-on but no peer trusted until listed; link to
  swarm.md for the multi-hive use case.
- maxRequestSize (default 20 MB) — request body limit matching the
  matrix-spec recommendation; when and why to raise or lower it.
This commit is contained in:
iris 2026-06-05 18:27:51 +02:00 committed by mara
commit 010d0a422a

View file

@ -141,6 +141,29 @@ purges and is reused on re-provision.
considered already created. Delete the file to force re-creation (e.g.
after a homeserver wipe).
## Configuration tuning
```nix
services.hyperhive.matrix = {
trustedServers = [ "matrix.org" "example.com" ]; # default: []
maxRequestSize = 20000000; # default: 20 MB
};
```
**`trustedServers`** (default `[]`) — list of peer homeserver names
whose signing keys tuwunel will fetch and trust. Federation is enabled
at the protocol level from first boot (`allow_federation = true`) but
no remote homeserver is trusted until listed here. For a closed
single-hive deployment the default empty list is correct — add peer
hive domains here when connecting hives into a swarm (see
[`docs/swarm.md`](swarm.md)).
**`maxRequestSize`** (default `20_000_000` bytes = 20 MB) — maximum
size of a single matrix client request body. Matches the matrix-spec
recommendation for media uploads and the upstream tuwunel default.
Raise for deployments that need large file transfers; lower for
resource-constrained hosts where a 20 MB request is unexpectedly large.
## Assertion rationale
Two `config.assertions` entries fail eval early rather than ship