# XFlow SwiftUI Migration ## Goal Track the durable behavior patterns introduced while moving XFlow from older assumptions toward a more complete SwiftUI implementation. --- ## Stable Themes - SwiftUI migration was not just a UI rewrite; it exposed contract, lifecycle, and parity gaps. - Historical Slack evidence repeatedly referenced: - component type expansion beyond simple string assumptions - Next-button visibility rules driven by full service parameters - markdown link handling and analytics integration - navigation and modal behavior in pure SwiftUI environments - dismissal delegate lifecycle sequencing --- ## What Matters Now - When a SwiftUI issue appears, check whether the missing behavior is: - parity with UIKit behavior - an incomplete service contract interpretation - a lifecycle sequencing problem - a consumer presentation constraint in Fid4 - Do not assume a visual issue is only cosmetic; several historical SwiftUI bugs changed flow behavior materially. --- ## Historical Signals From Slack - Jeff and Norman repeatedly refined story titles and descriptions around SwiftUI architecture changes, showing that scope wording mattered because the work was often deeper than the first symptom. - Historical Slack context also shows that SwiftUI-specific work frequently required cross-team clarification when external dependencies or consumer environments behaved differently.