← ClaudeAtlas

swift-concurrency-migrationlisted

Plan, implement, debug, and verify migrations from callback-, delegate-, Dispatch-, or permissive-concurrency Swift code to Swift 6 strict concurrency, including target-specific build settings, approachable concurrency, default actor isolation, @concurrent work, actors, Sendable boundaries, cancellation, and structured tasks. Use for Swift 6 compiler diagnostics, concurrency adoption plans, legacy async bridges, or migration-focused tests in Apple-platform apps and Swift packages. Do not use for general Swift syntax, performance work without a concurrency finding, framework-specific threading rules without a Swift migration, or requests that merely contain an already-correct async function.
fal3/claude-skills-collection · ★ 18 · Code & Development · score 79
Install: claude install-skill fal3/claude-skills-collection
# Swift Concurrency Migration Migrate from evidence, one isolation boundary at a time. Preserve behavior before changing architecture, and keep every target buildable between migration waves. ## Inspect before editing Determine the compiler, language mode, deployment targets, and effective settings for every affected target. Do not infer them from the newest syntax in one file. ```bash xcodebuild -version xcrun swiftc --version xcodebuild -list -project App.xcodeproj xcodebuild -showBuildSettings -project App.xcodeproj -target App \ | rg 'SWIFT_VERSION|SWIFT_STRICT_CONCURRENCY|SWIFT_DEFAULT_ACTOR_ISOLATION|SWIFT_APPROACHABLE_CONCURRENCY|IPHONEOS_DEPLOYMENT_TARGET|MACOSX_DEPLOYMENT_TARGET' ``` For a package, inspect `// swift-tools-version`, each target's `swiftSettings`, and the resolved compiler: ```bash swift package dump-package swift --version ``` Record separately: - Xcode and Swift toolchain versions. - Swift language mode and strict-concurrency level. - Default actor isolation and approachable-concurrency setting. - App, extension, test, and package deployment targets. - Existing global actors, actors, locks, queues, callbacks, and suppression annotations. If the request is diagnostic-driven, reproduce one exact compiler message before changing code. Read [the migration and diagnostic playbook](references/migration-workflow.md) before making a multi-target plan. ## Choose the isolation model Use these defaults deliberately: | Code | Preferred ownership |