fix(image-gen): wrap corrupt-config GET in the 422 error envelope

This commit is contained in:
m4
2026-07-24 09:45:57 +08:00
parent 01e674e1bc
commit 8efd4ad0ab
2 changed files with 16 additions and 0 deletions
+4
View File
@@ -658,6 +658,10 @@ class ModelRegistryHttpApi:
response = await asyncio.to_thread(self._image_generation_response)
except ModelRegistryError as exc:
return _error_response(exc, request_id)
except ImageGenError as exc:
return _error_response(
ModelRegistryError(VALIDATION_FAILED, str(exc)), request_id
)
return JSONResponse(response)
async def put_image_generation(self, request: Request) -> Response:
+12
View File
@@ -226,3 +226,15 @@ def test_read_scope_cannot_write(client):
json=_settings_payload(),
)
assert response.status_code == 403
def test_get_corrupt_section_returns_422_envelope(client, config_path):
config_path.write_text(
"image_generation:\n models:\n - id: gpt-image-2\n provider: midjourney\n",
encoding="utf-8",
)
response = client.get("/api/image-generation", headers=_admin_headers())
assert response.status_code == 422
body = response.json()
assert body["code"] == "VALIDATION_FAILED"
assert "midjourney" not in json.dumps(body)