You're somewhat right
Here's the full explanation:
SourceMod has an in-memory admin cache, which is only cleared when sm_reloadadmins (DumpAdminCache
) is called, and of course when the server is restarted.
SourceBans 1 only writes to admins.cfg and admin_groups.cfg for when your database is down during either of these scenarios. admin-flatfile.smx is needed to read these files. This is an optional feature that can be disabled with the BackupConfigs option in sourcebans.cfg.
SourceBans 2's admin plugin is literally admin-sql-threaded.smx refactored for SourceBans, and does not (yet?) have this feature. I don't see the need for it at the moment, because this plugin fetches permissions every time an admin reconnects*, so there is rarely a need to call sm_reloadadmins. And if your database happens to be down while restarting the server, just wait for it to come back up and run sm_reloadadmins manually.
* This also saves us from having to implement admin rehashing in the web panel (which slowed down editing a lot), since an admin can just wait for a mapchange or reconnect manually to receive their new permissions.