docs: add roadmap

This commit is contained in:
shen 2026-05-21 20:35:51 +08:00
parent 6f58eda143
commit 46a594a137

64
.planning/ROADMAP.md Normal file
View File

@ -0,0 +1,64 @@
# 路线图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 | - |