- Implemented a new KeyStore class to handle API keys securely, encrypting them and ensuring they are never exposed.
- Added functionality to load, save, and clear keys, with validation against their respective providers.
- Created tests for the KeyStore to ensure keys are stored encrypted, swapped in place, and reverted to environment variables when cleared.
- Updated existing tests to include checks for new functionality related to API keys and tutor model management.
9 days ago
feat: update daily limit for conversations to 5 and adjust related UI elements for better quota tracking
Refactor tutor game references from "בחכי ערבי" to "ערבוט" across application files; update access management features and permissions handling in the management panel; enhance user interface for access permissions; add access management functionality in the management system; improve test setup for authentication.
- Implement tests to verify lesson scenarios and their corresponding lines.
- Ensure vocabulary expands correctly with each lesson.
- Validate conversation flow, including turn handling and summary generation.
- Test for new words and their recognition in lessons.
- Check that corrections without changes are ignored.
- Confirm that only teachers can initiate sessions until opened.
- Validate daily limits based on stored data.
- Ensure conversations are restricted to the respective students.
- Implement input validation for start parameters.
- Handle refused answers appropriately without counting them.