# Phase 6: English Linguistic Engine - Research

**Researched:** 2026-04-10
**Domain:** English phonetics, syllable counting (stress-based), rhyme classification (IPA-based), Suno English pronunciation optimization
**Confidence:** HIGH

## Summary

Phase 6 extends the foundation English linguistic reference files (created in Phase 1, plan 01-03) into a complete, executable verification system. The two existing files -- `syllables.md` (101 lines) and `rhymes.md` (124 lines) -- already contain core rules in SI/ALORS format with IPA notation and worked examples. Phase 6's job is to deepen them following the same patterns established by Phase 5 for French: add edge cases, expand reference tables, formalize verification procedures into step-by-step checklists, and validate that Claude can perform phonetic analysis reliably.

The critical structural difference between English and French syllable counting is that English is a stress-timed language, not syllable-timed. In French, every syllable gets roughly equal time; in English, stressed syllables are spaced roughly equally and unstressed syllables compress between them. This means stress-beat alignment matters MORE than raw syllable count for English lyrics. The existing `syllables.md` already captures this insight ("L'alignement du stress est PLUS IMPORTANT que le nombre brut de syllabes"). Phase 6 must formalize stress analysis into the verification procedure, not just count syllables.

The second key difference is rhyme tolerance. English songwriting accepts a much broader rhyme spectrum than French. Where French has a strict phoneme-counting hierarchy (pauvre/suffisante/riche/richissime) with section-dependent minimums, English classifies rhymes by type (perfect/slant/near/eye/internal) and judges quality by genre appropriateness rather than strict phoneme counts. The existing `rhymes.md` already has this classification. Phase 6 needs to add: (1) an IPA-first verification procedure parallel to French (same anti-orthographic safeguard), (2) pre-classified rhyme pairs for common songwriting vocabulary, (3) orthographic traps specific to English, and (4) a scoring/suggestion workflow adapted to English's broader tolerance.

The third consideration is whether English needs a pronunciation guide for Suno parallel to French `pronunciation.md`. Research shows that Suno handles English pronunciation significantly better than French (English being its primary training language). However, English has its own pitfalls: heteronyms (read/read, live/live, tear/tear), numbers, acronyms, and proper nouns. The decision is to NOT create a separate `pronunciation.md` for English in Phase 6. The Suno-specific pronunciation concerns are narrower and can be integrated as notes within the existing two files. If a dedicated pronunciation file becomes necessary later, Phase 7 or 8 can add it.

**Primary recommendation:** Expand the two existing English reference files with: (1) formalized step-by-step verification procedures including stress analysis, (2) expanded ambiguous-syllable lookup table (30-50 words), (3) IPA-first rhyme verification procedure with orthographic traps, (4) pre-classified rhyme table for common songwriting words, (5) genre-adapted quality thresholds and suggestion workflow. The output is reference files, not code -- Claude reads and applies them. Follow Phase 5 patterns exactly.

## Standard Stack

This phase produces no code -- only enhanced markdown reference files that Claude reads and applies during track verification.

### Core

| Component | Location | Purpose | Why Standard |
|-----------|----------|---------|--------------|
| English syllable rules | `reference/linguistic/english/syllables.md` | Syllable counting with stress analysis, exceptions, ambiguous words | Already exists from Phase 1. Phase 6 expands with verification procedure, lookup table, stress analysis formalization. |
| English rhyme classification | `reference/linguistic/english/rhymes.md` | Phonetic rhyme typing and quality assessment | Already exists. Phase 6 adds IPA-first procedure, orthographic traps, pre-classified table, suggestion workflow. |

### Supporting (Read Only)

| Component | Location | Purpose | When to Use |
|-----------|----------|---------|-------------|
| Suno format reference | `reference/suno/format.md` | Character limits, language handling | When verifying Suno constraints |
| French linguistic files | `reference/linguistic/french/*.md` | Structural pattern reference | To ensure consistent format and approach across languages |
| Glossary | `reference/glossary.md` | Canonical terminology | Section names for quality thresholds |

### Alternatives Considered

| Instead of | Could Use | Tradeoff |
|------------|-----------|----------|
| Expanding existing 2 files | Creating additional files (e.g., `pronunciation.md`, `stress-table.md`) | English pronunciation for Suno is far less problematic than French. A separate pronunciation.md would be mostly empty padding. Heteronym notes fit inside syllables.md. Keep to 2 files for now. |
| Strict phoneme-count thresholds like French | Type-based assessment (perfect/slant/near) | English rhyme quality is better assessed by type than by phoneme count. The 4-tier French system doesn't map well to English where slant rhymes are perfectly acceptable. |
| Creating a CMU Dictionary lookup table | Curated ambiguous-word table | This is a markdown-only system with no code. A 134,000-word dictionary is impossible. A curated 30-50 word table of genuinely ambiguous words (fire, flower, every, comfortable, etc.) is practical and sufficient. |

