Skip to content

Commit e6b0a81

Browse files
committed
fix: let SyncClientUnavailableError propagate through @catch_llm_exceptions
The decorator catches all exceptions and wraps them into DataDesignerError, which prevented the async bridge proxy from ever seeing the original error. Add an early match case that re-raises SyncClientUnavailableError directly.
1 parent 573ea6a commit e6b0a81

1 file changed

Lines changed: 5 additions & 1 deletion

File tree

  • packages/data-designer-engine/src/data_designer/engine/models

packages/data-designer-engine/src/data_designer/engine/models/errors.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
from pydantic import BaseModel
1212

1313
from data_designer.engine.errors import DataDesignerError
14-
from data_designer.engine.models.clients.errors import ProviderError, ProviderErrorKind
14+
from data_designer.engine.models.clients.errors import ProviderError, ProviderErrorKind, SyncClientUnavailableError
1515

1616
logger = logging.getLogger(__name__)
1717

@@ -184,6 +184,10 @@ def handle_llm_exceptions(
184184
solution=f"Verify your API key for model provider and update it in your settings for model provider {model_provider_name!r}.",
185185
)
186186
match exception:
187+
# Let SyncClientUnavailableError propagate so the async bridge proxy can catch it
188+
case SyncClientUnavailableError():
189+
raise
190+
187191
# Canonical ProviderError from the client adapter layer
188192
case ProviderError():
189193
_raise_from_provider_error(

0 commit comments

Comments
 (0)