{"record":{"id":"2ebf740586804f19","repo":"zellij-org/zellij","slug":"invalid-combination-of-alignment-alignment-and","errorCode":null,"errorMessage":"Invalid combination of alignment ({alignment}) and direction ({direction})","messagePattern":"Invalid combination of alignment \\((.+?)\\) and direction \\((.+?)\\)","errorType":"exception","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"zellij-server/src/panes/tiled_panes/tiled_pane_grid.rs","lineNumber":732,"sourceCode":"                result.push(*pid)\n            }\n        }\n        Ok(result)\n    }\n\n    /// Searches for contiguous panes\n    fn contiguous_panes_with_alignment(\n        &self,\n        id: &PaneId,\n        border: &HashSet<usize>,\n        alignment: &Direction,\n        direction: &Direction,\n    ) -> Result<BorderAndPaneIds> {\n        let err_context = || {\n            format!(\"failed to find contiguous panes {direction} from pane {id:?} with {alignment} alignment\")\n        };\n        let input_error =\n            anyhow!(\"Invalid combination of alignment ({alignment}) and direction ({direction})\");\n\n        let pane_to_check = self\n            .get_pane_geom(id)\n            .with_context(|| no_pane_id(id))\n            .with_context(err_context)?;\n        let mut result = vec![];\n        let mut aligned_panes: Vec<_> = self\n            .pane_ids_aligned_with(id, alignment)\n            .and_then(|pane_ids| {\n                Ok(pane_ids\n                    .iter()\n                    .filter_map(|p_id| self.get_pane_geom(p_id).map(|pane_geom| (*p_id, pane_geom)))\n                    .collect())\n            })\n            .with_context(err_context)?;\n\n        use Direction::Down as D;\n        use Direction::Left as L;","sourceCodeStart":714,"sourceCodeEnd":750,"githubUrl":"https://github.com/zellij-org/zellij/blob/5cb5df5cce4e16c5d1c57c7c062e4a90a7823c41/zellij-server/src/panes/tiled_panes/tiled_pane_grid.rs#L714-L750","documentation":"Error \"Invalid combination of alignment ({alignment}) and direction ({direction})\" thrown in zellij-org/zellij.","triggerScenarios":"Occurs when a protobuf enum value received over IPC has no matching variant; conversion rejects the unknown value.","commonSituations":"Typical of version skew between client and server, or a malformed/corrupted IPC message.","solutions":["Validate the value against the allowed enum range before constructing the message.","Ensure client and server use matching protobuf definitions; regenerate bindings if versions differ."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"5cb5df5cce4e16c5d1c57c7c062e4a90a7823c41","analyzedAt":"2026-08-19T07:42:58.758Z","contentChangedAt":"2026-08-19T07:42:58.758Z","schemaVersion":2},"datasetVersion":"2026-09-23T08:17:48.524Z"}