Grammar Engine
☰ Menu
R007 ISOLATED DIAGNOSTIC: LOADED
R006 OPTIONAL: LOADED

ACE Morphological Analysis — R003

Analyze Qur'anic Surah or Ayah
Quranic passage analysis

Paste one ayah or an entire surah, preserving the original Arabic orthography. The analysis runs on every token in order.

Return to fixture tests

Input: ACE controller Arabic passage | 7 tokens

← Flashcard view

Token navigation
#1وَيَقُولُونَROOT VALIDATED · Record 2138, 2175R008 candidates: 1.2.3Native R008: HYPOTHESISSuffix: ُونَ | Pronoun: | Role: | Stem: يَقُولR009: MIXEDR008: HYPOTHESISقول / قيل
Suffixُونَ
Preserved stemيَقُول
Form.T.Index candidates (MOD-035)1.2.3
R008 finalized index hypotheses (MOD-068; read-only)1.2.3
R009 execution status (MOD-099)MIXED
R008 diagnostic status (MOD-068)HYPOTHESIS
Morphology & segmentation (9 fields)
Root typesurface-test
VoiceUndetermined
Normalized stemيقول
Prefixوَ
Internal vowelsy/long-i · a · u · w/long-u
Length4
Analysis statusMatched
Analysis token (normalized input)يَقُولُونَ
Root candidates (all)قول / قيل
Verification & records (7 fields)
Dictionary root statusVALIDATED
Matching record IDs2138, 2175
Root-associated record IDs (legacy verification)2138, 2175
Dictionary root verification explanationExtracted root found in dictionary; no full-token comparison required
Legacy token records tested (no match)0
Legacy token records not testable2
Roots after Form.T.Index (MOD-085; existing candidates)قول / قيل
Rule diagnostics (8 fields)
Legacy R007 (reference only)Legacy R007 isolated
New R007 (isolated diagnostic)R006 Forms: 1; Voice: active-imperfect; T: 2; HYPOTHESIS
R009 other evidence (MOD-099)1.2.3 — ORDER_COMPATIBLE — قول; 1.2.3 — MISMATCH — قيل
MOD-105 native R008 statusHYPOTHESIS
MOD-105 native R008 candidates1.2.3
R008 full-pattern guard (MOD-068)accepted=0; rejected=0; unverified=1 (counts reflect R008 hypotheses; authoritative expected_surface_units not supplied)
MOD-028 hollow-root lookupForm I structural hypothesis retained; dictionary lookup uses normalized Arabic-root index
Structural patternsقول: prefix + radicals, hollow w (imperfect) | قيل: hollow y (imperfect)
Extended diagnostics: patterns, traces and source evidence
Suffix-family evidence (MOD-032)
suff2: physically detected; full Form/T pattern required
suff_nouns: physically detected; full Form/T pattern required
NDCL / DCL Step Trace (expand)
NDCL-01Exact NDNO MATCHAlternative not matched
NDCL-02Prepend + NDNO MATCHAlternative not matched
NDCL-03ND + AppendNO MATCHAlternative not matched
NDCL-04Prepend + ND + AppendNO MATCHAlternative not matched
DCL-01Token LengthEVIDENCEToken: يَقُولُونَ; source length field: 4
DCL-02Suffix RemovalEVIDENCEPhysical suffix: ُونَ; families/indices: suff2 [3, 9]; suff_nouns [19]
DCL-03Length After Suffix RemovalEVIDENCEPreserved stem after suffix removal: يَقُول
DCL-04Length Without VowelsEVIDENCENormalized stem: يقول; reported structural length: 4
DCL-05Root CandidatesEVIDENCERoot candidates: قول, قيل
DCL-06Form CandidatesEVIDENCER006 Form candidates: 1
DCL-07Form IdentifierEVIDENCER006 forms: 1; R007 voice: active-imperfect
DCL-08T CategoriesEVIDENCER007 T candidates: 2
DCL-09Person / Declension IndexEVIDENCEActual prefix: وَ; compatible Form.T.Index: 1.2.3; prefix-person compatibility applied by MOD-038
DCL-10Dictionary VerificationEVIDENCEDictionary ROOT status: VALIDATED; matching record IDs: 2138, 2175; no full-token validation required
قول — Base English translation
Record 2138 · to say
قيل — Base English translation
Record 2175 · to rest at midday
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenوَيَقُولُونَ
R-L — Raw Length (code points including marks)12
R-L — Raw Letter Count7
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 Arithmetic4 − 1 = 3 (يَ)
R006 Actual Form-Specific Marker RemovedNone
R006 Actual After Form Removalقُول
R006 Actual Form Arithmetic3 − 0 = 3
R006 Form-Specific Adjustment RationaleForm 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":[3,9],"suff_nouns":[19]}
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)[3]
R008 Form.T.Index Candidates["1.2.3"]
R008 StatusHYPOTHESIS
R008 Guard Accepted[]
R008 Guard Rejected[]
R008 Guard Unverified[{"address":"1.2.3","r007_consistency":"SUPPORTED AS INDEX HYPOTHESIS","structural_guard":"UNVERIFIED: no complete pattern supplied"}]
Authoritative Full PatternNOT AVAILABLE
Authoritative Full Structural UnitsNOT AVAILABLE
Prefix / S-I Synchronization (existing verdict)NOT AVAILABLE
Read-only. R006 removal rows use only the actual trace captured by R006; no display-only stripping or morphology matching. The suffix-stripped stem is supplied upstream. The R008 index is parsed for display from existing Form.T.Index candidates, not independently recognized. Missing authoritative fields remain NOT AVAILABLE. [] is an observed empty result.

ACE Stage Audit (MOD-151)

