Skip to content

v1.13.0 · 分享、离线与导入校验

Choose a tag to compare

@gh503 gh503 released this 25 Oct 16:03
· 5 commits to main since this release

v1.13.0 · 分享、离线与导入校验

Studio 从“能算”补到“能带走、能断网打开、坏数据不崩”。

新增

  • 分享链接
    • 顶部“分享”把当前装配编码进 URL hash(#d=...)并复制;
    • 打开链接自动载入并重新求解;
    • 超过 60000 字符拒绝,提示导出 JSON。
  • PWA 离线壳
    • manifest.webmanifest / pwa.js / sw.js;
    • 缓存 Studio 壳和组件数据,导航 network-first,静态资源 stale-while-revalidate;
    • 断网刷新实测仍能打开并求解(首次访问需在线)。
  • 导入/恢复形状校验
    • MODKIT_ASSEMBLY.check() 在 validate() 前检查 JSON 对象、非空 components、
      id 唯一、type 存在、parent 引用、at/rot/spin 数值、根组件恰好 1 个;
    • 导入和本地草稿都会先过这一层,错误显示前几条。
  • 本地草稿元数据
    • localStorage 存 {schema, savedAt, assembly},兼容旧裸装配格式。
  • 测试 276 → 278。

边界

  • 分享链接是快照;后续编辑不会自动改写已复制的链接。
  • 离线首次访问仍需在线;Service Worker 只缓存同源 GET。
  • 仍是软件装配验证;没有采购/打印/装配/上电/标定;物理闸门 0/5。

验证

  • make check 全绿;278 项 pytest;7 个装配预设 PASS。
  • 浏览器 QA:分享链接往返、hashchange 载入、断网刷新、无控制台异常。
  • 发布包 SHA256 见 SHA256SUMS。

详细说明:docs/67-网页设计器.md