Pokemon.abilityName() returns Strings(name), so the RSE summary and the battle ability placeholders show a translated name, as FireRed's summary already did. FireRed's summary no longer translates the getter's result a second time, and the battle adapter keys an ability outside its built-in table by Pokemon.romAbilityName(), so a translated name cannot become an unknown ability key.
SummaryData looks a move or ability description up as MOVE_<name> / ABILITY_<name>, built from the name the summary shows. A translation mod renames moves in place (the moves registry writes Pokemon._moveNames), so with one enabled the key became MOVE_<translated name>, nothing matched, and the summary and TM Case showed "---" instead of the description.
Pokemon.install now keeps a copy of the ROM's English move and ability names before any mod patches them, exposed as Pokemon.romMoveName / romAbilityName, and the description lookups use it, falling back to the name passed in when the pack has none.