Nueva tabla telemetry_active(install_id, day) (create_all la crea). add_telemetry hace upsert (install_id, day) si viene install_id. El summary añade installsTotal (únicas de siempre), installsActive (en el periodo) y dauToday. Tests: dos ids únicos + uno duplicado → 2 únicas. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
autoayuno-api
Catálogo compartido de alimentos (alimentado de Open Food Facts bajo demanda)
y recetas publicables para la app [autoayuno]. Sin cuentas: publicar es
anónimo con un deviceToken. Lo personal del usuario vive en su dispositivo;
aquí solo lo compartido.
Stack
FastAPI + SQLAlchemy + Postgres (SQLite como fallback en dev). Docker → Dokploy.
Dominio: api-autoayuno.carlosnarro.com.
Endpoints
GET /healthGET /foods?q=— busca en la BD; si hay pocos, importa de Open Food Facts y guarda.POST /foods— alta anónima de un alimento (source=user).GET /recipes?q=,GET /recipes/{id},POST /recipes— recetas públicas.
Las respuestas usan la forma que espera la app (kcalPer100g, zone, portions, origin).
Desarrollo
pip install -r requirements.txt
uvicorn main:app --reload # SQLite local por defecto
pytest # tests con SQLite en memoria
Producción (Dokploy)
Variable DATABASE_URL con el Postgres. Build por Dockerfile, puerto 8000.
Description
Languages
Python
99.3%
Dockerfile
0.7%