{"record":{"id":"5e6fc4933f450a2d","repo":"affaan-m/ECC","slug":"page-size-must-be-greater-than-0","errorCode":null,"errorMessage":"page_size must be greater than 0","messagePattern":"page_size must be greater than 0","errorType":"validation","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"ecc2/src/observability/mod.rs","lineNumber":288,"sourceCode":"    pub fn log(&self, event: &ToolCallEvent) -> Result<ToolLogEntry> {\n        let timestamp = chrono::Utc::now().to_rfc3339();\n\n        self.db.insert_tool_log(\n            &event.session_id,\n            &event.tool_name,\n            &event.input_summary,\n            &event.input_params_json,\n            &event.output_summary,\n            &event.trigger_summary,\n            event.duration_ms,\n            event.risk_score,\n            &timestamp,\n        )\n    }\n\n    pub fn query(&self, session_id: &str, page: u64, page_size: u64) -> Result<ToolLogPage> {\n        if page_size == 0 {\n            bail!(\"page_size must be greater than 0\");\n        }\n\n        self.db.query_tool_logs(session_id, page.max(1), page_size)\n    }\n}\n\npub fn log_tool_call(db: &StateStore, event: &ToolCallEvent) -> Result<ToolLogEntry> {\n    ToolLogger::new(db).log(event)\n}\n\n#[cfg(test)]\nmod tests {\n    use super::{SuggestedAction, ToolCallEvent, ToolLogger};\n    use crate::config::Config;\n    use crate::session::store::StateStore;\n    use crate::session::{Session, SessionMetrics, SessionState};\n    use std::path::PathBuf;\n","sourceCodeStart":270,"sourceCodeEnd":306,"githubUrl":"https://github.com/affaan-m/ECC/blob/06c5e118c4d3e6c3b7f9445f973a2194c82de193/ecc2/src/observability/mod.rs#L270-L306","documentation":"Guard in the observability store's query pagination: a page_size of 0 was passed, which would make LIMIT 0 return nothing and make page math meaningless. Page size must be at least 1.","triggerScenarios":"Thrown at ecc2/src/observability/mod.rs:288 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Pass a page_size greater than 0.","Check for config or CLI parsing that produced 0 for page_size."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"06c5e118c4d3e6c3b7f9445f973a2194c82de193","analyzedAt":"2026-08-18T11:27:13.915Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}