I think I can see what was happening from the byte...
# announcements
s
I think I can see what was happening from the bytecode. It was only ever presented to me as a Map<String, String> when really it was being used as a Map<String, ? extends String>, and that was causing the error.