diff --git a/docs/23-juridik-utkast.md b/docs/23-juridik-utkast.md index 0d5a696..e9653ee 100644 --- a/docs/23-juridik-utkast.md +++ b/docs/23-juridik-utkast.md @@ -81,6 +81,13 @@ förvandlas pseudonymen till en permanent icke-identifierbar etikett. > **Fastställ med jurist:** exakt retentionstid per jurisdiktion, krav på > åtkomstloggning för `gdpr_retention_pseudonyms`, och om pseudonymisering > räcker som "så långt som möjligt" åtgärd enligt art. 25. +> +> **Öppen fråga (2026-08-08):** Pseudonymen är ett slumpmässigt UUID utan +> reversibel kryptering eller extern återkoppling. Bekräfta att detta är +> tillräckligt för bokföringsbevis och eventuella betalnings-/leveranstvister +> där vi behöver styrka att en viss person faktiskt genomförde transaktionen +> under retentionstiden, eller om vi behöver en maskerad men spårbar +> kundidentifikator. ### Mottagare diff --git a/packages/ai-contracts/src/mock.ts b/packages/ai-contracts/src/mock.ts index ebd5649..f484f80 100644 --- a/packages/ai-contracts/src/mock.ts +++ b/packages/ai-contracts/src/mock.ts @@ -248,13 +248,21 @@ export function mockOutputFor(taskType: AamosTaskType, input: unknown): unknown note: null, }, { - canonicalIngredientId: "onion_yellow", + canonicalIngredientId: "onion", displayNameSv: "gul lök", quantity: 2, unit: "COUNT", optional: false, note: null, }, + { + canonicalIngredientId: "rice_white", + displayNameSv: "ris", + quantity: 3, + unit: "DECILITER", + optional: false, + note: null, + }, ], steps: [ { instructionSv: "Förbered ingredienserna.", timerSeconds: null, temperatureC: null, tip: null }, diff --git a/packages/recipe-generation/scripts/pilot-batch.ts b/packages/recipe-generation/scripts/pilot-batch.ts index 4c7a375..435b299 100644 --- a/packages/recipe-generation/scripts/pilot-batch.ts +++ b/packages/recipe-generation/scripts/pilot-batch.ts @@ -73,12 +73,12 @@ const targets: PipelineTarget[] = [ { mealType: "dinner", mainIngredientId: "chicken_breast", dietVariant: "standard", count: 4 }, { mealType: "dinner", mainIngredientId: "chicken_thigh", dietVariant: "standard", count: 2 }, // Köttfärs × allätare - { mealType: "dinner", mainIngredientId: "ground_beef", dietVariant: "standard", count: 3 }, - { mealType: "dinner", mainIngredientId: "ground_pork", dietVariant: "standard", count: 2 }, + { mealType: "dinner", mainIngredientId: "minced_beef", dietVariant: "standard", count: 3 }, + { mealType: "dinner", mainIngredientId: "minced_mixed", dietVariant: "standard", count: 2 }, // Veg-varianter - { mealType: "dinner", mainIngredientId: "tofu_firm", dietVariant: "vegan", count: 3 }, - { mealType: "dinner", mainIngredientId: "lentils_red", dietVariant: "vegetarian", count: 2 }, - { mealType: "dinner", mainIngredientId: "chickpeas", dietVariant: "vegan", count: 2 }, + { mealType: "dinner", mainIngredientId: "tofu", dietVariant: "vegan", count: 3 }, + { mealType: "dinner", mainIngredientId: "red_lentils", dietVariant: "vegetarian", count: 2 }, + { mealType: "dinner", mainIngredientId: "chickpeas_canned", dietVariant: "vegan", count: 2 }, ]; // ── 5. Kör pipelinen ───────────────────────────────────────────────────────