用途:该技能是一份对抗式的 iOS/Swift 崩溃狩猎指南,面向采用 clinic 模块化 MVVM-C 架构的 iOS 26 / Swift 6.2 代码库,用于发现并修复并发、内存和 I/O 类缺陷。所有规则遵循 TDD:先写危险代码,再用失败测试证明缺陷,最后给出让测试通过的修复。
主要能力:共 47 条规则,按崩溃严重程度分 8 类并带前缀。数据竞争与线程安全(race-,CRITICAL)、内存损坏与泄漏(mem-,CRITICAL)、死锁与线程饥饿(dead-,HIGH)、Async/Await 与结构化并发(async-,HIGH)、文件 I/O 与持久化损坏(io-,MEDIUM-HIGH)、集合与状态变更(mut-,MEDIUM)、资源耗尽(exhaust-,MEDIUM)、Objective-C 互操作陷阱(objc-,LOW-MEDIUM)。示例规则包括并发字典/数组写入、逃逸闭包强引用 self 的循环引用、主线程 sync 死锁、缺少取消检查、CoreData SwiftData 跨线程访问、枚举期间修改集合、无界任务生成、NSNull 解码崩溃等。
适用场景:狩猎 Swift 数据竞争、死锁与并发崩溃;审计内存管理与保留环;检查 async/await 取消与 continuation 泄漏;压测文件 I/O 与 CoreData/SwiftData 持久化层;在修复前编写崩溃证明测试。技能假定 clinic 模块化 MVVM-C 约定:Feature 模块只导入 Domain 与 DesignSystem;App target 为汇聚点,持有 DependencyContainer、具体 coordinator 与 Route Shell 接线;Domain 保持纯 Swift,定义模型及 repository、*Coordinating、ErrorRouting、AppError 契约;Data 负责 SwiftData/网络/同步/重试/后台 I/O 并实现 Domain 协议;读写默认 stale-while-revalidate 与乐观排队写入;ViewModel 直接调用 repository 协议。
使用方式:按引用文件逐一阅读详细说明与代码示例,参考 references/_sections.md 了解分类结构与影响等级,使用 assets/templates/_template.md 添加新规则。
限制:具体实现细节、安装方式、价格与平台支持资料暂未提供;规则内容以给出的清单为准,未列出的功能不予推断。