From ea58ab2166dc8a1fa363d4343d8bd93d3e85662e Mon Sep 17 00:00:00 2001 From: boris Date: Wed, 9 Sep 2026 04:02:11 +0800 Subject: [PATCH] fix: enforce numeric guards in Rhai operator dispatch --- crates/fidc-core/src/platform_expr_strategy.rs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/crates/fidc-core/src/platform_expr_strategy.rs b/crates/fidc-core/src/platform_expr_strategy.rs index 4c978de..59bb088 100644 --- a/crates/fidc-core/src/platform_expr_strategy.rs +++ b/crates/fidc-core/src/platform_expr_strategy.rs @@ -1574,6 +1574,8 @@ impl PlatformExprStrategy { pub fn new(config: PlatformExprStrategyConfig) -> Self { let mut engine = Engine::new(); + engine.set_fast_operators(false); + engine.set_fail_on_invalid_map_property(true); // Dynamic scripts cannot carry a nullable boolean through Rhai's // logical operators. Reject an unknown comparison instead of letting // native NaN comparisons turn missing data into a buy/sell signal.