line 7
DaemonSet, so the mistake cannot be made
hostPort carries an invariant: at most one pod per node may hold a given port. A Deployment can violate it — scale to two replicas on a one-node cluster and the second pod sits Pending forever, reporting a port conflict that reads like a scheduling problem.
A DaemonSet cannot express that mistake, because one pod per node is what a DaemonSet is. The workload type is enforcing what would otherwise need an admission policy or a runbook note. That is the pattern worth naming: when a constraint can be encoded in the choice of object, encode it there.