botserv: bots join +ao (protected admin + op), keeping op alongside protect
ci.yml #90 -Commit
f2ba876ce4
pushed by
reverse
botserv: bots join channels as protected admins (+a) so ordinary ops can't kick or deop them
ci.yml #89 -Commit
73467b91ca
pushed by
reverse
chanserv: SOP protect (+ao) and founder owner (+qo) with standard ~ & @ prefix tiers
ci.yml #88 -Commit
e2330c56ff
pushed by
reverse
chanserv: all op-and-above tiers grant +o for a single @ prefix; tier distinction stays in the access list
ci.yml #87 -Commit
b5aef650f2
pushed by
reverse
chanserv: give SOP/AOP/HOP/VOP four distinct access tiers matching Anope, classified by capability
ci.yml #85 -Commit
c8106035df
pushed by
reverse
api/gameserv: type email ExpiryTarget and chess Ending as enums (drop stringly returns)
ci.yml #84 -Commit
f5c976eb56
pushed by
reverse
infoserv: type the news kind as an enum at the store boundary
ci.yml #83 -Commit
7a5f1502a4
pushed by
reverse
forbid: type the FORBID kind as an enum at the store boundary, string only in storage
ci.yml #82 -Commit
2c8ba4460d
pushed by
reverse
auth: warn on unknown [[oper]] privilege names instead of silently dropping them
ci.yml #81 -Commit
1fb3615b7e
pushed by
reverse
gameserv: model the domain with enums (GameType/Side/Status/Outcome/Board), zero-alloc grid moves
ci.yml #80 -Commit
cfe05481d6
pushed by
reverse
gameserv: ranked ladder rides StatServ's persisted counters, no separate store
ci.yml #79 -Commit
108c15e95a
pushed by
reverse
gameserv: use the GamesServ nick, GameServ is reserved on the network
ci.yml #78 -Commit
b763eab9ed
pushed by
reverse
gameserv: server-authoritative ttt/c4/chess referee with ranked ladder
ci.yml #77 -Commit
a7a37d1277
pushed by
reverse
operserv: REHASH announces the reload in the log channel via DebugServ
ci.yml #76 -Commit
e3b83f4a92
pushed by
reverse
operserv: REHASH reloads config live without a restart
ci.yml #75 -Commit
64b675e61f
pushed by
reverse