StageExecutionOutcomeReason
R006HANDOFF_COMPLETESTRUCTURAL HYPOTHESISResult retained in token diagnostic evidence
R007HANDOFF_COMPLETEHYPOTHESISResult retained in token diagnostic evidence
R008HANDOFF_COMPLETEHYPOTHESISResult retained in token diagnostic evidence
R009HANDOFF_COMPLETEMIXEDResult retained in token diagnostic evidence
R010SKIPPEDDictionary review queue is rendered after token loop; not a per-token verifier
R011HANDOFF_COMPLETEDIAGNOSTIC_RESULTRead-only R011 results included in full diagnostic JSON
Full token analysis and diagnostic evidence (all fields)
{
    "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": []
            }
        }
    },
    "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": 1,
        "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": [
                3,
                9
            ],
            "suff_nouns": [
                19
            ]
        },
        "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.3"
        ],
        "index_candidates": [
            3
        ],
        "status": "HYPOTHESIS",
        "comments": [],
        "details": [
            {
                "form": 1,
                "t": 2,
                "index": 3,
                "address": "1.2.3",
                "source": "conservative imperfect ending fallback + imperfect person prefix ي"
            }
        ]
    },
    "mod105_native_r008": {
        "status": "HYPOTHESIS",
        "candidates": [
            "1.2.3"
        ]
    },
    "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": 2,
        "accepted_details": [],
        "rejected_details": [
            {
                "address": "1.2.3",
                "form": 1,
                "t": 2,
                "index": 3,
                "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.3",
                "form": 1,
                "t": 2,
                "index": 3,
                "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.3"
        ],
        "details": [
            {
                "address": "1.2.3",
                "form": 1,
                "t": 2,
                "index": 3,
                "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.3",
                "form": 1,
                "t": 2,
                "index": 3,
                "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: 2 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": [
        {
            "code": "1.2.3",
            "form": 1,
            "t": 2,
            "index": 3,
            "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": 2138,
                "root": "قول"
            },
            {
                "id": 2175,
                "root": "قيل"
            }
        ],
        "reason": "Extracted root found in dictionary; no full-token comparison required"
    },
    "legacy_record_verification": {
        "status": "VALIDATION_PENDING",
        "records": [],
        "root_records": [
            {
                "id": "2138",
                "root": "قول"
            },
            {
                "id": "2175",
                "root": "قيل"
            }
        ],
        "roots": [
            "قول",
            "قيل"
        ],
        "reason": "Generator adapter not connected or candidate untestable",
        "tested": 0,
        "untestable": 2
    }
}
Dictionary records for candidate roots (2)
Record 2138 · root قول
{
    "root": "قول",
    "arabic": "قَالَ",
    "english": "to say",
    "urdu": "کہنا",
    "root_type": "triliteral",
    "form": 1,
    "verbalnoun117": "قَوْل",
    "verbalnoun2": "قِيل",
    "verbalnoun3": "",
    "activepast11": "قَالَ",
    "activeimperfect12": "يَقُولُ",
    "imperative113": "قُلْ",
    "activeparticiple115": "قَائِل",
    "passiveparticiple116": "مَقُول",
    "passiveperfect17": "قِيلَ",
    "passiveimperfect18": "يُقَالُ",
    "activeheavyemphatic16": "لَيَقُولَنَّ"
}
Record 2175 · root قيل
{
    "root": "قيل",
    "form": 1,
    "root_type": "triliteral",
    "arabic": "قيل",
    "english": "to rest at midday",
    "urdu": "دوپہر کو آرام کرنا",
    "activepast11": "قَالَ",
    "activeimperfect12": "يَقِيلُ",
    "verbalnoun117": "قَيْلُولَة"
}
#1وَيَقُولُونَNO_ROOT_CANDIDATEForm.T.Index: pendingNative R008: UNRESOLVEDSuffix: ُونَ | Pronoun: | Role: | Stem: وَيَقُولR009: UNRESOLVEDR008: UNRESOLVEDNo match
Suffixُونَ
Preserved stemوَيَقُول
R009 execution status (MOD-099)UNRESOLVED
R008 diagnostic status (MOD-068)UNRESOLVED
Morphology & segmentation (7 fields)
Root typesurface-test
VoiceUndetermined
Normalized stemويقول
Internal vowelsw/long-u · a · y/long-i · a · u · w/long-u
Length5
Analysis statusMatched
Analysis token (normalized input)وَيَقُولُونَ
Verification & records (2 fields)
Dictionary root statusNO_ROOT_CANDIDATE
Dictionary root verification explanationNo extracted root candidate
Rule diagnostics (4 fields)
Legacy R007 (reference only)Legacy R007 isolated
New R007 (isolated diagnostic)R006 Forms: unresolved; Voice: undetermined; T: unresolved; R006 UNRESOLVED
MOD-105 native R008 statusUNRESOLVED
R008 full-pattern guard (MOD-068)accepted=0; rejected=0; unverified=0 (counts reflect R008 hypotheses; authoritative expected_surface_units not supplied)
Extended diagnostics: patterns, traces and source evidence
Suffix-family evidence (MOD-032)
suff2: physically detected; full Form/T pattern required
suff_nouns: physically detected; full Form/T pattern required
NDCL / DCL Step Trace (expand)
NDCL-01Exact NDNO MATCHAlternative not matched
NDCL-02Prepend + NDNO MATCHAlternative not matched
NDCL-03ND + AppendNO MATCHAlternative not matched
NDCL-04Prepend + ND + AppendNO MATCHAlternative not matched
DCL-01Token LengthEVIDENCEToken: وَيَقُولُونَ; source length field: 5
DCL-02Suffix RemovalEVIDENCEPhysical suffix: ُونَ; families/indices: suff2 [3, 9]; suff_nouns [19]
DCL-03Length After Suffix RemovalEVIDENCEPreserved stem after suffix removal: وَيَقُول
DCL-04Length Without VowelsEVIDENCENormalized stem: ويقول; reported structural length: 5
DCL-05Root CandidatesEVIDENCERoot candidates: none reported
DCL-06Form CandidatesEVIDENCER006 Form candidates: none reported
DCL-07Form IdentifierEVIDENCER006 forms: unresolved; R007 voice: undetermined
DCL-08T CategoriesEVIDENCER007 T candidates: none reported
DCL-09Person / Declension IndexEVIDENCEActual prefix: (none); compatible Form.T.Index: none reported; prefix-person compatibility applied by MOD-038
DCL-10Dictionary VerificationEVIDENCEDictionary ROOT status: NO_ROOT_CANDIDATE; matching record IDs: none; no full-token validation required
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenوَيَقُولُونَ
R-L — Raw Length (code points including marks)12
R-L — Raw Letter Count7
Suffix Removed (upstream R001/R002)ُونَ
R-U — Preserved Stem (with marks)وَيَقُول
R-U — Normalized Stemويقول
R-U Length (existing controller)5
Prefix (controller fallback)NOT AVAILABLE
R006 Actual Prefix RemovedNOT AVAILABLE
R006 Actual After PrefixNOT AVAILABLE
R006 Actual Prefix ArithmeticNOT AVAILABLE
R006 Actual Form-Specific Marker RemovedNOT AVAILABLE
R006 Actual After Form RemovalNOT AVAILABLE
R006 Actual Form ArithmeticNOT AVAILABLE
R006 Form-Specific Adjustment RationaleNOT AVAILABLE
F-I — R006 Form Candidates[]
I-V — Internal Vowels (existing output)NOT AVAILABLE
S-T — Physical Suffix Families["suff2","suff_nouns"]
S-I — Physical Suffix Indices{"suff2":[3,9],"suff_nouns":[19]}
P-R — Existing Pattern Evidence[]
R007 T Candidates[]
R008 Index (parsed from existing candidates)[]
R008 Form.T.Index Candidates[]
R008 StatusUNRESOLVED
R008 Guard Accepted[]
R008 Guard Rejected[]
R008 Guard Unverified[]
Authoritative Full PatternNOT AVAILABLE
Authoritative Full Structural UnitsNOT AVAILABLE
Prefix / S-I Synchronization (existing verdict)NOT AVAILABLE
Read-only. R006 removal rows use only the actual trace captured by R006; no display-only stripping or morphology matching. The suffix-stripped stem is supplied upstream. The R008 index is parsed for display from existing Form.T.Index candidates, not independently recognized. Missing authoritative fields remain NOT AVAILABLE. [] is an observed empty result.

ACE Stage Audit (MOD-151)

StageExecutionOutcomeReason
R006HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R007HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R008HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R009HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R010SKIPPEDDictionary review queue is rendered after token loop; not a per-token verifier
R011HANDOFF_COMPLETEDIAGNOSTIC_RESULTRead-only R011 results included in full diagnostic JSON
Full token analysis and diagnostic evidence (all fields)
{
    "r011_mod151_read_only": {
        "": {
            "15": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 1,
                "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": 0,
                "skipped": 1,
                "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": 0,
                "skipped": 2,
                "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": 0,
                "skipped": 2,
                "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": 0,
                "skipped": 18,
                "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": 0,
                "skipped": 3,
                "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": 0,
                "skipped": 3,
                "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": 0,
                "skipped": 2,
                "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": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R007",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R008",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R009",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "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": 1,
        "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": 5,
        "root_candidates": [],
        "root_patterns": [],
        "findings": {
            "suff2": [
                3,
                9
            ],
            "suff_nouns": [
                19
            ]
        },
        "status": "Matched"
    },
    "r006": {
        "form_candidates": [],
        "perfect_forms": [],
        "evidence": [],
        "structural_trace": [],
        "status": "UNRESOLVED"
    },
    "r008": {
        "form_t_index_candidates": [],
        "index_candidates": [],
        "status": "UNRESOLVED",
        "comments": [],
        "details": []
    },
    "mod105_native_r008": {
        "status": "UNRESOLVED",
        "candidates": []
    },
    "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": 0,
        "accepted_details": [],
        "rejected_details": [],
        "accepted_roots_by_address": [],
        "original_skeleton": "ويقولون",
        "stem_skeleton": "ويقول",
        "addresses": [],
        "details": [],
        "status": "UNRESOLVED",
        "comments": [
            "No R008 Form.T.Index hypothesis to verify"
        ]
    },
    "r009_dictionary_exact_root_mod103": [],
    "r007_text": "R006 Forms: unresolved; Voice: undetermined; T: unresolved; R006 UNRESOLVED",
    "mod035_form_t_index": [],
    "r007_t_candidates": [],
    "r007_voice": "undetermined",
    "r007_status": "R006 UNRESOLVED",
    "nominal_evidence": "",
    "resolved_findings": [],
    "dictionary_root_verification": {
        "status": "NO_ROOT_CANDIDATE",
        "roots": [],
        "records": [],
        "reason": "No extracted root candidate"
    },
    "legacy_record_verification": {
        "status": "NO_ROOT_CANDIDATE",
        "records": [],
        "roots": [],
        "reason": "R005 produced no root candidate"
    }
}
#2مَتَىNDForm.T.Index: pendingNative R008: NOT_RUNSuffix: | Pronoun: | Role: | Stem: مَتَىR009: NOT_RUNR008: NOT_RUN—
Preserved stemمَتَى
R009 execution status (MOD-099)NOT_RUN
R008 diagnostic status (MOD-068)NOT_RUN
Morphology & segmentation (11 fields)
Root typeND
VoiceND
Normalized stemمَتَى
Internal vowelsa · a · alif-maqsura
Length—
Analysis statusND EXACT: 29.5
English (ND)when
Urdu (ND)کب
Category (ND)interrogative
Subcategory (ND)interrogative adverb
POS (ND)adverb
Verification & records (2 fields)
Dictionary root statusND
Dictionary root verification explanationNon-declinable token
Rule diagnostics (4 fields)
Legacy R007 (reference only)ND EXACT
New R007 (isolated diagnostic)ND — outside derived R007
MOD-105 native R008 statusNOT_RUN
R008 full-pattern guard (MOD-068)accepted=0; rejected=0; unverified=0 (counts reflect R008 hypotheses; authoritative expected_surface_units not supplied)
Extended diagnostics: patterns, traces and source evidence
NDCL / DCL Step Trace (expand)
NDCL-01Exact NDPASSND | + مَتَى +
NDCL-02Prepend + NDNO MATCHAlternative not matched
NDCL-03ND + AppendNO MATCHAlternative not matched
NDCL-04Prepend + ND + AppendNO MATCHAlternative not matched
DCL-01Token LengthNOT REQUIREDND recognized; derived analysis bypassed
DCL-02Suffix RemovalNOT REQUIREDND recognized; derived analysis bypassed
DCL-03Length After Suffix RemovalNOT REQUIREDND recognized; derived analysis bypassed
DCL-04Length Without VowelsNOT REQUIREDND recognized; derived analysis bypassed
DCL-05Root CandidatesNOT REQUIREDND recognized; derived analysis bypassed
DCL-06Form CandidatesNOT REQUIREDND recognized; derived analysis bypassed
DCL-07Form IdentifierNOT REQUIREDND recognized; derived analysis bypassed
DCL-08T CategoriesNOT REQUIREDND recognized; derived analysis bypassed
DCL-09Person / Declension IndexNOT REQUIREDND recognized; derived analysis bypassed
DCL-10Dictionary VerificationNOT REQUIREDND recognized; derived analysis bypassed
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenمَتَى
R-L — Raw Length (code points including marks)5
R-L — Raw Letter Count3
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 RemovedNOT AVAILABLE
R006 Actual After PrefixNOT AVAILABLE
R006 Actual Prefix ArithmeticNOT AVAILABLE
R006 Actual Form-Specific Marker RemovedNOT AVAILABLE
R006 Actual After Form RemovalNOT AVAILABLE
R006 Actual Form ArithmeticNOT AVAILABLE
R006 Form-Specific Adjustment RationaleNOT AVAILABLE
F-I — R006 Form CandidatesNOT 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 CandidatesNOT AVAILABLE
R008 Index (parsed from existing candidates)NOT AVAILABLE
R008 Form.T.Index CandidatesNOT AVAILABLE
R008 StatusNOT AVAILABLE
R008 Guard AcceptedNOT AVAILABLE
R008 Guard RejectedNOT AVAILABLE
R008 Guard UnverifiedNOT AVAILABLE
Authoritative Full PatternNOT AVAILABLE
Authoritative Full Structural UnitsNOT AVAILABLE
Prefix / S-I Synchronization (existing verdict)NOT AVAILABLE
Read-only. R006 removal rows use only the actual trace captured by R006; no display-only stripping or morphology matching. The suffix-stripped stem is supplied upstream. The R008 index is parsed for display from existing Form.T.Index candidates, not independently recognized. Missing authoritative fields remain NOT AVAILABLE. [] is an observed empty result.

ACE Stage Audit (MOD-151)

StageExecutionOutcomeReason
R006SKIPPEDND token: derived morphology stage not applicable
R007SKIPPEDND token: derived morphology stage not applicable
R008SKIPPEDND token: derived morphology stage not applicable
R009SKIPPEDND token: derived morphology stage not applicable
R010SKIPPEDDictionary review queue is rendered after token loop; not a per-token verifier
R011SKIPPEDND token: derived morphology stage not applicable
Full token analysis and diagnostic evidence (all fields)
{
    "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": "",
        "stem": "مَتَى",
        "normalized_stem": "مَتَى",
        "prefix": "",
        "stem_length": null,
        "root_candidates": [],
        "root_patterns": [],
        "findings": [],
        "status": "ND EXACT: 29.5",
        "nd_english": "when",
        "nd_urdu": "کب",
        "nd_category": "interrogative",
        "nd_subcategory": "interrogative adverb",
        "nd_pos": "adverb"
    },
    "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": "undetermined",
    "r007_status": "R006 UNRESOLVED",
    "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"
    }
}
#3هَذَاNDForm.T.Index: pendingNative R008: NOT_RUNSuffix: | Pronoun: | Role: | Stem: هَٰذَاR009: NOT_RUNR008: NOT_RUN—
Preserved stemهَٰذَا
R009 execution status (MOD-099)NOT_RUN
R008 diagnostic status (MOD-068)NOT_RUN
Morphology & segmentation (11 fields)
Root typeND
VoiceND
Normalized stemهَٰذَا
Internal vowelsa · dagger-a · a · long-a
Length—
Analysis statusND EXACT: 26.1
English (ND)this (masc. sg.)
Urdu (ND)یہ (مذکر)
Category (ND)demonstrative
Subcategory (ND)proximal demonstrative pronoun
POS (ND)pronoun
Verification & records (2 fields)
Dictionary root statusND
Dictionary root verification explanationNon-declinable token
Rule diagnostics (4 fields)
Legacy R007 (reference only)ND EXACT
New R007 (isolated diagnostic)ND — outside derived R007
MOD-105 native R008 statusNOT_RUN
R008 full-pattern guard (MOD-068)accepted=0; rejected=0; unverified=0 (counts reflect R008 hypotheses; authoritative expected_surface_units not supplied)
Extended diagnostics: patterns, traces and source evidence
NDCL / DCL Step Trace (expand)
NDCL-01Exact NDPASSND | + هَٰذَا +
NDCL-02Prepend + NDNO MATCHAlternative not matched
NDCL-03ND + AppendNO MATCHAlternative not matched
NDCL-04Prepend + ND + AppendNO MATCHAlternative not matched
DCL-01Token LengthNOT REQUIREDND recognized; derived analysis bypassed
DCL-02Suffix RemovalNOT REQUIREDND recognized; derived analysis bypassed
DCL-03Length After Suffix RemovalNOT REQUIREDND recognized; derived analysis bypassed
DCL-04Length Without VowelsNOT REQUIREDND recognized; derived analysis bypassed
DCL-05Root CandidatesNOT REQUIREDND recognized; derived analysis bypassed
DCL-06Form CandidatesNOT REQUIREDND recognized; derived analysis bypassed
DCL-07Form IdentifierNOT REQUIREDND recognized; derived analysis bypassed
DCL-08T CategoriesNOT REQUIREDND recognized; derived analysis bypassed
DCL-09Person / Declension IndexNOT REQUIREDND recognized; derived analysis bypassed
DCL-10Dictionary VerificationNOT REQUIREDND recognized; derived analysis bypassed
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenهَذَا
R-L — Raw Length (code points including marks)5
R-L — Raw Letter Count3
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 RemovedNOT AVAILABLE
R006 Actual After PrefixNOT AVAILABLE
R006 Actual Prefix ArithmeticNOT AVAILABLE
R006 Actual Form-Specific Marker RemovedNOT AVAILABLE
R006 Actual After Form RemovalNOT AVAILABLE
R006 Actual Form ArithmeticNOT AVAILABLE
R006 Form-Specific Adjustment RationaleNOT AVAILABLE
F-I — R006 Form CandidatesNOT 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 CandidatesNOT AVAILABLE
R008 Index (parsed from existing candidates)NOT AVAILABLE
R008 Form.T.Index CandidatesNOT AVAILABLE
R008 StatusNOT AVAILABLE
R008 Guard AcceptedNOT AVAILABLE
R008 Guard RejectedNOT AVAILABLE
R008 Guard UnverifiedNOT AVAILABLE
Authoritative Full PatternNOT AVAILABLE
Authoritative Full Structural UnitsNOT AVAILABLE
Prefix / S-I Synchronization (existing verdict)NOT AVAILABLE
Read-only. R006 removal rows use only the actual trace captured by R006; no display-only stripping or morphology matching. The suffix-stripped stem is supplied upstream. The R008 index is parsed for display from existing Form.T.Index candidates, not independently recognized. Missing authoritative fields remain NOT AVAILABLE. [] is an observed empty result.

ACE Stage Audit (MOD-151)

