pub fn validate_recency_bias(
recency_bias: Option<f32>,
) -> Result<Option<f32>, CoercionError>Expand description
Validate a recency_bias parameter is within acceptable bounds.
The recency_bias parameter controls temporal decay in semantic search. Invalid values can cause exponential growth (negatives), underflow to zero (extreme values), or corrupt rankings (NaN, Infinity).
§Arguments
recency_bias- The recency_bias value to validate (None means disabled)
§Returns
Ok(Some(value))- The validated recency_bias valueOk(None)- If recency_bias was None (disabled)Err(CoercionError)with helpful message if invalid
§Valid Range
[0.0, 10.0]- 0.0 disables decay, 10.0 is maximum practical decay rate- Rejects: negative values, NaN, Infinity, NegInfinity
§Example
ⓘ
use post_cortex::daemon::validate::validate_recency_bias;
// Valid values
assert_eq!(validate_recency_bias(Some(0.0)).unwrap(), Some(0.0));
assert_eq!(validate_recency_bias(Some(0.5)).unwrap(), Some(0.5));
assert_eq!(validate_recency_bias(Some(10.0)).unwrap(), Some(10.0));
assert_eq!(validate_recency_bias(None).unwrap(), None);
// Invalid values
assert!(validate_recency_bias(Some(-1.0)).is_err());
assert!(validate_recency_bias(Some(f32::NAN)).is_err());
assert!(validate_recency_bias(Some(f32::INFINITY)).is_err());