I don't typically work in places big enough to have explicit salary bands, and I don't usually run big headcount groups like engineering. So I don't have much experience with bands and guidance around them.
All the rest of it, absolutely yes. I don't hold a grudge if someone fails an interview, unless they're truly an asshole, or dishonest, both of which are exceptionally rare.
Do you put in transparently (after all we're talking about being honest and transparent here) in the job description so that candidates know beforehand how they'll be judged?
Do you let the candidate apply again a year later? if they have grown and learned a lot then there's certainly no reason not to hire them this time.
If so then yes, your process is honest and transparent.