Skip to content

[BUG] Opus 4.6 reports success without verifying outcomes - silent failures go undetected #23801

Closed as not planned

Description

@durantemarco-italy

Description

Opus 4.6 consistently reports successful completion of operations without verifying the actual outcome. When an operation fails silently (e.g., a file copy command produces no output and no error), the model states "Done" with confidence and moves on. This is not limited to file operations - the same pattern likely affects any operation where the model assumes success based on the absence of an error message.

This is a behavioral regression from Opus 4.5, which was more cautious and would verify results before reporting success.

Reproduction steps

  1. On a Windows machine, ask Claude Code (Opus 4.6) to copy a file using a shell command
  2. The copy command fails silently (no output, no error) - this is common in bash-on-Windows environments
  3. Claude Code reports "Done. The file has been saved" without checking if the file actually exists
  4. The file does not exist
  5. When the user points out the file is missing, Claude retries with a slightly different command - again without verifying the result
  6. Only after the user explicitly asks "I don't see the file" a second time does Claude use a verification tool (Glob) and discover the file was never created

What should happen

After any operation that creates, modifies, or deletes a file, the model should verify the outcome using a tool (Glob, Read, or ls) before reporting success to the user. This is especially critical when:

  • A shell command produces no output (ambiguous success/failure)
  • The operation is on Windows, where many commands fail silently in bash
  • The user has explicitly documented this requirement in CLAUDE.md

Why this matters beyond file operations

The core issue is not about file copying - it's about the model's tendency to assume success and report it without verification. This same pattern can manifest when:

  • Writing code that references classes/methods that don't exist (model uses Grep, gets no results due to encoding, proceeds anyway)
  • Running build commands and not checking the output for errors
  • Making database changes and not verifying the state
  • Any multi-step operation where an intermediate step can fail silently

Evidence

This was observed by the model itself during a conversation where the user asked Opus 4.6 to analyze its own CLAUDE.md instructions. The model:

  1. Ran cmd /c copy - no output
  2. Reported "Done. The old CLAUDE.md is saved"
  3. User checked: file did not exist
  4. Model ran cmd /c "copy /Y" - no output again
  5. Still did not verify
  6. User asked again
  7. Only then did model use Glob and discover the file was missing
  8. Used Write tool instead, which worked

The model then acknowledged this was exactly the "confident without checking" pattern described by the user at the start of the conversation as a regression from Opus 4.5.

Environment

  • Claude Code v2.1.32
  • Model: claude-opus-4-6
  • Platform: Windows Server (win32)
  • The behavior is consistent across multiple operations in the same session

Related issues

Suggested mitigation

At the model level: after executing a shell command that produces no stdout/stderr, the model should treat this as an ambiguous result and verify with a dedicated tool before reporting success.

At the system prompt level: consider adding a built-in instruction that the model must verify file operations, similar to how the system prompt already instructs to "use Read instead of cat."

Activity

  1. github-actions commented on Mar 7, 2026

    @github-actions

    Closing for now — inactive for too long. Please open a new issue if this is still relevant.

  2. github-actions commented on Mar 14, 2026

    @github-actions

    This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.

  3. locked as resolved and limited conversation to collaborators on Mar 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:modelarea:toolsbugSomething isn't workinghas reproHas detailed reproduction stepsplatform:windowsIssue specifically occurs on WindowsstaleIssue is inactive

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions