Don't draft based on the team you have *right now*. Ever. Just draft the best players possible, sort out positional needs later with the talent surplus you accumulate by drafting the best players at your picks.
It's a massive gamble to take the "safe" players at the top end of the draft, just like it was a huge gamble to not take the most skilled player in 14 or 16.
In principle, yes, but it's not that simple. They wouldn't be drafting based on their current team, they would be drafting based on a massive need that is currently plaguing their prospect pool and will effect their future team. To ignore this would be a major oversight in their longterm team-building. And the whole BPA available thing is really only relevant when there is a noticeable gap between players and that gap becomes less relevant as the first round goes on. Obviously, you're not going to pass on J. Hughes for Byram, just because you're lacking blueliners, but if it's the difference between a center like Krebs, a winger like Boldy or a defenseman like Soderstrom, all of whom are completely interchangeable on most draft boards, team need does figure prominently in the decision. If the Canucks see Boldy and Caufield as fairly similar in their potential, there's no reason they can't draft the heavier player in an effort to help insulate the skilled talent they already have.
For instance, does David Poille always draft BPA? You can't convince me that every single time Nashville walked up to the podium, the best player on the board was a defensemen. Instead, they mandated internally that they would invest significantly in the drafting and development of defensemen and it has done them nothing but good. There were probably a few players their scouts could make an argument for as BPA but the scouting department had a clear initiative that has ended up benefiting them in the long run.
Size and strong two way play on the wings.... like Virtanen?
Yes because, henceforth, the Canucks should pass on all power wingers because Virtanen didn't work out. Sounds smart.