>>> If I set up a topic to be moderated, I don't want people to be able to circumvent that setting simply by changing the subject line.
I can see some value in it behaving this way for your scenario, if the "new topic" is really a masqueraded reply to the moderated topic with just a different subject. On the other hand though, what's to stop the offender from just creating a brand new topic in this case? I mean, in an unmoderated group, a perpetrator trying to pull this off on purpose online, will see the green "message to be approved by the mods" notice and can easily just create a new topic then which will sail through. Yes, not as obvious to the email users though, but then again, since one knows their group is not moderated, after they see their message not coming through normally as expected, they may resubmit it as a new topic this time, which will now go through.
>>> Holding it in moderation also gives me an opportunity to change it back, if that seems like the appropriate thing to do
Yes, if its' related to the previous moderated topic, but what if it doesn't and it's genuinely a new unrelated topic?
I don't know, if this is by design as a hidden and undocumented easter-egg, maybe the answer is not to change the logic but instead enhance a couple of things to make it obvious to the mods that's what happened. For example, when this happens modify the pending message so the subject becomes something like this: (obviously only if the previous topic was moderated of course)
new-topic-subject [WAS: old-topic-subject]
This would make it clearer and also make the job of editing it back to the previous subject easier.
Or enhance the Activity log entry. Right now the entry looks like the regular one:
XYZ sent message "new-topic-subject" requiring approval because the topic is moderated, via email
which is misleading because this (new) topic is not really/shouldn't be moderated since the group is not moderated. Maybe leave the subject as is in the pending message but indicate it here:
XYZ sent message "new-topic-subject [WAS: old-topic-subject]" requiring approval because the topic is moderated, via email