Paste one ayah or an entire surah, preserving the original Arabic orthography. The analysis runs on every token in order.
Input: ACE controller Arabic passage | 6 tokens
| NDCL-01 | Exact ND | PASS | ND | + ثُمَّ + |
| NDCL-02 | Prepend + ND | NO MATCH | Alternative not matched |
| NDCL-03 | ND + Append | NO MATCH | Alternative not matched |
| NDCL-04 | Prepend + ND + Append | NO MATCH | Alternative not matched |
| DCL-01 | Token Length | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-02 | Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-03 | Length After Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-04 | Length Without Vowels | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-05 | Root Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-06 | Form Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-07 | Form Identifier | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-08 | T Categories | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-09 | Person / Declension Index | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-10 | Dictionary Verification | NOT REQUIRED | ND recognized; derived analysis bypassed |
| Feature | Existing / trace value |
|---|---|
| Full Token | ثُمَّ |
| R-L — Raw Length (code points including marks) | 5 |
| R-L — Raw Letter Count | 2 |
| Suffix Removed (upstream R001/R002) | NOT AVAILABLE |
| R-U — Preserved Stem (with marks) | ثُمَّ |
| R-U — Normalized Stem | ثُمَّ |
| R-U Length (existing controller) | NOT AVAILABLE |
| Prefix (controller fallback) | NOT AVAILABLE |
| R006 Actual Prefix Removed | NOT AVAILABLE |
| R006 Actual After Prefix | NOT AVAILABLE |
| R006 Actual Prefix Arithmetic | NOT AVAILABLE |
| R006 Actual Form-Specific Marker Removed | NOT AVAILABLE |
| R006 Actual After Form Removal | NOT AVAILABLE |
| R006 Actual Form Arithmetic | NOT AVAILABLE |
| R006 Form-Specific Adjustment Rationale | NOT AVAILABLE |
| F-I — R006 Form Candidates | NOT AVAILABLE |
| I-V — Internal Vowels (existing output) | NOT AVAILABLE |
| S-T — Physical Suffix Families | [] |
| S-I — Physical Suffix Indices | [] |
| P-R — Existing Pattern Evidence | [] |
| R007 T Candidates | NOT AVAILABLE |
| R008 Index (parsed from existing candidates) | NOT AVAILABLE |
| R008 Form.T.Index Candidates | NOT AVAILABLE |
| R008 Status | NOT AVAILABLE |
| R008 Guard Accepted | NOT AVAILABLE |
| R008 Guard Rejected | NOT AVAILABLE |
| R008 Guard Unverified | NOT AVAILABLE |
| Authoritative Full Pattern | NOT AVAILABLE |
| Authoritative Full Structural Units | NOT AVAILABLE |
| Prefix / S-I Synchronization (existing verdict) | NOT AVAILABLE |
| Stage | Execution | Outcome | Reason |
|---|---|---|---|
| R006 | SKIPPED | ND token: derived morphology stage not applicable | |
| R007 | SKIPPED | ND token: derived morphology stage not applicable | |
| R008 | SKIPPED | ND token: derived morphology stage not applicable | |
| R009 | SKIPPED | ND token: derived morphology stage not applicable | |
| R010 | SKIPPED | Dictionary review queue is rendered after token loop; not a per-token verifier | |
| R011 | SKIPPED | ND token: derived morphology stage not applicable |
{
"r011_mod151_read_only": [],
"stage_audit_mod151": [
{
"stage": "R006",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R007",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R008",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R009",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R010",
"state": "SKIPPED",
"outcome": null,
"reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
"calls": 0
},
{
"stage": "R011",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
}
],
"original_analysis_group": {
"token_no": 1,
"token": "ثُمَّ",
"expected": "",
"form": "",
"root_type": "ND",
"voice": "ND",
"suffix": "",
"stem": "ثُمَّ",
"normalized_stem": "ثُمَّ",
"prefix": "",
"stem_length": null,
"root_candidates": [],
"root_patterns": [],
"findings": [],
"status": "ND EXACT: 30.3",
"nd_english": "then \/ thereafter",
"nd_urdu": "پھر \/ اس کے بعد",
"nd_category": "particle",
"nd_subcategory": "coordinating conjunction",
"nd_pos": "conjunction"
},
"r006": {
"form_candidates": [],
"structural_trace": []
},
"r008": {
"status": "NOT_RUN",
"form_t_index_candidates": [],
"comments": []
},
"mod105_native_r008": {
"status": "NOT_RUN",
"candidates": []
},
"mod105_controller_retained_sources": [],
"r009": {
"status": "NOT_RUN",
"accepted_roots_by_address": [],
"details": [],
"comments": []
},
"r009_dictionary_exact_root_mod103": [],
"r007_text": "ND — outside derived R007",
"mod035_form_t_index": [],
"r007_t_candidates": [],
"r007_voice": null,
"r007_status": null,
"nominal_evidence": null,
"resolved_findings": [],
"dictionary_root_verification": {
"status": "ND",
"roots": [],
"records": [],
"reason": "Non-declinable token"
},
"legacy_record_verification": {
"status": "ND",
"records": [],
"roots": [],
"reason": "Non-derived entity"
}
}| NDCL-01 | Exact ND | PASS | ND | + لَا + |
| NDCL-02 | Prepend + ND | NO MATCH | Alternative not matched |
| NDCL-03 | ND + Append | NO MATCH | Alternative not matched |
| NDCL-04 | Prepend + ND + Append | NO MATCH | Alternative not matched |
| DCL-01 | Token Length | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-02 | Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-03 | Length After Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-04 | Length Without Vowels | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-05 | Root Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-06 | Form Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-07 | Form Identifier | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-08 | T Categories | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-09 | Person / Declension Index | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-10 | Dictionary Verification | NOT REQUIRED | ND recognized; derived analysis bypassed |
| Feature | Existing / trace value |
|---|---|
| Full Token | لَا |
| R-L — Raw Length (code points including marks) | 3 |
| R-L — Raw Letter Count | 2 |
| Suffix Removed (upstream R001/R002) | NOT AVAILABLE |
| R-U — Preserved Stem (with marks) | لَا |
| R-U — Normalized Stem | لَا |
| R-U Length (existing controller) | NOT AVAILABLE |
| Prefix (controller fallback) | NOT AVAILABLE |
| R006 Actual Prefix Removed | NOT AVAILABLE |
| R006 Actual After Prefix | NOT AVAILABLE |
| R006 Actual Prefix Arithmetic | NOT AVAILABLE |
| R006 Actual Form-Specific Marker Removed | NOT AVAILABLE |
| R006 Actual After Form Removal | NOT AVAILABLE |
| R006 Actual Form Arithmetic | NOT AVAILABLE |
| R006 Form-Specific Adjustment Rationale | NOT AVAILABLE |
| F-I — R006 Form Candidates | NOT AVAILABLE |
| I-V — Internal Vowels (existing output) | NOT AVAILABLE |
| S-T — Physical Suffix Families | [] |
| S-I — Physical Suffix Indices | [] |
| P-R — Existing Pattern Evidence | [] |
| R007 T Candidates | NOT AVAILABLE |
| R008 Index (parsed from existing candidates) | NOT AVAILABLE |
| R008 Form.T.Index Candidates | NOT AVAILABLE |
| R008 Status | NOT AVAILABLE |
| R008 Guard Accepted | NOT AVAILABLE |
| R008 Guard Rejected | NOT AVAILABLE |
| R008 Guard Unverified | NOT AVAILABLE |
| Authoritative Full Pattern | NOT AVAILABLE |
| Authoritative Full Structural Units | NOT AVAILABLE |
| Prefix / S-I Synchronization (existing verdict) | NOT AVAILABLE |
| Stage | Execution | Outcome | Reason |
|---|---|---|---|
| R006 | SKIPPED | ND token: derived morphology stage not applicable | |
| R007 | SKIPPED | ND token: derived morphology stage not applicable | |
| R008 | SKIPPED | ND token: derived morphology stage not applicable | |
| R009 | SKIPPED | ND token: derived morphology stage not applicable | |
| R010 | SKIPPED | Dictionary review queue is rendered after token loop; not a per-token verifier | |
| R011 | SKIPPED | ND token: derived morphology stage not applicable |
{
"r011_mod151_read_only": [],
"stage_audit_mod151": [
{
"stage": "R006",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R007",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R008",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R009",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R010",
"state": "SKIPPED",
"outcome": null,
"reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
"calls": 0
},
{
"stage": "R011",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
}
],
"original_analysis_group": {
"token_no": 2,
"token": "لَا",
"expected": "",
"form": "",
"root_type": "ND",
"voice": "ND",
"suffix": "",
"pronoun": "",
"pronoun_role": "",
"stem": "لَا",
"normalized_stem": "لَا",
"prefix": "",
"stem_length": null,
"root_candidates": [],
"root_patterns": [],
"findings": [],
"status": "ND09 NEGATIVE PARTICLE EXACT: 30.7",
"nd_english": "nor \/ and not",
"nd_urdu": "نہ \/ اور نہ",
"nd_category": "particle",
"nd_subcategory": "coordinating conjunction",
"nd_pos": "conjunction"
},
"r006": {
"form_candidates": [],
"structural_trace": []
},
"r008": {
"status": "NOT_RUN",
"form_t_index_candidates": [],
"comments": []
},
"mod105_native_r008": {
"status": "NOT_RUN",
"candidates": []
},
"mod105_controller_retained_sources": [],
"r009": {
"status": "NOT_RUN",
"accepted_roots_by_address": [],
"details": [],
"comments": []
},
"r009_dictionary_exact_root_mod103": [],
"r007_text": "ND — outside derived R007",
"mod035_form_t_index": [],
"r007_t_candidates": [],
"r007_voice": null,
"r007_status": null,
"nominal_evidence": null,
"resolved_findings": [],
"dictionary_root_verification": {
"status": "ND",
"roots": [],
"records": [],
"reason": "Non-declinable token"
},
"legacy_record_verification": {
"status": "ND",
"records": [],
"roots": [],
"reason": "Non-derived entity"
}
}| NDCL-01 | Exact ND | PASS | ND | + لَا + |
| NDCL-02 | Prepend + ND | NO MATCH | Alternative not matched |
| NDCL-03 | ND + Append | NO MATCH | Alternative not matched |
| NDCL-04 | Prepend + ND + Append | NO MATCH | Alternative not matched |
| DCL-01 | Token Length | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-02 | Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-03 | Length After Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-04 | Length Without Vowels | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-05 | Root Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-06 | Form Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-07 | Form Identifier | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-08 | T Categories | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-09 | Person / Declension Index | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-10 | Dictionary Verification | NOT REQUIRED | ND recognized; derived analysis bypassed |
| Feature | Existing / trace value |
|---|---|
| Full Token | لَا |
| R-L — Raw Length (code points including marks) | 3 |
| R-L — Raw Letter Count | 2 |
| Suffix Removed (upstream R001/R002) | NOT AVAILABLE |
| R-U — Preserved Stem (with marks) | لَا |
| R-U — Normalized Stem | لَا |
| R-U Length (existing controller) | NOT AVAILABLE |
| Prefix (controller fallback) | NOT AVAILABLE |
| R006 Actual Prefix Removed | NOT AVAILABLE |
| R006 Actual After Prefix | NOT AVAILABLE |
| R006 Actual Prefix Arithmetic | NOT AVAILABLE |
| R006 Actual Form-Specific Marker Removed | NOT AVAILABLE |
| R006 Actual After Form Removal | NOT AVAILABLE |
| R006 Actual Form Arithmetic | NOT AVAILABLE |
| R006 Form-Specific Adjustment Rationale | NOT AVAILABLE |
| F-I — R006 Form Candidates | NOT AVAILABLE |
| I-V — Internal Vowels (existing output) | NOT AVAILABLE |
| S-T — Physical Suffix Families | [] |
| S-I — Physical Suffix Indices | [] |
| P-R — Existing Pattern Evidence | [] |
| R007 T Candidates | NOT AVAILABLE |
| R008 Index (parsed from existing candidates) | NOT AVAILABLE |
| R008 Form.T.Index Candidates | NOT AVAILABLE |
| R008 Status | NOT AVAILABLE |
| R008 Guard Accepted | NOT AVAILABLE |
| R008 Guard Rejected | NOT AVAILABLE |
| R008 Guard Unverified | NOT AVAILABLE |
| Authoritative Full Pattern | NOT AVAILABLE |
| Authoritative Full Structural Units | NOT AVAILABLE |
| Prefix / S-I Synchronization (existing verdict) | NOT AVAILABLE |
| Stage | Execution | Outcome | Reason |
|---|---|---|---|
| R006 | SKIPPED | ND token: derived morphology stage not applicable | |
| R007 | SKIPPED | ND token: derived morphology stage not applicable | |
| R008 | SKIPPED | ND token: derived morphology stage not applicable | |
| R009 | SKIPPED | ND token: derived morphology stage not applicable | |
| R010 | SKIPPED | Dictionary review queue is rendered after token loop; not a per-token verifier | |
| R011 | SKIPPED | ND token: derived morphology stage not applicable |
{
"r011_mod151_read_only": [],
"stage_audit_mod151": [
{
"stage": "R006",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R007",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R008",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R009",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R010",
"state": "SKIPPED",
"outcome": null,
"reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
"calls": 0
},
{
"stage": "R011",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
}
],
"original_analysis_group": {
"token_no": 2,
"token": "لَا",
"expected": "",
"form": "",
"root_type": "ND",
"voice": "ND",
"suffix": "",
"pronoun": "",
"pronoun_role": "",
"stem": "لَا",
"normalized_stem": "لَا",
"prefix": "",
"stem_length": null,
"root_candidates": [],
"root_patterns": [],
"findings": [],
"status": "ND09 NEGATIVE PARTICLE EXACT: 40.12",
"nd_english": "not \/ do not",
"nd_urdu": "نہیں \/ مت",
"nd_category": "particle",
"nd_subcategory": "negative \/ prohibitive particle",
"nd_pos": "negative particle"
},
"r006": {
"form_candidates": [],
"structural_trace": []
},
"r008": {
"status": "NOT_RUN",
"form_t_index_candidates": [],
"comments": []
},
"mod105_native_r008": {
"status": "NOT_RUN",
"candidates": []
},
"mod105_controller_retained_sources": [],
"r009": {
"status": "NOT_RUN",
"accepted_roots_by_address": [],
"details": [],
"comments": []
},
"r009_dictionary_exact_root_mod103": [],
"r007_text": "ND — outside derived R007",
"mod035_form_t_index": [],
"r007_t_candidates": [],
"r007_voice": null,
"r007_status": null,
"nominal_evidence": null,
"resolved_findings": [],
"dictionary_root_verification": {
"status": "ND",
"roots": [],
"records": [],
"reason": "Non-declinable token"
},
"legacy_record_verification": {
"status": "ND",
"records": [],
"roots": [],
"reason": "Non-derived entity"
}
}| NDCL-01 | Exact ND | PASS | ND | + لَا + |
| NDCL-02 | Prepend + ND | NO MATCH | Alternative not matched |
| NDCL-03 | ND + Append | NO MATCH | Alternative not matched |
| NDCL-04 | Prepend + ND + Append | NO MATCH | Alternative not matched |
| DCL-01 | Token Length | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-02 | Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-03 | Length After Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-04 | Length Without Vowels | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-05 | Root Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-06 | Form Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-07 | Form Identifier | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-08 | T Categories | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-09 | Person / Declension Index | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-10 | Dictionary Verification | NOT REQUIRED | ND recognized; derived analysis bypassed |
| Feature | Existing / trace value |
|---|---|
| Full Token | لَا |
| R-L — Raw Length (code points including marks) | 3 |
| R-L — Raw Letter Count | 2 |
| Suffix Removed (upstream R001/R002) | NOT AVAILABLE |
| R-U — Preserved Stem (with marks) | لَا |
| R-U — Normalized Stem | لَا |
| R-U Length (existing controller) | NOT AVAILABLE |
| Prefix (controller fallback) | NOT AVAILABLE |
| R006 Actual Prefix Removed | NOT AVAILABLE |
| R006 Actual After Prefix | NOT AVAILABLE |
| R006 Actual Prefix Arithmetic | NOT AVAILABLE |
| R006 Actual Form-Specific Marker Removed | NOT AVAILABLE |
| R006 Actual After Form Removal | NOT AVAILABLE |
| R006 Actual Form Arithmetic | NOT AVAILABLE |
| R006 Form-Specific Adjustment Rationale | NOT AVAILABLE |
| F-I — R006 Form Candidates | NOT AVAILABLE |
| I-V — Internal Vowels (existing output) | NOT AVAILABLE |
| S-T — Physical Suffix Families | [] |
| S-I — Physical Suffix Indices | [] |
| P-R — Existing Pattern Evidence | [] |
| R007 T Candidates | NOT AVAILABLE |
| R008 Index (parsed from existing candidates) | NOT AVAILABLE |
| R008 Form.T.Index Candidates | NOT AVAILABLE |
| R008 Status | NOT AVAILABLE |
| R008 Guard Accepted | NOT AVAILABLE |
| R008 Guard Rejected | NOT AVAILABLE |
| R008 Guard Unverified | NOT AVAILABLE |
| Authoritative Full Pattern | NOT AVAILABLE |
| Authoritative Full Structural Units | NOT AVAILABLE |
| Prefix / S-I Synchronization (existing verdict) | NOT AVAILABLE |
| Stage | Execution | Outcome | Reason |
|---|---|---|---|
| R006 | SKIPPED | ND token: derived morphology stage not applicable | |
| R007 | SKIPPED | ND token: derived morphology stage not applicable | |
| R008 | SKIPPED | ND token: derived morphology stage not applicable | |
| R009 | SKIPPED | ND token: derived morphology stage not applicable | |
| R010 | SKIPPED | Dictionary review queue is rendered after token loop; not a per-token verifier | |
| R011 | SKIPPED | ND token: derived morphology stage not applicable |
{
"r011_mod151_read_only": [],
"stage_audit_mod151": [
{
"stage": "R006",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R007",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R008",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R009",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R010",
"state": "SKIPPED",
"outcome": null,
"reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
"calls": 0
},
{
"stage": "R011",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
}
],
"original_analysis_group": {
"token_no": 2,
"token": "لَا",
"expected": "",
"form": "",
"root_type": "ND",
"voice": "ND",
"suffix": "",
"pronoun": "",
"pronoun_role": "",
"stem": "لَا",
"normalized_stem": "لَا",
"prefix": "",
"stem_length": null,
"root_candidates": [],
"root_patterns": [],
"findings": [],
"status": "ND09 NEGATIVE PARTICLE EXACT: 43.27",
"nd_english": "no \/ not \/ do not (context-dependent)",
"nd_urdu": "نہیں \/ مت",
"nd_category": "particle",
"nd_subcategory": "negation or prohibition particle",
"nd_pos": "particle"
},
"r006": {
"form_candidates": [],
"structural_trace": []
},
"r008": {
"status": "NOT_RUN",
"form_t_index_candidates": [],
"comments": []
},
"mod105_native_r008": {
"status": "NOT_RUN",
"candidates": []
},
"mod105_controller_retained_sources": [],
"r009": {
"status": "NOT_RUN",
"accepted_roots_by_address": [],
"details": [],
"comments": []
},
"r009_dictionary_exact_root_mod103": [],
"r007_text": "ND — outside derived R007",
"mod035_form_t_index": [],
"r007_t_candidates": [],
"r007_voice": null,
"r007_status": null,
"nominal_evidence": null,
"resolved_findings": [],
"dictionary_root_verification": {
"status": "ND",
"roots": [],
"records": [],
"reason": "Non-declinable token"
},
"legacy_record_verification": {
"status": "ND",
"records": [],
"roots": [],
"reason": "Non-derived entity"
}
}| NDCL-01 | Exact ND | NO MATCH | Alternative not matched |
| NDCL-02 | Prepend + ND | NO MATCH | Alternative not matched |
| NDCL-03 | ND + Append | NO MATCH | Alternative not matched |
| NDCL-04 | Prepend + ND + Append | NO MATCH | Alternative not matched |
| DCL-01 | Token Length | EVIDENCE | Token: يَمُوتُ; source length field: 4 |
| DCL-02 | Suffix Removal | EVIDENCE | Physical suffix: ُ; families/indices: suff2 [1, 4, 7, 13, 14]; suff_nouns [4] |
| DCL-03 | Length After Suffix Removal | EVIDENCE | Preserved stem after suffix removal: يَمُوت |
| DCL-04 | Length Without Vowels | EVIDENCE | Normalized stem: يموت; reported structural length: 4 |
| DCL-05 | Root Candidates | EVIDENCE | Root candidates: موت, ميت |
| DCL-06 | Form Candidates | EVIDENCE | R006 Form candidates: 1 |
| DCL-07 | Form Identifier | EVIDENCE | R006 forms: 1; R007 voice: active-imperfect |
| DCL-08 | T Categories | EVIDENCE | R007 T candidates: 2 |
| DCL-09 | Person / Declension Index | EVIDENCE | Actual prefix: يَ; compatible Form.T.Index: 1.2.1; prefix-person compatibility applied by MOD-038 |
| DCL-10 | Dictionary Verification | EVIDENCE | Dictionary ROOT status: VALIDATED; matching record IDs: 2452; no full-token validation required |
| Feature | Existing / trace value |
|---|---|
| Full Token | يَمُوتُ |
| R-L — Raw Length (code points including marks) | 7 |
| R-L — Raw Letter Count | 4 |
| Suffix Removed (upstream R001/R002) | ُ |
| R-U — Preserved Stem (with marks) | يَمُوت |
| R-U — Normalized Stem | يموت |
| R-U Length (existing controller) | 4 |
| R006 Actual Prefix Removed | يَ |
| R006 Actual After Prefix | مُوت |
| R006 Actual Prefix Arithmetic | 4 − 1 = 3 (يَ) |
| R006 Actual Form-Specific Marker Removed | None |
| R006 Actual After Form Removal | مُوت |
| R006 Actual Form Arithmetic | 3 − 0 = 3 |
| R006 Form-Specific Adjustment Rationale | Form I imperfect: remove the matched person prefix; no Form-specific marker. |
| F-I — R006 Form Candidates | [1] |
| I-V — Internal Vowels (existing output) | NOT AVAILABLE |
| S-T — Physical Suffix Families | ["suff2","suff_nouns"] |
| S-I — Physical Suffix Indices | {"suff2":[1,4,7,13,14],"suff_nouns":[4]} |
| P-R — Existing Pattern Evidence | {"موت":{"prefix + radicals":"prefix + radicals","hollow w (imperfect)":"hollow w (imperfect)"},"ميت":{"hollow y (imperfect)":"hollow y (imperfect)"}} |
| R007 T Candidates | [2] |
| R008 Index (parsed from existing candidates) | [1] |
| R008 Form.T.Index Candidates | ["1.2.1"] |
| R008 Status | HYPOTHESIS |
| R008 Guard Accepted | [] |
| R008 Guard Rejected | [] |
| R008 Guard Unverified | [{"address":"1.2.1","r007_consistency":"SUPPORTED AS INDEX HYPOTHESIS","structural_guard":"UNVERIFIED: no complete pattern supplied"}] |
| Authoritative Full Pattern | NOT AVAILABLE |
| Authoritative Full Structural Units | NOT AVAILABLE |
| Prefix / S-I Synchronization (existing verdict) | NOT AVAILABLE |
| Stage | Execution | Outcome | Reason |
|---|---|---|---|
| R006 | HANDOFF_COMPLETE | STRUCTURAL HYPOTHESIS | Result retained in token diagnostic evidence |
| R007 | HANDOFF_COMPLETE | HYPOTHESIS | Result retained in token diagnostic evidence |
| R008 | HANDOFF_COMPLETE | HYPOTHESIS | Result retained in token diagnostic evidence |
| R009 | HANDOFF_COMPLETE | STRUCTURAL_PASS | Result retained in token diagnostic evidence |
| R010 | SKIPPED | Dictionary review queue is rendered after token loop; not a per-token verifier | |
| R011 | HANDOFF_COMPLETE | DIAGNOSTIC_RESULT | Read-only R011 results included in full diagnostic JSON |
{
"r011_mod151_read_only": {
"موت": {
"15": {
"status": "NOT_TESTED",
"matches": [],
"tested": 1,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"16": {
"status": "NOT_TESTED",
"matches": [],
"tested": 1,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"17": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": "NOT_TESTED",
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"18": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"19": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"20": {
"status": "NOT_TESTED",
"matches": [],
"tested": 18,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"21": {
"status": "NOT_TESTED",
"matches": [],
"tested": 3,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": [
{
"root": "يمت",
"pattern_id": "1.21.fa3uul",
"form": 1,
"t": 21,
"matched_stem": "يَمُوت",
"segmentation": [
"terminal_case_removed"
],
"status": "STRUCTURAL_CANDIDATE"
}
]
},
"22": {
"status": "NOT_TESTED",
"matches": [],
"tested": 3,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"23": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"24": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"25": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
}
},
"ميت": {
"15": {
"status": "NOT_TESTED",
"matches": [],
"tested": 1,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"16": {
"status": "NOT_TESTED",
"matches": [],
"tested": 1,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"17": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": "NOT_TESTED",
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"18": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"19": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"20": {
"status": "NOT_TESTED",
"matches": [],
"tested": 18,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"21": {
"status": "NOT_TESTED",
"matches": [],
"tested": 3,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": [
{
"root": "يمت",
"pattern_id": "1.21.fa3uul",
"form": 1,
"t": 21,
"matched_stem": "يَمُوت",
"segmentation": [
"terminal_case_removed"
],
"status": "STRUCTURAL_CANDIDATE"
}
]
},
"22": {
"status": "NOT_TESTED",
"matches": [],
"tested": 3,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"23": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"24": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"25": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
}
}
},
"stage_audit_mod151": [
{
"stage": "R006",
"state": "HANDOFF_COMPLETE",
"outcome": "STRUCTURAL HYPOTHESIS",
"reason": "Result retained in token diagnostic evidence",
"calls": 1
},
{
"stage": "R007",
"state": "HANDOFF_COMPLETE",
"outcome": "HYPOTHESIS",
"reason": "Result retained in token diagnostic evidence",
"calls": 1
},
{
"stage": "R008",
"state": "HANDOFF_COMPLETE",
"outcome": "HYPOTHESIS",
"reason": "Result retained in token diagnostic evidence",
"calls": 1
},
{
"stage": "R009",
"state": "HANDOFF_COMPLETE",
"outcome": "STRUCTURAL_PASS",
"reason": "Result retained in token diagnostic evidence",
"calls": 1
},
{
"stage": "R010",
"state": "SKIPPED",
"outcome": null,
"reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
"calls": 0
},
{
"stage": "R011",
"state": "HANDOFF_COMPLETE",
"outcome": "DIAGNOSTIC_RESULT",
"reason": "Read-only R011 results included in full diagnostic JSON",
"calls": 1
}
],
"original_analysis_group": {
"token_no": 3,
"token": "يَمُوتُ",
"expected": "",
"form": "",
"root_type": "surface-test",
"voice": "Undetermined",
"suffix": "ُ",
"pronoun": "",
"pronoun_role": "",
"analysis_token": "يَمُوتُ",
"stem": "يَمُوت",
"normalized_stem": "يموت",
"prefix": "يَ",
"nominal_prefix": "",
"nominal_core": "",
"stem_length": 4,
"root_candidates": [
"موت",
"ميت"
],
"root_patterns": {
"موت": {
"prefix + radicals": "prefix + radicals",
"hollow w (imperfect)": "hollow w (imperfect)"
},
"ميت": {
"hollow y (imperfect)": "hollow y (imperfect)"
}
},
"findings": {
"suff2": [
1,
4,
7,
13,
14
],
"suff_nouns": [
4
]
},
"status": "Matched"
},
"r006": {
"form_candidates": [
1
],
"perfect_forms": [],
"evidence": {
"1": [
"I imperfect: person prefix + strong\/hollow template"
]
},
"structural_trace": {
"1": [
{
"source": "R006 primary suffix-stripped stem",
"matched_form": 1,
"matched_pattern": "I imperfect: person prefix + three-radical strong\/hollow template",
"stem_input": "يَمُوت",
"physical_suffix_input": "ُ",
"full_input": "يَمُوتُ",
"prefix_removed": "يَ",
"after_prefix": "مُوت",
"form_marker_removed": "None",
"after_form_marker": "مُوت",
"prefix_letter_count": 1,
"after_prefix_unit_count": 3,
"form_marker_letter_count": 0,
"remaining_letter_count": 3,
"form_marker_kind": "Form I imperfect: no derivational marker"
}
]
},
"status": "STRUCTURAL HYPOTHESIS"
},
"r008": {
"form_t_index_candidates": [
"1.2.1"
],
"index_candidates": [
1
],
"status": "HYPOTHESIS",
"comments": [],
"details": [
{
"form": 1,
"t": 2,
"index": 1,
"address": "1.2.1",
"source": "conservative imperfect ending fallback + imperfect person prefix ي"
}
]
},
"mod105_native_r008": {
"status": "HYPOTHESIS",
"candidates": [
"1.2.1"
]
},
"mod105_controller_retained_sources": [],
"r009": {
"original": "يَمُوتُ",
"remaining": "يَمُوت",
"r005_root_candidate": "",
"root_candidate": "موت",
"root_length": 3,
"accepted_root_candidates": [
"موت"
],
"accepted_root_count": 1,
"rejected_root_candidates": [
"ميت"
],
"rejected_root_count": 1,
"accepted_details": [
{
"address": "1.2.1",
"form": 1,
"t": 2,
"index": 1,
"expected_radicals": 3,
"observed_radicals": 3,
"root_candidate": "موت",
"source": "R005 root_candidates",
"prefix": "",
"introductory": "",
"structural_body": "",
"pattern": "",
"status": "STRUCTURAL_PASS",
"evidence": [
"Form I hollow-w imperfect: long u corresponds to medial waw",
"No dictionary or conjugator validation"
]
}
],
"rejected_details": [
{
"address": "1.2.1",
"form": 1,
"t": 2,
"index": 1,
"expected_radicals": 3,
"observed_radicals": 3,
"root_candidate": "ميت",
"source": "R005 root_candidates",
"prefix": "",
"introductory": "",
"structural_body": "",
"pattern": "",
"status": "MISMATCH",
"evidence": [
"Root letters not present in original order",
"No dictionary or conjugator validation"
]
}
],
"accepted_roots_by_address": {
"1.2.1": [
"موت"
]
},
"original_skeleton": "يموت",
"stem_skeleton": "يموت",
"addresses": [
"1.2.1"
],
"details": [
{
"address": "1.2.1",
"form": 1,
"t": 2,
"index": 1,
"expected_radicals": 3,
"observed_radicals": 3,
"root_candidate": "موت",
"source": "R005 root_candidates",
"prefix": "",
"introductory": "",
"structural_body": "",
"pattern": "",
"status": "STRUCTURAL_PASS",
"evidence": [
"Form I hollow-w imperfect: long u corresponds to medial waw",
"No dictionary or conjugator validation"
]
},
{
"address": "1.2.1",
"form": 1,
"t": 2,
"index": 1,
"expected_radicals": 3,
"observed_radicals": 3,
"root_candidate": "ميت",
"source": "R005 root_candidates",
"prefix": "",
"introductory": "",
"structural_body": "",
"pattern": "",
"status": "MISMATCH",
"evidence": [
"Root letters not present in original order",
"No dictionary or conjugator validation"
]
}
],
"status": "STRUCTURAL_PASS",
"comments": [
"Accepted roots: موت; structural verification only, not dictionary or conjugator validation.",
"Preliminary\/incomplete candidates: 1 row(s); see rejected_details separately."
]
},
"r009_dictionary_exact_root_mod103": [
{
"address": "1.2.1",
"root": "موت",
"status": "VALIDATED",
"record_ids": [
"2452"
]
}
],
"r007_text": "R006 Forms: 1; Voice: active-imperfect; T: 2; HYPOTHESIS",
"mod035_form_t_index": [
{
"code": "1.2.1",
"form": 1,
"t": 2,
"index": 1,
"family": "suff2",
"source": "R006 + R007 + physical suffix"
}
],
"r007_t_candidates": [
2
],
"r007_voice": "active-imperfect",
"r007_status": "HYPOTHESIS",
"nominal_evidence": "",
"resolved_findings": [],
"dictionary_root_verification": {
"status": "VALIDATED",
"roots": [
"موت",
"ميت"
],
"records": [
{
"id": 2452,
"root": "موت"
}
],
"reason": "Extracted root found in dictionary; no full-token comparison required"
},
"legacy_record_verification": {
"status": "VALIDATED",
"records": [
{
"id": "2452",
"root": "موت"
}
],
"root_records": [
{
"id": "2452",
"root": "موت"
}
],
"roots": [
"موت",
"ميت"
],
"reason": "",
"tested": 0,
"untestable": 0
}
}{
"root": "موت",
"arabic": "مَاتَ",
"english": "to die",
"urdu": "مرنا",
"verbalnoun117": "مَوْت",
"verbalnoun2": "",
"verbalnoun3": "",
"activeparticiple115": "مَيِّت",
"passiveparticiple116": "مُمَات",
"activepast11": "مَاتَ",
"activeimperfect12": "يَمُوتُ",
"imperative113": "مُتْ",
"root_type": "triliteral",
"form": 1
}| NDCL-01 | Exact ND | PASS | ND | + فِيهَا + |
| NDCL-02 | Prepend + ND | NO MATCH | Alternative not matched |
| NDCL-03 | ND + Append | NO MATCH | Alternative not matched |
| NDCL-04 | Prepend + ND + Append | NO MATCH | Alternative not matched |
| DCL-01 | Token Length | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-02 | Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-03 | Length After Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-04 | Length Without Vowels | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-05 | Root Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-06 | Form Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-07 | Form Identifier | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-08 | T Categories | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-09 | Person / Declension Index | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-10 | Dictionary Verification | NOT REQUIRED | ND recognized; derived analysis bypassed |
| Feature | Existing / trace value |
|---|---|
| Full Token | فِيهَا |
| R-L — Raw Length (code points including marks) | 6 |
| R-L — Raw Letter Count | 4 |
| Suffix Removed (upstream R001/R002) | NOT AVAILABLE |
| R-U — Preserved Stem (with marks) | فِيهَا |
| R-U — Normalized Stem | فِيهَا |
| R-U Length (existing controller) | NOT AVAILABLE |
| Prefix (controller fallback) | NOT AVAILABLE |
| R006 Actual Prefix Removed | NOT AVAILABLE |
| R006 Actual After Prefix | NOT AVAILABLE |
| R006 Actual Prefix Arithmetic | NOT AVAILABLE |
| R006 Actual Form-Specific Marker Removed | NOT AVAILABLE |
| R006 Actual After Form Removal | NOT AVAILABLE |
| R006 Actual Form Arithmetic | NOT AVAILABLE |
| R006 Form-Specific Adjustment Rationale | NOT AVAILABLE |
| F-I — R006 Form Candidates | NOT AVAILABLE |
| I-V — Internal Vowels (existing output) | NOT AVAILABLE |
| S-T — Physical Suffix Families | [] |
| S-I — Physical Suffix Indices | [] |
| P-R — Existing Pattern Evidence | [] |
| R007 T Candidates | NOT AVAILABLE |
| R008 Index (parsed from existing candidates) | NOT AVAILABLE |
| R008 Form.T.Index Candidates | NOT AVAILABLE |
| R008 Status | NOT AVAILABLE |
| R008 Guard Accepted | NOT AVAILABLE |
| R008 Guard Rejected | NOT AVAILABLE |
| R008 Guard Unverified | NOT AVAILABLE |
| Authoritative Full Pattern | NOT AVAILABLE |
| Authoritative Full Structural Units | NOT AVAILABLE |
| Prefix / S-I Synchronization (existing verdict) | NOT AVAILABLE |
| Stage | Execution | Outcome | Reason |
|---|---|---|---|
| R006 | SKIPPED | ND token: derived morphology stage not applicable | |
| R007 | SKIPPED | ND token: derived morphology stage not applicable | |
| R008 | SKIPPED | ND token: derived morphology stage not applicable | |
| R009 | SKIPPED | ND token: derived morphology stage not applicable | |
| R010 | SKIPPED | Dictionary review queue is rendered after token loop; not a per-token verifier | |
| R011 | SKIPPED | ND token: derived morphology stage not applicable |
{
"r011_mod151_read_only": [],
"stage_audit_mod151": [
{
"stage": "R006",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R007",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R008",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R009",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R010",
"state": "SKIPPED",
"outcome": null,
"reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
"calls": 0
},
{
"stage": "R011",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
}
],
"original_analysis_group": {
"token_no": 4,
"token": "فِيهَا",
"expected": "",
"form": "",
"root_type": "ND",
"voice": "ND",
"suffix": "",
"stem": "فِيهَا",
"normalized_stem": "فِيهَا",
"prefix": "",
"stem_length": null,
"root_candidates": [],
"root_patterns": [],
"findings": [],
"status": "ND EXACT: 24.7",
"nd_english": "in her \/ in it",
"nd_urdu": "اس میں",
"nd_category": "particle",
"nd_subcategory": "separable \/ independent preposition",
"nd_pos": "preposition"
},
"r006": {
"form_candidates": [],
"structural_trace": []
},
"r008": {
"status": "NOT_RUN",
"form_t_index_candidates": [],
"comments": []
},
"mod105_native_r008": {
"status": "NOT_RUN",
"candidates": []
},
"mod105_controller_retained_sources": [],
"r009": {
"status": "NOT_RUN",
"accepted_roots_by_address": [],
"details": [],
"comments": []
},
"r009_dictionary_exact_root_mod103": [],
"r007_text": "ND — outside derived R007",
"mod035_form_t_index": [],
"r007_t_candidates": [
2
],
"r007_voice": "active-imperfect",
"r007_status": "HYPOTHESIS",
"nominal_evidence": "",
"resolved_findings": [],
"dictionary_root_verification": {
"status": "ND",
"roots": [],
"records": [],
"reason": "Non-declinable token"
},
"legacy_record_verification": {
"status": "ND",
"records": [],
"roots": [],
"reason": "Non-derived entity"
}
}| NDCL-01 | Exact ND | NO MATCH | Alternative not matched |
| NDCL-02 | Prepend + ND | NO MATCH | Alternative not matched |
| NDCL-03 | ND + Append | PASS | ND + Append | + فِي + هَا |
| NDCL-04 | Prepend + ND + Append | NO MATCH | Alternative not matched |
| DCL-01 | Token Length | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-02 | Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-03 | Length After Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-04 | Length Without Vowels | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-05 | Root Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-06 | Form Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-07 | Form Identifier | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-08 | T Categories | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-09 | Person / Declension Index | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-10 | Dictionary Verification | NOT REQUIRED | ND recognized; derived analysis bypassed |
| Feature | Existing / trace value |
|---|---|
| Full Token | فِيهَا |
| R-L — Raw Length (code points including marks) | 6 |
| R-L — Raw Letter Count | 4 |
| Suffix Removed (upstream R001/R002) | هَا |
| R-U — Preserved Stem (with marks) | فِي |
| R-U — Normalized Stem | فِي |
| R-U Length (existing controller) | NOT AVAILABLE |
| Prefix (controller fallback) | NOT AVAILABLE |
| R006 Actual Prefix Removed | NOT AVAILABLE |
| R006 Actual After Prefix | NOT AVAILABLE |
| R006 Actual Prefix Arithmetic | NOT AVAILABLE |
| R006 Actual Form-Specific Marker Removed | NOT AVAILABLE |
| R006 Actual After Form Removal | NOT AVAILABLE |
| R006 Actual Form Arithmetic | NOT AVAILABLE |
| R006 Form-Specific Adjustment Rationale | NOT AVAILABLE |
| F-I — R006 Form Candidates | NOT AVAILABLE |
| I-V — Internal Vowels (existing output) | NOT AVAILABLE |
| S-T — Physical Suffix Families | [] |
| S-I — Physical Suffix Indices | [] |
| P-R — Existing Pattern Evidence | [] |
| R007 T Candidates | NOT AVAILABLE |
| R008 Index (parsed from existing candidates) | NOT AVAILABLE |
| R008 Form.T.Index Candidates | NOT AVAILABLE |
| R008 Status | NOT AVAILABLE |
| R008 Guard Accepted | NOT AVAILABLE |
| R008 Guard Rejected | NOT AVAILABLE |
| R008 Guard Unverified | NOT AVAILABLE |
| Authoritative Full Pattern | NOT AVAILABLE |
| Authoritative Full Structural Units | NOT AVAILABLE |
| Prefix / S-I Synchronization (existing verdict) | NOT AVAILABLE |
| Stage | Execution | Outcome | Reason |
|---|---|---|---|
| R006 | SKIPPED | ND token: derived morphology stage not applicable | |
| R007 | SKIPPED | ND token: derived morphology stage not applicable | |
| R008 | SKIPPED | ND token: derived morphology stage not applicable | |
| R009 | SKIPPED | ND token: derived morphology stage not applicable | |
| R010 | SKIPPED | Dictionary review queue is rendered after token loop; not a per-token verifier | |
| R011 | SKIPPED | ND token: derived morphology stage not applicable |
{
"r011_mod151_read_only": [],
"stage_audit_mod151": [
{
"stage": "R006",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R007",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R008",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R009",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R010",
"state": "SKIPPED",
"outcome": null,
"reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
"calls": 0
},
{
"stage": "R011",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
}
],
"original_analysis_group": {
"token_no": 4,
"token": "فِيهَا",
"expected": "",
"form": "",
"root_type": "ND",
"voice": "ND",
"suffix": "هَا",
"stem": "فِي",
"normalized_stem": "فِي",
"prefix": "",
"stem_length": null,
"root_candidates": [],
"root_patterns": [],
"findings": [],
"status": "ND EXACT + APPEND: 24.7",
"nd_english": "in \/ within + her \/ it",
"nd_urdu": "میں \/ اندر + اس کو \/ اس سے",
"nd_category": "particle",
"nd_subcategory": "separable \/ independent preposition",
"nd_pos": "preposition"
},
"r006": {
"form_candidates": [],
"structural_trace": []
},
"r008": {
"status": "NOT_RUN",
"form_t_index_candidates": [],
"comments": []
},
"mod105_native_r008": {
"status": "NOT_RUN",
"candidates": []
},
"mod105_controller_retained_sources": [],
"r009": {
"status": "NOT_RUN",
"accepted_roots_by_address": [],
"details": [],
"comments": []
},
"r009_dictionary_exact_root_mod103": [],
"r007_text": "ND — outside derived R007",
"mod035_form_t_index": [],
"r007_t_candidates": [
2
],
"r007_voice": "active-imperfect",
"r007_status": "HYPOTHESIS",
"nominal_evidence": "",
"resolved_findings": [],
"dictionary_root_verification": {
"status": "ND",
"roots": [],
"records": [],
"reason": "Non-declinable token"
},
"legacy_record_verification": {
"status": "ND",
"records": [],
"roots": [],
"reason": "Non-derived entity"
}
}| NDCL-01 | Exact ND | NO MATCH | Alternative not matched |
| NDCL-02 | Prepend + ND | NO MATCH | Alternative not matched |
| NDCL-03 | ND + Append | PASS | ND + Append | + فِي + هَا |
| NDCL-04 | Prepend + ND + Append | NO MATCH | Alternative not matched |
| DCL-01 | Token Length | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-02 | Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-03 | Length After Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-04 | Length Without Vowels | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-05 | Root Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-06 | Form Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-07 | Form Identifier | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-08 | T Categories | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-09 | Person / Declension Index | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-10 | Dictionary Verification | NOT REQUIRED | ND recognized; derived analysis bypassed |
| Feature | Existing / trace value |
|---|---|
| Full Token | فِيهَا |
| R-L — Raw Length (code points including marks) | 6 |
| R-L — Raw Letter Count | 4 |
| Suffix Removed (upstream R001/R002) | هَا |
| R-U — Preserved Stem (with marks) | فِي |
| R-U — Normalized Stem | فِي |
| R-U Length (existing controller) | NOT AVAILABLE |
| Prefix (controller fallback) | NOT AVAILABLE |
| R006 Actual Prefix Removed | NOT AVAILABLE |
| R006 Actual After Prefix | NOT AVAILABLE |
| R006 Actual Prefix Arithmetic | NOT AVAILABLE |
| R006 Actual Form-Specific Marker Removed | NOT AVAILABLE |
| R006 Actual After Form Removal | NOT AVAILABLE |
| R006 Actual Form Arithmetic | NOT AVAILABLE |
| R006 Form-Specific Adjustment Rationale | NOT AVAILABLE |
| F-I — R006 Form Candidates | NOT AVAILABLE |
| I-V — Internal Vowels (existing output) | NOT AVAILABLE |
| S-T — Physical Suffix Families | [] |
| S-I — Physical Suffix Indices | [] |
| P-R — Existing Pattern Evidence | [] |
| R007 T Candidates | NOT AVAILABLE |
| R008 Index (parsed from existing candidates) | NOT AVAILABLE |
| R008 Form.T.Index Candidates | NOT AVAILABLE |
| R008 Status | NOT AVAILABLE |
| R008 Guard Accepted | NOT AVAILABLE |
| R008 Guard Rejected | NOT AVAILABLE |
| R008 Guard Unverified | NOT AVAILABLE |
| Authoritative Full Pattern | NOT AVAILABLE |
| Authoritative Full Structural Units | NOT AVAILABLE |
| Prefix / S-I Synchronization (existing verdict) | NOT AVAILABLE |
| Stage | Execution | Outcome | Reason |
|---|---|---|---|
| R006 | SKIPPED | ND token: derived morphology stage not applicable | |
| R007 | SKIPPED | ND token: derived morphology stage not applicable | |
| R008 | SKIPPED | ND token: derived morphology stage not applicable | |
| R009 | SKIPPED | ND token: derived morphology stage not applicable | |
| R010 | SKIPPED | Dictionary review queue is rendered after token loop; not a per-token verifier | |
| R011 | SKIPPED | ND token: derived morphology stage not applicable |
{
"r011_mod151_read_only": [],
"stage_audit_mod151": [
{
"stage": "R006",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R007",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R008",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R009",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R010",
"state": "SKIPPED",
"outcome": null,
"reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
"calls": 0
},
{
"stage": "R011",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
}
],
"original_analysis_group": {
"token_no": 4,
"token": "فِيهَا",
"expected": "",
"form": "",
"root_type": "ND",
"voice": "ND",
"suffix": "هَا",
"stem": "فِي",
"normalized_stem": "فِي",
"prefix": "",
"stem_length": null,
"root_candidates": [],
"root_patterns": [],
"findings": [],
"status": "ND EXACT + APPEND: 48.53",
"nd_english": "mouth — genitive + her \/ it",
"nd_urdu": "منہ — حالتِ جر + اس کو \/ اس سے",
"nd_category": "noun",
"nd_subcategory": "five_special_nouns",
"nd_pos": "noun"
},
"r006": {
"form_candidates": [],
"structural_trace": []
},
"r008": {
"status": "NOT_RUN",
"form_t_index_candidates": [],
"comments": []
},
"mod105_native_r008": {
"status": "NOT_RUN",
"candidates": []
},
"mod105_controller_retained_sources": [],
"r009": {
"status": "NOT_RUN",
"accepted_roots_by_address": [],
"details": [],
"comments": []
},
"r009_dictionary_exact_root_mod103": [],
"r007_text": "ND — outside derived R007",
"mod035_form_t_index": [],
"r007_t_candidates": [
2
],
"r007_voice": "active-imperfect",
"r007_status": "HYPOTHESIS",
"nominal_evidence": "",
"resolved_findings": [],
"dictionary_root_verification": {
"status": "ND",
"roots": [],
"records": [],
"reason": "Non-declinable token"
},
"legacy_record_verification": {
"status": "ND",
"records": [],
"roots": [],
"reason": "Non-derived entity"
}
}| NDCL-01 | Exact ND | NO MATCH | Alternative not matched |
| NDCL-02 | Prepend + ND | PASS | Prepend + ND | وَ + لَا + |
| NDCL-03 | ND + Append | NO MATCH | Alternative not matched |
| NDCL-04 | Prepend + ND + Append | NO MATCH | Alternative not matched |
| DCL-01 | Token Length | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-02 | Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-03 | Length After Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-04 | Length Without Vowels | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-05 | Root Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-06 | Form Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-07 | Form Identifier | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-08 | T Categories | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-09 | Person / Declension Index | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-10 | Dictionary Verification | NOT REQUIRED | ND recognized; derived analysis bypassed |
| Feature | Existing / trace value |
|---|---|
| Full Token | وَلَا |
| R-L — Raw Length (code points including marks) | 5 |
| R-L — Raw Letter Count | 3 |
| Suffix Removed (upstream R001/R002) | NOT AVAILABLE |
| R-U — Preserved Stem (with marks) | لَا |
| R-U — Normalized Stem | لَا |
| R-U Length (existing controller) | NOT AVAILABLE |
| Prefix (controller fallback) | وَ |
| R006 Actual Prefix Removed | NOT AVAILABLE |
| R006 Actual After Prefix | NOT AVAILABLE |
| R006 Actual Prefix Arithmetic | NOT AVAILABLE |
| R006 Actual Form-Specific Marker Removed | NOT AVAILABLE |
| R006 Actual After Form Removal | NOT AVAILABLE |
| R006 Actual Form Arithmetic | NOT AVAILABLE |
| R006 Form-Specific Adjustment Rationale | NOT AVAILABLE |
| F-I — R006 Form Candidates | NOT AVAILABLE |
| I-V — Internal Vowels (existing output) | NOT AVAILABLE |
| S-T — Physical Suffix Families | [] |
| S-I — Physical Suffix Indices | [] |
| P-R — Existing Pattern Evidence | [] |
| R007 T Candidates | NOT AVAILABLE |
| R008 Index (parsed from existing candidates) | NOT AVAILABLE |
| R008 Form.T.Index Candidates | NOT AVAILABLE |
| R008 Status | NOT AVAILABLE |
| R008 Guard Accepted | NOT AVAILABLE |
| R008 Guard Rejected | NOT AVAILABLE |
| R008 Guard Unverified | NOT AVAILABLE |
| Authoritative Full Pattern | NOT AVAILABLE |
| Authoritative Full Structural Units | NOT AVAILABLE |
| Prefix / S-I Synchronization (existing verdict) | NOT AVAILABLE |
| Stage | Execution | Outcome | Reason |
|---|---|---|---|
| R006 | SKIPPED | ND token: derived morphology stage not applicable | |
| R007 | SKIPPED | ND token: derived morphology stage not applicable | |
| R008 | SKIPPED | ND token: derived morphology stage not applicable | |
| R009 | SKIPPED | ND token: derived morphology stage not applicable | |
| R010 | SKIPPED | Dictionary review queue is rendered after token loop; not a per-token verifier | |
| R011 | SKIPPED | ND token: derived morphology stage not applicable |
{
"r011_mod151_read_only": [],
"stage_audit_mod151": [
{
"stage": "R006",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R007",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R008",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R009",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R010",
"state": "SKIPPED",
"outcome": null,
"reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
"calls": 0
},
{
"stage": "R011",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
}
],
"original_analysis_group": {
"token_no": 5,
"token": "وَلَا",
"expected": "",
"form": "",
"root_type": "ND",
"voice": "ND",
"suffix": "",
"pronoun": "",
"pronoun_role": "",
"stem": "لَا",
"normalized_stem": "لَا",
"prefix": "وَ",
"stem_length": null,
"root_candidates": [],
"root_patterns": [],
"findings": [],
"status": "ND09 NEGATIVE PARTICLE EXACT: 30.7",
"nd_english": "and + nor \/ and not",
"nd_urdu": "وَ + نہ \/ اور نہ",
"nd_category": "particle",
"nd_subcategory": "coordinating conjunction",
"nd_pos": "conjunction"
},
"r006": {
"form_candidates": [],
"structural_trace": []
},
"r008": {
"status": "NOT_RUN",
"form_t_index_candidates": [],
"comments": []
},
"mod105_native_r008": {
"status": "NOT_RUN",
"candidates": []
},
"mod105_controller_retained_sources": [],
"r009": {
"status": "NOT_RUN",
"accepted_roots_by_address": [],
"details": [],
"comments": []
},
"r009_dictionary_exact_root_mod103": [],
"r007_text": "ND — outside derived R007",
"mod035_form_t_index": [],
"r007_t_candidates": [
2
],
"r007_voice": "active-imperfect",
"r007_status": "HYPOTHESIS",
"nominal_evidence": "",
"resolved_findings": [],
"dictionary_root_verification": {
"status": "ND",
"roots": [],
"records": [],
"reason": "Non-declinable token"
},
"legacy_record_verification": {
"status": "ND",
"records": [],
"roots": [],
"reason": "Non-derived entity"
}
}| NDCL-01 | Exact ND | NO MATCH | Alternative not matched |
| NDCL-02 | Prepend + ND | PASS | Prepend + ND | وَ + لَا + |
| NDCL-03 | ND + Append | NO MATCH | Alternative not matched |
| NDCL-04 | Prepend + ND + Append | NO MATCH | Alternative not matched |
| DCL-01 | Token Length | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-02 | Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-03 | Length After Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-04 | Length Without Vowels | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-05 | Root Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-06 | Form Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-07 | Form Identifier | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-08 | T Categories | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-09 | Person / Declension Index | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-10 | Dictionary Verification | NOT REQUIRED | ND recognized; derived analysis bypassed |
| Feature | Existing / trace value |
|---|---|
| Full Token | وَلَا |
| R-L — Raw Length (code points including marks) | 5 |
| R-L — Raw Letter Count | 3 |
| Suffix Removed (upstream R001/R002) | NOT AVAILABLE |
| R-U — Preserved Stem (with marks) | لَا |
| R-U — Normalized Stem | لَا |
| R-U Length (existing controller) | NOT AVAILABLE |
| Prefix (controller fallback) | وَ |
| R006 Actual Prefix Removed | NOT AVAILABLE |
| R006 Actual After Prefix | NOT AVAILABLE |
| R006 Actual Prefix Arithmetic | NOT AVAILABLE |
| R006 Actual Form-Specific Marker Removed | NOT AVAILABLE |
| R006 Actual After Form Removal | NOT AVAILABLE |
| R006 Actual Form Arithmetic | NOT AVAILABLE |
| R006 Form-Specific Adjustment Rationale | NOT AVAILABLE |
| F-I — R006 Form Candidates | NOT AVAILABLE |
| I-V — Internal Vowels (existing output) | NOT AVAILABLE |
| S-T — Physical Suffix Families | [] |
| S-I — Physical Suffix Indices | [] |
| P-R — Existing Pattern Evidence | [] |
| R007 T Candidates | NOT AVAILABLE |
| R008 Index (parsed from existing candidates) | NOT AVAILABLE |
| R008 Form.T.Index Candidates | NOT AVAILABLE |
| R008 Status | NOT AVAILABLE |
| R008 Guard Accepted | NOT AVAILABLE |
| R008 Guard Rejected | NOT AVAILABLE |
| R008 Guard Unverified | NOT AVAILABLE |
| Authoritative Full Pattern | NOT AVAILABLE |
| Authoritative Full Structural Units | NOT AVAILABLE |
| Prefix / S-I Synchronization (existing verdict) | NOT AVAILABLE |
| Stage | Execution | Outcome | Reason |
|---|---|---|---|
| R006 | SKIPPED | ND token: derived morphology stage not applicable | |
| R007 | SKIPPED | ND token: derived morphology stage not applicable | |
| R008 | SKIPPED | ND token: derived morphology stage not applicable | |
| R009 | SKIPPED | ND token: derived morphology stage not applicable | |
| R010 | SKIPPED | Dictionary review queue is rendered after token loop; not a per-token verifier | |
| R011 | SKIPPED | ND token: derived morphology stage not applicable |
{
"r011_mod151_read_only": [],
"stage_audit_mod151": [
{
"stage": "R006",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R007",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R008",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R009",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R010",
"state": "SKIPPED",
"outcome": null,
"reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
"calls": 0
},
{
"stage": "R011",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
}
],
"original_analysis_group": {
"token_no": 5,
"token": "وَلَا",
"expected": "",
"form": "",
"root_type": "ND",
"voice": "ND",
"suffix": "",
"pronoun": "",
"pronoun_role": "",
"stem": "لَا",
"normalized_stem": "لَا",
"prefix": "وَ",
"stem_length": null,
"root_candidates": [],
"root_patterns": [],
"findings": [],
"status": "ND09 NEGATIVE PARTICLE EXACT: 40.12",
"nd_english": "and + not \/ do not",
"nd_urdu": "وَ + نہیں \/ مت",
"nd_category": "particle",
"nd_subcategory": "negative \/ prohibitive particle",
"nd_pos": "negative particle"
},
"r006": {
"form_candidates": [],
"structural_trace": []
},
"r008": {
"status": "NOT_RUN",
"form_t_index_candidates": [],
"comments": []
},
"mod105_native_r008": {
"status": "NOT_RUN",
"candidates": []
},
"mod105_controller_retained_sources": [],
"r009": {
"status": "NOT_RUN",
"accepted_roots_by_address": [],
"details": [],
"comments": []
},
"r009_dictionary_exact_root_mod103": [],
"r007_text": "ND — outside derived R007",
"mod035_form_t_index": [],
"r007_t_candidates": [
2
],
"r007_voice": "active-imperfect",
"r007_status": "HYPOTHESIS",
"nominal_evidence": "",
"resolved_findings": [],
"dictionary_root_verification": {
"status": "ND",
"roots": [],
"records": [],
"reason": "Non-declinable token"
},
"legacy_record_verification": {
"status": "ND",
"records": [],
"roots": [],
"reason": "Non-derived entity"
}
}| NDCL-01 | Exact ND | NO MATCH | Alternative not matched |
| NDCL-02 | Prepend + ND | PASS | Prepend + ND | وَ + لَا + |
| NDCL-03 | ND + Append | NO MATCH | Alternative not matched |
| NDCL-04 | Prepend + ND + Append | NO MATCH | Alternative not matched |
| DCL-01 | Token Length | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-02 | Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-03 | Length After Suffix Removal | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-04 | Length Without Vowels | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-05 | Root Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-06 | Form Candidates | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-07 | Form Identifier | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-08 | T Categories | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-09 | Person / Declension Index | NOT REQUIRED | ND recognized; derived analysis bypassed |
| DCL-10 | Dictionary Verification | NOT REQUIRED | ND recognized; derived analysis bypassed |
| Feature | Existing / trace value |
|---|---|
| Full Token | وَلَا |
| R-L — Raw Length (code points including marks) | 5 |
| R-L — Raw Letter Count | 3 |
| Suffix Removed (upstream R001/R002) | NOT AVAILABLE |
| R-U — Preserved Stem (with marks) | لَا |
| R-U — Normalized Stem | لَا |
| R-U Length (existing controller) | NOT AVAILABLE |
| Prefix (controller fallback) | وَ |
| R006 Actual Prefix Removed | NOT AVAILABLE |
| R006 Actual After Prefix | NOT AVAILABLE |
| R006 Actual Prefix Arithmetic | NOT AVAILABLE |
| R006 Actual Form-Specific Marker Removed | NOT AVAILABLE |
| R006 Actual After Form Removal | NOT AVAILABLE |
| R006 Actual Form Arithmetic | NOT AVAILABLE |
| R006 Form-Specific Adjustment Rationale | NOT AVAILABLE |
| F-I — R006 Form Candidates | NOT AVAILABLE |
| I-V — Internal Vowels (existing output) | NOT AVAILABLE |
| S-T — Physical Suffix Families | [] |
| S-I — Physical Suffix Indices | [] |
| P-R — Existing Pattern Evidence | [] |
| R007 T Candidates | NOT AVAILABLE |
| R008 Index (parsed from existing candidates) | NOT AVAILABLE |
| R008 Form.T.Index Candidates | NOT AVAILABLE |
| R008 Status | NOT AVAILABLE |
| R008 Guard Accepted | NOT AVAILABLE |
| R008 Guard Rejected | NOT AVAILABLE |
| R008 Guard Unverified | NOT AVAILABLE |
| Authoritative Full Pattern | NOT AVAILABLE |
| Authoritative Full Structural Units | NOT AVAILABLE |
| Prefix / S-I Synchronization (existing verdict) | NOT AVAILABLE |
| Stage | Execution | Outcome | Reason |
|---|---|---|---|
| R006 | SKIPPED | ND token: derived morphology stage not applicable | |
| R007 | SKIPPED | ND token: derived morphology stage not applicable | |
| R008 | SKIPPED | ND token: derived morphology stage not applicable | |
| R009 | SKIPPED | ND token: derived morphology stage not applicable | |
| R010 | SKIPPED | Dictionary review queue is rendered after token loop; not a per-token verifier | |
| R011 | SKIPPED | ND token: derived morphology stage not applicable |
{
"r011_mod151_read_only": [],
"stage_audit_mod151": [
{
"stage": "R006",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R007",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R008",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R009",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
},
{
"stage": "R010",
"state": "SKIPPED",
"outcome": null,
"reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
"calls": 0
},
{
"stage": "R011",
"state": "SKIPPED",
"outcome": null,
"reason": "ND token: derived morphology stage not applicable",
"calls": 0
}
],
"original_analysis_group": {
"token_no": 5,
"token": "وَلَا",
"expected": "",
"form": "",
"root_type": "ND",
"voice": "ND",
"suffix": "",
"pronoun": "",
"pronoun_role": "",
"stem": "لَا",
"normalized_stem": "لَا",
"prefix": "وَ",
"stem_length": null,
"root_candidates": [],
"root_patterns": [],
"findings": [],
"status": "ND09 NEGATIVE PARTICLE EXACT: 43.27",
"nd_english": "and + no \/ not \/ do not (context-dependent)",
"nd_urdu": "وَ + نہیں \/ مت",
"nd_category": "particle",
"nd_subcategory": "negation or prohibition particle",
"nd_pos": "particle"
},
"r006": {
"form_candidates": [],
"structural_trace": []
},
"r008": {
"status": "NOT_RUN",
"form_t_index_candidates": [],
"comments": []
},
"mod105_native_r008": {
"status": "NOT_RUN",
"candidates": []
},
"mod105_controller_retained_sources": [],
"r009": {
"status": "NOT_RUN",
"accepted_roots_by_address": [],
"details": [],
"comments": []
},
"r009_dictionary_exact_root_mod103": [],
"r007_text": "ND — outside derived R007",
"mod035_form_t_index": [],
"r007_t_candidates": [
2
],
"r007_voice": "active-imperfect",
"r007_status": "HYPOTHESIS",
"nominal_evidence": "",
"resolved_findings": [],
"dictionary_root_verification": {
"status": "ND",
"roots": [],
"records": [],
"reason": "Non-declinable token"
},
"legacy_record_verification": {
"status": "ND",
"records": [],
"roots": [],
"reason": "Non-derived entity"
}
}| NDCL-01 | Exact ND | NO MATCH | Alternative not matched |
| NDCL-02 | Prepend + ND | NO MATCH | Alternative not matched |
| NDCL-03 | ND + Append | NO MATCH | Alternative not matched |
| NDCL-04 | Prepend + ND + Append | NO MATCH | Alternative not matched |
| DCL-01 | Token Length | EVIDENCE | Token: يَحْيَى; source length field: 4 |
| DCL-02 | Suffix Removal | EVIDENCE | Physical suffix: (none); families/indices: surface_zero [0] |
| DCL-03 | Length After Suffix Removal | EVIDENCE | Preserved stem after suffix removal: يَحْيَى |
| DCL-04 | Length Without Vowels | EVIDENCE | Normalized stem: يحيى; reported structural length: 4 |
| DCL-05 | Root Candidates | EVIDENCE | Root candidates: يحي, حيى, حوى |
| DCL-06 | Form Candidates | EVIDENCE | R006 Form candidates: 1 |
| DCL-07 | Form Identifier | EVIDENCE | R006 forms: 1; R007 voice: active-imperfect |
| DCL-08 | T Categories | EVIDENCE | R007 T candidates: 2 |
| DCL-09 | Person / Declension Index | EVIDENCE | Actual prefix: يَ; compatible Form.T.Index: none reported; prefix-person compatibility applied by MOD-038 |
| DCL-10 | Dictionary Verification | EVIDENCE | Dictionary ROOT status: ROOT_NOT_FOUND; matching record IDs: none; no full-token validation required |
| Feature | Existing / trace value |
|---|---|
| Full Token | يَحْيَى |
| R-L — Raw Length (code points including marks) | 7 |
| R-L — Raw Letter Count | 4 |
| Suffix Removed (upstream R001/R002) | NOT AVAILABLE |
| R-U — Preserved Stem (with marks) | يَحْيَى |
| R-U — Normalized Stem | يحيى |
| R-U Length (existing controller) | 4 |
| R006 Actual Prefix Removed | يَ |
| R006 Actual After Prefix | حْيَى |
| R006 Actual Prefix Arithmetic | 4 − 1 = 3 (يَ) |
| R006 Actual Form-Specific Marker Removed | None |
| R006 Actual After Form Removal | حْيَى |
| R006 Actual Form Arithmetic | 3 − 0 = 3 |
| R006 Form-Specific Adjustment Rationale | Form I imperfect: remove the matched person prefix; no Form-specific marker. |
| F-I — R006 Form Candidates | [1] |
| I-V — Internal Vowels (existing output) | NOT AVAILABLE |
| S-T — Physical Suffix Families | ["surface_zero"] |
| S-I — Physical Suffix Indices | {"surface_zero":[0]} |
| P-R — Existing Pattern Evidence | {"يحي":{"Form I T24-8":"Form I T24-8"},"حيى":{"prefix + radicals":"prefix + radicals","hollow y (imperfect)":"hollow y (imperfect)"},"حوى":{"hollow w (imperfect)":"hollow w (imperfect)"}} |
| R007 T Candidates | [2] |
| R008 Index (parsed from existing candidates) | [1] |
| R008 Form.T.Index Candidates | ["1.2.1"] |
| R008 Status | HYPOTHESIS |
| R008 Guard Accepted | [] |
| R008 Guard Rejected | [] |
| R008 Guard Unverified | [{"address":"1.2.1","r007_consistency":"SUPPORTED AS INDEX HYPOTHESIS","structural_guard":"UNVERIFIED: no complete pattern supplied"}] |
| Authoritative Full Pattern | NOT AVAILABLE |
| Authoritative Full Structural Units | NOT AVAILABLE |
| Prefix / S-I Synchronization (existing verdict) | NOT AVAILABLE |
| Stage | Execution | Outcome | Reason |
|---|---|---|---|
| R006 | HANDOFF_COMPLETE | STRUCTURAL HYPOTHESIS | Result retained in token diagnostic evidence |
| R007 | HANDOFF_COMPLETE | HYPOTHESIS | Result retained in token diagnostic evidence |
| R008 | HANDOFF_COMPLETE | HYPOTHESIS | Result retained in token diagnostic evidence |
| R009 | HANDOFF_COMPLETE | MIXED | Result retained in token diagnostic evidence |
| R010 | SKIPPED | Dictionary review queue is rendered after token loop; not a per-token verifier | |
| R011 | HANDOFF_COMPLETE | DIAGNOSTIC_RESULT | Read-only R011 results included in full diagnostic JSON |
{
"r011_mod151_read_only": {
"يحي": {
"15": {
"status": "NOT_TESTED",
"matches": [],
"tested": 1,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"16": {
"status": "NOT_TESTED",
"matches": [],
"tested": 1,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"17": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": "NOT_TESTED",
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"18": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"19": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"20": {
"status": "NOT_TESTED",
"matches": [],
"tested": 18,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"21": {
"status": "NOT_TESTED",
"matches": [],
"tested": 3,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"22": {
"status": "NOT_TESTED",
"matches": [],
"tested": 3,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"23": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"24": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"25": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
}
},
"حيى": {
"15": {
"status": "NOT_TESTED",
"matches": [],
"tested": 1,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"16": {
"status": "NOT_TESTED",
"matches": [],
"tested": 1,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"17": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": "NOT_TESTED",
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"18": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"19": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"20": {
"status": "NOT_TESTED",
"matches": [],
"tested": 18,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"21": {
"status": "NOT_TESTED",
"matches": [],
"tested": 3,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"22": {
"status": "NOT_TESTED",
"matches": [],
"tested": 3,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"23": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"24": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"25": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
}
},
"حوى": {
"15": {
"status": "NOT_TESTED",
"matches": [],
"tested": 1,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"16": {
"status": "NOT_TESTED",
"matches": [],
"tested": 1,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"17": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": "NOT_TESTED",
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"18": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"19": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"20": {
"status": "NOT_TESTED",
"matches": [],
"tested": 18,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"21": {
"status": "NOT_TESTED",
"matches": [],
"tested": 3,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"22": {
"status": "NOT_TESTED",
"matches": [],
"tested": 3,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"23": {
"status": "NOT_TESTED",
"matches": [],
"tested": 2,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"24": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
},
"25": {
"status": "NOT_TESTED",
"matches": [],
"tested": 0,
"skipped": 0,
"inventory_complete": false,
"dictionary_t17": null,
"dictionary_fields": [],
"nominal_evidence": [],
"form_hypotheses": [
1
],
"t20_recovered_roots": [],
"t21_recovered_roots": []
}
}
},
"stage_audit_mod151": [
{
"stage": "R006",
"state": "HANDOFF_COMPLETE",
"outcome": "STRUCTURAL HYPOTHESIS",
"reason": "Result retained in token diagnostic evidence",
"calls": 1
},
{
"stage": "R007",
"state": "HANDOFF_COMPLETE",
"outcome": "HYPOTHESIS",
"reason": "Result retained in token diagnostic evidence",
"calls": 1
},
{
"stage": "R008",
"state": "HANDOFF_COMPLETE",
"outcome": "HYPOTHESIS",
"reason": "Result retained in token diagnostic evidence",
"calls": 1
},
{
"stage": "R009",
"state": "HANDOFF_COMPLETE",
"outcome": "MIXED",
"reason": "Result retained in token diagnostic evidence",
"calls": 1
},
{
"stage": "R010",
"state": "SKIPPED",
"outcome": null,
"reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
"calls": 0
},
{
"stage": "R011",
"state": "HANDOFF_COMPLETE",
"outcome": "DIAGNOSTIC_RESULT",
"reason": "Read-only R011 results included in full diagnostic JSON",
"calls": 1
}
],
"original_analysis_group": {
"token_no": 6,
"token": "يَحْيَى",
"expected": "",
"form": "",
"root_type": "surface-test",
"voice": "Undetermined",
"suffix": "",
"pronoun": "",
"pronoun_role": "",
"analysis_token": "يَحْيَى",
"stem": "يَحْيَى",
"normalized_stem": "يحيى",
"prefix": "يَ",
"nominal_prefix": "",
"nominal_core": "",
"stem_length": 4,
"root_candidates": [
"يحي",
"حيى",
"حوى"
],
"root_patterns": {
"يحي": {
"Form I T24-8": "Form I T24-8"
},
"حيى": {
"prefix + radicals": "prefix + radicals",
"hollow y (imperfect)": "hollow y (imperfect)"
},
"حوى": {
"hollow w (imperfect)": "hollow w (imperfect)"
}
},
"findings": {
"surface_zero": [
0
]
},
"status": "Matched"
},
"r006": {
"form_candidates": [
1
],
"perfect_forms": [],
"evidence": {
"1": [
"I imperfect: person prefix + strong\/hollow template",
"MOD-056 full-token: MOD-055 Form I inflection [i-a] physical 1.2; full token retained",
"MOD-056 full-token: I imperfect: person prefix + strong\/hollow template"
]
},
"structural_trace": {
"1": [
{
"source": "R006 primary suffix-stripped stem",
"matched_form": 1,
"matched_pattern": "I imperfect: person prefix + three-radical strong\/hollow template",
"stem_input": "يَحْيَى",
"physical_suffix_input": "",
"full_input": "يَحْيَى",
"prefix_removed": "يَ",
"after_prefix": "حْيَى",
"form_marker_removed": "None",
"after_form_marker": "حْيَى",
"prefix_letter_count": 1,
"after_prefix_unit_count": 3,
"form_marker_letter_count": 0,
"remaining_letter_count": 3,
"form_marker_kind": "Form I imperfect: no derivational marker"
}
]
},
"status": "STRUCTURAL HYPOTHESIS"
},
"r008": {
"form_t_index_candidates": [
"1.2.1"
],
"index_candidates": [
1
],
"status": "HYPOTHESIS",
"comments": [],
"details": [
{
"form": 1,
"t": 2,
"index": 1,
"address": "1.2.1",
"source": "defective-final imperfect with no physical ending + imperfect person prefix ي"
}
]
},
"mod105_native_r008": {
"status": "HYPOTHESIS",
"candidates": [
"1.2.1"
]
},
"mod105_controller_retained_sources": [],
"r009": {
"original": "يَحْيَى",
"remaining": "يَحْيَى",
"r005_root_candidate": "",
"root_candidate": "",
"root_length": 0,
"accepted_root_candidates": [],
"accepted_root_count": 0,
"rejected_root_candidates": [
"يحي",
"حيى",
"حوى"
],
"rejected_root_count": 3,
"accepted_details": [],
"rejected_details": [
{
"address": "1.2.1",
"form": 1,
"t": 2,
"index": 1,
"expected_radicals": 3,
"observed_radicals": 3,
"root_candidate": "يحي",
"source": "R005 root_candidates",
"prefix": "",
"introductory": "",
"structural_body": "",
"pattern": "",
"status": "ORDER_COMPATIBLE",
"evidence": [
"Ordered letters compatible; not sufficient for verification",
"No dictionary or conjugator validation"
]
},
{
"address": "1.2.1",
"form": 1,
"t": 2,
"index": 1,
"expected_radicals": 3,
"observed_radicals": 3,
"root_candidate": "حيى",
"source": "R005 root_candidates",
"prefix": "",
"introductory": "",
"structural_body": "",
"pattern": "",
"status": "ORDER_COMPATIBLE",
"evidence": [
"Ordered letters compatible; not sufficient for verification",
"No dictionary or conjugator validation"
]
},
{
"address": "1.2.1",
"form": 1,
"t": 2,
"index": 1,
"expected_radicals": 3,
"observed_radicals": 3,
"root_candidate": "حوى",
"source": "R005 root_candidates",
"prefix": "",
"introductory": "",
"structural_body": "",
"pattern": "",
"status": "MISMATCH",
"evidence": [
"Root letters not present in original order",
"No dictionary or conjugator validation"
]
}
],
"accepted_roots_by_address": [],
"original_skeleton": "يحيى",
"stem_skeleton": "يحيى",
"addresses": [
"1.2.1"
],
"details": [
{
"address": "1.2.1",
"form": 1,
"t": 2,
"index": 1,
"expected_radicals": 3,
"observed_radicals": 3,
"root_candidate": "يحي",
"source": "R005 root_candidates",
"prefix": "",
"introductory": "",
"structural_body": "",
"pattern": "",
"status": "ORDER_COMPATIBLE",
"evidence": [
"Ordered letters compatible; not sufficient for verification",
"No dictionary or conjugator validation"
]
},
{
"address": "1.2.1",
"form": 1,
"t": 2,
"index": 1,
"expected_radicals": 3,
"observed_radicals": 3,
"root_candidate": "حيى",
"source": "R005 root_candidates",
"prefix": "",
"introductory": "",
"structural_body": "",
"pattern": "",
"status": "ORDER_COMPATIBLE",
"evidence": [
"Ordered letters compatible; not sufficient for verification",
"No dictionary or conjugator validation"
]
},
{
"address": "1.2.1",
"form": 1,
"t": 2,
"index": 1,
"expected_radicals": 3,
"observed_radicals": 3,
"root_candidate": "حوى",
"source": "R005 root_candidates",
"prefix": "",
"introductory": "",
"structural_body": "",
"pattern": "",
"status": "MISMATCH",
"evidence": [
"Root letters not present in original order",
"No dictionary or conjugator validation"
]
}
],
"status": "MIXED",
"comments": [
"Accepted roots: none; structural verification only, not dictionary or conjugator validation.",
"Preliminary\/incomplete candidates: 3 row(s); see rejected_details separately."
]
},
"r009_dictionary_exact_root_mod103": [],
"r007_text": "R006 Forms: 1; Voice: active-imperfect; T: 2; HYPOTHESIS",
"mod035_form_t_index": [],
"r007_t_candidates": [
2
],
"r007_voice": "active-imperfect",
"r007_status": "HYPOTHESIS",
"nominal_evidence": "",
"resolved_findings": [],
"dictionary_root_verification": {
"status": "ROOT_NOT_FOUND",
"roots": [
"يحي",
"حيى",
"حوى"
],
"records": [],
"reason": "No extracted root found in dictionary"
},
"legacy_record_verification": {
"status": "ROOT_NOT_FOUND",
"records": [],
"root_records": [],
"roots": [
"يحي",
"حيى",
"حوى"
],
"reason": "",
"tested": 0,
"untestable": 0
}
}MOD-152: 0 dictionary-rejected speculative rows hidden when validated siblings exist; original candidate inventory retained.
MOD-014 display consolidation: 0 equivalent R004 rows hidden; raw R004/R001-R003 candidates preserved. Different root, family/index, pronoun role, or R006/R007 results remain separate.
Read-only root lookup. Morphological Form/T/index verification is separate. No dictionary files modified.