...just kidding.
As a general principle, if we promise/threaten to take certain actions upon certain future conditions occurring, then that promise of action should only be made if we have already decided that the action promised is the proper action to take if those conditions are satisfied. The time for discretion is when you are making promises of action, not when you are delivering on your promises.
Regarding your specific points about this action: Intent and targeting matter. Type of weapon used also matters. All are factors in the moral analysis. If this action was calculated to diminish Assads ability to use chemical weapons, then it can be morally justified, even if there is collateral damage/death. Having said that such justification is possible, I'm not actually going there. Frankly, I thought we should just let the Russians help Assad regain control of his country. I didn't understand why we went there in the first place. Of course, the Left Wing would have screamed in outrage, and Frank would have made 10 more pee-pee-tape posts, if Trump decided to take an approach of strategic patience, because it would look like he was doing it for "Putie."