# 交互原型验证记录

2026-10-24｜交互与高保真交付｜规范 1.0.0｜指标 V5

当前已完成离线实现及本地状态检查。**39 组 Node 测试全部通过**，覆盖 52 项 prototype AC 的模型断言映射。负责人已独立完成两条主流程及关键边界的浏览器走查，证据见 [原型阶段验收](../../harness/原型阶段验收.md)；其中 37 组是该历史阶段的实际数量，末轮新增 2 组故事板终点回归。本文不从 Node 结果推断全部 UI 或真实服务已通过。4 项真实接入 AC 未执行，7 项仅规格 AC 不转成模拟业务成果。

## 已执行检查

| 检查 | 命令 / 证据 | 结果与边界 |
| --- | --- | --- |
| 模型与回归 | `node --test --test-reporter=tap model.test.cjs`；test-results.tap | 39 组通过，0 失败；模拟状态，不测真实网络/计费/播放器 |
| PRD 同步 | `node sync-spec.mjs --check` | JSON 及 4 份 PRD hash 一致；源 hash见 spec-snapshot.json |
| 入口、页面、语法、离线引用 | `node validate.mjs`；static-validation.json | 检查 4 个入口、8screen、引用和脚本语法；不冒充浏览器渲染检查 |
| 逐 AC 映射 | coverage.json | 63 项均列出模型/浏览器/生产状态；52 项本地断言映射、4 项需生产、7 项仅规格 |
| 用户端与运营端页面 | [负责人原型验收记录](../../harness/原型阶段验收.md) | file:// / HTTP、两条主流程、关键异常、390 × 844 / 1440 × 1000、对话框 ESC 与需求注释通过；不是逐项 52 AC 全量 UI 验收 |
| 高保真结构 | [Figma 最终结构审计](../../设计/figma/structural-audit-final.json) | 9 构图、52 变量、20 主组件；检测范围内无节点越界与意外字体 |
| 高保真来源与可视检查 | [负责人高保真验收](../../harness/高保真阶段验收.md)、[设计交付说明](../../设计/设计交付说明.md)、[导出清单](../../设计/export-manifest.json) | 实际 Figma PNG 5 张；本地备份单独标注来源。负责人已复验桌面/手机可读、无横向溢出及 45 秒终点 |

## 独立代码复核发现与关闭

以下发现由通用代码复核和 JavaScript 专项复核提出，作者修复；独立复核是否关闭以其最终回执为准。

| 发现 | 修复 | 回归证据 |
| --- | --- | --- |
| 已取消/关闭的播放仍能累计进度 | 模型校验终态、身份、权限、首帧与当前可见播放screen | REGRESSION-CLOSED-PLAYER |
| 42→45映射后新版再次返回错误落在45秒 | 映射匹配旧release/位置，成功后新版可用并清旧映射 | REGRESSION-MAPPING |
| 拒绝后申诉没有可执行复核路径 | 申诉绑定当前revision/epoch，审核员可独立复核；不自动公开 | REGRESSION-APPEAL |
| 损坏localStorage容器仍被接受 | 校验必需容器、关键字段、数组及数值；失败不给旧状态进入UI | REGRESSION-STORAGE |
| 仅保留观看权令付费任务永久运行 | 明确终结未交付任务并退款一次；观看仍合法；恢复不续旧任务 | REGRESSION-RESTRICTION |
| seedPlan未转义数值可被污染状态注入HTML | 数值仍转义，存储入口验证整数 | REGRESSION-STORAGE；专项静态复核 |
| 报价自然到期只变倒计时不显示新报价操作 | 到期边界仅重渲染一次，弹窗结束后可新报价 | 专项代码复核；不把场景注入视为真实等待 300 秒计时测试 |
| 切运营/创作仍累加隐藏播放 | 离开播放screen关闭attempt，timer只在可见P1/P3计时 | REGRESSION-HIDDEN-PLAYER |
| 高风险举报判不成立后永久不可看 | 重算其他hold/违规与权利，只恢复合法访问，重新排队推荐 | REGRESSION-REPORT-DISMISSAL，含其他违规/撤权负例 |
| 后台小样完成即记录实际观看 | foreground守卫；回前台才记录viewedAt/报价，技术ready独立保留 | REGRESSION-BACKGROUND-PREVIEW |
| 浅色壳层按钮在深色系统主题下白字难读 | 壳层按钮明确深色，手机内部按钮保持原色 | 负责人 Chrome 回看通过，移动端与桌面均可读 |
| 重置后旧 #ops 路由残留 | 确认重置后统一写入 #viewer | 专项代码复核及负责人末轮浏览器复验 |
| 分支 45 秒与播放器 90 秒标注矛盾 | 按原剧 / 分支显示 90 / 45 秒，本地计时到终点暂停 | 新增两组终点回归；负责人真实播放至 45 / 45，按钮变为禁用的 Storyboard complete |
| HTTP favicon 404 | 使用独立本地 SVG favicon | 负责人 HTTP 刷新验证 200、无相关控制台错误 |

## 关键限制

52 个 AC 的模型断言不能覆盖浏览器视口、键盘、手机布局、事件可见性时序及所有文案；这些由实际 UI 检查补齐。实际权限、旧URL拒绝、跨地区探测、账务原子性、供应商费用、预算B、设备seek及原生播放器区间须生产接入另验。成本未知明确显示未接入，不用演示余额代替真实成本。

通用 prd-prototype 验证器假设“登录/仪表盘、每模块静态HTML、在线字体”，与已批准的单入口动态screen和离线约束不同。项目采用 `validate.mjs` 检查实际页面契约，保留必要导航、所有真实链接、通用对话框与业务测试；不为了模板检查新增无需求的仪表盘或虚构3条业务数据。

高保真精修、原创视觉资产和 Figma 编辑稿在原型流程与异常经独立验收后完成。设计文件中的所有模拟边界、私有默认与公开 / 推荐双门语义保持不变。Figma 连接器额度耗尽和备用浏览器 403 导致仅实际收到 5 张云端 PNG，已在设计交付说明与清单明示，不将本地备份计作 Figma 导出。
