As for the attack option: I think the option to attack should be there for every companion - or for none. Personally, I would not attack any of our companions, but if players want to choose this option, it should be equal for all companions.
It is ...
In described case Shadowheart was used more as an example, since she it "the most probably present one".

Personaly i believe that forgiving Astarion for his actions is perfectly valid approach ... aswell as killing him right there.
And if Larian indeed want to create something that (paraphrasing their words) "give us same feeling as playing tabletop" we should be provided by the most basic options in every conversation.
The most basic options are:
Acceptance, refusal, question and ridicule. (based on most BioWare games)
In situation with Astarion we can either accept the situation, or accept the situation, or accept the situation ... and that sucks.