用途:面向 Swift 并发开发,帮助诊断并发诊断信息、将回调式代码重构为 async/await,并在涉及 Task、actor、@MainActor 等场景下指导 Swift 6 迁移。
主要能力:先分析 Package.swift 或 .pbxproj,确认 Swift 语言模式、严格并发级别、默认隔离和 upcoming features;捕获具体诊断与相关符号;判断隔离边界(@MainActor、自定义 actor、actor 实例隔离或 nonisolated);按“最小安全修复”给出建议,并区分快速修复模式与需要深入参考文件的场景。还覆盖常见诊断处理(如主 actor 隔离、协议一致性、Sendable 数据竞争、SwiftLint async_without_await、Core Data 并发、测试等待等),以及并发工具选择(async/await、async let、withTaskGroup、Task、actor、@MainActor)。
使用方式:先确认项目构建设置,未知时应询问开发者而非猜测。快速修复模式仅适用于问题局限在单文件或单类型、隔离边界清晰、修复可在一两步保持行为不变时。修复后进入迁移验证循环:构建、修复一类错误、重建、测试,逐文件逐模块推进。
适用场景:Swift 6 迁移、回调转 async、actor 隔离排查、Sendable 问题、并发测试与 lint 处理。
限制:不把 @MainActor 当万能修复;优先结构化并发;使用 @preconcurrency、@unchecked Sendable 或 nonisolated(unsafe) 需有安全不变量与移除计划;性能结论需用 Instruments 验证;避免在 async 上下文使用信号量或临时锁。