But isn't a replica in DOWN, when the node it's on is also down? I know I saw that happening after shutting down Solr on a node.
We try and publish DOWN on shutdown just because on startup we always want to see the progression DOWN, RECOVERING and this makes it more pronounced and because we just want to make a best effort to make the node not ACTIVE in clusterstate.json just because it does confuse users that you have to consult zk live_nodes to know the actual state. It's not really required, it came later, it's kind of a best effort thing. The key is, if a node is really shutdown, it's zk live node is gone. A zk live node being gone means ignore the state. You need both pieces of info - state is useless by itself.
See the Solr Cloud admin UI. It won't show a node that is shutdown as DOWN. It's zk live node is gone, and so its marked as gray and gone.
DOWN is the wrong name, but that's what it is.