StageExecutionOutcomeReason
R006SKIPPEDND token: derived morphology stage not applicable
R007SKIPPEDND token: derived morphology stage not applicable
R008SKIPPEDND token: derived morphology stage not applicable
R009SKIPPEDND token: derived morphology stage not applicable
R010SKIPPEDDictionary review queue is rendered after token loop; not a per-token verifier
R011SKIPPEDND token: derived morphology stage not applicable
Full token analysis and diagnostic evidence (all fields)
{
    "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": 3,
        "token": "هَذَا",
        "expected": "",
        "form": "",
        "root_type": "ND",
        "voice": "ND",
        "suffix": "",
        "stem": "هَٰذَا",
        "normalized_stem": "هَٰذَا",
        "prefix": "",
        "stem_length": null,
        "root_candidates": [],
        "root_patterns": [],
        "findings": [],
        "status": "ND EXACT: 26.1",
        "nd_english": "this (masc. sg.)",
        "nd_urdu": "یہ (مذکر)",
        "nd_category": "demonstrative",
        "nd_subcategory": "proximal demonstrative pronoun",
        "nd_pos": "pronoun"
    },
    "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": "undetermined",
    "r007_status": "R006 UNRESOLVED",
    "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"
    }
}
#4ٱلْفَتْحُROOT VALIDATED · Record 2016Form.T.Index: pendingNative R008: UNRESOLVEDSuffix: ُ | Pronoun: | Role: | Stem: فَتْحR009: UNRESOLVEDR008: UNRESOLVEDفتح
Suffixُ
Preserved stemفَتْح
R009 execution status (MOD-099)UNRESOLVED
R008 diagnostic status (MOD-068)UNRESOLVED
Morphology & segmentation (11 fields)
Root typesurface-test
VoiceUndetermined
Normalized stemفتح
Prefixٱلْ
Nominal prefixal
Nominal coreفَتْحُ
Internal vowelsa · sukun
Length3
Analysis statusMatched
Analysis token (normalized input)فَتْحُ
Root candidates (all)فتح
Verification & records (6 fields)
Dictionary root statusVALIDATED
Matching record IDs2016
Root-associated record IDs (legacy verification)2016
Dictionary root verification explanationExtracted root found in dictionary; no full-token comparison required
Legacy token records tested (no match)0
Legacy token records not testable1
Rule diagnostics (5 fields)
Legacy R007 (reference only)Nominal candidate (definite article)
New R007 (isolated diagnostic)R006 Forms: unresolved; Voice: undetermined; T: unresolved; UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)
MOD-105 native R008 statusUNRESOLVED
R008 full-pattern guard (MOD-068)accepted=0; rejected=0; unverified=0 (counts reflect R008 hypotheses; authoritative expected_surface_units not supplied)
Structural patternsفتح: three radicals
Extended diagnostics: patterns, traces and source evidence
Suffix-family evidence (MOD-032)
suff2: physically detected; full Form/T pattern required
suff_nouns: physically detected; full Form/T pattern required
NDCL / DCL Step Trace (expand)
NDCL-01Exact NDNO MATCHAlternative not matched
NDCL-02Prepend + NDNO MATCHAlternative not matched
NDCL-03ND + AppendNO MATCHAlternative not matched
NDCL-04Prepend + ND + AppendNO MATCHAlternative not matched
DCL-01Token LengthEVIDENCEToken: فَتْحُ; source length field: 3
DCL-02Suffix RemovalEVIDENCEPhysical suffix: ُ; families/indices: suff2 [1, 4, 7, 13, 14]; suff_nouns [4]
DCL-03Length After Suffix RemovalEVIDENCEPreserved stem after suffix removal: فَتْح
DCL-04Length Without VowelsEVIDENCENormalized stem: فتح; reported structural length: 3
DCL-05Root CandidatesEVIDENCERoot candidates: فتح
DCL-06Form CandidatesEVIDENCER006 Form candidates: none reported
DCL-07Form IdentifierEVIDENCER006 forms: unresolved; R007 voice: undetermined
DCL-08T CategoriesEVIDENCER007 T candidates: none reported
DCL-09Person / Declension IndexEVIDENCEActual prefix: ٱلْ; compatible Form.T.Index: none reported; prefix-person compatibility applied by MOD-038
DCL-10Dictionary VerificationEVIDENCEDictionary ROOT status: VALIDATED; matching record IDs: 2016; no full-token validation required
فتح — Base English translation
Record 2016 · to open, conquer
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenٱلْفَتْحُ
R-L — Raw Length (code points including marks)9
R-L — Raw Letter Count5
Suffix Removed (upstream R001/R002)ُ
R-U — Preserved Stem (with marks)فَتْح
R-U — Normalized Stemفتح
R-U Length (existing controller)3
Prefix (controller fallback)ٱلْ
R006 Actual Prefix RemovedNOT AVAILABLE
R006 Actual After PrefixNOT AVAILABLE
R006 Actual Prefix ArithmeticNOT AVAILABLE
R006 Actual Form-Specific Marker RemovedNOT AVAILABLE
R006 Actual After Form RemovalNOT AVAILABLE
R006 Actual Form ArithmeticNOT AVAILABLE
R006 Form-Specific Adjustment RationaleNOT AVAILABLE
F-I — R006 Form Candidates[]
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{"فتح":{"three radicals":"three radicals"}}
R007 T Candidates[]
R008 Index (parsed from existing candidates)[]
R008 Form.T.Index Candidates[]
R008 StatusUNRESOLVED
R008 Guard Accepted[]
R008 Guard Rejected[]
R008 Guard Unverified[]
Authoritative Full PatternNOT AVAILABLE
Authoritative Full Structural UnitsNOT AVAILABLE
Prefix / S-I Synchronization (existing verdict)NOT AVAILABLE
Read-only. R006 removal rows use only the actual trace captured by R006; no display-only stripping or morphology matching. The suffix-stripped stem is supplied upstream. The R008 index is parsed for display from existing Form.T.Index candidates, not independently recognized. Missing authoritative fields remain NOT AVAILABLE. [] is an observed empty result.

ACE Stage Audit (MOD-151)

