﻿# newVISTA A端 MVP 跨文档评审

> 评审日期：2026-07-28
> 评审范围：Widget管理、页面模板管理、项目页面管理、项目主题管理四份正式PRD，以及当前A端原型
> 评审方式：DeepSeek产品视角第二意见 + Codex本地文档与原型复核
> 当前状态：七项产品结论及直接修正项已确认，四份PRD与原型已完成同步修订

## 1. 结论

A端MVP的主业务链路已经成立：

> 注册并启用 Widget → 注册并启用页面模板 → 在项目中选择模板并配置内容 → 发布项目页面 → B端分享 → C端访问

四个管理对象的边界也基本清楚：

- Widget管理负责登记可复用能力及其内容配置规则，不管理 Widget内部代码和表现；
- 页面模板管理负责登记开发完成的页面模板及其动态 Widget结构，不把模板直接作为访问页面；
- 项目页面管理负责在具体项目中固化模板结构、配置内容并发布可分享页面；
- 项目主题管理负责项目级配色和组件外观，主题变化动态影响项目全部页面，不改变页面布局。

本次没有发现需要推翻现有产品结构的问题，但发现：

- 1项会直接阻断“选择项目内容”正确落地的产品定义缺口；
- 1项当前原型未完整实现发布快照的P0一致性问题；
- 6项需要产品确认后才能统一文档和原型的业务规则；
- 4项可以直接修正、不需要再次拆成产品讨论的文档或原型问题。

## 2. 评审优先级

| 等级 | 含义 |
|---|---|
| P0 | 不解决就无法稳定跑通MVP主流程，或会让已发布页面出现错误内容。 |
| P1 | 主流程可以演示，但业务规则存在两种解释，开发和测试会作出不同实现。 |
| P2 | 不阻断MVP，但文档、原型或验收表达需要统一。 |

## 3. 跨对象规则矩阵

| 对象 | 唯一标识 | 可编辑范围 | 启用门槛 | 对下游的固化规则 | 停用或修改后的影响 |
|---|---|---|---|---|---|
| Widget | `widget_id`，注册后不可修改 | 名称、分类、内容配置方式、数据来源、内容说明、支持规格 | 待验证后人工确认上线 | 模板添加 Widget时记录当时的内容规则和展示规格 | 不再进入新模板；既有模板和项目页面不自动改变 |
| 页面模板 | `template_id`，注册后不可修改 | 除标识外的登记信息和 Widget结构 | 待验证后人工确认上线 | 项目页面首次保存时固化模板结构 | 新建页面使用最新模板；既有页面不跟随模板修改或停用 |
| 项目页面 | `page_id`，系统生成 | 页面名称、Widget展示名称、Widget内容、访问方式；模板和结构不可修改 | 发布前完成内容检查和预览 | 发布时形成顾客访问使用的发布内容 | 已上线页面的编辑不应立即改变顾客看到的内容；重新发布后才切换 |
| 项目主题 | `project_id`下最多一套当前主题 | 允许的颜色、边框宽度和圆角；不允许改布局和系统状态色 | 预览、确认后应用 | 不固化进项目页面发布内容，访问时读取项目当前主题 | 修改后影响项目全部页面，包括已上线页面 |

该矩阵中的“模板和内容固化、主题动态读取”目前逻辑一致，不建议改成同一种更新机制。

## 4. 必须处理的问题

### R-01 P0：项目内容的单选或多选没有事实来源

**现状**

- Widget PRD写“选择项目内容”可以是单选或多选；
- 项目页面PRD写“单选或多选由 Widget决定”；
- Widget登记字段中没有“单选 / 多选”；
- 当前项目页面原型使用A端统一数据选择弹窗，并且所有数据都按多选处理。

**问题**

如果数据选择弹窗由A端统一提供，A端必须知道这个 Widget允许选一个还是多个。现在既没有登记字段，也没有可以由A端读取的明确规则，因此开发无法从PRD判断户型列表、楼栋、样板间等数据到底应该怎样选择。

**建议**

MVP在以下两种方案中选择一种：

