After discussing this with the Lead Developer of Snowdrift.coop, I'd like to humbly suggest that the specification be slightly adjusted to remove the surprising aspect.
Usually, an exit status of zero means that all went well. The aforementioned behavior is, by Postgres' own admittance, not only an error, but a fatal error, indicated in the log:
FATAL: database "jibberish" does not exist
And yet, pg_isready exits with a zero, contradicting the usual meaning. Again, it is following spec perfectly; I only suggest a change to the spec.
Specifically, I suggest two small adjustments. One, an exit status of 4 would mean that a connection to the server was made, but the specified database does not exist. In the future, this may be generalized to mean that a connection was made, but some parameter value did not make sense with the cluster's current state. Though right now, the only possible such friction I see is that the specified database does not exist. And for the second adjustment: an exit status of 0 would mean "complete success": a connection was made and the parameters made sense.
Note the exit statuses of 1, 2 and 3 would keep their old meanings. In order to get an exit status of 4, the arguments must be syntactically valid. Otherwise, 3 is returned.
Jake T.