Skip to content

v1.9.0 · CLI 预算优化器

Choose a tag to compare

@gh503 gh503 released this 25 Oct 15:03
· 10 commits to main since this release

v1.9.0 · CLI 预算优化器

v1.8 的预算优化器现在不只活在网页里。命令行也能生成同一批候选、写报告、直接产出新装配 JSON。

新增

# 列出候选
modkit assemble suggest assemblies/m1.json

# 纯 JSON 元数据(可直接 pipe 给 jq)
modkit assemble suggest assemblies/m1.json --json

# Markdown 报告
modkit assemble suggest assemblies/m1.json --out /tmp/budget.md

# 应用候选,写新装配
modkit assemble suggest assemblies/m1.json \
  --apply drop-elbow --out /tmp/m1-opt.json

# 继续正常流程
modkit assemble validate /tmp/m1-opt.json
modkit assemble plan /tmp/m1-opt.json --out cad/out/m1-opt
  • software/modkit/optimizer.py:与 web/budget-core.js 同语义的单步候选;
    每个候选重新 assembly.validate,按 BOM 节省 排序。
  • m1 的 drop-elbow:18→15 组件、4→3 关节、¥1127→¥968。
  • --apply 不覆盖原文件;新 JSON 名字自动加 -opt,描述记录来源候选。
  • 网页端 BOM → 预算优化保持同步;两端对 7 个预设的候选结果一致。
  • 测试 269 → 271。

边界

  • 单步候选,不是全局最优;没有组合搜索/多目标加权。
  • 仍然是软件装配验证:AABB 粗碰撞/静载/质量/功率;没有动力学、网格碰撞、
    运动后干涉。
  • 去掉肘关节是能力裁剪,不是免费降本。
  • 没有采购/打印/装配/上电/标定;物理闸门 0/5。

验证

  • make check 全绿;271 项 pytest;7 个装配预设 PASS。
  • CLI:suggest、--json、--out、--apply 均实测;写出的 JSON 再校验 PASS。
  • 发布包 SHA256 见 SHA256SUMS。

详细说明:docs/68-预算优化器.md