Opus 4.6 content filter false positive blocks standard Kotlin/Compose code generation

Resolved 💬 3 comments Opened Apr 9, 2026 by hellosagar Closed Apr 13, 2026

Bug Description

Claude Code (Opus 4.6, 1M context) repeatedly hits "Output blocked by content filtering policy" when generating standard Kotlin Compose Multiplatform UI code. The session becomes completely unrecoverable — every retry fails with the same error.

Steps to Reproduce

  1. Use Claude Code CLI with Opus 4.6 (1M context) on macOS
  2. Work on a Kotlin Multiplatform / Compose Multiplatform project
  3. Read multiple source files from two local projects (builds up context)
  4. Ask Claude to write a new Composable file containing animations (progress bars, shimmer effects, spring animations, hex color values)
  5. Every attempt to generate the file fails with content filter error

Expected Behavior

Claude should generate the Kotlin/Compose code without being blocked.

Actual Behavior

API Error: 400 {"type":"error","error":{"type":"invalid_request_error","message":"Output blocked by content filtering policy"}}

This repeats on every retry (6+ attempts). No output is produced. The session is stuck permanently.

Failed Request IDs

  • req_011CZtFaoT3LTVj4ZKshZauu
  • req_011CZtFg4pu9h3trdFoVfnBC
  • req_011CZtGCD9JFkRm96nJUrXUY
  • req_011CZtGSdzR3u6jHrWQgTd1G
  • req_011CZtGV2bWhhNBkDNgRPZWp
  • req_011CZtHCzA63jMYrvWZzcXMZ

Environment

  • Claude Code CLI (latest)
  • Model: Opus 4.6 (1M context)
  • macOS Darwin 25.3.0
  • Project: Kotlin Multiplatform with Compose Multiplatform

Impact

  • Burns Pro usage quota with zero output produced
  • Session is unrecoverable — must start a new conversation and redo all work
  • Anthropic support confirmed it is a false positive but only suggested "switch to Sonnet" as a workaround

Notes

The code being generated is completely benign: Compose UI animations (progress bars, checklist items with spring animations, gradient backgrounds, hex color values like 0xFFB770DB). Anthropic support acknowledged this is a false positive caused by hex sequences and animation patterns resembling "obfuscation techniques."

This should be fixed in the filter itself, not worked around by users downgrading to a less capable model.

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