Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -199,4 +199,7 @@ src/experiments/model_training/data/full-v1/*/data-*.arrow

# Large JSONL training files
src/experiments/model_training/data/train_full-v1.jsonl
src/experiments/model_training/data/test_full-v1.jsonl
src/experiments/model_training/data/test_full-v1.jsonl

#Personal notes
docs/
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ Domains are:
- `airline`
- `retail`
- `telecom`
- `hospitality` (New!): A high-fidelity restaurant simulation focusing on safety protocols, RBAC, and complex policy constraints. [Read Documentation](src/tau2/domains/hospitality/README.md)

All the information that an agent developer needs to build an agent for a domain can be accessed through the domain's API docs. See [View domain documentation](#view-domain-documentation) for more details.

Expand Down
135 changes: 135 additions & 0 deletions data/tau2/domains/hospitality/db.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
{
"restaurant": {
"name": "Berkeley Hot Pot",
"location": "110 Sproul Hall, Berkeley, CA, 94720-5800",
"hours": {
"Mon-Thur": "11:30 AM - 11:00 PM",
"Fri-Sun": "11:00 AM - 11:00 PM"
}
},
"soup_bases": [
{"id": "S01", "name": "Sichuan Spicy Beef Tallow", "spicy_level": 5, "allergies": ["Soy", "Wheat"], "hidden_ingredients": [], "contains_pre_processed": true, "gluten_safe": false, "prices": {"quarter": 7.99, "half": 15.99, "whole": 29.99}},
{"id": "S02", "name": "Vegan Sichuan Spicy", "spicy_level": 5, "allergies": ["Soy", "Wheat"], "hidden_ingredients": [], "contains_pre_processed": true, "gluten_safe": false, "prices": {"quarter": 9.99, "half": 19.99, "whole": 37.99}},
{"id": "S03", "name": "Satay Beef", "spicy_level": 0, "allergies": ["Wheat", "Peanut"], "hidden_ingredients": [], "contains_pre_processed": true, "gluten_safe": false, "prices": {"quarter": 8.99, "half": 16.99, "whole": 24.99}},
{"id": "S04", "name": "Pork Bone", "spicy_level": 0, "allergies": [], "hidden_ingredients": ["possible thickeners"], "contains_pre_processed": true, "gluten_safe": false, "prices": {"quarter": 7.99, "half": 15.99, "whole": 29.99}},
{"id": "S05", "name": "Kimchi", "spicy_level": 2, "allergies": ["Fish", "Wheat"], "hidden_ingredients": [], "contains_pre_processed": true, "gluten_safe": false, "prices": {"quarter": 7.99, "half": 15.99, "whole": 29.99}},
{"id": "S06", "name": "Tom Yum", "spicy_level": 1, "allergies": ["Fish", "Shrimp", "Wheat"], "hidden_ingredients": [], "contains_pre_processed": true, "gluten_safe": false, "prices": {"quarter": 8.99, "half": 16.99, "whole": 24.99}},
{"id": "S07", "name": "Tomato", "spicy_level": 0, "allergies": [], "hidden_ingredients": ["vinegar", "sugar", "possible thickeners"], "contains_pre_processed": true, "gluten_safe": false, "prices": {"quarter": 7.99, "half": 15.99, "whole": 29.99}},
{"id": "S08", "name": "Plain Water", "spicy_level": 0, "allergies": [], "hidden_ingredients": [], "contains_pre_processed": false, "gluten_safe": true, "prices": {"quarter": 0, "half": 0, "whole": 0}}
],
"menu_items": [
{"id": "P01", "name": "Japanese A5 Miyazaki Wagyu Beef", "category": "protein", "price": 99.99, "allergies": [], "contains_pre_processed": false, "gluten_safe": true},
{"id": "P02", "name": "Japanese A5 Wagyu Beef", "category": "protein", "price": 32.99, "allergies": [], "contains_pre_processed": false, "gluten_safe": true},
{"id": "P03", "name": "USDA Prime Beef Ribeye", "category": "protein", "price": 28.99, "allergies": [], "contains_pre_processed": false, "gluten_safe": true},
{"id": "P04", "name": "USDA Choice Beef Ribeye", "category": "protein", "price": 23.99, "allergies": [], "contains_pre_processed": false, "gluten_safe": true},
{"id": "P05", "name": "Angus Beef Chuck", "category": "protein", "price": 26.99, "allergies": [], "contains_pre_processed": false, "gluten_safe": true},
{"id": "P06", "name": "Angus Beef Brisket", "category": "protein", "price": 16.99, "allergies": [], "contains_pre_processed": false, "gluten_safe": true},
{"id": "P07", "name": "Beef Tongue", "category": "protein", "price": 22.99, "allergies": [], "contains_pre_processed": false, "gluten_safe": true},
{"id": "P08", "name": "Pork Belly", "category": "protein", "price": 16.99, "allergies": [], "contains_pre_processed": false, "gluten_safe": true},
{"id": "P09", "name": "Australian Lamb Shoulder", "category": "protein", "price": 18.99, "allergies": [], "contains_pre_processed": false, "gluten_safe": true},
{"id": "P10", "name": "Chicken Breast", "category": "protein", "price": 13.99, "allergies": [], "contains_pre_processed": false, "gluten_safe": true},
{"id": "SF01", "name": "Head-On Shrimp (8 pcs)", "category": "seafood", "price": 18.99, "allergies": ["Shrimp"], "contains_pre_processed": false, "gluten_safe": true},
{"id": "SF02", "name": "Seafood Platter", "category": "seafood", "price": 32.99, "allergies": ["Shrimp", "Fish"], "contains_pre_processed": false, "gluten_safe": true},
{"id": "SF03", "name": "Snapper Fish Fillet", "category": "seafood", "price": 15.99, "allergies": ["Fish"], "contains_pre_processed": false, "gluten_safe": true},
{"id": "V01", "name": "Assorted Veggie Platter", "category": "veggie", "price": 13.99, "allergies": [], "contains_pre_processed": false, "gluten_safe": true},
{"id": "V02", "name": "Assorted Mushroom Platter", "category": "veggie", "price": 13.99, "allergies": [], "contains_pre_processed": false, "gluten_safe": true},
{"id": "V03", "name": "Assorted Soy Platter", "category": "veggie", "price": 13.99, "allergies": ["Soy"], "contains_pre_processed": false, "gluten_safe": true},
{"id": "A01", "name": "Fried Steamed Buns", "category": "appetizer", "price": 5.99, "allergies": ["Wheat", "Gluten"], "contains_pre_processed": true, "gluten_safe": false},
{"id": "A02", "name": "Spring Rolls", "category": "appetizer", "price": 4.99, "allergies": ["Wheat", "Gluten"], "contains_pre_processed": true, "gluten_safe": false},
{"id": "A03", "name": "Cheese Shrimp Balls", "category": "appetizer", "price": 5.99, "allergies": ["Shrimp", "Dairy"], "contains_pre_processed": true, "gluten_safe": false},
{"id": "A04", "name": "French Fries", "category": "appetizer", "price": 5.99, "allergies": [], "contains_pre_processed": true, "gluten_safe": false, "note": "May contain shared fryer oil"},
{"id": "B01", "name": "Boba Milk Tea", "category": "beverage", "price": 6.99, "allergies": ["Dairy"], "contains_pre_processed": true, "gluten_safe": false, "note": "Pre-mixed tea powder may contain gluten"},
{"id": "B02", "name": "Freshly Squeezed Lemonade", "category": "beverage", "price": 10.99, "allergies": [], "contains_pre_processed": false, "gluten_safe": true},
{"id": "B03", "name": "Sapporo Beer (Pitcher)", "category": "beverage", "price": 22.99, "allergies": ["Gluten"], "contains_pre_processed": true, "gluten_safe": false},
{"id": "D01", "name": "Soft Serve Ice Cream", "category": "dessert", "price": 4.99, "allergies": ["Dairy"], "contains_pre_processed": true, "gluten_safe": false, "note": "Ice cream mix may contain thickeners and stabilizers"}
],
"lunch_special": {
"price": 26.66,
"availability": "Mon-Fri before 5 PM",
"holiday_excluded": true
},
"tables": [
{"table_id": "A1", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A2", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A3", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A4", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A5", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A6", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A7", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A8", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A9", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A10", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A11", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A12", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A13", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A14", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A15", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A16", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A17", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A18", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A19", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "A20", "table_type": "A", "std_capacity": 4, "std_expansion": 4, "max_squeeze": 6, "status": "available", "current_party_size": 0},
{"table_id": "B1", "table_type": "B", "std_capacity": 6, "std_expansion": 8, "max_squeeze": 11, "status": "available", "current_party_size": 0},
{"table_id": "B2", "table_type": "B", "std_capacity": 6, "std_expansion": 8, "max_squeeze": 11, "status": "available", "current_party_size": 0},
{"table_id": "B3", "table_type": "B", "std_capacity": 6, "std_expansion": 8, "max_squeeze": 11, "status": "available", "current_party_size": 0},
{"table_id": "B4", "table_type": "B", "std_capacity": 6, "std_expansion": 8, "max_squeeze": 11, "status": "available", "current_party_size": 0},
{"table_id": "B5", "table_type": "B", "std_capacity": 6, "std_expansion": 8, "max_squeeze": 11, "status": "available", "current_party_size": 0},
{"table_id": "B6", "table_type": "B", "std_capacity": 6, "std_expansion": 8, "max_squeeze": 11, "status": "available", "current_party_size": 0},
{"table_id": "B7", "table_type": "B", "std_capacity": 6, "std_expansion": 8, "max_squeeze": 11, "status": "available", "current_party_size": 0},
{"table_id": "B8", "table_type": "B", "std_capacity": 6, "std_expansion": 8, "max_squeeze": 11, "status": "available", "current_party_size": 0},
{"table_id": "C1", "table_type": "C", "std_capacity": 8, "std_expansion": 12, "max_squeeze": 15, "status": "available", "current_party_size": 0},
{"table_id": "C2", "table_type": "C", "std_capacity": 8, "std_expansion": 12, "max_squeeze": 15, "status": "available", "current_party_size": 0}
],
"customers": [
{"customer_id": "C1001", "name": "VIP Customer", "phone": "555-001-0001", "email": "vip@email.com", "tier": "Diamond", "points": 12500, "birth_month": "January", "annual_spent": 9500.0, "visit_count": 48, "notes": "Prefers booth seating"},
{"customer_id": "C2001", "name": "Regular Guest", "phone": "555-002-0001", "email": "regular@email.com", "tier": "Silver", "points": 450, "birth_month": "June", "annual_spent": 3500.0, "visit_count": 12, "notes": null},
{"customer_id": "C3001", "name": "New Customer", "phone": "555-003-0001", "email": null, "tier": "Bronze", "points": 0, "birth_month": null, "annual_spent": 0.0, "visit_count": 0, "notes": null}
],
"reservations": [
{"reservation_id": "RES001", "customer_name": "Birthday Party", "phone": "555-100-0001", "party_size": 8, "date": "2026-01-14", "time": "18:00", "table_id": "C1", "status": "confirmed", "special_occasion": "birthday", "num_kids": 2, "num_high_chairs": 2, "notes": "60th birthday celebration", "has_cake": true, "cake_type": "regular"}
],
"orders": [
{"order_id": "ORD-60-BTH", "table_id": "C1", "customer_id": "C1001", "items": [], "subtotal": 350.0, "discount_applied": null, "discount_amount": 0.0, "tax": 31.5, "total": 381.5, "status": "completed", "created_at": "2026-01-12T18:00:00", "completed_at": "2026-01-12T20:30:00", "promotion_code_used": null, "secret_code_used": null}
],
"incidents": [],
"inventory": [
{"item_id": "INV001", "name": "Mug", "stock": 0, "item_type": "merchandise", "points_required": 500},
{"item_id": "INV002", "name": "Cat-Pattern Cushion", "stock": 5, "item_type": "merchandise", "points_required": 600},
{"item_id": "INV003", "name": "Fairy Wand", "stock": 0, "item_type": "secret_code_gift", "points_required": null},
{"item_id": "INV004", "name": "Assorted Kids Toys", "stock": 50, "item_type": "compensation_gift", "points_required": null},
{"item_id": "INV005", "name": "Christmas Bracelet", "stock": 5, "item_type": "seasonal_gift", "points_required": null},
{"item_id": "INV006", "name": "Tomato Soup Base Packet", "stock": 20, "item_type": "secret_code_gift", "points_required": null},
{"item_id": "INV007", "name": "Assorted Snacks Bag", "stock": 30, "item_type": "secret_code_gift", "points_required": null}
],
"promotions": [
{"promo_id": "PROMO001", "description": "$20 off when you spend $100 this month", "discount_type": "fixed", "discount_value": 20.0, "conditions": "Minimum $100 spend, weekdays only", "weekday_only": true, "valid_from": "2026-01-01", "valid_until": "2026-01-31", "sms_text": "Spend $100 this month and get $20 off! Visit us soon!"}
],
"secret_codes": [
{"code": "I like your golden bricks", "reward_item": "Fried Steamed Buns with condensed milk", "reward_item_id": null, "limit_per_table": 1},
{"code": "I like your soup base", "reward_item": "One serving of Tomato soup base", "reward_item_id": "INV006", "limit_per_table": 1},
{"code": "I love your snacks", "reward_item": "Assorted Snacks Bag", "reward_item_id": "INV007", "limit_per_table": 1},
{"code": "I am a little fairy", "reward_item": "Fairy Wand", "reward_item_id": "INV003", "limit_per_table": 1},
{"code": "Do I look like a kid", "reward_item": "Assorted Kids Toys", "reward_item_id": "INV004", "limit_per_table": 1}
],
"staff_authorities": [
{"role": "Server", "max_round_off": 10.0, "max_discount_pct": 12.0, "can_comp_items": true, "comp_item_limit": 10.0},
{"role": "Host", "max_round_off": 30.0, "max_discount_pct": 12.0, "can_comp_items": true, "comp_item_limit": 10.0},
{"role": "Manager", "max_round_off": 1000.0, "max_discount_pct": 100.0, "can_comp_items": true, "comp_item_limit": 100.0}
],
"federal_holidays_2026": [
"2026-01-01",
"2026-01-19",
"2026-02-16",
"2026-05-25",
"2026-06-19",
"2026-07-03",
"2026-07-04",
"2026-09-07",
"2026-10-12",
"2026-11-11",
"2026-11-26",
"2026-12-25"
],
"current_staff_role": "Server",
"manager_on_duty": true
}
Loading