﻿# HOMEVISTA A端需求线

## 修订记录

| 版本 | 日期 | 变更类型 | 变更摘要 | 修改人 / 来源 |
| --- | --- | --- | --- | --- |
| v0.1 | 2026-07-16 | 初始说明 | 建立 A端需求与原型目录边界。 | 项目结构 / Codex |
| v0.2 | 2026-07-16 | PPOS 基线接入 | 明确 A端独立采用 PPOS v0.2.0 与 VISTA B Surface，不与 C端原型互相依赖。 | 产品结构确认 / Codex |
| v0.3 | 2026-07-16 | A端边界收敛 | 明确 A端只配置项目页面内容、预览、发布与分享供给；Widget 与页面模板定义由平台预置。 | 产品范围确认 / Codex |
| v0.4 | 2026-07-16 | A端边界纠正 | 明确 A端登记和管理 Widget / 模板的注册记录、状态与引用关系，但不管理定义包内部内容。 | 产品范围纠正 / Codex |
| v0.5 | 2026-07-16 | 台账与实例访问 | 明确 A端台账控制新实例生成；B端和C端只使用项目页面实例，模板本身不能被直接访问，模板停用不影响既有已上线实例。 | 产品范围确认 / Codex |
| v0.6 | 2026-07-16 | 实例演进 | 明确模板更新仅用于创建新实例，不得原地影响既有实例、既有链接或旧实例分享状态。 | 产品范围确认 / Codex |
| v0.7 | 2026-07-16 | 模块与登记流程修正 | 明确 Widget / 模板随产品版本部署后由 A端登记，不在 A端上传程序文件；实例创建归入 A端项目管理，B端本期只分享实例。 | 产品评审确认 / Codex |
| v0.8 | 2026-07-16 | 发布内容规则 | 已上线实例读取最近发布快照；项目数据、样式和主题修改需重新预览并发布后才对 C端生效。 | 产品评审确认 / Codex |
| v0.9 | 2026-07-17 | 评审决策收口 | 明确分享关闭与实例下线的区别、MVP 直接发布规则，并确定 HOMEVISTA DEMO 为首个测试项目，缺失数据采用模拟。 | 产品讨论确认 / Codex |
| v0.10 | 2026-07-17 | 实例与分享边界 | 明确 A端固化页面模板、数据资产和项目主题样式形成内容完整的页面实例；B端分享人和可选被分享人属于分享记录。 | 产品讨论确认 / Codex |
| v0.11 | 2026-07-17 | Widget输入与访问边界 | Widget 的资产类型由开发定义的机器可识别内容输入契约表达，A端不配置绑定模式、默认值、空数据或权限消费。实例配置收敛为内容范围、实例有效期和匿名访问，具体顾客授权归 B端。 | 产品讨论确认 / Codex |
| v0.12 | 2026-07-20 | 实例长期有效规则 | MVP 页面实例不设置开始时间、结束时间或有效期选项；实例上线后默认长期有效，直至实例下线。 | 产品讨论确认 / Codex |
| v0.13 | 2026-07-20 | 实例可修改规则 | MVP 允许同一页面实例修改模板、主题和内容；已上线实例的修改先形成未发布工作稿，重新校验、预览和发布后才替换线上快照。 | 产品讨论确认 / Codex |
| v0.14 | 2026-07-20 | 模板发布与实例边界纠正 | 撤回“实例可切换模板”；实例固定使用生成时的模板发布引用。模板代码更新必须形成新发布并经 A端登记启用，只供新实例使用。实例仍可按原模板修改主题和内容。 | 产品讨论纠正 / Codex |
| v0.15 | 2026-07-20 | **重大需求变更：模板编排** | Widget 增加固定、结构性、非结构性三类内容属性和可选表现形式；页面模板改为 A端从 Widget 清单进行区块编排，允许重复 Widget；实例按区块配置内容且不能修改表现形式。 | 销售沟通 / 产品确认 / Codex |
| v0.16 | 2026-07-20 | 页面与文档用语统一 | 原型及正式文档面向业务人员统一使用“内容输入规则、项目页面、展示方式、无需登录即可查看”等名称；技术术语集中在字段字典中维护映射。 | 产品评审 / Codex |
| v0.17 | 2026-07-20 | **重大需求变更：Widget 注册先行** | Widget 改为先在 A端注册并取得唯一标识，再由开发使用该标识实现；上线验证通过后才能启用。内容属性收敛为“自动带入、选择项目内容、自定义内容”、一个内容说明和多项展示方式。 | 产品评审 / Codex |
| v0.18 | 2026-07-20 | **重大需求变更：Widget 展示规格** | Widget 注册属性分为基本信息、内容规则、展示规则；每种展示方式登记说明及支持的小、中、大规格。小规格为 PC 半宽、移动端全宽紧凑；中规格为通栏；大规格为完整可视区域。 | 产品确认 / Codex |
| v0.19 | 2026-07-20 | **重大需求变更：Widget 上线状态简化** | 删除“待开发”，注册后直接进入“待验证”；MVP 不执行自动验证，由操作人员确认 Widget 已完成部署后直接上线启用。自动验证标准保留为后续能力。 | 产品确认 / Codex |
| v0.20 | 2026-07-20 | **重大需求变更：展示规则极简化** | 删除展示方式名称、说明和多层组合；Widget 只复选支持的小、中、大规格，模板只选择一个允许规格，具体表现完全由 Widget 代码决定。 | 产品确认 / Codex |
| v0.21 | 2026-07-20 | Widget 引用规则与术语澄清 | 明确 Widget 是可复用定义；每次加入模板会形成独立的“Widget 区块”，并在该区块上配置展示规格参数。同页可使用不同或相同 Widget，各区块可选择相同或不同规格。 | 产品确认 / Codex |
| v0.22 | 2026-07-20 | 模板区块排序交互 | 页面模板中的 Widget 区块改为通过拖拽手柄直接排序，删除上移、下移按钮；排序结果作为模板结构保存。 | 产品确认 / Codex |
| v0.23 | 2026-07-20 | **重大需求变更：模板注册先行** | 明确页面模板也是开发产物：A端先生成模板唯一标识并登记动态 Widget 区块，开发使用标识实现模板代码，注册后待验证，人工确认上线后才能创建项目页面；通用组件和固定非区块内容由代码实现。 | 产品确认 / Codex |
| v0.24 | 2026-07-20 | 模板字段精简 | MVP 删除模板分类字段及列表分类列，模板通过名称、唯一标识和顾客任务识别，不建立分类体系。 | 产品确认 / Codex |
| v0.25 | 2026-07-21 | **重大信息架构变更：项目上下文先行** | A端两个业务模块统一放入左侧导航，不再通过顶部 Tab 切换；项目管理增加项目选择入口和项目主题管理占位，必须先选项目，再进入该项目的项目页面或主题管理。 | 产品确认 / Codex |
| v0.26 | 2026-07-21 | **重大主题规则变更** | 新增独立项目主题管理 PRD；确认未配置时使用 VISTA 默认主题，每项目最多一个个性化主题，只改变全局配色不改变布局，更新后影响该项目全部页面且无需逐页重新发布。 | 产品确认 / Codex |
| v0.27 | 2026-07-28 | **重大 Widget 数据来源规则变更** | Widget 注册增加单选“数据来源”，MVP 固定为基本信息、楼层、户型、住户、样板间、公共区、外景、资料集、其它；创建项目页面需要选择数据时，以该标识确定可选数据范围。“其它”表示无需选择项目数据。 | 产品确认 / Codex |
| v0.28 | 2026-07-28 | Widget 注册结构优化 | 注册页调整为“唯一标识、Widget 定义、展示规则”三个模块；Widget 标识独立展示且不可修改，名称并入 Widget 定义且允许修改。 | 产品确认 / Codex |
| v0.29 | 2026-07-28 | **重大 Widget 分类与数据来源统一** | 新增独立 Widget 分类并沿用 C端七类功能模块分类；数据来源改按 C端内容资产对象命名，将公共区改为公共空间、资料集改为资料文件，并把外景拆为建筑与楼栋、眺望与景观。 | 产品确认 / Codex |
| v0.30 | 2026-07-28 | **重大 MVP 样例范围收敛** | 首批登记清单删除通用“自定义图文”Widget，待明确业务任务、内容边界和使用场景后再单独注册；保留“自定义内容”作为 Widget 可选的内容配置方式。 | 产品确认 / Codex |
| v0.31 | 2026-07-28 | **重大文档结构重构** | 正式需求按 Widget管理、页面模板管理、项目页面管理、项目主题管理拆为四份唯一事实源；原01～05移入archive，删除A端04-01独立样例和混合总PRD结构。 | 产品确认 / Codex |
| v0.32 | 2026-07-28 | **重大 Widget 编辑规则变更** | Widget注册后除标识外的登记信息全部允许修改，保存后状态保持不变；MVP不实施强制下线或重新验证。 | 产品确认 / Codex |
| v0.33 | 2026-07-28 | **重大 Widget 编辑交互变更** | Widget注册与编辑统一使用同一套全屏表单；完整字段编辑不再使用弹窗，弹窗只保留短确认操作。 | 产品评审纠正 / Codex |
| v0.34 | 2026-07-28 | **重大页面模板编辑与固化规则变更** | 删除人工 Widget区块名称，重复 Widget由系统编号；页面模板允许通过全屏表单编辑且状态不变，只影响以后新建页面。项目页面创建时固化模板结构。 | 产品确认 / Codex |
| v0.35 | 2026-07-28 | **重大项目页面创建与内容配置变更** | 新建页面直接进入全屏配置并在页面内选择模板，不再弹出模板选择框；页面统一读取项目主题。页面内每个 Widget区块独立设置 C端展示名称和五语言文案，可使用AI生成待确认译文；项目数据改为弹窗卡片选择。MVP删除资料文件、资料集和单文件夹引用能力。 | 产品确认 / Codex |
| v0.36 | 2026-07-28 | **重大项目主题生成流程与范围变更** | 项目主题从占位升级为三步生成流程，支持基础背景、文字、链接、主要按钮、项目菜单、边框颜色、受控边框宽度和圆角；全流程实时预览，应用后影响项目全部页面。系统状态色继续锁定，布局、字体和内容不允许修改。 | 产品提出 / Codex整理 |
| v0.37 | 2026-07-29 | **重大交付结构变更：A端静态化输出** | A端作为当前正式静态交付对象，统一从 `/` 进入，需求原文输出到 `/docs/`，可运行原型输出到 `/prototype/`；C端尚未完成，本轮不进入正式构建产物。 | A端评审完成 / 产品确认 |
| v0.38 | 2026-07-29 | **重大交付结构纠正：恢复 A/C 分端入口** | 撤回由 A端占用 `/docs/` 与 `/prototype/` 的交付方式；A端恢复为 `/docs/a/`、`/prototype/a/`，C端保留 `/docs/c/`、`/prototype/c/`，根入口恢复四个分端入口。 | 产品纠正 / Codex |
| v0.39 | 2026-07-30 | **重大 Widget 注册与元数据边界变更** | Widget标识改为人工填写、校验唯一性并在首次上线后锁定；名称、分类、简介为A端可编辑管理字段；内容配置方式、数据来源、选择数量收敛为代码提供、A端按标识读取的只读 Widget元数据，并只在注册/编辑页展示；MVP从 Widget、模板和项目页面链路删除展示规格。 | 产品确认；产品评审补齐元数据读取闭环；列表展示精简 / Codex |
| v0.40 | 2026-07-30 | **重大 A端导航与项目上下文变更** | 删除Widget与项目两个纯分组标题；将“选择项目”改为一级导航“项目管理”，未选项目时隐藏项目子页面，选择项目后展开项目页面和项目主题并默认进入项目页面。 | 产品确认 / Codex |
| v0.41 | 2026-07-30 | **重大项目页面对象与发布流程变更** | 项目页面增加“系统默认提供（A端制作）/客户自定义（B端制作）”来源记录；模板只生成初始页面模块并保留来源记录，页面创建后可独立增删改模块；实例阶段统一使用“模块名称”，当前草稿必须完成预览后才能发布或重新发布。 | 产品确认；DeepSeek产品评审补齐预览完成、元数据快照和删除顺序规则 / Codex |
| v0.42 | 2026-07-30 | **重大项目页面模块排序变更** | 项目页面增加与页面模板一致的拖拽排序；排序结果属于当前页面，保持模块稳定编号及内容对应关系，并使当前草稿已完成的预览失效。 | 产品确认 / Codex |
| v0.43 | 2026-08-05 | **重大项目主题品牌标识变更** | 项目主题新增“品牌标识”步骤，可上传安全 SVG/GIF 作为页面加载等待标识，并可隐藏常规 C端 `Powered by HOMEVISTA` 平台署名；两项均为项目级统一配置。 | 产品确认 / Codex |
| v0.44 | 2026-08-05 | **重大品牌素材拆分变更** | 项目主题品牌标识拆为加载中 GIF、加载中动画 JSON、品牌 SVG 和品牌显示开关；GIF 与 JSON 分别用于不同加载场景，不定义优先级或兜底；品牌标识可更换或隐藏，四步导航改为自适应宽度。 | 产品确认 / Codex |
| v0.45 | 2026-08-05 | 主题预览边界收口 | 项目主题预览明确为静态视觉样本，不模拟项目页面名称、项目菜单、页面切换或页面数量。 | 产品确认 / Codex |
| v0.46 | 2026-08-05 | 项目术语修正 | 项目管理清单中的“项目标识”统一更名为“VISTA URL”；仅调整展示用语。 | 产品确认 / Codex |
| v0.47 | 2026-08-24 | **重大通用模板文档与跨端边界补充** | 新增通用模板专项 PRD；明确该模板系统预置、不可维护，并可由 A端和 B端创建后按相同规则组装页面实例。 | 产品确认 / Codex |
| v0.48 | 2026-09-02 | **重大页面实例、生效与素材同步规则统一** | 新增 ABC端统一修改说明；页面生成后与模板完全解耦，素材变化由页面同步读取，页面保存成功后立即生效，不生成页面草稿、发布快照或历史版本。 | 产品确认 / Codex |
| v0.48 | 2026-09-02 | **重大页面访问授权与主题边界补充** | 明确页面第一次保存后可进入已启用状态，但顾客访问必须另有 B端有效分享权限；页面继续读取项目当前主题，主题变化不属于模板变化；当前系统尚未上线，不存在历史页面迁移。 | 产品补充确认；同一连续编辑时段沿用 v0.48 / Codex |
| v0.49 | 2026-09-03 | 文档表达清理 | 现行说明改为直接描述页面实例、素材、主题和访问权限的当前业务逻辑；旧版本差异仅保留在修订记录与统一修改说明中。 | 初步需求评审整改 / Codex |
| v0.50 | 2026-09-03 | **重大：B端 V0.251 跨端规则对齐** | 通用模板正式更名为自由模板，补充 A端维护与 B端自动使用规则；页面公开、链接启停和客户识别全部归 B端固定链接管理；A端移除匿名访问配置。 | B端最新正式 PRD / Codex |
| v0.50 | 2026-09-03 | **重大：自由模板系统维护边界确认** | 自由模板由产品与研发随系统版本维护；A端操作人员只读查看，不提供编辑、改名、复制、停用或删除入口。 | 产品确认；同一连续编辑时段沿用 v0.50 / Codex |
| v0.50 | 2026-09-03 | **重大：多 Widget 独占窗口与尺寸配置取消** | 一个页面可包含多个 Widget，保留重复添加和有序编排；每个 Widget 在顾客端独占内容窗口。删除微、小、中、大尺寸和布局方案；导航或演示模式切换不由 A端配置。 | 产品纠正；同一连续编辑时段沿用 v0.50 / Codex |
| v0.51 | 2026-09-04 | **重大：恢复 Widget 展示规格并保留 C端切换规则** | A端恢复 Widget 支持展示规格、模板逐 Widget 规格选择和自由模板页面逐 Widget 规格编辑；C端仍按独占窗口逐个展示，并通过导航或演示模式切换。 | 撤回 2026-09-03 17:16 的尺寸取消要求 / Codex |

