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

MOD-111 — Single-token display audit
Token #1: فَسَنُيَسِّرُهُ — 4 display group(s)
Compound suffix matched (candidate)
Compound suffix matched (candidate)
Compound suffix matched (candidate)
Compound suffix matched (candidate)
Token #2: لِلْعُسْرَى — 1 display group(s)
Matched

← Flashcard view

Token navigation
#1فَسَنُيَسِّرُهُROOT VALIDATED · Record 2805R008 candidates: 2.2.14Native R008: UNRESOLVEDController-retained: 2.2.14 (MOD-093)Suffix: ُهُ | Pronoun: هُ | Role: object | Stem: نُيَسِّرR009: ORDER_COMPATIBLER008: UNRESOLVEDيسر
Suffixُهُ
Preserved stemنُيَسِّر
Form.T.Index candidates (MOD-035)2.2.14
R008 finalized index hypotheses (MOD-068; read-only)2.2.14
R009 execution status (MOD-099)ORDER_COMPATIBLE
R008 diagnostic status (MOD-068)UNRESOLVED
Morphology & segmentation (11 fields)
Root typesurface-test
VoiceUndetermined
Attached pronounهُ
Pronoun roleobject
Normalized stemنيسّر
Prefixفَسَ
Internal vowelsu · y/long-i · a · i
Length5
Analysis statusCompound suffix matched (candidate)
Analysis token (normalized input)نُيَسِّرُهُ
Root candidates (all)يسر
Verification & records (7 fields)
Dictionary root statusVALIDATED
Matching record IDs2805
Root-associated record IDs (legacy verification)2805
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 (8 fields)
Legacy R007 (reference only)Legacy R007 isolated
New R007 (isolated diagnostic)R006 Forms: 2; Voice: active-imperfect; T: 2; HYPOTHESIS
R009 other evidence (MOD-099)2.2.14 — ORDER_COMPATIBLE — يسر
MOD-105 native R008 statusUNRESOLVED
MOD-105 controller-retained candidates2.2.14 (MOD-093)
R008 diagnostic comments (MOD-068)Form 2 T2: no index verified
R008 full-pattern guard (MOD-068)accepted=0; rejected=0; unverified=1 (counts reflect R008 hypotheses; authoritative expected_surface_units not supplied)
Structural patternsيسر: prefix + medial shaddah
Extended diagnostics: patterns, traces and source evidence
Suffix-family evidence (MOD-032)
suff2: physically detected; full Form/T pattern required
NDCL / DCL Step Trace (expand)
NDCL-01Exact NDNO MATCHAlternative not matched
NDCL-02Prepend + NDNO MATCHAlternative not matched
NDCL-03ND + AppendNO MATCHAlternative not matched
NDCL-04Prepend + ND + AppendNO MATCHAlternative not matched
DCL-01Token LengthEVIDENCEToken: نُيَسِّرُهُ; source length field: 5
DCL-02Suffix RemovalEVIDENCEPhysical suffix: ُهُ; families/indices: suff2 [1, 4, 7, 13, 14]
DCL-03Length After Suffix RemovalEVIDENCEPreserved stem after suffix removal: نُيَسِّر
DCL-04Length Without VowelsEVIDENCENormalized stem: نيسّر; reported structural length: 5
DCL-05Root CandidatesEVIDENCERoot candidates: يسر
DCL-06Form CandidatesEVIDENCER006 Form candidates: 2
DCL-07Form IdentifierEVIDENCER006 forms: 2; R007 voice: active-imperfect
DCL-08T CategoriesEVIDENCER007 T candidates: 2
DCL-09Person / Declension IndexEVIDENCEActual prefix: فَسَ; compatible Form.T.Index: 2.2.14; prefix-person compatibility applied by MOD-038
DCL-10Dictionary VerificationEVIDENCEDictionary ROOT status: VALIDATED; matching record IDs: 2805; no full-token validation required
يسر — Base English translation
Record 2805 · to be easy; become easy
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenفَسَنُيَسِّرُهُ
R-L — Raw Length (code points including marks)15
R-L — Raw Letter Count7
Suffix Removed (upstream R001/R002)ُهُ
R-U — Preserved Stem (with marks)نُيَسِّر
R-U — Normalized Stemنيسّر
R-U Length (existing controller)5
R006 Actual Prefix Removedنُ
R006 Actual After Prefixيَسِّر
R006 Actual Prefix Arithmetic5 − 1 = 4 (نُ)
R006 Actual Form-Specific Marker Removedّ
R006 Actual After Form Removalيَسِر
R006 Actual Form Arithmetic4 − 1 = 3
R006 Form-Specific Adjustment RationaleForm II: remove the matched medial shaddah (one structural unit).
F-I — R006 Form Candidates[2]
I-V — Internal Vowels (existing output)NOT AVAILABLE
S-T — Physical Suffix Families["suff2"]
S-I — Physical Suffix Indices{"suff2":[1,4,7,13,14]}
P-R — Existing Pattern Evidence{"يسر":{"prefix + medial shaddah":"prefix + medial shaddah"}}
R007 T Candidates[2]
R008 Index (parsed from existing candidates)[14]
R008 Form.T.Index Candidates["2.2.14"]
R008 StatusUNRESOLVED
R008 Guard Accepted[]
R008 Guard Rejected[]
R008 Guard Unverified[{"address":"2.2.14","r007_consistency":"SUPPORTED AS EXISTING OVERLAPPING 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_COMPLETEUNRESOLVEDResult 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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": "UNRESOLVED",
            "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": "object",
        "analysis_token": "نُيَسِّرُهُ",
        "stem": "نُيَسِّر",
        "normalized_stem": "نيسّر",
        "prefix": "فَسَ",
        "nominal_prefix": "",
        "nominal_core": "",
        "stem_length": 5,
        "root_candidates": [
            "يسر"
        ],
        "root_patterns": {
            "يسر": {
                "prefix + medial shaddah": "prefix + medial shaddah"
            }
        },
        "findings": {
            "suff2": [
                1,
                4,
                7,
                13,
                14
            ]
        },
        "status": "Compound suffix matched (candidate)"
    },
    "r006": {
        "form_candidates": [
            2
        ],
        "perfect_forms": [],
        "evidence": {
            "2": [
                "II imperfect: u-person prefix + first radical fatha + second radical shaddah + third radical"
            ]
        },
        "structural_trace": {
            "2": [
                {
                    "source": "R006 primary suffix-stripped stem",
                    "matched_form": 2,
                    "matched_pattern": "II imperfect: person prefix + r0 + doubled r1 + r2",
                    "stem_input": "نُيَسِّر",
                    "physical_suffix_input": "ُهُ",
                    "full_input": "نُيَسِّرُهُ",
                    "prefix_removed": "نُ",
                    "after_prefix": "يَسِّر",
                    "form_marker_removed": "ّ",
                    "after_form_marker": "يَسِر",
                    "prefix_letter_count": 1,
                    "after_prefix_unit_count": 4,
                    "form_marker_letter_count": 1,
                    "remaining_letter_count": 3,
                    "form_marker_kind": "Form II: medial shaddah (one structural unit)"
                }
            ]
        },
        "status": "STRUCTURAL HYPOTHESIS"
    },
    "r008": {
        "form_t_index_candidates": [
            "2.2.14"
        ],
        "index_candidates": [],
        "status": "UNRESOLVED",
        "comments": [
            "Form 2 T2: no index verified"
        ],
        "details": []
    },
    "mod105_native_r008": {
        "status": "UNRESOLVED",
        "candidates": []
    },
    "mod105_controller_retained_sources": {
        "2.2.14": [
            "MOD-093"
        ]
    },
    "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": "2.2.14",
                "form": 2,
                "t": 2,
                "index": 14,
                "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": [
            "2.2.14"
        ],
        "details": [
            {
                "address": "2.2.14",
                "form": 2,
                "t": 2,
                "index": 14,
                "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: 2; Voice: active-imperfect; T: 2; HYPOTHESIS",
    "mod035_form_t_index": [
        {
            "code": "2.2.14",
            "form": 2,
            "t": 2,
            "index": 14,
            "family": "suff2",
            "source": "R006 + R007 + physical suffix"
        }
    ],
    "r007_t_candidates": [
        2
    ],
    "r007_voice": "active-imperfect",
    "r007_status": "HYPOTHESIS",
    "nominal_evidence": "",
    "resolved_findings": [],
    "dictionary_root_verification": {
        "status": "VALIDATED",
        "roots": [
            "يسر"
        ],
        "records": [
            {
                "id": 2805,
                "root": "يسر"
            }
        ],
        "reason": "Extracted root found in dictionary; no full-token comparison required"
    },
    "legacy_record_verification": {
        "status": "VALIDATION_PENDING",
        "records": [],
        "root_records": [
            {
                "id": "2805",
                "root": "يسر"
            }
        ],
        "roots": [
            "يسر"
        ],
        "reason": "Generator adapter not connected or candidate untestable",
        "tested": 0,
        "untestable": 1
    }
}
Dictionary records for candidate roots (1)
Record 2805 · root يسر
{
    "root": "يسر",
    "arabic": "يسر",
    "english": "to be easy; become easy",
    "urdu": "آسان ہونا",
    "verbalnoun117": "يُسْر",
    "verbalnoun2": "",
    "verbalnoun3": "",
    "activeparticiple115": "يَاسِر",
    "passiveparticiple116": "",
    "activepast11": "يَسَرَ",
    "activeimperfect12": "يَيْسِرُ",
    "imperative113": "",
    "root_type": "triliteral",
    "form": 1
}
#1فَسَنُيَسِّرُهُROOT VALIDATED · Record 2805Form.T.Index: pendingNative R008: UNRESOLVEDSuffix: ُهُ | Pronoun: هُ | Role: genitive | Stem: نُيَسِّرR009: UNRESOLVEDR008: UNRESOLVEDيسر
Suffixُهُ
Preserved stemنُيَسِّر
R009 execution status (MOD-099)UNRESOLVED
R008 diagnostic status (MOD-068)UNRESOLVED
Morphology & segmentation (11 fields)
Root typesurface-test
VoiceUndetermined
Attached pronounهُ
Pronoun rolegenitive
Normalized stemنيسّر
Prefixفَسَ
Internal vowelsu · y/long-i · a · i
Length5
Analysis statusCompound suffix matched (candidate)
Analysis token (normalized input)نُيَسِّرُهُ
Root candidates (all)يسر
Verification & records (6 fields)
Dictionary root statusVALIDATED
Matching record IDs2805
Root-associated record IDs (legacy verification)2805
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 (attached genitive pronoun)
New R007 (isolated diagnostic)R006 Forms: 2; Voice: active-imperfect; 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يسر: prefix + medial shaddah
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: 5
DCL-02Suffix RemovalEVIDENCEPhysical suffix: ُهُ; families/indices: suff_nouns [4]
DCL-03Length After Suffix RemovalEVIDENCEPreserved stem after suffix removal: نُيَسِّر
DCL-04Length Without VowelsEVIDENCENormalized stem: نيسّر; reported structural length: 5
DCL-05Root CandidatesEVIDENCERoot candidates: يسر
DCL-06Form CandidatesEVIDENCER006 Form candidates: 2
DCL-07Form IdentifierEVIDENCER006 forms: 2; R007 voice: active-imperfect
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: 2805; no full-token validation required
يسر — Base English translation
Record 2805 · to be easy; become easy
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenفَسَنُيَسِّرُهُ
R-L — Raw Length (code points including marks)15
R-L — Raw Letter Count7
Suffix Removed (upstream R001/R002)ُهُ
R-U — Preserved Stem (with marks)نُيَسِّر
R-U — Normalized Stemنيسّر
R-U Length (existing controller)5
R006 Actual Prefix Removedنُ
R006 Actual After Prefixيَسِّر
R006 Actual Prefix Arithmetic5 − 1 = 4 (نُ)
R006 Actual Form-Specific Marker Removedّ
R006 Actual After Form Removalيَسِر
R006 Actual Form Arithmetic4 − 1 = 3
R006 Form-Specific Adjustment RationaleForm II: remove the matched medial shaddah (one structural unit).
F-I — R006 Form Candidates[2]
I-V — Internal Vowels (existing output)NOT AVAILABLE
S-T — Physical Suffix Families["suff_nouns"]
S-I — Physical Suffix Indices{"suff_nouns":[4]}
P-R — Existing Pattern Evidence{"يسر":{"prefix + medial shaddah":"prefix + medial shaddah"}}
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_COMPLETESTRUCTURAL HYPOTHESISResult 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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": [
                    2
                ],
                "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": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R008",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R009",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R010",
            "state": "SKIPPED",
            "outcome": null,
            "reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
            "calls": 0
        },
        {
            "stage": "R011",
            "state": "HANDOFF_COMPLETE",
            "outcome": "DIAGNOSTIC_RESULT",
            "reason": "Read-only R011 results included in full diagnostic JSON",
            "calls": 1
        }
    ],
    "original_analysis_group": {
        "token_no": 1,
        "token": "فَسَنُيَسِّرُهُ",
        "expected": "",
        "form": "",
        "root_type": "surface-test",
        "voice": "Undetermined",
        "suffix": "ُهُ",
        "pronoun": "هُ",
        "pronoun_role": "genitive",
        "analysis_token": "نُيَسِّرُهُ",
        "stem": "نُيَسِّر",
        "normalized_stem": "نيسّر",
        "prefix": "فَسَ",
        "nominal_prefix": "",
        "nominal_core": "",
        "stem_length": 5,
        "root_candidates": [
            "يسر"
        ],
        "root_patterns": {
            "يسر": {
                "prefix + medial shaddah": "prefix + medial shaddah"
            }
        },
        "findings": {
            "suff_nouns": [
                4
            ]
        },
        "status": "Compound suffix matched (candidate)"
    },
    "r006": {
        "form_candidates": [
            2
        ],
        "perfect_forms": [],
        "evidence": {
            "2": [
                "II imperfect: u-person prefix + first radical fatha + second radical shaddah + third radical"
            ]
        },
        "structural_trace": {
            "2": [
                {
                    "source": "R006 primary suffix-stripped stem",
                    "matched_form": 2,
                    "matched_pattern": "II imperfect: person prefix + r0 + doubled r1 + r2",
                    "stem_input": "نُيَسِّر",
                    "physical_suffix_input": "ُهُ",
                    "full_input": "نُيَسِّرُهُ",
                    "prefix_removed": "نُ",
                    "after_prefix": "يَسِّر",
                    "form_marker_removed": "ّ",
                    "after_form_marker": "يَسِر",
                    "prefix_letter_count": 1,
                    "after_prefix_unit_count": 4,
                    "form_marker_letter_count": 1,
                    "remaining_letter_count": 3,
                    "form_marker_kind": "Form II: medial shaddah (one structural unit)"
                }
            ]
        },
        "status": "STRUCTURAL HYPOTHESIS"
    },
    "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: 2; Voice: active-imperfect; T: unresolved; UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)",
    "mod035_form_t_index": [],
    "r007_t_candidates": [],
    "r007_voice": "active-imperfect",
    "r007_status": "UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)",
    "nominal_evidence": "attached genitive pronoun",
    "resolved_findings": [],
    "dictionary_root_verification": {
        "status": "VALIDATED",
        "roots": [
            "يسر"
        ],
        "records": [
            {
                "id": 2805,
                "root": "يسر"
            }
        ],
        "reason": "Extracted root found in dictionary; no full-token comparison required"
    },
    "legacy_record_verification": {
        "status": "VALIDATION_PENDING",
        "records": [],
        "root_records": [
            {
                "id": "2805",
                "root": "يسر"
            }
        ],
        "roots": [
            "يسر"
        ],
        "reason": "Generator adapter not connected or candidate untestable",
        "tested": 0,
        "untestable": 1
    }
}
Dictionary records for candidate roots (1)
Record 2805 · root يسر
{
    "root": "يسر",
    "arabic": "يسر",
    "english": "to be easy; become easy",
    "urdu": "آسان ہونا",
    "verbalnoun117": "يُسْر",
    "verbalnoun2": "",
    "verbalnoun3": "",
    "activeparticiple115": "يَاسِر",
    "passiveparticiple116": "",
    "activepast11": "يَسَرَ",
    "activeimperfect12": "يَيْسِرُ",
    "imperative113": "",
    "root_type": "triliteral",
    "form": 1
}
#1فَسَنُيَسِّرُهُNO_ROOT_CANDIDATEForm.T.Index: pendingNative R008: UNRESOLVEDSuffix: ُهُ | Pronoun: هُ | Role: object | Stem: فَسَنُيَسِّرR009: UNRESOLVEDR008: UNRESOLVEDNo match
Suffixُهُ
Preserved stemفَسَنُيَسِّر
R009 execution status (MOD-099)UNRESOLVED
R008 diagnostic status (MOD-068)UNRESOLVED
Morphology & segmentation (9 fields)
Root typesurface-test
VoiceUndetermined
Attached pronounهُ
Pronoun roleobject
Normalized stemفسنيسّر
Internal vowelsa · a · u · y/long-i · a · i
Length7
Analysis statusCompound suffix matched (candidate)
Analysis token (normalized input)فَسَنُيَسِّرُهُ
Verification & records (2 fields)
Dictionary root statusNO_ROOT_CANDIDATE
Dictionary root verification explanationNo extracted root candidate
Rule diagnostics (4 fields)
Legacy R007 (reference only)Legacy R007 isolated
New R007 (isolated diagnostic)R006 Forms: unresolved; Voice: undetermined; T: unresolved; R006 UNRESOLVED
MOD-105 native R008 statusUNRESOLVED
R008 full-pattern guard (MOD-068)accepted=0; rejected=0; unverified=0 (counts reflect R008 hypotheses; authoritative expected_surface_units not supplied)
Extended diagnostics: patterns, traces and source evidence
Suffix-family evidence (MOD-032)
suff2: physically detected; full Form/T pattern required
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: 7
DCL-02Suffix RemovalEVIDENCEPhysical suffix: ُهُ; families/indices: suff2 [1, 4, 7, 13, 14]
DCL-03Length After Suffix RemovalEVIDENCEPreserved stem after suffix removal: فَسَنُيَسِّر
DCL-04Length Without VowelsEVIDENCENormalized stem: فسنيسّر; reported structural length: 7
DCL-05Root CandidatesEVIDENCERoot candidates: none reported
DCL-06Form CandidatesEVIDENCER006 Form candidates: none reported
DCL-07Form IdentifierEVIDENCER006 forms: unresolved; R007 voice: undetermined
DCL-08T CategoriesEVIDENCER007 T candidates: none reported
DCL-09Person / Declension IndexEVIDENCEActual prefix: (none); compatible Form.T.Index: none reported; prefix-person compatibility applied by MOD-038
DCL-10Dictionary VerificationEVIDENCEDictionary ROOT status: NO_ROOT_CANDIDATE; matching record IDs: none; no full-token validation required
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenفَسَنُيَسِّرُهُ
R-L — Raw Length (code points including marks)15
R-L — Raw Letter Count7
Suffix Removed (upstream R001/R002)ُهُ
R-U — Preserved Stem (with marks)فَسَنُيَسِّر
R-U — Normalized Stemفسنيسّر
R-U Length (existing controller)7
Prefix (controller fallback)NOT AVAILABLE
R006 Actual Prefix RemovedNOT AVAILABLE
R006 Actual After PrefixNOT AVAILABLE
R006 Actual Prefix ArithmeticNOT AVAILABLE
R006 Actual Form-Specific Marker RemovedNOT AVAILABLE
R006 Actual After Form RemovalNOT AVAILABLE
R006 Actual Form ArithmeticNOT AVAILABLE
R006 Form-Specific Adjustment RationaleNOT AVAILABLE
F-I — R006 Form Candidates[]
I-V — Internal Vowels (existing output)NOT AVAILABLE
S-T — Physical Suffix Families["suff2"]
S-I — Physical Suffix Indices{"suff2":[1,4,7,13,14]}
P-R — Existing Pattern Evidence[]
R007 T Candidates[]
R008 Index (parsed from existing candidates)[]
R008 Form.T.Index Candidates[]
R008 StatusUNRESOLVED
R008 Guard Accepted[]
R008 Guard Rejected[]
R008 Guard Unverified[]
Authoritative Full PatternNOT AVAILABLE
Authoritative Full Structural UnitsNOT AVAILABLE
Prefix / S-I Synchronization (existing verdict)NOT AVAILABLE
Read-only. R006 removal rows use only the actual trace captured by R006; no display-only stripping or morphology matching. The suffix-stripped stem is supplied upstream. The R008 index is parsed for display from existing Form.T.Index candidates, not independently recognized. Missing authoritative fields remain NOT AVAILABLE. [] is an observed empty result.

