跳转至

MoonSmith 0.0.1

首个完整发行版本提供四个 MoonBit 模块,以及 macOS arm64、Linux x86_64 的 native CLI。 编译器与配套 core 固定为正式版 0.10.18+6c83a7f62,async 依赖为正式版 0.22.6。

能力

  • 通过类型和作用域约束生成 MoonBit 程序,比较四后端、五配置的执行结果,保存完整原始记录。
  • 可选的等价检查保持稳定成员身份和变换版本。跨程序输出分歧会按原始成员与配置对归约整个程序组, 对最佳组独立确认。每个候选重新缩减原程序并应用相同变换,候选预算默认 16、范围 0–64。
  • replay GROUP_DIR 执行所有保存成员并重新比较,追加组与执行记录。现有案例和尝试的单程序重放继续可用。
  • 构建异常与正常输出分歧分别判定;特定 native release 构造器诊断可进入自动归约,但原始比较仍为未完成。

等价检查默认关闭,通过 execution.equivalent_variants=true 开启。退出码保持一致 0、操作错误 1、 输出分歧 2、比较未完成 3,保存失败优先返回 1。

安装与附件

从 Mooncakes 安装精确版本:

moon install zrr1999/moonsmith/cmd/moonsmith@0.0.1

也可下载匹配平台的预编译包,校验 SHA256SUMS 后解包并将 moonsmith 加入 PATH。 程序仍需宿主安装指定 MoonBit/core 和 C 编译器;选择 JS 配置时还需 Node.js。

CD 发布两平台 CLI 和校验和。当前版本的五配置等价验收、三例历史异常复现、自动归约与独立确认, 以及仓库外安装和重放材料由对应 CI 保存。原万例实验与人工调查材料、双平台历史复现与发行安装 证据已附到 Release,来源见附件 EVIDENCE.md, 使用 SHA256SUMS-EVIDENCE 校验。文件清单、校验方法与发布步骤见发行说明。

验收证据

发行标签对应提交 70ab5fbe08b4569055e273f4c666aaaee3cdcbae。以下运行均核对该提交, 可从对应运行页面查看日志和下载 artifacts:

范围 记录
静态检查与 CodeQL CI - Static Checks
行为测试与双平台旧编译器复现 CI - Tests
解包测试、库消费、安装与历史种子检查 CI - Acceptance,本次主分支运行不含 100 种子扩展任务
四模块与双平台二进制发布 CD - Publish
公开二进制与 Mooncakes 安装、五配置执行及搬迁重放 CI - Distribution,方法与结果见发行安装验收

最小使用方式见可运行示例。Actions artifacts 有保留期限, 原万例材料的摘要和 SHA-256 仍由历史材料清单维护。

边界

最终输出协议仍为 Int 或 Bool;归约范围为本工具生成的程序,不保证全局最小。 进程管理回收直接子进程,进程树隔离与后代清理安排在下一版本。 旧万例实验保留原提交及工具链信息,不作为本版本重新执行的万例结果。 189 字节同模式复现属于人工整理,独立于产品自动归约结果。