Comment by runjake
It's not perfect, but I like it fine. I definitely like it better than Fink and DarwinPorts, though those may be technically superior.
It's not super simple, but for your htop example, you could probably do something like the following:
  # Create a new tap
  brew tap-new $USER/local-tap
  # Extract the specific version you want
  brew extract --version=X.Y.Z htop $USER/local-tap
  # Install the extracted version
  brew install htop@X.Y.Z
Thanks, that almost worked, needed the following (extra --force tap of core and link --overwrite)
Based mostly on https://www.ericbariaux.com/posts/brew_rollback/