Hi, thanks for getting back Here is a code snippet where this issue will occur: import SwiftUI struct TestItem: Identifiable { let id = UUID() let color: Color } struct POSView: View { @State private var items = [ TestItem(color: .orange), TestItem(color: .purple), TestItem(color: .teal), TestItem(color: .blue), TestItem(color: .pink), TestItem(color: .green) ] let columns = [GridItem(.adaptive(minimum: 100))] var body: some View { ScrollView { LazyVGrid(columns: columns, spacing: 16) { ForEach(items) { item in RoundedRectangle(cornerRadius: 15) .fill(item.color.gradient) .frame(width: 100, height: 100) } .reorderable() } .reorderContainer(for: TestItem.self) { difference in items.apply(difference: difference) } .padding() } } } extension Array { mutating func apply( difference: ReorderDifference ) where Element: Identifiable, Element.ID: Sendable { guard let sourceIndex = firstIndex(where: { $0.id == difference.sources[0] }) else { return } let movedCard = remove(at: sourceIndex) var destination: In