An attachment over the side or area caps whose re-encode did not shrink the byte count was returned unchanged at its original dimensions, so the provider still received an over-cap image. The byte-saving short-circuit now applies only within the caps; a resize that would fall under the vision minimums keeps the original on the existing fallback path. Ported from upstream 1.0.13 (grok-build session/image_normalize.rs). Claude-Session: https://claude.ai/code/session_01RUqV8HVGXcAETyYbZ2tPQ4