Don't absint() stock levels.  There are very standard scenarios in which a negative stock level would be acceptable.
Document our new coupon callback logic.