[Alts] Server-side search controls, IP counts, adjustable window

Plumbs the match-type chips through to the server: include_email/include_clientid/include_ip skip disabled identifier types in both matching and frontier expansion, so excluded types (e.g. throwaway domains) never enter the graph at any depth. Session lookback becomes adjustable (session_months, clamped 1-24, default 6). Each alt row carries ip_count, the distinct recent session IP count shown in a new IPs column. All proto additions are optional with old defaults, so old clients/servers interoperate.
This commit is contained in:
Lukas Brübach 2026-10-13 22:31:50 +02:00
parent 2b7ddfd968
commit b7f04bbb6e
7 changed files with 142 additions and 45 deletions

View file

@ -170,6 +170,10 @@ message Command_GetUserAlts {
}
optional string user_name = 1;
optional uint32 depth = 2 [default = 1]; // BFS depth: 1 = direct matches only, up to 3 for transitive alts-of-alts
optional bool include_email = 3 [default = true]; // match and expand over registration email
optional bool include_clientid = 4 [default = true]; // match and expand over current and historic client ids
optional bool include_ip = 5 [default = true]; // match and expand over recent session IPs
optional uint32 session_months = 6 [default = 6]; // session lookback window in months, 1-24
}
message Command_GetModeratorLastLogins {

View file

@ -17,4 +17,5 @@ message ServerInfo_UserAlt {
optional uint32 depth = 10; // BFS distance from investigated account; 1 = direct, 2+ = alt-of-alt
optional uint32 shared_count =
11; // distinct users sharing the matched identifier; high values suggest VPN/shared network
optional uint32 ip_count = 12; // distinct recent session IPs of this account in the search window
}