A single status column tells you where a booking is now. It cannot tell you how it got there, and almost every awkward conversation at a front desk is about how it got there.
Vestibel stamps each transition with its own timestamp and actor — arrival, seating, check-in, cancellation, completion — rather than overwriting one field. That is what lets a manager answer "when did we mark this a no-show, and who decided that" three weeks later.
Backdating is deliberately an admin-only affordance. The front desk may record a stay that already happened, because late entries and corrections are real work. The public booking paths cannot: a guest must never be able to book the past, so the floor that prevents it defaults to on and only the admin path opts out of it.
Cancellation now requires a decision about the deposit — retain, refund or forfeit — because leaving money in an undefined state is how a deposit quietly becomes nobody's problem.