StageExecutionOutcomeReason
R006HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R007HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R008HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R009HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R010SKIPPEDDictionary review queue is rendered after token loop; not a per-token verifier
R011HANDOFF_COMPLETEDIAGNOSTIC_RESULTRead-only R011 results included in full diagnostic JSON
Full token analysis and diagnostic evidence (all fields)
{
    "r011_mod151_read_only": {
        "فتح": {
            "15": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 1,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [
                    "definite_article_al",
                    "hamzat_al_wasl"
                ],
                "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": [
                    "definite_article_al",
                    "hamzat_al_wasl"
                ],
                "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": [
                    "definite_article_al",
                    "hamzat_al_wasl"
                ],
                "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": [
                    "definite_article_al",
                    "hamzat_al_wasl"
                ],
                "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": [
                    "definite_article_al",
                    "hamzat_al_wasl"
                ],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "20": {
                "status": "YES",
                "matches": [
                    {
                        "id": "1.20.fa3l",
                        "form": 1,
                        "template": "{r0}َ{r1}ْ{r2}",
                        "expected": "فَتْح",
                        "status": "confirmed",
                        "matched_stem": "فَتْح",
                        "segmentation": [
                            "definite_article",
                            "terminal_case_removed"
                        ]
                    },
                    {
                        "id": "R011.T20.fa3l",
                        "form": 1,
                        "template": "{r0}َ{r1}ْ{r2}",
                        "expected": "فَتْح",
                        "status": "structural_candidate",
                        "matched_stem": "فَتْح",
                        "segmentation": [
                            "definite_article",
                            "terminal_case_removed"
                        ]
                    }
                ],
                "tested": 18,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [
                    "definite_article_al",
                    "hamzat_al_wasl"
                ],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [
                    {
                        "root": "فتح",
                        "pattern_id": "1.20.fa3l",
                        "form": 1,
                        "t": 20,
                        "matched_stem": "فَتْح",
                        "segmentation": [
                            "definite_article",
                            "terminal_case_removed"
                        ],
                        "status": "STRUCTURAL_CANDIDATE"
                    },
                    {
                        "root": "فتح",
                        "pattern_id": "R011.T20.fa3l",
                        "form": 1,
                        "t": 20,
                        "matched_stem": "فَتْح",
                        "segmentation": [
                            "definite_article",
                            "terminal_case_removed"
                        ],
                        "status": "STRUCTURAL_CANDIDATE"
                    }
                ],
                "t21_recovered_roots": []
            },
            "21": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 3,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [
                    "definite_article_al",
                    "hamzat_al_wasl"
                ],
                "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": [
                    "definite_article_al",
                    "hamzat_al_wasl"
                ],
                "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": [
                    "definite_article_al",
                    "hamzat_al_wasl"
                ],
                "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": [
                    "definite_article_al",
                    "hamzat_al_wasl"
                ],
                "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": [
                    "definite_article_al",
                    "hamzat_al_wasl"
                ],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            }
        }
    },
    "stage_audit_mod151": [
        {
            "stage": "R006",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R007",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R008",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R009",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "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": 4,
        "token": "ٱلْفَتْحُ",
        "expected": "",
        "form": "",
        "root_type": "surface-test",
        "voice": "Undetermined",
        "suffix": "ُ",
        "pronoun": "",
        "pronoun_role": "",
        "analysis_token": "فَتْحُ",
        "stem": "فَتْح",
        "normalized_stem": "فتح",
        "prefix": "ٱلْ",
        "nominal_prefix": "al",
        "nominal_core": "فَتْحُ",
        "stem_length": 3,
        "root_candidates": [
            "فتح"
        ],
        "root_patterns": {
            "فتح": {
                "three radicals": "three radicals"
            }
        },
        "findings": {
            "suff2": [
                1,
                4,
                7,
                13,
                14
            ],
            "suff_nouns": [
                4
            ]
        },
        "status": "Matched"
    },
    "r006": {
        "form_candidates": [],
        "perfect_forms": [],
        "evidence": [],
        "structural_trace": [],
        "status": "UNRESOLVED"
    },
    "r008": {
        "form_t_index_candidates": [],
        "index_candidates": [],
        "status": "UNRESOLVED",
        "comments": [],
        "details": []
    },
    "mod105_native_r008": {
        "status": "UNRESOLVED",
        "candidates": []
    },
    "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": 0,
        "accepted_details": [],
        "rejected_details": [],
        "accepted_roots_by_address": [],
        "original_skeleton": "فتح",
        "stem_skeleton": "فتح",
        "addresses": [],
        "details": [],
        "status": "UNRESOLVED",
        "comments": [
            "No R008 Form.T.Index hypothesis to verify"
        ]
    },
    "r009_dictionary_exact_root_mod103": [],
    "r007_text": "R006 Forms: unresolved; Voice: undetermined; T: unresolved; UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)",
    "mod035_form_t_index": [],
    "r007_t_candidates": [],
    "r007_voice": "undetermined",
    "r007_status": "UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)",
    "nominal_evidence": "definite article",
    "resolved_findings": [],
    "dictionary_root_verification": {
        "status": "VALIDATED",
        "roots": [
            "فتح"
        ],
        "records": [
            {
                "id": 2016,
                "root": "فتح"
            }
        ],
        "reason": "Extracted root found in dictionary; no full-token comparison required"
    },
    "legacy_record_verification": {
        "status": "VALIDATION_PENDING",
        "records": [],
        "root_records": [
            {
                "id": "2016",
                "root": "فتح"
            }
        ],
        "roots": [
            "فتح"
        ],
        "reason": "Generator adapter not connected or candidate untestable",
        "tested": 0,
        "untestable": 1
    }
}
Dictionary records for candidate roots (1)
Record 2016 · root فتح
{
    "root": "فتح",
    "arabic": "فتح",
    "root_type": "triliteral",
    "form": 1,
    "english": "to open, conquer",
    "urdu": "کھولنا",
    "activepast11": "فَتَحَ",
    "activeimperfect12": "يَفْتَحُ",
    "imperative113": "افْتَحْ",
    "verbalnoun117": "فَتْح",
    "activeparticiple115": "فَاتِح",
    "passiveparticiple116": "مُنْفَتَح",
    "english2": "to open intensely or repeatedly",
    "english3": "to conquer, to prevail",
    "english4": "to cause to open, to inaugurate",
    "english5": "to open oneself, to be opened",
    "english6": "to engage in mutual opening or struggle",
    "english7": "to be opened (passive)",
    "english8": "to open thoroughly or explore",
    "english9": "not applicable (rare with this root)",
    "english10": "to seek to open, to seek victory",
    "urdu2": "بار بار یا شدت سے کھولنا",
    "urdu3": "فتح پانا \/ غالب آنا",
    "urdu4": "افتتاح کرنا \/ کھولنے کا باعث بننا",
    "urdu5": "اپنے آپ کو کھولنا \/ کھل جانا",
    "urdu6": "باہمی فتح یا کشادگی حاصل کرنا",
    "urdu7": "کھل جانا",
    "urdu8": "مکمل طور پر کھولنا \/ دریافت کرنا",
    "urdu9": "اس روٹ میں عام نہیں",
    "urdu10": "فتح حاصل کرنے کی کوشش کرنا \/ نصرت مانگنا",
    "latin12": "yaftaHu",
    "meaning12": "he opens \/ is opening",
    "example12": "يَفْتَحُ الْبَابَ كُلَّ صَبَاحٍ",
    "verse12": "Surah Saba 34:26",
    "context12": "He opens the door every morning.",
    "activepast21": "فَتَّحَ",
    "latin21": "fattaHa",
    "meaning21": "he opened repeatedly",
    "verse21": "Surah Al-Hijr 15:14",
    "context21": "We opened the gates of the sky...",
    "activepast31": "فَاتَحَ",
    "latin31": "faataHa",
    "meaning31": "he challenged (or opened in contest)",
    "verse31": "Surah As-Saffat 37:171–173",
    "context31": "He engaged the enemy in open battle.",
    "activepast41": "أَفْتَحَ",
    "latin41": "yuftiH",
    "meaning41": "he caused to open",
    "verse41": "Surah Al-A‘raf 7:40",
    "context41": "...the gates of Heaven will not be opened for them...",
    "activepast51": "تَفَتَّحَ",
    "latin51": "tafattaHa",
    "meaning51": "it opened up (passive\/reflexive)",
    "verse51": "Surah Az-Zumar 39:73",
    "context51": "Its gates had been opened...",
    "activepast61": "تَفَاتَحَ",
    "latin61": "tafātaHa",
    "meaning61": "they opened to one another \/ challenged",
    "source61": "Classical usage",
    "context61": "They exchanged speech openly.",
    "activepast71": "انْفَتَحَ",
    "latin71": "inFataHa",
    "meaning71": "it was opened",
    "note7": "Not directly used in Qur’an, but appears in classical usage",
    "activepast81": "افْتَتَحَ",
    "latin81": "iftaftaHtum",
    "meaning81": "you sought victory",
    "verse81": "Implied meaning",
    "context81": "If you sought victory - then victory has come to you...",
    "activepast101": "اسْتَفْتَحَ",
    "latin101": "istaftaHa",
    "meaning101": "he sought victory or judgment",
    "verse101": "Surah Al-A‘raf 7:89",
    "context101": "They sought judgment (or victory).",
    "latin11": "fataHa",
    "meaning11": "he opened",
    "example11": "فَتَحَ اللَّهُ عَلَيْهِمْ",
    "verse11": "Implied across Qur’anic contexts",
    "context11": "Allah opened for them [victory, guidance, etc.].",
    "example21": "فَتَّحْنَا أَبْوَابَ السَّمَاءِ",
    "example31": "فَاتَحَ الْعَدُوَّ فِي الْقِتَالِ",
    "source31": "Classical usage",
    "example4": "أَفْتَحَ اللَّهُ الْأَبْوَابَ",
    "verse4": "Surah Al-A‘raf 7:40 (passive)",
    "context4": "Allah opened the gates...",
    "example51": "تَفَتَّحَتْ أَبْوَابُهَا",
    "example61": "تَفَاتَحُوا بِالْكَلَامِ",
    "latin7": "inFataHa",
    "meaning7": "it was opened",
    "example7": "انْفَتَحَ الْبَابُ",
    "source7": "Classical usage",
    "context7": "The door was opened.",
    "latin8": "iftaTaHa",
    "meaning8": "he inaugurated, opened formally",
    "example8": "افْتَتَحَ الْمَسْجِدَ",
    "context8": "He inaugurated the mosque.",
    "note9": "Form IX is inapplicable to this root (used for colors\/defects only).",
    "example101": "اسْتَفْتَحُوا",
    "activeimperfect22": "يُفَتِّحُ",
    "latin22": "yufattiHu",
    "meaning22": "he opens intensively \/ unlocks thoroughly",
    "example22": "يُفَتِّحُ الْكِتَابَ بَعْدَ الْمُعَلِّمِ",
    "context22": "He thoroughly opens the book after the teacher.",
    "activeimperfect32": "يُفَاتِحُ",
    "latin32": "yufātiHu",
    "meaning32": "he initiates \/ negotiates",
    "example32": "يُفَاتِحُهُ فِي الْمَوْضُوعِ",
    "context32": "He initiates discussion on the topic.",
    "activeimperfect42": "يُفْتِحُ",
    "latin42": "yuftiHu",
    "meaning42": "he causes to open",
    "example42": "يُفْتِحُ الْبَابَ بِالْمِفْتَاحِ",
    "context42": "He unlocks the door with the key.",
    "activeimperfect52": "يَتَفَتَّحُ",
    "latin52": "yatafattaHu",
    "meaning52": "it opens gradually \/ blooms",
    "example52": "يَتَفَتَّحُ الزَّهْرُ فِي الرَّبِيعِ",
    "context52": "The flower blooms in spring.",
    "activeimperfect62": "يَتَفَاتَحُ",
    "latin62": "yatafātaHu",
    "meaning62": "he mutually opens \/ engages",
    "example62": "يَتَفَاتَحُونَ فِي الْحِوَارِ",
    "context62": "They are mutually engaging in discussion.",
    "activeimperfect72": "يَنْفَتِحُ",
    "latin72": "yanfatiHu",
    "meaning72": "it opens (by itself)",
    "example72": "يَنْفَتِحُ الْبَابُ بِسُهُولَةٍ",
    "context72": "The door opens easily.",
    "activeimperfect82": "يَفْتَتِحُ",
    "latin82": "yaftatiHu",
    "meaning82": "he inaugurates \/ opens formally",
    "example82": "يَفْتَتِحُ الْمُؤْتَمَرَ الرَّئِيسُ",
    "context82": "The president inaugurates the conference.",
    "note92": "Form IX is not used with this root (typically for colors or physical traits).",
    "activeimperfect102": "يَسْتَفْتِحُ",
    "latin102": "yastaftiHu",
    "meaning102": "he seeks opening \/ judgment",
    "example102": "يَسْتَفْتِحُ عَلَى الْقَوْمِ",
    "context102": "He seeks judgment against the people.",
    "activesubjunctive13": "لِيَفْتَحَ",
    "latin13": "liyaftaHa",
    "meaning13": "so that he may open",
    "example13": "لِيَفْتَحَ اللَّهُ بَيْنَنَا",
    "context13": "So that Allah may decide between us.",
    "note13": "Typical Qur’anic structure: لِي + فعل مضارع منصوب",
    "activesubjunctive23": "لِيُفَتِّحَ",
    "latin23": "liyufattiHa",
    "meaning23": "so that he may open repeatedly",
    "example23": "دُعَاء: اللَّهُمَّ افْتَحْ لَنَا أَبْوَابَ رَحْمَتِكَ",
    "context23": "A supplication: O Allah, open for us the doors of Your mercy.",
    "note23": "Inferred from regular subjunctive formation; not in Qur’an explicitly.",
    "activesubjunctive33": "لِيُفَاتِحَ",
    "latin33": "liyufātiHa",
    "meaning33": "so that he may initiate (battle\/dialogue)",
    "example33": "قَدْ يَفَاتِحُ الْعَدُوَّ إِذَا طَالَ الْخِصَامُ",
    "context33": "He may initiate against the enemy if the conflict prolongs.",
    "note33": "From classical usage of Form III (mutual interaction).",
    "activesubjunctive43": "لِيُفْتِحَ",
    "latin43": "liyuftiHa",
    "meaning43": "so that he may open (cause to open)",
    "example43": "لِيُفْتِحَ بَيْنَكُمْ",
    "context43": "So that He may decide between you (i.e., open judgment).",
    "verse43": "Surah Al-Anfal 8:19 (contextual)",
    "activesubjunctive53": "لِيَتَفَتَّحَ",
    "latin53": "liyatafattaHa",
    "meaning53": "so that it may open up (passively)",
    "example53": "الدُّعَاء: لِيَتَفَتَّحَ قَلْبِي لِلْعِلْمِ",
    "context53": "So that my heart may open up to knowledge.",
    "activesubjunctive63": "لِيَتَفَاتَحَ",
    "latin63": "liyatafātaHa",
    "meaning64": "he does not engage in mutual openness \/ challenge",
    "example64": "لَا يَتَفَاتَحِ الْقَوْمُ إِلَّا عِنْدَ الْأَمْنِ",
    "context64": "The people do not open up to each other unless there is safety.",
    "activesubjunctive73": "لِيَنْفَتِحَ",
    "latin73": "liyanfatiHa",
    "meaning73": "so that it may be opened",
    "example73": "لِيَنْفَتِحَ الْبَابُ",
    "context73": "So that the door may be opened.",
    "activesubjunctive83": "لِيَفْتَتِحَ",
    "latin83": "liyaftatiHa",
    "meaning83": "so that he may inaugurate or explore",
    "example83": "لِيَفْتَتِحَ مَجَالًا جَدِيدًا",
    "context83": "So that he may open a new field (e.g., of knowledge).",
    "activesubjunctive93": "",
    "activesubjunctive103": "لِيَسْتَفْتِحَ",
    "latin103": "liyastaftiHa",
    "meaning103": "so that he may seek judgment or victory",
    "example103": "لِيَسْتَفْتِحَ رَبَّهُ عَلَى الْقَوْمِ الْبَاطِلِينَ",
    "context103": "So that he may ask his Lord to judge the wrongdoers.",
    "verse103": "Similar usage in Surah Al-A‘raf 7:89",
    "activejussive14": "يَفْتَحْ",
    "latin14": "yaftaH",
    "meaning14": "he does not open \/ let him open",
    "example14": "وَإِنْ يَفْتَحِ اللَّهُ لَكُمْ",
    "context14": "And if Allah opens [a way] for you...",
    "verse14": "Derived structure — common jussive usage with conditional particles",
    "activejussive24": "يُفَتِّحْ",
    "latin24": "yufattiH",
    "meaning24": "he does not open repeatedly",
    "example24": "وَلَا يُفَتِّحْ لَهُ الْبَابُ",
    "context24": "The door shall not be opened for him.",
    "note24": "Form II jussive is regular; appears in classical usage.",
    "activejussive34": "يُفَاتِحْ",
    "latin34": "yufātiH",
    "meaning34": "he should not confront or initiate",
    "example34": "لَا يُفَاتِحِ الْعَدُوَّ إِلَّا بِإِذْنٍ",
    "context34": "He should not confront the enemy except with permission.",
    "activejussive44": "يُفْتِحْ",
    "meaning44": "he should not open \/ may not cause to open",
    "example44": "إِنْ يُفْتِحِ اللَّهُ عَلَيْهِمْ",
    "context44": "If Allah opens upon them...",
    "activejussive54": "يَتَفَتَّحْ",
    "latin55": "layatafattaHanna",
    "meaning55": "it will indeed open up",
    "example55": "لَيَتَفَتَّحَنَ الْقَلْبُ لِلنُّورِ",
    "context55": "The heart will indeed open to the light.",
    "activejussive64": "يَتَفَاتَحْ",
    "latin64": "yatafātaH",
    "activejussive74": "يَنْفَتِحْ",
    "latin74": "yanfatiH",
    "meaning74": "it should not be opened",
    "example74": "إِنْ لَمْ يَنْفَتِحِ الْبَابُ، فَاصْبِرْ",
    "context74": "If the door does not open, then be patient.",
    "activejussive84": "يَفْتَتِحْ",
    "latin84": "yaftatiH",
    "meaning84": "he should not begin \/ inaugurate",
    "example84": "لَا يَفْتَتِحِ الْجَلْسَةَ حَتَّى يَجِيءَ الْقَاضِي",
    "context84": "Do not begin the session until the judge arrives.",
    "note94": "Form IX is not applicable to this root; it is for colors and defects.",
    "activejussive104": "يَسْتَفْتِحْ",
    "latin104": "yastaftiH",
    "meaning104": "he should not seek judgment \/ decision",
    "example104": "فَلَا يَسْتَفْتِحِ الْمُؤْمِنُ عَلَى أَخِيهِ",
    "context104": "Let the believer not seek judgment against his brother.",
    "activelightemphatic15": "لَيَفْتَحَنَ",
    "latin15": "layaftaHanna",
    "meaning15": "he will indeed open",
    "example15": "لَيَفْتَحَنَ اللَّهُ لَكُمْ بَابًا",
    "context15": "Allah will indeed open a door for you.",
    "activelightemphatic25": "لَيُفَتِّحَنَ",
    "latin25": "layufattiHanna",
    "meaning25": "he will indeed open thoroughly",
    "example25": "لَيُفَتِّحَنَ كُلَّ الْأَبْوَابِ",
    "context25": "He will indeed open all the doors.",
    "activelightemphatic35": "لَيُفَاتِحَنَ",
    "latin35": "layufātiHanna",
    "meaning35": "he will indeed confront or initiate",
    "example35": "لَيُفَاتِحَنَ الْعَدُوَّ غَدًا",
    "context35": "He will indeed confront the enemy tomorrow.",
    "activelightemphatic45": "لَيُفْتِحَنَ",
    "latin45": "layuftiHanna",
    "meaning45": "he will indeed cause to open",
    "example45": "لَيُفْتِحَنَ اللَّهُ بَيْنَ النَّاسِ",
    "context45": "Allah will indeed open judgment between the people.",
    "activelightemphatic55": "لَيَتَفَتَّحَنَ",
    "activelightemphatic65": "لَيَتَفَاتَحَنَ",
    "latin65": "layatafātaHanna",
    "meaning65": "they will indeed open to one another",
    "example65": "لَيَتَفَاتَحَنَ النَّاسُ فِي الْمَجْلِسِ",
    "context65": "The people will indeed open up in the gathering.",
    "activelightemphatic75": "لَيَنْفَتِحَنَ",
    "latin75": "layanfatiHanna",
    "meaning75": "it will indeed be opened",
    "example75": "لَيَنْفَتِحَنَ الْبَابُ إِذَا صَبَرْتَ",
    "context75": "The door will indeed be opened if you are patient.",
    "activelightemphatic85": "لَيَفْتَتِحَنَ",
    "latin85": "layaftatiHanna",
    "meaning85": "he will indeed inaugurate \/ formally open",
    "example85": "لَيَفْتَتِحَنَ الْجَلْسَةَ فِي السَّاعَةِ الْعَاشِرَةِ",
    "context85": "He will indeed inaugurate the session at 10 o’clock.",
    "note95": "Form IX is not valid for this root and has no emphatic usage.",
    "activelightemphatic510": "لَيَسْتَفْتِحَنَ",
    "latin510": "yutafattaH",
    "meaning510": "that it not open gradually",
    "example510": "لَمْ يُتَفَتَّحْ الزَّهْرُ",
    "context510": "The flower did not blossom.",
    "activeheavyemphatic16": "لَيَفْتَحَنَّ",
    "latin16": "layaftaHanna",
    "meaning16": "he will surely open",
    "example16": "لَيَفْتَحَنَّ اللَّهُ لَنَا",
    "context16": "Allah will surely open the way for us.",
    "activeheavyemphatic26": "لَيُفَتِّحَنَّ",
    "latin26": "layufattiHanna",
    "meaning26": "he will surely open repeatedly",
    "example26": "لَيُفَتِّحَنَّ الْبَابَ أَخِيرًا",
    "context26": "He will surely open the door eventually.",
    "activeheavyemphatic36": "لَيُفَاتِحَنَّ",
    "latin36": "layufātiHanna",
    "meaning36": "he will surely confront \/ initiate",
    "example36": "لَيُفَاتِحَنَّ الْخَصْمَ غَدًا",
    "context36": "He will surely confront the opponent tomorrow.",
    "activeheavyemphatic46": "لَيُفْتِحَنَّ",
    "latin46": "layuftiHanna",
    "meaning46": "he will surely cause to open",
    "example46": "لَيُفْتِحَنَّ اللَّهُ بَيْنَ النَّاسِ",
    "context46": "Allah will surely open judgment between people.",
    "activeheavyemphatic56": "لَيَتَفَتَّحَنَّ",
    "latin56": "layatafattaHanna",
    "meaning56": "it will surely open up",
    "example": "لَيَتَفَتَّحَنَّ قَلْبُهُ لِلْهِدَايَةِ",
    "context": "The door is opened (reflexively or passively).",
    "activeheavyemphatic66": "لَيَتَفَاتَحَنَّ",
    "latin66": "yatafātaHanna",
    "meaning66": "they will surely open up to one another",
    "example66": "لَيَتَفَاتَحَنَّ الْقَوْمُ عَلَى الصِّدْقِ",
    "context66": "The people will surely be open with truth.",
    "activeheavyemphatic76": "لَيَنْفَتِحَنَّ",
    "latin76": "layanfatiHanna",
    "meaning76": "it will surely be opened",
    "example76": "لَيَنْفَتِحَنَّ الْبَابُ بِدُعَائِكَ",
    "context76": "The door will surely be opened by your prayer.",
    "activeheavyemphatic86": "لَيَفْتَتِحَنَّ",
    "latin86": "layaftatiHanna",
    "meaning86": "he will surely inaugurate",
    "example86": "لَيَفْتَتِحَنَّ الْمُؤْتَمَرَ قَرِيبًا",
    "context86": "He will surely inaugurate the conference soon.",
    "note96": "Form IX is inapplicable for this root and does not support emphatic tense.",
    "activeheavyemphatic106": "لَيَسْتَفْتِحَنَّ",
    "latin106": "layastaftiHanna",
    "meaning106": "he will surely seek judgment or victory",
    "example106": "لَيَسْتَفْتِحَنَّ عَلَى الظَّالِمِينَ",
    "context106": "He will surely seek judgment against the wrongdoers.",
    "passiveperfect17": "فُتِحَ",
    "latin17": "futiHa",
    "meaning17": "it was opened",
    "example17": "فُتِحَ الْبَابُ",
    "context17": "The door was opened.",
    "passiveperfect27": "فُتِّحَ",
    "latin27": "futtiHa",
    "meaning27": "it was opened thoroughly",
    "example27": "فُتِّحَتْ أَبْوَابُ السَّمَاءِ",
    "context27": "The gates of heaven were opened.",
    "passiveperfect37": "فُوتِحَ",
    "latin37": "fūtiHa",
    "meaning37": "he was confronted \/ engaged",
    "example37": "فُوتِحَ بِالْقَوْلِ",
    "context37": "He was addressed (engaged in speech).",
    "passiveperfect47": "أُفْتِحَ",
    "latin47": "uftiHa",
    "meaning47": "it was caused to open",
    "example47": "أُفْتِحَ الْكِتَابُ",
    "context47": "The book was caused to be opened.",
    "passiveperfect57": "تُفُتِّحَ",
    "latin57": "tufuttiHa",
    "meaning57": "it was opened up repeatedly",
    "example57": "تُفُتِّحَتْ زُهُورُ الرَّبِيعِ",
    "context57": "The spring flowers were blossomed.",
    "passiveperfect67": "تُفُوتِحَ",
    "latin67": "tufūtiHa",
    "meaning67": "they were mutually opened \/ confronted",
    "example67": "تُفُوتِحَ الْجَيْشَانِ",
    "context67": "The two armies were mutually engaged.",
    "passiveperfect87": "افْتُتِحَ",
    "latin87": "iftutiHa",
    "meaning87": "it was inaugurated \/ opened",
    "example87": "افْتُتِحَ الْمَشْرُوعُ الرَّسْمِيّ",
    "context87": "The official project was inaugurated.",
    "note97": "Form IX is not used with this root and does not have a passive perfect form.",
    "passiveperfect107": "اسْتُفْتِحَ",
    "latin107": "ustuftiHa",
    "meaning107": "judgment \/ opening was sought",
    "example107": "اسْتُفْتِحَ عَلَى الْقَوْمِ",
    "context107": "Judgment was sought against the people.",
    "passiveimperfect18": "يُفْتَحُ",
    "latin18": "yuftaHu",
    "meaning18": "it is being opened \/ will be opened",
    "example18": "يُفْتَحُ الْبَابُ كُلَّ يَوْمٍ",
    "context18": "The door is opened every day.",
    "passiveimperfect28": "يُفَتَّحُ",
    "latin28": "yufattaHu",
    "meaning28": "it is being opened thoroughly",
    "example28": "يُفَتَّحُ الْمَسْرَحُ فِي الْمَسَاءِ",
    "context28": "The theater is opened in the evening.",
    "passiveimperfect38": "يُفَاتَحُ",
    "latin38": "yufātaHu",
    "meaning38": "he is being confronted \/ engaged",
    "example38": "يُفَاتَحُ فِي الْمَوْضُوعِ قَرِيبًا",
    "context38": "He will be approached on the topic soon.",
    "passiveimperfect48": "يُفْتَحُ",
    "latin48": "yuftaHu",
    "meaning48": "it is caused to open",
    "example48": "يُفْتَحُ الْكِتَابُ أَوَّلًا",
    "context48": "The book is first opened.",
    "passiveimperfect58": "يُتَفَتَّحُ",
    "latin58": "yutafattaHu",
    "meaning58": "it is being blossomed \/ opened gradually",
    "example58": "يُتَفَتَّحُ الزَّهْرُ فِي الرَّبِيعِ",
    "context58": "The flower blossoms in spring.",
    "passiveimperfect68": "يُتَفَاتَحُ",
    "latin68": "yutafātaHu",
    "meaning68": "they are being engaged with one another",
    "example68": "يُتَفَاتَحُ الْفَرِيقَانِ بِالْمُبَارَاةِ",
    "context68": "The two teams are engaging in the match.",
    "note78": "Form VII does not have a imperfect form. It is inherently passive\/reflexive.",
    "passiveimperfect88": "يُفْتَتَحُ",
    "latin88": "yuftataHu",
    "meaning88": "it is being inaugurated",
    "example88": "يُفْتَتَحُ الْمَعْرِضُ غَدًا",
    "context88": "The exhibition will be inaugurated tomorrow.",
    "note98": "Form IX is not used with this root and has no passiveimperfect imperfect.",
    "passiveimperfect108": "يُسْتَفْتَحُ",
    "latin108": "yustaftaHu",
    "meaning108": "judgment or opening is sought (imperfectly)",
    "example108": "يُسْتَفْتَحُ عَلَى الظَّالِمِينَ",
    "context108": "Judgment is being sought against the oppressors.",
    "passivesubjunctive19": "يُفْتَحَ",
    "latin19": "yuftaHa",
    "meaning19": "that it may be opened",
    "example19": "لَنْ يُفْتَحَ الْبَابُ",
    "context19": "The door will not be opened.",
    "passivesubjunctive29": "يُفَتَّحَ",
    "latin29": "yufattaHa",
    "meaning29": "that it may be opened thoroughly",
    "example29": "لَنْ يُفَتَّحَ الْمَجَالُ لِلنِّقَاشِ",
    "context29": "The floor will not be opened for discussion.",
    "passivesubjunctive39": "يُفَاتَحَ",
    "latin39": "yufātaHa",
    "meaning39": "that he may be confronted",
    "example39": "لَنْ يُفَاتَحَ بِهَذَا الْأَمْرِ",
    "context39": "He will not be approached with this matter.",
    "passivesubjunctive49": "يُفْتَحَ",
    "latin49": "yuftaHa",
    "meaning49": "that it may be caused to open",
    "example49": "لَنْ يُفْتَحَ الْكِتَابُ حَتَّى تَحْضُرَ",
    "context49": "The book will not be opened until you arrive.",
    "passivesubjunctive59": "يُتَفَتَّحَ",
    "latin59": "yutafattaHa",
    "meaning59": "that it may be opened gradually",
    "example59": "لَنْ يُتَفَتَّحَ الزَّهْرُ فِي الشِّتَاءِ",
    "context59": "The flower will not blossom in winter.",
    "passivesubjunctive69": "يُتَفَاتَحَ",
    "latin69": "yutafātaHa",
    "meaning69": "that they may open to one another",
    "example69": "لَنْ يُتَفَاتَحَ الطَّرَفَانِ بِحُلُولٍ",
    "context69": "The two sides will not engage in solutions.",
    "note79": "Form VII does not have a passive voice; it is inherently passive.",
    "passivesubjunctive89": "يُفْتَتَحَ",
    "latin89": "yuftataHa",
    "meaning89": "that it may be inaugurated",
    "example89": "لَنْ يُفْتَتَحَ الْمَعْرِضُ قَبْلَ الْوَقْتِ",
    "context89": "The exhibition will not be inaugurated before time.",
    "note99": "Form IX is not used with this root and has no passive usage.",
    "passivesubjunctive109": "يُسْتَفْتَحَ",
    "latin109": "yustaftaHa",
    "meaning109": "that judgment may be sought",
    "example109": "لَنْ يُسْتَفْتَحَ عَلَى الظَّالِمِ",
    "context109": "Judgment will not be sought against the oppressor.",
    "passivejussive110": "يُفْتَحْ",
    "latin110": "yuftaH",
    "meaning110": "that it be not opened \/ let it not be opened",
    "example110": "لَمْ يُفْتَحْ الْبَابُ",
    "context110": "The door was not opened.",
    "passivejussive210": "يُفَتَّحْ",
    "latin210": "yufattaH",
    "meaning210": "that it not be opened thoroughly",
    "example210": "لَمْ يُفَتَّحْ الْبَابُ بَعْدُ",
    "context210": "The door has not been opened thoroughly yet.",
    "passivejussive310": "يُفَاتَحْ",
    "latin310": "yufātaH",
    "meaning310": "that he not be confronted",
    "example310": "لَمْ يُفَاتَحْ فِي الْمَوْضُوعِ",
    "context310": "He was not approached on the matter.",
    "passivejussive410": "يُفْتَحْ",
    "latin410": "yuftaH",
    "meaning410": "that it not be caused to open",
    "example410": "لَمْ يُفْتَحْ الْكِتَابُ",
    "context410": "The book was not opened.",
    "passivejussive510": "يُتَفَتَّحْ",
    "passivejussive610": "يُتَفَاتَحْ",
    "latin610": "yutafātaH",
    "meaning610": "that they not engage \/ open mutually",
    "example610": "لَمْ يُتَفَاتَحْ الْفَرِيقَانِ",
    "context610": "The two teams did not engage.",
    "note710": "Form VII does not have a passive jussive; it is inherently passive.",
    "passivejussive810": "يُفْتَتَحْ",
    "latin810": "yuftataH",
    "meaning810": "that it not be inaugurated",
    "example810": "لَمْ يُفْتَتَحْ الْمَعْرِضُ",
    "context810": "The exhibition was not inaugurated.",
    "note910": "Form IX is not used with this root and does not have a jussive form.",
    "passivejussive1010": "يُسْتَفْتَحْ",
    "latin1010": "yustaftaH",
    "meaning1010": "that judgment not be sought",
    "example1010": "لَمْ يُسْتَفْتَحْ عَلَى الْقَوْمِ",
    "context1010": "Judgment was not sought against the people.",
    "passivelightemphatic111": "لَيُفْتَحَنَ",
    "latin111": "layuftaHana",
    "meaning111": "surely it will be opened (light emphasis)",
    "example111": "لَيُفْتَحَنَ الْبَابُ",
    "context111": "The door shall indeed be opened.",
    "passivelightemphatic211": "لَيُفَتَّحَنَ",
    "latin211": "layufattaHana",
    "meaning211": "surely it will be opened thoroughly (light emphasis)",
    "example211": "لَيُفَتَّحَنَ الْكِتَابُ",
    "context211": "The book shall surely be opened.",
    "passivelightemphatic311": "لَيُفَاتَحَنَ",
    "latin311": "layufātaHana",
    "meaning311": "surely he will be approached (light emphasis)",
    "example311": "لَيُفَاتَحَنَ بِالْقَرَارِ",
    "context311": "Surely he will be approached with the decision.",
    "passivelightemphatic411": "لَيُفْتَحَنَ",
    "latin411": "layuftaHana",
    "meaning411": "surely it will be made to open (light emphasis)",
    "example411": "لَيُفْتَحَنَ الْمَلَفُّ",
    "context411": "The file shall certainly be opened.",
    "passivelightemphatic511": "لَيُتَفَتَّحَنَ",
    "latin511": "layutafattaHana",
    "meaning511": "surely it will open up gradually (light emphasis)",
    "example511": "لَيُتَفَتَّحَنَ الزَّهْرُ",
    "context511": "The flower will certainly blossom.",
    "passivelightemphatic611": "لَيُتَفَاتَحَنَ",
    "latin611": "layutafātaHana",
    "meaning611": "surely mutual opening will happen (light emphasis)",
    "example611": "لَيُتَفَاتَحَنَ الطَّرَفَانِ",
    "context611": "Surely the two parties will engage.",
    "note711": "Form VII does not have passive passiveemphatic forms.",
    "passivelightemphatic811": "لَيُفْتَتَحَنَ",
    "latin811": "layuftataHana",
    "meaning811": "surely it will be inaugurated (light emphasis)",
    "example811": "لَيُفْتَتَحَنَ الْمَعْرِضُ",
    "context811": "The exhibition will indeed be inaugurated.",
    "note811": "Form IX is not used with this root.",
    "passivelightemphatic1011": "لَيُسْتَفْتَحَنَ",
    "latin1011": "layustaftaHana",
    "meaning1011": "surely judgment will be sought (light emphasis)",
    "example1011": "لَيُسْتَفْتَحَنَ عَلَى الْقَوْمِ",
    "context1011": "Surely judgment will be sought against the people.",
    "passiveheavyemphatic112": "لَيُفْتَحَنَّ",
    "latin112": "layuftaHanna",
    "meaning112": "surely it will be opened",
    "example112": "لَيُفْتَحَنَّ الْبَابُ",
    "context112": "Surely the door will be opened.",
    "passiveheavyemphatic212": "لَيُفَتَّحَنَّ",
    "latin212": "layufattaHanna",
    "meaning212": "surely it will be opened thoroughly",
    "example212": "لَيُفَتَّحَنَّ الْبَابُ فِي الْوَقْتِ",
    "context212": "Surely the door will be fully opened on time.",
    "passiveheavyemphatic312": "لَيُفَاتَحَنَّ",
    "latin312": "layufātaHanna",
    "meaning312": "surely he will be approached",
    "example312": "لَيُفَاتَحَنَّ بِالْقَرَارِ",
    "context312": "Surely he will be approached about the decision.",
    "passiveheavyemphatic412": "لَيُفْتَحَنَّ",
    "latin412": "layuftaHanna",
    "meaning412": "surely it will be made to open",
    "example412": "لَيُفْتَحَنَّ الْكِتَابُ",
    "context412": "Surely the book will be opened.",
    "passiveheavyemphatic512": "لَيُتَفَتَّحَنَّ",
    "latin512": "layutafattaHanna",
    "meaning512": "surely it will be opened gradually",
    "example512": "لَيُتَفَتَّحَنَّ الزَّهْرُ",
    "context512": "Surely the flower will bloom.",
    "passiveheavyemphatic612": "لَيُتَفَاتَحَنَّ",
    "latin612": "layutafātaHanna",
    "meaning612": "surely mutual opening will occur",
    "example612": "لَيُتَفَاتَحَنَّ الطَّرَفَانِ",
    "context612": "Surely the two sides will engage in dialogue.",
    "note712": "Form VII has no passiveheavy usage; heavy emphatic not applicable.",
    "passiveheavyemphatic812": "لَيُفْتَتَحَنَّ",
    "latin812": "layuftataHanna",
    "meaning812": "surely it will be inaugurated",
    "example812": "لَيُفْتَتَحَنَّ الْمَعْرِضُ",
    "context812": "Surely the exhibition will be inaugurated.",
    "note912": "Form IX is not used with this root and has no passive emphatic usage.",
    "passiveheavyemphatic1012": "لَيُسْتَفْتَحَنَّ",
    "latin1012": "layustaftaHanna",
    "meaning1012": "surely judgment will be sought",
    "example1012": "لَيُسْتَفْتَحَنَّ عَلَى الْقَوْمِ",
    "context1012": "Surely judgment will be sought against the people.",
    "latin113": "iftaH",
    "meaning113": "open!",
    "example113": "افْتَحْ الْبَابَ!",
    "context113": "Open the door!",
    "imperative2": "فَتِّحْ",
    "latin213": "fattiH",
    "meaning213": "open repeatedly \/ thoroughly!",
    "example213": "فَتِّحِ الْكِتَابَ وَاقْرَأْ!",
    "context213": "Open the book thoroughly and read!",
    "imperative3": "فَاتِحْ",
    "latin313": "faatiH",
    "meaning313": "initiate \/ confront!",
    "example313": "فَاتِحِ الْقَوْمَ بِالْحَقِّ!",
    "context313": "Confront the people with truth!",
    "imperative4": "أَفْتِحْ",
    "latin413": "aftiH",
    "meaning413": "cause to open!",
    "example413": "أَفْتِحْ لَهُ الطَّرِيقَ!",
    "context413": "Make the way open for him!",
    "imperative5": "تَفَتَّحْ",
    "latin513": "tafattaH",
    "meaning514": "do not open up (gradually)",
    "example514": "لَا تَتَفَتَّحْ قَبْلَ الْوَقْتِ",
    "context514": "Do not open (yourself) before the time.",
    "imperative6": "تَفَاتَحْ",
    "latin613": "tafātaH",
    "meaning613": "open to one another!",
    "example613": "تَفَاتَحُوا بِالصِّدْقِ!",
    "context613": "Speak openly with truth!",
    "note713": "Form VII (passive reflexive) generally **has no imperative** form due to its meaning and structure.",
    "imperative8": "افْتَتِحْ",
    "latin813": "iftatiH",
    "meaning813": "inaugurate \/ open formally!",
    "example813": "افْتَتِحِ الْمُؤْتَمَرَ!",
    "context813": "Inaugurate the conference!",
    "note913": "Form IX is used for colors and defects and **does not have an imperative** for this root.",
    "imperative1013": "اسْتَفْتِحْ",
    "latin1013": "istaftiH",
    "meaning1013": "seek judgment \/ opening!",
    "example1013": "اسْتَفْتِحِ اللَّهَ فِي أَمْرِكَ!",
    "context1013": "Seek judgment from Allah in your matter!",
    "prohibitive114": "لَا تَفْتَحْ",
    "latin114": "lā taftaH",
    "meaning114": "do not open",
    "example114": "لَا تَفْتَحْ الْبَابَ",
    "context114": "Do not open the door.",
    "prohibitive214": "لَا تُفَتِّحْ",
    "latin214": "lā tufattiH",
    "meaning214": "do not open thoroughly",
    "example214": "لَا تُفَتِّحْ الْكِتَابَ بَعْدُ",
    "context214": "Do not open the book yet.",
    "prohibitive314": "لَا تُفَاتِحْ",
    "latin314": "lā tufātiH",
    "meaning314": "do not initiate discussion \/ confrontation",
    "example314": "لَا تُفَاتِحْهُ فِي هَذَا الْمَوْضُوعِ",
    "context314": "Do not confront him on this topic.",
    "prohibitive414": "لَا تُفْتِحْ",
    "latin414": "lā tuftiH",
    "meaning414": "do not cause to open",
    "example414": "لَا تُفْتِحْ الْبَابَ قَبْلَ الْإِذْنِ",
    "context414": "Do not open the door without permission.",
    "prohibitive514": "لَا تَتَفَتَّحْ",
    "latin514": "lā tatafattaH",
    "prohibitive614": "لَا تَتَفَاتَحْ",
    "latin614": "lā tatafātaH",
    "meaning614": "do not engage in mutual opening\/discussion",
    "example614": "لَا تَتَفَاتَحْ مَعَهُ فِي الْأَمْرِ",
    "context614": "Do not engage him in this matter.",
    "note714": "Form VII is passive-reflexive. Prohibitive\/imperative forms are not applicable in Arabic grammar.",
    "prohibitive814": "لَا تَفْتَتِحْ",
    "latin814": "lā taftatiH",
    "meaning814": "do not inaugurate \/ commence",
    "example814": "لَا تَفْتَتِحْ الْمُؤْتَمَرَ بِدُونِ خُطْبَةٍ",
    "context814": "Do not commence the conference without a speech.",
    "note914": "Form IX is used for colors and physical conditions. Prohibitive forms are not used for this root.",
    "prohibitive1014": "لَا تَسْتَفْتِحْ",
    "latin1014": "lā tastaftiH",
    "meaning1014": "do not seek judgment \/ opening",
    "example1014": "لَا تَسْتَفْتِحْ عَلَيْهِمْ",
    "context1014": "Do not seek judgment against them.",
    "latin115": "fātiH",
    "meaning115": "opener, conqueror",
    "example115": "هُوَ فَاتِحُ الْبَابِ",
    "context115": "He is the one who opens the door.",
    "activeparticiple215": "مُفَتِّح",
    "latin215": "mufattiH",
    "meaning215": "intensely opening, thorough opener",
    "example215": "هُوَ مُفَتِّحُ الْكِتَابِ",
    "context215": "He is the one who opens the book thoroughly.",
    "activeparticiple315": "مُفَاتِح",
    "latin315": "mufātiH",
    "meaning315": "one who initiates or confronts",
    "example315": "هُوَ مُفَاتِحُ الْقَضِيَّةِ",
    "context315": "He is the one initiating the matter.",
    "activeparticiple415": "مُفْتِح",
    "latin415": "muftiH",
    "meaning415": "one who causes to open",
    "example415": "هُوَ مُفْتِحُ الْبَابِ",
    "context415": "He is the one causing the door to open.",
    "activeparticiple515": "مُتَفَتِّح",
    "latin515": "mutafattiH",
    "meaning515": "one who is gradually opening",
    "example515": "الزَّهْرُ مُتَفَتِّح",
    "context515": "The flower is blooming\/opening.",
    "activeparticiple615": "مُتَفَاتِح",
    "latin615": "mutafātiH",
    "meaning615": "one engaging in mutual opening\/discussion",
    "example615": "هُم مُتَفَاتِحُونَ",
    "context615": "They are mutually engaging.",
    "activeparticiple715": "مُنْفَتِح",
    "latin715": "munfatiH",
    "meaning715": "one who is opened (reflexively)",
    "example715": "الْبَابُ مُنْفَتِح",
    "context715": "The door is open (by itself).",
    "activeparticiple815": "مُفْتَتِح",
    "latin815": "muftatiH",
    "meaning815": "one who inaugurates or initiates",
    "example815": "مُفْتَتِحُ الْمُؤْتَمَرِ",
    "context815": "The one inaugurating the conference.",
    "note915": "Form IX is not used for active activeparticiple in this root.",
    "activeparticiple1015": "مُسْتَفْتِح",
    "latin1015": "mustaftiH",
    "meaning1015": "one who seeks opening or judgment",
    "example1015": "هُوَ مُسْتَفْتِحٌ عَلَيْهِمْ",
    "context1015": "He is seeking judgment against them.",
    "latin116": "maftūH",
    "meaning116": "opened",
    "example116": "الْبَابُ مَفْتُوح",
    "context116": "The door is opened.",
    "passiveparticiple216": "مُفَتَّح",
    "latin216": "mufattaH",
    "meaning216": "thoroughly opened",
    "example216": "الْكِتَابُ مُفَتَّح",
    "context216": "The book is thoroughly opened.",
    "passiveparticiple316": "مُفَاتَح",
    "latin316": "mufātaH",
    "meaning316": "approached (in negotiation)",
    "example316": "هُوَ مُفَاتَحٌ بِالْقَضِيَّةِ",
    "context316": "He is being approached regarding the matter.",
    "passiveparticiple416": "مُفْتَح",
    "latin416": "muftaH",
    "meaning416": "made to open",
    "example416": "الطَّرِيقُ مُفْتَح",
    "context416": "The road has been opened (by someone).",
    "passiveparticiple516": "مُتَفَتَّح",
    "latin516": "mutafattaH",
    "meaning516": "being opened gradually",
    "example516": "الزَّهْرَةُ مُتَفَتَّحَة",
    "context516": "The flower is opening up.",
    "passiveparticiple616": "مُتَفَاتَح",
    "latin616": "mutafātaH",
    "meaning616": "engaged in mutual opening\/discussion",
    "example616": "هُم مُتَفَاتَحُونَ",
    "context616": "They are being mutually opened up to discussion.",
    "latin": "munfataH",
    "meaning": "having been opened",
    "example816": "الْمَعْرِضُ مُفْتَتَح",
    "passiveparticiple816": "مُفْتَتَح",
    "latin816": "muftataH",
    "meaning816": "inaugurated \/ opened formally",
    "context816": "The exhibition is inaugurated.",
    "note916": "Form IX is not used for this root or participial form.",
    "passiveparticiple1016": "مُسْتَفْتَح",
    "latin1016": "mustaftaH",
    "meaning1016": "one for whom judgment is being sought \/ being opened upon",
    "example1016": "هُوَ مُسْتَفْتَحٌ عَلَيْهِ",
    "context1016": "Judgment is being sought against him.",
    "latin117": "fatH",
    "meaning117": "opening, conquest",
    "example117": "نَسْأَلُ اللهَ الْفَتْحَ",
    "context117": "We ask Allah for victory\/opening.",
    "latin217": "taftīH",
    "meaning217": "intensification of opening",
    "example217": "يَتَعَلَّمُ التَّفْتِيحَ الْمُتَقَدِّمَ",
    "context217": "He is learning advanced unlocking techniques.",
    "latin317": "mufātaHah",
    "meaning317": "initiation, opening of negotiation",
    "example317": "بَدَأَتِ الْمُفَاتَحَةُ بَيْنَ الْفَرِيقَيْنِ",
    "context317": "The dialogue began between the two sides.",
    "latin417": "iftāH",
    "meaning417": "causing to open, making accessible",
    "example417": "إِفْتَاحُ الْبَابِ كَانَ سَهْلًا",
    "context417": "The unlocking of the door was easy.",
    "latin517": "tafattuH",
    "meaning517": "gradual opening, blossoming",
    "example517": "تَفَتُّحُ الزَّهْرِ فِي الرَّبِيعِ",
    "context517": "The blooming of flowers in spring.",
    "latin617": "tafātuH",
    "meaning617": "mutual openness or mutual initiation",
    "example617": "تَفَاتُحُ الْأَفْكَارِ فِي الْحِوَارِ",
    "context617": "Mutual openness of ideas in discussion.",
    "latin717": "infitāH",
    "meaning717": "being opened, openness",
    "example717": "اِنْفِتَاحُ الْأَبْوَابِ",
    "context717": "The opening of the doors.",
    "latin817": "iftitāH",
    "meaning817": "inauguration, formal opening",
    "example817": "اِفْتِتَاحُ الْمَعْرِضِ",
    "context817": "The opening of the exhibition.",
    "note917": "Form IX does not apply for this root (used for colors or physical traits).",
    "latin1017": "istiftāH",
    "meaning1017": "seeking opening, judgment or decision",
    "example1017": "وَاسْتَفْتَحُوا وَخَابَ كُلُّ جَبَّارٍ عَنِيدٍ",
    "context1017": "And they sought judgment, and every stubborn tyrant was disappointed. (Quran 14:15)",
    "verbalnoun217": "تَفْتِيح",
    "verbalnoun317": "مُفَاتَحَة",
    "verbalnoun417": "إِفْتَاح",
    "verbalnoun517": "تَفَتُّح",
    "verbalnoun617": "تَفَاتُح",
    "verbalnoun717": "اِنْفِتَاح",
    "verbalnoun817": "اِفْتِتَاح",
    "verbalnoun1017": "اِسْتِفْتَاح",
    "nounofplace181": "مَفْتَح",
    "nounofplace182": "مَفْتِح",
    "nounofinstrument191": "مِفْتَح",
    "nounofinstrument192": "مِفْتَحَة",
    "nounofinstrument193": "مِفْتَاح",
    "adjective201": "فَتْح",
    "adjective202": "فِتْح",
    "adjective203": "فُتُح",
    "adjective204": "فَتَح",
    "adjective205": "فَتِح",
    "adjective206": "فَتَاح",
    "adjective207": "فُتَاح",
    "adjective208": "فَتِيح",
    "exaggeration211": "فَتَاح",
    "exaggeration212": "فَتُوح",
    "exaggeration213": "فَتِيح",
    "exaggeration214": "فَتْحَان",
    "exaggeration215": "فَتْحَان",
    "exaggeration216": "فُتَاح",
    "exaggeration217": "فَتَّاحَة",
    "exaggeration218": "فُتَّاح",
    "exaggeration219": "فَاتُوح",
    "exaggeration2110": "فَتُّوح",
    "exaggeration2111": "فُتُّوح",
    "exaggeration2112": "فِتِّيح",
    "exaggeration2113": "فُتَحَة",
    "exaggeration2114": "فَاتِحَة",
    "exaggeration2115": "مِفْتِيح",
    "colorsanddefects221": "أَفْتَح",
    "colorsanddefects222": "فَتْحَاء",
    "colorsanddefects223": "فُتْح",
    "comparativesuperlative231": "أَفْتَح",
    "comparativesuperlative232": "فُتْحَى",
    "brokenplural241": "فُتُوح",
    "brokenplural242": "أَفْتَاح",
    "brokenplural243": "فِتَاح",
    "brokenplural244": "فُتَّاح",
    "brokenplural245": "فَتَحَة",
    "brokenplural246": "فَوَاتِح",
    "brokenplural247": "مَفَاتِح",
    "brokenplural248": "فَتَائِح"
}
#5إِنNDForm.T.Index: pendingNative R008: NOT_RUNSuffix: | Pronoun: | Role: | Stem: إِنR009: NOT_RUNR008: NOT_RUN—
Preserved stemإِن
R009 execution status (MOD-099)NOT_RUN
R008 diagnostic status (MOD-068)NOT_RUN
Morphology & segmentation (11 fields)
Root typeND
VoiceND
Normalized stemإِن
Internal vowelsi
Length—
Analysis statusND EXACT: 40.112
English (ND)if
Urdu (ND)اگر
Category (ND)particle
Subcategory (ND)conditional jussive particle
POS (ND)conditional particle
Verification & records (2 fields)
Dictionary root statusND
Dictionary root verification explanationNon-declinable token
Rule diagnostics (4 fields)
Legacy R007 (reference only)ND EXACT
New R007 (isolated diagnostic)ND — outside derived R007
MOD-105 native R008 statusNOT_RUN
R008 full-pattern guard (MOD-068)accepted=0; rejected=0; unverified=0 (counts reflect R008 hypotheses; authoritative expected_surface_units not supplied)
Extended diagnostics: patterns, traces and source evidence
NDCL / DCL Step Trace (expand)
NDCL-01Exact NDPASSND | + إِن +
NDCL-02Prepend + NDNO MATCHAlternative not matched
NDCL-03ND + AppendNO MATCHAlternative not matched
NDCL-04Prepend + ND + AppendNO MATCHAlternative not matched
DCL-01Token LengthNOT REQUIREDND recognized; derived analysis bypassed
DCL-02Suffix RemovalNOT REQUIREDND recognized; derived analysis bypassed
DCL-03Length After Suffix RemovalNOT REQUIREDND recognized; derived analysis bypassed
DCL-04Length Without VowelsNOT REQUIREDND recognized; derived analysis bypassed
DCL-05Root CandidatesNOT REQUIREDND recognized; derived analysis bypassed
DCL-06Form CandidatesNOT REQUIREDND recognized; derived analysis bypassed
DCL-07Form IdentifierNOT REQUIREDND recognized; derived analysis bypassed
DCL-08T CategoriesNOT REQUIREDND recognized; derived analysis bypassed
DCL-09Person / Declension IndexNOT REQUIREDND recognized; derived analysis bypassed
DCL-10Dictionary VerificationNOT REQUIREDND recognized; derived analysis bypassed
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenإِن
R-L — Raw Length (code points including marks)3
R-L — Raw Letter Count2
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 RemovedNOT AVAILABLE
R006 Actual After PrefixNOT AVAILABLE
R006 Actual Prefix ArithmeticNOT AVAILABLE
R006 Actual Form-Specific Marker RemovedNOT AVAILABLE
R006 Actual After Form RemovalNOT AVAILABLE
R006 Actual Form ArithmeticNOT AVAILABLE
R006 Form-Specific Adjustment RationaleNOT AVAILABLE
F-I — R006 Form CandidatesNOT 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 CandidatesNOT AVAILABLE
R008 Index (parsed from existing candidates)NOT AVAILABLE
R008 Form.T.Index CandidatesNOT AVAILABLE
R008 StatusNOT AVAILABLE
R008 Guard AcceptedNOT AVAILABLE
R008 Guard RejectedNOT AVAILABLE
R008 Guard UnverifiedNOT AVAILABLE
Authoritative Full PatternNOT AVAILABLE
Authoritative Full Structural UnitsNOT AVAILABLE
Prefix / S-I Synchronization (existing verdict)NOT AVAILABLE
Read-only. R006 removal rows use only the actual trace captured by R006; no display-only stripping or morphology matching. The suffix-stripped stem is supplied upstream. The R008 index is parsed for display from existing Form.T.Index candidates, not independently recognized. Missing authoritative fields remain NOT AVAILABLE. [] is an observed empty result.

