From 826e86950b2c34200458c9b1a8e10e4869c283d0 Mon Sep 17 00:00:00 2001 From: Predrag Radenkovic Date: Sun, 10 May 2026 22:58:47 +0200 Subject: [PATCH] fix RenderingCreditBalanceTooLow error code handling The client mapped the API error code "CreditBalanceTooLow" but the server actually sends "RenderingCreditBalanceTooLow", so the error fell through to a generic "400 Client Error: BAD REQUEST" message instead of surfacing the server's message (which contains the purchase/upgrade URL). Align the client with the server's error code and pass the server message through unchanged. --- codeplain_REST_api.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/codeplain_REST_api.py b/codeplain_REST_api.py index 425d7380..3ccc9a80 100644 --- a/codeplain_REST_api.py +++ b/codeplain_REST_api.py @@ -18,7 +18,7 @@ ERROR_CODE_EXCEPTIONS = { "FunctionalRequirementTooComplex": plain2code_exceptions.FunctionalRequirementTooComplex, "ConflictingRequirements": plain2code_exceptions.ConflictingRequirements, - "CreditBalanceTooLow": plain2code_exceptions.RenderingCreditBalanceTooLow, + "RenderingCreditBalanceTooLow": plain2code_exceptions.RenderingCreditBalanceTooLow, "LLMInternalError": plain2code_exceptions.LLMInternalError, "MissingResource": plain2code_exceptions.MissingResource, "PlainSyntaxError": plain2code_exceptions.PlainSyntaxError, @@ -99,8 +99,8 @@ def _raise_for_error_code(self, response_json): raise plain2code_exceptions.MissingResource(f"Missing resource: {message}\n") if error_code == "ConflictingRequirements": raise plain2code_exceptions.ConflictingRequirements(f"Conflicting requirements: {message}\n") - if error_code == "CreditBalanceTooLow": - raise plain2code_exceptions.RenderingCreditBalanceTooLow(f"Credit balance too low: {message}\n") + if error_code == "RenderingCreditBalanceTooLow": + raise plain2code_exceptions.RenderingCreditBalanceTooLow(message) if error_code == "LLMInternalError": raise plain2code_exceptions.LLMInternalError(f"LLM internal error: {message}\n") if error_code == "PlainSyntaxError":