Reject coalesce_grad_reduction in unmanaged mode
coalesce_grad_reduction() coalesces reduction to its own with-block boundary
and finalizes averaged_gradients on exit (clearing all_grad_tensors). In
unmanaged mode the caller already owns the boundary via step(), so a following
step() would re-finalize against a cleared all_grad_tensors and crash. Reject
the combination up front at context entry (addresses Codex review on #8203).
Signed-off-by: Olatunji Ruwase <tunji.ruwase@snowflake.com>
Co-authored-by: Cursor <cursoragent@cursor.com>