They perform completely different functions. Fishing and spearfishing are completely different gathering systems, even if to you, as the user, they seem to be doing the same thing. MAYBE also give us a trait that when we're spearfishing, replace Hook with Gig, but then comes all sorts of questions - why not just swap them based on your last gathering method? Do you start with Gig, do you start with Hook? You're spearfishing right now, why constantly swap back to Hook when you're not Spearfishing?

Makes a lot more sense to leave it as two different actions, and programatically makes zero sense to merge two actions that behind the scenes interact with two different systems.