* fix: update user streaks
* Moved streak_last_day_date & streak_days from UserStats to User
* Updated Alembic version
* update last_activity after tm.handle_interaction()
* periodically executed function in main.py to update the user_streak every 4hrs
* fix:removed log messages
* fix: pre commit issues
* refactor: incorporated review comments
* fix: removed the managed -scope.
* refactor: managed_tx to Outer REST Db Ops in /interaction API
* fix: pre-commit changes
* fix: added streak and last_activity_date to protocol.FrontEndUser
* fix: pre-commit fixes after merge
* fix: added streak info to user_stat_repository, leaderboard and review comments
* fix: proper 4h delay and simpler startup_time initialisation
---------
Co-authored-by: James Melvin <melvin@gameface.ai>
* add new backlog_ranking tree state
* add first version of import script
* allow activation of trees during import
* add min_active_rankings_per_lang config param
* add settings docstring
* add /api/v1/users/{user_id}/stats endpoint
* return 0 stats and add /api/v1/users/{user_id}/stats/{time_frame}
* use utcnow() as modified date for 0 stats
* add leaderboard stats, periodic update via fastapi-utils
* count label tasks for assistant and prompter replies
* Daily stats update every 15 mins, simplify leaderboard endpoint
* add indices for some created_date columns
* make user stats update intervals configurable
* make sure intervals are positive