--- name: start-sdk-feature-dev description: 实现 ReadViewSDK 的跨层或跨阅读器改造、分页/缓存/持久化系统性重构、公共 API 演进、复杂联调,或严格执行用户提供的完整方案文档。单模块功能、UI 微调、Bug 修复和局部改动优先使用 start-sdk-feature-dev-lite。 --- # SDK 完整开发 ## 目标 对复杂任务建立可追溯计划,控制接口兼容、依赖、迁移和回滚风险,完成实现、联调、验证与文档同步。 ## 工作流 1. 检查工作区,区分本任务改动和用户已有改动。 2. 明确主改动模块、受影响模块、In Scope、Out of Scope、联调依赖和完成标准。 3. 按 `AGENTS.md` 读取架构、公共 API、目标子系统和测试文档,并用源码复核。 4. 用户提供方案时: - 完整读取并提取锁定决定、任务清单、文件清单、限制和验收标准。 - 逐项执行,不自行替换技术路径、数据模型或文件布局。 - 方案与源码冲突时暂停,说明影响和最小修订建议。 5. 没有方案时制定最小可落地计划,明确执行顺序、数据/状态流、风险、回滚点和验证。 6. 实施时区分计划内修改、不可避免的“必要补齐”和可选后续项;会改变方案的偏差先确认。 7. 做跨模块自检: - EPUB 四层依赖方向和三种渲染路径 - PDF 自定义 Provider 与 PDFKit 直读路径 - 公共 API 的源码兼容与行为兼容 - Codable/磁盘格式迁移、缓存键、版本和失效策略 - 异步 token、取消、迟到回调、主线程和生命周期 - 大图、排版产物、章节窗口和内存警告处理 - CocoaPods source/resource/framework 配置和 Demo 集成 8. 同步架构、API、子系统或测试文档;文档新增或移动时更新索引。 9. 执行构建和与风险相称的定向回归,记录无法自动覆盖的联调项。 ## 方案控制 - 用户确认的方案不能被“更简单的建议”静默覆盖。 - 不以顺手治理为由扩大重构范围。 - 涉及线上数据、缓存迁移或公共 API 时必须写明兼容、回滚或降级方式。 - 新增依赖、资源或公开类型前必须确认 podspec 和宿主集成影响。 ## 交付 最终说明范围和计划完成情况、关键实现与偏差、改动模块、构建/测试结果、兼容与回滚策略、未覆盖风险和同步文档。