From f480a7c077934a66819bdb313e4e7dd709cf9b14 Mon Sep 17 00:00:00 2001 From: disqualifier Date: Mon, 29 Jun 2026 01:39:21 -0400 Subject: [PATCH] docs: correct README error contract (initialize-time, raw discord exceptions) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit the README Errors section claimed resolution raises ValueError 'at call time', but per-call resolution is swallowed with send failures and the raise happens at initialize() — and the raised type can be an underlying discord exception (NotFound/Forbidden/HTTPException), not only ValueError. corrected to match the code and the module docstring. Signed-off-by: disqualifier --- README.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index a60c932..db9a014 100644 --- a/README.md +++ b/README.md @@ -70,10 +70,13 @@ await bot.log.debug("noisy", log_to_file=False) # -> Discord only ## Errors -Resolution failures (unresolvable guild/channel, bad config) raise `ValueError` at -`initialize`/call time — a misconfigured logger should fail loudly at setup. Per-call -**send** failures do **not** propagate: they fall back to the stdlib logger so a -transient Discord failure never breaks the caller's command. +Resolution failures (unresolvable guild/channel, bad config) raise from `initialize()` +— a misconfigured logger should fail loudly at setup. The raised type is usually +`ValueError`, but an underlying `discord` exception (`NotFound` / `Forbidden` / +`HTTPException`) from `fetch_guild`/`fetch_channel` can also propagate. On a **per-call** +send, neither resolution nor send failures propagate: they fall back to the stdlib +logger so a transient Discord failure (or a per-call `guild=` that doesn't resolve) +never breaks the caller's command. ## Construction contract