Build two service cells, not one table plus overflow
Start only after both furniture arrangements pass the room and table proof. Give the selected revision two stable cell IDs: TABLE-A and TABLE-B.
| Cell evidence | TABLE-A | TABLE-B |
|---|---|---|
| Places | Every private seat ID, complete setting and agreed access need | Every private seat ID, complete setting and agreed access need |
| Water | Reachable vessel, glasses, refill trigger and owner | Reachable vessel, glasses, refill trigger and owner |
| Food | Named vessel or direct plate loads with dedicated utensils | Named vessel or direct plate loads with dedicated utensils |
| Route | Kitchen landing → A → runner return | Kitchen landing → B → runner return |
| Dirty return | Closed until A incoming trigger completes | Closed until B incoming trigger completes |
| Escape and guest access | Available in every occupied state | Available in every occupied state |
Do not call one table the “main” table and leave the other to request missing items. Any difference in menu, service or seating must be deliberate, accepted and recorded rather than inherited from furniture position.
Conserve the actual finished food once
Use the serving-dish register after exact finished yields exist. Allocate every identified batch across TABLE-A, TABLE-B, a separate reserve or a blocked remainder—never to both tables at once.
- Raw shopping targets do not become bowl loads.
- Each named vegetable keeps its own finished yield and service identity.
- Controlled variants keep separate batches, vessels and utensils.
- Reserve food stays under its exact supported state until the refill owner releases it.
- A vessel moving from A to B is a new recorded service state, not a duplicate allocation.
When there is not enough verified food for both accepted table allocations, block the uncovered rows and use the pre-agreed shortage fallback. Do not silently shrink a controlled plate or empty the reserve twice.
Worked twelve-person two-table ledger
This fictional cold rehearsal uses two six-place tables from the worked twelve-person plan. It demonstrates accounting and routes, not portion or holding advice.
| Service row | TABLE-A | TABLE-B | Reserve / state |
|---|---|---|---|
| Water | WATER-A; six glasses; owner A | WATER-B; six glasses; owner B | REFILL-W at drinks station; named trigger |
| 1,800 ml gravy intention | JUG-GA proposed 600 ml | JUG-GB proposed 600 ml | 600 ml identified reserve; exact recipe and supported state still required |
| Pigs in blankets | 12 actual completed pieces proposed | 12 actual completed pieces proposed | No piece reserve; block if actual accepted count differs |
| Potatoes | Load unknown | Load unknown | BLOCKED—ACTUAL FINISHED YIELD MISSING |
| Controlled plate C1 | Direct TABLE-A recipient handover | Not allocated | Food checker retains marker and runner release |
| Controlled plate C2 | Not allocated | Direct TABLE-B recipient handover | BLOCKED if B route or marker changes |
The three 600 ml gravy intentions reconcile 1,800 ml at the service-planning level, but they do not prove an exact recipe, prepared yield, pan method, jug suitability or holding state. Potatoes remain blocked rather than being divided from a raw 3,000 g shopping target.
Give each runner a complete one-way release
Build runner cards in the job handover validator. A runner collects only a released vessel or plate, reads back its ID and table destination, follows the current one-way route and reports completion or an exception.
| Runner field | Required record |
|---|---|
| Start trigger | Food or service owner explicitly releases LOAD-ID under current revision |
| Scope | Carry to one named table landing; make no food, refill or substitution decision |
| Route | Exact kitchen exit, table approach, landing and empty-handed return |
| Finish evidence | Correct owner or recipient accepts the matching ID |
| Stop rules | Blocked route, changed table, missing marker, spill, unstable load or conflicting runner |
| Return | Exception returns to food/service owner; runner never chooses another destination |
Do not send runners in opposite directions through one narrow path. Sequence A and B with observable triggers when the real room cannot support simultaneous movement.
Keep controlled plates direct and private
Carry each controlled component through the dietary-plate release. The private ledger connects PLATE-C1 or PLATE-C2 to a recipient and table destination without putting a name or diagnosis on the public marker.
- Plate ID, marker and current revision remain physically linked.
- Every component, gravy, garnish and omission is explicit.
- Runner reads back the private destination and makes no additions.
- Plate moves directly to the intended recipient, not to a shared table queue.
- A seat change, detached marker, blocked route or shared utensil stops release.
- The recipient is told which plate is theirs and retains the decision to accept it.
Never identify TABLE-B publicly as a dietary table. Grouping guests by an assumed health, belief or preference category is unnecessary and can expose private information.
Refill without merging tables or histories
TABLE-A and TABLE-B need separate public-vessel histories even when they receive food from the same verified reserve.
| Refill step | Evidence |
|---|---|
| Observe | Named owner sees A or B reach its rehearsed refill trigger |
| Close | Remove or resolve that table’s older vessel and utensil without crossing to the other table |
| Verify reserve | Batch ID, supported state, exact variant and quantity remain known |
| Load | Clean identified vessel receives only the supported working fill |
| Route | Runner carries to the requesting table under its current route revision |
| Record | Reserve balance and both table histories update once |
Do not top new food onto an older table remainder, pour A back into reserve or use B’s utensil to rescue A. A fresh-looking vessel does not reset an uncertain service history.
Close incoming service before dirty returns
Use the kitchen reset to protect clean landing, controlled-utensil hold, dirty returns and leftover-container access. Give each table an observable incoming-close trigger.
- A-IN-CLOSED means no more incoming A vessels or plates are in flight.
- B-IN-CLOSED means no more incoming B vessels or plates are in flight.
- A dirty returns may begin only on the recorded A path after A-IN-CLOSED.
- B dirty returns may begin only on the recorded B path after B-IN-CLOSED.
- The shared kitchen return point accepts one supported load at a time.
- Controlled utensils and vessels never join an anonymous ordinary stack.
If one table finishes earlier, its return movement must not cross the other table’s active clean service route. Delay the lower-priority movement or use the tested alternate path.
When starter service is part of the menu, use the starter-to-main table reset to close each course, preserve controlled histories and reopen both incoming routes without guessing from the clock.
Rehearse a blocked route and missing runner
- Stage twelve occupied chair states, complete place settings, both water systems and every empty or safely cold-weighted vessel.
- Run all TABLE-A releases and returns, then all TABLE-B releases and returns under named triggers.
- Run the proved simultaneous movements only where the real routes support them.
- Block the inter-table route, remove Runner B, detach PLATE-C2’s marker and request a refill at both tables.
- The team must sequence service, preserve the controlled plate, update reserve once and prevent dirty returns from crossing active incoming loads.
- Count every verified finished load once across A, B, reserve and blocked or unallocated remainder.
- Restart only after the new route, owner and table revisions are read back.
The cold rehearsal tests furniture, object loads, IDs, routes, triggers, accounting and handovers. It does not prove cooking, food temperature, holding, allergen control, hot-vessel suitability or food safety.
Questions people ask
How do I serve Christmas dinner across two tables?
Give each table complete water, food-vessel, utensil, controlled-plate, runner and return evidence. Allocate actual finished food once across both tables and reserve, then sequence runners when routes cannot operate together.
Should both Christmas tables have every serving dish?
Only if exact finished yields, tested vessel loads, table footprints, utensils and controls support duplication. Smaller owner-led loads or direct plate service may be better; keep all public and reserve histories separate.
Can one serving bowl move between both tables?
Only as a recorded new service state with a suitable route, owner, utensil and remaining food history. Do not count it as simultaneously allocated to both tables or use the move to erase handling history.
How should dietary plates be served across two tables?
Use a private recipient destination and direct plate-ID handover. Do not label a table by a guest’s dietary or health information, and stop if the marker, route, component or destination changes.
Can dirty plates return while the other table is still being served?
Only when the real incoming and return routes are separate and the tested plan supports it. Otherwise keep dirty returns waiting until the active incoming route closes.
Sources and checks
- Food Standards Agency — cleaning — current household guidance on clean utensils, dishes, surfaces, cloths and avoiding sink clutter
- Food Standards Agency — avoiding cross-contamination — current household guidance on clean preparation areas, separate equipment and spill cleanup
- Food Standards Agency — food allergy and intolerance advice for consumers — household ingredient checks, separation, cleaning, cross-contamination and guest communication
- GOV.UK — fire safety when celebrating — official England guidance on guest escape routes; not a table-route dimension standard