core.numericInvariant guard asserts a numeric comparison against an opβs output port at simulation time, turning the observed value into an on-chain invariant. Use it when you need an explicit bound on a produced amount β for example, requiring that a deposit returns at least some minimum number of shares, or that a leftover balance is exactly zero.
Unlike slippage, which expresses tolerance relative to the expected amount in basis points, core.numericInvariant compares against an absolute threshold you supply. It targets handle outputs only.
Config
Example
Require that a zapβsamountOut port produces at least 1000000 base units:

