stop provisioning the hive-chat room in the matrix sweep
This commit is contained in:
parent
099af86cd2
commit
c7f3706597
4 changed files with 37 additions and 371 deletions
|
|
@ -116,7 +116,7 @@ optionally to rooms:
|
|||
|
||||
```bash
|
||||
hivectl matrix invite mara
|
||||
hivectl matrix invite @mara:yourserver --room '#hive-chat:yourserver'
|
||||
hivectl matrix invite @mara:yourserver --room '#some-room:yourserver'
|
||||
```
|
||||
|
||||
## 6 · Your first agent
|
||||
|
|
|
|||
|
|
@ -97,7 +97,7 @@ through the gateway; from outside the host that takes
|
|||
`gateway.openFirewall`.
|
||||
|
||||
hive-c0re provisions matrix (its own sender login, the hive Space and
|
||||
chat room, invites) through `swarm.matrix.apiUrl`, which defaults to
|
||||
invites) through `swarm.matrix.apiUrl`, which defaults to
|
||||
`https://<swarm.matrix.gatewayHost>` on every hive. That login carries
|
||||
the hive's matrix access token, and on a hive that doesn't run the
|
||||
homeserver it crosses the network, so the default is TLS; hive-c0re
|
||||
|
|
@ -259,9 +259,8 @@ authenticates as — an account the swarm's appservice creates — rather
|
|||
than any privilege level, because it carries none.
|
||||
|
||||
It needs no promotion for what the hive does with it. Creating the hive
|
||||
Space and the chat room, writing their hierarchy and join rules, and
|
||||
inviting agents into them are all ordinary client calls that ride on
|
||||
being the rooms' own creator at power level 100 — there is no homeserver
|
||||
Space and inviting agents into it are ordinary client calls that ride on
|
||||
being the Space's own creator at power level 100 — there is no homeserver
|
||||
admin in any of it, and no Synapse admin API to reach for either, since
|
||||
tuwunel has none.
|
||||
|
||||
|
|
@ -355,28 +354,19 @@ into it. This gives the operator a single Space in FluffyChat or any
|
|||
Matrix client that groups all agent-to-agent + operator rooms in one
|
||||
place.
|
||||
|
||||
<!-- vale write-good.Passive = NO -->
|
||||
The sweep also provisions a default **`hive-chat` room** as an
|
||||
`m.space.child` of the Space. Joining a Space doesn't autojoin
|
||||
child rooms — the explicit room entry ensures the operator and every
|
||||
agent can find a common chat room without manual setup. Room join is
|
||||
restricted (any Space member including the operator can join; agents
|
||||
are explicitly invited). Room version pinned to 10 for the restricted
|
||||
join floor.
|
||||
<!-- vale write-good.Passive = YES -->
|
||||
**State**: hive-c0re persists the Space's room ID to
|
||||
`/var/lib/hyperhive/matrix/space-room-id` (mode `0600`, owned by the
|
||||
hive-c0re service user). The path is **outside** every agent state dir and
|
||||
**isn't** deleted by `nixos-container destroy --purge`, so it survives full
|
||||
agent purges, and hive-c0re reuses it on re-provision.
|
||||
|
||||
**State**: hive-c0re persists both room IDs to `/var/lib/hyperhive/matrix/`
|
||||
(mode `0600`, owned by the hive-c0re service user):
|
||||
- `space-room-id` — the Space itself
|
||||
- `chat-room-id` — the `hive-chat` room
|
||||
An earlier version also provisioned a `hive-chat` room and kept its id in
|
||||
`chat-room-id`. The sweep no longer touches either; an existing room and
|
||||
file are harmless leftovers that can be removed by hand.
|
||||
|
||||
These paths are **outside** every agent state dir and **aren't** deleted by
|
||||
`nixos-container destroy --purge` — both survive full agent purges, and
|
||||
hive-c0re reuses them on re-provision.
|
||||
|
||||
**Idempotent**: if the files exist and are non-empty, hive-c0re considers the Space and
|
||||
room already created. Delete the files to force
|
||||
re-creation (for example after a homeserver wipe).
|
||||
**Idempotent**: if the file exists and is non-empty, hive-c0re considers the
|
||||
Space already created. Delete the file to force re-creation (for example
|
||||
after a homeserver wipe).
|
||||
|
||||
## Configuration tuning
|
||||
|
||||
|
|
|
|||
|
|
@ -116,7 +116,7 @@ Always prints the diff first. `--from forge` resets the local checkout to forge
|
|||
|
||||
matrix-tuwunel invites.
|
||||
|
||||
Manual invites into the hive Space and its rooms; c0re's periodic matrix sweep provisions the Space, the chat room and the agents' invites on its own.
|
||||
Manual invites into the hive Space and its rooms; c0re's periodic matrix sweep provisions the Space and the agents' invites on its own.
|
||||
|
||||
**Usage:** `hivectl matrix <COMMAND>`
|
||||
|
||||
|
|
|
|||
|
|
@ -50,7 +50,7 @@ running (`services.hyperhive.deploy.matrix.enable = true`).
|
|||
|
||||
```bash
|
||||
hivectl matrix invite mara # invite a user to the hive Space
|
||||
hivectl matrix invite @mara:server --room '#hive-chat:server' # ...or to a specific room/alias
|
||||
hivectl matrix invite @mara:server --room '#some-room:server' # ...or to a specific room/alias
|
||||
```
|
||||
|
||||
Human matrix accounts come from SSO, not `hivectl`; matrix homeserver
|
||||
|
|
|
|||
Loading…
Reference in a new issue