Boring is the requirement. Every interesting failure of a fleet tool is a selection failure: the command was
right and it ran somewhere else, or it ran everywhere, or it ran nowhere and said nothing. So:
- **Nothing is implicit.** An empty selection returns nothing. The previous production script defaulted to
"every client" when given no argument, which made a mistyped restore a fleet-wide event.
- **A selection that matches nothing is an error**, not an empty success. `--tags=prod` on a file where the
tag is spelled `production` used to exit 0 having deployed to no one.
- **An explicitly named disabled target is an error**, not a silent omission. `--targets=oldclient` used to
be filtered out by the `enabled` check and report nothing at all. Being named is an explicit decision;
being matched by a tag is not, so tags still skip disabled targets quietly.
$targets->select(['demo']); // explicit names
$targets->select([], ['staging']); // everything tagged 'staging'
$targets->selectAll(); // only ever from an explicit --all