## Architecture Patterns

### What Phase 6 Modifies

```
reference/linguistic/english/
  syllables.md          # EXTEND: add verification procedure, stress analysis, ambiguous-word table, validation tests
  rhymes.md             # EXTEND: add IPA-first procedure, orthographic traps, pre-classified table, suggestion workflow
```

No new files. No new directories. Phase 6 is purely about deepening the existing reference content, exactly as Phase 5 did for French.

### Pattern 1: Step-by-Step Verification Procedure (Syllable Counting with Stress)

**What:** A formalized, numbered procedure that Claude follows every time it counts syllables in English lyrics. Parallel to French 6-step procedure but adapted for English stress-based phonology.

**When to use:** Every time the create-track skill generates or verifies English lyrics.

**Why adapted from French:** The French procedure works well but English needs stress analysis added. In French, counting syllables IS the verification. In English, counting syllables is step 1; verifying stress alignment with musical beats is step 2.

**Proposed structure:**

```markdown
## Procedure de Verification des Syllabes Anglaises

**SI** les lyrics sont en anglais, **ALORS** executer cette procedure ligne par ligne:

### Etape 1: Segmenter la ligne en mots
Ecrire chaque mot separement. Inclure les contractions comme un seul mot (I'm, can't, wouldn't).

### Etape 2: Compter les syllabes de chaque mot
Pour chaque mot:
- Compter les sons vocaliques, pas les lettres voyelles
- Consulter la Table de Mots Ambigus si le mot y figure
- Appliquer les regles d'exception (-ed, -le/-ble/-tle, silent e, contractions)

### Etape 3: Identifier le stress pattern
Marquer chaque syllabe comme accentuee (FORTE) ou non-accentuee (faible).
Notation: MAJUSCULES pour les syllabes accentuees.

### Etape 4: Verifier l'alignement stress/temps
**SI** les syllabes accentuees tombent sur les temps forts (downbeats), **ALORS** bon alignement.
**SI** les syllabes accentuees tombent sur les temps faibles, **ALORS** signaler comme ATTENTION.

### Etape 5: Compter et presenter
Presenter la decomposition: mot1(N) + mot2(N) + ... = Total syllabes
Indiquer le stress pattern de la ligne.

### Etape 6: Comparer au range cible genre
Consulter la table des cibles par genre. Signaler si hors range.
```

### Pattern 2: IPA-First Rhyme Verification (Adapted for English Types)

**What:** A formalized procedure for classifying English rhymes using IPA, not spelling. Same anti-orthographic safeguard as French.

**Why IPA-first matters for English too:** English has even more orthographic traps than French. "love" /lʌv/ and "move" /muːv/ look like they rhyme but don't. "Through" /θruː/ and "blue" /bluː/ rhyme perfectly despite zero visual similarity. The LLM orthographic matching pitfall applies equally to English.

**Proposed structure:**

```markdown
## Procedure de Verification des Rimes Anglaises

### Etape 1: Identifier les paires de fin de ligne
Extraire les mots en fin de chaque ligne. Identifier les paires selon le schema.

### Etape 2: Transcrire en IPA
Pour chaque mot de la paire, transcrire en IPA.
ATTENTION: NE PAS se fier a l'orthographe.

### Etape 3: Identifier la derniere voyelle accentuee
En anglais, l'accent tonique determine le point de comparaison.

### Etape 4: Comparer les sons
Depuis la derniere voyelle accentuee, comparer voyelle + consonnes finales.

### Etape 5: Classifier par type
- Perfect: voyelle accentuee + tous les sons suivants identiques
- Slant: voyelle ou consonnes partagees mais pas les deux
- Near: similarite sonore sans correspondance exacte
- Eye: ressemblance visuelle sans correspondance phonetique
- Internal: rime a l'interieur d'une ligne

### Etape 6: Evaluer par genre et section
Consulter le guide par genre. Signaler les rimes inadaptees.
```

### Pattern 3: Orthographic Traps (English-Specific)

**What:** A curated table of word pairs that look like they should rhyme but don't (and vice versa), specific to English orthographic quirks.

**Why critical for English:** English spelling is notoriously irregular. The disconnect between spelling and pronunciation is arguably worse than French. Words like "cough" /kɒf/, "through" /θruː/, "tough" /tʌf/, "though" /ðoʊ/, and "bough" /baʊ/ all end in -ough but have completely different vowel sounds.

**Categories of English traps:**