ACE Stage Audit (MOD-151)

StageExecutionOutcomeReason
R006SKIPPEDND token: derived morphology stage not applicable
R007SKIPPEDND token: derived morphology stage not applicable
R008SKIPPEDND token: derived morphology stage not applicable
R009SKIPPEDND token: derived morphology stage not applicable
R010SKIPPEDDictionary review queue is rendered after token loop; not a per-token verifier
R011SKIPPEDND token: derived morphology stage not applicable
Full token analysis and diagnostic evidence (all fields)
{
    "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": "",
        "stem": "إِن",
        "normalized_stem": "إِن",
        "prefix": "",
        "stem_length": null,
        "root_candidates": [],
        "root_patterns": [],
        "findings": [],
        "status": "ND EXACT: 40.112",
        "nd_english": "if",
        "nd_urdu": "اگر",
        "nd_category": "particle",
        "nd_subcategory": "conditional jussive particle",
        "nd_pos": "conditional 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": "undetermined",
    "r007_status": "UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)",
    "nominal_evidence": "definite article",
    "resolved_findings": [],
    "dictionary_root_verification": {
        "status": "ND",
        "roots": [],
        "records": [],
        "reason": "Non-declinable token"
    },
    "legacy_record_verification": {
        "status": "ND",
        "records": [],
        "roots": [],
        "reason": "Non-derived entity"
    }
}
#6كُنتُمْNO_ROOT_CANDIDATEForm.T.Index: pendingNative R008: UNRESOLVEDSuffix: ْ | Pronoun: | Role: | Stem: كُنتُمR009: UNRESOLVEDR008: UNRESOLVEDNo match
Suffixْ
Preserved stemكُنتُم
R009 execution status (MOD-099)UNRESOLVED
R008 diagnostic status (MOD-068)UNRESOLVED
Morphology & segmentation (7 fields)
Root typesurface-test
VoiceUndetermined
Normalized stemكنتم
Internal vowelsu · u
Length4
Analysis statusMatched
Analysis token (normalized input)كُنتُمْ
Verification & records (2 fields)
Dictionary root statusNO_ROOT_CANDIDATE
Dictionary root verification explanationNo extracted root candidate
Rule diagnostics (4 fields)
Legacy R007 (reference only)Legacy R007 isolated
New R007 (isolated diagnostic)R006 Forms: unresolved; Voice: undetermined; T: unresolved; R006 UNRESOLVED
MOD-105 native R008 statusUNRESOLVED
R008 full-pattern guard (MOD-068)accepted=0; rejected=0; unverified=0 (counts reflect R008 hypotheses; authoritative expected_surface_units not supplied)
Extended diagnostics: patterns, traces and source evidence
Suffix-family evidence (MOD-032)
suff4: physically detected; full Form/T pattern required
NDCL / DCL Step Trace (expand)
NDCL-01Exact NDNO MATCHAlternative not matched
NDCL-02Prepend + NDNO MATCHAlternative not matched
NDCL-03ND + AppendNO MATCHAlternative not matched
NDCL-04Prepend + ND + AppendNO MATCHAlternative not matched
DCL-01Token LengthEVIDENCEToken: كُنتُمْ; source length field: 4
DCL-02Suffix RemovalEVIDENCEPhysical suffix: ْ; families/indices: suff4 [1, 4, 7, 13, 14]
DCL-03Length After Suffix RemovalEVIDENCEPreserved stem after suffix removal: كُنتُم
DCL-04Length Without VowelsEVIDENCENormalized stem: كنتم; reported structural length: 4
DCL-05Root CandidatesEVIDENCERoot candidates: none reported
DCL-06Form CandidatesEVIDENCER006 Form candidates: none reported
DCL-07Form IdentifierEVIDENCER006 forms: unresolved; R007 voice: undetermined
DCL-08T CategoriesEVIDENCER007 T candidates: none reported
DCL-09Person / Declension IndexEVIDENCEActual prefix: (none); compatible Form.T.Index: none reported; prefix-person compatibility applied by MOD-038
DCL-10Dictionary VerificationEVIDENCEDictionary ROOT status: NO_ROOT_CANDIDATE; matching record IDs: none; no full-token validation required
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenكُنتُمْ
R-L — Raw Length (code points including marks)7
R-L — Raw Letter Count4
Suffix Removed (upstream R001/R002)ْ
R-U — Preserved Stem (with marks)كُنتُم
R-U — Normalized Stemكنتم
R-U Length (existing controller)4
Prefix (controller fallback)NOT AVAILABLE
R006 Actual Prefix RemovedNOT AVAILABLE
R006 Actual After PrefixNOT AVAILABLE
R006 Actual Prefix ArithmeticNOT AVAILABLE
R006 Actual Form-Specific Marker RemovedNOT AVAILABLE
R006 Actual After Form RemovalNOT AVAILABLE
R006 Actual Form ArithmeticNOT AVAILABLE
R006 Form-Specific Adjustment RationaleNOT AVAILABLE
F-I — R006 Form Candidates[]
I-V — Internal Vowels (existing output)NOT AVAILABLE
S-T — Physical Suffix Families["suff4"]
S-I — Physical Suffix Indices{"suff4":[1,4,7,13,14]}
P-R — Existing Pattern Evidence[]
R007 T Candidates[]
R008 Index (parsed from existing candidates)[]
R008 Form.T.Index Candidates[]
R008 StatusUNRESOLVED
R008 Guard Accepted[]
R008 Guard Rejected[]
R008 Guard Unverified[]
Authoritative Full PatternNOT AVAILABLE
Authoritative Full Structural UnitsNOT AVAILABLE
Prefix / S-I Synchronization (existing verdict)NOT AVAILABLE
Read-only. R006 removal rows use only the actual trace captured by R006; no display-only stripping or morphology matching. The suffix-stripped stem is supplied upstream. The R008 index is parsed for display from existing Form.T.Index candidates, not independently recognized. Missing authoritative fields remain NOT AVAILABLE. [] is an observed empty result.

