ReadViewSDK/.planning/ROADMAP.md
2026-05-21 20:35:51 +08:00

65 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 路线图ReadViewSDK
## 概述
本次路线图以“**在不扩大范围的前提下**,将 reflowable EPUB 渲染路径替换为参考 `Doc/WXRead/` 的微信读书WXRead原生渲染方式”为主线。Fixed Layout 与交互式 EPUB 保持 `WKWebView` 路径不变;除渲染替换所必需的最小改动外,其它能力暂不主动调整。每个 Phase 都以“可验证的稳定性”为完成标准。
## Phases
- [ ] **Phase 1对齐现状与改造边界** - 明确 reflowable/Fixed/交互式 的判定与现有路径,锁定不做范围
- [ ] **Phase 2WXRead 渲染管线方案落地reflowable** - 依据 `Doc/WXRead/` 设计并落地原生渲染入口与最小可用链路
- [ ] **Phase 3集成与稳定性回归** - 集成到现有 reader 入口,确保主流程与常见内容稳定可用
## Phase Details
### Phase 1对齐现状与改造边界
**Goal**:明确 reflowable EPUB 当前渲染/分页路径与切换点,制定替换策略与不做边界,确保 `WKWebView` 场景不被误伤。
**Depends on**Nothing (first phase)
**Requirements**REND-02
**Success Criteria**(必须为 TRUE
1. 能明确判定一本 EPUB 属于 reflowable / Fixed Layout / 交互式(以工程实现为准)
2. 固定版式与交互式 EPUB 仍走 `WKWebView`,并形成清晰的“保持不改”约束
3. 输出一份可执行的实现策略:将 reflowable EPUB 切换到 WXRead 风格原生渲染
**Plans**2 plans
Plans:
- [ ] 01-01阅读 `Doc/WXRead/analysis/*` 与关键 decompiled 符号,提炼“原生渲染”最小管线与可替换点
- [ ] 01-02审计现有 `Sources/RDReaderView/EPUBCore` reflowable 渲染/分页路径,确定切入点与迁移策略
### Phase 2WXRead 渲染管线方案落地reflowable
**Goal**:在 SDK 内为 reflowable EPUB 引入 WXRead 风格的原生渲染入口,跑通最小可用链路(可在 Demo 中验证)。
**Depends on**Phase 1
**Requirements**REND-01, REND-03
**Success Criteria**(必须为 TRUE
1. reflowable EPUB 可不依赖现有 `WKWebView` 渲染路径完成排版/分页/展示
2. 渲染结果在 Demo 中可稳定展示(最小支持:段落/标题/基础样式/图片)
3. 切换判定逻辑清晰、可测,且 Fixed/交互式路径未被影响
**Plans**3 plans
Plans:
- [ ] 02-01定义并实现 reflowable EPUB 的“原生渲染”模块边界typesetter/layouter/page model 等)
- [ ] 02-02对接现有解析与资源加载manifest/spine/资源寻址),保证图片/CSS/字体等基础资源可用
- [ ] 02-03在现有 reader 入口处接入新渲染路径(保持对外 API 尽量不变)
### Phase 3集成与稳定性回归
**Goal**:把新 reflowable 渲染路径完整集成到阅读器体验中,保证主流程稳定可用,并建立最小回归保障。
**Depends on**Phase 2
**Requirements**STAB-01, STAB-02
**Success Criteria**(必须为 TRUE
1. `RDURLReaderController` 打开 `.epub`/`.txt` 的主流程不回归
2. reflowable EPUB 在常见内容下不出现崩溃/白屏/卡死等关键稳定性问题
3. Demo 可用于复现与回归验证(至少包含 2-3 本典型 reflowable EPUB 用例)
**Plans**2 plans
Plans:
- [ ] 03-01补齐关键回归用例与诊断手段日志/开关/快速回退策略)
- [ ] 03-02对 reflowable 渲染在真实内容上的问题做收敛与修复,形成可持续迭代基线
## Progress
| Phase | Plans Complete | Status | Completed |
|---|---:|---|---|
| 1. 对齐现状与改造边界 | 0/2 | Not started | - |
| 2. WXRead 渲染管线方案落地reflowable | 0/3 | Not started | - |
| 3. 集成与稳定性回归 | 0/2 | Not started | - |