Skip to content

PassVault v2.2.3

Choose a tag to compare

@17sho 17sho released this 26 Aug 14:01

PassVault v2.2.3

中文

v2.2.3 汇总发布 v2.2.2 之后完成的 Cloudflare 移动端体验与敏感状态生命周期修复。它不改变数据格式、D1/R2 schema、API 协议或加密协议。

修复与改进

  • 手机端文本输入、文本区域和下拉控件统一使用至少 16px 字号,降低 iOS Safari 聚焦输入时自动放大页面的概率。
  • 首页与安全分享页采用固定缩放 viewport;这会禁用页面双指缩放,是本版本明确的移动端体验取舍。
  • 手机长列表的条目操作菜单限制在列表真实可见区域内,避免顶部菜单项被搜索/筛选工具栏遮挡。
  • 手机详情返回列表时,退场层在清理详情 DOM 前完全透明,避免 WebKit 尾帧出现可见跳变。
  • 编辑器关闭、后台隐私遮挡和锁库时清理敏感编辑基线;锁库同时重置恢复中心与收藏/置顶客户端注册表,避免旧会话状态残留。

安全与兼容性

  • 不改变 Passkey/WebAuthn、Vault Key、KEK、主密码、附件或安全分享加密协议。
  • 不需要新增 migration;完整 Cloudflare migration 链仍截至 0034_admin_control_center.sql。
  • 制品不包含生产凭据、数据库导出、备份、日志、截图、视频、Git 元数据或 node_modules。
  • Cloudflare 制品包含公开源码、平台闭合测试、文档和 Agent 指引;依赖 Linux 后端或完整仓库布局的测试保留在 GitHub 完整源码分支,不进入 Cloudflare 归档。
  • 本次只发布并验证 Cloudflare 归档;Linux 运行时未部署或生产验证。

最终验证

  • 全仓最终候选:632 项,630 通过,0 失败,2 条件跳过。
  • 干净提交归档门禁:5/5 通过,0 跳过。
  • Cloudflare 归档新鲜解压后:npm ci 审计 0 漏洞;包内测试 220/220 通过。
  • Lint、文档、TypeScript、Build、diff 与 283 个候选文件脱敏扫描通过。
  • Chromium 与 WebKit 移动端回归通过;Linux WebKit 仅为 Safari 近似环境,不等同于真实 iPhone Safari。

SHA-256

8ae1e6b17ae12b9adbefcd7f96c224017c03764e8305bbb028d376d3e523bb24  pass-vault-v2-cloudflare-2.2.3.tar.gz
ca186e47c04882ae86ce6e31fd696dfaa8b62ed7fdf83544e269a6d3fb3c217f  pass-vault-v2-cloudflare-2.2.3.zip

English

PassVault v2.2.3 publishes the Cloudflare mobile-experience and sensitive-state lifecycle fixes completed after v2.2.2. It does not change data formats, the D1/R2 schema, API contracts, or cryptographic protocols.

Fixes and improvements

  • Mobile text inputs, textareas, and selects use at least 16px text to reduce iOS Safari focus zoom.
  • The main app and secure-share page use a fixed-scale viewport. This intentionally disables pinch zoom as an explicit mobile UX trade-off.
  • Mobile row action menus stay inside the list's actual visible interval so search/filter chrome cannot cover upper actions.
  • Mobile detail exits become fully transparent before detail DOM cleanup, preventing a visible WebKit end-frame jump.
  • Editor close, background privacy shielding, and vault locking clear sensitive editor baselines; locking also resets recovery and favorite/pin client registries.

Security and compatibility

  • No changes to Passkey/WebAuthn, Vault Key, KEK, master-password, attachment, or secure-share cryptographic protocols.
  • No new migration is required; the Cloudflare migration chain still ends at 0034_admin_control_center.sql.
  • Production credentials, database exports, backups, logs, screenshots, videos, Git metadata, and node_modules are excluded.
  • Cloudflare archives contain public source, platform-closed tests, documentation, and Agent guidance. Tests requiring Linux or the full repository topology remain in the complete GitHub source branch.
  • Only the Cloudflare archives were released and verified; Linux was not deployed or production-verified.

Final verification

  • Repository candidate: 632 tests, 630 passed, 0 failed, 2 conditionally skipped.
  • Clean-commit archive gate: 5/5 passed, 0 skipped.
  • Fresh Cloudflare extraction: npm ci audit 0 vulnerabilities; archive suite 220/220 passed.
  • Lint, documentation, TypeScript, build, diff, and secret scanning across 283 candidate files passed.
  • Chromium and WebKit mobile regressions passed. Linux WebKit is only a Safari approximation, not real-device iPhone Safari evidence.