Skip to content

Commit 2f15e96

Browse files
committed
fix: set default for CollectionField.required and improve error handling in ai.py
1 parent 58d8309 commit 2f15e96

1 file changed

Lines changed: 4 additions & 1 deletion

File tree

  • apps/python-service/routers

‎apps/python-service/routers/ai.py‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ class Message(BaseModel):
4343
class CollectionField(BaseModel):
4444
name: str
4545
type: str
46-
required: bool
46+
required: bool = False
4747
ref: str | None = None
4848

4949
class CollectionSchema(BaseModel):
@@ -207,6 +207,9 @@ async def collection_creator(request: CollectionCreatorRequest, req: Request):
207207
logger.error("[Trace: %s] ⏱️ AI Collection Creator request timed out after 30s for developer_id=%s", trace_id, request.developer_id, exc_info=True)
208208
raise HTTPException(status_code=504, detail="AI request timed out") from e
209209
except Exception as e:
210+
error_name = e.__class__.__name__
210211
logger.error("[Trace: %s] ❌ AI Collection Creator unhandled failure for developer_id=%s: %s", trace_id, request.developer_id, e, exc_info=True)
212+
if "BadRequest" in error_name or "Validation" in error_name:
213+
raise HTTPException(status_code=400, detail=f"AI generation failed validation: {str(e)}") from e
211214
raise HTTPException(status_code=500, detail="Internal server error") from e
212215

0 commit comments

Comments
 (0)