ci: strengthen MoonBit acceptance gates
moon-kalman 是面向 MoonBit 的状态空间、卡尔曼滤波和传感器融合库,参加的是 2026 年 8 月官方 MoonBit 黑客松验收项目。
moon-kalman
Lyllyl789/moon-kalman
核心滤波器已经是可运行实现,不是接口存根:
Kalman1D
KalmanND
EKF
UKF
所有可变数组和矩阵的公开访问器都会返回副本;输入维度、非有限数、奇异创新协方差和缺失观测都有明确结果,不通过异常退出掩盖错误。
let filter = @kalman.Kalman1D::new(0.0, 1.0, 0.02, 0.1) filter.set_gate_threshold(9.210340371976184) filter.predict_without_control() let result = filter.update_if_valid(1.0) println("result=\{result}, state=\{filter.state()}, variance=\{filter.uncertainty()}")
可直接运行仓库中的示例:
moon run examples/sensor_fusion
当前测试套件包含 120 个测试,覆盖矩阵边界、奇异/退化协方差、空输入、维度错误、非有限输入、门限拒绝、丢包、回放、运行时健康状态、轨迹和传感器运行时。生产 .mbt 源码规模超过 8,000 行,测试代码另行统计并持续扩充。
.mbt
发布构建基准入口:
moon run --target native --release benchmarks
基准使用确定性输入并打印校验和,完整三次运行记录见 benchmarks/RESULTS.md。基准不是理论峰值,而是在 Windows、AMD Ryzen 7 5800H、MoonBit stable 0.1.20260814 上实测的本地结果。
benchmarks/RESULTS.md
.github/workflows/test.yml 在 Ubuntu、macOS 和 Windows 上安装官方 stable 工具链,执行:
.github/workflows/test.yml
moon version --all moon update moon check --target all --deny-warn moon build --target all --deny-warn moon test --target all --deny-warn moon fmt && git diff --exit-code moon info && git diff --exit-code
另有 native 覆盖率测试和手动触发的 Mooncakes 发布 workflow。发布不把 token 写入仓库,CI 仅从 GitHub Actions secret 读取 MOONCAKES_TOKEN。
MOONCAKES_TOKEN
项目完成情况和逐项验收证据见 AUGUST_HACKATHON_ACCEPTANCE.md。
AUGUST_HACKATHON_ACCEPTANCE.md
MoonBit 状态空间与卡尔曼滤波库。实现一维和多维 Kalman Filter,包含传感器融合示例,并预留了非线性滤波(EKF/UKF)和异常诊断扩展。
版权所有:中国计算机学会技术支持:开源发展技术委员会 京ICP备13000930号-9 京公网安备 11010802047560号
moon-kalman
moon-kalman是面向 MoonBit 的状态空间、卡尔曼滤波和传感器融合库,参加的是 2026 年 8 月官方 MoonBit 黑客松验收项目。Lyllyl789/moon-kalman能力范围
核心滤波器已经是可运行实现,不是接口存根:
Kalman1D:标量预测、控制输入、缺失观测、NIS 门限、批处理和自适应过程噪声。KalmanND:稠密矩阵状态空间模型、Joseph 协方差更新、部分观测、NIS 门限、控制矩阵、检查点和恢复。EKF/UKF:非线性状态转移、雅可比或 sigma 点、缺失观测、门限和诊断统计。所有可变数组和矩阵的公开访问器都会返回副本;输入维度、非有限数、奇异创新协方差和缺失观测都有明确结果,不通过异常退出掩盖错误。
最小示例
可直接运行仓库中的示例:
验证与基准
当前测试套件包含 120 个测试,覆盖矩阵边界、奇异/退化协方差、空输入、维度错误、非有限输入、门限拒绝、丢包、回放、运行时健康状态、轨迹和传感器运行时。生产
.mbt源码规模超过 8,000 行,测试代码另行统计并持续扩充。发布构建基准入口:
基准使用确定性输入并打印校验和,完整三次运行记录见
benchmarks/RESULTS.md。基准不是理论峰值,而是在 Windows、AMD Ryzen 7 5800H、MoonBit stable 0.1.20260814 上实测的本地结果。CI 与发布
.github/workflows/test.yml在 Ubuntu、macOS 和 Windows 上安装官方 stable 工具链,执行:另有 native 覆盖率测试和手动触发的 Mooncakes 发布 workflow。发布不把 token 写入仓库,CI 仅从 GitHub Actions secret 读取
MOONCAKES_TOKEN。项目完成情况和逐项验收证据见
AUGUST_HACKATHON_ACCEPTANCE.md。