For all the boxes ticked, the 49ers skipped the loudest one: wide receiver is exactly as bare as it was.
They went 1 of 8 on their needs, which is most of what a draft is for. The trenches got the money picks, top to bottom.
Solid rather than spectacular, and there is nothing wrong with that.