ReadViewSDK/.planning/phases/07-wxread/07-VALIDATION.md
2026-05-22 20:04:47 +08:00

3.7 KiB
Raw Blame History

phase slug status nyquist_compliant wave_0_complete created
7 wxread draft true false 2026-05-22

Phase 7 — Validation Strategy

Per-phase validation contract for WXRead custom pagination-attribute closure.


Test Infrastructure

Property Value
Framework none — simulator build/run and manual UAT
Config file none
Quick run command xcodebuild -workspace ReadViewDemo/ReadViewDemo.xcworkspace -scheme ReadViewDemo -configuration Debug -destination 'platform=iOS Simulator,name=iPhone 17' build
Full suite command xcodebuild -workspace ReadViewDemo/ReadViewDemo.xcworkspace -scheme ReadViewDemo -configuration Debug -destination 'platform=iOS Simulator,name=iPhone 17' build && build_run_sim
Estimated runtime ~180 seconds

Sampling Rate

  • After every task commit: run the quick build command.
  • After every plan wave: run the full simulator build/run path and confirm the native text sample books still open.
  • Before execution handoff: confirm the semantic-attribute and pagination-diagnostic checks below.
  • Max feedback latency: 180 seconds.

Per-Task Verification Map

Task ID Plan Wave Requirement Threat Ref Secure Behavior Test Type Automated Command File Exists Status
07-01-01 07-01 1 ATTR-01 N/A build xcodebuild ... build pending
07-01-02 07-01 1 ATTR-01 / ATTR-03 N/A build xcodebuild ... build pending
07-02-01 07-02 2 ATTR-01 / ATTR-02 N/A simulator build_run_sim pending
07-02-02 07-02 2 ATTR-03 N/A simulator build_run_sim pending
07-03-01 07-03 3 ATTR-02 / ATTR-03 N/A manual simulator inspection pending
07-03-02 07-03 3 ATTR-01 / ATTR-03 N/A manual simulator inspection pending

Status: pending · green · red · ⚠️ flaky


Wave 0 Requirements

  • Existing build path covers the phase requirements; no new test target is required.
  • Demo validation must include at least one native text sample with images/attachments and one sample containing code/list/table/blockquote-like structure.

Manual-Only Verifications

Behavior Requirement Why Manual Test Instructions
avoidPageBreakInside / pageBreakBefore / pageBreakAfter 规则能在分页日志或诊断中看见 ATTR-01 需要结合真实章节分页结果,而不是只看源码 打开 native text 样本,记录分页摘要,确认强制分页或 avoid-break 命中会出现在诊断输出
图片/附件垂直居中等语义在 page metadata 或展示侧可见 ATTR-02 需要运行时确认附件语义没有在 attributed string 到分页器之间丢失 打开包含图片的章节,检查 demo 日志或调试输出是否显示 attachment semantic / vertical-center 信息
代码块、表格、列表、引用块分类可区分并进入分页诊断 ATTR-03 这是复杂样本行为,必须在真实内容上确认 打开复杂图文章节,确认诊断摘要能区分 block kind并能解释分页边界为何调整

Validation Sign-Off

  • All tasks have <acceptance_criteria> or manual checks
  • Sampling continuity: no 3 consecutive tasks without a build or simulator check
  • Wave 0 covers missing infrastructure
  • No watch-mode flags
  • Feedback latency < 180s
  • nyquist_compliant: true set in frontmatter

Approval: pending