1. **-ough words:** 7+ different pronunciations for the same spelling
2. **-ove words:** love /lʌv/ vs move /muːv/ vs cove /koʊv/
3. **-ead words:** lead /liːd/ vs lead /lɛd/ vs read /riːd/ vs read /rɛd/
4. **-ear words:** bear /bɛr/ vs hear /hɪr/ vs pear /pɛr/
5. **-ow words:** bow /baʊ/ vs bow /boʊ/ vs row /raʊ/ vs row /roʊ/
6. **-ind words:** mind /maɪnd/ vs wind /wɪnd/ vs wind /waɪnd/
7. **Silent letter pairs:** knight/night, know/no, write/right (these DO rhyme despite visual difference)

### Anti-Patterns to Avoid

- **Applying French phoneme-counting to English rhymes:** English does NOT use the pauvre/suffisante/riche/richissime hierarchy. Don't count shared phonemes to produce a score. Use type classification (perfect/slant/near) instead.

- **Ignoring stress alignment in favor of syllable count:** A line with perfect syllable count but misaligned stress will sound worse than a line with one syllable too many but correct stress. The verification procedure must prioritize stress.

- **Treating all contractions as single syllables:** "wouldn't" is 2 syllables, not 1. "I'll" is 1. Contractions have specific syllable counts that must be verified individually.

- **Over-engineering the ambiguous word table:** English has thousands of words with variable pronunciation. The table should cover only the 30-50 most common in songwriting, not attempt to be exhaustive. The default rule handles unlisted words.

- **Creating a pronunciation.md for English:** Unlike French, English is Suno's primary language. A separate pronunciation guide would be mostly empty or redundant. Heteronym notes belong in syllables.md as a subsection.

## Don't Hand-Roll

| Problem | Don't Build | Use Instead | Why |
|---------|-------------|-------------|-----|
| Stress pattern identification | Custom stress rules per word | Curated stress table + musical heuristic (nouns stress 1st syllable, verbs stress 2nd) | English stress is too irregular for rules. A lookup table + heuristic covers 90%+ of cases. |
| Rhyme quality thresholds | Phoneme-counting like French | Type-based classification (perfect/slant/near) with genre guidance | English rhyme quality is qualitative not quantitative. A slant rhyme in rap is excellent; in a children's song chorus it's weak. |
| Syllable counting for ambiguous words | Rule-based disambiguation | Lookup table with tempo/style guidance | Words like "fire" (1 or 2), "every" (2 or 3) depend on musical context, not rules. |
| English pronunciation guide | Full Suno pronunciation file | Notes within syllables.md about heteronyms + existing Suno format.md language rules | Suno handles English well. Only heteronyms and acronyms are genuine risks. |

**Key insight:** The core challenge of Phase 6 is the same as Phase 5 -- making linguistic rules reliably executable by an LLM. But the rules themselves are different: English is stress-based and rhyme-tolerant, French is syllable-based and rhyme-strict. The procedures must reflect this difference while maintaining the same format and rigor.

## Common Pitfalls

### Pitfall 1: LLM Syllable Counting Inaccuracy (Same as French)

**What goes wrong:** Claude miscounts syllables in English, particularly on words with silent letters, complex vowel clusters, and variable pronunciation.

**Why it happens:** PhonologyBench (2024) documented significant LLM weaknesses in syllable counting. The gap is slightly smaller for English than for French (English is better represented in training data), but still substantial. Claude processes text as tokens, not phonemes.

**How to avoid:**
1. Force step-by-step decomposition (show every word, every syllable breakdown)
2. Use lookup table for ambiguous words
3. Include validation examples (known-answer self-checks)
4. Default to shorter pronunciation for fast tempo, longer for slow tempo

**Warning signs:** Syllable counts that don't match when you sing the line. Inconsistent counts for the same word across different lines. Counts that skip the decomposition step.

### Pitfall 2: Orthographic Rhyme Matching (Same Core Issue, Different Traps)

**What goes wrong:** Claude matches rhymes by spelling similarity. "love" and "move" are classified as rhyming (both end in -ove). "Through" and "blue" are classified as non-rhyming (no shared letters).

**Why it happens:** Same as French -- LLMs are trained on text, not speech. English spelling is even more disconnected from pronunciation than French.

**How to avoid:**
1. IPA transcription mandatory before any rhyme comparison (same safeguard as French)
2. Include English-specific orthographic trap tables (-ough, -ove, -ead, -ear, -ow families)
3. Include "false traps" (pairs that look different but DO rhyme, like through/blue, knight/right)
4. Every rhyme table entry includes IPA, not just spelling

**Warning signs:** Rhyme classifications that correlate with spelling similarity. Missing rhymes between words with different spellings but same sounds.

### Pitfall 3: Stress Misalignment Not Detected

**What goes wrong:** Claude counts syllables correctly but doesn't flag stress misalignment. A line like "I went to the STORE today to BUY some THINGS" has correct syllable count but natural stress alignment, while "toDAY I'm GOing TO the STORE" forces unnatural stress on "to" and "the."

