056578ac75
The name-flip fallback returned villain_recall's nested {player:{...}} shape,
breaking r.json()["player"]["name"]. Always return update_player's flat row.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>