# Verification fixtures

`benchmarks` 包提供固定、可读、离线的业务数据集，用于验证规则引擎的结果和操作规模：

- `small-real-world`：手机 BOM、税则改变、RVC 和缺失声明；3 个案例，20 个预期操作。
- `deep-multi-level-bom`：三层装配图；8 个节点，4 条规则，32 个预期操作。
- `boundary-rvc`：60% 临界值和低一个基点的失败值；用于防止浮点舍入回归。
- `conflict-declarations`：同一材料的冲突声明和无证据声明。
- `procurement-options`：成员区域、非成员区域和未知原产地候选。

benchmark 的 `operation_count` 是由固定 fixture 提供的逻辑操作计数，`throughput()` 只是每案例的整数平均值。没有稳定的本机计时器输入时，报告明确输出 `wall_clock=caller-supplied`，不会把机器相关耗时伪装成可比较基准。若调用方提供计时值，应同时记录操作系统、MoonBit 版本、目标后端、优化级别和 fixture 版本。

本地运行：

```bash
moon test benchmarks --deny-warn
moon run cmd/rulesorigin -- --demo
```