**Why it happens:** Stress analysis is harder than syllable counting. It requires understanding both lexical stress (dictionary-level) and sentence-level prosody (emphasis patterns).

**How to avoid:**
1. Include stress analysis as a required step in the verification procedure (not optional)
2. Provide common stress patterns for frequent English words in the lookup table
3. Heuristic: content words (nouns, verbs, adjectives, adverbs) are stressed; function words (articles, prepositions, pronouns) are unstressed
4. Flag when function words fall on expected downbeats

**Warning signs:** Lines that "scan" correctly by count but feel awkward when sung. Consistent stress on articles and prepositions.

### Pitfall 4: Over-Strict Rhyme Requirements for Modern Genres

**What goes wrong:** Perfect rhymes are required everywhere, leading to forced or cliche rhymes. Sophisticated slant rhymes that work perfectly in context are flagged as errors.

**Why it happens:** The verification system may be calibrated too strictly, applying pop chorus standards to all sections and genres.

**How to avoid:**
1. Genre-dependent quality standards (rap PREFERS slant/near over perfect for sophistication)
2. Section-dependent expectations (chorus can demand more precision than verses)
3. Never flag slant rhymes as errors -- flag them as the TYPE and let genre context determine quality
4. Multisyllabic rhyme bonus: "education/situation" should be celebrated, not just classified

**Warning signs:** Every slant rhyme flagged for replacement. Monosyllabic perfect rhymes suggested as "improvements" to multisyllabic slant rhymes.

### Pitfall 5: Variable-Syllable Words Handled Inconsistently

**What goes wrong:** "fire" is counted as 1 syllable in line 3 and 2 syllables in line 7 of the same song, without justification.

**Why it happens:** Words with variable syllable counts (fire, flower, every, comfortable, interesting) genuinely have two valid pronunciations. Without a consistent rule, Claude may default differently each time.

**How to avoid:**
1. The lookup table provides BOTH counts with guidance: fast tempo = short, slow tempo = long
2. Within a single song, the same word should be counted the same way (consistency rule)
3. If a word appears multiple times, the FIRST usage establishes the count for the whole song
4. Genre override: rap = always short count; ballad = default long count

**Warning signs:** Same word with different syllable counts in the same song. No note explaining the chosen count for ambiguous words.

## Code Examples

These are markdown reference file examples -- the system is zero-code.

### Example 1: Ambiguous-Word Lookup Table (for syllables.md)

