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 | 4 tokens

← Flashcard view

Token navigation
#1عَلِمَتْROOT VALIDATED · Record 1851, 1871R008 candidates: 1.1.4Native R008: HYPOTHESISSuffix: َتْ | Pronoun: | Role: | Stem: عَلِمR009: ORDER_COMPATIBLER008: HYPOTHESISعلم
Suffixَتْ
Preserved stemعَلِم
Form.T.Index candidates (MOD-035)1.1.4
R008 finalized index hypotheses (MOD-068; read-only)1.1.4
R009 execution status (MOD-099)ORDER_COMPATIBLE
R008 diagnostic status (MOD-068)HYPOTHESIS
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 (7 fields)
Dictionary root statusVALIDATED
Matching record IDs1851, 1871
Root-associated record IDs (legacy verification)1851, 1871
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
Roots after Form.T.Index (MOD-085; existing candidates)علم
Rule diagnostics (7 fields)
Legacy R007 (reference only)Legacy R007 isolated
New R007 (isolated diagnostic)R006 Forms: 1; Voice: active-perfect; T: 1; HYPOTHESIS
R009 other evidence (MOD-099)1.1.4 — ORDER_COMPATIBLE — علم
MOD-105 native R008 statusHYPOTHESIS
MOD-105 native R008 candidates1.1.4
R008 full-pattern guard (MOD-068)accepted=0; rejected=0; unverified=1 (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)
suff1: 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: suff1 [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: 1
DCL-07Form IdentifierEVIDENCER006 forms: 1; R007 voice: active-perfect
DCL-08T CategoriesEVIDENCER007 T candidates: 1
DCL-09Person / Declension IndexEVIDENCEActual prefix: (none); compatible Form.T.Index: 1.1.4; prefix-person compatibility applied by MOD-038
DCL-10Dictionary VerificationEVIDENCEDictionary ROOT status: VALIDATED; matching record IDs: 1851, 1871; no full-token validation required
علم — Base English translation
Record 1851 · to know, be aware
Record 1871 · to learn
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenعَلِمَتْ
R-L — Raw Length (code points including marks)8
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)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[1]
I-V — Internal Vowels (existing output)NOT AVAILABLE
S-T — Physical Suffix Families["suff1"]
S-I — Physical Suffix Indices{"suff1":[4]}
P-R — Existing Pattern Evidence{"علم":{"three radicals":"three radicals"}}
R007 T Candidates[1]
R008 Index (parsed from existing candidates)[4]
R008 Form.T.Index Candidates["1.1.4"]
R008 StatusHYPOTHESIS
R008 Guard Accepted[]
R008 Guard Rejected[]
R008 Guard Unverified[{"address":"1.1.4","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_COMPLETEORDER_COMPATIBLEResult 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": "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": "ORDER_COMPATIBLE",
            "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": 3,
        "root_candidates": [
            "علم"
        ],
        "root_patterns": {
            "علم": {
                "three radicals": "three radicals"
            }
        },
        "findings": {
            "suff1": [
                4
            ]
        },
        "status": "Matched"
    },
    "r006": {
        "form_candidates": [
            1
        ],
        "perfect_forms": [
            1
        ],
        "evidence": {
            "1": [
                "I perfect: strong\/doubled stem with suff1"
            ]
        },
        "structural_trace": [],
        "status": "STRUCTURAL HYPOTHESIS"
    },
    "r008": {
        "form_t_index_candidates": [
            "1.1.4"
        ],
        "index_candidates": [
            4
        ],
        "status": "HYPOTHESIS",
        "comments": [],
        "details": [
            {
                "form": 1,
                "t": 1,
                "index": 4,
                "address": "1.1.4",
                "source": "perfect suffix fallback"
            }
        ]
    },
    "mod105_native_r008": {
        "status": "HYPOTHESIS",
        "candidates": [
            "1.1.4"
        ]
    },
    "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": 1,
        "accepted_details": [],
        "rejected_details": [
            {
                "address": "1.1.4",
                "form": 1,
                "t": 1,
                "index": 4,
                "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"
                ]
            }
        ],
        "accepted_roots_by_address": [],
        "original_skeleton": "علمت",
        "stem_skeleton": "علم",
        "addresses": [
            "1.1.4"
        ],
        "details": [
            {
                "address": "1.1.4",
                "form": 1,
                "t": 1,
                "index": 4,
                "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"
                ]
            }
        ],
        "status": "ORDER_COMPATIBLE",
        "comments": [
            "Accepted roots: none; structural verification only, not dictionary or conjugator validation.",
            "Preliminary\/incomplete candidates: 1 row(s); see rejected_details separately."
        ]
    },
    "r009_dictionary_exact_root_mod103": [],
    "r007_text": "R006 Forms: 1; Voice: active-perfect; T: 1; HYPOTHESIS",
    "mod035_form_t_index": [
        {
            "code": "1.1.4",
            "form": 1,
            "t": 1,
            "index": 4,
            "family": "suff1",
            "source": "R006 + R007 + physical suffix"
        }
    ],
    "r007_t_candidates": [
        1
    ],
    "r007_voice": "active-perfect",
    "r007_status": "HYPOTHESIS",
    "nominal_evidence": "",
    "resolved_findings": [],
    "dictionary_root_verification": {
        "status": "VALIDATED",
        "roots": [
            "علم"
        ],
        "records": [
            {
                "id": 1851,
                "root": "علم"
            },
            {
                "id": 1871,
                "root": "علم"
            }
        ],
        "reason": "Extracted root found in dictionary; no full-token comparison required"
    },
    "legacy_record_verification": {
        "status": "VALIDATED",
        "records": [
            {
                "id": "1851",
                "root": "علم"
            }
        ],
        "root_records": [
            {
                "id": "1851",
                "root": "علم"
            },
            {
                "id": "1871",
                "root": "علم"
            }
        ],
        "roots": [
            "علم"
        ],
        "reason": "",
        "tested": 0,
        "untestable": 1
    }
}
Dictionary records for candidate roots (2)
Record 1851 · root علم
{
    "root": "علم",
    "arabic": "علم",
    "english": "to know, be aware",
    "urdu": "جاننا، علم رکھنا",
    "verbalnoun117": "عِلْم",
    "verbalnoun2": "مَعْرِفَة",
    "verbalnoun3": "",
    "activeparticiple115": "عَالِم",
    "passiveparticiple116": "مَعْلُوم",
    "activepast11": "عَلِمَ",
    "activeimperfect12": "يَعْلَمُ",
    "imperative113": "اِعْلَمْ",
    "root_type": "triliteral",
    "form": 1
}
Record 1871 · root علم
{
    "root": "علم",
    "arabic": "علم",
    "english": "to learn",
    "urdu": "سیکھنا",
    "verbalnoun117": "تَعَلُّم",
    "verbalnoun2": "",
    "verbalnoun3": "",
    "activeparticiple115": "مُتَعَلِّم",
    "passiveparticiple116": "مُتَعَلَّم",
    "activepast11": "تَعَلَّمَ",
    "activeimperfect12": "يَتَعَلَّمُ",
    "imperative113": "تَعَلَّمْ",
    "root_type": "triliteral",
    "form": "V"
}
#2نَفْسٌROOT VALIDATED · Record 2546Form.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 (9 fields)
Root typesurface-test
VoiceUndetermined
Normalized stemنفس
Prefixنَ
Internal vowelssukun
Length3
Analysis statusMatched
Analysis token (normalized input)نَفْسٌ
Root candidates (all)وفس / نفس / فوس / فيس
Verification & records (6 fields)
Dictionary root statusVALIDATED
Matching record IDs2546
Root-associated record IDs (legacy verification)2546
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 (tanwin)
New R007 (isolated diagnostic)R006 Forms: unresolved; Voice: nominal; 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وفس: mth-w imperfect: person prefix + two surface radicals; initial waw omitted | نفس: three radicals | فوس: hollow w (prefixed contracted) | فيس: hollow y (prefixed contracted)
Extended diagnostics: patterns, traces and source evidence
Suffix-family evidence (MOD-032)
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: suff_nouns [1]
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: nominal
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: 2546; no full-token validation required
وفس — No English translation found in loaded dictionary
نفس — Base English translation
Record 2546 · to breathe, to self
فوس — No English translation found in loaded dictionary
فيس — No English translation found in loaded dictionary
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenنَفْسٌ
R-L — Raw Length (code points including marks)6
R-L — Raw Letter Count3
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["suff_nouns"]
S-I — Physical Suffix Indices{"suff_nouns":[1]}
P-R — Existing Pattern Evidence{"وفس":{"mth-w imperfect: person prefix + two surface radicals; initial waw omitted":"mth-w imperfect: person prefix + two surface radicals; initial waw omitted"},"نفس":{"three radicals":"three radicals"},"فوس":{"hollow w (prefixed contracted)":"hollow w (prefixed contracted)"},"فيس":{"hollow y (prefixed contracted)":"hollow y (prefixed contracted)"}}
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": [
                    {
                        "root": "نفس",
                        "pattern_id": "1.20.fa3l",
                        "form": 1,
                        "t": 20,
                        "matched_stem": "نَفْس",
                        "segmentation": [
                            "terminal_case_removed"
                        ],
                        "status": "STRUCTURAL_CANDIDATE"
                    },
                    {
                        "root": "نفس",
                        "pattern_id": "R011.T20.fa3l",
                        "form": 1,
                        "t": 20,
                        "matched_stem": "نَفْس",
                        "segmentation": [
                            "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": [],
                "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": "YES",
                "matches": [
                    {
                        "id": "1.20.fa3l",
                        "form": 1,
                        "template": "{r0}َ{r1}ْ{r2}",
                        "expected": "نَفْس",
                        "status": "confirmed",
                        "matched_stem": "نَفْس",
                        "segmentation": [
                            "terminal_case_removed"
                        ]
                    },
                    {
                        "id": "R011.T20.fa3l",
                        "form": 1,
                        "template": "{r0}َ{r1}ْ{r2}",
                        "expected": "نَفْس",
                        "status": "structural_candidate",
                        "matched_stem": "نَفْس",
                        "segmentation": [
                            "terminal_case_removed"
                        ]
                    }
                ],
                "tested": 18,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [
                    {
                        "root": "نفس",
                        "pattern_id": "1.20.fa3l",
                        "form": 1,
                        "t": 20,
                        "matched_stem": "نَفْس",
                        "segmentation": [
                            "terminal_case_removed"
                        ],
                        "status": "STRUCTURAL_CANDIDATE"
                    },
                    {
                        "root": "نفس",
                        "pattern_id": "R011.T20.fa3l",
                        "form": 1,
                        "t": 20,
                        "matched_stem": "نَفْس",
                        "segmentation": [
                            "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": [],
                "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": [
                    {
                        "root": "نفس",
                        "pattern_id": "1.20.fa3l",
                        "form": 1,
                        "t": 20,
                        "matched_stem": "نَفْس",
                        "segmentation": [
                            "terminal_case_removed"
                        ],
                        "status": "STRUCTURAL_CANDIDATE"
                    },
                    {
                        "root": "نفس",
                        "pattern_id": "R011.T20.fa3l",
                        "form": 1,
                        "t": 20,
                        "matched_stem": "نَفْس",
                        "segmentation": [
                            "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": [],
                "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": [
                    {
                        "root": "نفس",
                        "pattern_id": "1.20.fa3l",
                        "form": 1,
                        "t": 20,
                        "matched_stem": "نَفْس",
                        "segmentation": [
                            "terminal_case_removed"
                        ],
                        "status": "STRUCTURAL_CANDIDATE"
                    },
                    {
                        "root": "نفس",
                        "pattern_id": "R011.T20.fa3l",
                        "form": 1,
                        "t": 20,
                        "matched_stem": "نَفْس",
                        "segmentation": [
                            "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": [],
                "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": 2,
        "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": {
            "وفس": {
                "mth-w imperfect: person prefix + two surface radicals; initial waw omitted": "mth-w imperfect: person prefix + two surface radicals; initial waw omitted"
            },
            "نفس": {
                "three radicals": "three radicals"
            },
            "فوس": {
                "hollow w (prefixed contracted)": "hollow w (prefixed contracted)"
            },
            "فيس": {
                "hollow y (prefixed contracted)": "hollow y (prefixed contracted)"
            }
        },
        "findings": {
            "suff_nouns": [
                1
            ]
        },
        "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: nominal; T: unresolved; UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)",
    "mod035_form_t_index": [],
    "r007_t_candidates": [],
    "r007_voice": "nominal",
    "r007_status": "UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)",
    "nominal_evidence": "tanwin",
    "resolved_findings": [],
    "dictionary_root_verification": {
        "status": "VALIDATED",
        "roots": [
            "وفس",
            "نفس",
            "فوس",
            "فيس"
        ],
        "records": [
            {
                "id": 2546,
                "root": "نفس"
            }
        ],
        "reason": "Extracted root found in dictionary; no full-token comparison required"
    },
    "legacy_record_verification": {
        "status": "VALIDATION_PENDING",
        "records": [],
        "root_records": [
            {
                "id": "2546",
                "root": "نفس"
            }
        ],
        "roots": [
            "وفس",
            "نفس",
            "فوس",
            "فيس"
        ],
        "reason": "Generator adapter not connected or candidate untestable",
        "tested": 0,
        "untestable": 1
    }
}
Dictionary records for candidate roots (1)
Record 2546 · root نفس
{
    "root": "نفس",
    "arabic": "نفس",
    "english": "to breathe, to self",
    "urdu": "سانس لینا، جان",
    "verbalnoun117": "نَفْس",
    "verbalnoun2": "تَنَفُّس",
    "verbalnoun3": "",
    "activeparticiple115": "نَافِس",
    "passiveparticiple116": "مَنْفُوس",
    "activepast11": "نَفَسَ",
    "activeimperfect12": "يَنْفُسُ",
    "imperative113": "اِنْفُسْ",
    "root_type": "triliteral",
    "form": 1
}
#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 · long-a
Length—
Analysis statusND EXACT: 29.2
English (ND)what
Urdu (ND)کیا
Category (ND)interrogative
Subcategory (ND)interrogative noun
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)4
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": 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: 29.2",
        "nd_english": "what",
        "nd_urdu": "کیا",
        "nd_category": "interrogative",
        "nd_subcategory": "interrogative noun",
        "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": "nominal",
    "r007_status": "UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)",
    "nominal_evidence": "tanwin",
    "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 · long-a
Length—
Analysis statusND EXACT: 40.2
English (ND)not
Urdu (ND)نہیں
Category (ND)particle
Subcategory (ND)negative particle
POS (ND)negative 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)4
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": 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: 40.2",
        "nd_english": "not",
        "nd_urdu": "نہیں",
        "nd_category": "particle",
        "nd_subcategory": "negative particle",
        "nd_pos": "negative particle"
    },
    "r006": {
        "form_candidates": [],
        "structural_trace": []
    },
    "r008": {
        "status": "NOT_RUN",
        "form_t_index_candidates": [],
        "comments": []
    },
    "mod105_native_r008": {
        "status": "NOT_RUN",
        "candidates": []
    },
    "mod105_controller_retained_sources": [],
    "r009": {
        "status": "NOT_RUN",
        "accepted_roots_by_address": [],
        "details": [],
        "comments": []
    },
    "r009_dictionary_exact_root_mod103": [],
    "r007_text": "ND — outside derived R007",
    "mod035_form_t_index": [],
    "r007_t_candidates": [],
    "r007_voice": "nominal",
    "r007_status": "UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)",
    "nominal_evidence": "tanwin",
    "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 · long-a
Length—
Analysis statusND EXACT: 41.8
English (ND)what / that which / as long as (contextual)
Urdu (ND)جو / جو کچھ / جب تک (سیاق کے مطابق)
Category (ND)particle
Subcategory (ND)relative / temporal-contextual expression
POS (ND)relative pronoun / temporal particle (contextual)
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)4
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": 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: 41.8",
        "nd_english": "what \/ that which \/ as long as (contextual)",
        "nd_urdu": "جو \/ جو کچھ \/ جب تک (سیاق کے مطابق)",
        "nd_category": "particle",
        "nd_subcategory": "relative \/ temporal-contextual expression",
        "nd_pos": "relative pronoun \/ temporal particle (contextual)"
    },
    "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": "nominal",
    "r007_status": "UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)",
    "nominal_evidence": "tanwin",
    "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 640R008 candidates: 1.1.4, 4.1.4Native R008: AMBIGUOUSSuffix: َتْ | Pronoun: | Role: | Stem: أَحْضَرR009: ORDER_COMPATIBLER008: AMBIGUOUSحضر
Suffixَتْ
Preserved stemأَحْضَر
Form.T.Index candidates (MOD-035)4.1.4
R008 finalized index hypotheses (MOD-068; read-only)1.1.4, 4.1.4
R009 execution status (MOD-099)ORDER_COMPATIBLE
R008 diagnostic status (MOD-068)AMBIGUOUS
Morphology & segmentation (9 fields)
Root typesurface-test
VoiceUndetermined
Normalized stemأحضر
Prefixأَ
Internal vowelssukun · a
Length4
Analysis statusMatched
Analysis token (normalized input)أَحْضَرَتْ
Root candidates (all)حضر
Verification & records (7 fields)
Dictionary root statusVALIDATED
Matching record IDs640
Root-associated record IDs (legacy verification)640
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
Roots after Form.T.Index (MOD-085; existing candidates)حضر
Rule diagnostics (7 fields)
Legacy R007 (reference only)Legacy R007 isolated
New R007 (isolated diagnostic)R006 Forms: 1, 4; Voice: active-perfect; T: 1; HYPOTHESIS + MOD-043 exact vowel patterns: 4.1
R009 other evidence (MOD-099)1.1.4 — ORDER_COMPATIBLE — حضر; 4.1.4 — ORDER_COMPATIBLE — حضر
MOD-105 native R008 statusAMBIGUOUS
MOD-105 native R008 candidates1.1.4, 4.1.4
R008 full-pattern guard (MOD-068)accepted=0; rejected=0; unverified=2 (counts reflect R008 hypotheses; authoritative expected_surface_units not supplied)
Structural patternsحضر: prefix + radicals
Extended diagnostics: patterns, traces and source evidence
Suffix-family evidence (MOD-032)
suff1: 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: suff1 [4]
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, 4
DCL-07Form IdentifierEVIDENCER006 forms: 1, 4; R007 voice: active-perfect
DCL-08T CategoriesEVIDENCER007 T candidates: 1
DCL-09Person / Declension IndexEVIDENCEActual prefix: أَ; compatible Form.T.Index: 4.1.4; prefix-person compatibility applied by MOD-038
DCL-10Dictionary VerificationEVIDENCEDictionary ROOT status: VALIDATED; matching record IDs: 640; no full-token validation required
حضر — Base English translation
Record 640 · to be present, to attend
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenأَحْضَرَتْ
R-L — Raw Length (code points including marks)10
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)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,4]
I-V — Internal Vowels (existing output)NOT AVAILABLE
S-T — Physical Suffix Families["suff1"]
S-I — Physical Suffix Indices{"suff1":[4]}
P-R — Existing Pattern Evidence{"حضر":{"prefix + radicals":"prefix + radicals"}}
R007 T Candidates[1]
R008 Index (parsed from existing candidates)[4]
R008 Form.T.Index Candidates["1.1.4","4.1.4"]
R008 StatusAMBIGUOUS
R008 Guard Accepted[]
R008 Guard Rejected[]
R008 Guard Unverified[{"address":"1.1.4","r007_consistency":"SUPPORTED AS INDEX HYPOTHESIS","structural_guard":"UNVERIFIED: no complete pattern supplied"},{"address":"4.1.4","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_COMPLETEAMBIGUOUSResult retained in token diagnostic evidence
R009HANDOFF_COMPLETEORDER_COMPATIBLEResult 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,
                    4
                ],
                "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,
                    4
                ],
                "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,
                    4
                ],
                "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,
                    4
                ],
                "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,
                    4
                ],
                "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,
                    4
                ],
                "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,
                    4
                ],
                "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,
                    4
                ],
                "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,
                    4
                ],
                "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,
                    4
                ],
                "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,
                    4
                ],
                "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": "AMBIGUOUS",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R009",
            "state": "HANDOFF_COMPLETE",
            "outcome": "ORDER_COMPATIBLE",
            "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": "",
        "nominal_core": "",
        "stem_length": 4,
        "root_candidates": [
            "حضر"
        ],
        "root_patterns": {
            "حضر": {
                "prefix + radicals": "prefix + radicals"
            }
        },
        "findings": {
            "suff1": [
                4
            ]
        },
        "status": "Matched"
    },
    "r006": {
        "form_candidates": [
            1,
            4
        ],
        "perfect_forms": [
            4
        ],
        "evidence": {
            "4": [
                "IV perfect strong template"
            ],
            "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.1.4",
            "4.1.4"
        ],
        "index_candidates": [
            4
        ],
        "status": "AMBIGUOUS",
        "comments": [],
        "details": [
            {
                "form": 1,
                "t": 1,
                "index": 4,
                "address": "1.1.4",
                "source": "perfect suffix fallback"
            },
            {
                "form": 4,
                "t": 1,
                "index": 4,
                "address": "4.1.4",
                "source": "perfect suffix fallback"
            }
        ]
    },
    "mod105_native_r008": {
        "status": "AMBIGUOUS",
        "candidates": [
            "1.1.4",
            "4.1.4"
        ]
    },
    "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": 1,
        "accepted_details": [],
        "rejected_details": [
            {
                "address": "1.1.4",
                "form": 1,
                "t": 1,
                "index": 4,
                "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": "4.1.4",
                "form": 4,
                "t": 1,
                "index": 4,
                "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"
                ]
            }
        ],
        "accepted_roots_by_address": [],
        "original_skeleton": "ءحضرت",
        "stem_skeleton": "ءحضر",
        "addresses": [
            "1.1.4",
            "4.1.4"
        ],
        "details": [
            {
                "address": "1.1.4",
                "form": 1,
                "t": 1,
                "index": 4,
                "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": "4.1.4",
                "form": 4,
                "t": 1,
                "index": 4,
                "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"
                ]
            }
        ],
        "status": "ORDER_COMPATIBLE",
        "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, 4; Voice: active-perfect; T: 1; HYPOTHESIS + MOD-043 exact vowel patterns: 4.1",
    "mod035_form_t_index": [
        {
            "code": "4.1.4",
            "form": 4,
            "t": 1,
            "index": 4,
            "family": "suff1",
            "source": "R006 + R007 + physical suffix"
        }
    ],
    "r007_t_candidates": [
        1
    ],
    "r007_voice": "active-perfect",
    "r007_status": "HYPOTHESIS + MOD-043 exact vowel patterns: 4.1",
    "nominal_evidence": "",
    "resolved_findings": [],
    "dictionary_root_verification": {
        "status": "VALIDATED",
        "roots": [
            "حضر"
        ],
        "records": [
            {
                "id": 640,
                "root": "حضر"
            }
        ],
        "reason": "Extracted root found in dictionary; no full-token comparison required"
    },
    "legacy_record_verification": {
        "status": "VALIDATION_PENDING",
        "records": [],
        "root_records": [
            {
                "id": "640",
                "root": "حضر"
            }
        ],
        "roots": [
            "حضر"
        ],
        "reason": "Generator adapter not connected or candidate untestable",
        "tested": 0,
        "untestable": 1
    }
}
Dictionary records for candidate roots (1)
Record 640 · root حضر
{
    "root": "حضر",
    "root_type": "triliteral",
    "arabic": "حَضَرَ",
    "english": "to be present, to attend",
    "urdu": "حاضر ہونا",
    "verbalnoun117": "حُضُور",
    "verbalnoun2": "حَضْر",
    "verbalnoun3": "",
    "activeparticiple115": "حَاضِر",
    "passiveparticiple116": "مَحْضُور",
    "activepast11": "حَضَرَ",
    "activeimperfect12": "يَحْضُرُ",
    "imperative113": "اِحْضُرْ",
    "passivepast17": "حُضِرَ",
    "passiveimperfect18": "يُحْضَرُ",
    "activeheavyemphatic16": "لَيَحْضُرَنَّ",
    "form": 1
}

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)

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