You're right that Hoffman could've come in for the 7th and blown the game there and then, but for the management, at least they could then not be blamed for the decision. If Hoffman comes in instead of Rogers and f***s the game in the 7th then the blame is all on the pitcher, because as a decision in isolation, it's completely fine.
Lower-leverage or not, holding him back to the 9th, invites the responsibility on to Schneider too. He's decided consciously that he wants to have Hoffman finish games and rehabilitate him, despite being bitten by the same dog over and over and over again. And then he compounds it by just sitting on his hands as it totally unravels.
I'm still more annoyed at Hoffman than Schneider, but honestly, it's incredibly foolish management. This loyalty to absolute trash pitchers who constantly let him down may really cost Schneider his job. It has to stop right now. Only Rogers and Varland should be trusted with the 8th or 9th when they're available. You can maybe extend that to Fisher in a pinch or Garcia if he comes back in good shape. You can only have Hoffman there if the game is over already and he's eating innings. Really, he just needs to go for everyone's sake.