You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
cel-js types a record field number as `double` and a bare integer literal as
`int`, with overloads only for matching pairs. An everyday formula like
`record.amount / 100` or `record.price * 2` therefore faulted at runtime
(`no such overload: dyn<double> / int`) and the engine silently returned null —
build-green, empty at runtime.
Register the missing `double <op> int` / `int <op> double` overloads for
`+ - * / %` (result computed as double, per CEL mixed-numeric promotion).
Pure int/int is untouched, so integer division (`7 / 2 == 3`) is preserved;
overloads fire only on a genuine double×int pair. Composes with the existing
string-field hydration retry (`"120000.00" + 1 == 120001`).
Reverts the `/ 100.0` float-literal workaround in example-crm's
`expected_revenue` back to plain `/ 100` now that it computes natively.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
0 commit comments