docs: refine A01 login entry hierarchy

This commit is contained in:
rain
2026-07-13 13:00:34 +08:00
parent 040c2cb37e
commit 1c9830c550
8 changed files with 325 additions and 13 deletions
@@ -1,41 +1,43 @@
# A-01 启动 / 登录引导设计记录 # A-01 启动 / 登录引导设计记录
> 状态:设计方案已确认,D2 / A-01 进行中;**尚未完成布局验收或页面实现**。 > 状态:文字注册入口方案已确认,D2 / A-01 进行中;**尚未完成新版效果稿、布局验收或页面实现**。
> >
> 本页设计事实的唯一归档位置为本文件。旧的 `2026-07-13-a01-login-guide-design.md` 与 `2026-07-13-a01-login-guide.md` 仅保留为失效历史,不可作为实现或推进下一页的依据。 > 本页设计事实的唯一归档位置为本文件。旧的 `2026-07-13-a01-login-guide-design.md` 与 `2026-07-13-a01-login-guide.md` 仅保留为失效历史,不可作为实现或推进下一页的依据。
## 1. 已归档的美术锚点 ## 1. 已归档的美术锚点
- 文件:[`screens/A01-启动登录引导-效果稿-v1-显式协议.png`](screens/A01-启动登录引导-效果稿-v1-显式协议.png) - 文件:[`screens/A01-启动登录引导-效果稿-v1-显式协议.png`](screens/A01-启动登录引导-效果稿-v1-显式协议.png)
- 效果稿 v2[`screens/A01-启动登录引导-效果稿-v2-独立注册.png`](screens/A01-启动登录引导-效果稿-v2-独立注册.png),记录此前“四个独立按钮”的尝试;该入口结构已失效,不作当前方案依据。
- 当前效果稿 v3[`screens/A01-启动登录引导-效果稿-v3-文字注册入口.png`](screens/A01-启动登录引导-效果稿-v3-文字注册入口.png),体现本记录第 2 节的当前入口层级。
- 用途:保留本轮已确认的“家祠卷轴”欢迎页美术方向,不作为可直接还原的代码布局图,也不作为功能图标资产。 - 用途:保留本轮已确认的“家祠卷轴”欢迎页美术方向,不作为可直接还原的代码布局图,也不作为功能图标资产。
- 画面方向:朱砂家祠红头、暖宣纸主体、古金细线与云纹、墨褐标题、两侧淡墨建筑/竹影与底部山水。登录欢迎页后续必须使用独立的红头/宣纸背景组合,不复用 G01 的列表页大山水底图。 - 画面方向:朱砂家祠红头、暖宣纸主体、古金细线与云纹、墨褐标题、两侧淡墨建筑/竹影与底部山水。登录欢迎页后续必须使用独立的红头/宣纸背景组合,不复用 G01 的列表页大山水底图。
## 2. 已确认的页面结构与交互 ## 2. 已确认的页面结构与交互
- 标题区保留“家谱 / 为家族留存可传承的记忆”,使用美术锚点中的朱砂家祠红头、暖宣纸、古金云纹、墨褐文字与淡墨建筑/竹影层次。 - 标题区保留“家谱 / 为家族留存可传承的记忆”,使用美术锚点中的朱砂家祠红头、暖宣纸、古金云纹、墨褐文字与淡墨建筑/竹影层次。
- 操作区从上到下固定为四个独立入口:账号密码登录(朱砂主按钮)、手机验证码登录、微信登录、注册账号(古金描边按钮)。四个按钮均须单行显示 - 操作区只保留两个大按钮和一个文字入口:朱砂主按钮“登录”、古金描边按钮“微信登录”,以及其下方的“还没有账号?注册账号”。“注册账号”仅为朱砂红可点击文字,不再作为独立大按钮
- 入口顺序:账号密码登录为主入口;手机号验证码登录、微信登录与注册账号为入口。 - 入口顺序:登录为主入口;微信登录为次入口;注册账号为辅助文字入口。
- 账号密码入口前往 `A-02`;手机号验证码入口前往 `A-03`微信入口由 `A-03` 承接授权中、取消与失败回跳状态。 - “登录”前往 `A-02`,且 `A-02` 内固定使用“账号密码登录 / 手机验证码登录”双标签切换,默认显示账号密码登录。微信入口由 `A-03` 承接授权中、取消与失败回跳状态。
- 注册账号入口前往 `A-04`;忘记密码属于 `A-05`,不在 A-01 新增入口。 - 注册账号入口前往 `A-04`;忘记密码属于 `A-05`,不在 A-01 新增入口。
- 协议必须为用户主动勾选:初始未勾选,可分别打开《家谱用户协议》和《隐私政策》。不得使用“登录即表示同意”或任何默认同意文案;未勾选时登录操作应明确提示用户先确认协议。 - 协议必须为用户主动勾选:初始未勾选,可分别打开《家谱用户协议》和《隐私政策》。不得使用“登录即表示同意”或任何默认同意文案;未勾选时登录操作应明确提示用户先确认协议。
## 3. 固定布局与状态边界 ## 3. 固定布局与状态边界
- 页面采用纵向滚动;`320 × 568`四个入口与协议行可以滚动,但任一按钮文字、协议行和底部内容不得被系统导航区遮挡。 - 页面采用纵向滚动;`320 × 568`两个按钮、注册文字和协议行可以滚动,但任一按钮文字、注册文字、协议行和底部内容不得被系统导航区遮挡。
- 登录、手机号、微信和注册的功能图标均需采用独立本地透明 PNG;微信标志只使用官方或许可来源的原色透明 PNG,不自行重绘或改色。 - A-01 的登录与微信功能图标均需采用独立本地透明 PNG;微信标志只使用官方或许可来源的原色透明 PNG,不自行重绘或改色。账号密码与手机号验证码的表单图标归 A-02 设计时确定。
- A-01 只设计欢迎、入口与协议未勾选提示。账号密码表单归 `A-02`验证码与微信授权结果归 `A-03`,注册归 `A-04`,忘记密码归 `A-05` - A-01 只设计欢迎、入口与协议未勾选提示。账号密码与手机号验证码表单`A-02`,微信授权结果归 `A-03`,注册归 `A-04`,忘记密码归 `A-05`
- A-01 正常态必须展示四个入口和未勾选协议;点击任一需要授权的入口但未勾选协议时,仅提示“请先阅读并同意相关协议”,不视为用户已同意。 - A-01 正常态必须展示两个按钮、注册文字入口和未勾选协议;点击任一需要授权的入口但未勾选协议时,仅提示“请先阅读并同意相关协议”,不视为用户已同意。
## 4. 未完成项(因此不得标记为设计完成) ## 4. 未完成项(因此不得标记为设计完成)
1. 按 Android 固定栅格确定 320 × 568、360 × 640、360 × 800、412 × 915 的真实布局与文字折行规则。 1. 按 Android 固定栅格确定 320 × 568、360 × 640、360 × 800、412 × 915 的真实布局与文字折行规则。
2. 生成并归档包含独立“注册账号”按钮的 A-01 效果稿 v2;现有 v1 仅保留为此前美术方向记录。 2. 生成并归档包含文字“注册账号”入口的 A-01 效果稿 v3v1、v2 均仅保留为此前美术方向与入口尝试记录。
3. 补齐 A-01 的加载与协议未勾选提示;微信授权中/取消/失败仍归 A-03。 3. 补齐 A-01 的加载与协议未勾选提示;微信授权中/取消/失败仍归 A-03。
4. 生成并验收项目内的真实透明 PNG 功能资产;微信品牌标志必须采用本地官方或许可透明 PNG,并记录来源、用途、路径与 Alpha 验收。此处归档的整页效果图不能充当图标资产。 4. 生成并验收项目内的真实透明 PNG 功能资产;微信品牌标志必须采用本地官方或许可透明 PNG,并记录来源、用途、路径与 Alpha 验收。此处归档的整页效果图不能充当图标资产。
5. 标明协议页的最终去向、返回路径与小屏验收结果。 5. 标明协议页的最终去向、返回路径与小屏验收结果。
## 5. 推进约束 ## 5. 推进约束
- 当前正式工作是 `D2 / A-01 启动登录引导` 的设计;A-02 保持冻结 - 当前正式工作是 `D2 / A-01 启动登录引导` 的设计;A-02 尚未开始设计,但其职责已明确为两种登录方式的双标签登录页
- 只有完成本文件第 4 节,并更新 `docs/规划.md``docs/交接记录.md` 后,A-01 才能进入“设计完成”状态。 - 只有完成本文件第 4 节,并更新 `docs/规划.md``docs/交接记录.md` 后,A-01 才能进入“设计完成”状态。
- 本轮不修改 uni-app 页面、接口、真实登录或 Android 打包配置。 - 本轮不修改 uni-app 页面、接口、真实登录或 Android 打包配置。
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 MiB