ACE Stage Audit (MOD-151)

StageExecutionOutcomeReason
R006HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R007HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R008HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R009HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R010SKIPPEDDictionary review queue is rendered after token loop; not a per-token verifier
R011HANDOFF_COMPLETEDIAGNOSTIC_RESULTRead-only R011 results included in full diagnostic JSON
Full token analysis and diagnostic evidence (all fields)
{
    "r011_mod151_read_only": {
        "": {
            "15": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 1,
                "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": 0,
                "skipped": 1,
                "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": 0,
                "skipped": 2,
                "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": 0,
                "skipped": 2,
                "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": 0,
                "skipped": 18,
                "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": 0,
                "skipped": 3,
                "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": 0,
                "skipped": 3,
                "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": 0,
                "skipped": 2,
                "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": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R007",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R008",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R009",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "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": [],
        "findings": {
            "suff4": [
                1,
                4,
                7,
                13,
                14
            ]
        },
        "status": "Matched"
    },
    "r006": {
        "form_candidates": [],
        "perfect_forms": [],
        "evidence": [],
        "structural_trace": [],
        "status": "UNRESOLVED"
    },
    "r008": {
        "form_t_index_candidates": [],
        "index_candidates": [],
        "status": "UNRESOLVED",
        "comments": [],
        "details": []
    },
    "mod105_native_r008": {
        "status": "UNRESOLVED",
        "candidates": []
    },
    "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": 0,
        "accepted_details": [],
        "rejected_details": [],
        "accepted_roots_by_address": [],
        "original_skeleton": "كنتم",
        "stem_skeleton": "كنتم",
        "addresses": [],
        "details": [],
        "status": "UNRESOLVED",
        "comments": [
            "No R008 Form.T.Index hypothesis to verify"
        ]
    },
    "r009_dictionary_exact_root_mod103": [],
    "r007_text": "R006 Forms: unresolved; Voice: undetermined; T: unresolved; R006 UNRESOLVED",
    "mod035_form_t_index": [],
    "r007_t_candidates": [],
    "r007_voice": "undetermined",
    "r007_status": "R006 UNRESOLVED",
    "nominal_evidence": "",
    "resolved_findings": [],
    "dictionary_root_verification": {
        "status": "NO_ROOT_CANDIDATE",
        "roots": [],
        "records": [],
        "reason": "No extracted root candidate"
    },
    "legacy_record_verification": {
        "status": "NO_ROOT_CANDIDATE",
        "records": [],
        "roots": [],
        "reason": "R005 produced no root candidate"
    }
}
#7صَدِقِينَROOT VALIDATED · Record 1415Form.T.Index: pendingNative R008: UNRESOLVEDSuffix: ِينَ | Pronoun: | Role: | Stem: صَدِقR009: UNRESOLVEDR008: UNRESOLVEDصدق
Suffixِينَ
Preserved stemصَدِق
R009 execution status (MOD-099)UNRESOLVED
R008 diagnostic status (MOD-068)UNRESOLVED
Morphology & segmentation (8 fields)
Root typesurface-test
VoiceUndetermined
Normalized stemصدق
Internal vowelsa · i
Length3
Analysis statusMatched
Analysis token (normalized input)صَدِقِينَ
Root candidates (all)صدق
Verification & records (6 fields)
Dictionary root statusVALIDATED
Matching record IDs1415
Root-associated record IDs (legacy verification)1415
Dictionary root verification explanationExtracted root found in dictionary; no full-token comparison required
Legacy token records tested (no match)0
Legacy token records not testable1
Rule diagnostics (5 fields)
Legacy R007 (reference only)Legacy R007 isolated
New R007 (isolated diagnostic)R006 Forms: unresolved; Voice: undetermined; T: unresolved; R006 UNRESOLVED
MOD-105 native R008 statusUNRESOLVED
R008 full-pattern guard (MOD-068)accepted=0; rejected=0; unverified=0 (counts reflect R008 hypotheses; authoritative expected_surface_units not supplied)
Structural patternsصدق: three radicals
Extended diagnostics: patterns, traces and source evidence
Suffix-family evidence (MOD-032)
suff2: physically detected; full Form/T pattern required
suff_nouns: physically detected; full Form/T pattern required
NDCL / DCL Step Trace (expand)
NDCL-01Exact NDNO MATCHAlternative not matched
NDCL-02Prepend + NDNO MATCHAlternative not matched
NDCL-03ND + AppendNO MATCHAlternative not matched
NDCL-04Prepend + ND + AppendNO MATCHAlternative not matched
DCL-01Token LengthEVIDENCEToken: صَدِقِينَ; source length field: 3
DCL-02Suffix RemovalEVIDENCEPhysical suffix: ِينَ; families/indices: suff2 [10]; suff_nouns [20, 21]
DCL-03Length After Suffix RemovalEVIDENCEPreserved stem after suffix removal: صَدِق
DCL-04Length Without VowelsEVIDENCENormalized stem: صدق; reported structural length: 3
DCL-05Root CandidatesEVIDENCERoot candidates: صدق
DCL-06Form CandidatesEVIDENCER006 Form candidates: none reported
DCL-07Form IdentifierEVIDENCER006 forms: unresolved; R007 voice: undetermined
DCL-08T CategoriesEVIDENCER007 T candidates: none reported
DCL-09Person / Declension IndexEVIDENCEActual prefix: (none); compatible Form.T.Index: none reported; prefix-person compatibility applied by MOD-038
DCL-10Dictionary VerificationEVIDENCEDictionary ROOT status: VALIDATED; matching record IDs: 1415; no full-token validation required
صدق — Base English translation
Record 1415 · to be truthful
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenصَدِقِينَ
R-L — Raw Length (code points including marks)9
R-L — Raw Letter Count5
Suffix Removed (upstream R001/R002)ِينَ
R-U — Preserved Stem (with marks)صَدِق
R-U — Normalized Stemصدق
R-U Length (existing controller)3
Prefix (controller fallback)NOT AVAILABLE
R006 Actual Prefix RemovedNOT AVAILABLE
R006 Actual After PrefixNOT AVAILABLE
R006 Actual Prefix ArithmeticNOT AVAILABLE
R006 Actual Form-Specific Marker RemovedNOT AVAILABLE
R006 Actual After Form RemovalNOT AVAILABLE
R006 Actual Form ArithmeticNOT AVAILABLE
R006 Form-Specific Adjustment RationaleNOT AVAILABLE
F-I — R006 Form Candidates[]
I-V — Internal Vowels (existing output)NOT AVAILABLE
S-T — Physical Suffix Families["suff2","suff_nouns"]
S-I — Physical Suffix Indices{"suff2":[10],"suff_nouns":[20,21]}
P-R — Existing Pattern Evidence{"صدق":{"three radicals":"three radicals"}}
R007 T Candidates[]
R008 Index (parsed from existing candidates)[]
R008 Form.T.Index Candidates[]
R008 StatusUNRESOLVED
R008 Guard Accepted[]
R008 Guard Rejected[]
R008 Guard Unverified[]
Authoritative Full PatternNOT AVAILABLE
Authoritative Full Structural UnitsNOT AVAILABLE
Prefix / S-I Synchronization (existing verdict)NOT AVAILABLE
Read-only. R006 removal rows use only the actual trace captured by R006; no display-only stripping or morphology matching. The suffix-stripped stem is supplied upstream. The R008 index is parsed for display from existing Form.T.Index candidates, not independently recognized. Missing authoritative fields remain NOT AVAILABLE. [] is an observed empty result.

