What I'm doing in my game at the moment is handling on-hand melee with cones in place of traces: each melee attack fires off a findradius for hostiles, performs a dot product to check if any found hostiles are within the actual cone while recording the closest distance found for any that are, eventually picking out the closest hostile found and damaging that. Each melee anim then fires off a single cone on multiple frames to further increase the chance of landing a hit, though once a hit is actually landed the melee attack stops firing off scan cones.
By using cones I do lose a bit of precision - it's hard to sell a hit when your viewmodel 'obviously' didn't hit it - but given that the player movement makes Doom look slow it makes up for it by making on-hand melee generally easier to hit with and thusly more useful. :)
aut viam inveniam aut faciam