本目录独立承载 HOMEVISTA A端（装配交付与服务支持端）的需求与原型，与 C端 `C端需求/` 并列管理；两端不共用编号和交付范围。

## 目录职责

```text
A端需求/
├── README.md
├── 修改说明/
│   └── 2026-09-02-ABC端页面实例统一规则修改说明.md
├── 输出稿/
│   ├── 01-A端Widget管理PRD.md
│   ├── 02-A端页面模板管理PRD.md
│   ├── 03-A端项目页面管理PRD.md
│   ├── 04-A端项目主题管理PRD.md
│   ├── 05-A端自由模板PRD.md
│   └── archive/
└── prototype/
```

## 正式需求

| 编号 | 文档 | 唯一负责的业务对象 |
|---|---|---|
| 01 | `输出稿/01-A端Widget管理PRD.md` | Widget列表、注册、编辑、状态和可用清单。 |
| 02 | `输出稿/02-A端页面模板管理PRD.md` | 页面模板列表、注册、编辑、Widget 编排和状态。 |
| 03 | `输出稿/03-A端项目页面管理PRD.md` | 项目选择、页面生成、编辑、素材引用、预览、保存和访问状态。 |
| 04 | `输出稿/04-A端项目主题管理PRD.md` | 默认主题、个性化主题新增、编辑、品牌标识、应用和恢复默认。 |
| 05 | `输出稿/05-A端自由模板PRD.md` | 全系统唯一自由模板的系统维护、A端只读展示、A端选择、B端自动使用及页面独立规则。 |

