I have a question regarding the assignment/order of waitstaff when an EVENT group places its order after being seated.
For EVENT seating, the order in which waiters are used is deterministic. The specification states:
“To select the waiter, the manager prioritizes the waiters in descending order of the current load to perform the SEATING”
and
“each waiter SEATS customers from the EVENT group until their SEATING tick load is at the limit.”
As far as I can see, however, it is not specified which individual customers are seated by which of these waiters. For the seating itself, this does not seem to matter much, since EVENT seating is only considered successful if the entire group can be seated:
“An EVENT SEATING only counts as fulfilled if all customers in the group could be seated within the tick.”
Otherwise, the whole seating attempt fails and the EVENT group leaves.
The ambiguity becomes relevant immediately afterwards when the group orders. The specification states:
“Immediately after SEATING the customers on the table, the customers order as a group and the waiter who seated them also TAKE THEIR ORDERS.”
Therefore, for an EVENT group with multiple waiters involved in seating, my understanding is that each waiter must also take the orders of the customers that this waiter seated.
At the same time, the order in which customers place their orders is specified deterministically:
“Within a customer group, customers order one by one, starting with the customer(s) that have the most excluded ingredients and then the least favorite dishes.”
and, as a tie-breaker:
“the food preference object listed first in the group’s json has precedence.”
This order can actually affect the simulation state, because:
“After each order has been placed the kitchen is informed and the pantry updated.”
Furthermore, waitstaff capacity can matter because:
“Each waiter has a limit of 10 actions per type and tick”
and the tick load is defined as the number of actions of the respective type performed in that tick.
This leaves me unsure how the deterministically ordered customers should be mapped to the waiters that previously seated the EVENT group.
For example, assume the seating order was:
-
Waiter 1 seats 10 customers
-
Waiter 2 seats 4 customers
-
Waiter 3 seats 1 customer
Should the subsequent deterministic customer ordering sequence then be handled in exactly the same waiter order, i.e. the first 10 customers in the specified ordering sequence by Waiter 1, the next 4 by Waiter 2, and the final customer by Waiter 3?
This seems like the most natural interpretation to me, since it preserves the waiter/customer assignment created during seating. However, I could not find a rule explicitly stating this ordering/mapping.
(I didn’t write this post using AI, but I wrote it in German and used AI to translate it.)