Files
HW-Debug-Tools/EDID-viewer/VALIDATION.md
T
hulk 68d70497d4 feat(EDID-Viewer): v0.1.0 入库 — Fluent EDID 查看器,目录对齐 DLPilot
- src/ 人写代码:main.py(Fluent 界面、Light/Dark/dark1/dark2/跟随系统主题、
  关于按钮;主题三件套 = setTheme + QPalette/应用级 QSS + DWM 标题栏,
  修复 Light 下窗口背景/页签/标题栏仍为系统深色的问题)、edid.py
  (EDID/CTA/HDMI/HDR 解析)、windows_edid.py(WMI 只读)、theme.py、
  test_edid.py(9 项解析测试,含随机畸形数据无崩溃检查)
- assets/ 图标与生成脚本;release/ 交付:EDID-Viewer.exe(onefile 63.7MB,
  启动/图标/主题已验证)+ README,与 DLPilot/release 同约定 exe 直接入库
- 流水线对齐 DLPilot:src/build_exe.py(spec 由脚本生成不入库,剔除 PATH 上
  Poppler/Conda 版本化 ICU,避免 QtCore 报 WinError 127)→
  package_release.py(组装 EDID-Viewer-v*-win64.zip,zip 只上传 Gitea)→
  publish_gitea.py(token 走 GITEA_TOKEN,自签证书 --insecure)