1. 在 Widget登记中增加“内容选择数量：单选 / 多选”，只在“选择项目内容”时出现；这是最直接、最容易验收的方案。
2. 不增加登记字段，由 Widget代码自行提供内容选择控件；但这会推翻当前A端统一数据弹窗和统一数据卡片的原型方案。

Codex建议采用方案1。它登记的是A端生成页面必须知道的业务规则，不是 Widget内部展示实现。

### R-02 P0：当前原型的发布快照只保存了 Widget内容

**现状**

项目页面PRD规定，已上线页面修改内容或访问方式后，顾客仍看到上一次发布内容，直到重新发布。当前原型只保存了 `publishedWidgetContents`，并且只比较 Widget内容是否有未发布修改。

**影响**

已上线页面修改以下内容时，原型不会正确标记“有尚未发布的修改”：

- 页面名称；
- 是否允许未登录顾客查看；
- 以后增加到页面发布内容中的其他页面级字段。

预览已发布版本时，上述字段也会错误读取编辑中的当前值，而不是上一次发布值。

**建议**

发布快照应覆盖顾客访问实际使用的全部页面级内容，而不是只保存 Widget内容。项目主题仍不进入发布快照，继续动态读取项目当前主题。

该问题不需要新增产品决策，属于按现有PRD修正原型和后续数据定义。

## 5. 需要产品确认的问题

### R-03 P1：模板引用的 Widget停用后，允许编辑到什么程度

当前规则是：模板中只要存在已停用 Widget，模板编辑后就不能保存，必须替换该 Widget或先恢复 Widget。

这会造成一个副作用：即使只想修改模板名称，也会因为历史 Widget已停用而无法保存。

**Codex建议**

- 保留历史停用 Widget区块；
- 允许修改模板名称等不涉及该区块的登记信息；
- 不允许新增已停用 Widget；
- 当用户修改、替换或重新选择该历史区块时，再要求使用已启用 Widget。

这样既不破坏历史模板，也不会让停用 Widget重新进入新结构。

### R-04 P1：模拟数据能否发布

项目页面PRD一方面允许测试项目在缺少数据时使用明确标记的模拟数据，另一方面又写“正式发布前仍需完整项目数据”。

这里的“正式发布”可能有两种理解：

- A端任何“发布页面”都不能包含模拟数据；
- 测试环境或测试项目允许发布模拟页面，只是不允许作为真实项目对客使用。

**Codex建议**

允许测试项目发布明确标记的模拟页面，用于跑通A→B→C链路；真实项目的对客发布不得包含模拟数据。否则首个缺少完整数据的测试项目无法真正验证发布和分享流程。

### R-05 P1：主题可读性检查是警告还是阻断

主题PRD的用例写“可读性校验不通过时禁止应用”，但其他章节又写最低对比度阈值尚待设计系统补充。当前原型只显示警告，不阻断应用。

没有明确阈值时，系统无法稳定判断什么叫“不通过”，因此当前两种规则不能同时成立。

**Codex建议**

MVP只做可读性警告和人工预览，不阻断应用；等设计系统给出明确对比度阈值后，再增加自动阻断验收标准。

### R-06 P1：恢复默认主题后是否保留个性化主题

正式PRD仍将此项列为待确认；当前原型选择了“恢复默认时删除个性化主题值”。

**Codex建议**

恢复默认只切换当前使用模式，不删除最近一次个性化主题。再次进入时可以继续编辑或重新启用，但MVP不提供主题历史版本列表。原因是主题配置项较多，恢复默认不应等于清空劳动成果。

### R-07 P1：A端下线项目页面后，B端分享记录如何表现

当前PRD已经规定：

- A端下线后，既有链接不得继续展示页面内容；
- B端已有分享记录不被删除。

还缺少顾客打开既有分享链接时的统一表现口径。

**Codex建议**

B端分享记录继续保留，顾客打开链接时由C端显示“页面已下线或暂不可用”，不得继续展示旧发布内容。该状态不等于分享记录失效或被删除。

### R-08 P2：VISTA默认主题升级后，哪些项目跟随更新

当前PRD把该问题列为待确认。

**Codex建议**

