Files

6.3 KiB

Session 2026-05-06: User-scoped AI, admin-toggles och premium

2026-05-10: Admin-inventarie (CRUD, merge, filter, sortering, preview, säkerhet), user-scope, IDOR-skydd, säkerhetshärdning, optimeringar och utökad testtäckning är nu genomförda och dokumenterade i README, TEKNISK_BESKRIVNING, SÄKERHETSHÄRDNINGSPLAN och SESSIONLOGGAR.

2026-05-10: Admin-inventarie (CRUD, merge, filter, sortering, preview, säkerhet), user-scope, IDOR-skydd, säkerhetshärdning, optimeringar och utökad testtäckning är nu genomförda och dokumenterade i README, TEKNISK_BESKRIVNING, SÄKERHETSHÄRDNINGSPLAN och SESSIONLOGGAR.

2026-05-10: Admin-inventarie (CRUD, merge, filter, sortering, preview, säkerhet), user-scope, IDOR-skydd, säkerhetshärdning, optimeringar och utökad testtäckning är nu genomförda och dokumenterade i README, TEKNISK_BESKRIVNING, SÄKERHETSHÄRDNINGSPLAN och SESSIONLOGGAR.

Denna session:

  • Införde user-scoped AI-förslag för ingrediens- och kategorimatchning (premium-funktion).
  • Admin kan nu slå på/av AI per användare via backend och UI.
  • Flutter och backend respekterar premium-flagga och AI-tillgång i alla flöden.
  • Lessons learned: Fallback-first AI, tydlig separation av analys, och ownerId/userId-filter i all logik ger robustare system.

Se även:

AI-funktioner i Recipe-App: Premium-funktioner och rekommenderade modeller

Se README.md för funktionsöversikt, TEKNISK_BESKRIVNING.md för teknisk arkitektur och NEXT_STEPS.md för prioriterade nästa steg.

Dokumentstatus (2026-05-03)

Målgrupp

Detta arkivdokument är för teknisk planering och historik kring AI-strategi.

Komplettering från senaste sessionerna

  • AI-förslag för kategorier används tillsammans med regelbaserad parser, inte som ensam källa.
  • Contradiction guards och domänregler (bl.a. bröd/rostbröd) prioriteras för att reducera felklassning.
  • Klientens UX separerar produktförslag från AI-kategoriförslag för tydligare semantik i granskningen.

Detta dokument beskriver de AI-funktioner som implementeras eller planeras som premium-funktioner i recipe-app. Varje funktion är kopplad till en rekommenderad Mistral-modell, med fokus på att använda de enklaste och mest kostnadseffektiva alternativen.


Översikt över AI-funktioner

Funktion Beskrivning Modell Status
Automatisk kategorisering AI kategoriserar produkter baserat på namn mot systemets kategoriträd. Admins kör bulk-kategorisering; premium-användare får förslag per produkt. mistral-small-2603 Klart
Kvittoimport — kategorisuggestion Ej matchade kvittorader får ett AI-kategoriförslag för premium-användare, visas som ledtråd i gränssnittet. mistral-small-2603 Klart
Receptförslag utifrån hemmalager AI analyserar användarens inventory och föreslår recept baserat på tillgängliga ingredienser. mistral-small-2603 Planerad
Veckoplanering med AI AI genererar en veckoplan baserat på inventory, recept och användarpreferenser. mistral-small-2603 Planerad
Smart inköpslista AI skapar en inköpslista baserat på saknade ingredienser och historisk förbrukning. mistral-small-2603 Planerad
"Vad ska jag laga idag?" AI ger snabba receptförslag baserat på vad användaren har hemma. mistral-small-2603 Planerad
Enhetskonvertering AI hjälper till att konvertera enheter (t.ex. gram till msk) och hanterar osäkerheter. mistral-small-2603 Planerad
AI-assisterad lageravräkning AI hjälper till att dra av rätt mängder från inventory när ett recept lagas. mistral-small-2603 Planerad
Personliga matlagningsråd AI ger personliga tips baserat på användarens matlagningshistorik och inventory. mistral-small-2603 Planerad
AI-assisterad import av PDF/länkar AI extraherar recept och prisdata från PDF-filer och länkar för att underlätta importen. mistral-small-2603 Planerad
Kostnadseffektiv inköpslista AI skapar en kostnadseffektiv inköpslista baserat på inventory och aktuella butikspriser. mistral-small-2603 Planerad

Bakgrund och motivering

Varför dessa funktioner?

  • Receptförslag utifrån hemmalager och veckoplanering är centrala för att hjälpa användare att minska matsvinn och spara tid.
  • Smart inköpslista och kostnadseffektiv inköpslista är viktiga för att optimera användarens matbudget.
  • AI-assisterad import av PDF/länkar underlättar för användare att lägga in recept och prisdata utan manuellt arbete.

Varför dessa modeller?

  • mistral-small-2603 används för de flesta funktioner eftersom den är kostnadseffektiv och klarar av strukturerad data och logik.
  • mistral-tiny-2603 används för enklare, snabbare uppgifter som "Vad ska jag laga idag?" och personliga matlagningsråd.
  • labs-leanstral-2603 används för enhetskonvertering eftersom den är optimerad för kod och logik.

Tekniska överväganden

Integration med befintlig arkitektur

  • Backend: AI-funktionerna kommer att implementeras som separata tjänster i NestJS, med egna endpoints för varje funktion.
  • Frontend: Resultaten från AI-funktionerna kommer att visas i Next.js-gränssnittet, med tydlig feedback till användaren.
  • Databas: Resultat och användardata lagras i MariaDB via Prisma ORM.

Säkerhet och validering

  • Validering: AI-output valideras alltid mot strukturerade scheman (t.ex. med Zod) för att säkerställa datakvalitet.
  • Säkerhet: Känslig data krypteras enligt den hybridlösning med PGP och AES som vi tidigare diskuterat.

Nästa steg

  1. Receptförslag — "Vad ska jag laga idag?" är nästa naturliga premium-funktion; bygger direkt på inventory och recept som redan finns i systemet.
  2. Veckoplanering med AI — kräver att receptförslag fungerar; planera mot kampanjpriser kräver extern datakälla.
  3. Validering av AI-output — säkerställ att AI-svar alltid valideras mot strukturerade scheman (t.ex. Zod) för datakvalitet.