Skip to content

feat(stacker): add stack room create for unencrypted family rooms - #278

Open
arthware-dev wants to merge 1 commit into
feature/0.5.0-beta.1from
feat/stacker-room-create
Open

arthware-dev wants to merge 1 commit into
feature/0.5.0-beta.1from
feat/stacker-room-create

Conversation

@arthware-dev

Copy link
Copy Markdown
Contributor

Summary

  • Element X encrypts every room it creates and cannot switch that off, so a family on a new phone without the recovery key loses the history of rooms the bots work in. An admin can now write stack room create <name> in the Server Room: Stacker creates the room unencrypted in the Family space, invites the family and the archivist, makes the family's admins its admins, and replies with a link. A name starting with Topic: or Thema: becomes a topic room as before. A name or address already in use gets a link to that room and no second room. Non-admins are refused like for the other changing commands.
  • The work is done by stack messages room create, which now also takes just a name (stack messages room create "Topic: Garden"), derives the alias from it, sets the room's space parent and invites the family. The core API gains a room-create command that runs it for Stacker, with the name as one argument. A taken alias no longer exits with an error; the command names the existing room.
  • The user guide's "The rooms" and the messages admin guide name the command.

Defaults to confirm

  1. Who is invited. Every family member with a chat account (admins, and members with messages in their stacklets) plus the archivist. People get an invite to accept; stack messages setup force-joins its own rooms instead. Recommendation: keep invites, so nobody gets a room they did not ask for.
  2. Stacky is not invited. The agent joins only when someone invites it, as in every other room. Recommendation: keep it out by default; inviting it is one tap in the room.

Element X encrypts every room it creates and cannot switch that off.
An encrypted room ties the family to their device keys: a new phone
without an old device or the recovery key loses the room's history.
Rooms the bots work in do not need encryption, since the server and
the bots are the family's own Mac.

An admin now writes `stack room create <name>` in the Server Room and
Stacker answers with a link to the new room. The room:

- is not encrypted,
- sits in the Family space (its own `m.space.parent` and the space's
  `m.space.child`),
- has the family members with a chat account and the archivist
  invited, and the family's admins as its admins.

A name starting with `Topic:` or `Thema:` becomes a topic room, as
before. A name already in use, or one whose address is taken, gets a
link to that room and no second room. Non-admins are refused like for
the other changing commands.

The work is done by `stack messages room create`, which now also takes
just a name (`stack messages room create "Topic: Garden"`), derives the
alias from it, and invites the family. The core API gains a
`room-create` command that runs it for Stacker. A taken alias no longer
exits with an error: the command names the existing room instead.
@arthware-dev
arthware-dev force-pushed the feat/stacker-room-create branch from 646696a to 4c34d12 Compare October 20, 2026 19:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant