innercontext/backend/tests
Piotr Oleszczyk 914c6087bd fix(products): work around Gemini int-enum schema rejection in parse-text
Gemini API rejects int-valued enums (StrengthLevel) in response_schema,
raising a validation error before any request is sent. Fix by introducing
AIActiveIngredient (inherits ActiveIngredient, overrides strength_level and
irritation_potential as Optional[int]) and ProductParseLLMResponse used only
as the Gemini schema. The two-step validation converts ints back to StrengthLevel
via Pydantic coercion. Adds a test covering the numeric strength level path.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-01 22:00:48 +01:00
..
__init__.py Initial commit: backend API, data models, and test suite 2026-02-26 15:10:24 +01:00
conftest.py feat(mcp): add FastMCP server with 14 tools for LLM agent access 2026-02-28 17:59:11 +01:00
test_health.py refactor: split table models into Base/Table/Public for proper FastAPI serialization 2026-02-27 15:37:46 +01:00
test_inventory.py Initial commit: backend API, data models, and test suite 2026-02-26 15:10:24 +01:00
test_product_model.py refactor: split table models into Base/Table/Public for proper FastAPI serialization 2026-02-27 15:37:46 +01:00
test_products.py fix(products): work around Gemini int-enum schema rejection in parse-text 2026-03-01 22:00:48 +01:00
test_routines.py refactor: split table models into Base/Table/Public for proper FastAPI serialization 2026-02-27 15:37:46 +01:00
test_skincare.py refactor(skin): replace trend with texture field on SkinConditionSnapshot 2026-02-28 13:25:57 +01:00