- agent.md 更名 AGENTS.md(DLPilot 双文档约定:README 给人 / AGENTS.md 给
  Agent);根 .gitignore 增加 EDID-viewer/release/*.zip
- validation/ 保留 EDID 本机/合成样本与窗口截图、关于对话框自检脚本
2026-09-24 22:34:02 +08:00

5.5 KiB
Raw Blame History

验证记录 — 2026-09-23

  • Python 3.14 / PySide6 6.11.2 / PyInstaller 6.22.2。
  • 9 个解析测试通过,包括身份字段、标准时序、1080p/1080i DTD、CTA 音频/4K/HDR/CEC、缺失扩展、坏校验、越界、未知扩展;其中包括 1000 份随机畸形数据的无崩溃检查。
  • BIN → 带 0x 前缀 HEX → BIN 一致性检查通过。
  • pip check 通过。
  • WMI 实际读取到内屏 SDC / ATNA60HU01-0;取得 256 字节,两个块校验通过;声明 384 字节,读取第三块失败。UI 正确展示读取错误和缺失警告。
  • 打包 EXE 实际启动通过,QtCore/QtGui/QtWidgets 绑定文件存在。截图检查确认设备信息、中文、校验、警告均可见。
  • 修复 PATH 中 Poppler ICU 被 PyInstaller 错误收集导致的 QtCore DLL 加载失败;viewer.spec 排除冲突 ICU,使用 Windows 系统 ICU。
  • 修复系统深色主题与浅色内容背景造成的白字不可见问题,使用完整浅色 Qt 调色板。
  • 当前没有可用于验证的外接 HDMI 设备;HDMI 热插拔、多屏、跨屏 DPI、最大化/恢复和 GUI 文件对话框完整流程尚未完成交互验收。检查期间窗口发生用户输入/位置变化,没有继续抢占窗口操作。
  • DisplayID、高级 HDMI Forum 字段未完整解析,详见 README。

validation/ 保存本机读取样本和合成 HDMI 测试数据,仅作本地验收材料。

主题与图标更新

  • 新 EXE 实际启动通过,窗口展示 EDID / Viewer 黑橙白图标。
  • 实际通过右上角切换 Light、Dark;截图检查文字、数据树、按钮、选择框的对比度正常。
  • 跟随系统在当前 Windows 深色设置下正确显示深色。已连接 Qt colorSchemeChanged;未修改用户 Windows 设置进行系统热切换测试。
  • Dark 选择写入 QSettings,关闭 EXE 后重新启动,选择和深色外观均保留。
  • 最大化后界面正常,随后还原;没有进行跨显示器 DPI 验证。
  • 9 项解析测试仍通过;三种主题的调色板检查通过。
  • qt-material 2.17 已在 PySide6 环境加载;Light/Dark/System 三种模式样式表生成检查通过。
  • Material 版窗口使用左侧设备/离线操作面板和右侧内容卡片,源码启动与解析测试通过;需完成本次打包后的可见 EXE 检查。
  • 本次打包 EXE 实际启动通过;可见界面已切换为 Material Amber 主题,侧栏、圆角内容卡片、页签、设备数据和警告均正常显示。
  • 实机操作验证 Light 与 Dark 切换,文字和数据树对比度正常;Material 版保留系统跟随选项。
  • 修复 Material 选中态对比度:设备/主题下拉框选中项改为深色文字配琥珀色背景;树表格、焦点行、页签和警告提示分别使用可读的深色/浅色组合。源码测试和打包 EXE 均已更新。
  • 针对截图反馈再次调整页签选中态:深色使用深灰底/琥珀字,浅色使用浅琥珀底/深琥珀字,并保留底部强调线;Light 打包窗口实测“分辨率与时序”页签可读。
  • 针对 HEX/JSON 截图反馈调整 QPlainTextEdit/QTextEdit 文本选中态:深色使用蓝灰底/浅字,浅色使用浅蓝灰底/深字,避免 qt-material 的亮黄色底/白字组合。源码样式检查和解析测试通过;本次重新打包后窗口启动验证因物理 Escape 中断,未继续进行 UI 操作。
  • 主题选择框和下拉列表已加宽至 148/至少 170 px,三种中文选项可完整显示;控件尺寸检查通过,EXE 已重新打包。

验证记录 — 2026-09-24

  • 新增 dark1(dark_blue.xml,蓝色强调)和 dark2(dark_cyan.xml,青色强调)两个深色 Material 主题;原有 Light、Dark、跟随系统仍保留。
  • 9 项解析测试、pip check 和 Python 编译检查通过;qt-material 2.17 已确认包含两个新主题资源。
  • 最新 dist\EDID-Viewer\EDID-Viewer.exe 已重新构建并启动,进程响应正常;offscreen 窗口渲染确认两个主题的主题选择框、页签和内容面板均能显示。
  • 深色主题的下拉选中项、树表格焦点行、页签、警告和 HEX/JSON 文本选择态均使用按主题的高对比配色,避免亮背景配白字。
  • 当前预览使用无 EDID 样本的启动状态;Windows WMI 实际设备读取结果沿用上一条记录,未把本次 offscreen 渲染当作硬件验收。

Fluent Widgets 重写验证(2026-09-24)

  • PySide6-Fluent-Widgets 1.11.3 已替换 qt-material;主界面使用 Fluent 卡片、控件和树视图,主题选择持久化并支持跟随系统。
  • 9 项 EDID 解析测试、Python 编译检查和离屏窗口启动通过;主题下拉框可切换 system/light/dark/dark1/dark2。
  • build.ps1 打包通过,dist\\EDID-Viewer\\_internal\\qfluentwidgets 资源已收集;离线 EDID 样本可渲染并启用 BIN/JSON 导出。

目录重构与 onefile 打包验证(2026-09-24)

  • 目录对齐 DLPilot 三区结构:src/(代码 + 流水线)、assets/(图标)、release/(EDID-Viewer.exe + README);agent.md 更名 AGENTS.md;build.ps1/viewer.spec 由 src/build_exe.py(生成 spec,ICU 排除逻辑内置)取代。
  • src/ 下 9 项解析测试通过;src/build_exe.py 单文件打包通过,release\EDID-Viewer.exe 启动验证窗口正常、图标与主题(三件套:QPalette + 应用级 QSS + DWM 标题栏)保持上一轮修复效果。
  • src/package_release.py 组装 zip(exe + README);src/publish_gitea.py 由 DLPilot 同名脚本适配(tag 前缀 EDID-Viewer-v*),本次未实际上传。