OperServ: STATS enforcement overview

STATS reports the live counts OperServ holds — AKILL and SQLINE bans by
kind, and services ignores — as a quick at-a-glance check. Read-only, so
any operator can run it.
This commit is contained in:
Jean Chevronnet 2026-07-14 01:02:14 +00:00
parent ab5dc2e931
commit f9aea30f81
No known key found for this signature in database
3 changed files with 18 additions and 1 deletions

View file

@ -3947,6 +3947,8 @@ mod tests {
assert!(out.iter().any(|a| matches!(a, NetAction::AddLine { kind, mask, .. } if kind == "Q" && mask == "*bot*")), "Q-line added: {out:?}");
// A rejected @-shaped mask (that belongs to AKILL, not SQLINE).
assert!(os(&mut e, "000AAAAAS", "SQLINE ADD a@b spam").iter().any(|a| matches!(a, NetAction::Notice { text, .. } if text.contains("valid"))), "nick mask rejects user@host");
// STATS reflects the live ban counts.
assert!(os(&mut e, "000AAAAAS", "STATS").iter().any(|a| matches!(a, NetAction::Notice { text, .. } if text.contains("1") && text.contains("SQLINE"))), "stats shows the sqline count");
// GLOBAL fans out to every user via the $* server glob.
let out = os(&mut e, "000AAAAAS", "GLOBAL rebooting in 5");