Commit graph

3 commits

Author SHA1 Message Date
0094465ca9
Harden bot: line cap, send throttle, panic isolation, verbose flag, weather cache, tests
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-29 18:46:10 +00:00
33fbe7d5fc
Remove code comments
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-29 16:24:30 +00:00
eb3b8fec40
Restructure into a library crate with modular bot and irc
Split the single-binary crate into a reusable `rustbot` library (src/lib.rs)
plus a thin supervisor binary. The monolithic irc.rs and bot.rs become module
folders:

  irc/    message (wire parsing), connection (TCP/TLS transport), encoding
  bot/    mod (state + event loop), caps (IRCv3 cap negotiation + SASL),
          commands (message routing + command table)
  config  Config + layered loading, moved out of main.rs and bot.rs

main.rs is now just the per-network connect/reconnect supervisor over the
library API. Unit tests move out of the source files into tests/ integration
tests (config.rs, protocol.rs) that drive the public surface — prefix parsing
is now covered through Message::parse, and config layering through the new
public config::parse_str. Behavior is unchanged; no new dependencies.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-29 15:38:55 +00:00