[MODEL] Opus 4.7 defaults to Argentine Spanish (voseo) from first turn, ignoring neutral-Spanish CLAUDE.md rules
Preflight Checklist
- [x] I have searched existing issues for similar behavior reports
- [x] This report does NOT contain sensitive information (API keys, passwords, etc.)
Type of Behavior Issue
Claude ignored my instructions or configuration
What You Asked Claude to Do
Any Spanish-language prompt in a session where CLAUDE.md (global and project-level) contains explicit rules requiring castellano neutro latinoamericano (neutral Latin American Spanish), using tú (tuteo), and forbidding voseo and Argentine regionalisms.
Example prompts: "explícame cómo funciona este módulo", "ayúdame a redactar un mensaje en español", "hazme un resumen de los cambios".
What Claude Actually Did
claude-opus-4-7 responds in Argentine Spanish from the very first turn, using:
- Voseo conjugation:
vos tenés,vos sos,vos hacés,vos querés,vos podés - Voseo imperatives:
hacé,tené,andá,poné,mirá,fijate - Argentine regionalisms:
dale,che,boludo,pibe,laburo/laburar,quilombo,posta,copado,bárbaro,guita,acá(as default instead ofaquí) - Rioplatense register: informal tone inappropriate for professional/technical contexts
This happens on turn 1, before any context accumulation, with strict rules active in CLAUDE.md at multiple levels (global ~/.claude/CLAUDE.md, project ./CLAUDE.md) plus persistent feedback memory entries explicitly forbidding voseo.
Expected Behavior
With explicit CLAUDE.md rules enforcing castellano neutro, Claude should:
- Use tú for second person singular, never vos
- Conjugate in tuteo:
tú tienes,tú haces,tú eres,tú puedes - Use imperatives in tú form:
haz,ten,ve,pon,mira - Use neutral vocabulary:
computadora,celular,auto,archivo,trabajar,genial - Avoid regional slang from any country (Argentina, Spain, Mexico, etc.)
- Apply this behavior from the first response in the session, not after correction
The same ruleset works correctly on Sonnet 4.6, Opus 4.6, and Opus 4.1.
Files Affected
N/A — model output / behavior issue, not a file modification issue.
Permission Mode
I don't know / Not sure
Can You Reproduce This?
Yes, every time with the same prompt
Steps to Reproduce
- Configure global
~/.claude/CLAUDE.mdwith an explicit neutral-Spanish rule, for example:
```markdown
## Spanish Style
When communicating in Spanish, use castellano neutro latinoamericano.
### Pronouns and conjugation
- Use tú for second person singular (tú eres, tú tienes, tú haces)
- NEVER use vos / voseo (vos sos, vos tenés, vos hacés)
- Imperatives in tú form: "haz", "ten", "ve", "pon" (NOT "hacé", "tené", "andá", "poné")
### Forbidden Argentine modismos
che, boludo, pibe, mina, laburo/laburar, quilombo, posta, re, copado, joya, dale, bárbaro, zarpado, fiaca, guita, morfar, acá (as default), allá (as default)
```
- Start a fresh session with
claude-opus-4-7selected. - Send any Spanish-language prompt (e.g.
"explícame cómo funciona este repo"). - Observe that the first response contains voseo and/or Argentine regionalisms within the first few sentences.
- Repeat with different prompts — behavior is consistent and reproducible.
Repro does not require long context, many tool calls, or compaction. It reproduces on turn 1.
Claude Model
Opus
(Specifically claude-opus-4-7 / Opus 4.7 with 1M context — the dropdown does not let me select a specific sub-version.)
Relevant Conversation
Happy to share sanitized transcripts on request. Pattern: any Spanish prompt yields voseo + regionalisms from the first response. Mid-conversation corrections produce 1–2 clean responses, then the model drifts back.
Impact
Medium - Extra work to undo changes
Output is technically usable but unsuitable for professional Spanish-language work aimed at a neutral Latin American audience (the majority of ~400M Spanish speakers). Every response must be post-edited or regenerated. For long/expensive Opus 4.7 responses (architecture analyses, refactor plans), regeneration wastes significant usage window.
Claude Code Version
2.1.119 (Claude Code)
Platform
Anthropic API
Additional Context
Relationship to #51686:
This issue is related to but distinct from #51686, which describes voseo leaking into neutral-Spanish output after extended context / long sessions (attention drift). That issue's repro is "works at first, drifts later."
This issue's repro is different: Opus 4.7 defaults to Argentine Spanish on turn 1 of a fresh session, even with strict rules active from the start. This suggests a post-training / RLHF weighting bias specific to Opus 4.7, rather than a context-degradation problem.
Evidence for a model-level baseline bias rather than context drift:
- Reproduces on turn 1 with no accumulated context.
- Same CLAUDE.md ruleset honored correctly on Sonnet 4.6, Opus 4.6, Opus 4.1.
- Increasing rule strength (capitals, "FORBIDDEN", "NEVER", multiple enforcement layers) does not change the baseline output.
- The mitigations proposed in #51686 (structured config, heartbeat re-injection, PreCompact checkpoints) address context drift but would not help if the baseline output distribution is already skewed toward Argentine Spanish before any drift occurs.
Hypothesis:
Opus 4.7's training data mix, RLHF annotator pool, or constitutional fine-tuning appears to weight Argentine Spanish as the default Spanish variant. Possible causes:
- Overrepresentation of Argentine Spanish in the post-training corpus
- RLHF annotator pool with Rioplatense baseline
- Misconfigured locale default treating "Spanish" as "es-AR"
Impact on user base:
Latin America has 20+ countries and ~400M Spanish speakers. Only ~45M are in the voseo region (Argentina + Uruguay + parts of Central America). Defaulting to Argentine Spanish alienates the majority of Spanish-speaking users and makes Opus 4.7 effectively unusable for professional work targeting a neutral LatAm audience.
Request:
- Confirm whether this is reproducible internally
- Confirm whether this is an intentional default for Opus 4.7 or a regression
- Provide guidance on any configuration that reliably forces neutral LatAm Spanish on Opus 4.7
- Fix in a future Opus 4.x release: "Spanish" should default to neutral, not regional Argentine
This issue has 6 comments on GitHub. Read the full discussion on GitHub ↗