- 正在使用VISTA默认主题的项目自动跟随默认主题升级；
- 使用个性化主题的项目继续使用自己保存的完整主题值，不自动混入新版默认配色；
- 系统状态色始终跟随VISTA统一规范。

该问题不阻断当前原型评审，但应在进入正式开发前确认。

## 6. 可以直接修正的问题

以下内容不需要再拆成产品决策，用户确认本报告后可随下一批修订统一处理：

1. **模板验收用语不可执行**
   `AC-T11`使用“打开模板自身地址”，但产品规则又明确模板没有顾客访问地址。应改为“系统不提供模板访问或分享入口，输入模板标识不能生成顾客页面”。

2. **切换新建页面模板时缺少清空确认**
   PRD要求首次保存前更换模板必须提示未保存的 Widget内容会被清空；当前原型直接切换并清空。

3. **模拟数据没有明确标记**
   PRD要求模拟数据必须明确标记；当前项目数据选择弹窗中的演示数据没有“模拟数据”标识。

4. **“其它”数据来源的含义需要写得更直接**
   “其它”不是无法获取内容，而是“不需要由A端从项目数据中选择内容”。它可以与自动带入或自定义内容配合使用；不能作为“选择项目内容”的有效数据来源。

## 7. DeepSeek意见的采纳与剔除

### 采纳或转化后采纳

- Widget内容规则和项目页面选择控件之间缺少单选 / 多选事实来源；
- 历史停用 Widget可能导致模板任何编辑都无法保存；
- 主题对比度阈值、恢复默认后的数据保留存在待确认；
- 模板“自身地址”的验收写法不可执行；
- 需要更明确地区分模板结构固化、项目页面发布快照和项目主题动态读取。

### 不采纳或放到MVP以后

- 为Widget和模板增加自动验证、复杂检查清单或强制重新审核：与已确认的MVP人工确认上线规则冲突；
- 增加角色权限、并发编辑锁、版本回滚、主题历史列表：不属于当前最小闭环；
- 为Widget补项目页面引用数量：当前“被模板使用”用于判断新模板影响，停用又不改变既有页面，MVP没有必要扩大统计范围；
- 讨论API、数据库事务、定义包格式和制品库：属于工程设计，不是本轮产品需求；
- 把模板后台改造成完整页面搭建器：与“模板仍由开发实现，A端只登记动态Widget结构”的已确认边界冲突。

说明：DeepSeek对Widget、页面模板和项目主题给出了有效第二意见；项目页面文档连续三次返回空结果，因此本报告没有虚构DeepSeek对此文档的结论，项目页面部分由Codex结合正式PRD和当前原型独立复核。

## 8. 已确认的产品结论

2026-07-28产品确认以下七项均按Codex建议执行；用户回复中的第8项按同时同意第6节直接修正项处理。

1. “选择项目内容”的 Widget在登记时增加“单选 / 多选”。
2. 模板含历史停用 Widget时，允许保存模板名称等未触碰该区块的修改。
3. 测试项目允许使用明确标记的模拟数据完成发布和分享；真实项目禁止使用模拟数据对客发布。
4. MVP主题可读性检查只警告、不阻断应用。
5. 恢复默认主题后保留最近一次个性化主题配置。
6. A端下线项目页面后，B端记录保留，C端打开显示页面不可用。
7. 使用VISTA默认主题的项目自动跟随默认主题升级，个性化主题项目不跟随，系统状态色继续使用VISTA统一规范。

## 9. 建议人工评审重点

人工评审不需要逐字重读四份文档，优先检查以下内容：

1. 第3节跨对象规则矩阵是否符合你的业务理解；
2. 第8节七个产品问题是否接受建议结论；
3. “模板结构固化、页面发布内容固化、项目主题动态更新”这三种更新规则是否符合预期；
4. A端匿名访问、B端顾客授权、C端页面不可用提示的边界是否清楚；
5. 是否接受“测试项目可发布模拟数据，真实项目不可对客发布模拟数据”的环境边界。

产品问题确认后，再一次性更新四份PRD的修订记录、正文、验收标准和原型，避免针对零碎问题产生多轮版本记录。