```markdown
### Table de Mots Ambigus

**SI** le mot est dans cette table, **ALORS** utiliser le nombre de syllabes indique selon le contexte.
**SI** le mot n'est pas dans cette table, **ALORS** compter les sons vocaliques et signaler si incertain.
**Regle de coherence:** dans un meme track, un mot ambigu garde le meme nombre de syllabes partout.

#### Mots avec diphtongue + /r/ ou /l/ (1 ou 2 syllabes)

| Mot | Lent/Formel | Rapide/Parle | IPA (lent) | IPA (rapide) | Notes |
|-----|-------------|--------------|------------|--------------|-------|
| fire | 2 (fi-er) | 1 (fire) | /faɪ.ər/ | /faɪr/ | Diphtongue + r |
| tire | 2 (ti-er) | 1 (tire) | /taɪ.ər/ | /taɪr/ | Diphtongue + r |
| hour | 2 (hou-er) | 1 (hour) | /aʊ.ər/ | /aʊr/ | Diphtongue + r |
| flower | 2 (flow-er) | 1 (flowr) | /flaʊ.ər/ | /flaʊr/ | Diphtongue + r |
| power | 2 (pow-er) | 1 (powr) | /paʊ.ər/ | /paʊr/ | Diphtongue + r |
| tower | 2 (tow-er) | 1 (towr) | /taʊ.ər/ | /taʊr/ | Diphtongue + r |
| shower | 2 (show-er) | 1 (showr) | /ʃaʊ.ər/ | /ʃaʊr/ | Diphtongue + r |
| liar | 2 (li-ar) | 1 (liar) | /laɪ.ər/ | /laɪr/ | Diphtongue + r |
| buyer | 2 (buy-er) | 1 (buyr) | /baɪ.ər/ | /baɪr/ | Diphtongue + r |
| file | 2 (fi-ul) | 1 (file) | /faɪ.əl/ | /faɪl/ | Diphtongue + l |
| royal | 2 (roy-al) | 2 (roy-al) | /rɔɪ.əl/ | /rɔɪ.əl/ | Toujours 2 |
| loyal | 2 (loy-al) | 2 (loy-al) | /lɔɪ.əl/ | /lɔɪ.əl/ | Toujours 2 |

#### Mots avec voyelle reduite (2 ou 3 syllabes)

| Mot | Lent/Formel | Rapide/Parle | IPA (lent) | IPA (rapide) | Notes |
|-----|-------------|--------------|------------|--------------|-------|
| every | 3 (ev-er-y) | 2 (ev-ry) | /ɛv.ər.i/ | /ɛv.ri/ | Schwa elide |
| different | 3 (dif-fer-ent) | 2 (diff-rent) | /dɪf.ər.ənt/ | /dɪf.rənt/ | Schwa elide |
| several | 3 (sev-er-al) | 2 (sev-ral) | /sɛv.ər.əl/ | /sɛv.rəl/ | Schwa elide |
| family | 3 (fam-i-ly) | 2 (fam-ly) | /fæm.ɪ.li/ | /fæm.li/ | Voyelle reduite |
| camera | 3 (cam-er-a) | 2 (cam-ra) | /kæm.ər.ə/ | /kæm.rə/ | Schwa elide |
| memory | 3 (mem-or-y) | 2 (mem-ry) | /mɛm.ər.i/ | /mɛm.ri/ | Schwa elide |
| history | 3 (his-tor-y) | 2 (his-try) | /hɪs.tər.i/ | /hɪs.tri/ | Schwa elide |
| mystery | 3 (mys-ter-y) | 2 (mys-try) | /mɪs.tər.i/ | /mɪs.tri/ | Schwa elide |
| evening | 3 (eve-ning) | 2 (ev-ning) | /iːv.nɪŋ/ | /iːv.nɪŋ/ | Parfois 2 meme formel |
| heaven | 2 (heav-en) | 2 (heav-en) | /hɛv.ən/ | /hɛv.ən/ | Toujours 2 |

#### Mots avec 3 ou 4 syllabes

| Mot | Lent/Formel | Rapide/Parle | IPA (lent) | IPA (rapide) | Notes |
|-----|-------------|--------------|------------|--------------|-------|
| comfortable | 4 (com-for-ta-ble) | 3 (comf-ter-ble) | /kʌm.fər.tə.bəl/ | /kʌmf.tər.bəl/ | Voyelle reduite |
| interesting | 4 (in-ter-est-ing) | 3 (in-trest-ing) | /ɪn.tər.ɛs.tɪŋ/ | /ɪn.trɛs.tɪŋ/ | Schwa elide |
| chocolate | 3 (choc-o-late) | 2 (choc-late) | /tʃɒk.ə.lɪt/ | /tʃɒk.lɪt/ | Voyelle reduite |
| beautiful | 3 (beau-ti-ful) | 3 (beau-ti-ful) | /bjuː.tɪ.fəl/ | /bjuː.tɪ.fəl/ | Toujours 3 |
| desperate | 3 (des-per-ate) | 2 (des-prate) | /dɛs.pər.ɪt/ | /dɛs.prɪt/ | Schwa elide |
| separate (adj) | 3 (sep-a-rate) | 2 (sep-rate) | /sɛp.ər.ɪt/ | /sɛp.rɪt/ | Adjectif |
| separate (v) | 3 (sep-a-rate) | 3 (sep-a-rate) | /sɛp.ə.reɪt/ | /sɛp.ə.reɪt/ | Verbe toujours 3 |
| favorite | 3 (fa-vor-ite) | 2 (fav-rite) | /feɪ.vər.ɪt/ | /feɪv.rɪt/ | Schwa elide |
| literally | 4 (lit-er-al-ly) | 3 (lit-ral-ly) | /lɪt.ər.əl.i/ | /lɪt.rəl.i/ | Schwa elide |
| naturally | 4 (nat-ur-al-ly) | 3 (nat-ral-ly) | /nætʃ.ər.əl.i/ | /nætʃ.rəl.i/ | Schwa elide |
```

### Example 2: Orthographic Trap Table (for rhymes.md)