README只负责说明文档结构、对象关系和A/C边界，不重复五份PRD中的功能、字段和验收标准。

本轮跨端重大规则变更统一入口为 `修改说明/2026-09-02-ABC端页面实例统一规则修改说明.md`。各端 PRD 负责展开本端功能，但不得与该说明中的页面实例、模板解耦、素材同步和保存生效规则冲突。

## 静态交付

当前仓库只生成一个 `dist/`，并按项目级 A/C 分端方案分别发布需求与原型：

| 路径 | 输出内容 |
|---|---|
| `/` | HOMEVISTA 静态交付入口，直接提供 A端文档、A端原型、C端文档、C端原型四个入口。 |
| `/docs/a/` | 五份现行 A端 PRD、`source/` 和 `archive/` 文件列表。 |
| `/docs/a/*.md` | 带 UTF-8 BOM 的 A端原始 Markdown 文件，不在站内渲染。 |
| `/prototype/a/` | A端 VISTA B 可运行原型。 |
| `/docs/c/` | C端现行需求文件列表。 |
| `/prototype/c/` | C端 VISTA C 可运行原型。 |

仓库根目录执行 `pnpm build`，统一生成一个 `dist/`。本次纠正只恢复 A/C 分端路径和根入口；A端保持已完成内容，C端继续使用仓库中已经提交的版本，尚未完成的本地 C端修改不进入本次纠正提交。

