Root cause found: setState is async, so hookConfirmSingleItem was called before extractedItems updated, causing it to use OLD image_processing values. Fixed by: 1. Building the final newItem directly in handleImageAdjustmentConfirm 2. Using the UPDATED image_processing values (with user adjustments) 3. Calling onComplete synchronously with correct values 4. Not relying on async setState ordering This ensures backend receives the user-adjusted crop_bounds and rotation_degrees, not the original AI-detected values. Backend logs will now show user adjustments, not original AI values. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
32 KiB
32 KiB