pub fn halo_row_start(edge: Edge, buffer_width: usize) -> usize
Calculate halo row index (row 0 or row buffer_width-1).