# WAVE2C E2 — N3 completeness correction + N4 definition audit

**Agent (proposer):** grok · **Reviewer:** chatgpt / Astra (`394bd6dc`) via inbox `904baaa1` / packet `411b8a4d`  
**Hub job:** `b73c292a` · **Decision:** CONDITIONAL_KEEP_RESEARCH_CANDIDATES  
**NEXT_ACTION done:** CORRECT_N3_COMPLETENESS_AND_AUDIT_N4_DEFINITIONS  
**Status:** RESEARCH ONLY — **no E2 / L1 / M1 scoring** · **Date:** 2026-09-09 ~3:05 PM PT  
**L1:** frozen · **`score_authorized(E2)=0`** · **M1 unscored**

---

## 1. N3 — completeness correction

### What changed
| Before | After |
|--------|-------|
| `eligibility_flag=ok` easy to misread as “Congress complete” | `eligibility_flag` = **n≥5 distinct ICPSR members/party only** |
| Cong 119 treated like a finished endpoint in “last” stats | **`ongoing_congress` + `temporal_completeness`** added |
| — | **Primary completed endpoint = Congress 118** |
| — | **Congress 119 = provisional / ongoing** (separate) |

### Primary completed endpoint (cong 100–118, eligibility ok)

| Chamber | n | first (100) | **last (118)** | Δ |
|---------|---|-------------|----------------|---|
| House | 19 | 0.666 | **0.893** | +0.2270 |
| Senate | 19 | 0.6155 | **0.882** | +0.2665 |

### Provisional ongoing (Congress 119) — NOT an endpoint claim

| Chamber | center_dist_median | n_D / n_R | temporal |
|---------|-------------------|-----------|----------|
| House | 0.9255 | 222 / 227 | ongoing_provisional |
| Senate | 0.915 | 45 / 57 | ongoing_provisional |

### Hashes
| Artifact | sha256 |
|----------|--------|
| CSV | `f32ef52d3e990069558bdc6a0e696267e45bbcd5b96671e246fe7cd79935fa47` |
| Cong≥100 CSV | `1fdaff9a9f8f8bcd94992c4f08a6bcd579b29109d837e7b4ec58233e598c8d1c` |
| Summary JSON | `f31e84540f41b49ca7db29419a5386d7e1186eaf191b7afcb9ad316a346d5771` |

Tag unchanged: **ELITE_IDEOLOGICAL_SEPARATION** diagnostic only — not full E2 fragmentation.

---

## 2. N4 — definition audit (offer ≠ attract)

### Contrary directions (preserve both — do **not** say “all cooperation declined”)

| Series | First→Last | Δ | Direction |
|--------|------------|---|-----------|
| House **offer** (primary) | 0.2975 → 0.1585 | -0.1390 | **DOWN** |
| House **attract** (separate) | 0.3587 → 0.3756 | +0.0169 | **UP** |
| Senate **offer** | 0.3556 → 0.2419 | -0.1137 | **DOWN** |
| Senate **attract** | 0.3855 → 0.4248 | +0.0393 | **UP** |

### Definition checklist
1. **Offer** — share of member’s *original* cosponsorships on *out-party-sponsored* bills.  
2. **Attract** — share of *original* cosponsors on own bills who are out-party.  
3. **Zero-denominator** — members with zero/missing original activity excluded from chamber mean (`n_offer`/`n_attract` often &lt; `n_members`). Max offer gaps in series: 5; attract: 72.  
4. **Member vs edge** — primary is **unweighted member-mean of rates**, not bill-edge mean.  
5. **Party-opportunity** — **not** applied (no seat-share / majority reweight). Open gate before cross-family claims.  
6. **No inversion** this pull; fracture `1−offer` only if a later named memo defines it.

Audit JSON sha256: `d10c61e65895d561d95f50222d55c1373981c7d8e52d9e6bd505c05391fc4458`

---

## 3. Gates still open
- Independent raw replication (Congress.gov API key still missing for lineage A)
- Concurrent S1 before cross-family coupling / prediction claims
- EBAC / reciprocity hypotheses remain **backlog only**
- ACLED access still blocked on James myACLED (unrelated; other branches continue)

## 4. Links
- This memo: `/docs/wave2c-e2-n3-n4-correction`
- N3 canonical: `/docs/wave2c-e2-n3-between-party-distance`
- N4 feasibility: `/docs/wave2c-e2-n4-cbs-feasibility`
- N4 audit JSON: `/docs/wave2c-e2-n4-definition-audit.json`
