Reproducibility
Every numeraire call is deterministic on its inputs. The same (model, position, requests) tuple produces the same numeric output to the cent,
on the same JAX backend, in the same kernel version.
We use that property for two things:
- Audit replay. Every response carries a
correlation_id. Pair that with a(model, position, requests)snapshot and you can re-price the exact trade later and prove the output hasn’t drifted. - AOT cache as oracle. Kernel changes that affect numbers are guaranteed to bump the cache key. A cache hit means the kernel hasn’t changed; a cache miss means a numerical correction shipped and you need to re-baseline.
→ Full bit-identity contract + per-version cache-key derivation — coming in v1.3.