feat(recipe-generation): STEG 2 RUNDA 2 prep
- Food-safety prompt + lint: doneness krävs, gyllenbrun räcker inte - DensityGPerMl för ginger, örter, mushroom, salsa, corn, olives, peas - RUNDA_2_TARGETS fokuserade på gap-celler (paprika, blandfärs, räkor, torsk, svarta bönor) - Export-verified script + scale-smoke-test - Temp-skript borttagna; inga nycklar kvar i kod
This commit is contained in:
@@ -403,6 +403,12 @@ export class GeminiAamosClient implements AamosClient {
|
||||
let parsed: z.infer<typeof generateRecipeCandidatesOutput>;
|
||||
try {
|
||||
const json = JSON.parse(text);
|
||||
// Defensiv normalisering: Gemini kan returnera rejectedPrompts som objekt istället för strängar.
|
||||
if (Array.isArray(json.rejectedPrompts)) {
|
||||
json.rejectedPrompts = json.rejectedPrompts.map((p: unknown) =>
|
||||
typeof p === "string" ? p : JSON.stringify(p)
|
||||
);
|
||||
}
|
||||
const safe = generateRecipeCandidatesOutput.safeParse(json);
|
||||
if (!safe.success) {
|
||||
return { status: "failed", output: null, error: `Gemini-svar matchar inte schema: ${safe.error.message}` };
|
||||
@@ -474,6 +480,7 @@ Begränsningar:
|
||||
Regler:
|
||||
- Recepten ska vara realistiska vardagsrätter för svenska hushåll.
|
||||
- Stegen ska vara tydliga, med rimliga tider och temperaturer.
|
||||
- MATSÄKERHET – recept som innehåller rå fågel, rått fläsk/köttfärs, rå fisk/skaldjur eller råa ägg MÅSTE innehålla ett explicit steg som beskriver att proteinet blir genomstekt/genomkokt. Använd formuleringar som: "stek tills kycklingen är genomstekt och inte längre rosa i mitten", "koka tills fisken flagnar", "stek tills köttfärsen är genomstekt", eller ange kärn-/innertemperatur i °C. Det räcker INTE med enbart utseende (t.ex. "gyllenbrun") eller enbart tid.
|
||||
- Använd ENDAST dessa exakta enhetskoder: GRAM, KILOGRAM, MILLILITER, DECILITER, LITER, TEASPOON, TABLESPOON, CUP_US, COUNT, PORTION, PINCH, SLICE, CLOVE, CAN, PACKAGE. Aldrig "g", "dl", "msk", "tsk", "st".
|
||||
- Formuleringen ska vara mjölkprincips-vänlig: ingen svinnskam, inget "släng".
|
||||
- Varje ingrediens MÅSTE finnas i katalogen ovan.
|
||||
|
||||
Reference in New Issue
Block a user