# TVU Pack — Figma 资源索引

长青文档。新需求来时，AI 先查这里定位目标设计文件，再读结构、画 mockup。

---

## 起手先读索引（免全局搜索）

**定位需求先读 [`REQUEST-INDEX.md`](REQUEST-INDEX.md)**：需求 ↔ Jira/Slack/Miro ↔ Figma 节点 ↔ design-record/handoff 的映射总表（按需求 `id` 归组）。给任一 Jira key / Figma 节点 ID / Slack 线索，在此一步反查到需求 + 相关文档，不必全局搜索。

**维护**：`docs/specs/`（design-record）与 `docs/handoffs/`（handoff）两类文档必须带 v2 frontmatter（schema 见 [`docs/superpowers/specs/2026-07-06-requirement-provenance-index-design.md`](superpowers/specs/2026-07-06-requirement-provenance-index-design.md)）；同一需求的多篇文档用**同一 `id` slug** 关联。改动任一 design-record / handoff 后跑 `node docs/scripts/build-request-index.mjs` 重生成索引（勿手改 `REQUEST-INDEX.md` / `request-index.json`）。

---

## 设计文件

### LCD Touch Screen (TM1100 等 pack 本机触屏 UI)

- **链接**：https://www.figma.com/design/0054ib0nLmt27bC3QlGDl7/Touch-Screen-v7.7---8.0--20240220
- **fileKey**：`0054ib0nLmt27bC3QlGDl7`
- **版本**：v7.7 / 8.0（2024-02-20 baseline）
- **适用产品**：TM1100 及同系列 pack 的本机 LCD 触屏 UI
- **典型需求场景**：pack 本机操作界面（EDID 设置、Recording、网络配置等本机 UI 改动）

### Config-T Local UI (Pack 远程 Web 配置页)

- **链接**：https://www.figma.com/design/rJJjWWs51n2iFOlCIC7aYG/Config-T---Local-UI---v7.7---8.0--20240220
- **fileKey**：`rJJjWWs51n2iFOlCIC7aYG`
- **版本**：v7.7 / 8.0（2024-02-20 baseline）
- **适用产品**：TM1100 及同系列 pack 的 Config-T 远程 Web UI（浏览器访问 pack IP 的配置页）
- **典型需求场景**：远程 web 端配置项（Recording Bitrate、网络设置等需要在 Config-T 增加/调整的功能）

> **本项目 scope**：只覆盖 TVU 背包（TM1100 等 pack）相关需求。Receiver / SaaS Dashboard / MicroApps 等非背包产品的设计文件不在本项目维护。

---

## 库依赖说明

LCD 和 Config-T 这两个 v7.7-8.0 文件是 **legacy hybrid 文件**：

- 各自挂着 legacy 本地库（`Config T (Local UI) V7.7&v8.0` / 对应 LCD 库）
- 同时也 attach 了 `TVU UX Design System`（新库）

**新增字段时的策略**：先看现有页面用的是哪套组件，**匹配该页面的视觉语言**，不强行换成 tvu-design-system 新库——避免 legacy 页面里出现风格断层。

---

## Page 组织约定（项目特有，补充真源）

> **通用部分在真源**：「page 内建 1 个 Section 包裹整份交付物」+「page 命名 `< JIRA > 标题 YYYYMMDD`」是 **TVU 通用规则**，真源 = `tvu-design-system/docs/internal/design-process.md` § 8 步流程 ①（含反例）+ `mockup-conventions.md` M45。本节**只记这两个 pack 文件特有的**：分区放置位置 + 本文件实测的视觉色值。不在此复述通用规则。

这两个 pack Figma 文件（Config-T / LCD Touch Screen）的 Page 列表按**版本 + 状态**分区，用分隔符 Page（名字是一串 `----`）划分：

```
------------------- V4 (V8.0+) -------------------
-------------- To be confirmed  ----------------   ← V4 新需求放这下面
-------------- To be developed --------------
--------------  Release to QA  --------------
------------------- V3 (V7.7+) -------------------
-------------- To be design  --------------
-------------- To be confirmed  --------------     ← V3 新需求放这下面
-------------- To be developed --------------
--------------  Release to QA  --------------
```

**规则**：
- **新建的需求设计 Page 必须放到对应版本的「To be confirmed」分隔符下面**：
  - **V4**（TM1100 / RPS One / V8.0+）需求 → V4 的「To be confirmed」下
  - **V3**（TM1000 / V7.7+）需求 → V3 的「To be confirmed」下
- `figma.createPage()` 默认追加到**文件末尾**，所以建完**必须用 `figma.root.insertChild(idx, page)` 移到正确分区**（idx = 对应「To be confirmed」分隔符的 index + 1）。
- **Page 命名**：`< JIRA-KEY > 描述 YYYYMMDD`（如 `< V4-2285 + V4-2286 > Embedded Audio ... 20260604`）。
- 设计推进后（进开发 / 上 QA）再由人手动把 Page 移到「To be developed」/「Release to QA」。

**新 feature page 的视觉约定（沿用 V4-1865 等近期页）**：
- **页面 canvas 背景**：深灰 `{r:0.4176, g:0.4152, b:0.4152}`（≈ #6A6A6A）——不要留默认浅灰 0.96（`page.backgrounds = [{type:'SOLID', color:{...}}]`）。
- **交付内容收进具名 Section（禁散落 page），但 BEFORE 与 AFTER 必须各自独立 Section**（便于 dev/QA/PM 版本对比与单独导航；真源 = `tvu-design-system/docs/internal/design-process.md` 步骤① + 反模式）。Section 填充深灰 `{r:0.2667, g:0.2667, b:0.2667}`（≈ #444444）。命名：PRD 组 `<feature> · PRD (Config-T | LCD)`、BEFORE 组 `<feature> · BEFORE — … (Config-T | LCD)`、AFTER 组 `<feature> · AFTER — … (Config-T | LCD)`。`figma.createSection()` → 设 fill/name → `section.appendChild(node)`。**反例**：把 BEFORE/AFTER/PRD 全塞一个 Section（2026-06-15 FB-10014 实证：owner 纠正对比方应分开看，此问题已复发数次）。

> **实证**：2026-06-05 V4-2285/2286，AI 散放 frame 在 page 上 + 页背景留默认浅灰，用户抓"为啥没用一个大 Section + 页背景没沿用深色"。

> **实证**：2026-06-04 V4-2285/2286，AI `createPage` 后页落在文件末尾，用户抓"位置不对，应放 V4 的 To be Confirmed 下面"。