```markdown
### Orthographic Traps

#### Words that LOOK like they rhyme but DON'T (spelling match, sound mismatch)

| Mot 1 | IPA | Mot 2 | IPA | Pourquoi pas |
|-------|-----|-------|-----|-------------|
| love | /lʌv/ | move | /muːv/ | /ʌv/ vs /uːv/ — voyelles differentes malgre -ove commun |
| cough | /kɒf/ | through | /θruː/ | /ɒf/ vs /uː/ — terminaisons completement differentes malgre -ough commun |
| though | /ðoʊ/ | tough | /tʌf/ | /oʊ/ vs /ʌf/ — -ough prononce differemment |
| bough | /baʊ/ | cough | /kɒf/ | /aʊ/ vs /ɒf/ — encore -ough different |
| read (present) | /riːd/ | read (past) | /rɛd/ | Heteronyme — meme orthographe, sons differents |
| wind (air) | /wɪnd/ | wind (tourner) | /waɪnd/ | Heteronyme — /ɪ/ vs /aɪ/ |
| lead (guider) | /liːd/ | lead (metal) | /lɛd/ | Heteronyme — /iː/ vs /ɛ/ |
| bear | /bɛr/ | hear | /hɪr/ | /ɛr/ vs /ɪr/ — voyelles differentes malgre -ear commun |
| pear | /pɛr/ | near | /nɪr/ | /ɛr/ vs /ɪr/ — meme piege -ear |
| food | /fuːd/ | good | /ɡʊd/ | /uː/ vs /ʊ/ — voyelles differentes malgre -ood commun |
| blood | /blʌd/ | mood | /muːd/ | /ʌ/ vs /uː/ — -ood avec 3 prononciations differentes |
| home | /hoʊm/ | some | /sʌm/ | /oʊ/ vs /ʌ/ — voyelles differentes malgre -ome commun |
| bone | /boʊn/ | gone | /ɡɒn/ | /oʊ/ vs /ɒ/ — meme piege -one |
| come | /kʌm/ | home | /hoʊm/ | /ʌ/ vs /oʊ/ — -ome avec 2 prononciations |
| have | /hæv/ | gave | /ɡeɪv/ | /æ/ vs /eɪ/ — voyelles differentes malgre -ave commun |
| put | /pʊt/ | but | /bʌt/ | /ʊ/ vs /ʌ/ — voyelles differentes malgre -ut commun |
| height | /haɪt/ | weight | /weɪt/ | /aɪ/ vs /eɪ/ — voyelles differentes malgre -eight commun |

#### Words that DON'T LOOK like they rhyme but DO (spelling mismatch, sound match)

| Mot 1 | IPA | Mot 2 | IPA | Type | Notes |
|-------|-----|-------|-----|------|-------|
| through | /θruː/ | blue | /bluː/ | Perfect | /uː/ identique — orthographe completement differente |
| knight | /naɪt/ | light | /laɪt/ | Perfect | /aɪt/ identique — lettres silencieuses |
| weight | /weɪt/ | late | /leɪt/ | Perfect | /eɪt/ identique — -eight = -ate |
| great | /ɡreɪt/ | straight | /streɪt/ | Perfect | /eɪt/ identique — -eat vs -aight |
| rough | /rʌf/ | stuff | /stʌf/ | Perfect | /ʌf/ identique — -ough = -uff |
| cough | /kɒf/ | off | /ɒf/ | Perfect | /ɒf/ identique — -ough = -off |
| eye | /aɪ/ | sky | /skaɪ/ | Perfect | /aɪ/ identique |
| buy | /baɪ/ | fly | /flaɪ/ | Perfect | /aɪ/ identique — orthographe totalement differente |
| ache | /eɪk/ | break | /breɪk/ | Perfect | /eɪk/ identique |
| enough | /ɪnʌf/ | stuff | /stʌf/ | Perfect | /ʌf/ identique |
| who | /huː/ | through | /θruː/ | Perfect | /uː/ identique |
| tongue | /tʌŋ/ | young | /jʌŋ/ | Perfect | /ʌŋ/ identique |
| laugh | /lɑːf/ | half | /hɑːf/ | Perfect | /ɑːf/ identique |

#### Faux Pieges (look wrong but actually rhyme -- test anti-over-rejection)

| Mot 1 | IPA | Mot 2 | IPA | Type | Notes |
|-------|-----|-------|-----|------|-------|
| said | /sɛd/ | bed | /bɛd/ | Perfect | ATTENTION: "said" se prononce /sɛd/, pas /seɪd/. Rime parfaite avec "bed". |
| done | /dʌn/ | fun | /fʌn/ | Perfect | ATTENTION: "done" = /dʌn/, rime avec -un words. |
| women | /wɪmɪn/ | -- | -- | -- | ATTENTION: "women" = /wɪmɪn/, ne rime PAS avec "omen" /oʊmən/. Mais "woman" /wʊmən/ ne rime pas avec "women" non plus. |
| busy | /bɪzi/ | dizzy | /dɪzi/ | Perfect | ATTENTION: "busy" = /bɪzi/, rime avec -izzy malgre l'orthographe en u. |
```

### Example 3: Heteronym Notes (for syllables.md)

