Files
juzi/docs/评分圈内居中与正脸语音修复-2026-10-12.md

3.9 KiB
Raw Permalink Blame History

评分圈内居中、基础信息页固定与正脸语音修复

2026-10-13:报告顶部排版已按后续确认调整,以下 25px 年龄间距及原评分排列仅为历史记录。当前以《报告顶部评分与年龄排版-2026-10-13.md》为准;基础信息与语音修复不变。

范围

  1. 报告:综合评分标题和分数在圆环内上下排列,作为一个整体垂直居中,标题与数字分别水平居中。数字右侧保留「分」。年龄标题到年龄数字的边界距离固定为 25 CSS px,不随屏宽比例增大;原显示文案不更名。
  2. 基础信息:页面禁止纵向滚动、滚动链及下拉回弹,肤质轮播也不再把纵向手势交给页面。正常高度保留原间距;短视口只压缩纵向留白及肤质插画的可用高度,控件、说明、提交按钮完整可见,不以截掉下半页实现禁滚。出生年月、性别、省市的独立滚轮弹层仍支持纵向滑动。触摸防回弹监听只挂在基础信息页,不拦截弹层或报告页。
  3. 语音:根因在 HeadPose.check 的正脸分支——正脸角度偏向一侧时,用「请向左/右转头」提示回正,和第二步侧脸指令混淆。现在正脸角度不合格统一提示「请正对屏幕」,不播侧脸转头指令;setHint 还按当前步骤和正脸照片是否已保存做防护。下一步语音必须有上一张已校验保存的照片,既有单通道队列保证「拍摄完成」先播完、再播侧脸引导。侧脸阶段的方向提示不变。

不更改拍照角度/距离/光线/稳定时长阈值,不改检测算法、报告保存、推荐、微信配置或数据。现有白色人头扫描页和三组报告跟手交互不变。未追踪的 new_feedback/ 不纳入提交。

验证

本地 8080 服务运行后:

H5_ARTIFACT_DIR=/tmp/juzi-profile-voice-fix-20261012 node h5/test/report-touch-layout.mjs
H5_PROFILE_FONTS=1 H5_ARTIFACT_DIR=/tmp/juzi-profile-voice-fix-20261012 node h5/test/profile-interaction.mjs
node h5/test/capture-quality-browser.mjs
node h5/test/customer-feedback-second.js
node h5/test/customer-feedback-fourth.js
node h5/test/customer-feedback-fourth.mjs
node h5/test/customer-feedback-third.mjs
node h5/test/scan-placeholder.mjs
node h5/test/login-performance.mjs
node h5/test/report-persistence.mjs
node h5/test/recommendation.js
node h5/test/regression.js
  • 五种屏宽下检查 0/75/82/100/缺失分数,标题加分数整体居中、均在圆内,年龄间距精确为 25px,报告的纵向滚动与三组横滑保留。
  • 基础信息在 320×568、375×667、375×726、390×664、414×896、480×726、375×440 下不滚动且控件完整;真实触摸纵拖及鼠标滚轮不移动页面,之后横滑仍正常。用真实纵向触摸确认出生年月滚轮可改变选择,验证取消不保存以及账号隔离/重载记忆。
  • 用真实本地人脸模型和已有照片组成合成相机视频:先提供侧脸作为不合格正脸,停留第一步并实际播「请正对屏幕」,无「转头」/下一步/完成音;再提供合格正脸,最终 JPEG 校验通过后自动保存并播「拍摄完成」,实际音频播完再开始第二步引导,随后完成三视图检测流程。
  • 语音测试记录真实 MP3 解码后的 WebAudio 起播时间及当时屏幕步骤,不把语音文件预加载误认为起播。浏览器、无音频支持、真机系统音量/权限等行为仍以设备实际能力为准。
  • 浏览器测试拦截模拟账号和分析响应或使用隔离数据服务,不写线上报告、不调用付费接口。

发布

基线 2a49ebd,目标 ubuntu@1me.xajuzi.com:/home/ubuntu/juzi、juzi-h5.service。沿用 Git bundle 快进同步,不代用户推送 origin,不改服务器配置和历史报告。发布后经公网执行布局、基础信息和真实自动拍照/语音测试,核对资源哈希、服务健康及匿名访问保护。