rebuild(audit): verify page state matrix

This commit is contained in:
leefer
2026-07-30 11:12:37 +08:00
parent b79b4ba280
commit 4eafa1cc3f
13 changed files with 386 additions and 37 deletions
+7 -10
View File
@@ -21,15 +21,10 @@
- 数据库迁移、旧库只读迁移、备份、校验恢复、生产静态文件服务和安全响应头已有自动测试。
- PC 统一 Shell、设计令牌、日夜主题和独立移动端布局规则已经建立。
## 阻断“完整迁移”的验收缺口
## 阻断“完整迁移”的最终人工验收
1. 固定案例 `C06``C08` 当前为未实现,不能标记通过
2. `C05``U01` 的主题无白闪需要首帧/加载态直接断言,不能只依赖夜间截图
3. `M08` 需要测量 7 板及更高时右侧结论布局,不应只断言文字存在。
4. `W09` 需要直接检查夜间关键文字对比度和可见性,不能只依赖截图。
5. `U04` 已增加 4K 内容最大宽度、基础字号和 Shell 高度断言,仍需最终人工视觉验收信息密度。
6. 第 26 节要求的逐页权限、正常、空、缺失、加载、失败、持久化、日间、夜间、1080P、4K、390px
覆盖尚未逐格完成;当前 E2E 不能等同于完整矩阵。
1. `U04` 已增加4K内容最大宽度、基础字号、Shell高度和无横向溢出断言,仍需最终人工视觉验收信息密度
2. 第26节逐页状态证据已登记在`page-state-matrix.md`;4K人工视觉单元格在正式切换前保持未关闭
## 已在本轮纠正
@@ -58,7 +53,9 @@
只提示小样本,达到门槛后才显示胜率和平均3日收益,结果按运行持久化且重复读取不漂移。
- 精选策略详情直接展示配置中已有的质量、风险、执行频率、适用环境、失效风险、适用阶段和完整评分权重,
没有补造无法验证的策略元信息。
- 本轮验证为Ruff、106项pytest、Vue类型检查、7项Vitest、生产构建和21项Playwright全部通过
- 图表夜间加载首帧、主题同步切换、7板布局和观心夜间关键文字对比度均已有浏览器直接断言,不再只依赖截图
- 16个主工作区、策略跟踪、提醒、复盘助手、账户/会员及系统管理已逐项区分加载、真实空和失败;统一API客户端不会向页面泄露上游错误正文。
- 本轮验证为Ruff、106项pytest、Vue类型检查、7项Vitest、生产构建和26项Playwright全部通过。
## 外部环境阻断项
@@ -72,6 +69,6 @@
1. 本文件登记的用户可见功能缺口全部完成并有直接测试。
2. 85 个固定案例逐项标记为“确定性测试”“浏览器直接断言”或“人工视觉验收”;不得使用宽泛截图代替算法证明。
3. 第 26 节页面覆盖矩阵逐格完成,人工验收项由用户确认。
3. `page-state-matrix.md`中的人工验收项由用户确认。
4. Docker 构建、启动、持久化重启、备份恢复和回退在实际容器环境通过。
5. NAS 切换后执行最终冒烟,旧实现只按确认后的清理方案处理。
+43
View File
@@ -0,0 +1,43 @@
# 页面状态覆盖矩阵
更新日期:2026-07-30
本矩阵对应《小白复盘-完整产品规格说明书》第26节。`自动`表示确定性单元、Repository或API测试,
`浏览器`表示Playwright直接经过该状态并断言界面行为;`人工待验`只用于自动化无法替代的视觉判断。
任何“页面可打开”或单张截图都不能单独算作状态证据。
证据简称:
- `B04``stage4.spec.js`,账户权限、Shell、账户弹窗、主题即时切换和首次空系统。
- `B05-B12``stage5.spec.js``stage12.spec.js`,各领域正常交互、夜间和390px流程。
- `B13``stage13.spec.js`,16工作区移动端可达、320px至4K结构边界和触控目标。
- `B14``stage14-matrix.spec.js`,逐页加载、空、失败和错误正文隐藏。
- `A账户``test_accounts.py``A行情``test_market_data.py``test_market_insights.py`
- `A智能``test_screener.py``test_mentor.py``test_heaven.py``A私有``test_review.py`
- `A运维``test_operations.py``test_model_pool.py``test_backup_restore.py`及migration测试。
| 页面/能力 | 权限 | 正常数据 | 空/缺失 | 加载/失败 | 持久化 | 日夜 | 1080P/390px | 4K |
|---|---|---|---|---|---|---|---|---|
| 情绪周期 | 自动+A账户 | B06 | B14+A行情 | B14 | A行情 | B04/B06 | B06/B13 | 结构自动;人工待验 |
| 四类股池 | 自动+A账户 | B06 | B14+A行情 | B14 | A行情+A运维 | B06 | B06/B13 | B06;人工待验 |
| 涨停表现/天梯 | 自动+A账户 | B06/B07 | B14 | B14 | A行情 | B06/B07 | B06/B07/B13 | 结构自动;人工待验 |
| 板块轮动 | 自动+A账户 | B07 | B14+A行情 | B14 | A行情 | B07 | B07/B13 | 结构自动;人工待验 |
| 集合竞价 | 自动+A账户 | B08 | B14+A行情 | B14 | A行情 | B08 | B08/B13 | 结构自动;人工待验 |
| 题材库/热榜 | 自动+A账户 | B08 | B14+A行情 | B14 | A行情 | B08 | B08/B13 | 结构自动;人工待验 |
| 龙虎榜/游资档案 | 自动+A账户 | B08 | B14+A行情 | B14 | A行情+A运维 | B08 | B08/B13 | 结构自动;人工待验 |
| 智能选股 | B04/B09+A账户 | B09 | B09/B14+A智能 | B09/B14 | A智能 | B09 | B09/B13 | 结构自动;人工待验 |
| 策略跟踪 | B09+A账户 | B09 | B14+A智能 | B14 | A智能 | B09 | B09/B13 | 结构自动;人工待验 |
| 问师 | B04/B10+A账户 | B10 | B14+A智能 | B10/B14 | A智能 | B10 | B10/B13 | B10;人工待验 |
| 问天 | B04/B11+A账户 | B11 | B14+A智能 | B11/B14 | A智能 | B11 | B11/B13 | 结构自动;人工待验 |
| 我的复盘 | B04/B12+A账户 | B12 | B12/B14+A私有 | B14 | A私有 | B12 | B12/B13 | 结构自动;人工待验 |
| 提醒中心 | 自动+A账户 | B12 | B14+A私有 | B14 | A智能+A私有 | B12 | B12/B13 | 结构自动;人工待验 |
| 复盘助手 | B04/B12+A账户 | B12 | B14 | B12/B14 | A私有+LLM审计 | B12 | B12/B13 | 结构自动;人工待验 |
| 账户/会员 | B04+A账户 | B04 | B14+A账户 | B14 | A账户 | B04 | B04/B13 | 结构自动;人工待验 |
| 系统管理 | B04+A账户 | operations E2E | B14+A运维 | B14 | A运维 | B04 | B04/B13 | B04;人工待验 |
## 当前结论
- 权限、正常、空、缺失、加载、失败、持久化、日间、夜间、1080P和390px均已有直接代码或浏览器证据。
- 市场工作区、智能工具、私有页面、全局弹窗和系统管理不会再把请求中或请求失败伪装成“暂无数据”。
- 4K已自动验证Shell尺寸、内容最大宽度、基础字号和无横向溢出;情绪、股池、系统管理和问师保留直接4K截图。
- 4K“信息密度是否舒适”属于审美判断,仍需正式切换前人工验收,不能由尺寸断言冒充完成。
+13 -13
View File
@@ -1,8 +1,8 @@
# 产品规格覆盖矩阵(历史阶段记录)
# 产品规格覆盖矩阵
> 本文件保留阶段 15 当时的证据映射,但不再代表最终完成结论。重新审计已确认 `C06`、`C08`
> 等存在真实功能缺口,部分截图证据也不足以证明对应行为。当前权威完成度见
> `docs/final/completion-audit.md`;在该审计全部关闭前,不得引用本文件的“85/85”表述
> 本文件记录第25节固定案例的当前直接证据。84个案例已由确定性测试或浏览器直接断言证明;`U04`
> 的结构边界已自动验证,但4K信息密度仍需人工视觉验收,因此当前不得表述为“85/85完成”。
> 第26节逐页状态证据见`page-state-matrix.md`,最终完成度见`completion-audit.md`
本矩阵以《小白复盘完整产品规格说明书》第25节的85个固定案例为唯一编号源。
“自动”表示确定性单元/API测试;“浏览器”表示Playwright交互、响应式断言和阶段截图共同验收。
@@ -45,10 +45,10 @@
| C02 | `stage5.spec.js`历史页面日期与最新悬浮行情分离 | 浏览器通过 |
| C03 | `test_minute_chart_contract_has_real_session_bounds_and_hides_source` | 自动通过 |
| C04 | `MarketChart.vue`实体/影线分段及阶段5截图 | 浏览器通过 |
| C05 | 主题令牌加载态及阶段5夜间截图 | 浏览器通过 |
| C06 | `stage5.spec.js`个股详情完整入口 | 浏览器通过 |
| C05 | `stage5.spec.js`在夜间图表请求延迟期间直接检查画布、预览和加载面背景 | 浏览器通过 |
| C06 | `test_entity_detail_uses_selected_bar_previous_close_and_complete_stock_sections``stage5.spec.js`完整入口 | 自动+浏览器通过 |
| C07 | `stage5.spec.js`非个股详情边界 | 浏览器通过 |
| C08 | 图表前收契约测试及详情摘要浏览器断言 | 自动+浏览器通过 |
| C08 | 同C06直接断言所选交易日、对应前收、涨跌幅及页面摘要 | 自动+浏览器通过 |
## 情绪与市场页面
@@ -61,7 +61,7 @@
| M05 | `stage6.spec.js`明细范围、整页滚动和末行可达 | 浏览器通过 |
| M06 | `stage6.spec.js`低行数股池固定状态栏 | 浏览器通过 |
| M07 | `stage7.spec.js`天梯展开、收起、滚动与等宽格 | 浏览器通过 |
| M08 | `stage6.spec.js`动态板高与涨停表现布局 | 浏览器通过 |
| M08 | `stage6.spec.js`直接测量7张板高卡、结论顶部/右侧对齐和页面无溢出 | 浏览器通过 |
| M09 | `test_sector_members_are_normalized_and_persistently_cached``stage7.spec.js` | 自动+浏览器通过 |
## 竞价、题材、热榜与龙虎榜
@@ -116,7 +116,7 @@
| W06 | `heartTiming.test.ts``stage11.spec.js` | 自动+浏览器通过 |
| W07 | `test_each_heart_cast_appends_exactly_one_line` | 自动通过 |
| W08 | `test_hexagram_is_deterministic_and_contains_only_six_lines`及阶段11页面断言 | 自动+浏览器通过 |
| W09 | 阶段11夜间观心截图和可读性断言 | 浏览器通过 |
| W09 | `stage11.spec.js`直接计算提示、历史、静音和重新观心文字对比度均不低于4.5 | 浏览器通过 |
## 复盘、主题与响应式
@@ -126,15 +126,15 @@
| R02 | `test_trade_summary_uses_only_realized_fields_and_keeps_zero_in_denominator` | 自动通过 |
| R03 | `test_private_review_records_are_strictly_scoped_and_daily_notes_upsert` | 自动通过 |
| R04 | `stage12.spec.js`历史展开、收起与滚动 | 浏览器通过 |
| U01 | 阶段4至13日夜切换E2E,无白闪/控制台错误 | 浏览器通过 |
| U01 | `stage4.spec.js`直接检查主题切换同步表面及夜间重载首帧;`stage5.spec.js`覆盖图表加载态 | 浏览器通过 |
| U02 | 阶段6的1920×1080整页滚动与明细可达 | 浏览器通过 |
| U03 | 阶段11观气/观心滚动与背景断言 | 浏览器通过 |
| U04 | 阶段4至13的3840×2160截图及密度验收 | 浏览器通过 |
| U04 | `stage13.spec.js`自动验证4K最大宽度、字号、Shell和无溢出;信息密度 | 人工待验 |
| U05 | `stage13.spec.js`390×844、五入口与44px触控目标 | 浏览器通过 |
| U06 | `stage13.spec.js`320px 16工作区、纵向记录/局部横滚 | 浏览器通过 |
## 汇总
- 固定案例:85/85已有可追踪证据
- 确定性、权限、隔离和失败语义均由自动测试覆盖;视觉案例同时保留真实浏览器截图。
- 固定案例:84/85已完成直接验收,`U04`保留最终人工视觉验收
- 确定性、权限、隔离和失败语义均由自动测试覆盖;视觉案例保留真实浏览器断言和阶段截图。
- Docker镜像构建、NAS容器重启与正式端口切换不属于85个页面案例,但仍是切换前阻断项,见`cutover-checklist.md`