- Changed cache version from v3 to v7 in service-worker.js.
- Added new logo assets: logo-intro-alt.svg and logo-math.svg.
- Updated trace.html to include a new exemption name for onset transient.
- Added tests for onset transient behavior in test_scoring.py.
8 days ago
Add keystore for managing API keys securely and update tests
- 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
Enhance GOP pooling and grading pipeline with new rules and configurations
- Updated `gop-pooling.md` to clarify the context for consonants in token alignment.
- Added new grading rules for unmarked short vowels, final b devoicing, and word-final vowel linking in `grading-pipeline.md`.
- Modified `trace-schema.ts` to include new exemptions in the TraceConfig interface.
- Enhanced UI in `trace.html` and `index.html` to support new frame playback features and display additional exemption information.
- Improved tests in `test_gop_pooling.py`, `test_scoring.py`, and `test_minerva_import.py` to validate new grading rules and ensure correct behavior of the scoring system.
- Updated pronunciation rules in `pronunciation-rules.md` to clarify the handling of shwa and kubutz sounds, including new examples and scoring rules.
- Modified `index.html` to integrate scoring rules display, allowing teachers to toggle rules on and off.
- Added tests in `test_scoring.py` to verify the functionality of newly implemented scoring rules and their impact on pronunciation scoring.
- Introduced a new script `compare_verbs.py` to check the phonemes of Arabic verbs against the scorer's expectations, ensuring consistency in pronunciation handling.
Add unit tests for pronunciation rules parsing and detection
- Implement tests to ensure all YAML blocks in pronunciation-rules.md are parsed correctly into rules.
- Verify that every heard symbol has a corresponding Hebrew label.
- Check correct realizations per letter and dialect associations.
- Report undetectable rules and validate their detection status.