```markdown
### Heteronymes (mots a surveiller pour Suno)

Les heteronymes anglais sont des mots ecrits identiquement mais prononces differemment selon le sens. Suno ne peut pas comprendre le contexte -- il faut resoudre l'ambiguite dans le texte.

| Mot | Sens 1 | IPA 1 | Syllabes | Sens 2 | IPA 2 | Syllabes | Comment desambiguiser |
|-----|--------|-------|----------|--------|-------|----------|----------------------|
| lead | guider | /liːd/ | 1 | metal | /lɛd/ | 1 | Contexte resout dans 90% des cas. Si ambigu, reformuler. |
| read | lire (present) | /riːd/ | 1 | lu (passe) | /rɛd/ | 1 | Temps du verbe resout. "I read" ambigu — preferer "I've read" pour passe. |
| live | vivre | /lɪv/ | 1 | en direct | /laɪv/ | 1 | "Live performance" = /laɪv/. "I live here" = /lɪv/. Si ambigu, reformuler. |
| tear | larme | /tɪr/ | 1 | dechirer | /tɛr/ | 1 | Contexte resout. "A tear fell" vs "tear it apart". |
| wind | vent | /wɪnd/ | 1 | enrouler | /waɪnd/ | 1 | Contexte resout. "The wind blows" vs "wind it up". |
| bow | arc/noeud | /boʊ/ | 1 | s'incliner | /baʊ/ | 1 | "Take a bow" /baʊ/ vs "bow and arrow" /boʊ/. |
| close | fermer | /kloʊz/ | 1 | proche | /kloʊs/ | 1 | "Close the door" /z/ vs "close to me" /s/. Phoneme final differe. |
| desert | desert (nom) | /dɛz.ərt/ | 2 | abandonner | /dɪ.zɜːrt/ | 2 | Stress differe: DES-ert vs de-SERT. |
| record | disque (nom) | /rɛk.ərd/ | 2 | enregistrer | /rɪ.kɔːrd/ | 2 | Stress differe: REC-ord vs re-CORD. |
| present | cadeau (nom) | /prɛz.ənt/ | 2 | presenter | /prɪ.zɛnt/ | 2 | Stress differe: PRES-ent vs pre-SENT. |
| minute | minute (nom) | /mɪn.ɪt/ | 2 | minuscule (adj) | /maɪ.njuːt/ | 2 | Rare en chanson. Contexte resout. |
| bass | basse (musique) | /beɪs/ | 1 | bar (poisson) | /bæs/ | 1 | En contexte musical, toujours /beɪs/. |
| produce | produits (nom) | /proʊ.djuːs/ | 2 | produire | /prə.djuːs/ | 2 | Stress differe: PROD-uce vs pro-DUCE. |
| contract | contrat (nom) | /kɒn.trækt/ | 2 | contracter | /kən.trækt/ | 2 | Stress differe: CON-tract vs con-TRACT. |
```

## State of the Art

| Old Approach | Current Approach | When Changed | Impact |
|--------------|------------------|--------------|--------|
| Perfect rhymes only | Full rhyme spectrum (perfect/slant/near) valued | 1990s hip-hop revolution | Slant and near rhymes are not "errors" -- they are sophisticated choices. The system must celebrate them, not flag them. |
| Syllable counting = the whole verification | Stress alignment + syllable counting | Always for English, but poorly documented | English verification is incomplete without stress analysis. Phase 6 adds this. |
| Dictionary-based syllable counting | Context-dependent (tempo, genre, style) | Modern songwriting practice | "fire" is 1 syllable at 140 BPM and 2 at 70 BPM. The lookup table captures this. |
| Prose-based rhyme description | IPA-mandatory rhyme classification | Phase 5 established for French | Phase 6 ports this safeguard to English. Orthographic matching is the #1 LLM rhyme error. |