## A端产品结构

```text
Widget管理
页面模板
项目管理
├── 项目页面
└── 项目主题
```

Widget和页面模板是开发产物，A端只登记和管理其身份、业务属性、状态及引用关系，不管理程序和代码内容。进入项目管理后先选择项目，再展开该项目的项目页面和项目主题。

项目页面在已选项目中使用已启用模板形成初始配置，第一次保存成功后生成独立页面实例并进入已启用状态。一个页面可包含多个 Widget，每个 Widget 在顾客端独占内容窗口，顾客通过页面导航或演示模式按钮切换。A端维护 Widget 实例、内容、顺序和逐 Widget 展示规格，但不配置导航、演示模式按钮或切换动效。展示规格不决定页面同时展示数量；页面实例使用自身保存的 Widget 结构和配置，来源模板只用于追溯；模板更新作为之后新建页面的初始内容。系统为每个页面维护一份当前有效内容，每次保存成功后立即替换。页面保存素材引用，并在读取时使用素材源最新有效内容。

页面已启用表示可以进入 B端页面库。A端页面进入页面库时，由 B端创建唯一固定链接；链接启停、公开状态、客户关联和客户识别均由 B端管理，A端不提供对应配置。项目主题与模板是独立对象，页面始终读取项目当前有效主题。

