fix(api): constrain shopping suggestion enums

This commit is contained in:
Piotr Oleszczyk 2026-03-08 12:06:39 +01:00
parent cebea2ac86
commit 5d9d18bd05
2 changed files with 17 additions and 4 deletions

View file

@ -255,12 +255,12 @@ class InventoryUpdate(SQLModel):
class ProductSuggestion(PydanticBase):
category: str
category: ProductCategory
product_type: str
key_ingredients: list[str]
target_concerns: list[str]
why_needed: str
recommended_time: str
recommended_time: DayTime
frequency: str
@ -274,12 +274,12 @@ class ShoppingSuggestionResponse(PydanticBase):
class _ProductSuggestionOut(PydanticBase):
category: str
category: ProductCategory
product_type: str
key_ingredients: list[str]
target_concerns: list[str]
why_needed: str
recommended_time: str
recommended_time: DayTime
frequency: str
@ -981,6 +981,11 @@ ZASADY:
7. Jeśli użytkownik ma uszkodzoną barierę, unikaj silnych eksfoliantów i retinoidów
8. Zwracaj uwagę na ewentualne konflikty polecanych składników z tymi, które użytkownik już posiada (np. nie polecaj peptydów miedziowych jeśli użytkownik nadużywa kwasów)
9. Odpowiadaj w języku polskim
10. Używaj wyłącznie dozwolonych wartości enumów poniżej - nie twórz synonimów typu "night", "evening" ani "treatment"
DOZWOLONE WARTOŚCI ENUMÓW:
- category: "cleanser" | "toner" | "essence" | "serum" | "moisturizer" | "spf" | "mask" | "exfoliant" | "hair_treatment" | "tool" | "spot_treatment" | "oil"
- recommended_time: "am" | "pm" | "both"
Format odpowiedzi - zwróć wyłącznie JSON zgodny z podanym schematem."""