zeroclaw-labs/zeroclaw · error
memory.candidate_multiplier must be in 1..={MAX_MEMORY_RERAN
Error message
memory.candidate_multiplier must be in 1..={MAX_MEMORY_RERANK_CANDIDATE_MULTIPLIER} (got {}) What it means
Error "memory.candidate_multiplier must be in 1..={MAX_MEMORY_RERANK_CANDIDATE_MULTIPLIER} (got {})" thrown in zeroclaw-labs/zeroclaw.
Source
Thrown at crates/zeroclaw-config/src/schema.rs:11553
fn default_rerank_strategy() -> String {
"none".into()
}
fn default_mmr_lambda() -> f64 {
0.7
}
fn default_importance_weight() -> f64 {
0.2
}
fn default_recency_weight() -> f64 {
0.1
}
fn default_fts_early_return_score() -> f64 {
0.85
}
fn validate_memory_rerank_config(memory: &MemoryConfig) -> Result<()> {
if !(1..=MAX_MEMORY_RERANK_CANDIDATE_MULTIPLIER).contains(&memory.candidate_multiplier) {
anyhow::bail!(
"memory.candidate_multiplier must be in 1..={MAX_MEMORY_RERANK_CANDIDATE_MULTIPLIER} (got {})",
memory.candidate_multiplier
);
}
for (path, value) in [
("memory.min_relevance_score", memory.min_relevance_score),
("memory.mmr_lambda", memory.mmr_lambda),
("memory.importance_weight", memory.importance_weight),
("memory.recency_weight", memory.recency_weight),
] {
if !value.is_finite() || !(0.0..=1.0).contains(&value) {
anyhow::bail!("{path} must be a finite number in 0.0..=1.0 (got {value})");
}
}
Ok(())
}View on GitHub (pinned to 88bb9c8533)
Solutions
- Set memory.candidate_multiplier to an integer within the allowed 1..=MAX range in config.toml.
When it happens
Trigger: Thrown at crates/zeroclaw-config/src/schema.rs:11553 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of zeroclaw-labs/zeroclaw@88bb9c8533 (2026-08-23).
Data as JSON: /api/errors/b6d77fb9040e548f.
Report an issue: GitHub.