I suppose another option would be to use one combined field with an email format like this:
Tony Garnock-Jones <
to...@leastfixedpoint.com>
"search-terms" might need some special attention though. You might be able to list two author terms, like this:
"
author:tonygarn...@gmail.com" : true,
"author:Tony Garnock-Jones" : true,
If the author has selected not to make his or her email public, then that information would be stripped from the json too.
I'm speculating here, because I have on idea where and how all this code is used. I think it would pay to be consistent with the json and the database in terms of fields and names though. If I were building it from scratch I would have separate fields for author name and email.