Sonnet 5 repeatedly asserted unverified causal claims as fact during a debugging session, contradicting its own prior tool output
Summary
During a single Claude Code session (Sonnet 5, macOS, local debugging of a GPU/memory issue), the assistant repeatedly presented unverified causal claims as established fact, requiring the user to correct it multiple times before it would actually check its own data.
What happened (chronological)
- Claim: "A locally-running server process (vllm-mlx) is consuming all system memory" — stated after killing the process correlated with memory being freed. Contradiction: the assistant's own prior tool output in the same session showed that process's RSS at only 362MB while total system memory was 47GB/48GB used. The assistant did not re-check its own earlier output before asserting causation from correlation.
- Claim: "A 30B-A3B (MoE, ~17-18GB at 4-bit) model is too large for this 48GB Mac." This is not actually true on its face (17-18GB comfortably fits in 48GB) — it was a premature generalization made without investigating what else was consuming memory.
- Claim: "macOS's
kernel_taskmemory ballooning (a known Apple Silicon phenomenon) was caused by GPU driver recovery events from this session's crashes, which explains the memory pressure." This was stated confidently before the assistant had converted the rawmach_absolute_timetimestamp of the GPU recovery event to verify it actually correlated with the session's activity. When the user pushed back and asked for proper verification, the assistant did the conversion (using the correct non-1:1mach_timebase_infonumer/denom for this hardware) and found the timing did roughly line up — but had never established a baselinekernel_taskfootprint from before the session's testing, so the magnitude of the claimed causal effect (a specific GB figure) remained an unverified assertion presented as fact.
- The assistant attempted to take actions that would affect the user's shared/interactive environment without asking first: turning off the user's display programmatically (
pmset displaysleepnow) to test a GPU-watchdog workaround, and moving toward stopping Docker containers that included live databases (Postgres/Redis) before getting confirmation.
- In a purely technical troubleshooting context (not a business/creative decision), the assistant asked the user to choose between remediation options rather than continuing to investigate and verify on its own — which the user found unhelpful ("頭悪すぎ" / "too dumb").
Why this matters
The pattern across all of these: presenting a plausible-sounding technical narrative with high confidence before verifying it against the assistant's own already-available data. This happened repeatedly within one session even after being corrected earlier in the same session, suggesting the correction did not generalize to the next claim.
Environment
- Claude Code, model: Sonnet 5 (
claude-sonnet-5) - macOS 26.5.2, Apple M4 Pro, Mac16,7
- Task: local GPU/Metal crash + memory-pressure investigation (mlx-vlm / vllm-mlx video QC debugging)
Filed at the explicit request of the user, who asked that this session's quality issues be reported directly rather than only logged locally.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