mjolnir/src
Gnuxie 77ad40e27a
Refactor protected rooms. (#371)
* Attempt to factor out protected rooms from Mjolnir.

This is useful to the appservice because it means we don't
have to wrap a Mjolnir that is designed to sync.

It's also useful if we later on want to have specific
settings per space.

It's also just a nice seperation between Mjolnir's needs while
syncing via client-server and the behaviour of syncing policy rooms.

 ### Things that have changed

- `ErrorCache` no longer a static class (phew), gets used by `ProtectedRooms`.
- `ManagementRoomOutput` class gets created to handle logging back to the management room.
- Responsibilities for syncing member bans and server ACL are handled by `ProtectedRooms`.
- Responsibilities for watched lists should be moved to `ProtectedRooms` if they haven't been.
- `EventRedactionQueue` is moved to `ProtectedRooms` since this needs to happen after
  member bans.
- ApplyServerAcls moved to `ProtectedRooms`
- ApplyMemberBans move to `ProtectedRooms`
- `logMessage` and `replaceRoomIdsWithPills` moved to `ManagementRoomOutput`.
- `resyncJoinedRooms` has been made a little more clear, though I am concerned about how often it does run because it does seem expensive.


* ProtectedRooms is not supposed to track joined rooms.

The reason is because it is supposed to represent a specific
set of rooms to protect, not do horrible logic
for working out what rooms mjolnir is supposed to protect.
2022-09-29 14:49:09 +01:00
..
commands Refactor protected rooms. (#371) 2022-09-29 14:49:09 +01:00
health load config yaml manually, remove more references to static config (#347) 2022-08-16 15:51:18 +01:00
models Rework the banning and unbanning of entities in PolicyLists. (#345) 2022-08-19 13:09:08 +01:00
protections Refactor protected rooms. (#371) 2022-09-29 14:49:09 +01:00
queues Refactor protected rooms. (#371) 2022-09-29 14:49:09 +01:00
report Refactor protected rooms. (#371) 2022-09-29 14:49:09 +01:00
webapis Stop the config being global (in almost all contexts). (#334) 2022-08-09 11:29:27 +01:00
config.ts use requested path to configs (#357) 2022-08-17 16:17:23 +01:00
ErrorCache.ts Refactor protected rooms. (#371) 2022-09-29 14:49:09 +01:00
index.ts load config yaml manually, remove more references to static config (#347) 2022-08-16 15:51:18 +01:00
ManagementRoomOutput.ts Refactor protected rooms. (#371) 2022-09-29 14:49:09 +01:00
Mjolnir.ts Refactor protected rooms. (#371) 2022-09-29 14:49:09 +01:00
ProtectedRooms.ts Refactor protected rooms. (#371) 2022-09-29 14:49:09 +01:00
RoomMembers.ts A command to show when users in a given room have joined (#225) 2022-03-07 11:34:25 +01:00
utils.ts Refactor protected rooms. (#371) 2022-09-29 14:49:09 +01:00