Quality regression: Claude presents guesses as verified facts instead of checking first
Description
Claude Code has developed a pattern of presenting unverified assumptions as established facts, instead of using its available tools to check first. This is a significant quality regression observed over the last few days.
Concrete example from today's session (2026-03-27)
The user asked where IMAP emails are stored. Claude had access to the IMAP config file (~/.imap-mcp/config.json) which clearly shows the server hosts and IPs. Instead of reading it:
- First answer (wrong): Claimed emails are stored on an "IONOS mail server" — completely fabricated, never checked any config
- Second answer (wrong): After being corrected, claimed emails are on jupiter with specific paths — still guessing without reading the config
- Third answer (finally correct): Only after being explicitly asked to investigate properly, Claude read the config and gave the correct answer (2 accounts on Uberspace, 2 on jupiter)
Later in the same session, Claude claimed a backup directory contained stale data "from before an exclude was introduced" — when in fact the backup had only ever run once (with the exclude already in place).
Pattern
- Claude generates plausible-sounding explanations without verification
- These guesses are presented with the same confidence as verified facts
- The user cannot distinguish between verified and guessed information
- When wrong, Claude generates a new plausible-sounding explanation (also unverified)
- Tools for checking (Read, Bash, Grep, etc.) are available but not used
Expected behavior
Claude should read configs, logs, and filesystem state before making claims about infrastructure, configuration, or system state. When information cannot be verified, it should be explicitly marked as uncertain.
Impact
This undermines trust fundamentally. The core value proposition of Claude Code is that it can investigate and give accurate answers. When it guesses instead, the user has to re-verify every statement, which defeats the purpose.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