if I have well understood, osTicket developers did just open/close as the status of a ticket.
But one can see "overdue" as a ticket status although it's a STATE.
I'm not sure, but to me what should be implemented is a "Second status" or a ticket state.
By adding a column state_id to ost_ticket table and a table ost_ticket_state which any user could edit (for 'pending', 'in preparation', or whatever).
What's your point ?
It's something that, if osTicket doesn't implement it for the next version, I'll implement myself...