**Not applicable to Phase 6:**
- No pronunciation.md needed for English (Suno handles English natively)
- No liaison rules needed (English doesn't have the liaison system)
- No nasal vowel system needed (English nasalization is allophonic, not phonemic)

## English vs French: Key Structural Differences for the Planner

| Aspect | French (Phase 5) | English (Phase 6) | Planner Implication |
|--------|-------------------|--------------------|--------------------|
| Syllable foundation | Syllable-timed, every syllable equal weight | Stress-timed, stressed syllables on beats | Add stress analysis step to verification procedure |
| Primary counting challenge | E muet, dierese/synerese | Ambiguous words, contractions, -ed endings | Lookup table of ambiguous words instead of dierese/synerese table |
| Rhyme classification | 4-tier phoneme count (pauvre to richissime) | Type-based (perfect/slant/near/eye/internal) | Quality thresholds based on type + genre, not phoneme count |
| Rhyme minimum thresholds | Section-dependent (chorus=riche 3+) | Genre-dependent (rap loves slant, pop prefers perfect) | Different threshold table structure |
| Pronunciation guide | Critical -- Suno struggles with French | Minor -- English is Suno's native language | No separate pronunciation.md file |
| Number of reference files | 3 (syllables, rhymes, pronunciation) | 2 (syllables, rhymes) | Fewer plans needed than Phase 5 |
| Orthographic traps | Nasal vowels, silent consonants, -ille/-tion | -ough family, -ove/-ood/-ear families, heteronyms | Different trap tables but same table format |
| Dierese/synerese table | 113 entries, suffix-organized | Ambiguous-word table, ~30-50 entries, category-organized | Smaller table, different categories (diphtongue+r, schwa elision, etc.) |

## Plan Structure Recommendation

Phase 5 had 3 plans (syllables, rhymes, pronunciation). Phase 6 needs only 2 plans since there is no pronunciation.md to create.

### Plan 06-01: English Syllable Verification
- Extend `syllables.md` from 101 lines to ~250-300 lines
- Add formalized verification procedure (adapted 6 steps with stress analysis)
- Add ambiguous-word lookup table (30-50 entries with IPA, organized by category)
- Add -ed ending rules formalized as lookup-friendly table
- Add contraction syllable table
- Add heteronym notes (15-20 common heteronyms with disambiguation)
- Add validation tests (5 known-answer self-checks)
- Change status: foundation -> complete

### Plan 06-02: English Rhyme Verification
- Extend `rhymes.md` from 124 lines to ~250-300 lines
- Add IPA-first verification procedure (adapted 6 steps)
- Add orthographic trap tables (15-20 false-negative pairs, 15-20 false-positive pairs, 5-10 false traps)
- Add pre-classified frequent rhyme table (30+ pairs organized by type)
- Add suggestion workflow for weak/mismatched rhymes
- Add multisyllabic rhyme celebration rules for rap
- Change status: foundation -> complete

## Open Questions

1. **Should stress pattern heuristics be formalized as rules?**
   - What we know: English stress follows patterns (nouns = 1st syllable, verbs = 2nd) but has many exceptions
   - What's unclear: Whether a rule-based approach is better than a lookup table for the ~50 most common content words in lyrics
   - Recommendation: Use heuristic + curated exceptions table. Don't attempt to cover all English words.

2. **How detailed should the -ough family trap table be?**
   - What we know: There are 7+ pronunciations of -ough (through, though, cough, rough, bough, thought, thorough)
   - What's unclear: Whether organizing traps by spelling family (-ough, -ove, -ood, etc.) or by trap type (look-alike/sound-alike) is more usable
   - Recommendation: Organize by spelling family, as that mirrors how Claude would encounter them (seeing the spelling, needing to determine pronunciation).

3. **What validation tests best expose English-specific LLM weaknesses?**
   - What we know: PhonologyBench found sentence complexity reduces accuracy. Words with silent letters and variable pronunciation are hardest.
   - What's unclear: Which specific test patterns would catch the most errors in a songwriting context
   - Recommendation: Tests should include: (1) a line with multiple -ed endings, (2) a line with ambiguous words (fire, every), (3) a line testing stress alignment, (4) a rhyme pair from each orthographic trap category, (5) a genre-dependent test (rap vs ballad for same lyrics).

## Sources

### Primary (HIGH confidence)
- Existing English reference files (`syllables.md`, `rhymes.md`) -- read and analyzed in full
- Existing French reference files (`syllables.md`, `rhymes.md`, `pronunciation.md`) -- read and analyzed as structural templates
- Phase 5 research, plans, and summaries -- read and analyzed for patterns to replicate
- Phase 1 plan 01-03 summary -- confirmed foundation decisions and established patterns

### Secondary (MEDIUM confidence)
- [PhonologyBench (2024)](https://arxiv.org/abs/2404.02456) -- LLM phonological skills benchmark showing 45-point gap on syllable counting
- [HookGenius Suno Pronunciation Fix Guide](https://hookgenius.app/learn/fix-suno-pronunciation/) -- 60+ phonetic fixes for Suno, confirming heteronym/acronym/number pitfalls
- [CMU Pronouncing Dictionary](http://www.speech.cs.cmu.edu/cgi-bin/cmudict) -- Reference standard for English phonetic transcription (ARPABET -> IPA mapping)
- [Pat Pattison on Language and Songwriting](https://www.patpattison.com/language-and-songwriting) -- Stress-melody alignment authority
- English -ed pronunciation rules from multiple ESL/linguistics sources -- three-way split (/ɪd/ after /t,d/; /t/ after voiceless; /d/ after voiced)

### Tertiary (LOW confidence)
- WebSearch results on English syllable ambiguity (multiple sources, consistent findings)
- WebSearch results on heteronym lists (Wikipedia, grammar sites)

## Metadata

**Confidence breakdown:**
- Standard stack: HIGH - files already exist, patterns established by Phase 5
- Architecture: HIGH - direct port of Phase 5 patterns with documented English-specific adaptations
- Pitfalls: HIGH - PhonologyBench findings apply, English trap categories well-documented
- Ambiguous word list: MEDIUM - curated from multiple sources but not exhaustive
- Stress analysis procedure: MEDIUM - heuristic-based, may need iteration

**Research date:** 2026-04-10
**Valid until:** 2026-05-10 (stable domain -- English phonology doesn't change)
