Hotpot restaurant trainer - order-taking scenario drill tool: have a coding agent build a single-file page that deals random guests to trainees
You are a coding agent. Build me a single-file HTML "order-taking
scenario drill" tool for a hotpot restaurant trainer working
with new hires - double-click to open in a browser, no network,
no installs, no external resources of any kind (no fonts,
icons, or CSS frameworks).
Part 1 - Features
1. Three vocabulary lists, all maintained by the trainer
(add / edit / delete):
- Guest profiles: e.g., "family table with grandparents and
kids," "first-time guests," "table in a hurry" - plain
text entries, any count
- Scenario constraints: e.g., "just sat down after an hour
in the waitlist," "pot half full and they want a second
base"
- Key-points library: the must-cover actions of taking an
order, e.g., "ask heat level," "confirm allergies,"
"quote the time to boil," "flag the base portion size"
2. Deal: randomly combine 1 profile + 1 constraint into one
practice hand; a session length (hands per run) is
settable
3. Answer area: the trainee reads the hand and types the
recommendation into a text box (speaking it aloud and
then self-checking the points works too)
4. Self-check list: each hand draws [3-5] points at random
from the library, and the trainee ticks "covered" or
"not covered" item by item
5. Practice log: date / hand combination / coverage rate
(ticked share) stored in localStorage, with history view
and CSV export
Part 2 - Data
- Lists and log live in localStorage; one-click CSV export;
confirm dialog before any wipe
- Empty state: with any list empty, no hands can be dealt -
show "trainer must populate the lists first"
- No built-in sample profiles, dish names, or recommendation
lines - empty lists stay empty; do not prefill "generic
industry scenarios"
Part 3 - Error handling
- No repeated hands within a run; reshuffle only after every
combination has been dealt
- Self-check points draw at random from the library, and
every hand must include the [mandatory points, settable]
(e.g., set "confirm allergies" as mandatory)
- Text typed into the answer box is never written to the log
or the export - only the coverage rate persists. Practice
is practice, not assessment; archiving the words would make
trainees perform coverage instead of practicing speech
Part 4 - Interface
- Single-column layout, phone-usable (passed around at the
training session)
- The dealing screen fits one screen: hand + answer box +
self-check list, no scrolling jumps
Deliverable: one complete HTML file with all CSS and JS
inlined, opening straight into a working tool. Include a
usage note under two hundred words, in Chinese only.
Why it is written this way
The essence of dealt-hand drilling is "random combination," not "random question bank": case studies the trainer writes by hand get memorized in two days, while profile x constraint crossings produce an inexhaustible deck - the same family table dealt with "in a hurry" forces the entire recommendation order to reshuffle, and only then does the trainee start thinking instead of reciting. Combinatorial explosion is this kind of tool's cheapest teaching value, and it's why the tool holds two lists (profiles, constraints) rather than pre-generated questions.
"Self-check the points" rather than "grade the speech" holds a deliberate capability boundary: whether the words are good requires a human ear - pace, forms of address, the well-timed upsell - none of which software can judge; whether the points were covered, the trainee can tick alone. The tool does only what is certain, and leaves judgment to the trainer listening in the room. Same reasoning behind never archiving the words, only the coverage rate: the moment practice records can become assessment evidence, a rational person performs coverage instead of practicing speech - the tool is guarding against itself becoming the straw that breaks practice.
None of the three lists is prefilled, for the same reason as the cost-card tools: every store's bases, allergy protocols, and service standards differ, and prefilled "generic scenarios" would drill newcomers against a restaurant that doesn't exist. Ten minutes of trainer maintenance buys every future hand staying glued to this store's menu - a trade that always pays.
Variables
| Variable | Notes |
|---|---|
| Points per hand | How many self-check points each hand draws - 3 to 5 recommended; more turns the drill into a written exam |
| Mandatory points | The point that must appear in every hand (e.g., "confirm allergies") - any protocol with a past incident behind it belongs here, drilled until it's reflex |