mitai-jinkendo/backend
Lars c002cb1e54
Some checks failed
Deploy Development / deploy (push) Successful in 55s
Build Test / lint-backend (push) Successful in 1s
Build Test / build-frontend (push) Has been cancelled
feat: add feature-access middleware for v9c subscription system
Implements flexible feature access control with 3-tier hierarchy:
1. User-specific restrictions (highest priority)
2. Tier limits
3. Feature defaults

New functions:
- get_effective_tier(profile_id) - Checks access_grants, falls back to profile.tier
- check_feature_access(profile_id, feature_id) - Complete access check
  Returns: {allowed, limit, used, remaining, reason}
- increment_feature_usage(profile_id, feature_id) - Usage tracking
- _calculate_next_reset(reset_period) - Helper for daily/monthly resets

Supports:
- Boolean features (enabled/disabled)
- Count-based features with limits
- Automatic reset (daily/monthly/never)
- Unlimited (NULL) and disabled (0) states

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-19 13:04:49 +01:00
..
migrations fix: correct UUID foreign key constraints in v9c migration 2026-03-19 12:50:12 +01:00
routers refactor: modular backend architecture with 14 router modules 2026-03-19 11:15:35 +01:00
apply_v9c_migration.py feat: add v9c subscription system database schema 2026-03-19 12:42:43 +01:00
auth.py feat: add feature-access middleware for v9c subscription system 2026-03-19 13:04:49 +01:00
db_init.py fix: actually call migration function (was only importing) 2026-03-18 12:19:51 +01:00
db.py refactor: move init_db() to db.py 2026-03-19 09:49:46 +01:00
Dockerfile fix: replace psql with Python for DB checks (no apt-get needed!) 2026-03-18 10:01:19 +01:00
main_old.py refactor: modular backend architecture with 14 router modules 2026-03-19 11:15:35 +01:00
main.py feat: add v9c subscription system database schema 2026-03-19 12:42:43 +01:00
migrate_to_postgres.py fix: Migration-Fehler - meas_id Spalte in ai_insights 2026-03-19 08:39:36 +01:00
models.py refactor: extract Pydantic models to models.py 2026-03-19 09:53:51 +01:00
requirements.txt 9b 2026-03-18 08:27:33 +01:00
schema.sql fix: add missing meas_id column to photos table 2026-03-18 12:23:13 +01:00
startup.sh fix: replace psql with Python for DB checks (no apt-get needed!) 2026-03-18 10:01:19 +01:00