ACE Stage Audit (MOD-151)

StageExecutionOutcomeReason
R006HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R007HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R008HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R009HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R010SKIPPEDDictionary review queue is rendered after token loop; not a per-token verifier
R011HANDOFF_COMPLETEDIAGNOSTIC_RESULTRead-only R011 results included in full diagnostic JSON
Full token analysis and diagnostic evidence (all fields)
{
    "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": []
            }
        }
    },
    "stage_audit_mod151": [
        {
            "stage": "R006",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R007",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R008",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R009",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "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": 7,
        "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": 3,
        "root_candidates": [
            "صدق"
        ],
        "root_patterns": {
            "صدق": {
                "three radicals": "three radicals"
            }
        },
        "findings": {
            "suff2": [
                10
            ],
            "suff_nouns": [
                20,
                21
            ]
        },
        "status": "Matched"
    },
    "r006": {
        "form_candidates": [],
        "perfect_forms": [],
        "evidence": [],
        "structural_trace": [],
        "status": "UNRESOLVED"
    },
    "r008": {
        "form_t_index_candidates": [],
        "index_candidates": [],
        "status": "UNRESOLVED",
        "comments": [],
        "details": []
    },
    "mod105_native_r008": {
        "status": "UNRESOLVED",
        "candidates": []
    },
    "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": 0,
        "accepted_details": [],
        "rejected_details": [],
        "accepted_roots_by_address": [],
        "original_skeleton": "صدقين",
        "stem_skeleton": "صدق",
        "addresses": [],
        "details": [],
        "status": "UNRESOLVED",
        "comments": [
            "No R008 Form.T.Index hypothesis to verify"
        ]
    },
    "r009_dictionary_exact_root_mod103": [],
    "r007_text": "R006 Forms: unresolved; Voice: undetermined; T: unresolved; R006 UNRESOLVED",
    "mod035_form_t_index": [],
    "r007_t_candidates": [],
    "r007_voice": "undetermined",
    "r007_status": "R006 UNRESOLVED",
    "nominal_evidence": "",
    "resolved_findings": [],
    "dictionary_root_verification": {
        "status": "VALIDATED",
        "roots": [
            "صدق"
        ],
        "records": [
            {
                "id": 1415,
                "root": "صدق"
            }
        ],
        "reason": "Extracted root found in dictionary; no full-token comparison required"
    },
    "legacy_record_verification": {
        "status": "VALIDATION_PENDING",
        "records": [],
        "root_records": [
            {
                "id": "1415",
                "root": "صدق"
            }
        ],
        "roots": [
            "صدق"
        ],
        "reason": "Generator adapter not connected or candidate untestable",
        "tested": 0,
        "untestable": 1
    }
}
Dictionary records for candidate roots (1)
Record 1415 · root صدق
{
    "form": 1,
    "root": "صدق",
    "root_type": "triliteral",
    "arabic": "صدق",
    "english": "to be truthful",
    "urdu": "سچ بولنا",
    "verbalnoun117": "صِدْق",
    "verbalnoun2": "تَصْدِيق",
    "verbalnoun3": "صَدَقَات",
    "activeparticiple115": "صَادِق",
    "passiveparticiple116": "مَصْدُوق",
    "activepast11": "صَدَقَ",
    "activeimperfect12": "يَصْدُقُ",
    "imperative113": "صِدْقْ"
}

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.

R010 — Dictionary Root Review Queue (MOD-033)

#6 · كُنتُمْ — NO_ROOT_CANDIDATE
Roots: No candidates
No extracted root candidate

Read-only root lookup. Morphological Form/T/index verification is separate. No dictionary files modified.