Instructions to use Muno459/fastconformer-quran with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- NeMo
How to use Muno459/fastconformer-quran with NeMo:
import nemo.collections.asr as nemo_asr asr_model = nemo_asr.models.ASRModel.from_pretrained("Muno459/fastconformer-quran") transcriptions = asr_model.transcribe(["file.wav"]) - Notebooks
- Google Colab
- Kaggle
during finetuning you can take a look at this project which finetuned the same model <3
alslamo alaikom my brother <3
in this repo it fine tuned the same repo and when i tested your model and this i noticed the model in yazinsae repo was faster than yours
you can search finetune in repo to find finetune plan and research . and can check quantization and benchmarks
https://github.com/yazinsai/offline-tarteel/tree/401cab961bc13e41e50402e4542f0a856bd420bc
but your model was more accurate to recordings masha'a Allah
Wa ʿalaykum as-salām wa raḥmatullāhi wa barakātuh, my brother 🤍
Jazāk Allāhu khayran for the link and for testing both, masha'Allah.
I quantized a q8 (INT8) version for you so you get that same speed: onnx/model.q8.onnx (132 MB). Much lighter and faster on-device. Give it a try and see how it performs for you. And the streaming model will be released q8 too in shā' Allah 🤍
<3 i was already using the q8 version for yours but i quantized it , maybe i quantized it wrongly
i will try your q8 insha'a Allah
thanks my brother <3
for more accurate as an optional file
prompt fix :
Adding an LM (Language Model)
A Language Model (LM) is a file that contains the statistical probability of word sequences (essentially a giant "autocorrect" dictionary for the ASR).
How it works: When the acoustic model hears "لسْتَقِيمَ", it checks the LM. The LM says "In the Quran, the word لسْتَقِيمَ does not exist, but الْمُسْتَقِيمَ is extremely common. I will automatically correct the text to الْمُسْتَقِيمَ."
How to add it: In Sherpa-ONNX, you would compile the entire Quran text into a specialized .fst (Finite State Transducer) file using Python tools like KenLM or OpenFst. You would then add that file to your assets and pass it to the config like this: lm: 'assets/model/quran_lm.fst'.
The Catch: You don't currently have this .fst file. Generating one that perfectly matches your NeMo model's tokens.txt requires running specialized Python scripts from the NeMo/Icefall repositories.
your model is massh'a Allah , has taskheel and higher accuracy and when not checking taskheel it is the same speed or more speed than yazinsae maybe the problem in my tashkeel matching system
in the next two message they have the first 13 ayah of surah TAHA
your model is more accurate and has tashkeel elhamdle Allah
this is the output of the offline tarteel yazinsae model which i sent the link :
[ +834 ms] I/flutter (23169): [AUDIO] 🎤 VAD ON
[+1173 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [] | New: [طه]
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "طه" == "طه" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "طه"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "طه" against Uthmani expected: "طه"
[ +401 ms] I/flutter (23169): [THERMAL] Warning: Flagship throttling (204.5ms). Downgrading to Standard tier.
[ +3 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [طه] | New: [طههه]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "طههه" != "ما" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "طههه" != "انزلنا" (Score: 0.0)
[ +2 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "طههه" != "عليك" (Score: 0.0)
[ +667 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [طههه] | New: [س, طه]
[ +3 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +4 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "س" != "ما" (Score: 0.0)
[ +2 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "طه" != "ما" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "س" != "انزلنا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "س" != "عليك" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "طه" != "انزلنا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "طه" != "عليك" (Score: 0.0)
[ +752 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [س, طه] | New: [شه]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "شه" != "ما" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "شه" != "انزلنا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "شه" != "عليك" (Score: 0.0)
[+1096 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [شه] | New: [طه, ما, انزلنا, س]
[ +5 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "طه" != "ما" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "ما" == "ما" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "ما"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "ما" against Uthmani expected: "مَآ"
[ +2 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "انزلنا" == "انزلنا" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "انزلنا"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "أنزلنا" against Uthmani expected: "أَنزَلْنَا"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "س" != "عليك" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "س" != "القران" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "س" != "لتشقي" (Score: 0.0)
[ +892 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [طه, ما, انزلنا, س] | New: [ما, انزل, عليك, الله]
[ +17 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ما" != "عليك" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "انزل" != "عليك" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "عليك" == "عليك" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "عليك"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "عليك" against Uthmani expected: "عَلَيْكَ"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الله" != "القران" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "الله" != "لتشقي" (Score: 0.0)
[ +853 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [ما, انزل, عليك, الله] | New: [ما, انزلنا, عليك, القران]
[ +12 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ما" != "القران" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "انزلنا" != "القران" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "عليك" != "القران" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "القران" == "القران" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "القران"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "القرآن" against Uthmani expected: "ٱلْقُرْءَانَ"
[ +987 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 3 | Prev: [ما, انزلنا, عليك, القران] | New: [انزلنا, عليك, القران,
لتشقي]
[ +6 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "القران" != "لتشقي" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "لتشقي" == "لتشقي" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "لتشقي"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "لتشقَى" against Uthmani expected: "لِتَشْقَىٰٓ"
[ +1 ms] I/flutter (23169): [TASHKEEL] 🟨 YELLOW Failed: "لتشقَي" != "لِتَشْقَيٓ" (Dist: 4)
[+1175 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [انزلنا, عليك, القران, لتشقي] | New: [عليك, الان, لتشقي]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +2 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "عليك" != "الا" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الان" != "الا" (Score: 0.0)
[ +2 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لتشقي" != "الا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "الان" != "تذكره" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "الان" != "لمن" (Score: 0.0)
[+1160 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 1 | Prev: [عليك, الان, لتشقي] | New: [لتشقي, الا, تزكي]
[ +3 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لتشقي" != "الا" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "الا" == "الا" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "الا"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "إلا" against Uthmani expected: "إِلَّا"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "تزكي" != "تذكره" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "تزكي" != "لمن" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "تزكي" != "يخشي" (Score: 0.0)
[ +868 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [لتشقي, الا, تزكي] | New: [الا, تذكره, لما]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الا" != "تذكره" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "تذكره" == "تذكره" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "تذكره"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "تذكرة" against Uthmani expected: "تَذْكِرَةًۭ"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لما" != "لمن" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "لما" != "يخشي" (Score: 0.0)
[ +871 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [الا, تذكره, لما] | New: [الا, تذكره, لمن, يخشي]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الا" != "لمن" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "تذكره" != "لمن" (Score: 0.0)
[ +2 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "لمن" == "لمن" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "لمن"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "لمن" against Uthmani expected: "لِّمَن"
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "يخشي" == "يخشي" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "يخشي"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "يخشى" against Uthmani expected: "يَخْشَىٰ"
[ +873 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [الا, تذكره, لمن, يخشي] | New: [ولا, تذكره, لمن, يخشي]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ولا" != "تنزيلا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "تذكره" != "تنزيلا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لمن" != "تنزيلا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "يخشي" != "تنزيلا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "ولا" != "ممن" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "ولا" != "خلق" (Score: 0.0)
[ +964 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [ولا, تذكره, لمن, يخشي] | New: [سسه, لمن, يخشي]
[ +10 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "سسه" != "تنزيلا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لمن" != "تنزيلا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "يخشي" != "تنزيلا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "سسه" != "ممن" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "سسه" != "خلق" (Score: 0.0)
[ +867 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [سسه, لمن, يخشي] | New: [ليخشي, تنزيلا, منا]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ليخشي" != "تنزيلا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "تنزيلا" == "تنزيلا" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "تنزيلا"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "تنزيلاً" against Uthmani expected: "تَنزِيلًۭا"
[ +3 ms] I/flutter (23169): [TASHKEEL] 🟨 YELLOW Failed: "تنزيلاً" != "تَنزِيلًا" (Dist: 4)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "منا" != "ممن" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "منا" != "خلق" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "منا" != "الارض" (Score: 0.0)
[ +869 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [ليخشي, تنزيلا, منا] | New: [تنزيل, ممن, خلق]
[ +18 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "تنزيل" != "ممن" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "ممن" == "ممن" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "ممن"
[ +6 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "ممن" against Uthmani expected: "مِّمَّنْ"
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "خلق" == "خلق" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "خلق"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "خلق" against Uthmani expected: "خَلَقَ"
[ +846 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [تنزيل, ممن, خلق] | New: [تنزيلاا, ممن, خلق, الارض]
[ +5 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "تنزيلاا" != "الارض" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ممن" != "الارض" (Score: 0.0)
[ +9 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "خلق" != "الارض" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "الارض" == "الارض" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "الارض"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "الْأَرْضَ" against Uthmani expected: "ٱلْأَرْضَ"
[ ] I/flutter (23169): [TASHKEEL] ✅ PASSED: "الْاَرْضَ" == "الْاَرْضَ"
[ +996 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [تنزيلاا, ممن, خلق, الارض] | New: [تنزيلا, ممن, خلق, الارض,
والسم, الس, س]
[ ] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "تنزيلا" != "والسماوات" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ممن" != "والسماوات" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "خلق" != "والسماوات" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الارض" != "والسماوات" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "والسم" == "والسماوات" (Score: 0.85)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "والسماوات"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "وَالسَّم" against Uthmani expected: "وَٱلسَّمَـٰوَٰتِ"
[ ] I/flutter (23169): [TASHKEEL] 🟨 YELLOW Failed: "وَالسَّم" != "وَالسَّمَوَتِ" (Dist: 5)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الس" != "العلي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "س" != "العلي" (Score: 0.0)
[+1143 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [تنزيلا, ممن, خلق, الارض, والسم, الس, س] | New: [من, خلق,
الارض, والسماوات, العلا]
[ +5 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "من" != "العلي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "خلق" != "العلي" (Score: 0.0)
[ +9 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الارض" != "العلي" (Score: 0.0)
[ +2 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "والسماوات" != "العلي" (Score: 0.0)
[ +3 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "العلا" != "العلي" (Score: 0.0)
[ +861 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [من, خلق, الارض, والسماوات, العلا] | New: [والرض,
والسماوات, العلي]
[ +10 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "والرض" != "العلي" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "والسماوات" != "العلي" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "العلي" == "العلي" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "العلي"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "الْعُلَى" against Uthmani expected: "ٱلْعُلَى"
[ ] I/flutter (23169): [TASHKEEL] ✅ PASSED: "الْعُلَي" == "الْعُلَي"
[+1245 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [والرض, والسماوات, العلي] | New: [الصت, العلي, الرحمن,
التن]
[ ] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الصت" != "الرحمن" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "العلي" != "الرحمن" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "الرحمن" == "الرحمن" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "الرحمن"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "الرحمن" against Uthmani expected: "ٱلرَّحْمَـٰنُ"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "التن" != "علي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "التن" != "العرش" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "التن" != "استوي" (Score: 0.0)
[+1138 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [الصت, العلي, الرحمن, التن] | New: [الرحمن, علي, العقم]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الرحمن" != "علي" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "علي" == "علي" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "علي"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "على" against Uthmani expected: "عَلَى"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "العقم" != "العرش" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "العقم" != "استوي" (Score: 0.0)
[ +871 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [الرحمن, علي, العقم] | New: [الرحمن, علي, العرش, استو]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الرحمن" != "العرش" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "علي" != "العرش" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "العرش" == "العرش" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "العرش"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "العرش" against Uthmani expected: "ٱلْعَرْشِ"
[ +875 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [الرحمن, علي, العرش, استو] | New: [الرحمن, علي, العرش,
استوي]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الرحمن" != "استوي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "علي" != "استوي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "العرش" != "استوي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "استوي" == "استوي" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "استوي"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "استوى" against Uthmani expected: "ٱسْتَوَىٰ"
[ +975 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 3 | Prev: [الرحمن, علي, العرش, استوي] | New: [علي, العرش, استوي, له]
[ +6 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "استوي" != "له" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "له" == "له" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "له"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "له" against Uthmani expected: "لَهُۥ"
[+1163 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 2 | Prev: [علي, العرش, استوي, له] | New: [استوي, له, ما, في, السماءت]
[ +2 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "له" != "ما" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "ما" == "ما" (Score: 1.0)
[ +5 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "ما"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "ما" against Uthmani expected: "مَا"
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "في" == "في" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "في"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "في" against Uthmani expected: "فِى"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "السماءت" != "وما" (Score: 0.0)
[ +869 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [استوي, له, ما, في, السماءت] | New: [له, ما, في, السماوات,
والض]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "له" != "السماوات" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ما" != "السماوات" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "في" != "السماوات" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "السماوات" == "السماوات" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "السماوات"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "السَّمَاوَاتِ" against Uthmani expected:
"ٱلسَّمَـٰوَٰتِ"
[ +2 ms] I/flutter (23169): [TASHKEEL] 🟨 YELLOW Failed: "السَّمَاوَاتِ" != "السَّمَوَتِ" (Dist: 2)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "والض" != "وما" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "والض" != "الارض" (Score: 0.0)
[+1185 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [له, ما, في, السماوات, والض] | New: [له, ما, في, السماوات,
وما, في, الارض]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +9 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "له" != "وما" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ما" != "وما" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "في" != "وما" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "السماوات" != "وما" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "وما" == "وما" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "وما"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "وَمَا" against Uthmani expected: "وَمَا"
[ ] I/flutter (23169): [TASHKEEL] ✅ PASSED: "وَمَا" == "وَمَا"
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "في" == "في" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "في"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "فِي" against Uthmani expected: "فِى"
[ ] I/flutter (23169): [TASHKEEL] ✅ PASSED: "فِي" == "فِي"
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "الارض" == "الارض" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "الارض"
[ +2 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "الْأَرْضِ" against Uthmani expected: "ٱلْأَرْضِ"
[ +1 ms] I/flutter (23169): [TASHKEEL] ✅ PASSED: "الْاَرْضِ" == "الْاَرْضِ"
[ +886 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 5 | Prev: [له, ما, في, السماوات, وما, في, الارض] | New: [في,
السماوات, وما, في, الارض, وما, بين]
[ +7 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الارض" != "وما" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "وما" == "وما" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "وما"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "وَمَا" against Uthmani expected: "وَمَا"
[ +1 ms] I/flutter (23169): [TASHKEEL] ✅ PASSED: "وَمَا" == "وَمَا"
[ +5 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "بين" != "بينهما" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "بين" != "وما" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "بين" != "تحت" (Score: 0.0)
[+1156 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [في, السماوات, وما, في, الارض, وما, بين] | New: [وما, في,
الاض, وما, بينهماما]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "وما" != "بينهما" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "في" != "بينهما" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الاض" != "بينهما" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "وما" != "بينهما" (Score: 0.0)
[ +2 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "الاض" != "وما" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "الاض" != "تحت" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "بينهماما" != "وما" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "بينهماما" != "تحت" (Score: 0.0)
[ +874 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [وما, في, الاض, وما, بينهماما] | New: [بينهما]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "بينهما" == "بينهما" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "بينهما"
[ +17 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "بينهما" against Uthmani expected: "بَيْنَهُمَا"
[ +917 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [بينهما] | New: [الثري]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +6 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الثري" != "وما" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "الثري" != "تحت" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 2): "الثري" == "الثري" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "الثري"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "الثرى" against Uthmani expected: "ٱلثَّرَىٰ"
[ +717 ms] I/flutter (23169): [AUDIO] 🔇 VAD OFF
[ +150 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [الثري] | New: [وما, تحت, الثري]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +4 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "وما" != "وان" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "تحت" != "وان" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الثري" != "وان" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "وما" != "تجهر" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "وما" != "بالقول" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "تحت" != "تجهر" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "تحت" != "بالقول" (Score: 0.0)
[ +483 ms] I/flutter (23169): [AUDIO] 🎤 VAD ON
[ +436 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 3 | Prev: [وما, تحت, الثري] | New: [وما, تحت, الثري]
[ +752 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [وما, تحت, الثري] | New: [وان, تجهر]
[ +4 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "وان" == "وان" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "وان"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "وَإِنْ" against Uthmani expected: "وَإِن"
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "تجهر" == "تجهر" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "تجهر"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "تَجْهَرْ" against Uthmani expected: "تَجْهَرْ"
[ ] I/flutter (23169): [TASHKEEL] ✅ PASSED: "تَجْهَرْ" == "تَجْهَرْ"
[+1461 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 2 | Prev: [وان, تجهر] | New: [وان, تجهر, بالقول, فان]
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "تجهر" != "بالقول" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "بالقول" == "بالقول" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "بالقول"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "بِالْقَوْلِ" against Uthmani expected: "بِٱلْقَوْلِ"
[ ] I/flutter (23169): [TASHKEEL] ✅ PASSED: "بِالْقَوْلِ" == "بِالْقَوْلِ"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "فان" != "يعلم" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "فان" != "السر" (Score: 0.0)
[+1077 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [وان, تجهر, بالقول, فان] | New: [وان, تجهر, بالقول, فانه,
يع]
[ +13 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "وان" != "فانه" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "تجهر" != "فانه" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "بالقول" != "فانه" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "فانه" == "فانه" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "فانه"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "فَإِنَّهُ" against Uthmani expected: "فَإِنَّهُۥ"
[ ] I/flutter (23169): [TASHKEEL] ✅ PASSED: "فَاِنَّهُ" == "فَاِنَّهُ"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "يع" != "يعلم" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "يع" != "السر" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "يع" != "واخفي" (Score: 0.0)
[ +985 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [وان, تجهر, بالقول, فانه, يع] | New: [ولا, تجهر, في, القول,
فانه, يعلم, السر]
[ +12 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ولا" != "يعلم" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "تجهر" != "يعلم" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "في" != "يعلم" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "القول" != "يعلم" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "فانه" != "يعلم" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "يعلم" == "يعلم" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "يعلم"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "يعلم" against Uthmani expected: "يَعْلَمُ"
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "السر" == "السر" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "السر"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "السر" against Uthmani expected: "ٱلسِّرَّ"
[+1159 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 3 | Prev: [ولا, تجهر, في, القول, فانه, يعلم, السر] | New: [فانه,
يعلم, السر, واخفي]
[ +3 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "السر" != "واخفي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "واخفي" == "واخفي" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "واخفي"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "وأخفى" against Uthmani expected: "وَأَخْفَى"
[ +628 ms] I/flutter (23169): [AUDIO] 🔇 VAD OFF
[ +76 ms] I/flutter (23169): [AUDIO] 🎤 VAD ON
[ +156 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 3 | Prev: [فانه, يعلم, السر, واخفي] | New: [يعلم, السر, واخفي]
[ +6 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "واخفي" != "الله" (Score: 0.0)
[ +925 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 3 | Prev: [يعلم, السر, واخفي] | New: [يعلم, السر, واخفي]
[ +478 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [يعلم, السر, واخفي] | New: [الله, لاي]
[ +6 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +5 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "الله" == "الله" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "الله"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "اللَّهُ" against Uthmani expected: "ٱللَّهُ"
[ ] I/flutter (23169): [TASHKEEL] 🟨 YELLOW Failed: "الَّهُ" != "اللَّهُ" (Dist: 2)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لاي" != "لا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "لاي" != "اله" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "لاي" != "الا" (Score: 0.0)
[ +802 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [الله, لاي] | New: [الله, لا, اله, ال]
[ +19 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الله" != "لا" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "لا" == "لا" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "لا"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "لَا" against Uthmani expected: "لَآ"
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "اله" == "اله" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "اله"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "إِلَهَ" against Uthmani expected: "إِلَـٰهَ"
[ ] I/flutter (23169): [TASHKEEL] ✅ PASSED: "اِلَهَ" == "اِلَهَ"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ال" != "الا" (Score: 0.0)
[ +623 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [الله, لا, اله, ال] | New: [الله, لا, اله, الا, هو]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الله" != "الا" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لا" != "الا" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اله" != "الا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "الا" == "الا" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "الا"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "إِلَّا" against Uthmani expected: "إِلَّا"
[ ] I/flutter (23169): [TASHKEEL] 🟨 YELLOW Failed: "اِلَّا" != "اِلَّا" (Dist: 2)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "هو" == "هو" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "هو"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "هُوَ" against Uthmani expected: "هُوَ"
[ ] I/flutter (23169): [TASHKEEL] ✅ PASSED: "هُوَ" == "هُوَ"
[ +760 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [الله, لا, اله, الا, هو] | New: [الل, لاا, اله, الا, هو,
له]
[ +6 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +2 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الل" != "له" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لاا" != "له" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اله" != "له" (Score: 0.0)
[ +3 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الا" != "له" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "هو" != "له" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "له" == "له" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "له"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "له" against Uthmani expected: "لَهُ"
[+1034 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [الل, لاا, اله, الا, هو, له] | New: [وهو, لا, اله, الا, هو,
له, الاسماء, الس]
[ +19 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "وهو" != "الاسماء" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لا" != "الاسماء" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اله" != "الاسماء" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الا" != "الاسماء" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "هو" != "الاسماء" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "له" != "الاسماء" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "الاسماء" == "الاسماء" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "الاسماء"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "الأسماء" against Uthmani expected: "ٱلْأَسْمَآءُ"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الس" != "الحسني" (Score: 0.0)
[+1121 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [وهو, لا, اله, الا, هو, له, الاسماء, الس] | New: [اءل, الا,
الله, هو, لهه, الاسماء, الحسني]
[ +5 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اءل" != "الحسني" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الا" != "الحسني" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الله" != "الحسني" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "هو" != "الحسني" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لهه" != "الحسني" (Score: 0.0)
[ +2 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الاسماء" != "الحسني" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "الحسني" == "الحسني" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "الحسني"
[ +3 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "الحسنى" against Uthmani expected: "ٱلْحُسْنَىٰ"
[ +218 ms] I/flutter (23169): [AUDIO] 🔇 VAD OFF
[ +247 ms] I/flutter (23169): [AUDIO] 🎤 VAD ON
[ +415 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [اءل, الا, الله, هو, لهه, الاسماء, الحسني] | New: [وله,
الاسماء, الحسني]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "وله" != "وهل" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الاسماء" != "وهل" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الحسني" != "وهل" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "وله" != "اتاك" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "وله" != "حديث" (Score: 0.0)
[ +909 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [وله, الاسماء, الحسني] | New: [ول, الاسماء, الحسني]
[ +9 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ول" != "وهل" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الاسماء" != "وهل" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "الحسني" != "وهل" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "ول" != "اتاك" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "ول" != "حديث" (Score: 0.0)
[ +542 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [ول, الاسماء, الحسني] | New: [وهل, اتاك, حديث]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "وهل" == "وهل" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "وهل"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "وهل" against Uthmani expected: "وَهَلْ"
[ +3 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "اتاك" == "اتاك" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "اتاك"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "أتاك" against Uthmani expected: "أَتَىٰكَ"
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "حديث" == "حديث" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "حديث"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "حديث" against Uthmani expected: "حَدِيثُ"
[ +749 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 3 | Prev: [وهل, اتاك, حديث] | New: [وهل, اتاك, حديث, موس]
[ +2 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "حديث" != "موسي" (Score: 0.0)
[+1076 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [وهل, اتاك, حديث, موس] | New: [وهل, اتاك, حديث, موسي]
[ +8 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "وهل" != "موسي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اتاك" != "موسي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "حديث" != "موسي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "موسي" == "موسي" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "موسي"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "مُوسَى" against Uthmani expected: "مُوسَىٰٓ"
[ +362 ms] I/flutter (23169): [AUDIO] 🔇 VAD OFF
[ +299 ms] I/flutter (23169): [AUDIO] 🎤 VAD ON
[ +376 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [وهل, اتاك, حديث, موسي] | New: [ههل, اتاك, حديث, موسي]
[ +4 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ههل" != "اذ" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اتاك" != "اذ" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "حديث" != "اذ" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "موسي" != "اذ" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "ههل" != "راي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "ههل" != "نارا" (Score: 0.0)
[ +894 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 3 | Prev: [ههل, اتاك, حديث, موسي] | New: [اتاك, حديث, موسي]
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "موسي" != "اذ" (Score: 0.0)
[ +632 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [اتاك, حديث, موسي] | New: [اذ, راي, نارا, ف]
[ +12 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "اذ" == "اذ" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "اذ"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "إذ" against Uthmani expected: "إِذْ"
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "راي" == "راي" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "راي"
[ +10 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "رأى" against Uthmani expected: "إِذْ"
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "نارا" == "نارا" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "نارا"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "ناراً" against Uthmani expected: "نَارًۭا"
[ ] I/flutter (23169): [TASHKEEL] 🟨 YELLOW Failed: "ناراً" != "نَارًا" (Dist: 3)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ف" != "فقال" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "ف" != "لاهله" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "ف" != "امكثوا" (Score: 0.0)
[ +705 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [اذ, راي, نارا, ف] | New: [اذ, راي, نارا, فقال, لها]
[ +7 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اذ" != "فقال" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "راي" != "فقال" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "نارا" != "فقال" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "فقال" == "فقال" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "فقال"
[ +3 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "فقال" against Uthmani expected: "فَقَالَ"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لها" != "لاهله" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "لها" != "امكثوا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "لها" != "اني" (Score: 0.0)
[+1072 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [اذ, راي, نارا, فقال, لها] | New: [اذ, راي, نارا, فقال,
لاهلهم, امكثوا]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اذ" != "لاهله" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "راي" != "لاهله" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "نارا" != "لاهله" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "فقال" != "لاهله" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "لاهلهم" == "لاهله" (Score: 0.75)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "لاهله"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "لأهلهم" against Uthmani expected: "لِأَهْلِهِ"
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "امكثوا" == "امكثوا" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "امكثوا"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "امْكُثوا" against Uthmani expected: "ٱمْكُثُوٓا۟"
[ +1 ms] I/flutter (23169): [TASHKEEL] 🟨 YELLOW Failed: "امْكُثوا" != "امْكُثُوٓا" (Dist: 2)
[+1012 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [اذ, راي, نارا, فقال, لاهلهم, امكثوا] | New: [فر, فراي,
نارا, فقال, لاهله, امكثوا, اني]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +12 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "فر" != "اني" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "فراي" != "اني" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "نارا" != "اني" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "فقال" != "اني" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لاهله" != "اني" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "امكثوا" != "اني" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "اني" == "اني" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "اني"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "إني" against Uthmani expected: "إِنِّىٓ"
[+1136 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [فر, فراي, نارا, فقال, لاهله, امكثوا, اني] | New: [هم,
امكثوا, اني, انست, النار]
[ +6 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "هم" != "انست" (Score: 0.0)
[ +11 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "امكثوا" != "انست" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اني" != "انست" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "انست" == "انست" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "انست"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "آنست" against Uthmani expected: "ءَانَسْتُ"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "النار" != "لعلي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "النار" != "اتيكم" (Score: 0.0)
[ +865 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [هم, امكثوا, اني, انست, النار] | New: [بهم, كثوا, اني,
انست, نارا, لعلي]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +4 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "بهم" != "نارا" (Score: 0.0)
[ +4 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "كثوا" != "نارا" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اني" != "نارا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "انست" != "نارا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "نارا" == "نارا" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "نارا"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "ناراً" against Uthmani expected: "نَارًۭا"
[ ] I/flutter (23169): [TASHKEEL] 🟨 YELLOW Failed: "ناراً" != "نَارًا" (Dist: 3)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "لعلي" == "لعلي" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "لعلي"
[ +2 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "لَعَلِّّي" against Uthmani expected: "لَّعَلِّىٓ"
[ +1 ms] I/flutter (23169): [TASHKEEL] 🟨 YELLOW Failed: "لَعَلِّّي" != "لَّعَلِّيٓ" (Dist: 3)
[ +934 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [بهم, كثوا, اني, انست, نارا, لعلي] | New: [واني, انست,
نارا, لعلي, اتيكم]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "واني" != "اتيكم" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "انست" != "اتيكم" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "نارا" != "اتيكم" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لعلي" != "اتيكم" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "اتيكم" == "اتيكم" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "اتيكم"
[ +4 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "آتِيكُمْ" against Uthmani expected: "ءَاتِيكُم"
[ ] I/flutter (23169): [TASHKEEL] 🟨 YELLOW Failed: "اتِيكُمْ" != "ءَاتِيكُم" (Dist: 3)
[ +866 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 4 | Prev: [واني, انست, نارا, لعلي, اتيكم] | New: [انست, نارا, لعلي,
اتيكم, منها, بقع]
[ +2 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اتيكم" != "منها" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "منها" == "منها" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "منها"
[ +2 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "مِنْهَا" against Uthmani expected: "مِّنْهَا"
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "بقع" != "بقبس" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "بقع" != "اجد" (Score: 0.0)
[ +872 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [انست, نارا, لعلي, اتيكم, منها, بقع] | New: [لعلي, اتيكم,
منها, بقبص]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لعلي" != "بقبس" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اتيكم" != "بقبس" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "منها" != "بقبس" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "بقبص" != "اجد" (Score: 0.0)
[ +870 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [لعلي, اتيكم, منها, بقبص] | New: [سو, اتي, بقبس, اوج]
[ +5 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "سو" != "بقبس" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اتي" != "بقبس" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "بقبس" == "بقبس" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "بقبس"
[ +22 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "بِقَبَسٍ" against Uthmani expected: "بِقَبَسٍ"
[ ] I/flutter (23169): [TASHKEEL] ✅ PASSED: "بِقَبَسٍ" == "بِقَبَسٍ"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اوج" != "او" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "اوج" != "اجد" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "اوج" != "علي" (Score: 0.0)
[ +989 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [سو, اتي, بقبس, اوج] | New: [بقبس, او, اجد, علي, النار, و]
[ +13 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "بقبس" != "او" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "او" == "او" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "او"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "أو" against Uthmani expected: "أَوْ"
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "اجد" == "اجد" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "اجد"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "أجد" against Uthmani expected: "أَجِدُ"
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "علي" == "علي" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "علي"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "عَلَى" against Uthmani expected: "عَلَى"
[ ] I/flutter (23169): [TASHKEEL] ✅ PASSED: "عَلَي" == "عَلَي"
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "النار" == "النار" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "النار"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "النَّارِ" against Uthmani expected: "ٱلنَّارِ"
[ ] I/flutter (23169): [TASHKEEL] ✅ PASSED: "النَّارِ" == "النَّارِ"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "و" != "هدي" (Score: 0.0)
[+1161 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [بقبس, او, اجد, علي, النار, و] | New: [او, اجد, علي, النار,
هدي]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "او" != "هدي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اجد" != "هدي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "علي" != "هدي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "النار" != "هدي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "هدي" == "هدي" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "هدي"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "هدى" against Uthmani expected: "هُدًۭى"
[+1235 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [او, اجد, علي, النار, هدي] | New: [فلجد, علي, النار, هدي]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "فلجد" != "فلما" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "علي" != "فلما" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "النار" != "فلما" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "هدي" != "فلما" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "فلجد" != "اتاها" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "فلجد" != "نودي" (Score: 0.0)
[+1104 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [فلجد, علي, النار, هدي] | New: [فلما, اتاها]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "فلما" == "فلما" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "فلما"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "فلما" against Uthmani expected: "فَلَمَّآ"
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "اتاها" == "اتاها" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "اتاها"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "اتاها" against Uthmani expected: "أَتَىٰهَا"
[ +862 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 2 | Prev: [فلما, اتاها] | New: [فلما, اتاها, نود, يا]
[ +4 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اتاها" != "نودي" (Score: 0.0)
[ +3 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "نود" == "نودي" (Score: 0.75)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "نودي"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "نود" against Uthmani expected: "نُودِىَ"
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "يا" == "يا" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "يا"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "يا" against Uthmani expected: "فَلَمَّآ"
[ +879 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [فلما, اتاها, نود, يا] | New: [فلما, اتاها, نودي, يا, موس]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "فلما" != "موسي" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اتاها" != "موسي" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "نودي" != "موسي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "يا" != "موسي" (Score: 0.0)
[ +852 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [فلما, اتاها, نودي, يا, موس] | New: [وفيوس, يا, موسي]
[ +11 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "وفيوس" != "موسي" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "يا" != "موسي" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "موسي" == "موسي" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "موسي"
[+2169 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [وفيوس, يا, موسي] | New: [اني, انانا, ربك, فاخلعع, عن]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "اني" == "اني" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "اني"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "إِنِي" against Uthmani expected: "إِنِّىٓ"
[ ] I/flutter (23169): [TASHKEEL] 🟨 YELLOW Failed: "اِنِي" != "اِنِّيٓ" (Dist: 2)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "انانا" != "انا" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ربك" != "انا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "فاخلعع" != "انا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "عن" != "انا" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "انانا" != "ربك" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "انانا" != "فاخلع" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 2): "ربك" == "ربك" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "ربك"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "ربكَ" against Uthmani expected: "رَبُّكَ"
[ +1 ms] I/flutter (23169): [TASHKEEL] 🟨 YELLOW Failed: "ربكَ" != "رَبُّكَ" (Dist: 3)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "فاخلعع" == "فاخلع" (Score: 0.75)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "فاخلع"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "فاخلْعَعْ" against Uthmani expected: "فَٱخْلَعْ"
[ +1 ms] I/flutter (23169): [TASHKEEL] 🟨 YELLOW Failed: "فاخلْعَْ" != "فَاخْلَعْ" (Dist: 4)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "عن" != "نعليك" (Score: 0.0)
[ +2 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "عن" != "انك" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "عن" != "بالواد" (Score: 0.0)
[+1188 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [اني, انانا, ربك, فاخلعع, عن] | New: [ان, فاي, انك]
[ +2 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ان" != "نعليك" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "فاي" != "نعليك" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "انك" != "نعليك" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "ان" != "انك" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "ان" != "بالواد" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "فاي" != "انك" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "فاي" != "بالواد" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 2): "انك" == "انك" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "انك"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "إنك" against Uthmani expected: "إِنَّكَ"
[+1170 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [ان, فاي, انك] | New: [وفبف, انكالومين]
[ +17 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "وفبف" != "بالواد" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "انكالومين" != "بالواد" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "وفبف" != "المقدس" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "وفبف" != "طوي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "انكالومين" != "المقدس" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "انكالومين" != "طوي" (Score: 0.0)
[ +867 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [وفبف, انكالومين] | New: [عليك, انك, بالوادي, المقدس, ط]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "عليك" != "بالواد" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "انك" != "بالواد" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "بالوادي" == "بالواد" (Score: 0.75)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "بالواد"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "بالوادي" against Uthmani expected: "بِٱلْوَادِ"
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "المقدس" == "المقدس" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "المقدس"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "المقدس" against Uthmani expected: "ٱلْمُقَدَّسِ"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ط" != "طوي" (Score: 0.0)
[ +864 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [عليك, انك, بالوادي, المقدس, ط] | New: [فانك, بالواد,
المقدس, طوي]
[ +12 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "فانك" != "طوي" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "بالواد" != "طوي" (Score: 0.0)
[ +7 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "المقدس" != "طوي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "طوي" == "طوي" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "طوي"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "طوى" against Uthmani expected: "طُوًۭى"
[ +862 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [فانك, بالواد, المقدس, طوي] | New: [وادي, المقدس, طوي]
[ +1 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +2 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "وادي" != "وانا" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "المقدس" != "وانا" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "طوي" != "وانا" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "وادي" != "اخترتك" (Score: 0.0)
[ +2 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "وادي" != "فاستمع" (Score: 0.0)
[ +951 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [وادي, المقدس, طوي] | New: [وانا, اخترتك, في]
[ +11 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "وانا" == "وانا" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "وانا"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "وأنا" against Uthmani expected: "وَأَنَا"
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "اخترتك" == "اخترتك" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "اخترتك"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "اخترتك" against Uthmani expected: "ٱخْتَرْتُكَ"
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "في" != "فاستمع" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "في" != "لما" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 2): "في" != "يوحي" (Score: 0.0)
[ +858 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [وانا, اخترتك, في] | New: [وانا, ارتك, فاستمع, لما]
[ +13 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "وانا" != "فاستمع" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "ارتك" != "فاستمع" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "فاستمع" == "فاستمع" (Score: 1.0)
[ +1 ms] I/flutter (23169): ✨ [HIGHLIGHT] Word: "فاستمع"
[ +1 ms] I/flutter (23169): [TASHKEEL] Checking raw spoken: "فاستمع" against Uthmani expected: "فَٱسْتَمِعْ"
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "لما" == "لما" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "لما"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "لما" against Uthmani expected: "لِمَا"
[ +864 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 0 | Prev: [وانا, ارتك, فاستمع, لما] | New: [وانا, اخترتك, فاستمع,
لما, يوحي]
[ +5 ms] I/flutter (23169): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "وانا" != "يوحي" (Score: 0.0)
[ +10 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "اخترتك" != "يوحي" (Score: 0.0)
[ +1 ms] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "فاستمع" != "يوحي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ❌ FAILED (Pass 1): "لما" != "يوحي" (Score: 0.0)
[ ] I/flutter (23169): [MATCH] ✅ MATCHED (Pass 1): "يوحي" == "يوحي" (Score: 1.0)
[ ] I/flutter (23169): ✨ [HIGHLIGHT] Word: "يوحي"
[ ] I/flutter (23169): [TASHKEEL] Checking raw spoken: "يُوحَى" against Uthmani expected: "يُوحَىٰٓ"
[ +943 ms] I/flutter (23169): [MATCH] 🔄 Overlap: 4 | Prev: [وانا, اخترتك, فاستمع, لما, يوحي] | New: [اخترتك, فاستمع,
لما, يوحي]
you will notice here in [Tashkeel] some words has no tashkeel
this is the output of your new q8 model ( i was wrong when i sadi it sometimes dooesn't output the tashkeel , i used the wrong model in debug ) :
[+1164 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [] | New: [طه]
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "طه" == "طه" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "طه"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "طُه" against Uthmani expected: "طه"
[ +371 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [طه] | New: [طها]
[ ] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "طها" != "ما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "طها" != "انزلنا" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "طها" != "عليك" (Score: 0.0)
[ +706 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [طها] | New: [حها]
[ ] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +7 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "حها" != "ما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "حها" != "انزلنا" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "حها" != "عليك" (Score: 0.0)
[ +756 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [حها] | New: [سها, ما, از]
[ ] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "سها" != "ما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "ما" == "ما" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "ما"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "مَا" against Uthmani expected: "مَآ"
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "از" != "انزلنا" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "از" != "عليك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "از" != "القران" (Score: 0.0)
[+1094 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [سها, ما, از] | New: [ما, انزلنا, علي]
[ +3 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ما" != "انزلنا" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "انزلنا" == "انزلنا" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "انزلنا"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "أَنْزَلْنَا" against Uthmani expected: "أَنزَلْنَا"
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "علي" != "القران" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "علي" != "لتشقي" (Score: 0.0)
[ +907 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ما, انزلنا, علي] | New: [ما, انزلنا, ع, ال, القران]
[ ] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ما" != "عليك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "انزلنا" != "عليك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ع" != "عليك" (Score: 0.0)
[ +4 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ال" != "عليك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "القران" != "عليك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ع" != "القران" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ع" != "لتشقي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ال" != "القران" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ال" != "لتشقي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 2): "القران" == "القران" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "القران"
[ +863 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ما, انزلنا, ع, ال, القران] | New: [ما, انزلنا, ع, ال,
القرانشي]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ما" != "لتشقي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "انزلنا" != "لتشقي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ع" != "لتشقي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ال" != "لتشقي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "القرانشي" != "لتشقي" (Score: 0.0)
[ +966 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ما, انزلنا, ع, ال, القرانشي] | New: [انزلنا, عليك, القران,
لتشق]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "انزلنا" != "لتشقي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "عليك" != "لتشقي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "القران" != "لتشقي" (Score: 0.0)
[ +864 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [انزلنا, عليك, القران, لتشق] | New: [القران, لتشقيا]
[ +4 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "القران" != "لتشقي" (Score: 0.0)
[ +876 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [القران, لتشقيا] | New: [لتشقي, الا, تذكره]
[ +15 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "لتشقي" == "لتشقي" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "لتشقي"
[ +879 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [لتشقي, الا, تذكره] | New: [ال, تذكره, لن, يخشي]
[ +7 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ال" != "الا" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "تذكره" != "الا" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "لن" != "الا" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "يخشي" != "الا" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ال" != "تذكره" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ال" != "لمن" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "لن" != "تذكره" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "لن" != "لمن" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "يخشي" != "تذكره" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "يخشي" != "لمن" (Score: 0.0)
[ +948 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ال, تذكره, لن, يخشي] | New: [الا, تذكره, لمن, يخش]
[ +23 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "الا" == "الا" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "الا"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "إِلَّا" against Uthmani expected: "إِلَّا"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "اِلَّا" == "اِلَّا"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "تذكره" == "تذكره" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "تذكره"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "لمن" == "لمن" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "لمن"
[ +852 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [الا, تذكره, لمن, يخش] | New: [وذكره, لمن, يخش]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وذكره" != "يخشي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "لمن" != "يخشي" (Score: 0.0)
[ +864 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [وذكره, لمن, يخش] | New: [منن, يخشا, تنزيلا]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "منن" != "يخشي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "يخشا" == "يخشي" (Score: 0.75)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "يخشي"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "يَخْشَا" against Uthmani expected: "يَخْشَىٰ"
[ +885 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 1 | Prev: [منن, يخشا, تنزيلا] | New: [تنزيلا, ممن, خلق]
[ +1 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "تنزيلا" == "تنزيلا" (Score: 1.0)
[ +3 ms] I/flutter (14294): ✨ [HIGHLIGHT] Word: "تنزيلا"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "تَنْزِيلًا" against Uthmani expected: "تَنزِيلًۭا"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "ممن" == "ممن" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "ممن"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "خلق" == "خلق" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "خلق"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "خَلَقَ" against Uthmani expected: "خَلَقَ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "خَلَقَ" == "خَلَقَ"
[ +958 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 3 | Prev: [تنزيلا, ممن, خلق] | New: [تنزيلا, ممن, خلق, الارض,
والسماء]
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "خلق" != "الارض" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "الارض" == "الارض" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "الارض"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "الْأَرْضَ" against Uthmani expected: "ٱلْأَرْضَ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "الْاَرْضَ" == "الْاَرْضَ"
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "والسماء" != "والسماوات" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "والسماء" != "العلي" (Score: 0.0)
[ +870 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [تنزيلا, ممن, خلق, الارض, والسماء] | New: [قيلا, ممن, خلق,
الارض, والسماوات]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "قيلا" != "والسماوات" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ممن" != "والسماوات" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "خلق" != "والسماوات" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الارض" != "والسماوات" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "والسماوات" == "والسماوات" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "والسماوات"
[ +872 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [قيلا, ممن, خلق, الارض, والسماوات] | New: [من, خلق, الارض,
والسماوتعلي]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "من" != "العلي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "خلق" != "العلي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الارض" != "العلي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "والسماوتعلي" != "العلي" (Score: 0.0)
[ +873 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [من, خلق, الارض, والسماوتعلي] | New: [الاض, والسماوات,
العلي]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +3 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الاض" != "العلي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "والسماوات" != "العلي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "العلي" == "العلي" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "العلي"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "الْعُلَى" against Uthmani expected: "ٱلْعُلَى"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "الْعُلَي" == "الْعُلَي"
[ +968 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [الاض, والسماوات, العلي] | New: [السماوات, العلي, الرحمن]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "السماوات" != "الرحمن" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "العلي" != "الرحمن" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "الرحمن" == "الرحمن" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "الرحمن"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "الرَّحْمَن" against Uthmani expected: "ٱلرَّحْمَـٰنُ"
[ +857 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [السماوات, العلي, الرحمن] | New: [و]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "و" != "علي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "و" != "العرش" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "و" != "استوي" (Score: 0.0)
[ +885 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [و] | New: [الرحمن, علي, العرش, استوي]
[ ] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الرحمن" != "علي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "علي" == "علي" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "علي"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "عَلَى" against Uthmani expected: "عَلَى"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "عَلَي" == "عَلَي"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "العرش" == "العرش" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "العرش"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "استوي" == "استوي" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "استوي"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "اسْتَوَى" against Uthmani expected: "ٱسْتَوَىٰ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "اسْتَوَي" == "اسْتَوَي"
[ +871 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [الرحمن, علي, العرش, استوي] | New: [سان, علي, العرش,
استتوي, ل]
[ +6 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +5 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "سان" != "له" (Score: 0.0)
[ +2 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "علي" != "له" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "العرش" != "له" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "استتوي" != "له" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ل" != "له" (Score: 0.0)
[ +951 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [سان, علي, العرش, استتوي, ل] | New: [علي, العرش, استوي, له,
ما, في, السماء]
[ +5 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "علي" != "له" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "العرش" != "له" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "استوي" != "له" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "له" == "له" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "له"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "لَهُ" against Uthmani expected: "لَهُۥ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "لَهُ" == "لَهُ"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "ما" == "ما" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "ما"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "مَا" against Uthmani expected: "مَا"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "مَا" == "مَا"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "في" == "في" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "في"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "فِي" against Uthmani expected: "فِى"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "فِي" == "فِي"
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "السماء" != "السماوات" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "السماء" != "وما" (Score: 0.0)
[ +865 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [علي, العرش, استوي, له, ما, في, السماء] | New: [ش, اشستوي,
له, ما, في, السماوات, والارض]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ش" != "السماوات" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "اشستوي" != "السماوات" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "له" != "السماوات" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ما" != "السماوات" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "في" != "السماوات" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "السماوات" == "السماوات" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "السماوات"
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "والارض" != "وما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "والارض" != "الارض" (Score: 0.0)
[ +874 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ش, اشستوي, له, ما, في, السماوات, والارض] | New: [له, ما,
في, السماوات, وما, في, الارض]
[ +5 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "له" != "وما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ما" != "وما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "في" != "وما" (Score: 0.0)
[ +11 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "السماوات" != "وما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "وما" == "وما" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "وما"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "وَمَا" against Uthmani expected: "وَمَا"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "وَمَا" == "وَمَا"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "في" == "في" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "في"
[ +7 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "فِي" against Uthmani expected: "فِى"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "فِي" == "فِي"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "الارض" == "الارض" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "الارض"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "الْأَرْضِ" against Uthmani expected: "ٱلْأَرْضِ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "الْاَرْضِ" == "الْاَرْضِ"
[ +876 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [له, ما, في, السماوات, وما, في, الارض] | New: [ولق, ما, في,
السماوات, وما, في, الارض, وما, ب]
[ +8 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +3 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ولق" != "وما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ما" != "وما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "في" != "وما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "السماوات" != "وما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "وما" == "وما" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "وما"
[ +15 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "وَمَا" against Uthmani expected: "وَمَا"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "وَمَا" == "وَمَا"
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "في" != "بينهما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الارض" != "بينهما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وما" != "بينهما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ب" != "بينهما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ب" != "وما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ب" != "تحت" (Score: 0.0)
[ +926 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ولق, ما, في, السماوات, وما, في, الارض, وما, ب] | New:
[والسماوات, وما, في, الارض, وما, بينهما]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "والسماوات" != "بينهما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وما" != "بينهما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "في" != "بينهما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الارض" != "بينهما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وما" != "بينهما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "بينهما" == "بينهما" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "بينهما"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "بَيْنَهُمَا" against Uthmani expected: "بَيْنَهُمَا"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "بَيْنَهُمَا" == "بَيْنَهُمَا"
[ +862 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 2 | Prev: [والسماوات, وما, في, الارض, وما, بينهما] | New: [وما,
بينهما, وما, تحت, الس]
[ +20 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "بينهما" != "وما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "وما" == "وما" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "وما"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "بَيْنَهُمَا" against Uthmani expected: "بَيْنَهُمَا"
[ +1 ms] I/flutter (14294): [TASHKEEL] ✅ PASSED: "بَيْنَهُمَا" == "بَيْنَهُمَا"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "تحت" == "تحت" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "تحت"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "وَمَا" against Uthmani expected: "وَمَا"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "وَمَا" == "وَمَا"
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الس" != "الثري" (Score: 0.0)
[ +863 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [وما, بينهما, وما, تحت, الس] | New: [وما, بينهما, وما, تحت,
الثر]
[ +9 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وما" != "الثري" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "بينهما" != "الثري" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وما" != "الثري" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "تحت" != "الثري" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الثر" != "الثري" (Score: 0.0)
[ +869 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [وما, بينهما, وما, تحت, الثر] | New: [بينهما, وما, تحت,
الثري]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +2 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "بينهما" != "الثري" (Score: 0.0)
[ +2 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وما" != "الثري" (Score: 0.0)
[ +8 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "تحت" != "الثري" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "الثري" == "الثري" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "الثري"
[ +978 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [بينهما, وما, تحت, الثري] | New: [ما, الثر]
[ +4 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ما" != "وان" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الثر" != "وان" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ما" != "تجهر" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ما" != "بالقول" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "الثر" != "تجهر" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "الثر" != "بالقول" (Score: 0.0)
[+1201 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ما, الثر] | New: [وان, تجهر, بالقول, ف]
[ +6 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "وان" == "وان" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "وان"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "وَإِنْ" against Uthmani expected: "وَإِن"
[ +11 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "تجهر" == "تجهر" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "تجهر"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "تَجْهَرْ" against Uthmani expected: "تَجْهَرْ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "تَجْهَرْ" == "تَجْهَرْ"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "بالقول" == "بالقول" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "بالقول"
[ +1 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "بِالْقَوْلِ" against Uthmani expected: "بِٱلْقَوْلِ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "بِالْقَوْلِ" == "بِالْقَوْلِ"
[ +2 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ف" != "فانه" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ف" != "يعلم" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ف" != "السر" (Score: 0.0)
[+1166 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [وان, تجهر, بالقول, ف] | New: [وان, تجهر, بالقول, فانه,
يعلم, السر]
[ +8 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وان" != "فانه" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "تجهر" != "فانه" (Score: 0.0)
[ +10 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "بالقول" != "فانه" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "فانه" == "فانه" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "فانه"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "فَإِنَّهُ" against Uthmani expected: "فَإِنَّهُۥ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "فَاِنَّهُ" == "فَاِنَّهُ"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "يعلم" == "يعلم" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "يعلم"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "يَعْلَمُ" against Uthmani expected: "يَعْلَمُ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "يَعْلَمُ" == "يَعْلَمُ"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "السر" == "السر" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "السر"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "السِّرَّ" against Uthmani expected: "ٱلسِّرَّ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "السِّرَّ" == "السِّرَّ"
[+1156 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [وان, تجهر, بالقول, فانه, يعلم, السر] | New: [بالول, فانه,
يعلم, السر, واخف]
[ +8 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "بالول" != "واخفي" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "فانه" != "واخفي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "يعلم" != "واخفي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "السر" != "واخفي" (Score: 0.0)
[+1168 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [بالول, فانه, يعلم, السر, واخف] | New: [يعلم, السر, واخفي,
الله, ل]
[ +6 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +2 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "يعلم" != "واخفي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "السر" != "واخفي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "واخفي" == "واخفي" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "واخفي"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "وَأَخْفَى" against Uthmani expected: "وَأَخْفَى"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "وَاَخْفَي" == "وَاَخْفَي"
[ +876 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [يعلم, السر, واخفي, الله, ل] | New: [ر, واخفي, الله, ل, ال,
ال]
[ +4 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ر" != "الله" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "واخفي" != "الله" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "الله" == "الله" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "الله"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "اللَّهُ" against Uthmani expected: "ٱللَّهُ"
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ل" != "لا" (Score: 0.0)
[ +2 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ال" != "لا" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ال" != "لا" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ال" != "اله" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ال" != "الا" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ال" != "اله" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ال" != "الا" (Score: 0.0)
[+1180 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ر, واخفي, الله, ل, ال, ال] | New: [الله, لا, اله, الا, هو,
ل]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الله" != "لا" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "لا" == "لا" (Score: 1.0)
[ +1 ms] I/flutter (14294): ✨ [HIGHLIGHT] Word: "لا"
[ +1 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "لَا" against Uthmani expected: "لَآ"
[ +1 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "اله" == "اله" (Score: 1.0)
[ +1 ms] I/flutter (14294): ✨ [HIGHLIGHT] Word: "اله"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "إِلَهَ" against Uthmani expected: "إِلَـٰهَ"
[ +2 ms] I/flutter (14294): [TASHKEEL] ✅ PASSED: "اِلَهَ" == "اِلَهَ"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "الا" == "الا" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "الا"
[ +1 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "إِلَّا" against Uthmani expected: "إِلَّا"
[ +1 ms] I/flutter (14294): [TASHKEEL] ✅ PASSED: "اِلَّا" == "اِلَّا"
[ +1 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "هو" == "هو" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "هو"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "هُوَ" against Uthmani expected: "هُوَ"
[ +1 ms] I/flutter (14294): [TASHKEEL] ✅ PASSED: "هُوَ" == "هُوَ"
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ل" != "له" (Score: 0.0)
[ +871 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [الله, لا, اله, الا, هو, ل] | New: [الله, لا, اله, الا, هو,
له, الاسماء]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "الله" == "له" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "له"
[ +11 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "اللَّهُ" against Uthmani expected: "ٱللَّهُ"
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "لا" != "الاسماء" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "اله" != "الاسماء" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الا" != "الاسماء" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "هو" != "الاسماء" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "له" != "الاسماء" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "الاسماء" == "الاسماء" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "الاسماء"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "الْأَسْمَاء" against Uthmani expected: "ٱلْأَسْمَآءُ"
[ ] I/flutter (14294): [TASHKEEL] 🟨 YELLOW Failed: "الْاَسْمَاء" != "الْاَسْمَآءُ" (Dist: 2)
[+1165 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [الله, لا, اله, الا, هو, له, الاسماء] | New: [ال, الا, هو,
له, الاسماء, الحسن]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ال" != "الحسني" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الا" != "الحسني" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "هو" != "الحسني" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "له" != "الحسني" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الاسماء" != "الحسني" (Score: 0.0)
[ +882 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ال, الا, هو, له, الاسماء, الحسن] | New: [وله, الاسماء,
الحسني, وهل, الات]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وله" != "الحسني" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الاسماء" != "الحسني" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "الحسني" == "الحسني" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "الحسني"
[ +989 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [وله, الاسماء, الحسني, وهل, الات] | New: [ا, الاسماء,
الحسني, وهل, اتاك, حديث]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ا" != "وهل" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الاسماء" != "وهل" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الحسني" != "وهل" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "وهل" == "وهل" (Score: 1.0)
[ +1 ms] I/flutter (14294): ✨ [HIGHLIGHT] Word: "وهل"
[ +2 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "وَهَلْ" against Uthmani expected: "وَهَلْ"
[ +1 ms] I/flutter (14294): [TASHKEEL] ✅ PASSED: "وَهَلْ" == "وَهَلْ"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "اتاك" == "اتاك" (Score: 1.0)
[ +2 ms] I/flutter (14294): ✨ [HIGHLIGHT] Word: "اتاك"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "حديث" == "حديث" (Score: 1.0)
[ +2 ms] I/flutter (14294): ✨ [HIGHLIGHT] Word: "حديث"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "حَدِيث" against Uthmani expected: "حَدِيثُ"
[+1156 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ا, الاسماء, الحسني, وهل, اتاك, حديث] | New: [وهل, اتاك,
حدث, موس]
[ +6 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وهل" != "موسي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "اتاك" != "موسي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "حدث" != "موسي" (Score: 0.0)
[+1205 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [وهل, اتاك, حدث, موس] | New: [وين, اتاك, حديث, موسي, اذ,
راي, ني]
[ +6 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وين" != "موسي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "اتاك" != "موسي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "حديث" != "موسي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "موسي" == "موسي" (Score: 1.0)
[ +10 ms] I/flutter (14294): ✨ [HIGHLIGHT] Word: "موسي"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "موسى" against Uthmani expected: "مُوسَىٰٓ"
[+1159 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [وين, اتاك, حديث, موسي, اذ, راي, ني] | New: [ل, موسي, اذ,
راي, نارا]
[ +6 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ل" != "اذ" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "موسي" != "اذ" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "اذ" == "اذ" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "اذ"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "إِذْ" against Uthmani expected: "إِذْ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "اِذْ" == "اِذْ"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "راي" == "راي" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "راي"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "نارا" == "نارا" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "نارا"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "نارًا" against Uthmani expected: "نَارًۭا"
[+1203 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 3 | Prev: [ل, موسي, اذ, راي, نارا] | New: [اذ, راي, نارا, فقال,
لاهله, امكثوا]
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "نارا" != "فقال" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "فقال" == "فقال" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "فقال"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "فَقَالَ" against Uthmani expected: "فَقَالَ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "فَقَالَ" == "فَقَالَ"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "لاهله" == "لاهله" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "لاهله"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "لِأَهْلِهِ" against Uthmani expected: "لِأَهْلِهِ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "لِاَهْلِهِ" == "لِاَهْلِهِ"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "امكثوا" == "امكثوا" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "امكثوا"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "امْكُثُوا" against Uthmani expected: "ٱمْكُثُوٓا۟"
[ +871 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [اذ, راي, نارا, فقال, لاهله, امكثوا] | New: [ا]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ا" != "اني" (Score: 0.0)
[ +2 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ا" != "انست" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ا" != "نارا" (Score: 0.0)
[+1185 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ا] | New: [لاهلهم, كثوا, اني, انست, نارا]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "لاهلهم" != "اني" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "كثوا" != "اني" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "اني" == "اني" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "اني"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "إِنِّي" against Uthmani expected: "إِنِّىٓ"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "انست" == "انست" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "انست"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "نارا" == "نارا" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "نارا"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "نَارًا" against Uthmani expected: "نَارًۭا"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "نَارًا" == "نَارًا"
[ +868 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [لاهلهم, كثوا, اني, انست, نارا] | New: [ث, اني, انست, نارا,
لعلي, اتي]
[ +5 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ث" != "لعلي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "اني" != "لعلي" (Score: 0.0)
[ +8 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "انست" != "لعلي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "نارا" != "لعلي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "لعلي" == "لعلي" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "لعلي"
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "اتي" != "اتيكم" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "اتي" != "منها" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "اتي" != "بقبس" (Score: 0.0)
[ +875 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ث, اني, انست, نارا, لعلي, اتي] | New: [ي, انست, نارا,
لعلي, اتيكم, منها]
[ ] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ي" != "اتيكم" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "انست" != "اتيكم" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "نارا" != "اتيكم" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "لعلي" != "اتيكم" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "اتيكم" == "اتيكم" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "اتيكم"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "منها" == "منها" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "منها"
[ +5 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "مِنْهَا" against Uthmani expected: "مِّنْهَا"
[ +930 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 4 | Prev: [ي, انست, نارا, لعلي, اتيكم, منها] | New: [نارا, لعلي,
اتيكم, منها, بطبص]
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "منها" != "بقبس" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "بطبص" != "بقبس" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "بطبص" != "اجد" (Score: 0.0)
[ +880 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [نارا, لعلي, اتيكم, منها, بطبص] | New: [علي, اتيكم, منها,
بطبسو]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "علي" != "بقبس" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "اتيكم" != "بقبس" (Score: 0.0)
[ +2 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "منها" != "بقبس" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "بطبسو" != "بقبس" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "علي" != "اجد" (Score: 0.0)
[ +4 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "بطبسو" != "اجد" (Score: 0.0)
[ +872 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [علي, اتيكم, منها, بطبسو] | New: [ا, من, بقبص, او, اجد,
علي, النار]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ا" != "بقبس" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "من" != "بقبس" (Score: 0.0)
[ +2 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "بقبص" == "بقبس" (Score: 0.75)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "بقبس"
[ +3 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "بِقَبَصٍ" against Uthmani expected: "بِقَبَسٍ"
[ +1 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "او" == "او" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "او"
[ +2 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "أَوْ" against Uthmani expected: "أَوْ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "اَوْ" == "اَوْ"
[ +1 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "اجد" == "اجد" (Score: 1.0)
[ +2 ms] I/flutter (14294): ✨ [HIGHLIGHT] Word: "اجد"
[ +2 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "أَجِدُ" against Uthmani expected: "أَجِدُ"
[ +1 ms] I/flutter (14294): [TASHKEEL] ✅ PASSED: "اَجِدُ" == "اَجِدُ"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "علي" == "علي" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "علي"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "عَلَى" against Uthmani expected: "عَلَى"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "عَلَي" == "عَلَي"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "النار" == "النار" (Score: 1.0)
[ +1 ms] I/flutter (14294): ✨ [HIGHLIGHT] Word: "النار"
[ +1 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "النَّارِ" against Uthmani expected: "ٱلنَّارِ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "النَّارِ" == "النَّارِ"
[ +881 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ا, من, بقبص, او, اجد, علي, النار] | New: [بقبس, ا, اجد,
علي, النار, هدي]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "بقبس" != "هدي" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ا" != "هدي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "اجد" != "هدي" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "علي" != "هدي" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "النار" != "هدي" (Score: 0.0)
[ +2 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "هدي" == "هدي" (Score: 1.0)
[ +2 ms] I/flutter (14294): ✨ [HIGHLIGHT] Word: "هدي"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "هُدى" against Uthmani expected: "هُدًۭى"
[ +922 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [بقبس, ا, اجد, علي, النار, هدي] | New: [او, اجد, علي,
النار, هدي, فم]
[ +7 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "او" != "فلما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "اجد" != "فلما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "علي" != "فلما" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "النار" != "فلما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "هدي" != "فلما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "فم" != "فلما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "او" != "اتاها" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "او" != "نودي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "فم" != "اتاها" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "فم" != "نودي" (Score: 0.0)
[ +866 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [او, اجد, علي, النار, هدي, فم] | New: [ي, علي, النار, هد,
فم, اتاها]
[ +8 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ي" != "فلما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "علي" != "فلما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "النار" != "فلما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "هد" != "فلما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "فم" != "فلما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "اتاها" != "فلما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ي" != "اتاها" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ي" != "نودي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "هد" != "اتاها" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "هد" != "نودي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 2): "اتاها" == "اتاها" (Score: 1.0)
[ +2 ms] I/flutter (14294): ✨ [HIGHLIGHT] Word: "اتاها"
[ +875 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ي, علي, النار, هد, فم, اتاها] | New: [فلما, اتاها, نودي]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "فلما" != "نودي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "اتاها" != "نودي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "نودي" == "نودي" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "نودي"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "نُودِيَ" against Uthmani expected: "نُودِىَ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "نُودِيَ" == "نُودِيَ"
[ +868 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 3 | Prev: [فلما, اتاها, نودي] | New: [فلما, اتاها, نودي, يا, موس]
[ +2 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "نودي" != "يا" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "يا" == "يا" (Score: 1.0)
[ +4 ms] I/flutter (14294): ✨ [HIGHLIGHT] Word: "يا"
[ +949 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [فلما, اتاها, نودي, يا, موس] | New: [واتاها, نودي, يا,
موسي, اني, انا]
[ +5 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "واتاها" != "موسي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "نودي" != "موسي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "يا" != "موسي" (Score: 0.0)
[ +5 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "موسي" == "موسي" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "موسي"
[ +870 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [واتاها, نودي, يا, موسي, اني, انا] | New: [ونودي, يا, موسي,
اني, انا, ربك]
[ +7 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ونودي" != "اني" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "يا" != "اني" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "موسي" != "اني" (Score: 0.0)
[ +6 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "اني" == "اني" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "اني"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "إِنِّي" against Uthmani expected: "إِنِّىٓ"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "انا" == "انا" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "انا"
[ +8 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "أَنَا" against Uthmani expected: "أَنَا۠"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "اَنَا" == "اَنَا"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "ربك" == "ربك" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "ربك"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "رَبُّكَ" against Uthmani expected: "رَبُّكَ"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "رَبُّكَ" == "رَبُّكَ"
[ +868 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ونودي, يا, موسي, اني, انا, ربك] | New: [وقا, موسي, اني,
انا, ربك, فاخلع, نل]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وقا" != "فاخلع" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "موسي" != "فاخلع" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "اني" != "فاخلع" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "انا" != "فاخلع" (Score: 0.0)
[ +2 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ربك" != "فاخلع" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "فاخلع" == "فاخلع" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "فاخلع"
[ +2 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "فَاخْلَعْ" against Uthmani expected: "فَٱخْلَعْ"
[ +2 ms] I/flutter (14294): [TASHKEEL] ✅ PASSED: "فَاخْلَعْ" == "فَاخْلَعْ"
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "نل" != "نعليك" (Score: 0.0)
[ +2 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "نل" != "انك" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "نل" != "بالواد" (Score: 0.0)
[+1165 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [وقا, موسي, اني, انا, ربك, فاخلع, نل] | New: [ان, انا, ربك,
فاخلع, نعيك]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +2 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ان" != "نعليك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "انا" != "نعليك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ربك" != "نعليك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "فاخلع" != "نعليك" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ان" != "انك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "ان" != "بالواد" (Score: 0.0)
[ +3 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "نعيك" != "انك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "نعيك" != "بالواد" (Score: 0.0)
[ +869 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [ان, انا, ربك, فاخلع, نعيك] | New: [وقب, رك, فاخعيك, انك,
بواد]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وقب" != "نعليك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "رك" != "نعليك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "فاخعيك" != "نعليك" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "انك" != "نعليك" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "بواد" != "نعليك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "وقب" != "انك" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "وقب" != "بالواد" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "رك" != "انك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "رك" != "بالواد" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "فاخعيك" != "انك" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "فاخعيك" != "بالواد" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 2): "انك" == "انك" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "انك"
[ +9 ms] I/flutter (14294): [TASHKEEL] Checking raw spoken: "إِنَّك" against Uthmani expected: "إِنَّكَ"
[ +4 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "بواد" != "المقدس" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "بواد" != "طوي" (Score: 0.0)
[ +971 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [وقب, رك, فاخعيك, انك, بواد] | New: [نع, عليك, انك, بالواد,
المقدس]
[ +1 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ +6 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "نع" != "بالواد" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "عليك" != "بالواد" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "انك" != "بالواد" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "بالواد" == "بالواد" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "بالواد"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "المقدس" == "المقدس" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "المقدس"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "الْمُقَدَّسِ" against Uthmani expected: "ٱلْمُقَدَّسِ"
[ +1 ms] I/flutter (14294): [TASHKEEL] ✅ PASSED: "الْمُقَدَّسِ" == "الْمُقَدَّسِ"
[+1149 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 3 | Prev: [نع, عليك, انك, بالواد, المقدس] | New: [انك, بالواد,
المقدس, طو]
[ +2 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "المقدس" != "طوي" (Score: 0.0)
[ +1 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "طو" != "طوي" (Score: 0.0)
[ +873 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [انك, بالواد, المقدس, طو] | New: [الوااد, المقس, طوي]
[ +5 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "الوااد" != "طوي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "المقس" != "طوي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "طوي" == "طوي" (Score: 1.0)
[ +12 ms] I/flutter (14294): ✨ [HIGHLIGHT] Word: "طوي"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "طُوى" against Uthmani expected: "طُوًۭى"
[ +866 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [الوااد, المقس, طوي] | New: [مس, تو, وانا, اخترك, فاسمع]
[ +5 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "مس" != "وانا" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "تو" != "وانا" (Score: 0.0)
[ +10 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "وانا" == "وانا" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "وانا"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "وَأَنَا" against Uthmani expected: "وَأَنَا"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "وَاَنَا" == "وَاَنَا"
[ +2 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "اخترك" == "اخترتك" (Score: 0.75)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "اخترتك"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "اخترك" against Uthmani expected: "ٱخْتَرْتُكَ"
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "فاسمع" != "لما" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 2): "فاسمع" != "يوحي" (Score: 0.0)
[ +864 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [مس, تو, وانا, اخترك, فاسمع] | New: [سو, وانا, اخترتك,
فاستمع, لما, ي]
[ +6 ms] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "سو" != "فاستمع" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وانا" != "فاستمع" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "اخترتك" != "فاستمع" (Score: 0.0)
[ +10 ms] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "فاستمع" == "فاستمع" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "فاستمع"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "فَاسْتَمعْ" against Uthmani expected: "فَٱسْتَمِعْ"
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "لما" == "لما" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "لما"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "لِمَا" against Uthmani expected: "لِمَا"
[ ] I/flutter (14294): [TASHKEEL] ✅ PASSED: "لِمَا" == "لِمَا"
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "ي" != "يوحي" (Score: 0.0)
[ +955 ms] I/flutter (14294): [MATCH] 🔄 Overlap: 0 | Prev: [سو, وانا, اخترتك, فاستمع, لما, ي] | New: [وانا, اخترتك,
فاستمع, لما, يوحي]
[ ] I/flutter (14294): [MATCH] 🚨 CONTINUITY BROKEN - Overlap dropped to 0. ASR dropped prefix!
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "وانا" != "يوحي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "اخترتك" != "يوحي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "فاستمع" != "يوحي" (Score: 0.0)
[ +22 ms] I/flutter (14294): [MATCH] ❌ FAILED (Pass 1): "لما" != "يوحي" (Score: 0.0)
[ ] I/flutter (14294): [MATCH] ✅ MATCHED (Pass 1): "يوحي" == "يوحي" (Score: 1.0)
[ ] I/flutter (14294): ✨ [HIGHLIGHT] Word: "يوحي"
[ ] I/flutter (14294): [TASHKEEL] Checking raw spoken: "يُوحَى" against Uthmani expected: "يُوحَىٰٓ"
Wa ʿalaykum as-salām wa raḥmatullāhi wa barakātuh, my brother 🤍
Alhamdulillah, glad the q8 is working well for you, and good that the tashkeel scare was just the wrong model loaded in debug. Jazāk Allāhu khayran for testing both so carefully.
One thing worth your time from the logs: most of the leftover red and yellow is coming from your matching layer, not the model. The tell is that the same fails show up against yazinsai's output too.
The yellow tashkeel fails like "اِلَّا" != "اِلَّا" (Dist: 2) are strings that render identically but differ in hidden codepoints, usually dagger alif (U+0670), wasla (U+0671), or hamza ordering. Your Uthmani to imlāʾī normalization is not folding both sides the same way. Dump the spoken and expected strings to hex before comparing and the difference jumps out. Same root cause for "السَّمَاوَاتِ" vs "السَّمَوَتِ" (a dagger alif stripped on one side but kept as a full alif on the other) and the lafẓ al-jalālah one where a lām is being dropped in normalization.
Second bug: when two words match inside one window, your tashkeel check sometimes runs against the previous expected word. You can see "رأى" checked against "إِذْ", and "يا" against "فَلَمَّآ". Your expected index is not advancing in step with the matched words.
The continuity breaks (Overlap to 0) are a streaming issue on your side too. Worth checking your chunk size, overlap window, and whether the decoder state is being reset between chunks.
On the LM idea: it is a real accuracy win for word recognition, and I will consider it.
Streaming q8 coming soon in shā' Allah 🤍
i know i didn't fix the tashkeel matching yet ...i made it for testing only your awesome model masha'a Allah <3
Thanks my brother <3
Also if you are still fining the streaming model
you can add some fast recitations because sometimes the model output is wrongly for fast recitations
and sometimes when i stop at last word like الحكيم it drops the last letter
[ +3 ms] I/flutter (20821): [MATCH] ✅ MATCHED (Pass 1): "الحكي" == "الحكيم" (Score: 0.85)
[ +1 ms] I/flutter (20821): ✨ [HIGHLIGHT] Word: "الحكيم"
[ ] I/flutter (20821): [TASHKEEL] Checking raw spoken: "الْحَكِي" against Uthmani expected: "ٱلْحَكِيمُ"
[ +1 ms] I/flutter (20821): [TASHKEEL] 🟨 YELLOW Failed: "الحَكِي" != "الحَكِيمُ" (Dist: 2)