swiftuimigrator-cleanup
SwiftUI Migrator Cleanup
Overview
Use this skill only after the SwiftUI migration is already verified end to end.
Core principle: cleanup is destructive. Make it explicit, reversible, and late.
When to Use
- All required screens and features are already migrated
- Cleanup is the only remaining stage
- The remaining work is deleting UIKit files or old startup wiring
Preconditions
- Setup, startup migration, and screen migration are complete
- AdMob migration is either complete or not needed
- The SwiftUI app already passes full functional verification
Scope
- Verification gates before deletion
- Safe cleanup order
- Removal of legacy UIKit migration scaffolding
- Final validation and rollback advice
Safe Cleanup Order
- Create a backup branch before destructive edits.
- Delete migrated
ViewControllerfiles and storyboards only after their SwiftUI replacements are verified. - Remove remaining UIKit-specific entry logic.
- Rebuild and perform a final app walkthrough.
Rollback Advice
- Keep a backup branch before deleting legacy files.
- Prefer deleting in small batches instead of removing every UIKit artifact at once.
- If verification fails, restore the smallest possible deleted set and re-check assumptions.
Shared References
- Verification:
../swiftuimigrator/guides/verification-checklists.md
Verification
- The app still builds after cleanup
- No required UIKit migration scaffolding remains
- The final SwiftUI flow works end to end
Exit Criteria
The project no longer depends on legacy UIKit migration scaffolding.
More from 2sem/swiftui-migrator-skill
swiftuimigrator
Use when planning or coordinating an incremental UIKit-to-SwiftUI migration and you need to determine which migration stage or specialized subskill should run next.
1swiftuimigrator-admob
Use when the SwiftUI migration is already stable and the remaining work is Google AdMob integration, SwiftUIAdManager setup, ad-unit migration, or native ad UI migration.
1swiftuimigrator-screens
Use when converting UIKit ViewControllers into SwiftUI screens, migrating features incrementally, rewiring navigation, or bridging complex UIKit views with UIViewRepresentable.
1swiftuimigrator-project-setup
Use when a UIKit-to-SwiftUI migration still needs project-level setup such as Tuist updates, App.swift creation, SplashScreen setup, or entry-point transition from AppDelegate.
1swiftuimigrator-data-migration
Use when SwiftUI app startup still needs initialization, migration, loading-state orchestration, AppInitializer work, or SplashScreen progress handling.
1