Skip to content

Reactor migration from XAML/MVVM#2

Merged
davidortinau merged 34 commits intomainfrom
reactor
Mar 29, 2025
Merged

Reactor migration from XAML/MVVM#2
davidortinau merged 34 commits intomainfrom
reactor

Conversation

@davidortinau
Copy link
Copy Markdown
Owner

No description provided.

…ate management; update vocabulary and skill profile selection handling.
…ipboard functionality; introduce MessageTemplateSelector for message display logic.
… OpenAI package and enhance conversation handling
…mplement mode selector component for user interaction
…ns; improve user interaction and state management
…hance auto-transition functionality and error handling for loading more sentences
…or; update EditVocabularyPage to set ListId from fetched vocabulary list
…ent; implement IAppState for user profile management
…lection; update DashboardPage to include DescribeAScene route
…r image sources; update image aspect settings for better display
…cationTheme for consistency; update input handling in ModeSelector
@davidortinau davidortinau merged commit ddc40e1 into main Mar 29, 2025
davidortinau added a commit that referenced this pull request Nov 20, 2025
**Critical Fix for Both Issues:**

Issue #1 - "No cached plan found" preventing progress save:
- UpdatePlanItemProgressAsync now updates database FIRST
- No longer requires cache to exist
- Progress saves even if cache is lost

Issue #2 - New plan generated on Dashboard return:
- InitializePlanCompletionRecordsAsync pre-creates all DailyPlanCompletion records
- Called immediately after plan generation
- Ensures database has complete plan structure
- EnrichPlanWithCompletionDataAsync can now restore progress

**How it works:**
1. Plan generated → DailyPlanCompletion records created with 0 minutes
2. User practices → UpdatePlanItemProgressAsync updates DB (cache optional)
3. Return to Dashboard → GetCachedPlanAsync enriches from DB
4. Same plan IDs preserved → progress retained

The cache is now just a performance optimization, not required for correctness.
davidortinau added a commit that referenced this pull request Nov 20, 2025
**Issue #1: Wrong resource being used**
- Plan specified 'General Vocabulary' but activity loaded 'A day in Bali'
- Problem: Resource not in selected resources list, fell back to default
- Solution: Load resource from database if not in selected list

**Issue #2: Activity stalling after answer**
- User enters answer, nothing happens, just keeps rendering
- Added comprehensive logging to CheckAnswer() to diagnose
- Will show exactly where it's failing or hanging

Next step: Run the app and review logs to see where CheckAnswer() is stalling.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant