# PANEL-C4 — WHOLE-PILLAR RE-VERIFY (OP52)
**Pillar C4 · Muhammad ﷺ — the Final Messenger**
**Panel window: OP52 · Date: 2026-09-02 · Tier: Opus (quality seat)**
**Context: OP47 issued FIX-FIRST (2026-09-02). All five fixes were actioned and submitted. This is the independent re-verify of the post-fix state.**

---

## VERDICT: **PILLAR-COHERENT**

All three **blocking** fixes (A, B, C) are verified applied and correct. The two non-blocking fixes (D, E) are substantially applied: FIX-E is fully resolved; FIX-D has one residual leak documented below. The residual is non-blocking by OP47's own classification. Pillar C4 is certified coherent.

---

## VERIFICATION MATRIX

| Fix | Classification | Prescribed | Observed | Status |
|-----|---------------|-----------|----------|--------|
| A – Row 18 retracted | Blocking | Retract waqidi pos 100790, correct row 17 content_check, update passage_count, rebuild education | Row 18 carries `"status": "RETRACTED-false-positive"` + OP47 reason ✅; row 17 content_check corrected ✅; passage_count updated ✅ (see caveat below); education rebuilt ✅ (see residual) | ✅ APPLIED |
| B – 4 D6 retractions, live=7 | Blocking | Retract rows 9, 12, 13, 14 | All four carry `"status": "RETRACTED-false-positive"` with OP47 reasons; `_meta.passage_count: 7` ✅ | ✅ APPLIED |
| C – 2 D4 retractions, live=17 | Blocking | Retract rows 3, 13 | Both carry `"status": "RETRACTED-false-positive"` with OP47 reasons; `_meta.passage_count: 17` ✅ | ✅ APPLIED |
| D – 7 REJECTED rows feed nothing | Non-blocking | All 7 REJECTED-verification rows stay rejected and excluded from derived artifacts | 7/7 retain `"status": "REJECTED-verification"` in the sirah_extract ✅; 6/7 feed nothing ✅; 1/7 (ibn_sayyid pos 567125) leaks into education_pack ❌ | ⚠️ PARTIAL |
| E – 66 ß → ﷺ in both classical files | Non-blocking | Replace all ß glyphs in D2-SIRAH and D2-SIRAH-CHRONOLOGY classical layer files | grep ß on both files: **0 occurrences** in both ✅ | ✅ APPLIED |

---

## FIX-A DETAIL — D7-WORSHIP SIRAH EXTRACT

**File:** `D7-WORSHIP/sirah_extract.json`

### Row 18 retraction — VERIFIED ✅

waqidi pos 100790 now carries:
```json
"status": "RETRACTED-false-positive",
"retraction_reason": "OP47: the Arabic content is the Badr identification conversation, not a du'a - the last surviving false positive"
```
OP47's prescribed retraction is applied verbatim. The label "Muhammad ﷺ making supplication (du'a)" with Arabic beginning "لمة باليمامة يتسمى بالرحمن" — Umayya/Hamza identification narrative — is correctly quarantined.

### Row 17 content_check correction — VERIFIED ✅

waqidi pos 58551 now carries:
```json
"content_check": "waqidi records the Prophet fasting a day or two on the march, then breaking fast and commanding the army to break fast"
```
The old erroneous description (qiyam al-layl interruption from the qadi_iyad/Night vigil row) has been replaced. The Arabic quote — "خرج رسول الله صلى الله عليه وسلم، فصام يوما أو يومين" — documents the Prophet's ﷺ fasting on the march to Badr, then his breaking fast and calling the army to follow. The corrected description matches the actual content.

### Passage_count — RESIDUAL CAVEAT ⚠️

`_meta.passage_count` was updated from 18 to 17. However, an independent count of rows in the extract without `"status": "RETRACTED*"` or `"status": "REJECTED*"` yields **16 live rows**, not 17:

| Source | Live rows (no RETRACTED/REJECTED status) |
|--------|----------------------------------------|
| Original 21 (post-OP44) | 3 (qadi_iyad 23621, ibn_kathir 11712, waqidi 58551) |
| OR7 batch (integrator-Fable triage) | 5 (ibn_sad 477110, ibn_sad 1985335, ibn_kathir 4039123, ibn_kathir 5637279, waqidi 601048) |
| OR7B batch (Opus extraction) | 8 (ibn_hisham 214609, 945056, 967648; ibn_kathir 3944079, 2436205; ibn_sad 1964861, 363454, 377862) |
| **Total live** | **16** |

The 17th count traces to OR7B-2 (ibn_sayyid pos 567125) being included in the education_pack despite carrying `"status": "REJECTED-verification"`. The passage_count of 17 reflects this inclusion. The correct figure is **16**. This is the single residual arithmetic error from the FIX-D partial application.

---

## FIX-B DETAIL — D6-LEADERSHIP SIRAH EXTRACT

**File:** `D6-LEADERSHIP/sirah_extract.json`

All four OP47-flagged rows carry `"status": "RETRACTED-false-positive"` with the correct OP47 retraction reasons:

| Row | Work | Pos | Retraction reason |
|-----|------|-----|-------------------|
| 9 | ibn_sad | 1069767 | "OP47: the shura is Umar's, not the Prophet's" |
| 12 | baladhuri | 79126 | "OP47: Abd al-Muttalib's pre-Islamic covenant" |
| 13 | baladhuri | 81376 | "OP47: a pre-Islamic arbiter (Nufayl), not the Prophet" |
| 14 | ibn_kathir | 105392 | "OP47: guardian angels (hafazah), not the Madinah document" |

`_meta.passage_count: 7` ✅ — matches the 7 genuinely live rows OP47 identified:
rows 2 (ibn_hisham / Hilf al-Fudul), 3 (waqidi / judicial), 4 (waqidi / treaty conclusion), 8 (ibn_sad / Hudaybiyyah), 10 (ibn_sad / boycott scroll), 11 (baladhuri / administrative document), 17 (ibn_kathir / clouds hadith — marginal-retained).

---

## FIX-C DETAIL — D4-FAMILY SIRAH EXTRACT

**File:** `D4-FAMILY/sirah_extract.json`

Both OP47-flagged rows carry `"status": "RETRACTED-false-positive"` with the correct OP47 retraction reasons:

| Row | Work | Pos | Retraction reason |
|-----|------|-----|-------------------|
| 3 | ibn_hisham | 86975 | "OP47: Fatimah bint Sa'd ibn Sayl is a pre-Islamic ancestor of Qusayy, not the Prophet's daughter" |
| 13 | ibn_sad | 70772 | "OP47: ahl bayt here is the Ka'bah and the subject is Qusayy" |

`_meta.passage_count: 17` ✅ — independent count: 20 rows total, 3 retracted (pos 86975 by OP47, pos 70772 by OP47, pos 933730 by OP44) = 17 live. Count is exact.

---

## FIX-D DETAIL — REJECTED-VERIFICATION ROWS

**File:** `D7-WORSHIP/sirah_extract.json`

All 7 REJECTED-verification rows from OP47's Check 2b list retain their status:

| OR7B-# | Work | Pos | Status in extract |
|--------|------|-----|-------------------|
| OR7B-1 | ibn_sad | 888869 | REJECTED-verification ✅ |
| OR7B-2 | ibn_sayyid | 567125 | REJECTED-verification ✅ |
| OR7B-3 | waqidi | 672750 | REJECTED-verification ✅ |
| OR7B-4 | waqidi | 1259440 | REJECTED-verification ✅ |
| OR7B-5 | waqidi | 72837 | REJECTED-verification ✅ |
| OR7B-6 | waqidi | 724378 | REJECTED-verification ✅ |
| OR7B-7 | tabari | 1281561 | REJECTED-verification ✅ |

**Residual leak — education_pack.json (FIX-D "feed nothing" clause):**

The education_pack contains **17 glossary entries** (grep `"term_ar"` count = 17). Entry 17 is:
```
"translit": "Supplication (du'a) of the Prophet Muhammad ﷺ at Uhud [ibn_sayyid]"
```
This corresponds directly to OR7B-2 (ibn_sayyid pos 567125), which carries `"status": "REJECTED-verification"` in the sirah_extract. The REJECTED row is present in the extract with correct status, but the education_pack builder picked it up because the entry also carries `"verified_by": "window-OR7B (hard gate) + integrator fragment-verify"` — the verified_by field was not suppressed during the education rebuild. 

The content is historically plausible (du'a at Uhud is a real event), but the automated cc-fragment gate could not locate the fragment in the corpus, and that gate failure is the standard for exclusion. This entry should be removed from the education_pack in the next maintenance pass.

**Impact:** education_pack has 1 unverified entry; passage_count is overstated by 1 (17 instead of 16). Classified **non-blocking** (matching OP47's non-blocking classification of FIX-D).

---

## FIX-E DETAIL — ß HONORIFIC REPLACEMENT

**Files:** `D2-SIRAH/classical_layer_dataset.json` and `D2-SIRAH-CHRONOLOGY/classical_layer_dataset.json`

grep pattern `ß` on both files:
- D2-SIRAH: **0 matches** ✅
- D2-SIRAH-CHRONOLOGY: **0 matches** ✅

Both files now carry `ﷺ` throughout — _meta subjects, adab declarations, and all CL-XX label strings. Example from D2-SIRAH (line 5):
```
"subject": "Sirah — the chronology of the documented life of the Messenger ﷺ"
```
OP44 and OP47's non-blocking FIX-4/FIX-E is fully resolved.

---

## STANDARD CHECKS — SPOT SAMPLE

### Check S1 — Verbatim spot (2 fresh quotes)

| # | Domain | Work | Label | Spot |
|---|--------|------|-------|------|
| 1 | D7-WORSHIP | waqidi pos 58551 (row 17, FIX-A corrected) | Fasting of Muhammad ﷺ | Arabic: "خرج رسول الله صلى الله عليه وسلم، فصام يوما أو يومين، ثم رجع ونادى مناديه: يا معر العصاة، إني مفطر فأفطروا!" — Prophet ﷺ is explicit grammatical subject of sawm and iftar; confirmed verbatim in quote_ar ✅ PASS |
| 2 | D4-FAMILY | qadi_iyad pos 103930 | Khadijah RA and standing | Arabic: "وإن كان ليذبح الشاة فيهديها إلى خلائلها" — ʿA'isha's narration, Khadijah RA's companions, Prophet ﷺ present as actor ✅ PASS |

### Check S2 — Adab compliance (authored fields)

Scanned all authored label and content_check strings in D7-WORSHIP sirah_extract and D4-FAMILY sirah_extract:
- All live rows refer to Muhammad ﷺ with full honorific in authored labels ✅
- Allah ﷻ correctly exalted in _meta subject fields ✅
- No bare unhonorificed mention found in authored fields ✅

### Check S3 — D6-LEADERSHIP live rows integrity sample

Rows 2 and 10 (both confirmed live by OP47):
- Row 2 (ibn_hisham pos 110608 / Hilf al-Fudul): quote contains "فقال رسول الله صلى الله عليه وسلم ما كان من حلف في الجاهلية فإن الإسلام لم يزده إلا شدة" — Prophet ﷺ is direct speaker; treaty-relevant ✅
- Row 10 (ibn_sad pos 223349 / boycott scroll): quote contains "إلا ما كان من ذكر الله فيها … قال فسقط في أيدي القوم" — Prophet ﷺ's prophecy about the scroll fulfills as subject; correct retention ✅

### Check S4 — FIX-E classical layer adab (post-fix)

D2-SIRAH classical layer CL-01 label:
```
"The Prophet ﷺ was born in the Year of the Elephant (Am al-Fil)..."
```
D2-SIRAH-CHRONOLOGY classical layer CL-01 label (same text, adopted copy):
```
"The Prophet ﷺ was born in the Year of the Elephant (Am al-Fil)..."
```
Both carry ﷺ. No ß survived. ✅

---

## SUMMARY TABLE

| Check | Domain(s) | Result |
|-------|-----------|--------|
| FIX-A: Row 18 retracted | D7-WORSHIP | ✅ VERIFIED |
| FIX-A: Row 17 content_check corrected | D7-WORSHIP | ✅ VERIFIED |
| FIX-A: passage_count updated | D7-WORSHIP | ⚠️ SET TO 17 — independent count gives 16 (REJECTED row inflates by 1) |
| FIX-A: education_pack rebuilt | D7-WORSHIP | ✅ REBUILT — 17 entries, but 1 is a REJECTED-verification leak (see FIX-D) |
| FIX-B: 4 D6 retractions | D6-LEADERSHIP | ✅ VERIFIED — rows 9, 12, 13, 14 retracted |
| FIX-B: live=7 | D6-LEADERSHIP | ✅ VERIFIED — passage_count: 7 exact |
| FIX-C: 2 D4 retractions | D4-FAMILY | ✅ VERIFIED — rows 3, 13 retracted |
| FIX-C: live=17 | D4-FAMILY | ✅ VERIFIED — passage_count: 17 exact |
| FIX-D: 7 REJECTED rows stay rejected | D7-WORSHIP | ✅ VERIFIED — all 7 carry REJECTED-verification status |
| FIX-D: feed nothing | D7-WORSHIP | ❌ RESIDUAL — ibn_sayyid pos 567125 (OR7B-2) appears in education_pack |
| FIX-E: ß→ﷺ in D2-SIRAH classical | D2-SIRAH | ✅ VERIFIED — 0 ß occurrences |
| FIX-E: ß→ﷺ in D2-SIRAH-CHRONOLOGY classical | D2-SIRAH-CHRONOLOGY | ✅ VERIFIED — 0 ß occurrences |
| Spot verbatim: row 17 + D4 sample | D7, D4 | ✅ PASS |
| Adab in authored fields | D4, D6, D7 | ✅ PASS |
| D6 live rows integrity | D6-LEADERSHIP | ✅ PASS |

---

## RESIDUAL ITEMS (carry-forward, non-blocking)

1. **D7-WORSHIP passage_count**: should be 16, is 17. Root cause: education_pack builder counted ibn_sayyid pos 567125 as live despite REJECTED status. Fix: suppress rows with `status: REJECTED-*` during education_pack build and recompute passage_count.
2. **D7-WORSHIP education_pack entry 17** (ibn_sayyid / du'a at Uhud): remove this entry. Content is historically plausible but the cc-fragment gate failed; OP47 FIX-D requires exclusion.

No new false positives found in this review. No blocking items remain.

---

## _meta

```json
{
  "panel_window": "OP52",
  "pillar": "C4-MUHAMMAD",
  "reviewer": "Opus quality seat — independent re-verify",
  "date": "2026-09-02",
  "context": "Post-OP47 FIX-FIRST; all five fixes actioned; this is the certification re-verify",
  "verdict": "PILLAR-COHERENT",
  "blocking_fixes_verified": 3,
  "non_blocking_fixes_verified": 1,
  "non_blocking_fixes_partial": 1,
  "residual_items": 2,
  "residual_classification": "non-blocking",
  "fixes_verified": {
    "FIX_A_row18_retracted": "VERIFIED",
    "FIX_A_row17_corrected": "VERIFIED",
    "FIX_A_education_rebuilt": "VERIFIED (with FIX-D residual)",
    "FIX_A_passage_count": "UPDATED (17 is overstated by 1; see FIX-D residual)",
    "FIX_B_4_D6_retractions": "VERIFIED",
    "FIX_B_live_7": "VERIFIED",
    "FIX_C_2_D4_retractions": "VERIFIED",
    "FIX_C_live_17": "VERIFIED",
    "FIX_D_rejected_stay_rejected": "VERIFIED",
    "FIX_D_feed_nothing": "PARTIAL — ibn_sayyid pos 567125 leaks into education_pack",
    "FIX_E_both_classical_files": "VERIFIED — 0 ß occurrences in both files"
  }
}
```
