{"record":{"id":"c7476f0db053f203","repo":"zellij-org/zellij","slug":"cliassets-missing-terminal-window-size","errorCode":null,"errorMessage":"CliAssets missing terminal_window_size","messagePattern":"CliAssets missing terminal_window_size","errorType":"exception","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"zellij-utils/src/ipc/protobuf_conversion.rs","lineNumber":874,"sourceCode":"impl TryFrom<crate::client_server_contract::client_server_contract::CliAssets>\n    for crate::input::cli_assets::CliAssets\n{\n    type Error = anyhow::Error;\n    fn try_from(\n        cli_assets: crate::client_server_contract::client_server_contract::CliAssets,\n    ) -> Result<Self> {\n        Ok(Self {\n            config_file_path: cli_assets.config_file_path.map(PathBuf::from),\n            config_dir: cli_assets.config_dir.map(PathBuf::from),\n            should_ignore_config: cli_assets.should_ignore_config,\n            configuration_options: cli_assets\n                .configuration_options\n                .map(|o| o.try_into())\n                .transpose()?,\n            layout: cli_assets.layout.map(|l| l.try_into()).transpose()?,\n            terminal_window_size: cli_assets\n                .terminal_window_size\n                .ok_or_else(|| anyhow!(\"CliAssets missing terminal_window_size\"))?\n                .try_into()?,\n            data_dir: cli_assets.data_dir.map(PathBuf::from),\n            is_debug: cli_assets.is_debug,\n            max_panes: cli_assets.max_panes.map(|m| m as usize),\n            force_run_layout_commands: cli_assets.force_run_layout_commands,\n            cwd: cli_assets.cwd.map(PathBuf::from),\n            host_terminal_env: cli_assets.host_terminal_env.into_iter().collect(),\n            initial_panes: if cli_assets.initial_panes.is_empty() {\n                None\n            } else {\n                Some(\n                    cli_assets\n                        .initial_panes\n                        .into_iter()\n                        .map(|p| p.try_into())\n                        .collect::<Result<Vec<_>>>()?,\n                )\n            },","sourceCodeStart":856,"sourceCodeEnd":892,"githubUrl":"https://github.com/zellij-org/zellij/blob/e839bfffa586992364309a685b2c71f3b23c247e/zellij-utils/src/ipc/protobuf_conversion.rs#L856-L892","documentation":"Error \"CliAssets missing terminal_window_size\" thrown in zellij-org/zellij.","triggerScenarios":"Occurs when a protobuf message received over IPC omits the required field; deserialization fails instead of using a default.","commonSituations":"Occurs when a client or plugin sends an incompletely populated message, often from a version mismatch or hand-crafted payload.","solutions":["Include the required 'terminal_window_size' field in the protobuf message before sending it.","Verify the sender populates all mandatory fields; add a presence check before conversion."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"e839bfffa586992364309a685b2c71f3b23c247e","analyzedAt":"2026-08-19T07:42:58.758Z","contentChangedAt":"2026-08-19T07:42:58.758Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}