ACE Stage Audit (MOD-151)

StageExecutionOutcomeReason
R006HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R007HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R008HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R009HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R010SKIPPEDDictionary review queue is rendered after token loop; not a per-token verifier
R011HANDOFF_COMPLETEDIAGNOSTIC_RESULTRead-only R011 results included in full diagnostic JSON
Full token analysis and diagnostic evidence (all fields)
{
    "r011_mod151_read_only": {
        "": {
            "15": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 1,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "16": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 1,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "17": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": "NOT_TESTED",
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "18": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 2,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "19": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 2,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "20": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 18,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "21": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 3,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "22": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 3,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "23": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 2,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "24": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "25": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            }
        }
    },
    "stage_audit_mod151": [
        {
            "stage": "R006",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R007",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R008",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R009",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R010",
            "state": "SKIPPED",
            "outcome": null,
            "reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
            "calls": 0
        },
        {
            "stage": "R011",
            "state": "HANDOFF_COMPLETE",
            "outcome": "DIAGNOSTIC_RESULT",
            "reason": "Read-only R011 results included in full diagnostic JSON",
            "calls": 1
        }
    ],
    "original_analysis_group": {
        "token_no": 1,
        "token": "فَسَنُيَسِّرُهُ",
        "expected": "",
        "form": "",
        "root_type": "surface-test",
        "voice": "Undetermined",
        "suffix": "ُهُ",
        "pronoun": "هُ",
        "pronoun_role": "object",
        "analysis_token": "فَسَنُيَسِّرُهُ",
        "stem": "فَسَنُيَسِّر",
        "normalized_stem": "فسنيسّر",
        "prefix": "",
        "nominal_prefix": "",
        "nominal_core": "",
        "stem_length": 7,
        "root_candidates": [],
        "root_patterns": [],
        "findings": {
            "suff2": [
                1,
                4,
                7,
                13,
                14
            ]
        },
        "status": "Compound suffix matched (candidate)"
    },
    "r006": {
        "form_candidates": [],
        "perfect_forms": [],
        "evidence": [],
        "structural_trace": [],
        "status": "UNRESOLVED"
    },
    "r008": {
        "form_t_index_candidates": [],
        "index_candidates": [],
        "status": "UNRESOLVED",
        "comments": [],
        "details": []
    },
    "mod105_native_r008": {
        "status": "UNRESOLVED",
        "candidates": []
    },
    "mod105_controller_retained_sources": [],
    "r009": {
        "original": "فَسَنُيَسِّرُهُ",
        "remaining": "فَسَنُيَسِّر",
        "r005_root_candidate": "",
        "root_candidate": "",
        "root_length": 0,
        "accepted_root_candidates": [],
        "accepted_root_count": 0,
        "rejected_root_candidates": [],
        "rejected_root_count": 0,
        "accepted_details": [],
        "rejected_details": [],
        "accepted_roots_by_address": [],
        "original_skeleton": "فسنيسره",
        "stem_skeleton": "فسنيسر",
        "addresses": [],
        "details": [],
        "status": "UNRESOLVED",
        "comments": [
            "No R008 Form.T.Index hypothesis to verify"
        ]
    },
    "r009_dictionary_exact_root_mod103": [],
    "r007_text": "R006 Forms: unresolved; Voice: undetermined; T: unresolved; R006 UNRESOLVED",
    "mod035_form_t_index": [],
    "r007_t_candidates": [],
    "r007_voice": "undetermined",
    "r007_status": "R006 UNRESOLVED",
    "nominal_evidence": "",
    "resolved_findings": [],
    "dictionary_root_verification": {
        "status": "NO_ROOT_CANDIDATE",
        "roots": [],
        "records": [],
        "reason": "No extracted root candidate"
    },
    "legacy_record_verification": {
        "status": "NO_ROOT_CANDIDATE",
        "records": [],
        "roots": [],
        "reason": "R005 produced no root candidate"
    }
}
#1فَسَنُيَسِّرُهُNO_ROOT_CANDIDATEForm.T.Index: pendingNative R008: UNRESOLVEDSuffix: ُهُ | Pronoun: هُ | Role: genitive | Stem: فَسَنُيَسِّرR009: UNRESOLVEDR008: UNRESOLVEDNo match
Suffixُهُ
Preserved stemفَسَنُيَسِّر
R009 execution status (MOD-099)UNRESOLVED
R008 diagnostic status (MOD-068)UNRESOLVED
Morphology & segmentation (9 fields)
Root typesurface-test
VoiceUndetermined
Attached pronounهُ
Pronoun rolegenitive
Normalized stemفسنيسّر
Internal vowelsa · a · u · y/long-i · a · i
Length7
Analysis statusCompound suffix matched (candidate)
Analysis token (normalized input)فَسَنُيَسِّرُهُ
Verification & records (2 fields)
Dictionary root statusNO_ROOT_CANDIDATE
Dictionary root verification explanationNo extracted root candidate
Rule diagnostics (4 fields)
Legacy R007 (reference only)Nominal candidate (attached genitive pronoun)
New R007 (isolated diagnostic)R006 Forms: unresolved; Voice: undetermined; T: unresolved; UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)
MOD-105 native R008 statusUNRESOLVED
R008 full-pattern guard (MOD-068)accepted=0; rejected=0; unverified=0 (counts reflect R008 hypotheses; authoritative expected_surface_units not supplied)
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: 7
DCL-02Suffix RemovalEVIDENCEPhysical suffix: ُهُ; families/indices: suff_nouns [4]
DCL-03Length After Suffix RemovalEVIDENCEPreserved stem after suffix removal: فَسَنُيَسِّر
DCL-04Length Without VowelsEVIDENCENormalized stem: فسنيسّر; reported structural length: 7
DCL-05Root CandidatesEVIDENCERoot candidates: none reported
DCL-06Form CandidatesEVIDENCER006 Form candidates: none reported
DCL-07Form IdentifierEVIDENCER006 forms: unresolved; R007 voice: undetermined
DCL-08T CategoriesEVIDENCER007 T candidates: none reported
DCL-09Person / Declension IndexEVIDENCEActual prefix: (none); compatible Form.T.Index: none reported; prefix-person compatibility applied by MOD-038
DCL-10Dictionary VerificationEVIDENCEDictionary ROOT status: NO_ROOT_CANDIDATE; matching record IDs: none; no full-token validation required
ACE Structural Diagnostics (actual trace; unique values)
FeatureExisting / trace value
Full Tokenفَسَنُيَسِّرُهُ
R-L — Raw Length (code points including marks)15
R-L — Raw Letter Count7
Suffix Removed (upstream R001/R002)ُهُ
R-U — Preserved Stem (with marks)فَسَنُيَسِّر
R-U — Normalized Stemفسنيسّر
R-U Length (existing controller)7
Prefix (controller fallback)NOT AVAILABLE
R006 Actual Prefix RemovedNOT AVAILABLE
R006 Actual After PrefixNOT AVAILABLE
R006 Actual Prefix ArithmeticNOT AVAILABLE
R006 Actual Form-Specific Marker RemovedNOT AVAILABLE
R006 Actual After Form RemovalNOT AVAILABLE
R006 Actual Form ArithmeticNOT AVAILABLE
R006 Form-Specific Adjustment RationaleNOT AVAILABLE
F-I — R006 Form Candidates[]
I-V — Internal Vowels (existing output)NOT AVAILABLE
S-T — Physical Suffix Families["suff_nouns"]
S-I — Physical Suffix Indices{"suff_nouns":[4]}
P-R — Existing Pattern Evidence[]
R007 T Candidates[]
R008 Index (parsed from existing candidates)[]
R008 Form.T.Index Candidates[]
R008 StatusUNRESOLVED
R008 Guard Accepted[]
R008 Guard Rejected[]
R008 Guard Unverified[]
Authoritative Full PatternNOT AVAILABLE
Authoritative Full Structural UnitsNOT AVAILABLE
Prefix / S-I Synchronization (existing verdict)NOT AVAILABLE
Read-only. R006 removal rows use only the actual trace captured by R006; no display-only stripping or morphology matching. The suffix-stripped stem is supplied upstream. The R008 index is parsed for display from existing Form.T.Index candidates, not independently recognized. Missing authoritative fields remain NOT AVAILABLE. [] is an observed empty result.

