Files
Cibello-app/.env.example
T
Sven (AAMOS AI) 050c958285 feat(gemini): Skiva 1 – Gemini 2.5 Flash som lärar-tier för kylskåpsskanning
- Gemini-adapter bakom AamosClient-interface (AAMOS_MODE=gemini)
- Serversida/worker: hämtar bild, anropar Gemini, mappar mot canonical_ingredients
- Kostnad/tokens bokförs i ai_usage_counters; global dagsbudget via BudgetStore
- Redis-backed budget i worker, in-memory i tester
- Migration 0019: ai_cost_usd_microcents
- Hermetiska tester med inspelad fixture; separat pnpm eval:scan
- docs/09 uppdaterad ärligt: AAMOS-status, Gemini-flöde, säkerhet/kostnad
- REQUIRE_REAL=1 stödjer AAMOS_MODE=gemini; deploy-grind uppdaterad
2026-08-08 03:30:59 +07:00

79 lines
2.3 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ============================================================
# Miljövariabler (varumärke: se brand.config.json)
# Kopiera till .env och fyll i. .env checkas ALDRIG in.
# Produktion: AWS SSM/Secrets Manager (spec §50, §56).
# ============================================================
# --- Core ---
NODE_ENV=development
API_PORT=4000
API_BASE_URL=http://localhost:4000
CORS_ORIGINS=http://localhost:5173
LOG_LEVEL=info
# --- Databas (separat databas + minsta möjliga privilegier, spec §52) ---
DATABASE_URL=postgres://app_user:app_dev_password@localhost:5432/app
TEST_DATABASE_URL=postgres://app_user:app_dev_password@localhost:5432/cibello_test
# --- Redis (BullMQ-köer + cache) ---
REDIS_URL=redis://localhost:6379
# --- Auth ---
JWT_ACCESS_SECRET=dev-only-change-me
JWT_REFRESH_SECRET=dev-only-change-me-too
JWT_ACCESS_TTL_SECONDS=900
JWT_REFRESH_TTL_SECONDS=2592000
# --- Entitlements (signerad token med grace period, spec §44) ---
ENTITLEMENT_SIGNING_SECRET=dev-only-change-me-three
ENTITLEMENT_TTL_HOURS=24
ENTITLEMENT_GRACE_DAYS=7
# --- S3 (spec §53). mock = lokal lagring (dev). aws = RIKTIG S3 (AWS eller
# --- S3-kompatibel som MinIO/R2 via S3_ENDPOINT). Tomma nycklar = IAM-roll. ---
S3_MODE=mock
S3_BUCKET= # default: <brand-slug>-production
S3_REGION=eu-north-1
S3_ENDPOINT=
S3_ACCESS_KEY_ID=
S3_SECRET_ACCESS_KEY=
# --- AAMOS / Gemini-lärar-tier (nås ENDAST från backend, spec §31, §61.13) ---
# AAMOS_MODE: http = befintlig AAMOS, gemini = Gemini-lärar-tier, mock = lokal dev/test.
AAMOS_MODE=mock
AAMOS_API_URL=
AAMOS_API_KEY=
AAMOS_TIMEOUT_MS=60000
GEMINI_API_KEY=
GEMINI_MODEL=gemini-2.5-flash
GEMINI_TIMEOUT_MS=60000
GEMINI_DAILY_BUDGET_USD=10
# --- Prenumerationer (spec §4547) ---
APPLE_BUNDLE_ID= # default ur brand.config.json
APPLE_ISSUER_ID=
APPLE_KEY_ID=
APPLE_PRIVATE_KEY_PATH=
GOOGLE_PACKAGE_NAME= # default ur brand.config.json
GOOGLE_SERVICE_ACCOUNT_JSON_PATH=
# --- Push-notiser ---
EXPO_PUSH_ENABLED=false
# --- Admin ---
ADMIN_PORT=5173
VITE_API_BASE_URL=http://localhost:4000
# --- Larm (valfritt): 5xx-fel och fallerade jobb POST:as som {"text": "..."} ---
ERROR_WEBHOOK_URL=
# --- E-post: log = mejl till loggen (dev). smtp = RIKTIGA mejl via valfri
# --- SMTP-leverantör (SES/Postmark/Resend/Brevo/egen server). ---
EMAIL_MODE=log
SMTP_HOST=
SMTP_PORT=587
SMTP_SECURE=false
SMTP_USER=
SMTP_PASS=
MAIL_FROM=