Aoede's English voice had a tell. It read "read" right in the present tense and wrong in the past: "I read it yesterday" came out "I reed it yesterday," every time. The same bug hit "reread" and "wound," the past of "wind," which it pronounced like a wound you bandage.
Most of the fix was already in the box. The local voice does the standard thing for these same-spelling, different-sound words: tag the part of speech, then look the pronunciation up in a dictionary keyed by that tag. The right entry for past-tense "read" was sitting there under the past-tense keys. Two things kept it from being found. The lookup collapsed the fine verb-tense tag down to a plain "verb" before searching, and there is no plain-verb entry for "read," so it always fell through to the default "reed." And Apple's on-device tagger, which I use instead of a Python model, doesn't report tense at all. "Read" is spelled the same in past and present, so the word by itself carries no signal to recover.
So the fix reads tense from the words around it before synthesis. A "have," "has," or "had" in front means past participle, so "red" ("I have read it"); a "to" or a modal like "will" means the base form, so "reed" ("I will read it"); a bare time cue like "yesterday" near the verb also tips it to "red." No signal, and it keeps the safer, more common "reed." It's a handful of deterministic rules running on-device with no model, which a research pass said is exactly right here. The neural approaches exist for the genuinely hard cases, the same-spelling, same-part-of-speech pairs like bass the fish versus bass the instrument, and even upstream this kind of disambiguation is still an open to-do. Those are still wrong in Aoede, and "she read her book" with no cue still comes out "reed." But the everyday past tense that grated on every other sentence reads right now.