--- name: review-swift-ios-sdk description: 对 ReadViewSDK 的 Swift/iOS 代码进行专项审查,覆盖并发、主线程、生命周期、内存、缓存、渲染性能、可访问性、安全、公共 API 和持久化兼容。用户要求继续检查隐藏问题、代码审查、性能或内存审计时使用;普通功能开发和纯文档任务不要单独使用。 --- # Swift/iOS SDK 专项审查 ## 工作流 1. 明确审查范围和修改授权;只要求审查时不得修改代码。 2. 检查工作区和最近改动,读取目标代码、相邻实现及 `AGENTS.md` 路由出的文档。 3. 沿入口、异步回调、持久化和渲染结果双向追踪,不只检查单个函数。 4. 仅报告能由当前源码证明、可触发且值得行动的问题。 ## 检查维度 ### 并发与生命周期 - UI 是否回到主线程,迟到结果是否会覆盖新状态。 - token、重试、超时和取消是否保证恰好一次完成。 - 闭包、Task、通知、定时器、观察者、WKWebView 和 Vision 请求是否释放。 - PDFKit、缓存字典和持久化文件是否在正确队列或锁内访问。 ### 性能与内存 - 滚动、缩放、绘画和分页热点是否包含同步 IO、重复解码或重复排版。 - EPUB 章节窗口、页图缓存、PDF 页面位图和绘画缓存是否有明确边界。 - 内存警告后可见内容能否恢复,驱逐后迟到回调是否重新撑大缓存。 - 图片像素成本、NSCache 限额、autoreleasepool 和大对象生命周期是否合理。 ### SDK 兼容性 - `public` API、协议要求、初始化方法和默认行为是否意外 breaking。 - Codable、文件名、缓存键、book identifier 和 schema version 是否可迁移。 - EPUB 三种渲染路径和 PDF 两种 Provider 路径是否行为一致。 - podspec 是否包含新增源码、资源、系统 framework 和依赖。 ### 交互、安全与可访问性 - 缩放锚点、Cell 复用、双页布局、手势竞争和绘画图层是否稳定。 - 图标按钮、自定义控件、动态字体和 VoiceOver 语义是否完整。 - 日志、文件路径和错误信息是否泄露敏感数据。 ## 输出 按严重程度列出 findings;每条包含位置、触发条件、用户影响、根因和最小修复建议。没有发现问题时明确说明,并列出尚未覆盖的运行时验证空白。 若用户同时要求修改,沿用对应开发 Skill 的实现、验证和交付规则。