ACE Stage Audit (MOD-151)

StageExecutionOutcomeReason
R006HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R007HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R008HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R009HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R010SKIPPEDDictionary review queue is rendered after token loop; not a per-token verifier
R011HANDOFF_COMPLETEDIAGNOSTIC_RESULTRead-only R011 results included in full diagnostic JSON
Full token analysis and diagnostic evidence (all fields)
{
    "r011_mod151_read_only": {
        "": {
            "15": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 1,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "16": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 1,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "17": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": "NOT_TESTED",
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "18": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 2,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "19": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 2,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "20": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 18,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "21": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 3,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "22": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 3,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "23": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 2,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "24": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "25": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            }
        }
    },
    "stage_audit_mod151": [
        {
            "stage": "R006",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R007",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R008",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R009",
            "state": "HANDOFF_COMPLETE",
            "outcome": "UNRESOLVED",
            "reason": "Result retained in token diagnostic evidence",
            "calls": 1
        },
        {
            "stage": "R010",
            "state": "SKIPPED",
            "outcome": null,
            "reason": "Dictionary review queue is rendered after token loop; not a per-token verifier",
            "calls": 0
        },
        {
            "stage": "R011",
            "state": "HANDOFF_COMPLETE",
            "outcome": "DIAGNOSTIC_RESULT",
            "reason": "Read-only R011 results included in full diagnostic JSON",
            "calls": 1
        }
    ],
    "original_analysis_group": {
        "token_no": 1,
        "token": "فَسَنُيَسِّرُهُ",
        "expected": "",
        "form": "",
        "root_type": "surface-test",
        "voice": "Undetermined",
        "suffix": "ُهُ",
        "pronoun": "هُ",
        "pronoun_role": "genitive",
        "analysis_token": "فَسَنُيَسِّرُهُ",
        "stem": "فَسَنُيَسِّر",
        "normalized_stem": "فسنيسّر",
        "prefix": "",
        "nominal_prefix": "",
        "nominal_core": "",
        "stem_length": 7,
        "root_candidates": [],
        "root_patterns": [],
        "findings": {
            "suff_nouns": [
                4
            ]
        },
        "status": "Compound suffix matched (candidate)"
    },
    "r006": {
        "form_candidates": [],
        "perfect_forms": [],
        "evidence": [],
        "structural_trace": [],
        "status": "UNRESOLVED"
    },
    "r008": {
        "form_t_index_candidates": [],
        "index_candidates": [],
        "status": "UNRESOLVED",
        "comments": [],
        "details": []
    },
    "mod105_native_r008": {
        "status": "UNRESOLVED",
        "candidates": []
    },
    "mod105_controller_retained_sources": [],
    "r009": {
        "original": "فَسَنُيَسِّرُهُ",
        "remaining": "فَسَنُيَسِّر",
        "r005_root_candidate": "",
        "root_candidate": "",
        "root_length": 0,
        "accepted_root_candidates": [],
        "accepted_root_count": 0,
        "rejected_root_candidates": [],
        "rejected_root_count": 0,
        "accepted_details": [],
        "rejected_details": [],
        "accepted_roots_by_address": [],
        "original_skeleton": "فسنيسره",
        "stem_skeleton": "فسنيسر",
        "addresses": [],
        "details": [],
        "status": "UNRESOLVED",
        "comments": [
            "No R008 Form.T.Index hypothesis to verify"
        ]
    },
    "r009_dictionary_exact_root_mod103": [],
    "r007_text": "R006 Forms: unresolved; Voice: undetermined; T: unresolved; UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)",
    "mod035_form_t_index": [],
    "r007_t_candidates": [],
    "r007_voice": "undetermined",
    "r007_status": "UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)",
    "nominal_evidence": "attached genitive pronoun",
    "resolved_findings": [],
    "dictionary_root_verification": {
        "status": "NO_ROOT_CANDIDATE",
        "roots": [],
        "records": [],
        "reason": "No extracted root candidate"
    },
    "legacy_record_verification": {
        "status": "NO_ROOT_CANDIDATE",
        "records": [],
        "roots": [],
        "reason": "R005 produced no root candidate"
    }
}
#2لِلْعُسْرَىROOT_NOT_FOUNDForm.T.Index: pendingNative R008: UNRESOLVEDSuffix: | Pronoun: | Role: | Stem: عُسْرَىR009: UNRESOLVEDR008: UNRESOLVEDعسر
Preserved stemعُسْرَى
R009 execution status (MOD-099)UNRESOLVED
R008 diagnostic status (MOD-068)UNRESOLVED
Morphology & segmentation (11 fields)
Root typesurface-test
VoiceUndetermined
Normalized stemعسرى
Prefixلِلْ
Nominal prefixlil
Nominal coreعُسْرَى
Internal vowelsu · sukun · a · alif-maqsura
Length4
Analysis statusMatched
Analysis token (normalized input)عُسْرَى
Root candidates (all)عسر
Verification & records (4 fields)
Dictionary root statusROOT_NOT_FOUND
Dictionary root verification explanationNo extracted root found in dictionary
Legacy token records tested (no match)0
Legacy token records not testable0
Rule diagnostics (5 fields)
Legacy R007 (reference only)Nominal candidate (definite article)
New R007 (isolated diagnostic)R006 Forms: unresolved; Voice: undetermined; T: unresolved; UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)
MOD-105 native R008 statusUNRESOLVED
R008 full-pattern guard (MOD-068)accepted=0; rejected=0; unverified=0 (counts reflect R008 hypotheses; authoritative expected_surface_units not supplied)
Structural patternsعسر: Form I T23-2
Extended diagnostics: patterns, traces and source evidence
Suffix-family evidence (MOD-032)
surface_zero: 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: (none); families/indices: surface_zero [0]
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: none reported
DCL-07Form IdentifierEVIDENCER006 forms: unresolved; R007 voice: undetermined
DCL-08T CategoriesEVIDENCER007 T candidates: none reported
DCL-09Person / Declension IndexEVIDENCEActual prefix: لِلْ; compatible Form.T.Index: none reported; prefix-person compatibility applied by MOD-038
DCL-10Dictionary VerificationEVIDENCEDictionary ROOT status: ROOT_NOT_FOUND; matching record IDs: none; no full-token validation required
عسر — 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)11
R-L — Raw Letter Count6
Suffix Removed (upstream R001/R002)NOT AVAILABLE
R-U — Preserved Stem (with marks)عُسْرَى
R-U — Normalized Stemعسرى
R-U Length (existing controller)4
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["surface_zero"]
S-I — Physical Suffix Indices{"surface_zero":[0]}
P-R — Existing Pattern Evidence{"عسر":{"Form I T23-2":"Form I T23-2"}}
R007 T Candidates[]
R008 Index (parsed from existing candidates)[]
R008 Form.T.Index Candidates[]
R008 StatusUNRESOLVED
R008 Guard Accepted[]
R008 Guard Rejected[]
R008 Guard Unverified[]
Authoritative Full PatternNOT AVAILABLE
Authoritative Full Structural UnitsNOT AVAILABLE
Prefix / S-I Synchronization (existing verdict)NOT AVAILABLE
Read-only. R006 removal rows use only the actual trace captured by R006; no display-only stripping or morphology matching. The suffix-stripped stem is supplied upstream. The R008 index is parsed for display from existing Form.T.Index candidates, not independently recognized. Missing authoritative fields remain NOT AVAILABLE. [] is an observed empty result.

