Also confirmed this is still broken in iOS 26.3 (23D127). My feedback is FB21078443 filed Nov 2025.
If anyone can’t repro it, here’s a minimal example. Tap a color, then swipe back from the left edge—the source view will disappear after the transition. Easier to repro on physical device, but also possible in sim with a solid swipe.
import SwiftUI
struct ContentView: View {
@Namespace private var namespace
private let colors: [Color] = [.red, .blue]
var body: some View {
NavigationStack {
VStack(spacing: 16) {
ForEach(colors.indices, id: \.self) { index in
NavigationLink(value: index) {
RoundedRectangle(cornerRadius: 16)
.fill(colors[index])
.frame(maxWidth: .infinity, minHeight: 200, maxHeight: 200)
.matchedTransitionSource(id: index, in: namespace)
}
.buttonStyle(.plain)
}
}
.padding(20)
.navigationTitle("Zoom Transition Issue")
.navigationSubtitle("Tap card, then swipe back from left edge")
.navigationDestination(for: Int.self) { index in
Rectangle()
.fill(colors[index])
.ignoresSafeArea()
.navigationTransition(.zoom(sourceID: index, in: namespace))
}
Spacer()
}
}
}