跨对象约束由动作发起方负责：

- 模板选择 Widget 的约束写在页面模板管理PRD。
- 项目页面选择来源模板、编排 Widget 及配置其内容的约束写在项目页面管理PRD。
- 主题对全部项目页面的影响写在项目主题管理PRD。
- 被引用对象的自身字段和状态只在对应对象PRD中定义。

## 历史归档

重构前的01～05文档已移入 `输出稿/archive/`，只用于追溯历史讨论和修订记录，不再作为现行需求。归档与新文档的迁移关系见 `输出稿/archive/README.md`。

## 与 C端文档的边界

| 事项 | 唯一事实源 |
|---|---|
| 项目可调用的内容资产 | `C端需求/01-内容资产字典.md` |
| C端业务 Widget 的顾客任务、启用与降级规则 | `C端需求/02-最小功能模块PRD.md` |
| C端营销页面模板分类与 Widget 组合规则 | `C端需求/03-页面模板索引与通用规则.md` |
| 单个 C端页面需求 | `C端需求/04-xx-*.md` |
| A端 Widget 登记和状态 | `A端需求/输出稿/01-A端Widget管理PRD.md` |
| A端页面模板登记和状态 | `A端需求/输出稿/02-A端页面模板管理PRD.md` |
| A端项目页面配置、保存和访问状态 | `A端需求/输出稿/03-A端项目页面管理PRD.md` |
| A端项目主题配置 | `A端需求/输出稿/04-A端项目主题管理PRD.md` |
| 自由模板的跨端使用与模板保护 | `A端需求/输出稿/05-A端自由模板PRD.md` |
| ABC端页面实例统一规则与修改方案 | `A端需求/修改说明/2026-09-02-ABC端页面实例统一规则修改说明.md` |

具体 C端页面的 Widget组合、顾客内容和视觉表现不得在A端重复定义。A端只引用已经开发并注册的模板身份。

## PPOS 基线接入

A端原型采用 `PPOS v0.2.0`（提交 `e3c701082cfd3eeaa37bd3c57b8be1b5a3d98362`）的受控基础快照，并选择 **VISTA B Surface**：管理/装配页面使用 B 端的表格、表单、工具栏、上传、发布状态和对话框契约；不得使用 VISTA C 的液态玻璃页面、媒体栏或顾客侧导航。

`A端需求/prototype/` 与 `prototype/c/` 分别维护自己的运行时、路由、模拟数据、构建入口和验收结果。后续每次 PPOS 升级，两个工程分别按需采用，不以复制另一个工程的代码代替升级。
