{"record":{"id":"6b2ea6033bdbe2f3","repo":"zeroclaw-labs/zeroclaw","slug":"entry-path-default-base-duplicates-the-list-s-de","errorCode":null,"errorMessage":"{entry_path}.default_base duplicates the list's default_base entry","messagePattern":"(.+?)\\.default_base duplicates the list's default_base entry","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/zeroclaw-config/src/schema.rs","lineNumber":15524,"sourceCode":"    ///\n    /// A serialized Matrix event has fixed JSON, message, and relation\n    /// overhead in addition to UTF-8 source text. Keeping this floor avoids\n    /// accepting a budget that cannot contain even a one-scalar event.\n    pub fn effective_message_max_bytes(&self) -> usize {\n        self.message_max_bytes.max(MATRIX_MIN_MESSAGE_MAX_BYTES)\n    }\n\n    /// Validate the order-independent tool argument display policy.\n    pub fn validate_stream_tool_arguments(&self) -> Result<()> {\n        let mut saw_defaults = false;\n        let mut tools = std::collections::HashSet::new();\n\n        for (index, entry) in self.stream_tool_arguments.iter().enumerate() {\n            let entry_path = format!(\"stream_tool_arguments[{index}]\");\n            match entry {\n                StreamToolArgumentEntry::Defaults { .. } => {\n                    if saw_defaults {\n                        anyhow::bail!(\n                            \"{entry_path}.default_base duplicates the list's default_base entry\"\n                        );\n                    }\n                    saw_defaults = true;\n                }\n                StreamToolArgumentEntry::Tool {\n                    tool,\n                    include,\n                    exclude,\n                    ..\n                } => {\n                    if tool.is_empty() || tool.trim() != tool {\n                        anyhow::bail!(\n                            \"{entry_path}.tool must be a non-empty exact tool name without surrounding whitespace\"\n                        );\n                    }\n                    if !tools.insert(tool.as_str()) {\n                        anyhow::bail!(\"{entry_path}.tool duplicates the rule for tool '{tool}'\");","sourceCodeStart":15506,"sourceCodeEnd":15542,"githubUrl":"https://github.com/zeroclaw-labs/zeroclaw/blob/88bb9c8533fc57ed7a03e36ca7c9ed2bf8336dcc/crates/zeroclaw-config/src/schema.rs#L15506-L15542","documentation":"Error \"{entry_path}.default_base duplicates the list's default_base entry\" thrown in zeroclaw-labs/zeroclaw.","triggerScenarios":"Thrown at crates/zeroclaw-config/src/schema.rs:15524 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Remove the duplicate default_base entry; keep a single default_base for the list."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"88bb9c8533fc57ed7a03e36ca7c9ed2bf8336dcc","analyzedAt":"2026-08-23T01:07:41.857Z","schemaVersion":2},"datasetVersion":"2026-08-23T08:06:27.607Z"}