However, members can delete posts in those same closed threads.
Code-wise, ./library/XenForo/Model/Post.php has a check for thread closure in function canEditPost(), right after checking that it is not a guest viewing. check uses: if (!$thread['discussion_open'])...
I think that same if-block check should be placed in function canDeletePost(), in same relative position there.
Logic: Why prevent members from editing posts, but, not prevent them from deleting posts in closed threads? How is deletion less of an issue than editing, once a thread is closed?