Autocomplete feedback loop: implicit rejection + weekly rating
A) Implicit: HomeViewModel tracks auto-assigned slot IDs after each autocomplete run. When the user manually replaces one of those dishes, the rejected dish ID is recorded in FeedbackStore (UserDefaults). AutocompleteEngine applies a 25% penalty per rejection (floor 0.30). B) Explicit: WeekPlan gains userRating (0/1/-1). Past weeks with dishes show a compact 👍/👎 row (Premium only). Liked weeks boost their dishes (+0.20 each, max +0.50); disliked weeks penalise them (-0.25 each, max -0.50). Signal is intentionally modest so the period cycle score remains dominant. Also adds Stats + week-rating localization strings to all 6 languages (were missing from the previous commit). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -325,3 +325,16 @@
|
||||
"notification_sunday_title" = "Planeje a próxima semana";
|
||||
"notification_sunday_body" = "É domingo — reserve 2 minutos para planejar as refeições da próxima semana.";
|
||||
|
||||
/* Stats */
|
||||
"stats_title" = "Estatísticas";
|
||||
"stats_streak_label" = "Sequência de semanas";
|
||||
"stats_weeks_planned_label" = "Semanas planejadas";
|
||||
"stats_complete_weeks_label" = "Semanas completas";
|
||||
"stats_completion_rate_label" = "Taxa de conclusão";
|
||||
"stats_top_dishes_title" = "Pratos mais usados";
|
||||
"stats_tags_title" = "Por categoria";
|
||||
"stats_no_data" = "Sem dados ainda";
|
||||
|
||||
/* Week rating */
|
||||
"week_rating_prompt" = "Como foi esta semana?";
|
||||
|
||||
|
||||
Reference in New Issue
Block a user