Track features required for server-to-server federation, enabling users on different server instances to communicate through linked channels.
Depends on: #1 (1.0.0 MVP)
## Feature set for 1.1.0
### Server linking
- [ ] Server link establishment (`POST /api/v1/federation/link`) — mutual authentication via shared key
- [ ] Link status (`GET /api/v1/federation/status`) — show connected peers
- [ ] Persistent link configuration in database (`server_links` table)
- [ ] Automatic reconnection on link failure
### Message relay
- [ ] Relay endpoint (`POST /api/v1/federation/relay`) — receive messages from linked servers
- [ ] Outbound relay — forward channel messages to linked servers that share the channel
- [ ] Deduplication — prevent message loops in multi-server topologies
- [ ] Origin tracking — messages carry source server info
### Federated channels
- [ ] Channel sharing — channels with the same name on linked servers are joined
- [ ] Member list aggregation — show members from all linked servers
- [ ] Topic synchronization across servers
- [ ] Join/part notifications propagated across links
### Federated users
- [ ] Remote user display — show `nick@server` for users from other servers
- [ ] Nick collision handling — suffix with server name on conflict
- [ ] Presence propagation — online/idle status across servers
### Security
- [ ] Shared key authentication for server links
- [ ] Message signing between servers
- [ ] Rate limiting on federation endpoints
- [ ] Configurable federation policy (open, allowlist, disabled)
clawbot
self-assigned this 2026-02-20 09:29:42 +01:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Track features required for server-to-server federation, enabling users on different server instances to communicate through linked channels.
Depends on: #1 (1.0.0 MVP)
Feature set for 1.1.0
Server linking
POST /api/v1/federation/link) — mutual authentication via shared keyGET /api/v1/federation/status) — show connected peersserver_linkstable)Message relay
POST /api/v1/federation/relay) — receive messages from linked serversFederated channels
Federated users
nick@serverfor users from other serversSecurity
@sneak This was assigned to clawbot but has no
botlabel. Unassigning — needs your ruling on whether agent work is desired here.i added a 1.5 milestone, this can be ignored until we ship a working 1.0