{"record":{"id":"da1385c26c4e5193","repo":"zed-industries/zed","slug":"zed-html-output-defined","errorCode":null,"errorMessage":"zed-html output defined","messagePattern":"zed-html output defined","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/docs_preprocessor/src/main.rs","lineNumber":692,"sourceCode":"            );\n            ActionManifest {\n                actions: Vec::new(),\n                schema_definitions: serde_json::Map::new(),\n            }\n        }\n    }\n}\n\nfn handle_postprocessing() -> Result<()> {\n    let logger = zlog::scoped!(\"render\");\n    let mut ctx = mdbook::renderer::RenderContext::from_json(io::stdin())?;\n    let output = ctx\n        .config\n        .get_mut(\"output\")\n        .expect(\"has output\")\n        .as_table_mut()\n        .expect(\"output is table\");\n    let zed_html = output.remove(\"zed-html\").expect(\"zed-html output defined\");\n    let redirects = zed_html\n        .get(\"redirect\")\n        .and_then(|redirects| redirects.as_table())\n        .map(|redirects| {\n            redirects\n                .iter()\n                .filter_map(|(source, destination)| {\n                    destination\n                        .as_str()\n                        .map(|destination| (source.clone(), destination.to_string()))\n                })\n                .collect::<Vec<_>>()\n        });\n    let default_description = zed_html\n        .get(\"default-description\")\n        .expect(\"Default description not found\")\n        .as_str()\n        .expect(\"Default description not a string\")","sourceCodeStart":674,"sourceCodeEnd":710,"githubUrl":"https://github.com/zed-industries/zed/blob/f4178619acd0d47ea1f76a2025c42962c6d6638c/crates/docs_preprocessor/src/main.rs#L674-L710","documentation":"Panics in handle_postprocessing when the `zed-html` backend entry is missing from the mdbook output config, even though the output table exists. This renderer only runs when zed-html is the configured backend, so its absence indicates a mismatched or stale configuration.","triggerScenarios":"Thrown at crates/docs_preprocessor/src/main.rs:692 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Add `[output.zed-html]` to book.toml","Confirm the preprocessor is wired to the zed-html backend, not another output"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"f4178619acd0d47ea1f76a2025c42962c6d6638c","analyzedAt":"2026-08-20T19:29:52.058Z","contentChangedAt":"2026-08-20T19:29:52.058Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}