pub fn make_error_envelope( kind: &str, code: Option<&str>, terminal_reason: Option<LlmTerminalReason>, user_message: impl Into<String>, raw: Option<String>, ) -> ErrorEnvelope