抽屉分隔板设计

入口：index.html。全部脚本、Three.js 和 ZIP 能力已内嵌，无 CDN、远程字体或运行期网络请求。设计为下载后用现代浏览器直接打开。

第一次：输入抽屉最窄处的内宽、内深、净高和卡尺实测板厚；选择板高。点击格子输入净宽/净深，或直接拖动分隔线。右侧加入物品的最大外包络尺寸，检查是否跨板、重叠或超高。3D 页面可旋转、缩放、展开装配；模型的槽口是与导出共用的实体轮廓。

带走结果：下载完整切割包 ZIP，内有 project.json、parts.csv、逐张 1:1 SVG、coupon.svg 试插小样、加工说明。单独保存方案 JSON，可重新打开继续修改。浏览器自动暂存只是便利，重要方案请下载。

下一件：点击“下一个抽屉”，输入新宽深；工艺设置、板高、原料幅面和格子比例被复用，旧物品清空。请再核对新抽屉净高，并加入新物品。操作支持撤销/重做；拖动是一次撤销步骤。

几何约定：两个方向全跨分隔板，每向至少一块；A 前后板上开半槽，B 左右板下开半槽，各深板高的一半，底部齐平。每侧边隙从两端扣除。物品检查使用扣除边隙的保守有效范围，按平放长方体包络和90度方向检查，不计算斜放、堆叠、取放余量、材料强度或变形。

加工约定：槽宽 = 实测板厚 + 槽余量。导出为成品名义轮廓，加工方必须根据设备实际切缝向材料外侧补偿一次。请先用相同材料切试插小样，再确定余量。无通用“保证卡紧”的固定余量。直角槽适合激光/线切割；铣刀内圆角/狗骨处理不在本工具范围。原料留边8 mm、件距6 mm，顺序排版，不声称最省料。格栅没有外框，依靠抽屉壁限制侧向移动。

实际检查：模型14项独立判据通过；2个真实输出ZIP已由独立.NET解压、XML/CSV解析核对板件数量、mm单位、闭合轮廓、净长和高度。原生Browser验证了HTTP首屏、真实WebGL组装及爆炸、JSON导入、真实键盘净尺寸修改、直接拖线与撤销、下一抽屉与自有物品、刷新恢复。下载事件等待超时，未把按钮反馈称为浏览器下载落盘成功。

未验证：file://离线冷启动（本轮浏览器策略限制，未尝试）、实际切割及物理装配、手机触摸实机。没有借助外部Playwright绕过限制。单文件依赖封装已静态核查。

制作源码和模型检查位于仓库 qa/evaluations/divider/；实际下载验收位于 qa/drawer_workflow.py。

最终界面补充：净尺寸在画布上方独立读数栏显示，点选格子即可查看，不再写在物品下面。页头固定的下载切割包入口与右侧输出使用同一生成逻辑，原料过小时同时禁用。
自动验收通过实际浏览器下载、解压并读取切割包，再恢复下载的方案文件。
