Add server-wide and user-only federation controls (#133)

### Description

Completes #122

### Please confirm

- [x] I am the legal owner or represent the legal owner of all work submitted (including LLM-generated code, if any)
- [x] I consent to my changes being added to this FOSS project
- [x] I have confirmed that this does not add new errors or warnings with `utils/clippy.sh`
- [ ] This PR used LLMs to generate some or all of the code changes

Reviewed-on: https://git.ngram.ca/OpenJam/rc-servers/pulls/133
This commit is contained in:
NG (Graham) authored and NGnius committed 2026-06-25 01:49:11 +00:00
1 parent e65d0eeb80
commit 995bafa70c
22 files changed
+522 -15

No files matched your search

+7
View File
@@ -46,6 +46,8 @@ pub trait ConfigProvider<C: Clone> {
fn garage_slot_limit(&self) -> i32;
fn team_choosers(&self) -> TeamChoosers;
fn redacted_json(&self) -> String;
/// None when federation is not enabled
fn federation(&self) -> Option<Federation>;
}
pub struct DevMessageProvider<C: Clone> {
@@ -579,3 +581,8 @@ pub struct PlatformConfig {
pub trait RedactedClone {
fn redacted_clone(&self) -> Self;
}
pub struct Federation {
pub aliases: std::collections::HashMap<String, String>,
pub defederated: Vec<String>,
}