ACE Stage Audit (MOD-151)

StageExecutionOutcomeReason
R006HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R007HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R008HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R009HANDOFF_COMPLETEUNRESOLVEDResult retained in token diagnostic evidence
R010SKIPPEDDictionary review queue is rendered after token loop; not a per-token verifier
R011HANDOFF_COMPLETEDIAGNOSTIC_RESULTRead-only R011 results included in full diagnostic JSON
Full token analysis and diagnostic evidence (all fields)
{
    "r011_mod151_read_only": {
        "عسر": {
            "15": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 1,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [
                    "definite_article_al",
                    "possible_attached_preposition"
                ],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "16": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 1,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [
                    "definite_article_al",
                    "possible_attached_preposition"
                ],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "17": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": "NOT_TESTED",
                "dictionary_fields": [],
                "nominal_evidence": [
                    "definite_article_al",
                    "possible_attached_preposition"
                ],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "18": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 2,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [
                    "definite_article_al",
                    "possible_attached_preposition"
                ],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "19": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 2,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [
                    "definite_article_al",
                    "possible_attached_preposition"
                ],
                "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": [
                    "definite_article_al",
                    "possible_attached_preposition"
                ],
                "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": [
                    "definite_article_al",
                    "possible_attached_preposition"
                ],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "22": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 3,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [
                    "definite_article_al",
                    "possible_attached_preposition"
                ],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "23": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 2,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [
                    "definite_article_al",
                    "possible_attached_preposition"
                ],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "24": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [
                    "definite_article_al",
                    "possible_attached_preposition"
                ],
                "form_hypotheses": [
                    1
                ],
                "t20_recovered_roots": [],
                "t21_recovered_roots": []
            },
            "25": {
                "status": "NOT_TESTED",
                "matches": [],
                "tested": 0,
                "skipped": 0,
                "inventory_complete": false,
                "dictionary_t17": null,
                "dictionary_fields": [],
                "nominal_evidence": [
                    "definite_article_al",
                    "possible_attached_preposition"
                ],
                "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": "lil",
        "nominal_core": "عُسْرَى",
        "stem_length": 4,
        "root_candidates": [
            "عسر"
        ],
        "root_patterns": {
            "عسر": {
                "Form I T23-2": "Form I T23-2"
            }
        },
        "findings": {
            "surface_zero": [
                0
            ]
        },
        "status": "Matched"
    },
    "r006": {
        "form_candidates": [],
        "perfect_forms": [],
        "evidence": [],
        "structural_trace": [],
        "status": "UNRESOLVED"
    },
    "r008": {
        "form_t_index_candidates": [],
        "index_candidates": [],
        "status": "UNRESOLVED",
        "comments": [],
        "details": []
    },
    "mod105_native_r008": {
        "status": "UNRESOLVED",
        "candidates": []
    },
    "mod105_controller_retained_sources": [],
    "r009": {
        "original": "عُسْرَى",
        "remaining": "عُسْرَى",
        "r005_root_candidate": "",
        "root_candidate": "",
        "root_length": 0,
        "accepted_root_candidates": [],
        "accepted_root_count": 0,
        "rejected_root_candidates": [],
        "rejected_root_count": 0,
        "accepted_details": [],
        "rejected_details": [],
        "accepted_roots_by_address": [],
        "original_skeleton": "عسرى",
        "stem_skeleton": "عسرى",
        "addresses": [],
        "details": [],
        "status": "UNRESOLVED",
        "comments": [
            "No R008 Form.T.Index hypothesis to verify"
        ]
    },
    "r009_dictionary_exact_root_mod103": [],
    "r007_text": "R006 Forms: unresolved; Voice: undetermined; T: unresolved; UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)",
    "mod035_form_t_index": [],
    "r007_t_candidates": [],
    "r007_voice": "undetermined",
    "r007_status": "UNRESOLVED + NOMINAL EVIDENCE (overlaps retained)",
    "nominal_evidence": "definite article",
    "resolved_findings": [],
    "dictionary_root_verification": {
        "status": "ROOT_NOT_FOUND",
        "roots": [
            "عسر"
        ],
        "records": [],
        "reason": "No extracted root found in dictionary"
    },
    "legacy_record_verification": {
        "status": "ROOT_NOT_FOUND",
        "records": [],
        "root_records": [],
        "roots": [
            "عسر"
        ],
        "reason": "",
        "tested": 0,
        "untestable": 0
    }
}

MOD-152: 0 dictionary-rejected speculative rows hidden when validated siblings exist; original candidate inventory retained.

MOD-014 display consolidation: 0 equivalent R004 rows hidden; raw R004/R001-R003 candidates preserved. Different root, family/index, pronoun role, or R006/R007 results remain separate.

R010 — Dictionary Root Review Queue (MOD-033)

#2 · لِلْعُسْرَى — ROOT_NOT_FOUND
Roots: عسر
No extracted root found in dictionary
View dictionary for عسر
If embedding is blocked: open in this window

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