There is no need to commit Shadowheart to any particular type of weapon unless you are planning on multiclassing her. She is a full caster, and therefore her best move in a fight is going to be cast a spell, not prod with a pointy stick. This is especially true level 5+ when cantrips get a damage boost that pushes them past weapons.
Shadowheart has a melee and a ranged weapon slot, and you should put something in both, but it can be whatever since you shouldn't be making much use of it. On paper she is marginally better with a dagger, but there are a bunch of good magic spears in the game.
But the important thing is: USE A SHIELD.
So, basically, you can totally ignore her weapon, and just upgrade her spells, and give her whatever, spear or a salami stick, and that won't really affect her contribution to the battle? That's kind of what I'm hoping for tbh