Repository navigation
fix(converter): 修复批量导出、预览和挂孔故障 - #295
Conversation
Bound mesh and merged-3MF working memory while preserving geometry and material identity. Retain completed single downloads after failed merges, publish native writes atomically, and preflight imported template capacity. Share bounded display sizing across core and API paths. Commit keychain drag coordinates once per frame and preserve complete source palettes when reading older partial preview caches.
…pr295-main-integration
MOVIBALE
left a comment
There was a problem hiding this comment.
结论:valid_fix,可合并;等待最终 head 的全部 CI 成功后执行。
复核 head:22d34054e55a7f2a935e5c3e419a175c2c8c33f6;当前 main:295c5b3cb2a17cc244020217d991e70cb80b8138。已检查六张转换工单的根因、原修复前证据、完整差异和本轮回归。同步主线无冲突,另补中英文公告。
人可复验:按仓库方式启动 python api_server.py 与前端 pnpm dev;导入带透明区域的 PNG,选经典 LUT 的 Aliz 四色 RYBW。宽度 120mm 点击预览;再以 30mm 加入三张图,点批量生成并下载 3MF。创意中心开启挂件环,拖动后核对 X/Y 参数和视角旋转。原工单模板六材质/四槽应在生成前返回带数量的 422。
Base 依据:原工单日志和已保留的旧新对照确认整卷数组副本、写入半包、槽位数丢失、显示图过大及坐标重复反馈;挂孔原崩溃栈未在等价场景重新抛出,但旧坐标反馈/通知放大和修复前红测有直接证据。本轮不重跑约 1GB 的原批量模型。
实际结果:
- 真实 Chrome 完整转换界面:模型网格 1200×1800、显示图 1067×1600,物理尺寸/原始编辑图未被降采样。三件批量成功,真正点击下载的 3MF CRC、组件引用、三角形索引和四色材料身份通过。
- 隔离启动器只注入最终合并写入失败,未伪造 API 响应:真实三件 worker 成功,API partial,界面显示明确警告和三条单件下载;实际下载单件 3MF 验证通过。源会话关闭后仍可下载另由真实路由自动回归覆盖。
- 真实 Scene3D + Slider + store、工单轮廓等价场景:200 次鼠标移动及 300 次突发事件,最终坐标与参数框一致,controls/cursor 恢复,无 pageerror。未使用桌面系统交互,本流程 Chrome 可完成。
- 独立后端 181 项通过:atomic/merge/S07/template/worker/error/logging;前端 run_vitest 的 KeychainRing/Loop/property/Scene3D/BatchResultSummary/client 177 项通过。
- 最新主线组合内容:后端 66、前端 144 项通过(含工坊和公告),tsc --noEmit、pnpm build、git diff --check 通过。测试集合不加总冒充独立用例数。
实现质量通过:流式结构读取保留原对象/材料/变换;写入复用同目录临时文件原子发布;partial 单件复用既有下载登记与 TTL;拖动复用现有状态一次提交。没有新框架或拒绝生成的内存限额;S07 只调整并发且至少一条执行。未发现必须修改的 P1/P2。UI 实测基于 960b995,最终 head 仅同步已测试 #285 与公告;组合回归和构建基于最终内容。
AI 审核:gpt-6.1-sol,通过 Codex。上述测试、真实浏览器操作和归档证据均为本轮实际执行;原作者大尺寸重放仅核读,未冒充本轮执行。
Summary
修复六张转换工单暴露的批量导出、网格内存、模板槽位、预览和挂孔交互问题。
Validation
AI assistance
Models and tools
gpt-6.1-sol,通过 Codex,包含主任务和继承该模型的并行子任务。
What each model helped with
调查六张工单,实施内存、导出、预览、槽位校验与拖动修复,编写回归测试,执行素材重放与独立代码复核,整理提交说明。
How the output was checked
Codex 实际运行了 Validation 中列出的测试、构建、真实 API 重放与浏览器交互检查。私有工单素材与生成模型保存在本地/NAS 归档,源码和通用回归测试包含在本 PR。
Notes
批量响应在合并失败时返回 status="partial",已成功项增加可选 download_url,前端提供单件下载。成功合并继续通过 download_url 提供批量 3MF。
素材正常导出在 Mac 验证;Windows 写入中断通过故障注入验证。大图网格和 PNG 使用上述尺寸复核,原始大尺寸的资源耗尽依赖原始日志定位。挂孔原始崩溃调用栈用于定位,当前浏览器验证覆盖拖动反馈与控制恢复。
复核同时修正了相关测试中重复捕获同一日志记录的夹具,以及旧 worker 分析夹具缺少的 preview_colors 字段。
合并前复核补充(2026-11-11)
本补充与主线整合、公告、独立审核由 gpt-6.1-sol(通过 Codex)完成,验证方式如上;保留原作者 Validation,不将其大模型重放记作本轮重新执行。未发布安装包、未变更应用版本号。