Interesting that they were able to hit the site directly - I thought the whole point of thatCloudflare intermediate layer (which sometimes seems to be more trouble than solution) was to prevent that sort of thing from happening.....
I do use Cloudflare on the site, but only Cloudflare Turnstile for new-user registrations. That helps prevent bots from creating accounts, but it doesn't put the entire website behind Cloudflare.
Normal visitors — including bots — still connect directly to my web server. So a large number of bots can hit the site and overwhelm the server even though Cloudflare is being used for registration protection. To have Cloudflare filter that traffic, I would need to route the site's regular web traffic through Cloudflare's proxy, not just use Turnstile on the registration page.
Certainly I could put the entire BCF behind Cloudflare, which would provide additional protection against bots, DDoS attacks, etc., but that also adds another layer between my members and my server. It means Cloudflare would be proxying all of the forum's web traffic, with additional DNS, caching, firewall, SSL, and security settings that have to be configured and maintained correctly.
I preferred to keep the setup simpler and have members connect directly to the server, while using Cloudflare Turnstile where it's especially useful — stopping automated registrations. The downside is that the server is more exposed to things like the bot flood we experienced today, so it's a tradeoff between simplicity and additional protection.