From 62043d66929080fa1ff48c81e6e228c537fd409a Mon Sep 17 00:00:00 2001 From: Joel Natividad <1980690+jqnatividad@users.noreply.github.com> Date: Wed, 5 Mar 2025 06:31:09 -0500 Subject: [PATCH] fix: `describegpt` add error handling when LLM API response format is not in expected format --- src/cmd/describegpt.rs | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/cmd/describegpt.rs b/src/cmd/describegpt.rs index a9c1c7406..33b753102 100644 --- a/src/cmd/describegpt.rs +++ b/src/cmd/describegpt.rs @@ -235,7 +235,14 @@ fn is_valid_model( } else { args.flag_model.clone().unwrap() }; - let models = response_json["data"].as_array().unwrap(); + let models = match response_json["data"].as_array() { + Some(models) => models, + None => { + return fail_clierror!( + "Invalid response: 'data' field is not an array or is missing\n{response_json:?}" + ) + }, + }; for model in models { if model["id"].as_str().unwrap() == given_model { return Ok(true);