# Phase 5: 回归验证与稳定性收敛 - Pattern Map ## Goal 把 Phase 5 约束成“样本矩阵 + reader 流程 + 收敛修复”的闭环,而不是泛泛地补测试。 ## Planned Outputs | Planned file | Role | Primary evidence | Why this is the right analog | |--------------|------|------------------|------------------------------| | `05-01-PLAN.md` | 构建样本矩阵、诊断手段和复现清单 | `ReadViewDemo/ViewController.swift`, `ReadViewDemo/book/`, `RDEPUBWebViewDebug`, prior verification artifacts | 这些是现有验证入口和日志基础。 | | `05-02-PLAN.md` | 依据矩阵执行回归并收敛稳定性问题 | `RDEPUBReaderController`, `RDEPUBTextBookBuilder`, `RDEPUBWebView*`, `RDURLReaderController` | 这里汇聚了 Phase 1-4 改动后的主要风险表面。 | ## Code Evidence Map | Concern | Closest source of truth | Evidence to extract | |---------|-------------------------|---------------------| | 样本入口与启动验证 | `ReadViewDemo/ReadViewDemo/ViewController.swift` | 已有 startup validation,可扩展成矩阵摘要。 | | native reflowable 风险 | `RDEPUBReaderController`, `RDEPUBTextBookBuilder`, `RDEPUBTextContentView` | 搜索、高亮、repagination、位置恢复都集中在这里。 | | fixed / interactive 风险 | `RDEPUBWebView`, `RDEPUBWebView+FixedLayout`, `RDEPUBResourceURLSchemeHandler` | 这些路径依赖 WebKit/resource loading,不同于 native text。 | | TXT 支持风险 | `RDURLReaderController`, `RDPlainTextBookBuilder` | roadmap 要求 `.txt` 主流程不回归,但当前样本覆盖不足。 | ## Writing Guidance - Phase 5 的计划必须明确区分“验证基础设施/矩阵”与“发现问题后的收敛修复”。 - 任何修复都应以回归证据驱动,不应重新打开更大范围的架构重构。 - 计划里要写清楚哪些样本书承担哪些验证职责。