@@ -0,0 +1,260 @@
# A-01 启动 / 登录引导设计证据执行计划
> 已失效:本计划基于“四个独立按钮”入口结构。当前方案改为“登录 + 微信登录 + 文字注册入口”,不得继续执行;待设计记录复核后另写新计划。
> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:executing-plans to execute this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.
**Goal:** 完成 A-01 的可归档效果稿、固定栅格、状态设计、本地 PNG 资产和小屏验收;不实现任何 uni-app 页面或接口。
**Architecture:** `docs/design/A01_启动登录引导_设计记录.md` 是唯一需求所有者。整页效果稿只作为美术锚点,真实背景和图标分别存入 `static/assets/backgrounds/``static/assets/icons/`,并由 PowerShell 审计脚本验证归档、文件存在和透明 PNG 条件。
**Tech Stack:** Markdown、PNG/JPG 静态资产、PowerShell 5.1 审计、HBuilderX Web 浏览器预览。
## Global Constraints
- 只做 Android `uni-app` 的页面设计;不改 Vue 页面、接口、真实登录、打包或依赖。
- A-01 的唯一需求所有者是 `docs/design/A01_启动登录引导_设计记录.md`;本计划不可重定义页面规则。
- 账号密码、手机验证码、微信、注册账号四个入口顺序固定;协议默认不勾选,禁止“登录即同意”。
- 登录欢迎页使用独立的红头/宣纸欢迎背景,不复用 G-01 的列表页大山水背景。
- 所有功能图标必须为项目内 `96 × 96px` RGBA 透明 PNG;微信标志必须为本地官方或许可的原色透明 PNG,并记录来源。
- 每个视觉产物先归档到项目并写入设计记录,再展示或进入下一关;全页效果稿不能代替真实图标资产或小屏验收。
---
### Task 1: 建立 A-01 设计归档关口
**Files:**
- Create: `tests/a01-design-record-audit.ps1`
- Modify: `docs/design/A01_启动登录引导_设计记录.md`
- Test: `tests/a01-design-record-audit.ps1`
**Interfaces:**
- Consumes: `docs/design/A01_启动登录引导_设计记录.md``docs/design/screens/A01-启动登录引导-效果稿-v2-独立注册.png`
- Produces: Exit code `0` only when设计记录包含四个入口、显式协议规则与 v2 效果稿归档路径。
- [ ] **Step 1: 写入会失败的归档审计脚本**
```powershell
function ConvertFrom-Utf8Base64 {
param([string]$Value)
return [Text.Encoding]::UTF8.GetString([Convert]::FromBase64String($Value))
}
$recordPath = ConvertFrom-Utf8Base64 'ZG9jcy9kZXNpZ24vQTAxX+WQr+WKqOeZu+W9leW8leWvvF/orr7orqHorrDlvZUubWQ='
$effect = ConvertFrom-Utf8Base64 'ZG9jcy9kZXNpZ24vc2NyZWVucy9BMDEt5ZCv5Yqo55m75b2V5byV5a+8LeaViOaenOeovy12Mi3ni6znq4vms6jlhowucG5n'
$record = Get-Content -LiteralPath $recordPath -Raw -Encoding utf8
$rules = @(
(ConvertFrom-Utf8Base64 '6LSm5Y+35a+G56CB55m75b2V'),
(ConvertFrom-Utf8Base64 '5omL5py66aqM6K+B56CB55m75b2V'),
(ConvertFrom-Utf8Base64 '5b6u5L+h55m75b2V'),
(ConvertFrom-Utf8Base64 '5rOo5YaM6LSm5Y+3'),
(ConvertFrom-Utf8Base64 '5Yid5aeL5pyq5Yu+6YCJ')
)
foreach ($rule in $rules) {
if ($record -notmatch [regex]::Escape($rule)) {
throw "Missing A01 rule: $rule"
}
}
if (-not (Test-Path -LiteralPath $effect)) {
throw "Missing archived A01 effect: $effect"
}
Write-Output 'A01-DESIGN-RECORD-AUDIT PASS'
```
- [ ] **Step 2: 运行审计并确认因 v2 效果稿不存在而失败**
Run: `powershell -ExecutionPolicy Bypass -File tests\a01-design-record-audit.ps1`
Expected: `Missing archived A01 effect`
- [ ] **Step 3: 将 v2 效果稿路径写入设计记录的已归档美术锚点章节**
```markdown
- 效果稿 v2[`screens/A01-启动登录引导-效果稿-v2-独立注册.png`](screens/A01-启动登录引导-效果稿-v2-独立注册.png),用于确认独立“注册账号”按钮后的完整层级。
```
- [ ] **Step 4: 暂不运行通过态审计**
Run: 不运行;通过态必须在 Task 2 的图稿实际归档后执行。
### Task 2: 生成并归档 A-01 效果稿 v2
**Files:**
- Create: `docs/design/screens/A01-启动登录引导-效果稿-v2-独立注册.png`
- Modify: `docs/design/A01_启动登录引导_设计记录.md`
- Test: `tests/a01-design-record-audit.ps1`
**Interfaces:**
- Consumes: v1 美术锚点、A-01 四入口结构、D1 的独立登录欢迎背景规则。
- Produces: 仅作为美术锚点的 v2 PNG;不作为 UI 背景或图标来源。
- [ ] **Step 1: 生成竖屏 A-01 效果稿**
生成条件:朱砂祠堂红头与金色“谱”牌居中;暖宣纸主体;标题“家谱”和副句;四个纵向单行按钮,第一项朱砂实心,其余三项纸白古金描边;第四项文字为“注册账号”;底部为未勾选协议;淡墨建筑与竹影只作低对比背景,不遮挡文字。
- [ ] **Step 2: 先将生成文件保存为精确路径,再更新设计记录**
Run: `Get-Item -LiteralPath 'docs\design\screens\A01-启动登录引导-效果稿-v2-独立注册.png' | Select-Object Name,Length`
Expected: 文件存在且 `Length` 大于 `0`
- [ ] **Step 3: 运行归档审计并确认通过**
Run: `powershell -ExecutionPolicy Bypass -File tests\a01-design-record-audit.ps1`
Expected: `A01-DESIGN-RECORD-AUDIT PASS`
- [ ] **Step 4: 人工比对 v2 与 A-01 记录**
检查:四个入口顺序正确;注册按钮独立且不换行;协议未勾选;没有“登录即同意”;没有把 G-01 底部山水直接复制为登录背景。
### Task 3: 固定 Android 栅格与状态说明
**Files:**
- Modify: `docs/design/A01_启动登录引导_设计记录.md`
- Test: `tests/a01-design-record-audit.ps1`
**Interfaces:**
- Consumes: D1 的 `750rpx` 基准、`32rpx` 安全边距、正文最小 `24rpx`、主按钮最小 `88rpx`
- Produces: A-01 的四种验收尺寸布局表,以及正常态、协议未勾选提示、页面加载三种状态定义。
- [ ] **Step 1: 先在归档审计脚本中加入栅格和状态断言**
```powershell
$requiredDesignText = @('320 × 568', '360 × 640', '360 × 800', '412 × 915', '协议未勾选提示', '页面加载')
foreach ($item in $requiredDesignText) {
if ($record -notmatch [regex]::Escape($item)) {
throw "缺少 A-01 栅格或状态说明:$item"
}
}
```
- [ ] **Step 2: 运行审计并确认因新字段未写入而失败**
Run: `powershell -ExecutionPolicy Bypass -File tests\a01-design-record-audit.ps1`
Expected: `缺少 A-01 栅格或状态说明`
- [ ] **Step 3: 在设计记录新增固定栅格表和状态表**
表格必须为 `320 × 568``360 × 640``360 × 800``412 × 915` 分别写明:红头、标题区、四按钮区、协议区、可滚动区域和底部安全边距。状态表必须说明:正常态、协议未勾选提示、页面加载;微信授权的结果页只链接到 A-03,不在 A-01 重复设计。
- [ ] **Step 4: 运行审计并确认通过**
Run: `powershell -ExecutionPolicy Bypass -File tests\a01-design-record-audit.ps1`
Expected: `A01-DESIGN-RECORD-AUDIT PASS`
### Task 4: 生成并验收本地背景与功能 PNG 资产
**Files:**
- Create: `static/assets/backgrounds/auth-welcome-hall-v1.png`
- Create: `static/assets/backgrounds/auth-welcome-paper-v1.jpg`
- Create: `static/assets/backgrounds/auth-welcome-ink-side-v1.png`
- Create: `static/assets/icons/auth/account-login-v1.png`
- Create: `static/assets/icons/auth/phone-code-login-v1.png`
- Create: `static/assets/icons/auth/register-v1.png`
- Create: `static/assets/icons/brand/wechat-login-v1.png`
- Modify: `docs/design/A01_启动登录引导_设计记录.md`
- Test: `tests/a01-design-record-audit.ps1`
**Interfaces:**
- Consumes: D1 背景和 PNG 规则。
- Produces: 可由后续 A-01 页面本地引用的独立背景和图标,及其来源/Alpha 验收清单。
- [ ] **Step 1: 将资产存在、尺寸和透明角检查加入审计脚本**
```powershell
$pngAssets = @(
'static/assets/backgrounds/auth-welcome-hall-v1.png',
'static/assets/backgrounds/auth-welcome-ink-side-v1.png',
'static/assets/icons/auth/account-login-v1.png',
'static/assets/icons/auth/phone-code-login-v1.png',
'static/assets/icons/auth/register-v1.png',
'static/assets/icons/brand/wechat-login-v1.png'
)
foreach ($asset in $pngAssets) {
if (-not (Test-Path -LiteralPath $asset)) { throw "缺少 A-01 PNG$asset" }
}
if (-not (Test-Path -LiteralPath 'static/assets/backgrounds/auth-welcome-paper-v1.jpg')) {
throw '缺少 A-01 宣纸背景:auth-welcome-paper-v1.jpg'
}
```
- [ ] **Step 2: 运行审计并确认因资产不存在而失败**
Run: `powershell -ExecutionPolicy Bypass -File tests\a01-design-record-audit.ps1`
Expected: `缺少 A-01 PNG``缺少 A-01 宣纸背景`
- [ ] **Step 3: 创建独立背景与图标资产,并在设计记录登记用途和来源**
规则:自定义背景及账号/手机/注册图标单独生成;微信图标从官方或许可来源获取,不改色、不从截图裁切;账号/手机/注册图标导出 `96 × 96px` RGBA PNG,微信图标保留原色透明背景;设计记录逐项记录路径、用途、来源和透明角检查结果。
- [ ] **Step 4: 扩展审计脚本,检查四个登录入口图标为 `96 × 96px` RGBA 且四角 Alpha 为 0**
```powershell
Add-Type -AssemblyName System.Drawing
$iconPaths = @(
'static/assets/icons/auth/account-login-v1.png',
'static/assets/icons/auth/phone-code-login-v1.png',
'static/assets/icons/auth/register-v1.png',
'static/assets/icons/brand/wechat-login-v1.png'
)
foreach ($iconPath in $iconPaths) {
$bitmap = [System.Drawing.Bitmap]::FromFile((Resolve-Path -LiteralPath $iconPath))
try {
if ($bitmap.Width -ne 96 -or $bitmap.Height -ne 96) { throw "图标尺寸不符:$iconPath" }
foreach ($point in @(@(0,0), @(95,0), @(0,95), @(95,95))) {
if ($bitmap.GetPixel($point[0], $point[1]).A -ne 0) { throw "图标透明角不符:$iconPath" }
}
} finally { $bitmap.Dispose() }
}
```
- [ ] **Step 5: 运行完整审计并确认通过**
Run: `powershell -ExecutionPolicy Bypass -File tests\a01-design-record-audit.ps1`
Expected: `A01-DESIGN-RECORD-AUDIT PASS`
### Task 5: 小屏视觉验收与正式状态更新
**Files:**
- Modify: `docs/design/A01_启动登录引导_设计记录.md`
- Modify: `docs/规划.md`
- Modify: `docs/交接记录.md`
- Test: `tests/a01-design-record-audit.ps1`
**Interfaces:**
- Consumes: 已归档 v2、已验收资产、A-01 栅格和状态记录。
- Produces: A-01 的设计完成结论;下一页才可解除冻结并开始设计。
- [ ] **Step 1: 将四个预览尺寸和无底部遮挡检查加入审计脚本**
```powershell
$evidenceLabels = @('320 × 568', '360 × 640', '360 × 800', '412 × 915', '无重叠', '无裁切', '无底部遮挡')
foreach ($label in $evidenceLabels) {
if ($record -notmatch [regex]::Escape($label)) {
throw "缺少 A-01 验收证据:$label"
}
}
```
- [ ] **Step 2: 在 HBuilderX Web 浏览器中逐一预览四种尺寸,并记录截图结论**
验收条件:四个按钮均可见且文字不换行;协议行可到达、默认未选且不被系统导航遮挡;背景不压住文字;点击区不小于 `88rpx`;没有远程图标或 CSS 图形替代。
- [ ] **Step 3: 在设计记录写入截图来源、尺寸、正常/协议未勾选提示状态和结论**
记录必须明确区分 HBuilderX Web 浏览器预览与未来 Android 原生包验证;不得把后者写成已完成。
- [ ] **Step 4: 运行完整审计并确认通过**
Run: `powershell -ExecutionPolicy Bypass -File tests\a01-design-record-audit.ps1`
Expected: `A01-DESIGN-RECORD-AUDIT PASS`
- [ ] **Step 5: 更新总规划和交接记录,然后提交**
```powershell
git add -- tests/a01-design-record-audit.ps1 docs/design/A01_启动登录引导_设计记录.md docs/design/screens/A01-启动登录引导-效果稿-v2-独立注册.png static/assets/backgrounds/auth-welcome-hall-v1.png static/assets/backgrounds/auth-welcome-paper-v1.jpg static/assets/backgrounds/auth-welcome-ink-side-v1.png static/assets/icons/auth/account-login-v1.png static/assets/icons/auth/phone-code-login-v1.png static/assets/icons/auth/register-v1.png static/assets/icons/brand/wechat-login-v1.png docs/规划.md docs/交接记录.md
git commit -m "docs: complete A01 login guide design"
```
Expected: 仅 A-01 设计证据、资产与状态记录进入提交;不包含 Vue 页面、接口或构建缓存。
@@ -0,0 +1,21 @@
# A-01 登录入口层级调整设计
> 状态:用户已确认视觉与交互方向;效果稿 v3 已归档,小屏布局验收待完成。
>
> 当前设计事实唯一归属 [`docs/design/A01_启动登录引导_设计记录.md`](../../design/A01_启动登录引导_设计记录.md)。本文件只记录本次确认的调整与其边界,不重复充当设计源。
## 已确认的调整
- A-01 不再并列展示“账号密码登录”“手机验证码登录”“微信登录”“注册账号”四个按钮。
- A-01 保留朱砂红“登录”主按钮与古金描边“微信登录”按钮。
- “还没有账号?注册账号”置于按钮下方,其中“注册账号”是朱砂红文字入口。
- “登录”进入 A-02;A-02 通过“账号密码登录 / 手机验证码登录”双标签承接两种登录方式,默认账号密码登录。
- 微信授权流程仍属 A-03;注册仍属 A-04;忘记密码仍属 A-05。
- 协议复选框默认未勾选。登录、微信、注册三种进入操作均不得默认视为用户同意协议;未勾选时仅提示先确认协议。
## 视觉与范围
- 保留已确认的家祠朱砂红头、暖宣纸、古金云纹、墨褐标题、淡墨建筑与山水背景方向。
- 已归档效果稿 v3`docs/design/screens/A01-启动登录引导-效果稿-v3-文字注册入口.png`
- v1、v2 效果稿保留为历史,不删除、不覆盖,且不能作为当前布局依据。
- 本次只调整设计记录、效果稿与后续验收口径;不改 uni-app 页面、接口、真实登录或 Android 打包。
+2 -2
View File
@@ -101,8 +101,8 @@ powershell -ExecutionPolicy Bypass -File tests\vue3-entry.ps1
## 9. 2026-07-13 流程纠正记录 ## 9. 2026-07-13 流程纠正记录
- A-01 的已确认效果稿已归档`docs/design/screens/A01-启动登录引导-效果稿-v1-显式协议.png`,对应说明见 `docs/design/A01_启动登录引导_设计记录.md` - A-01 的历史效果稿 v1、v2 与当前效果稿 v3 均已归档;当前入口依据`docs/design/screens/A01-启动登录引导-效果稿-v3-文字注册入口.png`,对应说明见 `docs/design/A01_启动登录引导_设计记录.md`
- 该图只保留欢迎页的美术方向:它不是固定栅格、状态设计或小屏验收稿,不得据此标记 A-01 或 D2 完成。 - 该图只保留欢迎页的美术方向:它不是固定栅格、状态设计或小屏验收稿,不得据此标记 A-01 或 D2 完成。
- 先前误建的 A-01 规格和实现计划已降为失效历史;2026-07-13 已确认新的 A-01 设计方案,唯一需求所有者为 `docs/design/A01_启动登录引导_设计记录.md`。A-02 仍冻结,不允许开始任何 uni-app 实现。 - 先前误建的 A-01 规格和“四个独立按钮”执行计划已降为失效历史;2026-07-13 已确认文字注册入口方案,唯一需求所有者为 `docs/design/A01_启动登录引导_设计记录.md`。A-02 尚未开始设计,但负责账号密码与手机验证码双标签;不允许开始任何 uni-app 实现。
- 所有后续页面效果图必须先保存到 `docs/design/screens/`,并在对应页面设计记录写明用途、状态和验收缺口;未完成归档不得展示为可推进的设计成果。 - 所有后续页面效果图必须先保存到 `docs/design/screens/`,并在对应页面设计记录写明用途、状态和验收缺口;未完成归档不得展示为可推进的设计成果。
- G-01 已于 2026-07-13 经用户确认结项;当前进入 D2 / A-01 的设计工作,接口、真实登录和 Android 打包仍暂停。 - G-01 已于 2026-07-13 经用户确认结项;当前进入 D2 / A-01 的设计工作,接口、真实登录和 Android 打包仍暂停。
+1 -1
View File
@@ -169,7 +169,7 @@
| 阶段 | 交付内容 | 状态 | | 阶段 | 交付内容 | 状态 |
| --- | --- | --- | | --- | --- | --- |
| D1 | P-02 至 P-06:统一设计系统、Android 页面壳、公共图标与背景资产 | 进行中(P-02 至 P-04 已完成;P-05、P-06 资产生成中) | | D1 | P-02 至 P-06:统一设计系统、Android 页面壳、公共图标与背景资产 | 进行中(P-02 至 P-04 已完成;P-05、P-06 资产生成中) |
| D2 | A-01 至 A-06:账户与首次使用全套页面 | 进行中(A-01 设计方案已确认,待归档效果稿 v2、固定栅格、状态与小屏验收;A-02 至 A-06 未开始) | | D2 | A-01 至 A-06:账户与首次使用全套页面 | 进行中(A-01 文字注册入口方案与效果稿 v3 已确认归档,待固定栅格、状态与小屏验收;A-02 至 A-06 未开始) |
| D3 | G-01 至 G-12:家谱创建、加入、总览与管理全套页面 | 进行中(G-01 已于 2026-07-13 验收完成;G-02 至 G-12 未开始) | | D3 | G-01 至 G-12:家谱创建、加入、总览与管理全套页面 | 进行中(G-01 已于 2026-07-13 验收完成;G-02 至 G-12 未开始) |
| D4 | T-01 至 T-08:世系树、成员、关系编辑全套页面 | 未开始 | | D4 | T-01 至 T-08:世系树、成员、关系编辑全套页面 | 未开始 |
| D5 | F-01 至 F-10、R-01 至 R-11:家族内容全套页面 | 未开始 | | D5 | F-01 至 F-10、R-01 至 R-11:家族内容全套页面 | 未开始 |
+29
View File
@@ -0,0 +1,29 @@
$ErrorActionPreference = 'Stop'
function ConvertFrom-Utf8Base64 {
param([string]$Value)
return [Text.Encoding]::UTF8.GetString([Convert]::FromBase64String($Value))
}
$recordPath = ConvertFrom-Utf8Base64 'ZG9jcy9kZXNpZ24vQTAxX+WQr+WKqOeZu+W9leW8leWvvF/orr7orqHorrDlvZUubWQ='
$effect = ConvertFrom-Utf8Base64 'ZG9jcy9kZXNpZ24vc2NyZWVucy9BMDEt5ZCv5Yqo55m75b2V5byV5a+8LeaViOaenOeovy12My3mloflrZfms6jlhozlhaXlj6MucG5n'
$record = Get-Content -LiteralPath $recordPath -Raw -Encoding utf8
$rules = @(
(ConvertFrom-Utf8Base64 '55m75b2V'),
(ConvertFrom-Utf8Base64 '5b6u5L+h55m75b2V'),
(ConvertFrom-Utf8Base64 '6L+Y5rKh5pyJ6LSm5Y+377yf5rOo5YaM6LSm5Y+3'),
(ConvertFrom-Utf8Base64 '5Y+M5qCH562+'),
(ConvertFrom-Utf8Base64 '5Yid5aeL5pyq5Yu+6YCJ')
)
foreach ($rule in $rules) {
if ($record -notmatch [regex]::Escape($rule)) {
throw "Missing A01 rule: $rule"
}
}
if (-not (Test-Path -LiteralPath $effect)) {
throw "Missing archived A01 effect: $effect"
}
Write-Output 'A01-DESIGN-RECORD-AUDIT PASS'